strip fbgrab
-
- Einsteiger
- Beiträge: 123
- Registriert: Montag 28. November 2005, 11:31
strip fbgrab
Hi,
the wikipage at:
http://wiki.tuxbox-cvs.sourceforge.net/Fbshot
zeigt auf ein ungestripptes Binary von fbshot. Dies macht fbshot um mehr als 900kByte größer als es ein müßte:
> unrar x fbshot.rar
> ls -l fbshot
-rw-r--r-- 1 fe users 1031792 2004-04-08 17:19 fbshot
> strip fbshot
-rw-r--r-- 1 fe users 65696 2005-11-28 16:55 fbshot
es wäre schön, wenn im Wiki sowohl ein Link auf das gestrippte Binary wie auch auf die Sourcen läge.
Das Binary vielleicht als .tar.gz verpackt damit die Zugriffsberechtigungen nicht verloren gehen.
Thx,
Frieder
the wikipage at:
http://wiki.tuxbox-cvs.sourceforge.net/Fbshot
zeigt auf ein ungestripptes Binary von fbshot. Dies macht fbshot um mehr als 900kByte größer als es ein müßte:
> unrar x fbshot.rar
> ls -l fbshot
-rw-r--r-- 1 fe users 1031792 2004-04-08 17:19 fbshot
> strip fbshot
-rw-r--r-- 1 fe users 65696 2005-11-28 16:55 fbshot
es wäre schön, wenn im Wiki sowohl ein Link auf das gestrippte Binary wie auch auf die Sourcen läge.
Das Binary vielleicht als .tar.gz verpackt damit die Zugriffsberechtigungen nicht verloren gehen.
Thx,
Frieder
-
- Einsteiger
- Beiträge: 123
- Registriert: Montag 28. November 2005, 11:31
fbshot 2m 40s downto ?
ein Screenshot des Radio Displays (ohne OSD) dauert bei mir etwa 2min 40s.
Könnte jemand (ich selbst habe die Entwicklungsumgebung nicht) den beigefügten Patch mal testen? Auf dem PC läufts dadurch (insbesondere durch Z_DEFAULT_COMPRESSION) etwa doppelt so schnell.
Die etwas höhere PNG Dateigröße liesse sich durch die eingesparten Bytes beim Strippen legitimieren?
Könnte jemand (ich selbst habe die Entwicklungsumgebung nicht) den beigefügten Patch mal testen? Auf dem PC läufts dadurch (insbesondere durch Z_DEFAULT_COMPRESSION) etwa doppelt so schnell.
Die etwas höhere PNG Dateigröße liesse sich durch die eingesparten Bytes beim Strippen legitimieren?
Code: Alles auswählen
diff -u fbshot.c.orig fbshot.c
--- fbshot.c.orig 2005-11-28 13:23:03.000000000 +0100
+++ fbshot.c 2005-11-28 19:14:45.000000000 +0100
@@ -58,14 +58,14 @@
/* some conversion macros */
-#define RED565(x) ((((x) >> (11 )) & 0x1f) << 3)
-#define GREEN565(x) ((((x) >> (5 )) & 0x3f) << 2)
-#define BLUE565(x) ((((x) >> (0)) & 0x1f) << 3)
-
-#define ALPHA1555(x) ((((x) >> (15)) & 0x1 ) << 0)
-#define RED1555(x) ((((x) >> (10)) & 0x1f) << 3)
-#define GREEN1555(x) ((((x) >> (5 )) & 0x1f) << 3)
-#define BLUE1555(x) ((((x) >> (0 )) & 0x1f) << 3)
+#define RED565(x) (((x) >> 8) & (0x1f << 3))
+#define GREEN565(x) (((x) >> 3) & (0x3f << 2))
+#define BLUE565(x) ((((x) >> 0) & 0x1f) << 3)
+
+#define ALPHA1555(x) ((((x) >> 15) & 0x1 ) << 0)
+#define RED1555(x) (((x) >> 7) & (0x1f << 3))
+#define GREEN1555(x) (((x) >> 2) & (0x1f << 3))
+#define BLUE1555(x) ((((x) >> 0) & 0x1f) << 3)
struct picture{
int xres,yres;
@@ -312,7 +312,7 @@
png_init_io(png_ptr, OUTfd);
- png_set_compression_level(png_ptr, Z_BEST_COMPRESSION);
+ png_set_compression_level(png_ptr, Z_DEFAULT_COMPRESSION);
row_pointers=(png_bytep*)malloc(sizeof(png_bytep)*pict->yres);
-
- Semiprofi
- Beiträge: 1287
- Registriert: Montag 30. Dezember 2002, 08:02
Ich habe es einmal getestet.
Geht wirklich um einiges schneller
Die Dateigröße ist für mich ok, da ich die Screenshots eh noch weiterbearbeite.
Wer es mal testen möchte: http://yadi.org/download/fbshot.tar.gz
PS:
Gruß
mogway
Geht wirklich um einiges schneller
Code: Alles auswählen
-rw-r--r-- 1 nobody nogroup 217470 2005-11-29 20:10 /daten/screenshots/radio_test_alt.png
-rw-r--r-- 1 nobody nogroup 242344 2005-11-29 20:15 /daten/screenshots/radio_test_neu.png
Wer es mal testen möchte: http://yadi.org/download/fbshot.tar.gz
PS:
Ist geändert!just_me hat geschrieben:es wäre schön, wenn im Wiki sowohl ein Link auf das gestrippte Binary wie auch auf die Sourcen läge.
Gruß
mogway
-
- Tuxboxer
- Beiträge: 5001
- Registriert: Montag 11. November 2002, 15:26
hi,
klasse! Habe ich das jetzt richtig verstanden das damit ein Screenshot vom laufenden Programm erzeugt werden kann oder war das nur ein Beispiel mit dem Radiohintergrund?
Was heisst denn 'um einiges schneller'? 2Min 40s finde ich jetzt nicht besonders schnell...ok, fuer den kompletten Hintergrund...interessant faende ich die Zeit fuer das OSD..ein optimiertes fbshot fuer den Frambuffer haette echt was http://forum.tuxbox-cvs.sourceforge.net ... ght=fbshot
cu,
peter
klasse! Habe ich das jetzt richtig verstanden das damit ein Screenshot vom laufenden Programm erzeugt werden kann oder war das nur ein Beispiel mit dem Radiohintergrund?
Was heisst denn 'um einiges schneller'? 2Min 40s finde ich jetzt nicht besonders schnell...ok, fuer den kompletten Hintergrund...interessant faende ich die Zeit fuer das OSD..ein optimiertes fbshot fuer den Frambuffer haette echt was http://forum.tuxbox-cvs.sourceforge.net ... ght=fbshot
cu,
peter
-
- Einsteiger
- Beiträge: 123
- Registriert: Montag 28. November 2005, 11:31
Schnell ist es leider noch nicht, es dauert damit immer noch etwa 40 Sekunden:petgun hat geschrieben:Was heisst denn 'um einiges schneller'? 2Min 40s finde ich jetzt nicht besonders schnell...ok
Code: Alles auswählen
/tmp # time ./fbshot tt.png
Framebuffer /dev/fb/0 is 414720 bytes.
Grabbing 720x576 ...
done.
Writing tt.png ...done.
real 0m 39.10s
user 0m 18.34s
sys 0m 1.78s
-
- Tuxboxer
- Beiträge: 5001
- Registriert: Montag 11. November 2002, 15:26
..schade..aber vielleicht faellt Dir ja noch mehr ein.just_me hat geschrieben: Schnell ist es leider noch nicht, es dauert damit immer noch etwa 40 Sekunden
Kennst Du zB. UltraVNC mit dem VNC Hook Treiber? Da geht selbst auf sehr schwachen Rechnern die Post ab und wechselnde Bildschirminhalte werden (fast) in realtime uebertragen....schade das es so etwas fuer die Dbox zur Uebertragung des OSD nicht gibt...
viel Erfolg,
peter
-
- Einsteiger
- Beiträge: 123
- Registriert: Montag 28. November 2005, 11:31
Mir scheint der Parameter für die Puffergröße in der png library ist mit 8k etwas gross angegeben.petgun hat geschrieben:..schade..aber vielleicht faellt Dir ja noch mehr ein.
Da die CPU 4 k Datencache hat läuft die Benutzung von 8k hier auf die komplette Entleerung des Caches hinaus.
Eventuell fährt man hier mit 1k, 2k oder 4k besser:
Code: Alles auswählen
> diff -U 15 dbox2/cdkroot/include/pngconf.h.orig dbox2/cdkroot/include/pngconf.h
--- dbox2/cdkroot/include/pngconf.h.orig 2005-11-30 12:27:57.000000000 +0100
+++ dbox2/cdkroot/include/pngconf.h 2005-11-30 13:03:43.000000000 +0100
@@ -67,31 +67,31 @@
/* This is the size of the compression buffer, and thus the size of
* an IDAT chunk. Make this whatever size you feel is best for your
* machine. One of these will be allocated per png_struct. When this
* is full, it writes the data to the disk, and does some other
* calculations. Making this an extremely small size will slow
* the library down, but you may want to experiment to determine
* where it becomes significant, if you are concerned with memory
* usage. Note that zlib allocates at least 32Kb also. For readers,
* this describes the size of the buffer available to read the data in.
* Unless this gets smaller than the size of a row (compressed),
* it should not make much difference how big this is.
*/
#ifndef PNG_ZBUF_SIZE
-# define PNG_ZBUF_SIZE 8192
+# define PNG_ZBUF_SIZE 2048
#endif
Nein, guter Tipp, aber ich nehme an, dass Alles das nicht direkt browserkompatibel ist leider nur eine schmale Benutzerbasis sehen würde...Kennst Du zB. UltraVNC mit dem VNC Hook Treiber? Da geht selbst auf ...
-
- Tuxboxer
- Beiträge: 5001
- Registriert: Montag 11. November 2002, 15:26
..sorry, verstehe ich jetzt nicht so ganz den Satz. Mir gehts darum (siehe Link) die Box vollwertig remote nutzen zu koennen...das scheitert imo nur an der schnellen Uebertragung des OSD. Full remote wuerde aber sicher nicht nur mir gefallen...und ich glaube auch das es einen echten Mehrwert/Nutzen darstellen wuerde.just_me hat geschrieben:aber ich nehme an, dass Alles das nicht direkt browserkompatibel ist leider nur eine schmale Benutzerbasis sehen würde...
-
- Developer
- Beiträge: 809
- Registriert: Montag 4. Juli 2005, 18:45
Ich habe mal einen Parameter "-q" eingebaut. Dann wird Z_BEST_SPEED statt Z_BEST_COMPRESSION verwendet.
Ich hab es mal mit Einstellungen->Diverse probiert
normal: 40220 Bytes und 20 Sekunden
quick: 57384 Bytes und 5 Sekunden
Gruß
yjogol
Ich hab es mal mit Einstellungen->Diverse probiert
normal: 40220 Bytes und 20 Sekunden
quick: 57384 Bytes und 5 Sekunden
Gruß
yjogol
FAQ zu YWeb unter http://www.yjogol.de