mkvpropedit - Изменяет свойства существующих файлов Matroska(TM) без сложного ремультиплексирования
This program analyses an existing
Matroska(TM)
file and modifies some of its properties. Then it writes those modifications to the existing file. Among the properties that can be changed are the segment information elements (e.g. the title) and the track headers (e.g. the language code, 'default track' flag or the name).
Параметры:
-l, --list-property-names
-
Lists all known and editable property names, their type (string, integer, boolean etc) and a short description. The program exits afterwards. Therefore the
source-filename
parameter does not have to be supplied.
-p, --parse-mode режим
-
Sets the parse mode. The parameter 'mode' can either be 'fast' (which is also the default) or 'full'. The 'fast' mode does not parse the whole file but uses the meta seek elements for locating the required elements of a source file. In 99% of all cases this is enough. But for files that do not contain meta seek elements or which are damaged the user might have to set the 'full' parse mode. A full scan of a file can take a couple of minutes while a fast scan only takes seconds.
Действия для работы с дорожками и свойствами информационных сегментов:
-e, --edit selector
-
Sets the
Matroska(TM)
file section (segment information or a certain track's headers) that all following
add,
set
and
delete
actions operate on. This option can be used multiple times in order to make modifications to more than one element.
По умолчанию
mkvpropedit(1)
будет править секцию информации о сегменте.
Смотрите секцию
редактирование селекторов
для полного описания синтаксиса.
-a, --add name=значение
-
Добавляет свойство
name
со
значением. Свойство будет добавлено, даже если оно уже существует. Примечание: большинство свойств уникально и не могут встречаться более одного раза.
-s, --set name=значение
-
Задает для всех вхождений свойства
имя
значение
переменной. Если такого свойства не существует, то оно будет добавлено.
-d, --delete name
-
Удаляет все вхождения свойства
name. Примечание: некоторые свойства обязательны и не могут быть удалены.
Действия для работы с тегами и главами:
-t, --tags selector:имя-файла
-
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.
--add-track-statistics-tags
-
Вычисляет статистику для всех треков в файле и добавляет новые теги статистики для них. Если файл уже содержит эти теги, то они будут обновлены.
--delete-track-statistics-tags
-
Удаляет все метки статистики существующей дорожки из файла. Если в файле нет меток статистики дорожки, они не будут изменены.
-c, --chapters имя-файла
-
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.
Действия для обработки вложений:
--add-attachment имя-файла
-
Добавляет новое вложение из
имя-файла.
If the option
--attachment-name
has been used prior to this option then its value is used as the new attachment's name. Otherwise it is derived from
filename.
If the option
--attachment-mime-type
has been used prior to this option then its value is used as the new attachment's MIME type. Otherwise it is auto-detected from the content of
filename.
If the option
--attachment-description
has been used prior to this option then its value is used as the new attachment's description. Otherwise no description will be set.
If the option
--attachment-uid
has been used prior to this option then its value is used as the new attachment's UID. Otherwise a random UID will be generated automatically.
--replace-attachment селектор:имя-файла
-
Replaces one or more attachments that match
selector
with the file
filename. If more than one existing attachment matches
selector
then all of their contents will be replaced by the content of
filename.
The
selector
can have one of four forms. They're explained below in the section
attachment selectors.
If the option
--attachment-name
has been used prior to this option then its value is set as the new name for each modified attachment. Otherwise the names aren't changed.
If the option
--attachment-mime-type
has been used prior to this option then its value is set as the new MIME type for each modified attachment. Otherwise the MIME types aren't changed.
If the option
--attachment-description
has been used prior to this option then its value is set as the new description for each modified attachment. Otherwise the descriptions aren't changed.
If the option
--attachment-uid
has been used prior to this option then its value is set as the new UID for each modified attachment. Otherwise the UIDs aren't changed.
--update-attachment селектор
-
Указывает свойства для одного и более вложений, которые совпадают с
селектором. Если более одного вложений совпадают с
селектором, тогда все их свойства будут обновлены.
The
selector
can have one of four forms. They're explained below in the section
attachment selectors.
If the option
--attachment-name
has been used prior to this option then its value is set as the new name for each modified attachment. Otherwise the names aren't changed.
If the option
--attachment-mime-type
has been used prior to this option then its value is set as the new MIME type for each modified attachment. Otherwise the MIME types aren't changed.
If the option
--attachment-description
has been used prior to this option then its value is set as the new description for each modified attachment. Otherwise the descriptions aren't changed.
If the option
--attachment-uid
has been used prior to this option then its value is set as the new UID for each modified attachment. Otherwise the UIDs aren't changed.
--delete-attachment селектор
-
Удаляет одно или несколько вложений подходящих под
селектор
The
selector
can have one of four forms. They're explained below in the section
attachment selectors.
Параметры действий над вложениями:
--attachment-name имя
-
Задаёт использование имени для следующей операции
--add-attachment
или
--replace-attachment.
--attachment-mime-type тип-mime
-
Задаёт использование типа MIME для следующей операции
--add-attachment
или
--replace-attachment.
--attachment-description описание
-
Задаёт использование описания для следующей операции
--add-attachment
или
--replace-attachment.
Прочие параметры:
--disable-language-ietf
-
Normally when the user requests changes to the 'language' track header property,
mkvpropedit(1)
will apply the same change to the new
LanguageIETF
track header element in addition to the legacy
Language
element. If this option is used, the change is only applied to the legacy
Language
element.
This option does not affect changes requested via the 'language-ietf' track header property.
--command-line-charset кодировка
-
Устанавливает кодировку для конвертации строк, указанных в командной строке. Стандартная кодировка привязана с системной локализации.
--output-charset кодировка
-
Указывает кодировку, в которую конвертируются выходные строки. По умолчанию используется текущая кодировка системного языка.
-r, --redirect-output имя-файла
-
Writes all messages to the file
file-name
instead of to the console. While this can be done easily with output redirection there are cases in which this option is needed: when the terminal reinterprets the output before writing it to a file. The character set set with
--output-charset
is honored.
--ui-language код
-
Принудительно использовать перевод на
код
языка (напр. "de_DE" для немецкого). Если указать "list" вместо
кода, то отобразится список доступных переводов.
--abort-on-warnings
-
Указывает mkvmerge прерывание после появления первого предупреждения. Код завершения программы будет 1.
--debug тематика
-
Включить режим отладки для указанной функции. Этот параметр полезен только для разработчиков.
--engage функция
-
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.
--gui-mode
-
Включает режим графического интерфейса. В этом режиме могут отображаться специально отформатированные строки для отправки управляющих сообщений интерфейсу. Формат сообщений --- '#GUI#message'. За сообщением могут быть указаны пары ключа и значения, например '#GUI#message#key1=value1#key2=value2...'. Сообщения и ключи не переводятся и всегда выводятся на английском.
-v, --verbose
-
Вести расширенный вывод и показывать все важные элементы
Matroska(TM)
по мере их чтения.
-h, --help
-
Показать сведения об использовании и выйти.
-V, --version
-
Показать сведения о версии и выйти.
@файл-параметров.json
-
Считывает дополнительные аргументы командной строки из файла
options-file. Полное описание поддерживаемых форматов для таких файлов смотрите в разделе "Файлы параметров" на странице документации
mkvmerge(1).
РЕДАКТИРОВАНИЕ СЕЛЕКТОРОВ
The
--edit
option sets the
Matroska(TM)
file section (segment information or a certain track's headers) that all following
add,
set
and
delete
actions operate on. This stays valid until the next
--edit
option is found. The argument to this option is called the edit selector.
По умолчанию
mkvpropedit(1)
будет править секцию информации о сегменте.
Информация о сегментах
The segment information can be selected with one of these three words: 'info', 'segment_info' or 'segmentinfo'. It contains properties like the segment title or the segment
UID.
Заголовки дорожки
Track headers can be selected with a slightly more complex selector. All variations start with 'track:'. The track header properties include elements like the language code, 'default track' flag or the track's name.
track:n
-
Если параметр
n
является цифрой, то будет выбрана дорожкой с номером
n. Порядок дорожек такой же, как и при выводе информации командой
mkvmerge(1)
с параметром
--identify.
Нумерация начинается с 1.
track:tn
-
If the parameter starts with a single character
t
followed by a
n
then the
nth track of a specific track type will be selected. The track type parameter
t
must be one of these four characters: 'a' for an audio track, 'b' for a button track, 's' for a subtitle track and 'v' for a video track. The track order is the same that
mkvmerge(1)'s
--identify
option outputs.
Нумерация начинается с 1.
track:=uid
-
If the parameter starts with a '=' followed by a number
uid, the track whose track
UID
element equals the given
uid
will be selected. Track
UIDs
can be obtained with
mkvinfo(1).
track:@номер
-
If the parameter starts with a '@' followed by a number
number, the track whose track number element equals this
number
will be selected. Track numbers can be obtained with
mkvinfo(1).
Примечания
Due to the nature of the track edit selectors it is possible that several selectors actually match the same track headers. In such cases all actions for those edit selectors will be combined and executed in the order in which they're given on the command line.
СЕЛЕКТОРЫ ВЛОЖЕНИЙ
An attachment selector is used with the two actions
--replace-attachment
and
--delete-attachment. It can have one of the following four forms:
-
1.
Selection by attachment ID. In this form the selector is simply a number, the attachment's ID as output by
mkvmerge(1)'s identification command.
-
2.
Выбор по УИД (уникальному идентификатору) вложения. В этой форме селектор представляет собой символ
=
с последующим числом, являющимся УИД вложения. Его узнать с помощью детальной команды идентификации
mkvmerge(1).
-
3.
Selection by attachment name. In this form the selector is the literal word
name:
followed by the existing attachment's name. If this selector is used with
--replace-attachment
then colons within the name to match must be escaped as
\c.
-
4.
Selection by MIME type. In this form the selector is the literal word
mime-type:
followed by the existing attachment's MIME type. If this selector is used with
--replace-attachment
then colons within the MIME type to match must be escaped as
\c.
ПРИМЕРЫ
The following example edits a file called 'movie.mkv'. It sets the segment title and modifies the language code of an audio and a subtitle track. Note that this example can be shortened by leaving out the first
--edit
option because editing the segment information element is the default for all options found before the first
--edit
option anyway.
-
$ mkvpropedit фильм.mkv --edit info --set "title=Фильм" --edit track:a1 --set language=fre --edit track:a2 --set language=ita
The second example removes the 'default track flag' from the first subtitle track and sets it for the second one. Note that
mkvpropedit(1), unlike
mkvmerge(1), does not set the 'default track flag' of other tracks to '0' if it is set to '1' for a different track automatically.
-
$ mkvpropedit фильм.mkv --edit track:s1 --set flag-default=0 --edit track:s2 --set flag-default=1
Замена тегов во второй дорожке субтитров файла выглядит так:
-
$ mkvpropedit фильм.mkv --tags track:s2:new-subtitle-tags.xml
Удаление всех тегов требует указания имени файла:
-
$ mkvpropedit фильм.mkv --tags all:
Замена глав в файле выглядит так:
-
$ mkvpropedit фильм.mkv --chapters новые-главы.xml
Удаление всех глав происходит без указания имени выходного файла:
-
$ mkvpropedit фильм.mkv --chapters ''
Добавление файла шрифта (Arial.ttf) в виде вложения:
-
$ mkvpropedit фильм.mkv --add-attachment Arial.ttf
Добавление файла шрифта (89719823.ttf) в виде вложения и описание информации, что это Arial:
-
$ mkvpropedit фильм.mkv --attachment-name Arial.ttf --attachment-description 'Шрифт Arial в виде шрифта TrueType' --attachment-mime-type application/x-truetype-font --add-attachment 89719823.ttf
Замена вложенного файла шрифта (Comic.ttf) другим (Arial.ttf):
-
$ mkvpropedit фильм.mkv --attachment-name Arial.ttf --attachment-description 'Шрифт Arial в виде шрифта TrueType' --replace-attachment name:Comic.ttf:Arial.ttf
Удаление второго вложенного файла, неважно какого именно:
-
$ mkvpropedit фильм.mkv --delete-attachment 2
Удаление всех вложенных шрифтов по типу MIME:
-
$ mkvpropedit фильм.mkv --delete-attachment mime-type:application/x-truetype-font
КОДЫ ЗАВЕРШЕНИЯ
mkvpropedit(1)
завершается с одним из трёх кодов:
-
•
0
-- Этот код завершения означает, что модификация закончилась успешно.
-
•
1 -- В этом случае
mkvpropedit(1)
выдал хотя бы одно предупреждение, однако модификация продолжилась. Предупреждению предшествует текст 'Warning:'. В зависимости от произошедших ошибок, результирующие файлы могут быть либо целыми либо повреждёнными. Пользователю рекомендуется обратить внимание на само предупреждение и проверить результирующие файлы.
-
•
2
-- Этот код завершения используется в случае возникновения ошибки.
mkvpropedit(1)
прекращает работу сразу после вывода сообщения об ошибке. Ошибки могут возникнуть из-за неверных параметров командной строки, из-за ошибки чтения/записи или просто из-за повреждённых файлов.
ПРЕОБРАЗОВАНИЕ ТЕКСТОВЫХ ФАЙЛОВ И КОДИРОВОК
For an in-depth discussion about how all tools in the MKVToolNix suite handle character set conversions, input/output encoding, command line encoding and console encoding please see the identically-named section in the
mkvmerge(1)
man page.
ПЕРЕМЕННЫЕ СРЕДЫ
mkvpropedit(1)
использует стандартные переменные, определяющие системный язык (например:
LANG
и семейство
LC_*). Дополнительные переменные:
MKVPROPEDIT_DEBUG, MKVTOOLNIX_DEBUG и его краткая форма MTX_DEBUG
-
Содержимое обрабатывается так, как если бы оно было передано с помощью параметра
--debug.
MKVPROPEDIT_ENGAGE, MKVTOOLNIX_ENGAGE и его краткая форма MTX_ENGAGE
-
Содержимое обрабатывается так, как если бы оно было передано с помощью параметра
--engage.
СМОТРИТЕ ТАКЖЕ
mkvmerge(1),
mkvinfo(1),
mkvextract(1),
mkvtoolnix-gui(1)
ДОМАШНЯЯ СТРАНИЦА
Последняя версия программы всегда доступна на
m[blue]домашней странице MKVToolNixm[][1].
АВТОР
Мориц Бункус <moritz@bunkus.org>
-
Разработчик
ПРИМЕЧАНИЯ
- 1.
-
домашней странице MKVToolNix
-
https://mkvtoolnix.download/