Το MKV είναι συντομογραφία του Matroska, μιας ανοιχτής μορφής container που ξεκίνησε το 2002 από τον Steve Lhomme και μια ομάδα συνεισφερόντων, οι οποίοι ήθελαν ένα αρχείο βίντεο που να μην ανήκει σε κανέναν και να μην έχει περιορισμούς. Το όνομα προέρχεται από τις ρωσικές κούκλες-στόχους και περιγράφει καλά την ιδέα: ένα αρχείο Matroska είναι ένα κουτί που μπορεί να κρατήσει οτιδήποτε βάλετε μέσα. Ενώ το MP4 δέχεται ένα προκαθορισμένο σύνολο κωδικοποιητών και δυνατοτήτων, το Matroska γράφτηκε ώστε να δέχεται τα πάντα, γι’ αυτό και έγινε η προτιμώμενη μορφή για αρχεία ταινιών, anime με πολλά σετ υποτίτλων και Blu-ray δίσκους που αντιγράφονται σε σκληρό δίσκο. Η υποκείμενη δομή του έχει έκτοτε δημοσιευτεί ως πρότυπο διαδικτύου και η Google επαναχρησιμοποίησε ένα υποσύνολο της για να δημιουργήσει το WebM.
Πώς δομείται ένα αρχείο MKV
Το Matroska βασίζεται στο EBML, μια δυαδική δομή που λειτουργεί σαν μια συμπαγής εκδοχή του XML: τα πάντα είναι ένα στοιχείο, τα στοιχεία φωλιάζουν το ένα μέσα στο άλλο και το καθένα δηλώνει το δικό του μήκος. Ένα αρχείο αποτελείται από μια κεφαλίδα, έπειτα ένα segment που περιέχει τα tracks, έναν δείκτη για αναζήτηση και το ίδιο το πολυμέσο, χωρισμένο σε clusters από μικρά blocks με χρονικές σφραγίδες.
Το MKV δεν συμπιέζει τίποτα από μόνο του. Η εικόνα μέσα είναι συνήθως H.264, HEVC, AV1 ή VP9· ο ήχος μπορεί να είναι AAC, Opus, FLAC, DTS ή Dolby audio, μεταξύ άλλων. Επειδή το container είναι αδιάφορο για το τι περιέχει, ένα αρχείο μπορεί να μεταφέρει ένα lossless κομμάτι ήχου δίπλα σε ένα συμπιεσμένο, αρκετά dubs, υποχρεωτικά και πλήρη σετ υποτίτλων σε μορφή κειμένου ή bitmap, σημάδια κεφαλαίων για επιλογή σκηνών και συνημμένα: εξώφυλλα ή την ακριβή γραμματοσειρά που χρειάζεται ένα κομμάτι υποτίτλων για να εμφανίζεται σωστά.
Τι μεταδεδομένα περιέχει ένα αρχείο MKV
Το Matroska αποθηκεύει metadata σε δύο σημεία και τα δύο εμφανίζονται σε μια αναφορά.
Το block πληροφοριών segment περιγράφει το ίδιο το αρχείο. Περιέχει τον συνολικό τίτλο, τη διάρκεια, μια ημερομηνία δημιουργίας σε UTC, ένα μοναδικό αναγνωριστικό για το segment και δύο αποκαλυπτικά πεδία: την muxing εφαρμογή και την writing εφαρμογή, που ονομάζουν τη βιβλιοθήκη και το πρόγραμμα που παρήγαγε το αρχείο, συχνά με τους αριθμούς έκδοσής τους. Κάθε track στη συνέχεια έχει τη δική του εγγραφή που δίνει ένα όνομα, έναν κωδικό γλώσσας, τον codec, τις διαστάσεις εμφάνισης και flags που σημειώνουν ένα track ως προεπιλεγμένο ή υποχρεωτικό.
Τα περιγραφικά metadata χρησιμοποιούν το σύστημα tags του Matroska, που είναι πιο δομημένο από τα περισσότερα. Τα tags ομαδοποιούνται ανά στόχο, ώστε ένα tag να μπορεί να εφαρμόζεται σε ολόκληρο το αρχείο, σε ένα track, σε ένα κεφάλαιο ή σε μια συλλογή τύπου άλμπουμ από πάνω του, και κάθε tag είναι ένα όνομα και μια τιμή. Τα συμβατικά ονόματα γράφονται με κεφαλαία και αυτά που θα συναντήσετε πιο συχνά είναι title, artist, date released, genre, comment, description, encoder, part number και total parts. Ένα tag μπορεί επίσης να δηλώνει σε ποια γλώσσα είναι γραμμένο, ώστε το ίδιο πεδίο να μπορεί να εμφανίζεται περισσότερες από μία φορές για διαφορετικά κοινά.
Αυτό που το Matroska συνήθως δεν μεταφέρει είναι metadata κάμερας. Δεν υπάρχει block EXIF, ούτε μοντέλο κάμερας ούτε πεδίο GPS, επειδή τα αρχεία MKV συνήθως δημιουργούνται μετατρέποντας ή αντιγράφοντας κάτι άλλο και όχι κατευθείαν από κάμερα. Τα προσωπικά ίχνη είναι άλλου είδους: η writing εφαρμογή λέει ποιο πρόγραμμα και ποια έκδοση χρησιμοποιήσατε, η ημερομηνία δημιουργίας λέει πότε, ο τίτλος και τα ονόματα των tracks πολύ συχνά διατηρούν το όνομα της αρχικής κυκλοφορίας ή του δίσκου και ένα συνημμένο μπορεί να είναι οποιοδήποτε αρχείο, συμπεριλαμβανομένου κάποιου που κάποιος άφησε μέσα.
Πότε να επιλέγετε MKV
Χρησιμοποιήστε MKV όταν το αρχείο είναι για διατήρηση. Είναι το καλύτερο container εδώ για μια ταινία με πολλές γλώσσες ήχου, κομμάτια υποτίτλων μεταξύ των οποίων θέλετε να εναλλάσσεστε και κεφάλαια και ανέχεται ασυνήθιστους codecs χωρίς πρόβλημα.
Το MP4 είναι η εναλλακτική και κερδίζει σε εμβέλεια: browsers, τηλέφωνα, τηλεοράσεις και set-top boxes αναπαράγουν MP4 χωρίς βοήθεια, ενώ η υποστήριξη MKV εξαρτάται από τη συσκευή και από το να είναι εγκατεστημένοι πολλοί players. Μια λογική συνήθεια είναι να αρχειοθετείτε σε MKV και να μοιράζετε MP4. Η μετακίνηση μεταξύ των δύο είναι συχνά απλώς remux, αντιγραφή των ροών σε διαφορετικό wrapper χωρίς απώλειες, εφόσον οι codecs μέσα είναι από αυτούς που δέχεται το MP4.