# APNG-Analyzer für IDAT/fdAT-Chunks, Deflate-Replay und Disposal-Methoden mit Frame-Timing

Laden Sie ein PNG/APNG hoch und analysieren Sie die Animationsstruktur: PNG-Signatur und CRC32-Prüfung jedes Chunks, IHDR (Bit-Tiefe/Farbtyp/Interlace), acTL (Frame- und Wiederholungszahl, vor dem ersten IDAT), fcTL (Sequenznummer, Region x+y+w+h ≤ Canvas, Normalisierung von delay_num/delay_den, dispose_op none/background/previous, blend_op source/over), erster Frame per IDAT + Folgeframes per fdAT; die gemeinsamen fcTL+fdAT-Sequenznummern müssen lückenlos ab 0 aufsteigen; der Deflate-Strom jedes Frames wird wiedergegeben und die entpackte Größe = Höhe × (1 + Bytes pro Zeile) geprüft, korruptes zlib wird gemeldet; die Disposal-Simulation warnt u. a. vor previous im ersten Frame (gilt als background) und vor Frames mit Nullverzögerung.

> Kanonische Seite: https://elysiatools.com/de/tools/apng-idat-fdat-chunk-streaming-deflate-replay-and-disposal-method-analyzer

- **Kategorie:** Compression

- **Schlagwörter:** APNG, animiertes PNG, fcTL, fdAT, acTL, Dispose-Op, Blend-Op, PNG-Chunks, CRC32, Deflate-Replay, Frame-Timing

## Überblick

Die Implementierung folgt der Mozilla-Community-APNG-Spezifikation: acTL muss vor jedem IDAT stehen und num_frames muss der Anzahl der fcTL entsprechen (0 ist ungültig); jeder Frame hat genau ein fcTL, und ist das Standardbild der erste Frame, muss sein fcTL vor dem ersten IDAT mit voller Region (0,0,W,H) stehen; fcTL und fdAT teilen sich denselben Sequenznummernraum, lückenlos aufsteigend ab 0, Fehlordnung gilt als Fehler; delay_den = 0 zählt als 100 (Hundertstelsekunden), delay_num = 0 heißt nächsten Frame so schnell wie möglich rendern; dispose_op previous im ersten Frame gilt als background. Der komprimierte Strom eines Frames ist die Verkettung seiner IDAT (bzw. fdAT ohne die 4 Sequenzbytes) und muss sich exakt zu h×(1+ceil(w×bpp/8)) entpacken, Filterbyte pro Zeile inklusive. CRC32 je Chunk und zlib-Integrität werden getrennt gemeldet, dazu Frametabelle, Dauer/fps, Kompressionsverhältnis, Chunk-Histogramm und das dispose/blend-Semantik-Audit.

## Eingaben

- **PNG-/APNG-Datei (≤20MB)** (file): sample-apng-3frame.png
- **IDAT/fdAT-Deflate-Ströme wiedergeben und prüfen** (checkbox)

## Wann verwenden

- Wenn animierte PNG-Dateien in Browsern oder Bildbetrachtern Darstellungsfehler, Ruckler oder Rendering-Artefakte aufweisen.
- Zur Validierung von APNG-Exporten aus Bildbearbeitungsprogrammen oder Konvertern auf Spezifikationskonformität und lückenlose Sequenzabfolgen.
- Um Frame-Verzögerungen (delay_num / delay_den), Blend- und Disposal-Operationen sowie komprimierte Bilddatenströme auf Chunk-Ebene im Detail zu untersuchen.

## Funktionsweise

- Die Datei wird binär eingelesen, um die PNG-Signatur, IHDR-Eigenschaften und alle nachfolgenden Chunks samt individueller CRC32-Prüfsumme zu validieren.
- Das Werkzeug prüft die acTL-Position vor dem ersten IDAT, gleicht deklarierte Bildraten ab und überwacht die strikt aufsteigenden Sequenznummern über alle fcTL- und fdAT-Blöcke hinweg.
- Die Animationsparameter jedes Frames wie Bildkoordinaten, Verzögerungswerte, dispose_op und blend_op werden tabellarisch aufbereitet und auf Canvas-Grenzen geprüft.
- Optional wird der Deflate-Datenstrom der IDAT- und fdAT-Chunks dekomprimiert, auf zlib-Fehler geprüft und mit der exakten theoretischen Rohbildgröße inklusive Scanline-Filterbytes abgeglichen.

## Anwendungsfälle

- Qualitätssicherung von APNG-Grafiken für Webanwendungen und Messenger-Sticker vor dem Produktiv-Rollout.
- Debugging von Generierungsskripten, die benutzerdefinierte APNG-Dateien aus Einzelbildern assemblieren.
- Fehleranalyse bei defekten animierten PNG-Dateien mit CRC-Fehlern oder Sequenzunterbrechungen.

## Häufig gestellte Fragen

### Welche Rolle spielen acTL, fcTL und fdAT in einer APNG-Datei?

acTL definiert Gesamtframezahl und Loops, fcTL steuert Timing, Dimensionen und Render-Modi einzelner Frames, und fdAT speichert die komprimierten Bilddaten der Folgeframes.

### Warum müssen fcTL- und fdAT-Chunks gemeinsame Sequenznummern teilen?

Die Spezifikation verlangt eine gemeinsame, lückenlos bei 0 beginnende Nummerierung, um die korrekte Reihenfolge und Datenzuordnung jedes Frames sicherzustellen.

### Was bedeutet dispose_op: previous im ersten Frame?

Da vor dem ersten Frame kein Puffer existiert, behandelt die APNG-Spezifikation previous im ersten Frame automatisch als dispose_op: background.

### Wie wird die Bildverzögerung bei delay_den = 0 berechnet?

Ein Nenner von 0 wird spezifikationsgemäß als 100 interpretiert, sodass delay_num als Hundertstelsekunde gewertet wird.

### Welche Fehler erkennt die Deflate-Replay-Prüfung?

Sie erkennt beschädigte zlib-Streams, ungültige Adler-Prüfsummen und Abweichungen zwischen entpackter Bytegröße und erwarteter Scanline-Filter-Rohdatenmenge.

## Ähnliche Tools

- [Bild-Farbpaletten-Extraktor](https://elysiatools.com/de/tools/image-color-palette-extractor): Laedt ein Bild hoch, extrahiert dominante Farben und exportiert codefertige Tokens mit Kontrastpruefung
- [NSFW Bild-Inhaltsdetektor](https://elysiatools.com/de/tools/nsfw-image-detector): KI-gestützter Bild-Inhaltssicherheitsdetektor mit NSFWJS und Fallback-Analyse, unterstützende GIF/Animated WebP/APNG und JPEG/PNG/WEBP.
- [Batch-Konverter fuer Bilder zu WebP](https://elysiatools.com/de/tools/image-to-webp-batch-converter): Konvertiert Bilder oder Bilder aus einem ZIP in WebP und liefert ein ZIP zurueck
- [JPEG in PNG konvertieren](https://elysiatools.com/de/tools/jpg-to-png): JPEG-Bilder in PNG-Format mit Transparenzunterstützung und verlustfreier Kompression konvertieren
- [PNG in 8-bit PNG konvertieren](https://elysiatools.com/de/tools/png-to-8bit-png): PNG-Bilder in 8-bit Farbtiefe für kleinere Dateigröße und bessere Kompatibilität konvertieren
- [PNG in AVIF konvertieren](https://elysiatools.com/de/tools/png-to-avif): PNG-Bilder in AVIF-Format mit Kompression der nächsten Generation und überlegener Qualität-Größe-Verhältnis konvertieren
- [PNG in optimiertes PNG konvertieren](https://elysiatools.com/de/tools/png-to-optimized-png): PNG-Bilder in optimiertes PNG-Format mit erweiterten Kompressionseinstellungen und Qualitätserhaltung konvertieren
- [PNG in TIFF konvertieren](https://elysiatools.com/de/tools/png-to-tiff): PNG-Bilder in TIFF-Format mit Komprimierungsoptionen und hoher Qualitätserhaltung konvertieren

## Beispiele

- [Web Python Bildverarbeitung Beispiele](https://elysiatools.com/de/samples/web-image-processing-python): Web Python Bildverarbeitungsbeispiele mit PIL/Pillow einschließlich Lesen, Speichern, Skalieren und Formatkonvertierung
- [PNG Beispiele](https://elysiatools.com/de/samples/png-samples): PNG-Bildbeispiele in verschiedenen Seitenverhältnissen und Auflösungen
- [PNG-Beispiele](https://elysiatools.com/de/samples/png-viewer-samples): Beispielbilder für den PNG-Viewer im Browser
- [Web Go Bildverarbeitungsbeispiele](https://elysiatools.com/de/samples/web-image-processing-go): Web Go Bildverarbeitungsbeispiele einschließlich Lesen/Schreiben, Skalierung und Formatkonvertierung
