NAME¶
mkvextract - pakk ut spor fra Matroska filer til andre filer
SAMMENDRAG¶
mkvextract {kildefilnavn} {modus1} [alternativer]
[utpakking-spes1] [modus2] [alternativer] [utpakking-spes2] [...]
BESKRIVELSE¶
Dette programmet trekker ut spesifikke deler fra en Matroska fil
til andre nyttige formater. Det første argumentet er navnet på
kildefilen som må være en Matroska fil.
Alle andre argumenter bytter enten til en bestemt utvinningsmodus,
endrer alternativer for den aktive modusen eller spesifiserer hva som skal
trekkes ut i hvilken fil. Flere moduser kan brukes i samme påkallelse
av mkvextract, noe som tillater utvinning av flere ting i en enkel
iterasjon. De fleste alternativer kan bare brukes i visse moduser med noen
få alternativer som gjelder for alle moduser.
For tiden støttes uttrekking av spor, tagger, vedlegg,
kapitler, CUE-ark, tidsstempler og cues.
Vanlige alternativer¶
Følgende alternativer er tilgjengelige i alle moduser og
beskrives bare én gang i denne seksjonen.
-f, --parse-fully
Setter analysemodus til 'full'. Standardmodusen
analyserer ikke hele filen, men bruker metasøk-elementene for å
finne de nødvendige elementene i en kildefil. I 99% av alle tilfeller
er dette nok. Men for filer som ikke inneholder metasøk-elementer eller
som er skadet, må brukeren kanskje bruke denne modusen. En full
skanning av en fil kan ta et par minutter, mens en rask skanning bare tar
sekunder.
--command-line-charset character-set
Angir tegnsettet for å konvertere strenger fra
gitt på kommandolinjen. Den er standard til tegnsettet gitt av
systemets gjeldende lokalitet.
--output-charset character-set
Angir tegnsettet som strenger konverteres til som skal
sendes ut. Den er standard til tegnsettet gitt av systemets gjeldende
lokalitet.
-r, --redirect-output filnavn
Skriver alle meldinger til filen filnavn i stedet
for til konsollen. Selv om dette kan gjøres enkelt med omdirigering av
utdata, er det tilfeller der dette alternativet er nødvendig:
når terminalen tolker utdataene på nytt før du skriver
den til en fil. Tegnsettet angitt med --output-charset er hedret.
--flush-on-close
Ber programmet tømme alle data som er bufret i
minnet til lagring når filer som er åpnet for skriving lukkes.
Dette kan brukes til å forhindre tap av data ved strømbrudd
eller for å omgå visse problemer i operativsystemet eller
driverne. Ulempen er at multipleksing vil ta lengre tid da mkvmerge vil vente
til alle data er skrevet til lagringen før den avsluttes. Se saker
#2469 og #2480 på MKVToolNix-feilsporeren for dyptgående
diskusjoner om fordeler og ulemper.
--ui-language kode
Tvinger oversettelsene for språk- koden som
skal brukes (eks. 'de_DE' for tyske oversettelser). Ved å skrive inn
'list' som koden vil føre til at programmet sender ut en liste
over tilgjengelige oversettelser.
--abort-on-warnings
Ber programmet om å avbryte etter at den
første advarselen er sendt ut. Programmets avslutningskode vil
være 1.
--debug emne
Slå på feilsøking for en bestemt
funksjon. Dette alternativet er bare nyttig for utviklere.
--engage funksjon
Slå på eksperimentelle funksjoner. En liste
over tilgjengelige funksjoner kan bes om med mkvextract --engage list.
Disse funksjonene er ikke ment å brukes i normale situasjoner.
--gui-mode
Slår på det grafiske grensesnittet. I denne
modusen kan spesialformaterte linjer være utdata som kan fortelle et
kontrollerende grafisk grensesnitt hva som skjer. Disse meldingene
følger formatet '#GUI#melding'. Meldingen kan etterfølges av
nøkkel/verdipar som i
'#GUI#melding#nøkkel1=verdi1#nøkkel2=verdi2...'. Verken
meldingene eller nøklene blir noen gang oversatt og sendes alltid ut
på engelsk.
-v, --verbose
Vær detaljert og vis alle de viktige Matroska
elementene mens de leses.
-h, --help
Vis bruksinformasjon og avslutt.
-V, --version
Vis versjonsinformasjon og avslutt.
@alternativer-fil.json
Leser flere kommandolinjeargumenter fra filen
alternativer-fil. Hvis du vil ha en fullstendig forklaring på
hvilke formater som støttes for slike filer, kan du se avsnittet
"Alternativfiler" i
mkvmerge(1) manualside.
Modus for sporuttrekking¶
Syntaks: mkvextract kildefilnavn
spor [alternativer]
TID1:målfilnavn1
[TID2:målfilnavn2 ...]
Følgende kommandolinjealternativer er tilgjengelige for
hvert spor i modus for uttrekking av ' spor'. De må vises foran
sporspesifikasjonen (se nedenfor) de skal anvendes på.
-c tegnsett
Angir tegnsettet som neste tekst-undertekstspor skal
konverteres til. Bare gyldig hvis neste spor-ID er rettet mot et
tekst-undertekstspor. Den er standard UTF-8.
--blockadd nivå
Hold bare BlockAdditions opp til dette nivået.
Standard er å beholde alle nivåer. Dette alternativet
påvirker bare visse typer kodeker, for eksempel WAVPACK4.
--cuesheet
Fører
mkvextract(1) til å trekke ut
et CUE-ark fra kapittelinformasjonen og taggdataene for det følgende
sporet til en fil hvis navn er sporets utdatanavn med '.cue' tilføyd
til den.
--raw
Trekker ut rådataene til en fil uten conteinerdata
rundt den. I motsetning til
--fullraw-flagget fører ikke dette
flagget til at innholdet i CodecPrivate-elementet skrives til filen. Denne
modusen fungerer med alle CodecIDs, selv de som
mkvextract(1) ellers
ikke støtter, men de resulterende filene kan kanskje ikke brukes.
--fullraw
Trekker ut rådataene i en fil uten conteinerdata
rundt den. Innholdet i CodecPrivate-elementet skrives først til filen
hvis sporet inneholder et slikt datahodeelement. Denne modusen fungerer med
alle CodecIDs, selv de som
mkvextract(1) ellers ikke støtter,
men de resulterende filene kan kanskje ikke brukes.
TID:utnavn
Forårsaker uttrekking av sporet med ID
TID
inn i filen
outname hvis et slikt spor finnes i kildefilen. Dette
alternativet kan gis flere ganger. Spor-ID-ene er de samme som de som sendes
ut av
mkvmerge(1)s
--identify-alternativ.
Hvert utdatanavn skal bare brukes én gang. Unntaket er
RealAudio- og RealVideo-spor. Hvis du bruker samme navn for forskjellige
spor, blir disse sporene lagret i samme fil. Eksempel:
$ mkvextract inndata.mkv tracks 0:video.h264 2:output-two-vobsub-tracks.idx 3:output-two-vobsub-tracks.idx
Uttrekkingsmodus for vedlegg¶
Syntaks: mkvextract kildefilnavn
vedlegg [alternativer]
AID1:utnavn1 [AID2:utnavn2 ...]
AID:utnavn
Forårsaker uttrekking av vedlegget med ID
AID inn i filen
utnavn hvis et slikt vedlegg finnes i
kildefilen. Hvis
utnavnet blir stående tomt, brukes navnet
på vedlegget inne i kilden Matroska filen i stedet. Dette alternativet
kan gis flere ganger. Vedleggs-ID-ene er de samme som de som sendes ut av
mkvmerge(1)s
--identify-alternativ.
Uttrekkingsmodus for kapitler¶
Syntaks: mkvextract kildefilnavn
kapitler [alternativer]
utdatafilnavn.xml
-s, --simple
Eksporterer kapittelinformasjonen i det enkle formatet
som brukes iOGM-verktøyene (CHAPTER01=..., CHAPTER01NAME=...). I denne
modusen må noe informasjon forkastes. Standard er å sende
kapitlene i XML format.
--simple-language språk
Hvis det enkle formatet er aktivert, vil
mkvextract(1) bare sende ut en enkelt oppføring for hvert
kapittelatom som oppstår, selv om et kapittelatom inneholder mer enn
ett kapittelnavn. Som standard vil
mkvextract(1) bruke det
første kapittelnavnet som finnes for hvert atom uavhengig av
språket.
Ved å bruke dette alternativet kan brukeren bestemme hvilke
kapittelnavn som sendes ut hvis atomer inneholder mer enn ett kapittelnavn.
Språkparameteren må være en ISO 639-1 eller ISO
639-2 kode.
Kapitlene er skrevet til spesifisert utdatafil. Som standard
brukes XML-formatet som forstås av mkvmerge(1). Hvis det ikke
finnes kapitler i filen, opprettes ikke utdatafilen.
Modus for tagguttrekking¶
Syntaks: mkvextract kildefilnavn
tagger [alternativer]
utdatafilnavn.xml
Taggene skrives til spesifisert utdatafil i XML format
forstått av mkvmerge(1). Hvis det ikke finnes noen tagger i
filen, opprettes ikke utdatafilen.
Uttrekkingsmodus for Cue-ark¶
Syntaks: mkvextract kildefilnavn
cuesheet [alternativer]
utdatafilnavn.cue
Cue-arket er skrevet til spesifisert utdatafil. Hvis det ikke
finnes kapitler eller tagger i filen, opprettes ikke utdatafilen.
Modus for uttrekking av tidsstempel¶
Syntaks: mkvextract kildefilnavn
timestamps_v2 [alternativer]
TID1:målfilnavn1
[TID2:målfilnavn2 ...]
TID:utnavn
Forårsaker uttrekking av tidsstemplene for sporet
med ID
TID inn i filen
utnavn hvis et slikt spor finnes i
kildefilen. Dette alternativet kan gis flere ganger. Spor-ID-ene er de samme
som de som sendes ut av
mkvmerge(1)s
--identify-alternativ.
Eksempel:
$ mkvextract inndata.mkv timestamps_v2 1:ts-spor1.txt 2:ts-spor2.txt
Uttrekkingsmodus for signaler¶
Syntaks: mkvextract kildefilnavn
cues [alternativer]
TID1:målfilnavn1
[TID2:målfilnavn2 ...]
TID:målfilnavn
Forårsaker uttrekking av signalene for sporet med
ID
TID inn i filen
utnavn hvis et slikt spor finnes i
kildefilen. Dette alternativet kan gis flere ganger. Spor-ID-ene er de samme
som de som sendes ut av
mkvmerge(1)s
--identify-alternativ og
ikke tallene i CueTrack-elementet.
Formatutdataene er et enkelt tekstformat: én linje per
CuePoint-element med nøkkel=verdi-par. Hvis et valgfritt element ikke
finnes i en CuePoint (f.eks. CueDuration), vil en bindestrek sendes ut som
verdien.
Eksempel:
tidsstempel=00:00:13.305000000 varighet=- klynge_posisjon=757741 relativ_posisjon=11
De mulige nøklene er:
tidsstempel
Signalpunktets tidsstempel med nanosekundpresisjon.
Formatet er HH:MM:SS.nnnnnnnnn. Dette elementet er alltid satt.
varighet
Signalpunktets varighet med nanosekundpresisjon. Formatet
er HH:MM:SS.nnnnnnnnn.
klynge_posisjon
Den absolutte posisjonen i byte inne i Matroska-filen der
klyngen som inneholder det refererte elementet starter.
Note
Inne i Matroska filen er CueClusterPosition i forhold til segmentets data start
forskyvning. Verdien som sendes ut av
mkvextract(1)s
signal-uttrekkingsmodus, inneholder imidlertid den forskyvningen allerede og
er en absolutt forskyvning fra begynnelsen av filen.
relativ_posisjon
Den relative posisjonen i byte inne i klyngen der
BlockGroup- eller SimpleBlock-elementet som signalpunktet refererer til,
starter.
Note
Inne i Matroska filen er CueRelativePosition i forhold til klyngens data start
forskyvning. Verdien som sendes ut ved
mkvextract(1)s
cue-uttrekkingsmodus, er imidlertid relativ til klyngens ID. Den absolutte
posisjonen inne i filen kan beregnes ved å legge til cluster_position
og relative_position.
Eksempel:
$ mkvextract inndata.mkv cues 1:cues-spor1.txt 2:cues-spor2.txt
EKSEMPLER¶
Trekker ut både kapitler og tagger i sine respektive XML
formater samtidig:
$ mkvextract film.mkv chapters film-kapitler.xml tags film-tagger.xml
Trekker ut et par spor og deres respektive tidsstempler
samtidig:
$ mkvextract "En annen film.mkv" tracks 0:video.h265 "1:main audio.aac" "2:director's comments.aac" timestamps_v2 "0:tidsstempler video.txt" "1:ttidsstempler hovedlyd.txt" "2:tidsstempler regissørens kommentarer.txt"
Trekke ut kapitler i Ogg/OGM-formatet og omkode et
tekst-undertekstspor til et annet tegnsett:
$ mkvextract "Min film.mkv" chapters --simple "Mine kapitler.txt" tracks -c MS-ANSI "2:Mine undertekster.srt"
TEKSTFILER OG TEGNSETTKONVERTERINGER¶
For en grundig diskusjon om hvordan alle verktøyene i
MKVToolNix-pakken håndterer tegnsettkonverteringer, inndata- /
utdatakoding, kommandolinjekoding og konsollkoding, se delen med identisk
navn i mkvmerge(1) manualsiden.
Avgjørelsen om utdataformatet er basert på
sportypen, ikke på utvidelsen som brukes til utdatafilnavnet.
Følgende sportyper støttes for øyeblikket:
A_AAC/MPEG2/*, A_AAC/MPEG4/*, A_AAC
Alle AAC-filer vil bli skrevet inn i en AAC-fil med
ADTS-datahoder før hver pakke. ADTS-datahodene inneholder ikke det
avviklede uthevingsfeltet.
A_AC3, A_EAC3
Disse vil bli trekket ut til rå AC-3-filer.
A_ALAC
ALAC-spor skrives til CAF-filer.
A_DTS
Disse vil bli trekket ut til rå DTS-filer.
A_FLAC
FLAC-spor skrives til rå FLAC-filer.
A_MPEG/L2
MPEG-1 Audio Layer II-strømmer trekkes ut til
rå MP2-filer.
A_MPEG/L3
Disse vil bli trekket ut til rå MP3-filer.
A_OPUS
Opus-spor skrives til OggOpus-filer.
A_PCM/INT/LIT, A_PCM/INT/BIG
Rå PCM-data vil bli skrevet til en WAV-fil.
Big-endian heltallsdata vil bli konvertert til little-endian data i
prosessen.
A_REAL/*
RealAudio-spor skrives til RealMedia-filer.
A_TRUEHD, A_MLP
Disse vil ble trekket ut til rå
TrueHD-/MLP-filer.
A_TTA1
TrueAudio-spor skrives til TTA-filer. Vær
oppmerksom på at på grunn av Matroskas begrensede
tidsstempelpresisjon, vil den ekstraherte filens datahode være
forskjellig angående to felt: data_length (totalt antall samples
i filen) og CRC.
A_VORBIS
Vorbis-lyd vil skrives til en OggVorbis fil.
A_WAVPACK4
WavPack-spor skrives til WV-filer.
S_HDMV/PGS
PGS-undertekster vil bli skrevet som SUP-filer.
S_HDMV/TEXTST
S_KATE
Kate-strømmer vil bli skrevet i en
Ogg-konteiner.
S_TEXT/SSA, S_TEXT/ASS, S_SSA, S_ASS
SSAog ASS tekst-undertekster vil bli skrevet som
henholdsvis SSA-/ASS-filer.
S_TEXT/UTF8, S_TEXT/ASCII
Enkle tekst-undertekster vil bli skrevet som
SRT-filer.
S_VOBSUB
VobSub-undertekster vil bli skrevet som SUB-filer sammen
med de respektive indeksfilene, som IDX-filer.
S_TEXT/USF
USF tekst-undertekster vil bli skrevet som
USF-filer.
S_TEXT/WEBVTT
WebVTT tekst-undertekster vil bli skrevet som
WebVTT-filer.
V_MPEG1, V_MPEG2
MPEG-1 og MPEG-2 videospor vil bli skrevet som MPEG-
elementære strømmer.
V_MPEG4/ISO/AVC
H.264-/AVC-videospor er skrevet til
H.264-elementære strømmer som kan behandles videre med for
eksempel MP4Box fra GPAC-pakken.
V_MPEG4/ISO/HEVC
H.265-/HEVC-videospor er skrevet til
H.265-elementære strømmer som kan behandles videre med for
eksempel MP4Box fra GPAC-pakken.
V_MS/VFW/FOURCC
Faste FPS-videospor med denne CodecID-en skrives til
AVI-filer.
V_REAL/*
RealVideo-spor skrives til RealMedia-filer.
V_THEORA
Theora-strømmer vil bli skrevet i en
Ogg-konteiner.
V_VP8, V_VP9
VP8-/VP9-spor skrives til IVF-filer.
Tagger
Tagger konverteres til et XML-format. Dette formatet er
det samme som
mkvmerge(1) støtter for lesing av tagger.
Vedlegg
Vedlegg skrives til utdatafilen som de er. Ingen
konvertering overhodet er gjort.
Kapitler
Kapitler konverteres til et XML-format. Dette formatet er
det samme som
mkvmerge(1) støtter for lesing av kapitler.
Alternativt kan en nedstrippet versjon sendes ut i det enkle
OGM-stilformatet.
Tidsstempler
Tidsstempler blir først sortert og deretter sendt
ut som en tidsstempel v2-format kompatibel fil klar til å bli matet til
mkvmerge(1). Utpakking til andre formater (v1, v3 og v4) støttes
ikke.
AVSLUTNINGSKODER¶
mkvextract(1) avsluttes med en av tre avslutningskoder:
•0 -- Denne avslutningskoden betyr at
uttrekkingen er fullført.
•
1 -- I dette tilfellet har
mkvextract(1) sendt ut minst en advarsel, men uttrekkingen fortsatte.
En advarsel er prefikset med teksten 'Advarsel:'. Avhengig av problemene som
er involvert, kan de resulterende filene være ok eller ikke. Brukeren
oppfordres til å sjekke både advarselen og resultatfilene.
•
2 -- Denne avslutningskoden brukes etter
at det oppstod en feil.
mkvextract(1) avbryter rett etter at
feilmeldingen er sendt ut. Feilmeldinger varierer fra feil
kommandolinjeargumenter over lese-/skrivefeil til ødelagte filer.
MILJøVARIABLER¶
mkvextract(1) bruker standardvariablene som bestemmer
systemets lokalitet (for eksempel LANG og LC_*-familien).
Ytterligere variabler:
MKVINFO_DEBUG, MKVTOOLNIX_DEBUG og dens korte form
MTX_DEBUG
Innholdet behandles som om det hadde blitt sendt via
--debug alternativet.
MKVEXTRACT_ENGAGE, MKVTOOLNIX_ENGAGE og dens korte
form MTX_ENGAGE
Innholdet behandles som om det hadde blitt sendt via
--engage alternativet.
WWW¶
Den nyeste versjonen finner du alltid på MKVToolNixs
hjemmeside[1].
AUTHOR¶
Moritz Bunkus <moritz@bunkus.org>
Utvikler
NOTES¶
- 1.
- MKVToolNixs hjemmeside