Eco-Astro Image Squeezer: Konzept zur Bildverarbeitung im Browser
Ein Konzept für Bildkonvertierung mit WebAssembly-Codecs und Web Workern, das Qualität, Speicherbedarf und Grenzen der Parallelverarbeitung gemeinsam berücksichtigt.
1. Qualitätsanforderungen zuerst festlegen
Dieses Dokument beschreibt das Konzept eines Werkzeugs zur Bildkonvertierung im Browser. AVIF und WebP unterstützen je nach Einstellung verlustbehaftete oder verlustfreie Kompression. Eine kleinere Datei belegt nicht, dass alle ursprünglichen Pixel unverändert erhalten geblieben sind. Ausgabeformat und Qualitätsanforderungen werden anhand des Leitfadens zu Bildformaten festgelegt.
2. Verarbeitungsablauf
- Tatsächliches Format, Dateigröße und Auflösung der Eingabe werden geprüft; zulässige Grenzen werden festgelegt.
- Die Konvertierung beginnt erst, wenn der WebAssembly-Codec geladen und initialisiert ist.
- Rechenintensive Arbeiten werden an Web Worker übergeben. Die Anzahl der Worker und gleichzeitig laufenden Aufgaben bleibt begrenzt.
- Fortschritt, Abbruch, Fehler und Speichermangel werden an die Oberfläche gemeldet. Nicht mehr benötigte Puffer und Objekt-URLs werden freigegeben.
Worker können nicht direkt auf das DOM zugreifen. Berechnungsergebnisse werden per Nachricht ausgetauscht; die Oberfläche aktualisiert der Hauptthread. Die Zuständigkeiten richten sich nach der Dokumentation zu Web Workern.
3. Prüfkriterien
Im verlustfreien Modus werden die dekodierten Pixel verglichen. Im verlustbehafteten Modus werden visuelle Qualität und Dateigröße gemeinsam bewertet. Der Erhalt von Transparenz, Farbprofilen, Ausrichtungsinformationen und Animationen wird gesondert geprüft.
Kompressionsrate und Verarbeitungszeit hängen von Bildinhalt, Einstellungen und Gerätespeicher ab. Statt fester Einsparungsquoten oder einer stets ruckelfreien Oberfläche dienen Messungen mit repräsentativen Bildern und leistungsschwachen Geräten als Entscheidungsgrundlage.