MKVPROPEDIT(1) Uzivatelske prikazy MKVPROPEDIT(1) NAME mkvpropedit - Uprava vlastnosti existujicich souboru Matroska(TM) bez uplneho opetovneho multiplexovani PrEHLED mkvpropedit [options] {source-filename} {actions} POPIS Tento program analyzuje existujici soubor Matroska(TM) a upravi nektere jeho vlastnosti. Zmeny pote zapise do existujiciho souboru. Mezi upravitelne vlastnosti patri prvky informaci o useku (napr. nazev) a hlavicky stop (napr. kod jazyka, priznak ,,vychozi stopa" nebo nazev). Volby: -l, --list-property-names Vypise vsechny zname a upravitelne nazvy vlastnosti, jejich typ (retezec, cele cislo, logicka hodnota atd.) a strucny popis. Program pote skonci. Parametr source-filename proto neni nutne zadavat. -p, --parse-mode mode Nastavi rezim analyzy. Parametr 'mode' muze mit hodnotu 'fast' (ta je zaroven vychozi) nebo 'full'. Rezim 'fast' neanalyzuje cely soubor, ale k nalezeni pozadovanych prvku zdrojoveho souboru pouziva prvky hlavicky vyhledavani. V 99 % pripadu to staci. U souboru, ktere prvky hlavicky vyhledavani neobsahuji nebo jsou poskozene, vsak uzivatel mozna bude muset nastavit rezim analyzy 'full'. Uplna kontrola souboru muze trvat nekolik minut, zatimco rychla kontrola trva jen nekolik sekund. Akce pracujici s vlastnostmi hlavicek stop a informaci o useku: -e, --edit selector Nastavi oddil souboru Matroska(TM) (informace o useku nebo hlavicky urcite stopy), se kterym budou pracovat vsechny nasledujici akce pridani, nastaveni a odstraneni. Tuto volbu lze pouzit vicekrat, a upravit tak vice nez jeden prvek. Ve vychozim nastaveni bude mkvpropedit(1) upravovat oddil informaci o useku. Uplny popis syntaxe najdete v oddilu o selektorech uprav. -a, --add name=value Prida vlastnost name s hodnotou value. Vlastnost se prida i v pripade, ze uz takova vlastnost existuje. Vetsina vlastnosti je jedinecna a nemuze se vyskytovat vicekrat. -s, --set name=value Nastavi vsechny vyskyty vlastnosti name na hodnotu value. Pokud takova vlastnost neexistuje, prida se. -d, --delete name Odstrani vsechny vyskyty vlastnosti name. Nektere vlastnosti jsou povinne a nelze je odstranit. Akce pracujici se stitky a kapitolami: -t, --tags selector:filename Prida nebo nahradi stitky v souboru stitky ze souboru filename, pripadne je odstrani, je-li filename prazdny. mkvpropedit(1) nacita stejny format stitku XML jako mkvmerge(1). Parametr selector musi byt jedno ze slov all, global nebo track. Pri hodnote all mkvpropedit(1) nahradi nebo odstrani vsechny stitky v souboru. Pri hodnote global nahradi nebo odstrani pouze globalni stitky. Pri hodnote track mkvpropedit(1) nahradi stitky konkretni stopy. Stitky nactene ze souboru filename budou navic prirazeny stejne stope. Stopa se zadava stejnym zpusobem jako selektory uprav (viz nize), napriklad --tags track:a1:new-audio-tags.xml. --add-track-statistics-tags Vypocita statistiky vsech stop v souboru a prida pro ne nove statisticke stitky. Pokud soubor takove stitky jiz obsahuje, aktualizuji se. --delete-track-statistics-tags Odstrani ze souboru vsechny existujici statisticke stitky stop. Pokud soubor statisticke stitky stop neobsahuje, nezmeni se. -c, --chapters filename Prida nebo nahradi kapitoly v souboru kapitolami ze souboru filename, pripadne je odstrani, je-li filename prazdny. mkvpropedit(1) nacita stejne formaty XML a jednoduchych kapitol jako mkvmerge(1). Akce pro praci s prilohami: --add-attachment filename Prida novou prilohu ze souboru filename. Byla-li pred touto volbou pouzita volba --attachment-name, pouzije se jeji hodnota jako nazev nove prilohy. Jinak se nazev odvodi z parametru filename. Byla-li pred touto volbou pouzita volba --attachment-mime-type, pouzije se jeji hodnota jako typ MIME nove prilohy. Jinak se typ automaticky zjisti z obsahu souboru filename. Byla-li pred touto volbou pouzita volba --attachment-description, pouzije se jeji hodnota jako popis nove prilohy. Jinak se zadny popis nenastavi. Byla-li pred touto volbou pouzita volba --attachment-uid, pouzije se jeji hodnota jako UID nove prilohy. Jinak se automaticky vytvori nahodne UID. --replace-attachment selector:filename Nahradi jednu ci vice priloh odpovidajicich parametru selector souborem filename. Odpovida-li parametru selector vice existujicich priloh, obsah vsech se nahradi obsahem souboru filename. Parametr selector muze mit jeden ze ctyr tvaru. Ty jsou vysvetleny nize v oddilu selektory priloh. Byla-li pred touto volbou pouzita volba --attachment-name, nastavi se jeji hodnota jako novy nazev kazde upravene prilohy. Jinak se nazvy nezmeni. Byla-li pred touto volbou pouzita volba --attachment-mime-type, nastavi se jeji hodnota jako novy typ MIME kazde upravene prilohy. Jinak se typy MIME nezmeni. Byla-li pred touto volbou pouzita volba --attachment-description, nastavi se jeji hodnota jako novy popis kazde upravene prilohy. Jinak se popisy nezmeni. Byla-li pred touto volbou pouzita volba --attachment-uid, nastavi se jeji hodnota jako nove UID kazde upravene prilohy. Jinak se UID nezmeni. --update-attachment selector Nastavi vlastnosti jedne ci vice priloh odpovidajicich parametru selector. Odpovida-li parametru selector vice existujicich priloh, aktualizuji se vlastnosti vsech. Parametr selector muze mit jeden ze ctyr tvaru. Ty jsou vysvetleny nize v oddilu selektory priloh. Byla-li pred touto volbou pouzita volba --attachment-name, nastavi se jeji hodnota jako novy nazev kazde upravene prilohy. Jinak se nazvy nezmeni. Byla-li pred touto volbou pouzita volba --attachment-mime-type, nastavi se jeji hodnota jako novy typ MIME kazde upravene prilohy. Jinak se typy MIME nezmeni. Byla-li pred touto volbou pouzita volba --attachment-description, nastavi se jeji hodnota jako novy popis kazde upravene prilohy. Jinak se popisy nezmeni. Byla-li pred touto volbou pouzita volba --attachment-uid, nastavi se jeji hodnota jako nove UID kazde upravene prilohy. Jinak se UID nezmeni. --delete-attachment selector Odstrani jednu ci vice priloh odpovidajicich parametru selector. Parametr selector muze mit jeden ze ctyr tvaru. Ty jsou vysvetleny nize v oddilu selektory priloh. Volby pro akce s prilohami: --attachment-name name Nastavi nazev, ktery se pouzije pro nasledujici operaci --add-attachment nebo --replace-attachment. --attachment-mime-type mime-type Nastavi typ MIME, ktery se pouzije pro nasledujici operaci --add-attachment nebo --replace-attachment. --attachment-description description Nastavi popis, ktery se pouzije pro nasledujici operaci --add-attachment nebo --replace-attachment. --enable-legacy-font-mime-types Povoli pouzivani zastaralych typu MIME pro urcite typy priloh pisem. Napriklad pro pisma TrueType se pouzije 'application/x-truetype-font' namisto 'fonts/ttf'. Tyka se to pridavani novych priloh i nahrazovani existujicich priloh, ale pouze tehdy, neni-li zadan novy typ MIME. Ostatni existujici prilohy se nezmeni. Dotcenymi typy MIME jsou 'font/sfnt', 'font/ttf' a 'font/collection', ktere se vsechny mapuji na 'application/x-truetype-fonts', a 'font/otf', ktery se mapuje na 'application/vnd.ms-opentype'. Dalsi volby: --disable-language-ietf Za beznych okolnosti mkvpropedit(1) pri pozadavku uzivatele na zmenu vlastnosti hlavicky stopy 'language' pouzije stejnou zmenu take na novy prvek hlavicky stopy LanguageIETF, vedle starsiho prvku Language. Pri pouziti teto volby se zmena pouzije pouze na starsi prvek Language. Tato volba nema vliv na zmeny pozadovane prostrednictvim vlastnosti hlavicky stopy 'language-ietf'. --normalize-language-ietf mode Povoli normalizaci vsech jazykovych znacek IETF BCP 47 bud na jejich kanonickou podobu v rezimu 'canonical', na podobu rozsirenych jazykovych podznacek v rezimu 'extlang', nebo ji vypne rezimem 'off'. Ve vychozim nastaveni se pouziva normalizace na kanonickou podobu. V kanonicke podobe se vsechny podznacky, pro nez existuji uprednostnovane hodnoty, nahradi temito hodnotami. Tim se napr. 'zh-yue-jyutping' prevede na 'yue-jyutping' nebo 'fr-FX' na 'fr-FR'. Pro podobu rozsirenych jazykovych podznacek se nejprve vytvori kanonicka podoba. Pote se vsechny primarni jazykove podznacky, pro nez existuje rozsirena jazykova podznacka, nahradi touto rozsirenou jazykovou podznackou a jeji predponou. Tim se napr. 'yue-jyutping' prevede zpet na 'zh-yue-jyutping', na 'fr-FR' to vsak nema vliv, protoze 'fr' neni rozsirena jazykova podznacka. Tato normalizace se pouzije pouze na prvky, ktere se skutecne meni: o Pri upravach hlavicek stop jsou ovlivneny pouze ty jazykove prvky stop, ktere jsou nastaveny prostrednictvim specifikaci uprav. Jazyky neupravovanych stop se nezmeni. Jazyk neovlivni ani uprava stopy, pri ktere se nastavuji pouze jine vlastnosti nez jazyk. o Pri upravach kapitol jsou ovlivneny vsechny jazykove prvky vsech prvku kapitol, protoze existujici kapitoly se vzdy zcela nahrazuji. o Pri upravach stitku jsou ovlivneny pouze jazykove prvky skutecne nahrazovanych stitku. Kdyz napriklad nahradite globalni stitky, existujici stitky stop nebudou ovlivneny. Nejlepe se vsechny existujici jazykove znacky v souboru normalizuji jeho opetovnym multiplexovanim pomoci mkvmerge(1) s volbou '--normalize-language-ietf' nastavenou na pozadovany rezim. --command-line-charset character-set Nastavuje znakovou sadu, ze ktere se prevadeji retezce zadane na prikazovem radku. Vychozi je znakova sada dana aktualnim narodnim prostredim systemu. --output-charset character-set Nastavuje znakovou sadu, do ktere se prevadeji retezce urcene k vystupu. Vychozi je znakova sada dana aktualnim narodnim prostredim systemu. -r, --redirect-output file-name Zapise vsechny zpravy do souboru file-name misto na konzoli. Ackoli to lze snadno provest presmerovanim vystupu, tato volba je potreba v pripadech, kdy terminal vystup pred zapisem do souboru znovu interpretuje. Je respektovana znakova sada nastavena pomoci --output-charset. --no-bom Textove soubory vytvorene & kodovane v nektere z variant UTF obvykle zacinaji znackou poradi bajtu (BOM). Tato volba zakaze zapis teto znacky poradi bajtu. --ui-language code Vynuti pouziti prekladu pro jazyk code (napr. 'de_DE' pro nemecke preklady). Zadanim 'list' jako code program vypise seznam dostupnych prekladu. --abort-on-warnings Ukonci program po vydani prvniho upozorneni. Navratovy kod programu bude 1. --debug topic Zapne ladeni urcite funkce. Tato volba je uzitecna pouze pro vyvojare. --engage feature Zapne experimentalni funkce. Seznam dostupnych funkci lze vyzadat pomoci mkvpropedit --engage list. Tyto funkce nejsou urceny pro bezne pouziti. --gui-mode Zapne rezim GUI. V tomto rezimu mohou byt vypisovany specialne formatovane radky, ktere ridicimu GUI sdeluji, co se deje. Tyto zpravy maji format '#GUI#message'. Za zpravou mohou nasledovat dvojice klic/hodnota jako v '#GUI#message#key1=value1#key2=value2...'. Zpravy ani klice se nikdy neprekladaji a vzdy jsou vypisovany anglicky. -v, --verbose Vypisuje podrobne informace a zobrazuje vsechny dulezite prvky Matroska(TM) pri jejich cteni. -h, --help Zobrazi informace o pouziti a ukonci se. -V, --version Zobrazi informace o verzi a ukonci se. @options-file.json Nacte dalsi argumenty prikazoveho radku ze souboru options-file. Uplne vysvetleni podporovanych formatu takovych souboru naleznete v oddilu ,,Option files" manualove stranky mkvmerge(1). SELEKTORY uPRAV Volba --edit nastavi oddil souboru Matroska(TM) (informace o useku nebo hlavicky urcite stopy), se kterym budou pracovat vsechny nasledujici akce pridani, nastaveni a odstraneni. Nastaveni zustava platne az do nalezeni dalsi volby --edit. Argument teto volby se nazyva selektor uprav. Ve vychozim nastaveni bude mkvpropedit(1) upravovat oddil informaci o useku. Informace o useku Informace o useku lze vybrat jednim z techto tri slov: 'info', 'segment_info' nebo 'segmentinfo'. Obsahuji vlastnosti, jako je nazev useku nebo UID useku. Hlavicky stop Hlavicky stop lze vybrat o neco slozitejsim selektorem. Vsechny varianty zacinaji retezcem 'track:'. Vlastnosti hlavicky stopy zahrnuji prvky, jako je kod jazyka, priznak ,,vychozi stopa" nebo nazev stopy. track:n Je-li parametr n cislo, vybere se stopa s poradovym cislem n. Poradi stop je stejne jako ve vystupu volby --identify programu mkvmerge(1). Cislovani zacina od 1. track:tn Zacina-li parametr jedinym znakem t nasledovanym cislem n, vybere se stopa s poradovym cislem n v ramci daneho typu. Parametr typu stopy t musi byt jeden z techto ctyr znaku: 'a' pro zvukovou stopu, 'b' pro tlacitkovou stopu, 's' pro titulkovou stopu a 'v' pro video stopu. Poradi stop je stejne jako ve vystupu volby --identify programu mkvmerge(1). Cislovani zacina od 1. track:=uid Zacina-li parametr znakem '=' nasledovanym cislem uid, vybere se stopa, jejiz prvek UID stopy se rovna zadanemu uid. Hodnoty UIDs stop lze ziskat pomoci mkvinfo(1). track:@number Zacina-li parametr znakem '@' nasledovanym cislem number, vybere se stopa, jejiz prvek s cislem stopy se rovna tomuto parametru number. Cisla stop lze ziskat pomoci mkvinfo(1). Poznamky Vzhledem k povaze selektoru uprav stop muze nekolik selektoru ve skutecnosti odpovidat teze hlavicce stopy. V takovych pripadech se vsechny akce pro tyto selektory uprav spoji a provedou v poradi, v nemz jsou uvedeny na prikazovem radku. SELEKTORY PriLOH Selektor priloh se pouziva se dvema akcemi --replace-attachment a --delete-attachment. Muze mit jeden z nasledujicich ctyr tvaru: 1. Vyber podle ID prilohy. V tomto tvaru je selektorem jednoduse cislo: ID prilohy vypsane identifikacnim prikazem programu mkvmerge(1). 2. Vyber podle UID prilohy (jedinecneho ID). V tomto tvaru je selektorem rovnitko = nasledovane cislem: jedinecnym ID prilohy vypsanym podrobnym identifikacnim prikazem programu mkvmerge(1). 3. Vyber podle nazvu prilohy. V tomto tvaru je selektorem doslovny retezec name: nasledovany nazvem existujici prilohy. Pouzije-li se tento selektor s volbou --replace-attachment, musi byt dvojtecky v porovnavanem nazvu zapsany pomoci escape sekvence \c. 4. Vyber podle typu MIME. V tomto tvaru je selektorem doslovny retezec mime-type: nasledovany typem MIME existujici prilohy. Pouzije-li se tento selektor s volbou --replace-attachment, musi byt dvojtecky v porovnavanem typu MIME zapsany pomoci escape sekvence \c. ZPRACOVaNi JAZYKu mkvpropedit(1) se ve vychozim nastaveni vetsinou snazi postupovat spravne. Zmena vlastnosti language proto zpusobi, ze mkvpropedit(1) pouzije stejnou zmenu pro novy prvek ,,LanguageIETF" i starsi prvek ,,Language", podobne jako mkvmerge(1) nastavuje jazyk v obou prvcich. Pri pouziti prikazu mkvpropedit movie.mkv --edit track:2 --set language=zh-TW se napriklad prvek ,,LanguageIETF" nastavi na zh-TW a starsi prvek ,,Language" na chi. Krome toho existuje nova vlastnost hlavicky stopy nazvana language-ietf, kterou lze nastavit nebo odstranit. Zmeny teto vlastnosti se vztahuji pouze na novy prvek hlavicky stopy ,,LanguageIETF". Komplikaci je, ze starsi prvek hlavicky stopy ,,Language" je v Matrosce povinny -- i kdyz tedy v souboru neni pritomen, ma stale predpokladanou hodnotu. Nastavi-li uzivatel pouze vlastnost language-ietf, ale nikoli vlastnost language, mkvpropedit(1) proto v urcitych pripadech prida starsi prvek ,,Language" & nastavi jej na und (tedy ,,neurceno"), protoze uzivatel jeho hodnotu nezadal. Pri nacitani souboru XML s kapitolami nebo stitky pracuje mkvpropedit(1) stejne jako mkvmerge(1). Vytvareni novych prvku lze zcela zakazat volbou prikazoveho radku `--disable-language-ietf`, ktera se vztahuje na vsechny tri nove prvky. Parametrem --normalize-language-ietf lze zvolit metodu normalizace pouzivanou pro rozsirene jazykove podznacky. PriKLADY Nasledujici priklad upravuje soubor nazvany 'movie.mkv'. Nastavi nazev useku a zmeni kod jazyka zvukove a titulkove stopy. Tento priklad lze zkratit vynechanim prvni volby --edit, protoze uprava prvku informaci o useku je vychozi pro vsechny volby uvedene pred prvni volbou --edit. $ mkvpropedit movie.mkv --edit info --set "title=The movie" --edit track:a1 --set language=fre --edit track:a2 --set language=ita Druhy priklad odstrani priznak ,,vychozi stopa" z prvni titulkove stopy a nastavi jej pro druhou. Upozornujeme, ze mkvpropedit(1) na rozdil od mkvmerge(1) automaticky nenastavi priznak ,,vychozi stopa" ostatnich stop na ,,0", kdyz je u jine stopy nastaven na ,,1". $ mkvpropedit movie.mkv --edit track:s1 --set flag-default=0 --edit track:s2 --set flag-default=1 Nahrazeni stitku druhe titulkove stopy v souboru vypada takto: $ mkvpropedit movie.mkv --tags track:s2:new-subtitle-tags.xml Pri odstranovani vsech stitku je nutne vynechat nazev souboru: $ mkvpropedit movie.mkv --tags all: Nahrazeni kapitol v souboru vypada takto: $ mkvpropedit movie.mkv --chapters new-chapters.xml Pri odstranovani vsech kapitol je nutne vynechat nazev souboru: $ mkvpropedit movie.mkv --chapters '' Pridani souboru pisma (Arial.ttf) jako prilohy: $ mkvpropedit movie.mkv --add-attachment Arial.ttf Pridani souboru pisma (89719823.ttf) jako prilohy a uvedeni nekolika informaci, protoze ve skutecnosti jde pouze o Arial: $ mkvpropedit movie.mkv --attachment-name Arial.ttf --attachment-description 'The Arial font as a TrueType font' --attachment-mime-type application/x-truetype-font --add-attachment 89719823.ttf Nahrazeni jednoho prilozeneho souboru pisma (Comic.ttf) jinym (Arial.ttf): $ mkvpropedit movie.mkv --attachment-name Arial.ttf --attachment-description 'The Arial font as a TrueType font' --replace-attachment name:Comic.ttf:Arial.ttf Odstraneni druheho prilozeneho souboru bez ohledu na to, o jaky soubor jde: $ mkvpropedit movie.mkv --delete-attachment 2 Odstraneni vsech prilozenych pisem podle typu MIME: $ mkvpropedit movie.mkv --delete-attachment mime-type:application/x-truetype-font NaVRATOVe KoDY mkvpropedit(1) konci jednim ze tri navratovych kodu: o 0 - Tento navratovy kod znamena, ze uprava byla uspesne dokoncena. o 1 - V tomto pripade mkvpropedit(1) vypsal alespon jedno upozorneni, ale uprava pokracovala. Upozorneni ma predponu 'Warning:'. V zavislosti na danych problemech mohou, ale nemusi byt vysledne soubory v poradku. Uzivatel by mel zkontrolovat upozorneni i vysledne soubory. o 2 - Tento navratovy kod se pouzije po vyskytu chyby. mkvpropedit(1) se ukonci hned po vypsani chybove zpravy. Chybove zpravy sahaji od chybnych argumentu prikazoveho radku pres chyby cteni a zapisu az po poskozene soubory. TEXTOVe SOUBORY A PrEVODY ZNAKOVyCH SAD Podrobnou diskusi o zpusobu, jakym vsechny nastroje sady MKVToolNix pracuji s prevody znakovych sad, kodovanim vstupu/vystupu, prikazoveho radku a konzole, naleznete ve stejnojmennem oddilu manualove stranky mkvmerge(1). PROMeNNe PROSTrEDi mkvpropedit(1) pouziva vychozi promenne urcujici narodni prostredi systemu (napr. LANG a rodinu LC_*). Dalsi promenne: MKVPROPEDIT_DEBUG, MKVTOOLNIX_DEBUG a jeji zkraceny tvar MTX_DEBUG Obsah se zpracuje, jako by byl predan pomoci volby --debug. MKVPROPEDIT_ENGAGE, MKVTOOLNIX_ENGAGE a jeji zkraceny tvar MTX_ENGAGE Obsah se zpracuje, jako by byl predan pomoci volby --engage. VIZ TAKe mkvmerge(1), mkvinfo(1), mkvextract(1), mkvtoolnix-gui(1) WWW Nejnovejsi verzi lze vzdy najit na domovske strance MKVToolNix[1]. AUTHOR Moritz Bunkus Vyvojar NOTES 1. domovske strance MKVToolNix https://mkvtoolnix.download/ MKVToolNix 102.0 2026-09-14 MKVPROPEDIT(1)