DE FR IT

MKV

Allgemeine Informationen

Titel Matroska Multimedia Container
Kategorie Containerformate
Abkürzung MKV (Matroska Video), MKA (Matroska Audio), MKS (Matroska Subtitles), MK3D (Matroska 3D-Video)
Dateiendung .mkv, .mka, .mks, .mk3d
Mime Type video/matroska, audio/matroska, video/matroska-3d
Pronom PUID fmt/569
Version Aktuelle Version: 4 (2022),
vorhergehende Versionen: 1 (2002)

    

Beschreibung

Der Matroska-Mediencontainer ist ein offener, unter GNU LGPL entwickelter Standard basierend auf EBML, einem binären XML-Format. Damit ist eine Weiterentwicklung bei gleichzeitiger Rückwärtskompatibilität gewährleistet. Seit 2018 wird die Formatspezifikation via IETF (Internet Engineering Task Force) publiziert. Das Format unterstützt eine grosse Menge von Audio- und Videocodecs, insbesondere FFV1.
 

Technischer Hintergrund

Matroska-Container sind enorm vielseitig und können neben Audio- und Video- auch Textdaten (z.B. Untertitel) sowie beliebige andere Dateiformate einbetten. Er kann sowohl mit einer konstanten wie einer variablen Bildrate des Videostreams umgehen (variable framerate encoding, VFR). Audio- und Videospur können bei der Erstellung aber auch nachträglich noch durch Anpassen der Metainformationen verschoben bzw. miteinander abgestimmt werden. [1]

Unterstützt werden folgende durch die KOST empfohlene Codecs:
Videocodecs:

  • FFV1 (FFmpeg Videocodec 1)
  • HEVC (High Efficiency Video Coding) / H.265 / MPEG-H Teil 2
  • AVC (Advanced Video Coding) / H.264 / MPEG-4 Teil 10
  • AV1 (AOMedia Video 1)


Audiocodecs:

  • FLAC (Free Lossless Audio Codec)
  • AAC (Advanced Audio Coding)
  • MP3 (MPEG Audio Layer III)

 

Bewertung

Offenheit: 4
Seit 2018 wird die Formatspezifikation von MKV über IETF in Form von Internet Drafts und auf der Matroska-Webseite veröffentlicht. Auf der Webseite gibt es ausserdem eine Spezifikation von 2009 von einer früheren Version.

Lizenzfreiheit: 4
DasFormat ist in der Public Domain und explizit lizenzfrei. Verschiedene Komponenten des Formats wurden unter LGPL, LibMatroska, BSD und Core C lizenziert. Je nach verwendeten Video- und Audiocodecs können Lizenzen anfallen.

Verbreitung: 3
MKV ist in der Öffentlichkeit zwar weniger verbreitet als andere Multimedia-Container MP4 oder MOV), setzt sich in der Archivwelt aber immer mehr durch. Es gibt seit Mitte der 2010er Jahre einzelne Pilotprojekte und verschiedene grosse AV-Repositories verwenden MKV mit FFV1 als Archivformat für Video. [2]

Funktionalitaet: 4
Das Format deckt über 80% für die Archivierung erforderlichen signifikanten Eigenschaften seiner Kategorie ab und bewahrt diese.

Implementierung: 4
Es existieren seit der Einführung des Formats offene Player für alle Betriebssysteme. Matroska wird seit 2014 von Windows-Betriebssystemen unterstützt und bildet die Grundlage für den WebM-Formatcontainer von Google.

Speicherdichte: 3
MKV unterstützt sowohl verlustfreie wie verlustbehaftete Komprimierung und auch VFR (variable framerate encoding). In Verbindung mit FFV1 ist die Speicherdichte jedoch gering, deshalb eignet sich das Format besonders als Archivmasterformat.

Verifizierbarkeit: 4
Durch die EBML-Struktur kann MKV einfach verifiziert werden. Es existiert zudem unter anderem ein offener MKValidator.

Best Practice: 3
Viele Archivinstitutionen bezeichnen MKV in Kombination mit FFV1 inzwischen als bevorzugtes Archivmasterformat.

Perspektive: 4
Die Perspektive für das Format ist sehr gut, da es für den Zweck der Archivierung entstanden ist (Archivmasterformat). Es wird mittlerweile auch von grösseren Software-Herstellern unterstützt oder implementiert. Als Distributionsformat findet es noch keine weite Verbreitung.

Formatklasse: B
Es handelt sich um ein speziell für die Archivierung entwickeltes Format, das aktuell verwendet wird und immer breitere Unterstützung findet.

 

Analyse

MKV wurde zusammen mit dem Videocodec FFV1 speziell für die Archivierung entwickelt. Gemäss seiner EBML-Struktur beginnt ein Matroska-Container mit einem Header und enthält anschliessend ein Root Element, das bei MKV als Segment definiert wird. Matroska beschreibt 8 Top-Level Elements, die innerhalb eines Segments vorkommen können. Matroska hat folgende Einschränkungen in der EBML-Spezifikation: [3]

  • The EBML Header’s docType must be ‘matroska’.
  • The EBML Header’s EBMLMaxIDLength must be 4.
  • The EBML Header’s EBMLMaxSizeLength must be between 1 and 8 (inclusive).


Aufbau einer einfachen Matroska-Datei mit Header und Segment inklusive den Top-Level Elements:

Aufbau Matroschka Container

Abbildung 1: Schematischer Aufbau eines Matroskacontainers https://www.matroska.org/technical/diagram.html



SeekHead (MetaSeek): enthält einen Index aller Top-Level Elements. Dies ist nötig, da die Anordnung der Top-Level Elements innerhalb der Datei flexibel ist.
Info: enthält Metainformationen, um das ganze Segment zu identifizieren (z.B. Titel, Datum, UID des Segments und der darunterliegenden Elemente).
Tracks: definiert die technischen Details für jede vorhandene Spur und kann Name, Nummer, UID, Sprache und Typ der einzelnen Spur festhalten. Der jeweilige Codec bedingt, welche technischen Daten beschrieben werden.
Chapters: beschreibt alle vorhandenen Kapitel.
Cluster: enthalten die Inhalte jeder Spur, z.B. die Bilder (frames) eines Videos, die in SimpleBlock oder BlockGroup Elementen gebündelt werden. Jedes Cluster Element muss genau ein Timestamp Element enthalten.
Cues: wird für die Suche benötigt, wenn eine Datei abgespielt wird. Es stellt einen Zeit-Index für einzelne Spuren zur Verfügung.
Attachments: dient dazu, Dateien wie z.B. Bilder, Text, Websites etc. zur Matroska-Datei hinzuzufügen.
Tags: enthält Metadaten, die das Segment und seine Tracks, Chapters und Attachments beschreiben (verknüpft werden sie über die UID).

 

Fazit

Durch die breite Unterstützung von Codecs sowie der hohen Funktionalität und offenen Spezifikation ist MKV ein geeignetes Containerformat für die Archivierung von Videodaten. Insbesondere gepaart mit dem Videocodec FFV1 und Audiocodec FLAC wird das Format inzwischen von zahlreichen Archiven als bevorzugtes Archivmasterformat für Video bezeichnet. Es kann auch für verlustbehaftete Codecs im Sinne eines Distributionsformats verwendet werden, wenn die Codecs bereits in komprimierter Form vorliegen.


Referenzen

Matroska Spezifikation:
https://www.matroska.org/index.html
https://datatracker.ietf.org/doc/draft-ietf-cellar-matroska/

  

Literatur

[1] Wikipedia, «Matroska», 21.09.2023 
https://de.wikipedia.org/wiki/Matroska

[2] Library of Congress, «Sustainability of Digital Formats: Matroska Multimedia Container», 21.09.2023 
https://www.loc.gov/preservation/digital/formats/fdd/fdd000342.shtml

[3] Fileformat, «Documentation MKV». 21.09.2023 
https://docs.fileformat.com/video/mkv

    

Katalog archivischer Dateiformate Version 7.0, Juni 2024