Vidéo Matroska (.mkv)
Norme StandardMatroska Video (MKV) est un format de conteneur multimédia gratuit, extensible et ouvert, capable de contenir un nombre illimité de pistes vidéo, audio, d'images et de sous-titres dans un seul fichier.
Inspection et métadonnées
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers MKV en inspectant leur séquence initiale d'octets binaires :
Signature d'en-tête au niveau des octets (octets magiques)
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers MKV en inspectant leur séquence initiale d'octets binaires :
SIGNATURE HEXADÉCIMALE (DÉCALAGE 0) :
1A 45 DF A3REPRÉSENTATION ASCII : Eߣ
Normalisation : Norme ouverte Matroska / Projet de groupe de travail de l’IETF
Spécifications techniques
| Architecture de conteneur | Conteneur hiérarchique fondé sur l’EBML (Extensible Binary Meta Language) |
| Compression | Indépendant des codecs : prend en charge AV1, HEVC, H.264, VP9, DTS-HD, TrueHD, FLAC et la vidéo non compressée |
| Ordre des octets | Représentations d’entiers gros-boutistes avec des descripteurs de taille à longueur variable |
| Espaces colorimétriques | HDR10, Dolby Vision, HLG et tous les espaces colorimétriques |
| Canaux et structure | Nombre pratiquement illimité de pistes audio, de flux de sous-titres et d’angles de caméra |
| Dimensions maximales | Illimité ; prend en charge les vidéos 8K, 16K et à haute fréquence d'images |
| Transparence | Prise en charge complète du canal alpha lors de l'utilisation de flux VP9 ou ProRes |
| Prise en charge du traitement en continu | Le découpage en blocs par clusters permet une diffusion en direct fiable et une meilleure résistance à la corruption. |
Matrice de comparaison technique : MKV face aux concurrents
| Attribut technique | MKV (Actuel) | MP4 | WEBM | AVI |
|---|---|---|---|---|
| Liberté de codec | Universel : accepte n'importe quel codec vidéo, audio ou de sous-titres | Limité principalement à H.264/HEVC/AV1 et AAC | Limité à VP8/VP9/AV1 et Vorbis/Opus | Codecs hérités uniquement |
| Fidélité des sous-titres | Les polices jointes peuvent faciliter le rendu si le lecteur les prend en charge ; l’apparence dépend du logiciel. | Style de texte de base uniquement | Style WebVTT de base uniquement | Fichiers de sous-titres externes requis |
| Prise en charge native par Apple | Nécessite un lecteur tiers (VLC, IINA, Infuse) | 100 % pris en charge nativement sur tous les appareils Apple | Pris en charge dans Safari via des frameworks modernes | Plugin QuickTime obsolète |
| Architecture du conteneur | Langage de métadonnées binaires extensible (EBML) | Format de fichier multimédia de base ISO (boîtes/atomes) | EBML (sous-ensemble Matroska) | Architecture de blocs RIFF |
Modes de corruption courants et guide de restauration hexadécimale
Le fichier est lu, mais le déplacement dans la chronologie ne fonctionne pas ou la durée est mal calculée.
Cause initiale: Élément 'Cues' endommagé ou manquant (la table de recherche Matroska) en raison d'un téléchargement incomplet.
Récupération: Reconstruisez instantanément la table d’indexation avec la commande mkvmerge -o fixed.mkv broken.mkv.
Analyse de sécurité et vecteurs d'attaque de l'analyseur
L'analyse syntaxique EBML nécessite un décodage d'entiers à longueur variable et des arborescences d'éléments imbriqués. Des longueurs d'éléments malformées peuvent déclencher des failles de gestion de la mémoire.
Vecteurs d’attaque connus
- Débordement de tampon dans le tas lors de l’analyse de la taille des éléments EBML dans les lecteurs multimédias.
- Exécution de code arbitraire via la manipulation de polices intégrées mal formées dans les moteurs de rendu de sous-titres.
- Déni de service via des boucles de référence circulaire dans les éléments de chapitre Matroska.
Bonnes pratiques de défense: Filtrez les types de pièces jointes intégrées et analysez les structures EBML à l'aide de bibliothèques d'analyse isolées et sûres du point de vue de la mémoire.
Origines historiques et jalons
Principaux avantages
- Le conteneur le plus polyvalent qui soit : prend en charge pratiquement tous les codecs vidéo, audio et de sous-titres.
- Prise en charge complète des sous-titres stylisés avancés (ASS/SSA), des pistes audio multilingues et des menus de chapitres.
- Forte résistance à la corruption : les clusters endommagés n'empêchent pas la lecture de la vidéo environnante.
Limites techniques
- Absence de lecture native par défaut sur le lecteur Apple QuickTime et les appareils iOS.
- N’est pas pris en charge nativement par tous les hubs multimédias pour téléviseurs connectés ni par les lecteurs matériels commerciaux.
- Ne peut pas être intégré directement dans les navigateurs web standard via la balise HTML5 <video> sans transcodage.
Faits intéressants
- Le nom « Matroska » vient du mot russe « Matryoshka », qui désigne les poupées russes gigognes en bois.
- Les octets magiques « 1A 45 DF A3 » correspondent à l’identifiant universel d’en-tête EBML utilisé par MKV et WebM.
- Les fichiers MKV peuvent intégrer des fichiers de police TrueType et OpenType entiers directement dans le conteneur pour afficher les sous-titres d'anime.
Foire aux questions techniques
Pourquoi mon téléviseur ou mon téléphone ne parvient-il pas à lire les fichiers MKV ?
Bien que le MKV soit populaire sur les PC, certains téléviseurs et appareils iOS ne prennent pas en charge le conteneur ou le codec audio haut de gamme qu’il contient (comme le DTS). Convertir le MKV en MP4 résout immédiatement les problèmes de compatibilité.
Puis-je convertir un MKV en MP4 sans perdre en qualité vidéo ?
Oui ! Si la vidéo contenue dans votre MKV est au format H.264 ou HEVC, File2File.app réemballe simplement les flux vidéo dans un conteneur MP4 en quelques secondes sans réencodage, ce qui préserve 100 % de la qualité d'origine.
Quelle est la relation entre MKV et WebM ?
WebM repose sur le modèle de conteneur Matroska/EBML et utilise un profil restreint de codecs définis.