Matroska(TM)\-Datei in andere n\(:utzliche Formate\&. Das erste Argument
\fBModus\fR
teilt
\fBmkvextract\fR(1)
mit, was zu extrahieren ist\&. Derzeit wird das Extrahieren von
Spuren,
Tags,
Anh\(:angen,
Kapiteln,
Cuesheets
und
Zeitstempel
unterst\(:utzt\&. Das zweite Argument ist der Name der Quelldatei\&. Es muss eine Matroska\-Datei sein\&. Alle folgenden Argumente sind Optionen und Extrahierungsangaben, die jeweils vom Modus abh\(:angen\&.
.SS"Gemeinsame Optionen"
.PP
Die folgenden Optionen sind in allen Modi verf\(:ugbar und werden nur einmal in diesem Abschnitt beschrieben\&.
.PP
\fB\-f\fR, \fB\-\-parse\-fully\fR
.RS4
setzt den Auswertungsmodus auf \(Fcfull\(Fo\&. Der Standardmodus wertet nicht die ganze Datei aus, benutzt aber Metasuchelemente zum Orten der ben\(:otigten Elemente der Quelldatei\&. In 99% der F\(:alle reicht dies\&. Aber f\(:ur Dateien, die keine Metasuchelemente enthalten oder besch\(:adigt sind, kann es notwendig sein, dass der Anwender diesen Modus benutzt\&. Ein vollst\(:andiger Scan einer Datei kann ein paar Minuten in Anspruch nehmen, w\(:ahrend ein schneller Scan nur Sekunden dauert\&.
.RE
.PP
\fB\-\-command\-line\-charset\fR\fIZeichensatz\fR
.RS4
setzt den Zeichensatz, um auf der Befehlszeile angegebene Zeichenketten umzuwandeln\&. Voreinstellung ist der Zeichensatz der aktuellen Locale des Systems\&.
.RE
.PP
\fB\-\-output\-charset\fR\fIZeichensatz\fR
.RS4
setzt den Zeichensatz, in den Zeichenketten zur Ausgabe umgewandelt werden\&. Voreinstellung ist der Zeichensatz der aktuellen Locale des Systems\&.
\fIDateiname\fR, statt auf die Konsole\&. Obwohl dies einfach durch Ausgabeumleitung erledigt werden kann, gibt es F\(:alle, in denen diese Option ben\(:otigt wird: wenn das Terminal die Ausgabe vor dem Schreiben in eine Datei neu auswertet\&. Der mit
\fB\-\-output\-charset\fR
gesetzte Zeichensatz wird dabei ber\(:ucksichtigt\&.
.RE
.PP
\fB\-\-ui\-language\fR\fICode\fR
.RS4
erzwingt, dass die \(:Ubersetzungen f\(:ur die Sprache
\fICode\fR
benutzt werden (z\&.B\&. \(Fcde_DE\(Fo f\(:ur die deutschen \(:Ubersetzungen)\&. Vorzugsweise sollten jedoch die Umgebungsvariablen
\fILANG\fR,
\fILC_MESSAGES\fR
und
\fILC_ALL\fR
benutzt werden\&. Die Eingabe von \(Fclist\(Fo als
\fICode\fR
wird
\fBmkvextract\fR(1)
veranlassen, eine Liste der verf\(:ugbaren \(:Ubersetzungen auszugeben\&.
.RE
.PP
\fB\-\-debug\fR\fIThema\fR
.RS4
schaltet die Fehlersuche f\(:ur eine bestimmte Funktionalit\(:at ein\&. Diese Option ist nur f\(:ur Entwicker n\(:utzlich\&.
.RE
.PP
\fB\-\-engage\fR\fIFunktionalit\(:at\fR
.RS4
schaltet experimentelle Funktionalit\(:aten ein\&. Eine Liste verf\(:ugbarer Funktionalit\(:aten kann mit
\fBmkvextract \-\-engage list\fR
abgefragt werden\&. Diese Funktionalit\(:aten sind nicht f\(:ur die Verwendung in Alltagssituationen gedacht\&.
.RE
.PP
\fB\-v\fR, \fB\-\-verbose\fR
.RS4
detaillierte Ausgabe, zeigt alle wichtigen
Matroska(TM)\-Elemente, so wie sie gelesen wurden\&.
.RE
.PP
\fB\-h\fR, \fB\-\-help\fR
.RS4
zeigt Benutzungsinformationen und beendet sich\&.
.RE
.PP
\fB\-V\fR, \fB\-\-version\fR
.RS4
zeigt Versionsinformationen und beendet sich\&.
.RE
.PP
\fB\-\-check\-for\-updates\fR
.RS4
pr\(:uft online durch Herunterladen der URL
\m[blue]\fBhttp://mkvtoolnix\-releases\&.bunkus\&.org/latest\-release\&.xml\fR\m[], ob es neue Ver\(:offentlichungen gibt\&. Vier Zeilen werden im Stil
Schl\(:ussel=Wert
ausgegeben: die URL, von der die Informationen bezogen wurden (Schl\(:ussel
version_check_url), die aktuell laufende Version (Schl\(:ussel
running_version), die Version der neusten Ver\(:offentlichung (Schl\(:ussel
available_version) und die Download\-URL (Schl\(:ussel
download_url)\&.
.sp
Anschlie\(ssend beendet sich das Programm mit einem R\(:uckgabewert von 0, falls keine neuere Ver\(:offentlichung verf\(:ugbar ist, mit 1, wenn eine neuere Ver\(:offentlichung verf\(:ugbar ist und mit 2, falls ein Fehler auftritt (z\&.B\&., wenn die Aktualisierungsinformationen nicht abgefragt werden konnten)\&.
.sp
Diese Option ist nur verf\(:ugbar, falls das Programm mit Unterst\(:utzung f\(:ur Libcurl gebaut wurde\&.
.RE
.PP
\fB@\fR\fIOptionsdatei\fR
.RS4
liest zus\(:atzliche Befehlszeilenargumente aus der Datei
\fIOptionsdatei\fR\&. Zeilen, deren erstes Nichtleerraumzeichen ein Rautenzeichen (\(Fc#\(Fo) ist, werden als Kommentare betrachtet und ignoriert\&. Leerr\(:aume am Anfang und Ende einer Zeile werden abgeschnitten\&. Jede Zeile darf genau eine Option enthalten\&.
.sp
Verschiedene Zeichen k\(:onnen maskiert werden, z\&.B\&. falls Sie m\(:ochten, dass eine Nichtkommentarzeile mit einem \(Fc#\(Fo beginnt\&. Die Regeln werden im
Abschnitt \(:uber Maskieren von Text
beschrieben\&.
.sp
Die Befehlszeile \(Fc\fBmkvextract tracks Quelle\&.mkv \-\-raw 1:Ziel\&.raw\fR
kann in die folgende Optionsdatei umgewandelt werden:
Die folgenden Befehlszeilenoptionen sind f\(:ur jede Spur im Extrahierungsmodus \(Fctracks\(Fo verf\(:ugbar\&. Sie m\(:ussen vor der Spurenspezifikation, auf die sie angewandt werden sollen, erscheinen (siehe unten)\&.
.PP
\fB\-c\fR\fIZeichensatz\fR
.RS4
setzt den Zeichensatz in den die n\(:achste Textuntertitelspur umgewandelt werden soll\&. Nur g\(:ultig, falls die n\(:achste Spur\-ID auf eine Untertitelspur verweist\&. Voreinstellung ist UTF\-8\&.
.RE
.PP
\fB\-\-blockadd\fR\fIStufe\fR
.RS4
beh\(:alt nur die BlockAdditions bis hinauf zu dieser Stufe\&. Standard\(:a\(ssig werden alle Stufen behalten\&. Diese Option beeinflusst nur einge Codec\-Arten wie WAVPACK4\&.
.RE
.PP
\fB\-\-cuesheet\fR
.RS4
veranlasst
\fBmkvextract\fR(1)
ein
CUEsheet aus den Kapitelinformationen zu extrahieren und Daten f\(:ur die folgende Spur in einer Datei zu kennzeichnen, deren Name der Ausgabename der Spur mit angeh\(:angtem \(Fc\&.cue\(Fo ist\&.
.RE
.PP
\fB\-\-raw\fR
.RS4
extrahiert die rohen Daten in eine Datei ohne irgendwelche umgebenden Container\-Daten\&. Im Gegensatz zum Schalter
\fB\-\-fullraw\fR
veranlasst dieser Schalter nicht, dass der Inhalt des Elements
CodecPrivate
in die Datei geschrieben wird\&. Dieser Modus funktioniert mit allen
CodecIDs, sogar mit denen, die
\fBmkvextract\fR(1)
ansonsten nicht unterst\(:utzt, aber die resultierenden Dateien sind m\(:oglicherweise nicht benutzbar\&.
.RE
.PP
\fB\-\-fullraw\fR
.RS4
Extrahiert die rohen Daten in eine Datei ohne irgendwelche umgebenden Container\-Daten\&. Der Inhalt des Elements
CodecPrivate
wird in die erste Datei geschrieben, falls die Spur solch ein Kopfelement enth\(:alt\&. Dieser Modus funktioniert mit allen
CodecIDs, sogar mit denen, die
\fBmkvextract\fR(1)
ansonsten nicht unterst\(:utzt, aber die resultierenden Dateien sind m\(:oglicherweise nicht benutzbar\&.
.RE
.PP
\fITID:Ausgabename\fR
.RS4
veranlasst das Extrahieren der Spur mit der ID
\fITID\fR
in die Datei
\fIAusgabename\fR, falls eine derartige Spur in der Quelldatei existiert\&. Diese Option kann mehrfach angegeben werden\&. Die Spur\-IDs sind dieselben wie die, die durch
\fBmkvmerge\fR(1)s Option
\fB\-\-identify\fR
ausgegeben werden\&.
.sp
Jeder Ausgabename sollte nur einmal benutzt werden\&. Eine Ausnahme bilden RealAudio\- und RealVideo\-Spuren\&. Falls Sie den gleichen Namen f\(:ur unterschiedliche Spuren verwenden, dann werden diese Spuren in der selben Datei gespeichert\&. Beispiel:
exportiert die Kapitelinformationen in das einfache, von den
OGM\-Werkzeugen benutzte Format (CHAPTER01=\&..., CHAPTER01NAME=\&...)\&. In diesem Modus m\(:ussen einige Informationen verworfen werden\&. Standardm\(:a\(ssig werden die Kapitel im
XML\-Format ausgegeben\&.
.RE
.PP
Die extrahierten Kapitel werden auf die Konsole geschrieben, falls die Ausgabe nicht umgeleitet ist (Einzelheiten finden Sie im Abschnitt \(:uber
Die extrahierten Zeitstempel werden auf die Konsole geschrieben, falls die Ausgabe nicht umgeleitet ist (Einzelheiten finden Sie im Abschnitt \(:uber
Ausgabeumleitung)\&.
.PP
\fITID:Ausgabename\fR
.RS4
veranlasst das Extrahieren der Zeitstempel f\(:ur die Spur mit der ID
\fITID\fR
in die Datei
\fIAusgabename\fR, falls eine derartige Spur in der Quelldatei existiert\&. Diese Option kann mehrfach angegeben werden\&. Die IDs der Spuren sind dieselben wie die, die durch
\fBmkvextract\fR(1), die extrahierten Daten auf die Konsole zu schreiben\&. Es gibt im Allgemeinen zwei M\(:oglichkeiten, diese Dateien in eine Datei zu schreiben: Eine wird durch die Shell bereitgestellt, eine durch
\fBmkvextract\fR(1)
selbst\&.
.PP
Der in die Shell integrierte Umleitungsmechanismus wird verwendet, indem \(Fc> Ausgabedateiname\&.erw
an die Befehlszeile angeh\(:angt wird\&. Beispiel:
.sp
.ifn\{\
.RS4
.\}
.nf
$ mkvextract tags Quelle\&.mkv > Tags\&.xml
.fi
.ifn\{\
.RE
.\}
.PP
Die
\fBmkvextract\fR(1)\-eigene Umleitung wird mit der Option
manchmal Sonderzeichen vor dem Schreiben in die Ausgabedatei interpretiert, was zu einer besch\(:adigten Ausgabe f\(:uhrt\&.
.sp.5v
.RE
.SH"AUSGABEDATEIFORMATE"
.PP
Die Entscheidung \(:uber das Ausgabeformat basiert auf dem Spurtyp, nicht auf der f\(:ur den Ausgabedateinamen benutzen Dateiendung\&. Die folgenden Spurtypen werden derzeit unterst\(:utzt:
.PP
V_MPEG4/ISO/AVC
.RS4
H\&.264\-/AVC\-Videospuren werden in einfache
H\&.264\-Datenstr\(:ome geschrieben, die sp\(:ater z\&.B\&. mit
SUB\-Dateien geschrieben, zusammen mit den jeweiligen Indexdateien als
IDX\-Dateien\&.
.RE
.PP
S_TEXT/USF
.RS4
USF\-Textuntertitel werden als
USF\-Dateien geschrieben\&.
.RE
.PP
S_HDMV/PGS
.RS4
PGS\-Untertitel werden als
SUP\-Dateien geschrieben\&.
.RE
.PP
Tags
.RS4
Tags werden in ein
XML\-Format umgewandelt\&. Dieses Format ist dasselbe, das
\fBmkvmerge\fR(1)
zum Lesen der Tags unterst\(:utzt\&.
.RE
.PP
Anh\(:ange
.RS4
Anh\(:ange werden, so wie sie sind, in ihre Ausgabedatei geschrieben\&. Es wird keine Umwandlung in irgendeiner Art durchgef\(:uhrt\&.
.RE
.PP
Kapitel
.RS4
Kapitel werden in ein
XML\-Format umgewandelt\&. Dieses Format ist dasselbe, das
\fBmkvmerge\fR(1)
zum Lesen der Kapitel unterst\(:utzt\&. Alternativ kann eine heruntergek\(:urzte Version im einfachen
OGM\-Formatstil ausgegeben werden\&.
.RE
.PP
Zeitstempel
.RS4
Zeitstempel werden zuerst sortiert und dann als eine Datei ausgegeben, die konform zum Zeitstempelformat v2 und fertig zur Eingabe in
\fBmkvmerge\fR(1)
ist\&. Das Extrahieren in andere Formate (v1, v3 und v4) wird nicht unterst\(:utzt\&.
.RE
.SH"R\(:UCKGABEWERTE"
.PP
\fBmkvextract\fR(1)
wird mit einem von drei R\(:uckgabewerten beendet:
.sp
.RS4
.ien\{\
\h'-04'\(bu\h'+03'\c
.\}
.el\{\
.sp-1
.IP\(bu2.3
.\}
\fB0\fR
\(en dieser R\(:uckgabewert bedeutet, dass das Extrahieren erfolgreich abgeschlossen wurde\&.
.RE
.sp
.RS4
.ien\{\
\h'-04'\(bu\h'+03'\c
.\}
.el\{\
.sp-1
.IP\(bu2.3
.\}
\fB1\fR
\(en in diesem Fall hat
\fBmkvextract\fR(1)
mindestens eine Warnung ausgegeben, das Extrahieren wurde aber fortgesetzt\&. Einer Warnung wird der Text \(FcWarning:\(Fo vorangestellt\&. Abh\(:angig von den autgetretenen Problemen k\(:onnen die resultierenden Dateien in Ordnung oder nicht sein\&. Dem Anwender wird nachdr\(:ucklich geraten, sowohl die Warnung als auch die resultierenden Dateien zu \(:uberpr\(:ufen\&.
.RE
.sp
.RS4
.ien\{\
\h'-04'\(bu\h'+03'\c
.\}
.el\{\
.sp-1
.IP\(bu2.3
.\}
\fB2\fR
\(en dieser R\(:uckgabewert wird benutzt, nachdem ein Fehler aufgetreten ist\&.
\fBmkvextract\fR(1)
wird gleich nach der Ausgabe der Fehlermeldung abgebrochen\&. Fehlermeldungen reichen von falschen Befehlszeilenargumenten \(:uber Lese\-/Schreibfehler bis hin zu besch\(:adigten Dateien\&.
.RE
.SH"SONDERZEICHEN IN TEXT MASKIEREN"
.PP
Es gibt ein paar Stellen, an denen Sonderzeichen in Text maskiert werden m\(:ussen oder sollen\&. Die Regeln zum Maskieren sind einfach: Jedes Zeichen, das maskiert werden soll, wird durch einen R\(:uckw\(:artsschr\(:agstrich gefolgt von einem weiteren Zeichen ersetzt\&.
.PP
Die Regeln lauten: \(Fc\(Fo (ein Leerzeichen) wird \(Fc\es\(Fo, \(Fc"\(Fo (doppeltes Anf\(:uhrungszeichen) wird \(Fc\e2\(Fo, \(Fc:\(Fo wird \(Fc\ec\(Fo, \(Fc#\(Fo wird \(Fc\eh\(Fo und \(Fc\e\(Fo (ein einfacher R\(:uckw\(:artsschr\(:agstrich selbst) wird \(Fc\e\e\(Fo\&.
.SH"UMGEBUNGSVARIABLEN"
.PP
\fBmkvextract\fR(1)
verwendet die Standardvariablen, um die Locale des Systems zu bestimmen (z\&.B\&.
\fILANG\fR
und die
\fILC_*\fR\-Familie)\&. Zus\(:atzliche Variablen:
.PP
\fIMKVTOOLNIX_DEBUG\fR und ihre Kurzform \fIMTX_DEBUG\fR
.RS4
Der Inhalt wird behandelt, als ob er mit der Option
\fB\-\-debug\fR
\(:ubergeben worden w\(:are\&.
.RE
.PP
\fIMKVTOOLNIX_ENGAGE\fR und ihre Kurzform \fIMTX_ENGAGE\fR
.RS4
Der Inhalt wird behandelt, als ob er mit der Option
\fB\-\-engage\fR
\(:ubergeben worden w\(:are\&.
.RE
.PP
\fIMKVTOOLNIX_OPTIONS\fR und ihre Kurzform \fIMTX_OPTIONS\fR
.RS4
Der Inhalt wird bei Leerr\(:aumen aufgeteilt\&. Die resultierenden Teilzeichenketten werden behandelt, als ob sie als Befehlszeilenoptionen \(:ubergeben worden w\(:aren\&. Falls Sie Sonderzeichen \(:ubergeben m\(:ochten (z\&.B\&. Leerzeichen), m\(:ussen Sie sie maskieren (siehe
den Abschnitt \(:uber Maskieren von Sonderzeichen in Text)\&.