Matroska Multimedia Container (.mkv)

Matroska Standaard

Matroska Video (MKV) is een vrij, uitbreidbaar multimediacontainerformaat op basis van een open standaard. Het kan een onbeperkt aantal video-, audio-, afbeeldings- en ondertiteltracks in één bestand bevatten.

Inspecteren en metadata

Besturingssystemen en bestandsanalysators herkennen MKV-bestanden aan de hand van de eerste binaire bytesequentie:

Selecteer of sleep bestanden hierheen

Privé - bestanden verlaten uw apparaat niet

of plak Ctrl+V
Privacygarantie zonder netwerktransmissie: 0 bytes geüpload naar externe servers. Alle verwerking vond lokaal plaats in uw browser-sandbox.

Bestandshandtekening op byteniveau (magic bytes)

Besturingssystemen en bestandsanalysators herkennen MKV-bestanden aan de hand van de eerste binaire bytesequentie:

HEX-HANDTEKENING (OFFSET 0):

1A 45 DF A3

ASCII-WEERGAVE: Eߣ

Standaardisatie: Matroska Open Standard / IETF Working Group Draft

Technische specificaties

ContainerarchitectuurHiërarchische container op basis van de uitbreidbare binaire metataal (EBML)
CompressieCodecagnostisch: bevat AV1, HEVC, H.264, VP9, DTS-HD, TrueHD, FLAC en ongecomprimeerde video
Bytevolgorde (endianness)Big-Endian integer-weergaven met groottedescriptoren van variabele lengte
KleurruimtenHDR10, Dolby Vision, HLG en alle kleurruimten
Kanalen en structuurNagenoeg onbeperkt aantal audiotracks, ondertitelstromen en camerahoeken
Maximale afmetingenOnbeperkt; ondersteunt video in 8K en 16K en met hoge framesnelheden
TransparantieVolledige ondersteuning voor alfakanalen bij VP9- of ProRes-streams
Streaming en progressiefFraming in clusters maakt robuuste livestreaming mogelijk en biedt weerstand tegen beschadiging

Technische vergelijkingsmatrix: MKV versus concurrenten

Technisch kenmerkMKV (Huidig)MP4WEBMAVI
CodecvrijheidOndersteunt vele codecs; spelerondersteuning varieertVoornamelijk beperkt tot H.264/HEVC/AV1 en AACBeperkt tot VP8/VP9/AV1 en Vorbis/OpusAlleen verouderde codecs
Weergavekwaliteit van ondertitelsLettertypebijlagen kunnen de weergave ondersteunen als de speler ze herkent; het uiterlijk hangt af van de ondersteuning door de spelerAlleen eenvoudige tekstopmaakAlleen eenvoudige WebVTT-opmaakExterne ondertitelbestanden vereist
Apple-systeemondersteuningVereist een speler van derden (VLC, IINA, Infuse)Standaard afspelen op sommige Apple-apparaten en in sommige Apple-software; ondersteuning varieert per formaat en versieOndersteund in Safari via moderne frameworksVerouderde QuickTime-plug-in
ContainerarchitectuurExtensible Binary Meta Language (EBML)ISO Base Media File Format (Atoms/Boxes)EBML (Matroska-subverzameling)RIFF-chunkarchitectuur

Veelvoorkomende beschadigingen en gids voor hex-herstel

Het bestand wordt afgespeeld, maar navigeren door de tijdlijn werkt niet of de duur wordt onjuist berekend.

Oorzaak: Beschadigd of ontbrekend element 'Cues' (de Matroska-zoektabel) door een onvolledige download.

Herstel: Bouw de zoektabel direct opnieuw op met 'mkvmerge -o fixed.mkv broken.mkv'.

Beveiligingsanalyse en aanvalsvectoren voor parsers

Voor het verwerken van EBML zijn decodering van gehele getallen met variabele lengte en geneste elementstructuren nodig. Verkeerd gevormde elementlengten kunnen fouten in het geheugenbeheer veroorzaken.

Bekende aanvalsvectoren

  • Heap-bufferoverflow bij het parseren van de grootte van EBML-elementen in mediaspelers.
  • Willekeurige code-uitvoering door verkeerd gevormde ingesloten lettertypebijlagen die ondertitelrenderers verwerken.
  • Denial-of-service via circulaire verwijzingen in Matroska-hoofdstukelementen.

Aanbevolen beveiligingspraktijken: Controleer de typen ingesloten bijlagen en verwerk EBML-structuren met geïsoleerde, geheugenveilige parserbibliotheken.

Historische oorsprong en mijlpalen

2023De IETF Cellar Working Group werkt aan Matroska-specificaties met het oog op een formele RFC-standaard.
2010Google kiest Matroska EBML als basis voor het open WebM-webvideoformaat.
2002Steve Lhomme kondigt het Matroska-project aan als een flexibele aftakking van de MCF-container.

Belangrijkste voordelen

  • Matroska ondersteunt vele video-, audio- en ondertitelcodecs, hoewel de compatibiliteit afhangt van de speler en het apparaat.
  • Volledige ondersteuning voor geavanceerde, opgemaakte ondertitels (ASS/SSA), meertalige audiotracks en hoofdstukmenu's.
  • Hoge veerkracht tegen beschadiging: beschadigde clusters verhinderen het afspelen van omliggende video niet.

Technische beperkingen

  • Geen ingebouwde ondersteuning voor afspelen in de standaardspeler Apple QuickTime en op iOS-apparaten.
  • Wordt niet standaard ondersteund door alle commerciële smart-tv's en hardwarespelers.
  • Kan niet rechtstreeks worden ingesloten in standaard webbrowsers via HTML5 <video> zonder transcodering.

Interessante technische weetjes

  • De naam 'Matroska' is afgeleid van het Russische woord 'Matryoshka', dat verwijst naar in elkaar passende houten matroesjkapoppen.
  • De bestandshandtekening (magic bytes) '1A 45 DF A3' vertegenwoordigt de universele EBML-header-ID die wordt gebruikt door zowel MKV als WebM.
  • MKV-bestanden kunnen volledige TrueType- en OpenType-lettertypebestanden direct in de container insluiten om anime-ondertitels weer te geven.

Veelgestelde technische vragen

Waarom kan mijn tv of telefoon geen MKV-bestanden afspelen?

Sommige apparaten ondersteunen MKV of een codec in het bestand niet. Controleer vóór het converteren of de container en codec door de doelspeler worden ondersteund. Remuxen naar MP4 helpt alleen als de streams compatibel zijn.

Kan ik MKV naar MP4 converteren zonder videokwaliteit te verliezen?

Als MP4 de video- en audiocodecs ondersteunt, kan remuxen de gecodeerde streams behouden zonder hercodering. Anders kan voor de conversie transcodering nodig zijn, wat de kwaliteit kan veranderen.

Wat is de relatie tussen MKV en WebM?

WebM is gebaseerd op het Matroska/EBML-containermodel en gebruikt een beperkt profiel met gespecificeerde codecs, waaronder VP8, VP9, AV1, Vorbis en Opus.