Κινούμενο PNG (.apng)

W3C Τυπικό

Το APNG επεκτείνει το PNG με κινούμενη εικόνα πολλών καρέ και μια στατική εικόνα· προγράμματα χωρίς υποστήριξη APNG ενδέχεται να εμφανίζουν μόνο τη στατική εικόνα.

Μετατροπή APNG σε GIF

Δωρεάν μετατροπέας από APNG σε GIF εντός του προγράμματος περιήγησης. Μετατρέψτε αρχεία άμεσα στη συσκευή σας.

Επιθεώρηση & Μεταδεδομένα

Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία APNG ελέγχοντας την αρχική δυαδική ακολουθία byte:

Επιλέξτε ή αποθέστε αρχεία εδώ

Ιδιωτικά - τα αρχεία δεν φεύγουν ποτέ από τη συσκευή σας

ή επικόλληση Ctrl+V
Εγγύηση Απορρήτου Μηδενικής Μετάδοσης Δικτύου: Δεν μεταφορτώνεται κανένα byte σε εξωτερικούς διακομιστές. Όλη η επεξεργασία γίνεται τοπικά στο απομονωμένο περιβάλλον του προγράμματος περιήγησής σας.

Υπογραφή κεφαλίδας σε επίπεδο byte (Magic Bytes)

Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία APNG ελέγχοντας την αρχική δυαδική ακολουθία byte:

ΔΕΚΑΕΞΑΔΙΚΗ ΥΠΟΓΡΑΦΗ (OFFSET 0):

89 50 4E 47 0D 0A 1A 0A

ΑΝΑΠΑΡΑΣΤΑΣΗ ASCII: ‰PNG....

Τυποποίηση: W3C Community Group Report (2021) / Mozilla Extension

Τεχνικές Προδιαγραφές

Αρχιτεκτονική ΠεριέκτηΡοή τμημάτων PNG με τμήματα acTL (έλεγχος κίνησης), fcTL (έλεγχος καρέ) και fdAT (δεδομένα καρέ)
ΣυμπίεσηDeflate (zlib), συρόμενο παράθυρο LZ77 με προσαρμοστικό φιλτράρισμα 2D σε κάθε καρέ
Σειρά byte (endianness)Μεγάλης διάταξης (Big-Endian, διάταξη byte δικτύου)
Χρωματικοί ΧώροιsRGB, Display P3, Embedded ICC Profile (iCCP)
Κανάλια & ΔομήRGBA (8 bit ή 16 bit ανά κανάλι Πραγματικό χρώμα + άλφα 8 bit)
Μέγιστες Διαστάσεις2,147,483,647 x 2,147,483,647 εικονοστοιχεία (όριο 31 bit του PNG)
ΔιαφάνειαΠλήρες κανάλι διαφάνειας άλφα 8 bit (256 επίπεδα ομαλής ημιδιαφάνειας)
Ροή δεδομένων και προοδευτική φόρτωσηΤα αρχεία APNG περιλαμβάνουν στατική εικόνα· οι αποκωδικοποιητές που αγνοούν τα τμήματα κίνησης μπορεί να την εμφανίσουν ως ακίνητη εικόνα.

Τεχνικός Πίνακας Σύγκρισης: APNG έναντι Ανταγωνιστών

Τεχνικό χαρακτηριστικόAPNG (Τρέχον)GIFWEBPAVIF
Βάθος ΧρώματοςRGB 24-bit (16.7M χρώματα)Με ευρετήριο 8-bit (256 χρώματα)RGB 24-bit (16.7M χρώματα)HDR 10-bit / 12-bit
Διαφάνεια ΆλφαΟμαλή διαφάνεια άλφα 8-bit (256 επίπεδα)Δυαδική μάσκα ενεργού/ανενεργού 1-bitΟμαλή διαφάνεια άλφα 8-bitΟμαλή διαφάνεια άλφα 8-bit / 10-bit
Συμβατότητα προς τα ΠίσωΟρισμένα προγράμματα προβολής PNG μπορούν να εμφανίσουν τη στατική εικόνα· η κίνηση απαιτεί υποστήριξη APNG.Η υποστήριξη διαφέρει ανά πρόγραμμα περιήγησης.Κανένα σε παλαιότερα προγράμματα προβολήςΚανένα σε παλαιότερα προγράμματα προβολής
Αποτελεσματικότητα ΣυμπίεσηςDeflate (μέτρια)LZW (κακή)Καρέ κλειδιά/διαφοράς VP8 (υψηλή)Με πρόβλεψη μεταξύ καρέ AV1 (εξαιρετικά υψηλή)

Συνήθεις τρόποι καταστροφής δεδομένων και οδηγός ανάκτησης δεκαεξαδικών δεδομένων

Η κινούμενη εικόνα αναπαράγει μόνο το πρώτο καρέ και δεν επαναλαμβάνεται ούτε προχωρά στο επόμενο.

Βασική Αιτία: Λείπει ή είναι κατεστραμμένο το τμήμα (chunk) 'acTL' (Animation Control) που βρίσκεται πριν από το πρώτο τμήμα IDAT.

Ανάκτηση: Επανασυσκευάστε τα καρέ χρησιμοποιώντας το apngasm ή το File2File.app Animation Converter για την αναδόμηση έγκυρων τμημάτων ελέγχου κινουμένων σχεδίων.

Ανάλυση ασφάλειας και διανύσματα επίθεσης στον αναλυτή

Οι αναλυτές (parsers) APNG επεξεργάζονται επαναλαμβανόμενα τμήματα ελέγχου καρέ όπου οι κακοσχηματισμένες διαστάσεις μπορούν να προκαλέσουν υπερχείλιση ακεραίων (integer overflow) ή εξάντληση μνήμης σωρού (heap exhaustion).

Γνωστά διανύσματα επίθεσης

  • Υπερχείλιση ακεραίων στον υπολογισμό μετατόπισης καρέ (x_offset / y_offset) που οδηγεί σε σύνθεση καρέ εκτός ορίων.
  • Ασυμφωνία στο πλάτος/ύψος καρέ που οδηγεί σε υπέρβαση ανάγνωσης μνήμης (buffer over-read) κατά την ανάμιξη καρέ.
  • Άπειροι βρόχοι αποσυμπίεσης κινούμενης εικόνας που εξαντλούν την CPU σε υπηρεσίες δημιουργίας μικρογραφιών backend.

Βέλτιστες αμυντικές πρακτικές: Επικυρώστε τα συνολικά όρια του κινούμενου καμβά και περιορίστε τους μέγιστους επιτρεπόμενους αριθμούς πλαισίων πριν από τη μετατροπή σε ράστερ.

Ιστορική Αναδρομή & Ορόσημα

2021Το W3C καταχωρεί επίσημα την προδιαγραφή APNG ως αναγνωρισμένο πρότυπο κοινότητας.
2017Το Chrome 59 πρόσθεσε εγγενή υποστήριξη APNG· η υποστήριξη διαφέρει ανά πρόγραμμα περιήγησης και έκδοση.
2008Η Apple υιοθετεί το APNG για κινούμενα αυτοκόλλητα iOS και γραφικά του προγράμματος περιήγησης Safari.
2004Οι Stuart Parmenter και Vladimir Vukicevic καθορίζουν το APNG για τις κινούμενες εικόνες κατάστασης δικτύου του Mozilla Firefox.

Κύρια Πλεονεκτήματα

  • Πλήρες χρώμα RGB 24-bit συν διαφάνεια άλφα 8-bit, εξαλείφοντας εντελώς τα τεχνουργήματα με οδοντωτές ακμές της διαφάνειας GIF 1-bit.
  • Τα αρχεία APNG περιλαμβάνουν στατική εικόνα· οι αποκωδικοποιητές που αγνοούν τα τμήματα κίνησης μπορεί να την εμφανίσουν ως ακίνητη εικόνα.
  • Πολλά σύγχρονα προγράμματα περιήγησης υποστηρίζουν αναπαραγωγή APNG· η διαθεσιμότητα εξαρτάται από το πρόγραμμα και την έκδοσή του.

Τεχνικοί Περιορισμοί & Μειονεκτήματα

  • Μεγαλύτερα μεγέθη αρχείων από τα σύγχρονα μορφότυπα κινουμένων σχεδίων που βασίζονται σε βίντεο, όπως το WebM ή το MP4.
  • Υψηλότερη πολυπλοκότητα κωδικοποίησης και χρήση CPU κατά τη δημιουργία σε σύγκριση με το παλαιότερο GIF.
  • Έλλειψη πρόβλεψης διανυσμάτων κίνησης μεταξύ των καρέ που βρίσκεται σε εξειδικευμένους κωδικοποιητές βίντεο.

Ενδιαφέροντα Τεχνικά Στοιχεία

  • Η επίσημη Ομάδα Ανάπτυξης PNG απέρριψε το APNG το 2007, προτιμώντας την ξεχωριστή μορφή MNG, η οποία τελικά δεν υιοθετήθηκε ευρέως.
  • Η Apple χρησιμοποίησε το APNG για κινούμενα αυτοκόλλητα στο iOS 10 Messages App Store, οδηγώντας σε μαζική υιοθέτηση από κινητά.
  • Εάν ανοίξετε ένα αρχείο APNG σε ένα αρχαίο πρόγραμμα προβολής εικόνων από τη δεκαετία του 1990, απλώς εμφανίζει το πρώτο καρέ χωρίς να παρουσιάσει σφάλμα.

Συχνές Τεχνικές Ερωτήσεις

Γιατί το APNG είναι καλύτερο από το GIF;

Το APNG υποστηρίζει 16,7 εκατομμύρια χρώματα και 256 επίπεδα ομαλής διαφάνειας alpha, ενώ το GIF περιορίζεται σε 256 χρώματα και σκληρή διαφάνεια 1-bit.

Υποστηρίζουν τα σύγχρονα προγράμματα περιήγησης το APNG;

Πολλά σύγχρονα προγράμματα περιήγησης υποστηρίζουν αναπαραγωγή APNG· η διαθεσιμότητα εξαρτάται από το πρόγραμμα και την έκδοσή του.

Μπορώ να μετατρέψω ένα APNG σε τυπικό GIF ή MP4;

Ναι. Το File2File.app μπορεί να μετατρέψει κινούμενες εικόνες APNG σε ελαφριά αρχεία GIF, MP4 ή WebM απευθείας στο πρόγραμμα περιήγησής σας.