mkvpropedit -- Modificeren van eigenschappen van een bestaande Matroska(tm) bestanden zonder een volledige samenvoeging

# 1. Beknopte inhoudsbeschrijving

mkvpropedit [options] {source-filename} {actions}

# 2. Beschrijving

Dit programma analyseert een bestaand Matroska(tm) bestand en kan sommige eigenschappen veranderen. Dan schrijft het deze veranderingen naar het bestaande bestand. Onder de eigenschappen die kunnen worden veranderd, zijn de segment informatie elementen (b.v. de titel) en de spoor koppen (b.v.de taal code, 'standaard spoor' markering of de naam).

Opties:

Option | Description
--- | ---
-l, --list-property-names | Lijst alle bekende bewerkbare eigenschap namen, hun type (string, integer, boolean etc) en een korte beschrijving. Nadien stopt het programma. Daarom hoeft de parameter source-filename niet te worden ingegeven.
-p, --parse-mode mode | Stelt de ontleedt mode in. De parameter 'mode' kan zijn of 'fast' (wat ook standaard is) of 'full'. De 'fast' mode ontleedt niet het gehele bestand, maar gebruikt de meta zoek elementen voor lokaliseren van de benodigde elementen van een bron bestand. In 99% van alle gevallen is dat voldoende. Maar voor bestanden die geen meta zoek element bevatten of zij die beschadigd zijn, zou de gebruiker moeten opgeven de 'full' ontleedt mode. Een volledige scan kan enige minuten duren terwijl een snelle scan slechts enkele seconden duurt.

Akties:

Option | Description
--- | ---
-e, --edit selector | Zet de Matroska(tm) bestand sectie (segment informatie of bepaalde sporen koppen) die alle volgen voeg toe, zet en verwijder acties die er op werken. Deze optie kan meerdere keren worden gebruikt om wijzigingen aan meer dan één element te maken. Standaard bewerkt mkvpropedit(1) de segment informatie sectie

Zie de sectie over bewerk selecteurs/kiezer voor een volledige beschrijving van de ingave's.

-a, --add name=value | Voegt eigenschap name toe met de waarde value. De eigenschap wordt toegevoegd zelfs wanneer deze reeds bestaat. Opmerking: dat de meeste eigenschappen uniek zijn en niet nog een keer mogen voorkomen.
-s, --set name=value | Zet alle voorgekomen van de eigenschap name naar de waarde value. Als een dergelijke eigenschap niet bestaat dan wordt deze toegevoegd.
-d, --delete name | Verwijdert alle voorgekomen eigenschappen name. Opmerking: sommige eigenschappen zijn vereist en kunnen niet worden verwijderd.
-t, --tags selector:filename | Add or replace tags in the file with the ones from filename or remove them if filename is empty. mkvpropedit(1) reads the same XML tag format that mkvmerge(1) reads as well. The selector must be one of the words all, global or track. For all mkvpropedit(1) will replace or remove all tags in a file. With global only global tags will be replaced or removed.

With track mkvpropedit(1) will replace tags for a specific track. Additionally the tags read from filename will be assigned to the same track. The track is specified in the same way edit selectors are specified (see below), e.g. --tags track:a1:new-audio-tags.xml.

-c, --chapters filename | Add or replace chapters in the file with the ones from filename or remove them if filename is empty. mkvpropedit(1) reads the same XML and simple chapter formats that mkvmerge(1) reads as well.

Andere opties:

Option | Description
--- | ---
--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 mkvpropedit --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 commandoregel te starten met een '#' de regels worden beschreven in de sectie over overslaan van tekst.

De commandoregel 'mkvpropedit source.mkv --edit track:a2 --set name=Comments' kon niet worden geconverteerd naar het volgende optie bestand:

    # Modify source.mkv
    source.mkv
    # Edit the second audio track
    --edit
    track:a2
    # and set the title to 'Comments'
    --set
    title=Comments

# 3. Bewerk selecteurs/kiezers

De optie --edit zet het Matroska(tm) bestand sectie (segment informatie of de bepaalde sporen knoppen) die alle volgen voeg toe, zet en verwijder acties die er op werken. Dit blijft geldig todat de volgende optie --edit is gevonden. Het argument naar deze optie wordt genoemd de bewerk selecteur/kiezer.

Standaard bewerkt mkvpropedit(1) de segment informatie sectie

## 3.1. Segment informatie

De segment informatie kan worden geselecteerd met één van deze drie woorden: 'info', 'segment_info' of 'segmentinfo'. het bevat eigenschappen zoals, segment titel of het segment UID.

## 3.2. Spoor koppen

Spoor koppen kunnen worden geselecteerd met een ietwat complexere selectie. Alle variaties starten met 'track:'. De spoor kop eigenschappen bevatten elementen zoals de taal code, 'default track' markering of het spoor naam.

Option | Description
--- | ---
track:n | Als de parameter n een nummer is dan zal het n'de spoor worden geselecteerd. De spoor volgorde is hezelfde als mkvmerge(1)'s --identify optie uitvoert.
track:t n | Als de parameter start met één karakter t gevolgd door een n dan zal het de n'de spoor van een specifiek spoor type geselecteerd worden. Het spoor type parameter t moet één van deze vier karakters zijn: 'a' voor een audio spoor, 'b' voor een knop spoor, 's' voor een ondertitel spoor en 'v' voor een video spoor. De spoor volgorde is hetzelfde wanneer mkvmerge(1)'s --identify de optie uitvoert.
track:=uid | Als de parameter start met een '=' gevolgd door een nummer uid dan het spoor van wie het spoor UID element gelijk is met uid. Spoor UID's kan verkregen worden met mkvinfo(1).
track:@number | Als de parameter start met een '@' gevolgd door een nummer number dan het spoor het van wie het spoornummer element gelijk is met number. Spoornummer kan verkregen worden met mkvinfo(1).

## 3.3. Opmerkingen

Door de aard van de spoor bewerk selecteur/kiezer, is het mogelijk dat verschillende selecteurs/kiezers eigenlijk overeenkomen met dezelfde spoor koppen. In zulke gevallen, zullen alle acties voor die bewerk selecteurs/kiezers in die volgorde worden gecombineerd en uitgevoerd worden in de volgorde waarin ze zijn opgegeven op de commandoregel.

# 4. Voorbeelden

Het volgende voorbeeld bewerkt een bestand genaamd 'film.mkv'. Het zet het segment titel en modificeert de taal code van een audio en ondertitel spoor. Opmerking: Ddat dit voorbeeld kan worden verkort door het weglaten van de eerste optie --edit omdat bewerken van het segment informatie element in elk geval standaard is voor alle opties welke worden gevonden voor de eerste --edit optie.

    $ mkvpropedit movie.mkv --edit info --set "title=The movie" --edit track:a1 --set language=fre --edit track:a2 --set language=ita

Het tweede voorbeeld, verwijdert de 'standaard spoor markering' van het eerste ondertitel spoor en plaatst het voor de tweede. Opmerking: Dat mkvpropedit(1), integenstelling tot mkvmerge(1), niet instelt de 'standaard spoor markering' van andere sporen naar '0' als het automatisch is ingesteld op '1' voor een verschillend spoor.

    $ mkvpropedit movie.mkv --edit track:s1 --set flag-default=0 --edit track:s2 --set flag-default=1

Replacing the tags for the second subtitle track in a file looks like this:

    $ mkvpropedit movie.mkv --tags track:s2:new-subtitle-tags.xml

Removing all tags requires leaving out the file name:

    $ mkvpropedit movie.mkv --tags all:

Replacing the chapters in a file looks like this:

    $ mkvpropedit movie.mkv --chapters new-chapters.xml

Removing all chapters requires leaving out the file name:

    $ mkvpropedit movie.mkv --chapters ''

# 5. Verlaat codes

mkvpropedit(1) verlaat met één van drie verlaat codes:

- 0 -- Deze verlaat code betekend dat het modificeren succesvol voltooid is.

- 1 -- In dit geval heeft mkvpropedit(1) minstends één waarschuwing uitgegeven, maar extractie is doorgegaan. Een waarschuwing wordt vooraf bepaald met de tekst 'Warning:'. Afhankelijk van de 'tegengekomen' kwesties kan het resltaat goed of slecht zijn. De gebruiker wordt geadviseerd, om zowel de waarschuwing als de resulterende bestanden te controleren.

- 2 -- Deze afsluit code wordt gebruikt nadat er een fout ontstond. mkvpropedit(1) breekt direct af na het geven van dit waarschuw bericht. Fout berichten, bereik van een verkeerd commandoregel argument over lees/schrijf fouten naar een 'gebroken' bestanden.

# 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

mkvpropedit(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), mkvextract(1), mmg(1)

# 9. WWW

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