Εικόνα WebP (.webp)
RFC ΤυπικόΤο WebP είναι μια σύγχρονη μορφή εικόνας που αναπτύχθηκε από την Google και παρέχει ανώτερη συμπίεση με και χωρίς απώλειες για εικόνες ιστού, υποστηρίζοντας τόσο τη διαφάνεια alpha όσο και κινούμενα καρέ.
Μετατροπή JPG σε WEBP
Δωρεάν μετατροπέας από JPG σε WEBP εντός του προγράμματος περιήγησης. Μετατρέψτε αρχεία άμεσα στη συσκευή σας.
Συμπίεση WebP στο διαδίκτυο
Ιδιωτικά - τα αρχεία δεν φεύγουν ποτέ από τη συσκευή σας
Επιθεώρηση & Μεταδεδομένα
Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία WebP ελέγχοντας την αρχική δυαδική ακολουθία byte:
Υπογραφή κεφαλίδας σε επίπεδο byte (Magic Bytes)
Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία WebP ελέγχοντας την αρχική δυαδική ακολουθία byte:
ΔΕΚΑΕΞΑΔΙΚΗ ΥΠΟΓΡΑΦΗ (OFFSET 0):
52 49 46 46 ?? ?? ?? ?? 57 45 42 50ΑΝΑΠΑΡΑΣΤΑΣΗ ASCII: RIFF????WEBP
Τυποποίηση: RFC 6386 / Προδιαγραφή κοντέινερ RIFF
Τεχνικές Προδιαγραφές
| Αρχιτεκτονική Περιέκτη | Κοντέινερ Resource Interchange File Format (RIFF) με FourCC 'WEBP' |
| Συμπίεση | Κωδικοποίηση εντός πλαισίου πρόβλεψης VP8 με απώλειες & χωρική κωδικοποίηση εντροπίας VP8L χωρίς απώλειες |
| Σειρά byte (endianness) | Little-Endian για τα μεγέθη τμημάτων RIFF και τις ετικέτες του κοντέινερ |
| Χρωματικοί Χώροι | sRGB, Ενσωματωμένα προφίλ ICC (μέσω εκτεταμένης κεφαλίδας VP8X) |
| Κανάλια & Δομή | RGB + Alpha (8-bit ανά κανάλι) |
| Μέγιστες Διαστάσεις | 16,383 x 16,383 εικονοστοιχεία (ακέραιοι 14 bit χωρίς πρόσημο) |
| Διαφάνεια | Πλήρης διαφάνεια καναλιού alpha 8-bit τόσο σε λειτουργίες με απώλειες όσο και χωρίς |
| Ροή δεδομένων και προοδευτική φόρτωση | Υποστήριξη προοδευτικής αποκωδικοποίησης μέσω σταδιακής αποκωδικοποίησης μπλοκ VP8 |
Τεχνικός Πίνακας Σύγκρισης: WebP έναντι Ανταγωνιστών
| Τεχνικό χαρακτηριστικό | WebP (Τρέχον) | JPEG | PNG | AVIF |
|---|---|---|---|---|
| Υποστηριζόμενες λειτουργίες συμπίεσης | Και με απώλειες (VP8) και χωρίς απώλειες (VP8L) | Μόνο με απώλειες | Μόνο χωρίς απώλειες | Και με απώλειες (AV1) και χωρίς απώλειες |
| Διαφάνεια Alpha | Ναι (και με απώλειες και χωρίς) | Όχι | Ναι | Ναι |
| Υποστήριξη κινουμένων σχεδίων | Ναι (πολλαπλών πλαισίων με καθυστερήσεις πλαισίου) | Όχι | Απαιτεί επέκταση APNG | Ναι (ακολουθίες εικόνων AVIF) |
| HDR / Ευρεία χρωματική γκάμα | Μόνο 8-bit sRGB | 8-bit τυπικό | 8-bit & 16-bit | Εγγενές HDR 10-bit & 12-bit |
| Υποστήριξη προγραμμάτων περιήγησης | Υποστηρίζεται από πολλά σύγχρονα προγράμματα περιήγησης· η κάλυψη εξαρτάται από την έκδοση του προγράμματος περιήγησης και την πλατφόρμα. | Ευρεία υποστήριξη· η διαθεσιμότητα διαφέρει ανάλογα με το προϊόν και την έκδοσή του. | Ευρεία υποστήριξη· η διαθεσιμότητα διαφέρει ανάλογα με το προϊόν και την έκδοσή του. | Υποστηρίζεται από πολλά σύγχρονα προγράμματα περιήγησης· η διαθεσιμότητα διαφέρει. |
Συνήθεις τρόποι καταστροφής δεδομένων και οδηγός ανάκτησης δεκαεξαδικών δεδομένων
Το πρόγραμμα περιήγησης αποτυγχάνει να εμφανίσει την εικόνα WebP ή εμφανίζει εικονίδιο κατεστραμμένης εικόνας.
Βασική Αιτία: Η κεφαλίδα μήκους ωφέλιμου φορτίου RIFF (bytes 4-7) δεν ταιριάζει με το πραγματικό μήκος σε bytes στον δίσκο.
Ανάκτηση: Υπολογίστε εκ νέου το συνολικό μέγεθος αρχείου μείον 8 bytes και διορθώστε το 4-byte Little-Endian unsigned integer στη θέση 0x04.
Ο αποκωδικοποιητής αποτυγχάνει με το μήνυμα 'Invalid FourCC: Expected WEBP'.
Βασική Αιτία: Τα bytes 8-11 δεν περιέχουν τους χαρακτήρες ASCII 'WEBP'.
Ανάκτηση: Επιβεβαιώστε ότι η θέση 0x08 περιέχει τα 0x57 0x45 0x42 0x50 ('WEBP') και ότι η κεφαλίδα του τμήματος ταιριάζει με το 'VP8 ' ή 'VP8L'.
Ανάλυση ασφάλειας και διανύσματα επίθεσης στον αναλυτή
Η ανάλυση WebP προσέλκυσε αυστηρό έλεγχο ασφαλείας μετά το CVE-2023-4863, οδηγώντας σε εκτεταμένη σκλήρυνση sandbox σε όλα τα κύρια προγράμματα περιήγησης ιστού.
Γνωστά διανύσματα επίθεσης
- CVE-2023-4863: Υπερχείλιση μνήμης heap (buffer overflow) στη συνάρτηση BuildHuffmanTable του libwebp κατά την ανάλυση μη έγκυρων πινάκων Huffman χωρίς απώλειες, επιτρέποντας την απομακρυσμένη εκτέλεση κώδικα.
- Υπερχείλιση ακεραίων κατά την αποκωδικοποίηση υπερμεγεθών διαστάσεων καμβά κινουμένων σχεδίων.
Βέλτιστες αμυντικές πρακτικές: Βεβαιωθείτε ότι όλες οι βιβλιοθήκες πελάτη και διακομιστή χρησιμοποιούν το libwebp 1.3.2 ή νεότερη έκδοση. Αποκωδικοποιήστε αρχεία WebP σε νημάτια εργασίας (worker threads) απομονωμένα σε sandbox μνήμης.
Ιστορική Αναδρομή & Ορόσημα
Κύρια Πλεονεκτήματα
- Το WebP με απώλειες μπορεί να παράγει μικρότερα αρχεία από το JPEG με παρόμοια οπτική ποιότητα, αν και τα αποτελέσματα διαφέρουν ανάλογα με την εικόνα και τον κωδικοποιητή.
- Το WebP χωρίς απώλειες μπορεί να παράγει μικρότερα αρχεία από το PNG για ορισμένες εικόνες· τα αποτελέσματα διαφέρουν ανάλογα με την εικόνα και τον κωδικοποιητή.
- Μια ενιαία μορφή καλύπτει φωτογραφίες, γραφικά με διαφάνεια και ελαφριά κινούμενα κλιπ.
Τεχνικοί Περιορισμοί & Μειονεκτήματα
- Οι μέγιστες διαστάσεις περιορίζονται στα 16,383 x 16,383 pixel, εμποδίζοντας πανοραμικές εικόνες εξαιρετικά υψηλής ανάλυσης.
- Υποστηρίζει μόνο βάθος χρώματος 8-bit (χωρίς εγγενή υποστήριξη 10-bit ή 12-bit HDR).
- Η κωδικοποίηση σύνθετων εικόνων με απώλειες απαιτεί περισσότερους κύκλους CPU από τους κλασικούς κωδικοποιητές JPEG.
Ενδιαφέροντα Τεχνικά Στοιχεία
- Το WebP βασίζεται στους αλγορίθμους ενδο-πρόβλεψης βασικών πλαισίων του κωδικοποιητή βίντεο ανοιχτού κώδικα VP8 της Google.
- Το κοντέινερ RIFF που χρησιμοποιείται από το WebP είναι ακριβώς η ίδια αρχιτεκτονική κοντέινερ που χρησιμοποιείται από τα κλασικά αρχεία AVI και WAV της Microsoft.
- Το μέγεθος σε σχέση με το GIF εξαρτάται από το περιεχόμενο της κίνησης και τις ρυθμίσεις κωδικοποίησης, οπότε συγκρίνετε τα αποτελέσματα.
Συχνές Τεχνικές Ερωτήσεις
Μπορεί το WebP να αντικαταστήσει πλήρως τόσο το PNG όσο και το JPEG;
Το WebP είναι χρήσιμη επιλογή για πολλές εικόνες ιστού, αλλά δεν αντικαθιστά το PNG ή το JPEG σε κάθε ροή εργασίας. Επιλέξτε μορφή με βάση το περιεχόμενο της εικόνας, την ανάγκη για διαφάνεια και τα προγράμματα περιήγησης ή το λογισμικό του κοινού σας.
Για ποιο λόγο η συμπίεση WebP χωρίς απώλειες είναι πιο αποτελεσματική από το PNG;
Το WebP χωρίς απώλειες χρησιμοποιεί χωρικούς προβλέπτες, χρωματικούς μετασχηματισμούς, προσωρινή μνήμη χρωμάτων και κωδικοποίηση εντροπίας. Το μέγεθος αρχείου σε σύγκριση με το PNG εξαρτάται από το περιεχόμενο της εικόνας και τις ρυθμίσεις του κωδικοποιητή.
Υποστηρίζει το WebP κινούμενα σχέδια;
Το WebP υποστηρίζει κινούμενες εικόνες. Το μέγεθος του αρχείου σε σχέση με το GIF εξαρτάται από το περιεχόμενο της κίνησης και τις ρυθμίσεις κωδικοποίησης, οπότε συγκρίνετε τα αποτελέσματα.
Σχετικά ζεύγη μετατροπής για WebP
Η μετατροπή εικόνων JPEG σε WebP μπορεί να μειώσει το μέγεθος αρχείου με παρόμοια οπτική ποιότητα, αν και τα αποτελέσματα διαφέρουν ανάλογα με το περιεχόμενο της εικόνας και τις ρυθμίσεις κωδικοποίησης.
Η μετατροπή WebP σε JPEG μπορεί να διευκολύνει τη χρήση μιας στατικής εικόνας σε λογισμικό που δεν υποστηρίζει WebP· το JPEG δεν διατηρεί τη διαφάνεια ή την κίνηση.
Η μετατροπή εικόνων PNG σε WebP μπορεί να μειώσει το μέγεθος του αρχείου διατηρώντας τη διαφάνεια· το αποτέλεσμα εξαρτάται από το αν χρησιμοποιείται κωδικοποίηση με ή χωρίς απώλειες και από το περιεχόμενο της εικόνας.
Η μετατροπή WebP σε PNG δημιουργεί στατική εικόνα για λογισμικό που υποστηρίζει PNG· δεν διατηρεί την κίνηση του WebP και δεν μπορεί να αποκαταστήσει λεπτομέρειες που χάθηκαν στην αρχική συμπίεση.
Η μετατροπή κινούμενων αρχείων WebP σε GIF συνδέει τις σύγχρονες μορφές κινούμενης εικόνας ράστερ με παλαιότερα πρότυπα ιστού που απαιτούν ευρεία συμβατότητα.
Δημιουργήστε ένα PDF μίας σελίδας από ένα γραφικό WebP για ένα έγγραφο ή κύκλο έγκρισης. Το πρόγραμμα περιήγησης το σχεδιάζει ξανά ως εικόνα, επομένως τα δεδομένα WebP και η κίνηση δεν διατηρούνται.