Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi JPEG-Darstellung beschleunigen (https://www.delphipraxis.net/129821-jpeg-darstellung-beschleunigen.html)

Andru 26. Feb 2009 09:30


JPEG-Darstellung beschleunigen
 
Hallo zusammen,

meine Frage hier ist eigentlich ziemlich hardware-lastig, aber wusste nicht, wo ich sie sonst einstellen sollte.

Ich habe eine Matrix von 3x3 Bildern auf meinem Monitor. Dort lasse ich verschiedene JPEGs anzeigen. Das Ganze allerdings
schon im MJPEG-Format als 'sozusagen' Videostream.

Hier meine Fragen:

1. Welchen Weg genau nimmt die JPEG bzw. zur Anzeige gewandelte Bitmap-Datei?
Also welche Hardwarekomponenten werden dabei beansprucht?
CPU ist klar. Aber wie verhält sich die Grafikkarte? Wird dort nur der Speicher benutzt?

2. Sollte meine Annahme richtig sein, dass nur der Speicher der Grafikkarte genutzt wird,
wie kann ich meinen Bitmap-Datenstrom ändern, dass die Grafikkarte mich in der Berechnung
(z.B. von JPG in Bitmap) unterstützt?

Mein Ziel ist einfach so viele Bilder und so schnell wie möglich anzuzeigen.
Die einzelnen verarbeiteten JPEG-Bilder haben alle DVD-Auflösung (PAL - 704x576 Pixel).

Ich hoffe, ihr könnt mir weiterhelfen!

Vielen Dank im Voraus!


André

fragile 26. Feb 2009 11:18

Re: JPEG-Darstellung beschleunigen
 
Je komplexer dein Komprimier-Algorithmus, umso mehr Rechenaufwand für die CPU.
Muss es denn JPG sein oder geht auch ein Lossless-Format wie tif, tga o.ä. ?

Bei moderner Hardware dürften sich die Unterschiede auch bei 100en von Bildern insgesamt im Millisekunden-Bereich
bewegen, ich würde da eher die Ladezeiten mit intelligentem Pre-Loading und Caching der Bilder optimieren...

Andru 26. Feb 2009 11:38

Re: JPEG-Darstellung beschleunigen
 
Also es sind definitv JPGs die angezeigt werden müssen.
Heißt also, ich muss erst als Bitmap wandeln um sie anzeigen zu können.
Das Ganze passiert ja dann für 9 'Video-Fenster' gleichzeitig. Bin momentan bei
circa 15-17 Bildern/Sekunde/VideoFenster. Würde hier aber gern auf 25 - 30 Bilder/Sekunde kommen.

nuclearping 26. Feb 2009 11:40

Re: JPEG-Darstellung beschleunigen
 
Pre-Loading. Die JPGs, die angezeigt werden sollen (im Hintergrund) vorladen und intern als BMP ablegen und dann darauf zugreifen. Ggf durch Threads für Multicore CPUs optimieren.

grizzly 26. Feb 2009 12:42

Re: JPEG-Darstellung beschleunigen
 
Was ein Riesen Monitor. Mindestens 2100x1700 Pixel.

Falls der Monitor doch nicht ganz so groß ist, und die Bilder sowieso in der Größe halbiert werden, dann bringt auch noch die JPEG Eigenschaft "Scale" was. Einfach auf jsHalf setzen, und das Auslesen der Bilddaten geht ca. doppelt so schnell...

Gruß
Michael

Andru 26. Feb 2009 13:09

Re: JPEG-Darstellung beschleunigen
 
Also die ankommen JPEGs sind in PAL-Auflösung. Werden dann allerdings per Bitblt-Funktion skaliert und angezeigt.
Hatte ich wohl vergessen zu erwähnen.. :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz