Matroska-video (.mkv)
Matroska StandardMatroska Video (MKV) er et gratis, utvidbart og åpent standardisert multimediebeholderformat som kan inneholde et ubegrenset antall video-, lyd-, bilde- og undertekstspor inne i en enkelt fil.
Inspeksjon og metadata
Operativsystemer og filanalysatorer identifiserer MKV-filer ved å undersøke den innledende binære bytesekvensen:
Filsignatur på bytenivå (magiske byte)
Operativsystemer og filanalysatorer identifiserer MKV-filer ved å undersøke den innledende binære bytesekvensen:
HEX-SIGNATUR (OFFSET 0):
1A 45 DF A3ASCII-REPRESENTASJON: Eߣ
Standardisering: Matroska Open Standard / IETF Working Group Draft
Tekniske spesifikasjoner
| Beholderarkitektur | Hierarkisk beholder basert på Extensible Binary Meta Language (EBML) |
| Komprimering | Uavhengig av kodek: støtter AV1, HEVC, H.264, VP9, DTS-HD, TrueHD, FLAC og ukomprimert video |
| Bytterekkefølge | Big-endian-heltallsrepresentasjoner med lengdefelt av variabel lengde |
| Fargerom | HDR10, Dolby Vision, HLG og alle fargerom |
| Kanaler og struktur | Så godt som ubegrenset antall lydspor, undertekststrømmer og kameravinkler |
| Maks. dimensjoner | Ubegrenset; støtter 8K, 16K og video med høy bildefrekvens |
| Gjennomsiktighet | Full støtte for alfakanal når beholderen inneholder VP9- eller ProRes-strømmer |
| Strømming og progressiv visning | Klyngebasert blokkstruktur muliggjør robust direktestrømming og tåler korrupsjon |
Teknisk sammenligningsmatrise: MKV sammenlignet med konkurrenter
| Teknisk attributt | MKV (Gjeldende) | MP4 | WEBM | AVI |
|---|---|---|---|---|
| Kodekfrihet | Støtter mange kodeker; støtte i avspillere varierer. | Begrenset primært til H.264/HEVC/AV1 og AAC | Begrenset til VP8/VP9/AV1 og Vorbis/Opus | Bare eldre kodeker |
| Undertekstfidelitet | Vedlagte skrifter kan bidra til gjengivelse hvis spilleren støtter dem; utseendet avhenger av programvaren. | Kun grunnleggende tekstformatering | Kun grunnleggende WebVTT-formatering | Eksterne undertekstfiler kreves |
| Innebygd Apple-støtte | Krever tredjepartspiller (VLC, IINA, Infuse) | Støttes innebygd på enkelte Apple-enheter og i noe Apple-programvare; støtten varierer med format og versjon. | Støttes i Safari via moderne rammeverk | Eldre QuickTime-tillegg |
| Containerarkitektur | Extensible Binary Meta Language (EBML) | ISO Base Media File Format (atomer/bokser) | EBML (Matroska-delmengde) | RIFF-blokkarkitektur |
Vanlige korrupsjonsmoduser og heksadesimal gjenopprettingsveiledning
Filen spilles av, men det er problemer med å spole på tidslinjen, eller varigheten beregnes feil.
Underliggende årsak: Skadet eller manglende 'Cues'-element (Matroska-søketabellen) på grunn av ufullstendig nedlasting.
Utbedring: Gjenoppbygg søkeindekstabellen umiddelbart ved hjelp av 'mkvmerge -o fixed.mkv broken.mkv'.
Sikkerhetsanalyse og angrepsvektorer mot parsere
EBML-parsing krever dekoding av heltall med variabel lengde og nestede elementtrær. Feilutformede elementlengder kan utløse feil i minneforvaltningen.
Kjente angrepsvektorer
- Heap-bufferoverflyt ved parsing av EBML-elementstørrelser i mediespillere.
- Vilkårlig kodekjøring gjennom feilaktig håndtering av innebygde skriftvedlegg i undertekstrenderere.
- Nektelse av tjeneste gjennom sirkulære referanseløkker i Matroska-kapittelelementer.
Anbefalte sikkerhetstiltak: Sanitér typer for innebygde vedlegg, og pars EBML-strukturer med minnesikre parserbiblioteker i en sandkasse.
Historisk opprinnelse og milepæler
Viktige fordeler
- Matroska støtter mange video-, lyd- og undertekstkodeker, men kompatibiliteten avhenger av avspilleren og enheten.
- Full støtte for avanserte formaterte undertekster (ASS/SSA), flerspråklige lydspor og kapittelmenyer.
- Høy motstandskraft mot korrupsjon: skadede klynger forhindrer ikke avspilling av omliggende video.
Tekniske begrensninger og ulemper
- Mangler innebygd avspilling rett ut av esken på standard Apple QuickTime-spiller og iOS-enheter.
- Støttes ikke innebygd av alle kommersielle TV-smarthuber og maskinvarespillere.
- Kan ikke innebygges direkte i standard nettlesere via HTML5 <video> uten omkoding.
Interessante tekniske fakta
- Navnet 'Matroska' kommer fra det russiske ordet 'Matryoshka', som henviser til nestede tredukker (matrjosjka).
- De magiske bytene '1A 45 DF A3' representerer den universelle EBML-hode-ID-en som brukes av både MKV og WebM.
- MKV-filer kan bygge inn hele TrueType- og OpenType-skriftfiler direkte i beholderen for å gjengi anime-undertekster.
Ofte stilte tekniske spørsmål
Hvorfor vil ikke TV-en eller telefonen min spille av MKV-filer?
Enkelte enheter støtter ikke MKV eller en kodek i filen. Sjekk at avspilleren du skal bruke, støtter beholderen og kodekene før du konverterer. Å pakke om til MP4 hjelper bare når strømformatene er kompatible.
Kan jeg konvertere MKV til MP4 uten å tape videokvalitet?
Når video- og lydkodekene støttes av MP4, kan remuksing bevare de kodede strømmene uten ny koding. Ellers kan konverteringen kreve omkoding, som kan endre kvaliteten.
Hva er forholdet mellom MKV og WebM?
WebM bygger på Matroska/EBML-containerens modell og bruker en begrenset profil med bestemte kodeker.