![]() |
Bild mit JEDI ZLib komprimieren
Hallo,
ich würde gerne ein Bild komprimieren, da ich esüber INDY TIdTCPClient als MemoryStream verschicke. Mir fallen 2 Möglichkeiten ein: 1. Mit den CompressionIntercepts der Indy's, leider kenne ich mich damit nicht aus. 2. Oder der ZLib Komponente, der JEDI's. Als alternative wäre noch die Versionen, mit ZLib, etc. die hier im Forum zu finden sind. Aer was würdet ihr mir empfehlen. Das mit den Indy-Intercepts hört sich vielversprechend an, aber mir geht es im weitetsen Sinn um die Geschwindigkeit und die beste verkleinerung. Dehalb frag ich euch, was am geeignetsten wäre. :) Danke, Lukas |
AW: Bild mit JEDI ZLib komprimieren
ZLib sollte bei XE2 dabei sein, verwendung von TZCompressionStream gibt einen 3 Zeiler.
Die Frage ist was für Bilder Du verschicken möchtest, wenn es beispielsweise JPG's sind bringt das Zippen eh nichts mehr. |
AW: Bild mit JEDI ZLib komprimieren
Es sind BMP's und die sind natürlich etwas füllig :D
|
AW: Bild mit JEDI ZLib komprimieren
PNG ist bei XE2 auch mit dabei.
- verlustlos und - Komprimierung ist gleich eingebaut |
AW: Bild mit JEDI ZLib komprimieren
Ja, aber ich bastel an einem Chat via. WebCam. Ich kriege, kommt drauf an wie es gerade "rutscht", ca. 1 Bild pro Sekunde. Kleinere Intervalle habe ich nocht nicht ausprobiert. Ich kreige das Bild als BMP von der Kamera. Es ist ca. 1MB groß, bei einer Auflösung von 640x480. Soll ich es jetzt eurer Meinung nach in PNG komprimieren oder mit ZLib oder doch JPEG? Mir geht es in erster Linie um die Qualität der Kompression und die Geschwindigkeit dieser. Ich möchte erstmal die Bildrate optimieren, bevor ich auf die Qualität des Bildes eingehe.
|
AW: Bild mit JEDI ZLib komprimieren
Das klingt als bräuchtest du einen Video-Codec, keinen Bild-codec.
Der Unterschied ist gewaltig, weil erstere viel besser darauf optimiert sind, aufeinanderfolgende Frames stark zu komprimieren. Das Problem ist, dass gerade die guten Codecs nicht "einfach so" zu haben sind. Du könntest mal gucken ob es VP8 für Delphi gibt. |
AW: Bild mit JEDI ZLib komprimieren
Also ich habe mich
![]() ![]() |
AW: Bild mit JEDI ZLib komprimieren
|
AW: Bild mit JEDI ZLib komprimieren
Zitat:
Es verlustlose und verlustbehaftete Komprimierung. Bei Bildern von einer Webcam greift man ganz klar zur verlustbehafteten Komprimierung weil man damit wesentlich höhere Komprimierungsgrade erreichen kann. Das heisst in der Praxis JPEG. Die JEDI ZLib ist nicht das richtige Werkzeug zum Komprimieren von Bildern einer Webcam. Der nächste Schritt wäre also das Bitmap in ein ![]() |
AW: Bild mit JEDI ZLib komprimieren
Man kann auch, wenn man verlustfreie Kompessionsverfahren nutzt, nur Differenzbilder verschicken.
Vollbild machen komprimieren (PNG, auch Bitmap+ZLib oder so) verschicken Bild machen Differenzbild zum Vorherrigen berechnen komprimieren verschicken Bild machen Differenzbild zum Vorherrigen berechnen komprimieren verschicken ... alle paar Bilder ein Vollbild schicken, um Übertragungs-/Rechenfehler auszugleichen So ähnlich machet es auch MPEG, nur daß die es noch mit einer Art JPeg-Komprimierung verbinden (alle paar Frames dann ein Vollbild, weil ja bei JPeg rechenfehler durch die Komprimierung entstehen) Wenn man da noch die Farbtiefe verringert, kleines Rauschen aus dem Quellbild entfernt und eventuell auch noch andere kleiner Differenzen einfach weglässt, dann kann man die Daten im Differenzbild verringern und somit die Komprimierung verbessern Im Grundprinzip machen die Videokodecs auch nichts Anderes. Das "Weglassen" kann man auch noch, wie bei MP3 geziehlt behandeln. - nicht zufällig alles verkleinern, sondern geziehld sowas weglassen, was das menschliche Auge vermutlich eh nicht sieht/mitbekommt Und abhängig von der möglichen Datenrate kann man dann auch noch die Bildqualität verringern. - kommen zu wenige Bilder die Sekunde rüber, wird die Qualli schlechter, bis eine Mindestbildrate erreicht wird und bei "zu vielen" Bildern wird sie wieder besser. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:43 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