mkvextract -- haalt sporen uit Matroska(tm) bestanden en plaatst die in andere bestanden

Table of contents

1. Beknopte inhoudsbeschrijving

mkvextract {mode} {source-filename} [options] [extraction-spec]

2. Beschrijving

Dit programma haalt specifieke delen uit Matroska(tm) bestanden naar andere zeer bruikbare formaten. Het eerste argument, mode, vertelt mkvextract(1) wat eruit te halen. Momenteel wordt het uithalen ondersteund van sporen, markeringen, bijlagen, hoofdstukken, volg document(en) (cue) en tijd coderingen. Het tweede argument is de bron bestandsnaam. Het moet zijn een Matroska(tm) bestand. Alle volgende argumenten zijn opties en de 'uit te halen' sepcificaties; Die beiden van de geselecteerde wijze afhangen.

2.1. Algemene opties

De volgende opties zijn beschikbaar in alle modes en worden slechts éénmaal beschreven in deze sectie.

Option Description
-f, --parse-fully

Stelt de ontleedt mode in op 'volledig'. De standaard waarde ontleedt niet het gehele bestand maar gebruikt de 'meta zoek' elemen(en) voor het lokaliseren van de vereiste elementen van een bronbestand. In 99% van alle gevallen is dit genoeg. Maar voor bestanden die het 'meta zoek' element niet bevatten of voor bestanden die zijn beschadigd kan deze gebruiker mode erg handig zijn. Een volledige scan kan een aantal minuten in beslag nemen terwijl een 'snelle' scan slechts enkele seconden duren.

--command-line-charset (karakter-set)

Plaatst het karakter set om de reeksen om te zetten die vanaf de commandoregel worden opgegeven. Standaard wordt gebruikt de karakter set die afhankelijk is van wat er in uw besturingssysteem staat aangegeven (lokatie).

--output-charset (karakter-set)

Stelt de karakter set in waarnaar de reeksen dienen te worden geconverteerd naar de uitvoer. Standaard wordt gebruikt de karakter set die afhankelijk is van wat er in uw besturingssysteem staat aangegeven (lokatie).

-r, --redirect-output (bestandsnaam)

Schrijft alle berichten naar een bestand file-name i.p.v naar het 'apparaat/houder'. Terwijl dit gemakkelijk met uitvoer omleiden kan worden gedaan, er zijn gevallen waarin deze optie nodig is: wanneer de verwerker e.e.a her-interpreteert, voordat het geschreven wordt naar het uitvoer bestand. De karakter set met --output-charset is toegewezen.

--ui-language code

Forceert de vertaling voor de te gebruiken taal code (b.v. 'de_DE' voor de Duitse taal). Hoewel het de voorkeur heeft de 'omgevings variabelen' te gebruiken LANG, LC_MESSAGES en LC_ALL. Opvragen van een 'list' als een code zal voor zorgen dat mkvextract(1) een lijst zal uitvoeren van alle beschikbaren vertalingen.

--debug topic

Turn on debugging for a specific feature. This option is only useful for developers.

--engage feature

Turn on experimental features. A list of available features can be requested with mkvextract --engage list. These features are not meant to be used in normal situations.

-v, --verbose

Wees uitgebreid en toon alle belangrijke Matroska(tm) elementen zoals ze zijn gelezen.

-h, --help

Toon gebruik informatie en sluit af.

-V, --version

Toon versie informatie en sluit af.

--check-for-updates

Controleert online op nieuwere versie's via ophalen op adres http://mkvtoolnix-releases.bunkus.org/latest-release.xml. Vier regels worden uitgevoerd in key=value stijl: het adres van waar de informatie wordt verkregen (key version_check_url), de huidig uitgevoerde versie (key running_version), laatst uitgebrachte versie (key available_version en het ophaal adres (key download_url).

Nadien sluit het programma af met een afsluitwaarde van 0 als er geen nieuwere versie beschikbaar is, met een 1 als er een nieuwere beschikbaar is en 2 indien er een fout ontstond (b.v. als de opwaardeer info niet verkregen kon worden).

Deze optie is alleeen beschikbaar indien het gebouwd is met ondersteuning voor libcurl.

@options-file

Leest extra commandoregel argumenten in van een bestand options-file. Regels met een spatie (lege ruimte) als eerste karakter, zijn gemarkeerd als een hash (waarde) ('#') worden behandeld als commentaar en genegeerd. Een spatie aan het begin en einde van een regel worden verwijderd. Elke regel mag excact één waarde bevatten

Verschillende karakters kunnen worden overgeslagen, b.v. als het nodig is een niet commentaar regel te starten met '#'. Deze regels worden beschreven in de sectie over overslaan van tekst.

De commandoregel 'mkvextract tracks source.mkv --raw 1:destination.raw' kunnen worden geconverteerd naar één van de volgende optie bestanden:

# Extract a track from source.mkv
tracks
source.mkv
# Output the track as raw data.
--raw
1:destination.raw

2.2. Spoor uitpak mode

Ingave: mkvextract tracks source-filename [options] TID1:dest-filename1 [TID2:dest-filename2 ...]

De volgende commandoregel opties zijn beschikbaar voor elk spoor in 'tracks' uitpak mode. Zij zullen vooraan moeten worden geplaatst in de spoor specificatie (zie hieronder) Zij zouden toegepast moeten zijn op.

Option Description
-c character-set

Stelt de karakter set in waarna het volgende ondertitel tekst spoor geconverteerd wordt. Is alleen geldig, wanneer een volgende ondertitel spoor verwijst naar een tekst ondertitel spoor. Standaard naar UTF-8.

--blockadd niveau

Houd alleen de BlockAdditions tot aan dit niveau. Standaard is alle niveaus te houden. Deze optie heeft alleen effect op bepaalde codecs zoals WAVPACK4.

--cuesheet

Zorgt er voor dat mkvextract(1) uitpakt naar een CUE lijst/document/reeks van de hoofdstuk data en markeer data voor de volgende sporen naar een bestand waarvan de naam van het uitvoer spoor heeft waarna '.cue' eraan toegevoegd wordt.

--raw

Pakt de raw dat uit naar een bestand zonder enige inhoud data er omheen. Niet zoals --fullraw dit merkteken markeren, veroorzaakt niet dat de inhoud van CodecPrivate element geschreven wordt naar het bestand. Deze mode werkt met alle CodecIDs, zelfs diegenen die mkvextract(1) niet eens ondersteunt, maar het resulterende bestand kan onbruikbaar zijn.

--fullraw

Pakt de raw data uit naar een bestand zonder enige inhoud data er omheen. De inhoud van het CodecPrivate element zal eerst naar het bestand worden geschreven als het spoor zo'n hoofd element bevat. Deze mode werkt met alle CodecIDs, zelfs diegene die mkvextract(1) niet eens ondersteunt, maar het resulterende bestand kan onbruikbaar zijn.

TID:outname

Extraheert het spoor met het ID TID naar het bestand outname als een dergelijk spoor bestaat in het bronbestand. Deze optie kan meerdere keren geven worden. De spo(o)r(en) ID's zijn hetzelfde als diegene die met mkvmerge(1)'s --identify optie worden verkregen.

Eke uitvoernaam zou slechts éénmaal mogen worden gebruikt. De uitzonderingen zijn RealAudio en RealVideo sporen. Als je dezelfde naam gebruikt voor verschillende sporen dan zullen die sporen in hetzelfde bestand bewaard worden. Voorbeeld:

$ mkvextract tracks input.mkv 1:output-two-tracks.rm 2:output-two-tracks.rm

2.3. Markeeringen extraheer mode

Ingave: mkvextract tags source-filename [options]

De geëxtraheerde markeringen zijn geschreven naar het apparaat/houder tenzij de uitvoer is omgeleid (zie de sectie over uitvoer omleiden voor details).

2.4. Bijlagen extraheer mode

Ingave: mkvextract attachments source-filename [options] AID1:outname1 [AID2:outname2 ...]

Option Description
AID:outname

Zorgt voor het uitpakken van bijlage met het ID AID naar het bestand outname als een dergelijke bijlage bestaat in het bronbestand. Als de outname wordt leeggelaten dan wordt de naam gebruikt die zich binnenin het Matroska(tm) bronbestand bevindt. Deze optie kan meerdere malen worden gegeven. De ID's van de bijlagen zijn het zelfde als diegene die worden gecreëerd met mkvmerge(1)'s --identify optie.

2.5. Hoofdstuk uitpak mode

Ingave: mkvextract chapters source-filename [options]

Option Description
-s, --simple

Exporteert de hoofdstuk informatie in een simpel tekst formaat gebruikt in de OGM hulpmiddelen (CHAPTER01=..., CHAPTER01NAME=...). In deze mode wordt sommige informatie overgeslagen. Standaard is de hoofdstuk uitvoer naar XML formaat.

De geëxtraheerde hoofdstukken zijn geschreven naar het apparaat/houder tenzij de uitvoer is omgeleid (zie de sectie over uitvoer omleiden voor details).

2.6. Volg document(en) (cue) extraheer mode

Ingave: mkvextract cuesheet source-filename [options]

De geëxtraheerde volg document(en) (cue) zijn geschreven naar het apparaat/houder tenzij de uitvoer is omgeleid (zie de sectie over uitvoer omleiden voor details).

2.7. Tijdcode extraheer mode

Ingave: mkvextract timecodes_v2 source-filename [options] TID1:dest-filename1 [TID2:dest-filename2 ...]

De geëxtraheerde hoofdstukken zijn geschreven naar het apparaat/houder tenzij de uitvoer is omgeleid (zie de sectie over uitvoer omleiden voor details).

Option Description
TID:outname

Extraheert tijdcodes voor het spoor met het ID TID naar het bestand outname als een dergelijk spoor bestaat in het bronbestand. Deze optie kan meerdere keren geven worden. De spo(o)r(en) ID's zijn hetzelfde als diegene die met mkvmerge(1)'s --identify optie worden verkregen.

Voorbeeld:

$ mkvextract timecodes_v2 input.mkv 1:tc-track1.txt 2:tc-track2.txt

3. Uitvoer omleiden

Verschillende extractie modes veroorzaken dat mkvextract(1) de geëxtraheerde data wegschrijft naar het apparaat/houder. In algemene zin, zijn er twee manieren om deze data naar een bestand te schrijven: één verzorgd door een 'schil' en één verzorgd door mkvextract(1) zelf.

De in het schil ingebouwde omleidingsmechanisme wordt gebruikt door het toevoegen '> output-filename.ext' op de commandoregel. Voorbeeld:

$ mkvextract tags source.mkv > tags.xml

mkvextract(1)'s eigen omleiding wordt aangehaald met --redirect-output option. Voorbeeld:

$ mkvextract tags source.mkv --redirect-output tags.xml

Note:

Met Windows zal je waarschijnlijk moeten gebruiken --redirect-output optie omdat, cmd.exe soms een speciaal karakter interpreteert nog voordat ze geschreven worden naar een uitvoer bestand met als resultaat een 'gebroken' uitvoer.

4. Uitvoer bestandsformaten

De beslissing over het uitvoer formaat is gebasseerd op het spoor type, niet op de gebruikte extensie van de uitvoer bestandsnaam. De volgende spoor typen worden momenteel onderstend:

Option Description
V_MPEG4/ISO/AVC

H.264 / AVC video sporen worden geschreven naar H.264 elementaire stromen welke verder verwerkt kunnen worden b.v. MP4Box(tm) van het GPAC(tm) pakket.

V_MS/VFW/FOURCC

Vaste FPS video sporen met deze CodecID worden geschreven naar AVI bestanden.

V_REAL/*

RealVideo(tm) sporen worden geschreven naar RealMedia(tm) bestanden.

A_MPEG/L3, A_AC3

Deze worden uitgepakt naar MP3 en AC3 bestanden.

A_PCM/INT/LIT

Raw PCM data zal naar een WAV bestand geschreven worden.

A_AAC/MPEG2/*, A_AAC/MPEG4/*, A_AAC

Alle AAC bestanden zullen geschreven worden in een AAC bestand met ADTS koppen voor elk pakket. De ADTS koppen bevatten géén verouderd nadrukgebiedsveld.

A_VORBIS

Vorbis audio zal worden geschreven naar een OggVorbis(tm) bestand.

A_REAL/*

RealAudio(tm) sporen worden geschreven naar RealMedia(tm) bestanden.

A_TTA1

TrueAudio(tm) sporen worden geschreven naar TTA bestanden. Opmerking: door een limitatie in Matroska(tm)'s tijdcode precisie zal de geëxtraheerde bestandskop verschillendl zijn aangaande deze twee velden: data_length (de totale nummers van voorbeelden in het bestand) en de CRC.

S_TEXT/UTF8

Simpele tekst ondertitels worden geschreven in SRT bestanden.

S_TEXT/SSA, S_TEXT/ASS

SSA en ASS tekst ondertitels worden respectievelijk geschreven als SSA/ASS bestanden.

S_KATE

Kate(tm) de stromen zullen binnen een Ogg(tm) bestand worden geschreven.

Markeringen

Markeringen worden geconverteerd naar een XML formaat. Dit formaat is hetzelfde dat mkvmerge(1) ondersteunt voor het lezen van markeringen.

Bijlagen

Bijlagen worden geschreven naar de uitvoer zoals ze zijn. Geen enkele conversie (welke conversie dan ook) wordt uitgevoerd.

Hoofdstukken

Hoofdstukken worden geconverteerd naar een XML formaat. Dit formaat is hetzelfde welke mkvmerge(1) ondersteunt voor het lezen van hoofdstukken. Alternatief is een 'uitgekleedde versie' welke uitvoert naar het simpele OGM stijl formaat.

Tijd codes

Tijd codes worden het eerst gesorteerd en daarna gechreven als en tijdcode v2 volgbaar bestandformaat, klaar om aangevoerd te worden naar mkvmerge(1). Het extraheren naar andere formaten (v1, v3 en v4) zijn niet onderstend.

5. Verlaat codes

mkvextract(1) sluit af met drie afsluit codes:

6. Overslaan van speciale karakter(s) in tekst

Er zijn een paar plaatsen waar speciale karakters zouden of moeten worden overgeslagen. De regels voor het overslaan zijn simpel: elk karakter dat overgeslagen dient te worden wordt vervangen door een backslash "\" gevolgd door een ander karakter.

The rules are: ' ' (a space) becomes '\s', '"' (double quotes) becomes '\2', ':' becomes '\c', '#' becomes '\h' and '\' (a single backslash) itself becomes '\\'.

7. Environment variables

mkvextract(1) uses the default variables that determine the system's locale (e.g. LANG and the LC_* family). Additional variables:

Option Description
MKVTOOLNIX_DEBUG and its short form MTX_DEBUG

The content is treated as if it had been passed via the --debug option.

MKVTOOLNIX_ENGAGE and its short form MTX_ENGAGE

The content is treated as if it had been passed via the --engage option.

MKVTOOLNIX_OPTIONS and its short form MTX_OPTIONS

The content is split on white space. The resulting partial strings are treated as if it had been passed as command line options. If you need to pass special characters (e.g. spaces) then you have to escape them (see the section about escaping special characters in text).

8. Zie ook

mkvmerge(1), mkvinfo(1), mkvpropedit(1), mmg(1)

9. WWW

De laatste versie kan altijd gevonden worden op de MKVToolNix thuis basis.