Matroska(TM)\-Datei und \(:andert einige ihrer Eigenschaften\&. Dann schreibt es diese \(:Anderungen in die existierende Datei\&. Unter den Eigenschaften, die ge\(:andert werden k\(:onnen, sind die Segmentinformationselemente (z\&.B\&. der Titel) und die Spurenkopfdaten (z\&.B\&. der Sprachcode, der Scahlter \(FcStandardspur\(Fo oder der Name)\&.
.PP
Optionen:
.PP
\fB\-l\fR, \fB\-\-list\-property\-names\fR
.RS4
f\(:uhrt alle bekannten und bearbeitbaren Eigenschaftsnamen, ihren Typ (Zeichenkette, Ganzzahl, Boolean etc\&.) und eine kurze Beschreibung auf\&. Das Programm beendet sich anschlie\(ssend\&. Daher muss der Parameter
\fIQuelldateiname\fR
nicht mitgegeben werden\&.
.RE
.PP
\fB\-p\fR, \fB\-\-parse\-mode\fR\fIModus\fR
.RS4
setzt den Auswertungsmodus\&. Der Parameter
\fIModus\fR
kann entweder \(Fcfast\(Fo (was auch die Voreinstellung ist) oder \(Fcfull\(Fo sein\&. Der Modus \(Fcfast\(Fo wertet nicht die ganze Datei aus, benutzt aber die 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 den Auswertungsmodus \(Fcfull\(Fo benutzt\&. Ein vollst\(:andiger Scan einer Datei kann ein paar Minuten in Anspruch nehmen, w\(:ahrend ein schneller Scan nur Sekunden dauert\&.
.RE
.PP
Aktionen, die mit Eigenschaften von Spur\- und Segmentinformationen umgehen:
.PP
\fB\-e\fR, \fB\-\-edit\fR\fISelektor\fR
.RS4
setzt den
Matroska(TM)\-Dateiabschnitt (Segmentinformationen oder die Kopfdaten einer bestimmten Spur), mit der alle nachfolgenden
add\-,
set\- und
delete\-Aktionen arbeiten\&. Diese Option kann mehrfach benutzt werden, um \(:Anderungen an mehr als einem Element vorzunehmen\&.
.sp
Standardm\(:a\(ssig wird
\fBmkvpropedit\fR(1)
den Segmentinformationsabschnitt bearbeiten\&.
.sp
Eine vollst\(:andige Beschreibung der Syntax finden Sie im Abschnitt \(:uber
Selektoren zur Bearbeitung\&.
.RE
.PP
\fB\-a\fR, \fB\-\-add\fR\fIName\fR=\fIWert\fR
.RS4
f\(:ugt die Eigenschaft
\fIName\fR
mit dem Wert
\fIWert\fR
hinzu\&. Die Eigenschaft wird selbst dann hinzugef\(:ugt, wenn eine derartige Eigenschaft bereits existiert\&. Beachten Sie, dass die meisten Eigenschaften eindeutig sind und nicht \(:ofter als einmal auftreten k\(:onnen\&.
.RE
.PP
\fB\-s\fR, \fB\-\-set\fR\fIName\fR=\fIWert\fR
.RS4
setzt alle Vorkommen der Eigenschaft
\fIName\fR
auf den Wert
\fIWert\fR\&. Falls keine derartige Eigenschaft existiert, wird sie hinzugef\(:ugt\&.
.RE
.PP
\fB\-d\fR, \fB\-\-delete\fR\fIName\fR
.RS4
l\(:oscht alle Vorkommen der Eigenschaft
\fIName\fR\&. Beachten Sie, dass einige Eigenschaften ben\(:otigt werden und nicht gel\(:oscht werden k\(:onnen\&.
\fIDateiname\fR\&. Falls mehr als ein existierender Anhang zum
\fISelektor\fR
passt, werden alle ihre Inhalte durch den Inhalt von
\fIDateiname\fR
ersetzt\&.
.sp
Der
\fISelektor\fR
kann eine von vier Formen haben\&. Sie werden unten im Abschnitt
Anhangauswahlpunkte
erkl\(:art\&.
.sp
Falls die Option
\fB\-\-attachment\-name\fR
vor dieser Option benutzt wurde, wird ihr Wert als Name des ersetzten Anhangs verwendet\&. Andernfalls wird der Name nicht ge\(:andert\&.
.sp
Falls die Option
\fB\-\-attachment\-mime\-type\fR
vor dieser Option benutzt wurde, wird ihr Wert als MIME\-Typ des ersetzten Anhangs verwendet\&. Andernfalls wird der MIME\-Typ nicht ge\(:andert\&.
.sp
Falls die Option
\fB\-\-attachment\-description\fR
vor dieser Option benutzt wurde, wird ihr Wert als Beschreibung des ersetzten Anhangs verwendet\&. Andernfalls wird die Beschreibung nicht ge\(:andert\&.
.RE
.PP
\fB\-\-delete\-attachment\fR\fISelektor\fR
.RS4
l\(:oscht einen oder mehrere Anh\(:ange, die zum
\fISelektor\fR
passen\&.
.sp
Der
\fISelektor\fR
kann eine von vier Formen haben\&. Sie werden unten im Abschnitt
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\&.
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
\fBmkvpropedit \-\-engage list\fR
abgefragt werden\&. Diese Funktionalit\(:aten sind nicht f\(:ur die Verwendung in Alltagssituationen gedacht\&.
Schaltet den Modus f\(:ur graphische Benutzeroberfl\(:achen an\&. In diesem Modus k\(:onnen auf bestimmte Art formatierte Zeilen ausgegeben werden, die einem aufrufenden Programm mitteilen, was
\fBmkvmerge\fR(1)
gerade tut\&. Diese Nachrichten haben das folgende Format: \*(Aq#GUI#Nachricht\*(Aq\&. Der Nachricht folgen potenziell Schl\(:ussel/Wert\-Paare wie z\&.B\&. \*(Aq#GUI#Nachricht#schluessel1=wert1#schluessel2=wert2\&...\*(Aq\&. Weder die Nachricht selber noch die Schl\(:ussel werden jemals \(:ubersetzt sondern immer in Englisch ausgegeben\&.
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\fBmkvpropedit Quelle\&.mkv \-\-edit track:a2 \-\-set name=Kommentare\fR\(Fo kann in die folgende Optionsdatei umgewandelt werden:
.sp
.ifn\{\
.RS4
.\}
.nf
# Quelle\&.mkv \(:andern
Quelle\&.mkv
# die zweite Tonspur bearbeiten
\-\-edit
track:a2
# und den Titel auf \(FcKommentare\(Fo setzen
\-\-set
name=Kommentare
.fi
.ifn\{\
.RE
.\}
.RE
.SH"SELEKTOREN ZUR BEARBEITUNG"
.PP
Die Option
\fB\-\-edit\fR
setzt den
Matroska(TM)\-Dateiabschnitt (Segmentinformationen oder die Kopfdaten einer bestimmten Spur) so, dass alle nachfolgenden
add\-,
set\- und
delete\-Aktionen damit arbeiten\&. Dies bleibt g\(:ultig, bis die n\(:achste
\fB\-\-edit\fR\-Option gefunden wird\&. Das Argument f\(:ur diese Option wird Selektor zur Bearbeitung genannt\&.
.PP
Standardm\(:a\(ssig wird
\fBmkvpropedit\fR(1)
den Segmentinformationsabschnitt bearbeiten\&.
.SS"Segmentinformation"
.PP
Die Segmentinformation kann mit einem dieser drei W\(:orter ausgew\(:ahlt werden: \(Fcinfo\(Fo, \(Fcsegment_info\(Fo oder \(Fcsegmentinfo\(Fo\&. Sie enth\(:alt Eigenschaften wie den Segmenttitel oder die
UID
des Segments\&.
.SS"Spurenkopfdaten"
.PP
Spurenkopfdaten k\(:onnen mit einem etwas komplexeren Selektor ausgew\(:ahlt werden\&. Alle Varianten beginnen mit \(Fctrack:\(Fo\&. Die Spurenkopfdaten beinhalten Elemente wie den Sprachcode, den \(FcStandardspur\(Fo\-Schalter oder den Namen der Spur\&.
.PP
\fBtrack:\fR\fIn\fR
.RS4
Falls der Parameter
\fIn\fR
eine Zahl ist, wird die
\fIn\fR\&. Spur ausgew\(:ahlt\&. Die Reihenfolge der Spuren ist dieselbe, die die Option
\fB\-\-identify\fR
von
\fBmkvmerge\fR(1)
ausgibt\&.
.sp
Die Nummerierung beginnt bei 1\&.
.RE
.PP
\fBtrack:\fR\fIt\fR\fIn\fR
.RS4
Falls der Parameter mit einem einzelnen Zeichen
\fIt\fR
gefolgt von einem
\fIn\fR
beginnt, wird die
\fIn\fR\&. Spur eines speziellen Spurtyps ausgew\(:ahlt\&. Der Spurtypparameter
\fIt\fR
muss eines der folgenden Zeichen sein: \(Fca\(Fo f\(:ur eine Tonspur, \(Fcb\(Fo f\(:ur eine Button\-Spur \(Fcs\(Fo f\(:ur eine Untertitelspur und \(Fcv\(Fo f\(:ur eine Videospur\&. Die Reihenfolge der Spuren ist diesselbe wie die der Ausgabe der
\fBmkvmerge\fR(1)\-Option
\fB\-\-identify\fR\&.
.sp
Die Nummerierung beginnt bei 1\&.
.RE
.PP
\fBtrack:\fR=\fIUID\fR
.RS4
Falls der Parameter mit einem \(Fc=\(Fo gefolgt von einer Zahl
\fIUID\fR
beginnt, wird die Spur ausgew\(:ahlt, deren Spur\-UID
dieser
\fIUID\fR
entspricht\&. Spur\-UIDs k\(:onnen mit
\fBmkvinfo\fR(1)
abgefragt werden\&.
.RE
.PP
\fBtrack:\fR@\fINummer\fR
.RS4
Falls der Parameter mit einem \(Fc@\(Fo gefolgt von einer Nummer
\fINummer\fR
beginnt, wird die Spur ausgew\(:ahlt, deren Spurnummer dieser
\fINummer\fR
entspricht\&. Spurnummern k\(:onnen mit
\fBmkvinfo\fR(1)
abgefragt werden\&.
.RE
.SS"Hinweise"
.PP
Aufgrund der Natur der Spurauswahlpunkte zur Bearbeitung ist es m\(:oglich, dass tats\(:achlich mehrere Selektoren zu den Kopfdaten derselben Spur passen\&. In diesen F\(:allen werden alle Aktionen f\(:ur diese Selektoren zur Bearbeitung kombiniert und in der Reihenfolge ausgef\(:uhrt, in der sie auf der Befehlszeile angegeben wurden\&.
.SH"SELEKTOREN F\(:UR ANH\(:ANGE"
.PP
Ein Selektor f\(:ur Anh\(:ange wird in den beiden Aktionen
\fB\-\-replace\-attachment\fR
und
\fB\-\-delete\-attachment\fR
benutzt\&. Er kann eine der folgenden vier Formen haben:
.sp
.RS4
.ien\{\
\h'-04' 1.\h'+01'\c
.\}
.el\{\
.sp-1
.IP" 1."4.2
.\}
Auswahl \(:uber die ID des Anhangs\&. In dieser Form ist der Selektor einfach eine Nummer, die ID des Anhangs, wie sie vom Identifizierungsbefehl von
\fBmkvmerge\fR(1)
ausgegeben wird\&.
.RE
.sp
.RS4
.ien\{\
\h'-04' 2.\h'+01'\c
.\}
.el\{\
.sp-1
.IP" 2."4.2
.\}
Auswahl \(:uber die UID (eindeutig ID) des Anhangs\&. In dieser Form ist der Selektor das Gleichheitszeichen
=
gefolgt von einer Nummer, der eindeutigen ID des Anhangs, wie sie vom Identifizierungsbefehl von
\fBmkvmerge\fR(1)
ausgegeben wird\&.
.RE
.sp
.RS4
.ien\{\
\h'-04' 3.\h'+01'\c
.\}
.el\{\
.sp-1
.IP" 3."4.2
.\}
Auswahl \(:uber den Namen des Anhangs\&. In dieser Form ist der Selektor das Wort
name:
gefolgt vom existierenden Namen des Anhangs\&. Falls dieser Selektor mit
\fB\-\-replace\-attachment\fR
benutzt wird, m\(:ussen Doppelpunkte innerhalb des Namens als
\ec
maskiert werden\&.
.RE
.sp
.RS4
.ien\{\
\h'-04' 4.\h'+01'\c
.\}
.el\{\
.sp-1
.IP" 4."4.2
.\}
Auswahl \(:uber den MIME\-Typ\&. In dieser Form ist der Selektor das Wort
mime\-type:
gefolgt vom existierenden MIME\-Typ des Anhangs\&. Falls dieser Selektor mit
\fB\-\-replace\-attachment\fR
benutzt wird, m\(:ussen Doppelpunkte innerhalb des MIME\-Typs als
\ec
maskiert werden\&.
.RE
.SH"BEISPIELE"
.PP
Das folgende Beispiel bearbeitet eine Datei namens \(FcFilm\&.mkv\(Fo\&. Es setzt den Segmenttitel und \(:andert den Sprachcode einer Ton\- und Untertitelspur\&. Beachten Sie, dass dieses Beispiel durch Weglassen der ersten Option
\fB\-\-edit\fR
verk\(:urzt werden kann, da das Bearbeiten der Segmentinformation ohnehin f\(:ur alle Optionen, die vor dem ersten
Das zweite Beispiel entfernt den Standardspurschalter\(Fo von der ersten Untertitelspur und setzt ihn f\(:ur die zweite\&. Beachten Sie, dass
\fBmkvpropedit\fR(1)
im Gegensatz zu
\fBmkvmerge\fR(1)
nicht den \(FcStandardspurschalter\(Fo von anderen Spuren auf \(Fc0\(Fo setzt, falls es f\(:ur eine andere Spur automatisch auf \(Fc1\(Fo gesetzt wird\&.
beendet sich mit einem von drei R\(:uckgabewerten:
.sp
.RS4
.ien\{\
\h'-04'\(bu\h'+03'\c
.\}
.el\{\
.sp-1
.IP\(bu2.3
.\}
\fB0\fR
\(en dieser R\(:uckgabewert bedeutet, dass die \(:Anderung 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
\fBmkvpropedit\fR(1)
mindestens eine Warnung ausgegeben, das \(:Andern wurde aber fortgesetzt\&. Einer Warnung wird der Text \(FcWarning:\(Fo vorangestellt\&. Abh\(:angig von den autgetretenen Problemen k\(:onnen die resultierenden Dateien in Ordnung sein oder nicht\&. 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\&.
\fBmkvpropedit\fR(1)
wird gleich nach der Ausgabe der Fehlermeldung abgebrochen\&. Fehlermeldungen reichen von falschen Befehlszeilenargumenten \(:uber Lese\-/Schreibfehler bis hin zu besch\(:adigten Dateien\&.
F\(:ur eine tiefer gehende Diskussion dar\(:uber, wie die Programme in der MKVToolNix\-Sammlung die Umwandlung von Zeichens\(:atzen, Eingabe\-/Ausgabecodierung, Kommandozeilenzeichens\(:atze und Konsolenzeichens\(:atze handhaben, sei auf den Abschnitt \(FcUmwandlungen von Textdateien und Zeichens\(:atzen\(Fo in der Handbuchseite von
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
\fBmkvpropedit\fR(1)
verwendet die Standardvariablen, die die Locale des System bestimmen (d\&.h\&.
\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)\&.