Matroska-video (.mkv)
Matroska StandardMatroska Video (MKV) er et gratis, udvideligt multimediebeholderformat baseret på en åben standard. En enkelt fil kan rumme et ubegrænset antal video-, lyd-, billed- og undertekstspor.
Undersøgelse og metadata
Operativsystemer og filanalysatorer identificerer MKV-filer ved at inspicere den indledende binære bytesekvens:
Byte-niveau Header-signatur (Magic Bytes)
Operativsystemer og filanalysatorer identificerer MKV-filer ved at inspicere den indledende binære bytesekvens:
HEX-SIGNATUR (OFFSET 0):
1A 45 DF A3ASCII-REPRÆSENTATION: Eߣ
Standardisering: Matroska Open Standard / IETF Working Group Draft
Tekniske specifikationer
| Containerarkitektur | Hierarkisk beholder i Extensible Binary Meta Language (EBML) |
| Komprimering | Codec-uafhængig: indeholder AV1, HEVC, H.264, VP9, DTS-HD, TrueHD, FLAC og ukomprimeret video |
| Byte-rækkefølge | Big-Endian-heltal med beskrivelser af variabel længde |
| Farverum | HDR10, Dolby Vision, HLG og alle farverum |
| Kanaler og struktur | Virtuelt ubegrænset antal lydspor, undertekststrømme og kameravinkler |
| Maks. dimensioner | Ubegrænset; understøtter 8K, 16K og video med høj billedfrekvens |
| Gennemsigtighed | Fuld understøttelse af alfakanal, når strømmen indeholder VP9- eller ProRes-video |
| Streaming og progressiv | Clusterbaseret chunkframing giver robust livestreaming og modstandsdygtighed over for beskadigelse |
Teknisk sammenligningsmatrix: MKV sammenlignet med konkurrenterne
| Teknisk attribut | MKV (Aktuel) | MP4 | WEBM | AVI |
|---|---|---|---|---|
| Codec-frihed | Understøtter mange kodekser; understøttelsen afhænger af afspilleren. | Begrænset primært til H.264/HEVC/AV1 og AAC | Begrænset til VP8/VP9/AV1 og Vorbis/Opus | Kun ældre codecs |
| Undertekstgengivelse | Vedhæftede skrifttyper kan hjælpe med gengivelse, hvis afspilleren understøtter dem; udseendet afhænger af softwaren. | Kun grundlæggende tekstformatering | Kun grundlæggende WebVTT-formatering | Kræver eksterne undertekstfiler |
| Oprindelig Apple-understøttelse | Kræver tredjepartsafspiller (VLC, IINA, Infuse) | Kan afspilles på visse Apple-enheder og i visse programmer; understøttelsen afhænger af format og version. | Understøttet i Safari via moderne frameworks | Ældre QuickTime-plugin |
| Beholderarkitektur | Extensible Binary Meta Language (EBML) | ISO Base Media File Format (Atoms/Boxes) | EBML (delmængde af Matroska) | RIFF-blokarkitektur |
Almindelige korruptionstilstande og hex-gendannelsesvejledning
Filen afspilles, men tidslinjesøgning er brudt, eller varigheden beregnes forkert.
Grundlæggende årsag: Beskadiget eller manglende 'Cues'-element (Matroska-søgetabellen) på grund af ufuldstændig download.
Gendannelse: Genopbyg søgeindekstabellen med det samme ved hjælp af 'mkvmerge -o fixed.mkv broken.mkv'.
Sikkerhedsanalyse og parser-angrebsvektorer
EBML-parsing kræver dekodning af heltal med variabel længde og indlejrede elementtræer. Misdannede elementlængder kan udløse fejl i hukommelsesstyringen.
Kendte angrebsvektorer
- Heap-bufferoverløb ved parsing af EBML-elementstørrelser i medieafspillere.
- Vilkårlig kodekørsel gennem misdannet håndtering af indlejrede skrifttypevedhæftninger i undertekstgengivere.
- Nægtelse af tjeneste (Denial of Service) gennem cirkulære referenceløkker i Matroska-kapitelelementer.
Defensive bedste praksisser: Rens indlejrede vedhæftningstyper, og fortolk EBML-strukturer ved hjælp af isolerede, hukommelsessikre parserbiblioteker.
Historisk oprindelse og milepæle
Vigtige fordele og styrker
- Matroska understøtter mange video-, lyd- og undertekstkodekser, men kompatibiliteten afhænger af afspilleren og enheden.
- Fuld understøttelse af avancerede, typografisatte undertekster (ASS/SSA), flersprogede lydspor og kapitelmenuer.
- Høj modstandsdygtighed over for korruption: beskadigede klynger forhindrer ikke afspilning af den omliggende video.
Tekniske begrænsninger og ulemper
- Mangler indbygget afspilning direkte fra start på standard Apple QuickTime-afspiller og iOS-enheder.
- Ikke understøttet oprindeligt af alle kommercielle fjernsyns smart-hubs og hardware-afspillere.
- Kan ikke indlejres direkte i standardwebbrowsere via HTML5 <video> uden omkodning.
Interessante tekniske fakta
- Navnet 'Matroska' stammer fra det russiske ord 'Matryoshka', der betegner indlejrede trædukker.
- De magiske bytes '1A 45 DF A3' repræsenterer det universelle EBML-hoved-ID, der bruges af både MKV og WebM.
- MKV-filer kan indlejre hele TrueType- og OpenType-skrifttypefiler direkte inde i beholderen for at gengive anime-undertekster.
Ofte stillede tekniske spørgsmål
Hvorfor kan mit tv eller min telefon ikke afspille MKV-filer?
Nogle enheder understøtter ikke MKV eller en codec i filen. Tjek målspillerens understøttelse af container og codecs, før du konverterer. Remuxing til MP4 hjælper kun, hvis strømmerne er kompatible.
Kan jeg konvertere MKV til MP4 uden at miste videokvalitet?
Hvis MP4 understøtter video- og lydcodecs, kan remuxing bevare de kodede strømme uden omkodning. Ellers kan konverteringen kræve omkodning, som kan ændre kvaliteten.
Hvad er forholdet mellem MKV og WebM?
WebM bygger på Matroska/EBML-containerens model og bruger en begrænset profil med bestemte codecs.