Neues Feature: Jpeg-Decodierung auf fremden Server
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
-
- Tuxboxer
- Beiträge: 6044
- Registriert: Montag 17. November 2003, 06:48
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
-
- Erleuchteter
- Beiträge: 547
- Registriert: Mittwoch 30. Juni 2004, 16:06
Damit meinte ich die Linux Version die es im CVS zum runterladen gab. Das habe ich nicht unter Windows hinbekommen. Aber ich freue mich schon aufs testen.Ryker hat geschrieben:Cygwin muß man nicht erst installieren. Die cygwin1.dll und cygjpeg-62.dll liegen mit dabei, das sollte reichen.Torsten73 hat geschrieben:...
Cygwin habe ich auch mal installiert, dachte es wäre ein Emulator für Linux unter Windows. ...
Wo legtst Du die exe denn ab?
Cu
Torsten
-
- Semiprofi
- Beiträge: 1287
- Registriert: Montag 30. Dezember 2002, 08:02
-
- Einsteiger
- Beiträge: 297
- Registriert: Sonntag 13. Oktober 2002, 22:02
jep kann ich bestätigen
aufruf des picsevers mit
picserver 9999
dann Bildbetrachter
und im log kommt das
PV[1109170359|25] fh_jpeg_load_via_server (12.JPG/661/529) {
Server 192.168.123.1 [9999]
Die eingabeaufforderung ist dann abgestürzt.
PS unter linux hatte ich den server schon mal am laufen. nur leider immer nur 1 Bild dann neustart.
aufruf des picsevers mit
picserver 9999
dann Bildbetrachter
und im log kommt das
PV[1109170359|25] fh_jpeg_load_via_server (12.JPG/661/529) {
Server 192.168.123.1 [9999]
Die eingabeaufforderung ist dann abgestürzt.
PS unter linux hatte ich den server schon mal am laufen. nur leider immer nur 1 Bild dann neustart.
Usage: picserver [-d] [-r "<replace>,<to>"] <port>
-d : enable debug log (stderr)
-r : replace token <replace> with <to> at beginning of path of requested picture
-s : use simple resize algorithm (instead of more complex one)
e.g.: picserver -d -r "/mnt,/data" 12345
-
- Einsteiger
- Beiträge: 297
- Registriert: Sonntag 13. Oktober 2002, 22:02
ich hab jetz mal den debug mode angeschmissen
das steht jetz nach dem aufruf
20050223 16:07:55.57 Connect from 192.168.123.15:1063
20050223 16:07:55.57 Pic: /mnt/bilder/ustich/100.JPG
20050223 16:07:55.57 Pic (trans): /mnt/bilder/Lustich/100.JPG
20050223 16:07:55.76 Wanted size: width 480 height: 299
20050223 16:07:55.76 Start decoding /mnt/bilder/Lustich/100.JPG
das wars dann
PS die zahl hinter der IP der Box 192.168.123.15 -> andert sich bei jeden neustarten des servers. Ist das nicht der Port ???
dann kann das ja nicht funzen
das steht jetz nach dem aufruf
20050223 16:07:55.57 Connect from 192.168.123.15:1063
20050223 16:07:55.57 Pic: /mnt/bilder/ustich/100.JPG
20050223 16:07:55.57 Pic (trans): /mnt/bilder/Lustich/100.JPG
20050223 16:07:55.76 Wanted size: width 480 height: 299
20050223 16:07:55.76 Start decoding /mnt/bilder/Lustich/100.JPG
das wars dann
PS die zahl hinter der IP der Box 192.168.123.15 -> andert sich bei jeden neustarten des servers. Ist das nicht der Port ???
dann kann das ja nicht funzen
-
- Tuxboxer
- Beiträge: 6044
- Registriert: Montag 17. November 2003, 06:48
-
- Einsteiger
- Beiträge: 297
- Registriert: Sonntag 13. Oktober 2002, 22:02
neuer versuch in linux mit dem picserver1.3 von yadi.org
fernsehass@linux:~/Documents> ./picserver13 -d 9999
20050223 16:42:56.89 Connect from 192.168.123.15:1050
20050223 16:42:56.89 Pic: /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.89 Pic (trans): /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.89 Wanted size: width 371 height: 248
20050223 16:42:56.90 Start decoding /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.90 Error opening file: /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.90 End decoding /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.90 Image width: 0 , height: 0
20050223 16:42:56.90 Start resizing
20050223 16:42:56.90 color_average_resize {
Gleitkomma-Ausnahme
fernsehass@linux:~/Documents>
die optionen sind die selben
Usage: picserver13 [-d] [-r "<replace>,<to>"] <port>
-d : enable debug log (stderr)
-r : replace token <replace> with <to> at beginning of path of requested picture
-s : use simple resize algorithm (instead of more complex one)
e.g.: picserver13 -d -r "/mnt,/data" 12345
Nur was kommt zwischen die " " ?
fernsehass@linux:~/Documents> ./picserver13 -d 9999
20050223 16:42:56.89 Connect from 192.168.123.15:1050
20050223 16:42:56.89 Pic: /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.89 Pic (trans): /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.89 Wanted size: width 371 height: 248
20050223 16:42:56.90 Start decoding /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.90 Error opening file: /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.90 End decoding /mnt/bilder/Lustich/15.JPG
20050223 16:42:56.90 Image width: 0 , height: 0
20050223 16:42:56.90 Start resizing
20050223 16:42:56.90 color_average_resize {
Gleitkomma-Ausnahme
fernsehass@linux:~/Documents>
die optionen sind die selben
Usage: picserver13 [-d] [-r "<replace>,<to>"] <port>
-d : enable debug log (stderr)
-r : replace token <replace> with <to> at beginning of path of requested picture
-s : use simple resize algorithm (instead of more complex one)
e.g.: picserver13 -d -r "/mnt,/data" 12345
Nur was kommt zwischen die " " ?
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
Ich habe gerade auch mal den picserver unter Windows getestet, die Anfragen kommen am PC an er rechnet auch um, aber einen Geschwindiglkeitsvorteil habe ich nicht feststellen können, eher das Gegenteil. Unter Linux genau das gleiche.
Kann es sein, daß das Netzwerk ausgelastet ist, wenn das Bild 3 mal über die Leitung geschickt wird? (PC->NFS->DBOX->PicserverProtokoll->PC->PC dekodiert->PicserverProtokoll->DBOX). Denn direkt schein der picserver ja nicht zuzugreifen, wie man anhand des Logs sieht.
Ryker
Kann es sein, daß das Netzwerk ausgelastet ist, wenn das Bild 3 mal über die Leitung geschickt wird? (PC->NFS->DBOX->PicserverProtokoll->PC->PC dekodiert->PicserverProtokoll->DBOX). Denn direkt schein der picserver ja nicht zuzugreifen, wie man anhand des Logs sieht.
Code: Alles auswählen
20050223 17:57:39.70 Connect from 139.25.69.241:1032
20050223 17:57:39.70 Pic: /mnt/bilder/UrlaubLigurien2004/100KM004/PICT0021.JPG
20050223 17:57:39.70 Pic (trans): /mnt/bilder/UrlaubLigurien2004/100KM004/PICT0021.JPG
D-Box2 (Nokia; Kabel; 2xINTEL; AVIA500) - aktuelles JtG-Image
-
- Erleuchteter
- Beiträge: 547
- Registriert: Mittwoch 30. Juni 2004, 16:06
Ich denke das sollten wir mal Zwen fragen. Er hat das doch bestimmt unter Linux am Laufen. Lt. der Beschreibung soll das Bild dann in 3-4 sec. da sein (statt 7s)Ryker hat geschrieben:Ich habe gerade auch mal den picserver unter Windows getestet, die Anfragen kommen am PC an er rechnet auch um, aber einen Geschwindiglkeitsvorteil habe ich nicht feststellen können, eher das Gegenteil. Unter Linux genau das gleiche.
Kann es sein, daß das Netzwerk ausgelastet ist, wenn das Bild 3 mal über die Leitung geschickt wird? (PC->NFS->DBOX->PicserverProtokoll->PC->PC dekodiert->PicserverProtokoll->DBOX). Denn direkt schein der picserver ja nicht zuzugreifen, wie man anhand des Logs sieht.
RykerCode: Alles auswählen
20050223 17:57:39.70 Connect from 139.25.69.241:1032 20050223 17:57:39.70 Pic: /mnt/bilder/UrlaubLigurien2004/100KM004/PICT0021.JPG 20050223 17:57:39.70 Pic (trans): /mnt/bilder/UrlaubLigurien2004/100KM004/PICT0021.JPG
Der Picserver liegt aber auf dem selben Rechner wie die Bilder? Das war namlich vorgabe. Dann ist es nämlich nicht nötig die Daten über die Box zu schicken, sondern die Box braucht nur eine Anfrage an den Picserver geben, der lädt das Bild, decodiert es und schickt nur das fertige Ergebniss an die Box. So denke ich ist das je nach Rechengeschwindigkeit des Picservers sehr schnell möglich.
Ich gehe schon davon aus das das funktioniert. Nur wie machen wir es richtig ...
Cu
Torsten
-
- Einsteiger
- Beiträge: 297
- Registriert: Sonntag 13. Oktober 2002, 22:02
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
Aber woher weiß der picserver, wo in welchen Verzeichnis auf dem PC die Bilder liegen ???Torsten73 hat geschrieben:...
Der Picserver liegt aber auf dem selben Rechner wie die Bilder? Das war namlich vorgabe. Dann ist es nämlich nicht nötig die Daten über die Box zu schicken, sondern die Box braucht nur eine Anfrage an den Picserver geben, der lädt das Bild, decodiert es und schickt nur das fertige Ergebniss an die Box....
@fernsehass: Wie startest du den picserver, weil man kann ja da auch noch irgendwelche Verzeichnisse definieren. Da ist mir aber nicht klar wofür.
Ryker
D-Box2 (Nokia; Kabel; 2xINTEL; AVIA500) - aktuelles JtG-Image
-
- Semiprofi
- Beiträge: 1287
- Registriert: Montag 30. Dezember 2002, 08:02
Ryker hat geschrieben:Aber woher weiß der picserver, wo in welchen Verzeichnis auf dem PC die Bilder liegen ???
Code: Alles auswählen
Notes:
- Neutrino does not send the data of the compressed picture (e.g. jpeg) to
the server, since this would take too much time (slow network) and would
eat up almost all speed increase. There for only
the path of the pic is sent. This means the picture
needs to be accesible by the server somehow. The fastest
solution is to run the picserver prog on the machine
that hosts the pictures.
Since pathnames are not identical on client (mounted filesys)
and server (local filesys). The server needs to do some mapping.
(e.g. convert /mnt/photos/pic1.jpg -> /data/photos/pic1.jpg)
- The server sends the pic to neutrino in 16 bit resultion (RGB555)
This decreases the amount of data that need to be transferred to the
box via network by 33% and results in a overall speed increase.
The neutrino picviewer on the dbox2 does not display the pic with
more colors anyway...
- Picviewer works with jpeg only at the moment...
- If the picserver is not reachable or the picture cannot be decoded by the
server for whatever reason, the picture is decoded locally.
Limitations (at the moment)
- Only one picserver can be defined
- If picserver is enabled, all JPEG are tried to be decoded via this
server.
Configuration
==============
- Enter ip and port of decode server in neutrino picviwer settings.
- Start picserver programm on server (use same port)
e.g. picserver -d -r "/mnt/photos,/data/src/pix" 9999
mogway
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
Danke mogway.
Ich hab die Doc auch gerade gefunden - ich sag nur RTFM .
Man muß natürlich die Verzeichnisse mappen.
z.b. picserver.exe -r "/mnt/bilder,E:\Dateiablage\Bilder" 9999
Damit funktionierts auch unter Windows genauso super, wie unter Linux. JPGs von einer 4MPixel-Camera werden damit in 2 Sekunden auf der dbox angezeigt.
Wenn ich demnächst mal Zeit habe, baue ich noch ein kleines Windows Setup-Script, welches den Picserver als Dienst ins Windows reinhängt. (cygrunsrv od. srvany ... mal schauen)
Ryker
Ich hab die Doc auch gerade gefunden - ich sag nur RTFM .
Man muß natürlich die Verzeichnisse mappen.
z.b. picserver.exe -r "/mnt/bilder,E:\Dateiablage\Bilder" 9999
Damit funktionierts auch unter Windows genauso super, wie unter Linux. JPGs von einer 4MPixel-Camera werden damit in 2 Sekunden auf der dbox angezeigt.
Wenn ich demnächst mal Zeit habe, baue ich noch ein kleines Windows Setup-Script, welches den Picserver als Dienst ins Windows reinhängt. (cygrunsrv od. srvany ... mal schauen)
Ryker
D-Box2 (Nokia; Kabel; 2xINTEL; AVIA500) - aktuelles JtG-Image
-
- Tuxboxer
- Beiträge: 6044
- Registriert: Montag 17. November 2003, 06:48
-
- Tuxboxer
- Beiträge: 2614
- Registriert: Montag 20. Mai 2002, 10:49
- Image: JTG-Image [IDE] Version 2.4.4
- Image: (7025SS) Merlin
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
Man müsste sich nur mal Gedanken machen, wie man die folgenden Zeilen in der picserver.c so verändern kann, daß diese auch direkt ausm CVS ohne Veränderung der Sourcen mit Cygwin kompilierbar sind. Cygwin kann irgendwie kein basename() . In dem aktuellen Cygwin-picserver ist deswegen ein " usage("picserver.exe"); " drin.
Ryker
Code: Alles auswählen
if(optind > argnr-1)
{
usage((char*)basename(argv[0]));
exit(1);
}
int port = atoi(argv[optind]);
if(port <= 0)
{
usage((char*)basename(argv[0]));
exit(1);
}
Ryker
D-Box2 (Nokia; Kabel; 2xINTEL; AVIA500) - aktuelles JtG-Image
-
- Erleuchteter
- Beiträge: 547
- Registriert: Mittwoch 30. Juni 2004, 16:06
Hi,
von mir auch vielen Dank. Mit der Pfadangabe hatte ich so meine Startschwierigkeiten, und mußte gestern abend abbrechen.
Interessanterweise scheint es so zu sein, dass wenn der Picserver nicht erreicht wird dann doch die Box das JPG dekodiert. Es kam auf jedenfalls das Foto, obwohl der Picserver aus war.
Wenn Ryker das Teil noch als Konfigurierbaren Dienst starten läßt wäre doch schon optimal, fehlen dann nur noch ein paar Zusatzfunktionen wie Zoomen, drehen, und was man sich sonst so noch vorstellen kann
Cu
Torsten
von mir auch vielen Dank. Mit der Pfadangabe hatte ich so meine Startschwierigkeiten, und mußte gestern abend abbrechen.
Interessanterweise scheint es so zu sein, dass wenn der Picserver nicht erreicht wird dann doch die Box das JPG dekodiert. Es kam auf jedenfalls das Foto, obwohl der Picserver aus war.
Wenn Ryker das Teil noch als Konfigurierbaren Dienst starten läßt wäre doch schon optimal, fehlen dann nur noch ein paar Zusatzfunktionen wie Zoomen, drehen, und was man sich sonst so noch vorstellen kann
Cu
Torsten
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
Torsten73 hat geschrieben:...
Wenn Ryker das Teil noch als Konfigurierbaren Dienst starten läßt wäre doch schon optimal,...
So, ging einfacher als ich dachte. Ich hab jetzt ein Installer fertig, der auch den Dienst erzeugt....und auch über Systemsteuerung->Software->entfernen diesen auch wieder entfernt. Meine ersten Tests waren erfolgreich.
Ryker
D-Box2 (Nokia; Kabel; 2xINTEL; AVIA500) - aktuelles JtG-Image
-
- Tuxboxer
- Beiträge: 6044
- Registriert: Montag 17. November 2003, 06:48
-
- Semiprofi
- Beiträge: 1287
- Registriert: Montag 30. Dezember 2002, 08:02
-
- Image-Team
- Beiträge: 554
- Registriert: Montag 2. Juni 2003, 10:38
-
- Semiprofi
- Beiträge: 1287
- Registriert: Montag 30. Dezember 2002, 08:02