Η ροή σε 4K είναι ο νέος κανόνας, αλλά με πληροφορίες για περισσότερα από 8,2 εκατομμύρια pixel που μεταδίδονται κάθε 16 χιλιοστά του δευτερολέπτου—η αποθήκευση και η μετάδοση βίντεο 4K στο διαδίκτυο δεν είναι εύκολη δουλειά.
Μια ταινία διάρκειας δύο ωρών θα είχε πάνω από 1,7 Terabyte αποθήκευσης όταν δεν ήταν συμπιεσμένη. Λοιπόν, πώς καταφέρνουν οι κολοσσοί ροής όπως το YouTube και το Netflix να αποθηκεύουν και να μεταδίδουν βίντεο που καταλαμβάνουν τόσο πολύ χώρο;
Λοιπόν, δεν το κάνουν επειδή χρησιμοποιούν κωδικοποιητές βίντεο για να μειώσουν το μέγεθος των ταινιών, αλλά τι είναι ο κωδικοποιητής βίντεο και ποιος είναι ο καλύτερος;
Τι είναι ο κωδικοποιητής βίντεο;
Πριν βουτήξετε βαθιά στην πολυπλοκότητα των κωδικοποιητών βίντεο, είναι ζωτικής σημασίας να κατανοήσετε πώς δημιουργείται ένα βίντεο. Με απλά λόγια, το βίντεο δεν είναι παρά ένα σύνολο στατικών εικόνων που αντικαθιστούν γρήγορα η μία την άλλη.
Λόγω αυτής της υψηλής μεταβαλλόμενης ταχύτητας, ο ανθρώπινος εγκέφαλος πιστεύει ότι οι εικόνες κινούνται, δημιουργώντας την ψευδαίσθηση της παρακολούθησης ενός βίντεο. Επομένως, όταν παρακολουθείτε ένα βίντεο σε 4K, κοιτάτε απλώς ένα σύνολο εικόνων με ανάλυση 2160x3840. Αυτή η υψηλή ανάλυση εικόνων επιτρέπει σε ένα βίντεο που έχει τραβηχτεί σε 4K να προσφέρει μια εξαιρετική εμπειρία βίντεο. Τούτου λεχθέντος, αυτή η υψηλή ανάλυση εικόνων αυξάνει το μέγεθος του βίντεο, καθιστώντας αδύνατη τη ροή μέσω καναλιών με περιορισμένο εύρος ζώνης, όπως το διαδίκτυο.
Για να λύσουμε αυτό το πρόβλημα, έχουμε κωδικοποιητές βίντεο. Συντομογραφία για κωδικοποιητής/αποκωδικοποιητής ή συμπίεση/αποσυμπίεση, ένας κωδικοποιητής βίντεο συμπιέζει τη ροή των εικόνων σε κομμάτια δεδομένων. Αυτή η συμπίεση μπορεί είτε να μειώσει την ποιότητα του βίντεο είτε να μην έχει καμία επίδραση σε αυτό με βάση τους αλγόριθμους συμπίεσης που χρησιμοποιούνται.
Όπως υποδηλώνει το όνομα, το bit συμπίεσης σε έναν κωδικοποιητή μειώνει το μέγεθος κάθε εικόνας. Για να κάνει το ίδιο, ο αλγόριθμος συμπίεσης εκμεταλλεύεται τις αποχρώσεις του ανθρώπινου ματιού, εμποδίζοντας τους ανθρώπους να γνωρίζουν ότι τα βίντεο που παρακολουθούν είναι συμπιεσμένα.
Η αποσυμπίεση, αντίθετα, λειτουργεί αντίθετα και αποδίδει το βίντεο χρησιμοποιώντας τις συμπιεσμένες πληροφορίες.
Παρόλο που οι κωδικοποιητές κάνουν εξαιρετική δουλειά όσον αφορά τη συμπίεση πληροφοριών, η εκτέλεση του ίδιου μπορεί να επιβαρύνει την CPU σας. Λόγω αυτού, είναι φυσιολογικό να βλέπετε διακυμάνσεις στην απόδοση του συστήματος όταν εκτελείτε αλγόριθμους συμπίεσης βίντεο στο σύστημά σας.
Για την επίλυση αυτού του προβλήματος, οι CPU και οι GPU διαθέτουν ειδικό υλικό που μπορεί να εκτελέσει αυτούς τους αλγόριθμους συμπίεσης. Επιτρέποντας στην CPU να εκτελεί τις εργασίες που έχει στη διάθεσή του ενώ το αποκλειστικό υλικό επεξεργάζεται τους κωδικοποιητές βίντεο, βελτιώνοντας την απόδοση.
Πώς λειτουργεί ένας κωδικοποιητής βίντεο;
Τώρα που έχουμε μια βασική κατανόηση του τι κάνει ένας κωδικοποιητής βίντεο, μπορούμε να δούμε πώς λειτουργεί ένας κωδικοποιητής.
Υποδειγματοληψία Chroma
Όπως εξηγήθηκε προηγουμένως, τα βίντεο αποτελούνται από εικόνες και η υποδειγματοληψία χρώματος μειώνει τις πληροφορίες σε κάθε εικόνα. Για να γίνει αυτό, μειώνει τις πληροφορίες χρώματος που περιέχονται σε κάθε εικόνα, αλλά πώς ανιχνεύεται αυτή η μείωση στις πληροφορίες χρώματος από το ανθρώπινο μάτι;
Λοιπόν, βλέπετε, τα ανθρώπινα μάτια είναι εξαιρετικά στο να ανιχνεύουν αλλαγές στη φωτεινότητα, αλλά δεν μπορούμε να πούμε το ίδιο για τα χρώματα. Αυτό συμβαίνει επειδή το ανθρώπινο μάτι έχει περισσότερες ράβδους (κύτταρα φωτοϋποδοχέων που είναι υπεύθυνα για την ανίχνευση των αλλαγών στη φωτεινότητα) σε σύγκριση με τους κώνους (κύτταρα φωτοϋποδοχέων που είναι υπεύθυνα για τη διαφοροποίηση των χρωμάτων). Η διαφορά στις ράβδους και τους κώνους εμποδίζει τα μάτια να ανιχνεύουν αλλαγές χρώματος όταν συγκρίνουν συμπιεσμένες και ασυμπίεστες εικόνες.
Για την εκτέλεση υποδειγματοληψίας χρώματος, ο αλγόριθμος συμπίεσης βίντεο μετατρέπει τις πληροφορίες εικονοστοιχείων σε RGB σε δεδομένα φωτεινότητας και χρώματος. Μετά από αυτό, ο αλγόριθμος μειώνει την ποσότητα του χρώματος στην εικόνα με βάση τα επίπεδα συμπίεσης.
Αφαίρεση περιττών πληροφοριών πλαισίου
Τα βίντεο αποτελούνται από πολλά καρέ εικόνων και στις περισσότερες περιπτώσεις, όλα αυτά τα καρέ περιέχουν τις ίδιες πληροφορίες. Για παράδειγμα, φανταστείτε ένα βίντεο με ένα άτομο να μιλάει σε σταθερό φόντο. Σε μια τέτοια περίπτωση, όλα τα καρέ του βίντεο έχουν παρόμοια σύνθεση. Επομένως δεν χρειάζονται όλες οι εικόνες για την απόδοση του βίντεο. Το μόνο που χρειαζόμαστε είναι μια βασική εικόνα που περιέχει όλες τις πληροφορίες και τα δεδομένα που σχετίζονται με την αλλαγή κατά τη μετακίνηση από το ένα πλαίσιο στο άλλο.
Ως εκ τούτου, για να μειωθεί το μέγεθος του βίντεο, ο αλγόριθμος συμπίεσης διαιρεί τα καρέ βίντεο σε καρέ I και P (Προβλεπόμενα καρέ). Εδώ τα πλαίσια I είναι η βασική αλήθεια και χρησιμοποιούνται για τη δημιουργία πλαισίων P. Στη συνέχεια, τα πλαίσια P αποδίδονται χρησιμοποιώντας τις πληροφορίες στα πλαίσια I και τις πληροφορίες αλλαγής για το συγκεκριμένο πλαίσιο. Χρησιμοποιώντας αυτήν τη μεθοδολογία, ένα βίντεο αναλύεται σε ένα σύνολο από I Frames που παρεμβάλλονται σε καρέ P συμπιέζοντας περαιτέρω το βίντεο.
Συμπίεση κίνησης
Τώρα που χωρίσαμε το βίντεο σε καρέ I και P, πρέπει να δούμε τη συμπίεση κίνησης. Ένα μέρος του αλγορίθμου συμπίεσης βίντεο που βοηθά στη δημιουργία των καρέ P χρησιμοποιώντας τα καρέ I. Για να γίνει αυτό, ο αλγόριθμος συμπίεσης σπάει το πλαίσιο I σε μπλοκ γνωστά ως μακρο-μπλοκ. Σε αυτά τα μπλοκ δίνονται στη συνέχεια διανύσματα κίνησης που καθορίζουν την κατεύθυνση με την οποία κινούνται αυτά τα μπλοκ κατά τη μετάβαση από το ένα πλαίσιο στο άλλο.
Αυτές οι πληροφορίες κίνησης για κάθε μπλοκ βοηθούν τον αλγόριθμο συμπίεσης βίντεο να προβλέψει τη θέση κάθε μπλοκ σε ένα επερχόμενο καρέ.
Αφαίρεση δεδομένων εικόνας υψηλής συχνότητας
Ακριβώς όπως οι αλλαγές στα δεδομένα χρώματος, το ανθρώπινο μάτι δεν μπορεί να ανιχνεύσει ανεπαίσθητες αλλαγές σε στοιχεία υψηλής συχνότητας σε μια εικόνα, αλλά τι είναι τα στοιχεία υψηλής συχνότητας; Λοιπόν, βλέπετε, η εικόνα που αποδίδεται στην οθόνη σας περιλαμβάνει πολλά pixel και οι τιμές αυτών των pixel αλλάζουν με βάση την εικόνα που εμφανίζεται.
Σε ορισμένες περιοχές της εικόνας, οι τιμές των εικονοστοιχείων αλλάζουν σταδιακά και τέτοιες περιοχές λέγεται ότι έχουν χαμηλή συχνότητα. Από την άλλη πλευρά, εάν υπάρχει ταχεία αλλαγή στα δεδομένα pixel, η περιοχή κατηγοριοποιείται ως με δεδομένα υψηλής συχνότητας. Οι αλγόριθμοι συμπίεσης βίντεο χρησιμοποιούν τον μετασχηματισμό διακριτού συνημιτόνου για να μειώσουν το στοιχείο υψηλής συχνότητας.
Εδώ είναι πώς λειτουργεί. Αρχικά, ο αλγόριθμος DCT εκτελείται σε κάθε μπλοκ μακροεντολών και στη συνέχεια ανιχνεύει τις περιοχές όπου η αλλαγή στην ένταση των εικονοστοιχείων είναι πολύ γρήγορη. Στη συνέχεια, αφαιρεί αυτά τα σημεία δεδομένων από την εικόνα—μειώνοντας το μέγεθος του βίντεο.
Κωδικοποίηση
Τώρα που έχουν αφαιρεθεί όλες οι περιττές πληροφορίες στο βίντεο, μπορούμε να αποθηκεύσουμε τα υπόλοιπα bits δεδομένων. Για να γίνει αυτό, ο αλγόριθμος συμπίεσης βίντεο χρησιμοποιεί ένα σχήμα κωδικοποίησης όπως η κωδικοποίηση Huffman, το οποίο συνδέει όλα τα bit δεδομένων σε ένα καρέ με τον αριθμό των φορών που εμφανίζονται στο βίντεο και στη συνέχεια τα συνδέει με τρόπο που μοιάζει με δέντρο. Αυτά τα κωδικοποιημένα δεδομένα αποθηκεύονται σε ένα σύστημα, επιτρέποντάς του να αποδίδει εύκολα ένα βίντεο.
Διαφορετικοί κωδικοποιητές βίντεο χρησιμοποιούν διαφορετικές τεχνικές για τη συμπίεση βίντεο, αλλά σε πολύ βασικό επίπεδο, χρησιμοποιούν τις πέντε βασικές μεθόδους που ορίζονται παραπάνω για να μειώσουν το μέγεθος των βίντεο.
AV1 vs. HEVC vs. VP9: Ποιος κωδικοποιητής είναι καλύτερος;
Τώρα που καταλαβαίνουμε πώς λειτουργούν οι κωδικοποιητές, μπορούμε να προσδιορίσουμε ποιο είναι το καλύτερο από τα AV1, HEVC και VP9.
Συμπιεστότητα και Ποιότητα
Εάν έχετε ένα βίντεο 4K που καταλαμβάνει πολύ χώρο στο σύστημά σας και δεν μπορείτε να το ανεβάσετε στο αγαπημένη πλατφόρμα ροής, ίσως ψάχνετε για έναν κωδικοποιητή βίντεο που προσφέρει την καλύτερη συμπίεση αναλογία. Ωστόσο, πρέπει επίσης να λάβετε υπόψη ότι η ποιότητα που παρέχει μειώνεται καθώς συνεχίζετε να συμπιέζετε το βίντεο. Επομένως, ενώ επιλέγετε έναν αλγόριθμο συμπίεσης, είναι σημαντικό να εξετάζετε την ποιότητα που παρέχει σε έναν συγκεκριμένο ρυθμό μετάδοσης bit, αλλά ποιος είναι ο ρυθμός μετάδοσης bit ενός βίντεο;
Με απλά λόγια, ο ρυθμός μετάδοσης bit ενός βίντεο ορίζεται ως ο αριθμός των bit που χρειάζεται το βίντεο για αναπαραγωγή για ένα δευτερόλεπτο. Για παράδειγμα, ένα ασυμπίεστο βίντεο 4K 24 bit που εκτελείται σε 60 καρέ έχει ρυθμό μετάδοσης bit 11,9 Gb/s. Επομένως, εάν κάνετε ροή ενός ασυμπίεστου βίντεο 4K στο Διαδίκτυο, το Wi-Fi σας πρέπει να παρέχει 11,9 gigabit δεδομένων κάθε δευτερόλεπτο—εξαντλώντας το μηνιαίο όριο δεδομένων σας σε λίγα λεπτά.
Η χρήση ενός αλγόριθμου συμπίεσης, αντίθετα, μειώνει τον ρυθμό μετάδοσης bit σε πολύ μικρό ποσοστό βάσει του ρυθμού bit της επιλογής σας χωρίς να υποβαθμίζει την ποιότητα.
Όσον αφορά τους αριθμούς συμπιεστότητας/ποιότητας, το AV1 οδηγεί το πακέτο και προσφέρει 28,1 τοις εκατό καλύτερα συμπίεση σε σύγκριση με το H.265 και εξοικονόμηση 27,3 τοις εκατό σε σύγκριση με το VP9 ενώ παρέχει παρόμοια ποιότητα.
Επομένως, εάν αναζητάτε την καλύτερη συμπίεση χωρίς υποβάθμιση της ποιότητας, το AV1 είναι ο λόγος συμπίεσης για εσάς. Λόγω της μεγάλης αναλογίας συμπίεσης προς ποιότητα του κωδικοποιητή AV1, χρησιμοποιείται από την Google στο εφαρμογή τηλεδιάσκεψης Google Duo και από Netflix κατά τη μετάδοση βίντεο σε σύνδεση δεδομένων χαμηλού εύρους ζώνης.
Συμβατότητα
Όπως εξηγήθηκε προηγουμένως, ένας αλγόριθμος συμπίεσης βίντεο κωδικοποιεί ένα βίντεο μόλις συμπιεστεί. Τώρα για να παίξετε αυτό το βίντεο, η συσκευή σας πρέπει να αποκωδικοποιήσει το ίδιο. Επομένως, εάν η συσκευή σας δεν διαθέτει την υποστήριξη υλικού/λογισμικού για την αποσυμπίεση ενός βίντεο, δεν θα μπορεί να το εκτελέσει.
Ως εκ τούτου, είναι σημαντικό να κατανοήσουμε την πτυχή της συμβατότητας ενός αλγορίθμου συμπίεσης, διότι ποιος είναι ο λόγος δημιουργίας και συμπίεσης περιεχομένου που δεν μπορεί να εκτελεστεί σε πολλές συσκευές;
Έτσι, εάν η συμβατότητα είναι κάτι που αναζητάτε, τότε το VP9 θα πρέπει να είναι ο κωδικοποιητής για εσάς υποστηρίζεται σε πάνω από δύο δισεκατομμύρια τελικά σημεία και μπορεί να εκτελεστεί σε κάθε πρόγραμμα περιήγησης, smartphone και smart ΤΗΛΕΟΡΑΣΗ.
Δεν μπορούμε να πούμε το ίδιο για το AV1, καθώς χρησιμοποιεί νεότερους, πιο σύνθετους αλγόριθμους για να μειώσει το μέγεθος αρχείου ενός βίντεο και δεν μπορεί να αναπαραχθεί σε παλαιότερες συσκευές. Όσον αφορά την υποστήριξη του προγράμματος περιήγησης, το Safari δεν μπορεί να παίξει AV1, αλλά προγράμματα περιήγησης όπως ο Firefox και το Chrome μπορούν να αναπαράγουν βίντεο AV1 χωρίς προβλήματα.
Όσον αφορά την υποστήριξη υλικού, νέα SoC και GPU όπως το Snapdragon 8 Gen 2, το Samsung Exynos 2200, το MediaTek Dimensity 1000 5G, Το Google Tensor G2, η σειρά RTX 4000 της Nvidia και οι GPU Intel Xe και Arc υποστηρίζουν ταχεία αποκωδικοποίηση υλικού για τον κωδικοποιητή AV1. Επομένως, εάν διαθέτετε συσκευές που τροφοδοτούνται από αυτά τα chipset, μπορείτε να απολαύσετε περιεχόμενο ροής συμπιεσμένο χρησιμοποιώντας τους κωδικοποιητές AV1 χωρίς να εξαντλήσετε την ισχύ των CPU/GPU σας.
Όσον αφορά τον κωδικοποιητή H.265, τα πιο δημοφιλή προγράμματα περιήγησης όπως το Safari, το Firefox και το Google Chrome μπορούν να εκτελούν βίντεο κωδικοποιημένα χρησιμοποιώντας τον αλγόριθμο συμπίεσης χωρίς προβλήματα. Τούτου λεχθέντος, σε σύγκριση με το AV1 και το VP9, το H.265 δεν είναι ανοιχτού κώδικα και πρέπει να αποκτηθούν άδειες για τη χρήση του κωδικοποιητή H.265. Για αυτόν τον λόγο, εφαρμογές όπως το πρόγραμμα αναπαραγωγής βίντεο Movies & TV της Microsoft, που συνοδεύουν το λειτουργικό σύστημα, δεν μπορούν να εκτελούν βίντεο κωδικοποιημένα με χρήση H.265 από προεπιλογή. Αντίθετα, οι χρήστες πρέπει να εγκαταστήσουν πρόσθετα πρόσθετα από το κατάστημα των Windows για την εκτέλεση τέτοιων βίντεο.
Ταχύτητα κωδικοποίησης
Οι κωδικοποιητές βίντεο μειώνουν σημαντικά το μέγεθος ενός βίντεο, αλλά για να μειωθεί το μέγεθος ενός βίντεο, το ασυμπίεστο βίντεο πρέπει να υποβληθεί σε επεξεργασία με χρήση λογισμικού, κάτι που απαιτεί χρόνο. Επομένως, εάν θέλετε να μειώσετε το μέγεθος ενός βίντεο, πρέπει να εξετάσετε τον χρόνο που χρειάζεται για να συμπιεστεί το βίντεο χρησιμοποιώντας έναν αλγόριθμο συμπίεσης.
Όσον αφορά την αποτελεσματικότητα της κωδικοποίησης, το VP9 οδηγεί το πακέτο και ο χρόνος κωδικοποίησης για τη συμπίεση βίντεο είναι πολύ χαμηλότερος από το H.265 και το AV1. Το AV1, από την άλλη πλευρά, είναι το πιο αργό σε χρόνο κωδικοποίησης και μπορεί να πάρει τρεις φορές περισσότερο χρόνο για την κωδικοποίηση ενός βίντεο σε σύγκριση με το H.265.
Ποιον Codec να επιλέξετε;
Όταν πρόκειται για κωδικοποιητές βίντεο, η εύρεση του τέλειου κωδικοποιητή είναι πολύ υποκειμενική, καθώς κάθε κωδικοποιητής προσφέρει διαφορετικά χαρακτηριστικά.
Αν ψάχνετε για την καλύτερη ποιότητα βίντεο, προτιμήστε το AV1. Από την άλλη πλευρά, αν ψάχνετε για τον πιο συμβατό κωδικοποιητή βίντεο, το VP9 θα ήταν το καλύτερο για εσάς.
Τέλος, ο κωδικοποιητής H.265 ταιριάζει πολύ αν χρειάζεστε καλή ποιότητα και συμπίεση χωρίς γενικά έξοδα κωδικοποίησης.