这是命令 mkvmerge 可以在 OnWorks 免费托管服务提供商中使用我们的多个免费在线工作站之一运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
mkvmerge - 将多媒体流合并到 Matroska(TM) 文件中
概要
合并 [全局选项] {-o out} [options1] {file1} [[options2] {file2}] [@optionsfile]
商品描述
该程序从几个媒体文件中获取输入并加入它们的流(所有这些
或只是一个选择)到 Matroska(TM) 文件中; 看 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 马特罗斯卡(TM) 官网[1]。
重要
命令行选项的顺序很重要。 请阅读“选项顺序”部分
如果您是该计划的新手。
全球覆盖 选项
-v, --详细
增加冗长。
-q, - 安静的
抑制状态输出。
-o, - 输出 文档名称
写入文件 文档名称. 如果使用拆分,则对该参数进行一些处理
不一样。 见解释 - 分裂 详细信息的选项。
-w, --webm
创建符合 WebM 的文件。 如果输出文件名的
扩展名是“webm”。 此模式强制执行多项限制。 唯一允许的编解码器
是 VP8、VP9 视频和 Opus、Vorbis 音轨。 章节和标签都不是
允许。 DocType 标题项更改为“webm”。
- 标题 标题
设置输出文件的一般标题,例如电影名称。
--默认语言 语言代码
设置将用于没有语言的曲目的默认语言代码
设置与 - 语 选项并且源容器不提供
语言。
'undefined' 的默认语言代码是 'und'。
分割 info 处理 (全球的 选项)
--段信息 文件名.xml
从 XML 文件中读取段信息。 该文件可以包含段系列
UID、段 UID、上一段和下一段 UID 元素。 一个示例文件和一个 DTD
包含在 MKVToolNix 发行版中。
有关详细信息,请参阅下面有关段信息 XML 文件的部分。
--segment-uid SID1,SID2,...
设置要使用的段 UID。 这是 128 位段 UID 的逗号分隔列表
通常的 UID 形式:带或不带“0x”前缀的十六进制数字,带或不带
空格,正好是 32 位数字。
如果 SID 以 = 开头,则其其余部分将被解释为 Matroska 文件的名称
读取和使用段 UID。
创建的每个文件包含一个段,每个段有一个段 UID。 如果更多
段 UID 是在创建段之前指定的,然后多余的 UID 是
忽略。 如果指定的 UID 少于创建的段,则随机 UID 将
为他们创建。
章节 和 行李牌 处理 (全球的 选项)
--章节语言 语言代码
设置为每个章节条目编写的 ISO639-2 语言代码。 默认为
'eng'。 有关详细信息,请参阅下面有关章节的部分。
此选项可用于简单的章节文件和源文件
包含章节但没有关于章节语言的信息,例如 MP4 和 OGM
文件。
--章节字符集 字符集
设置用于转换为简单章节的 UTF-8 的字符集
文件。 请参阅有关文本文件和字符集的部分以了解如何
合并(1) 字符集之间的转换。
此开关也适用于从某些容器类型复制的章节,
例如 Ogg/OGM 和 MP4 文件。 有关详细信息,请参阅下面有关章节的部分。
--提示章节名称格式 格式
合并(1) 支持读取音频文件的 CUE 表作为章节的输入。
CUE表通常包含条目 PERFORMER 和 题目 对于每个索引条目。
合并(1) 使用这两个字符串来构造章节名称。 有了这个
option 可以设置用于此名称的格式。
如果没有给出这个选项,那么 合并(1) 默认为格式 '%p - %t'(
表演者,后跟一个空格、一个破折号、另一个空格和标题)。
如果给出格式,则复制除以下元字符以外的所有内容
原样,元字符被替换如下:
· %p 被当前条目的 PERFORMER 细绳,
· %t 被当前条目的 题目 细绳,
· %n 由当前曲目编号替换,并且
· %N 如果是,则由填充前导零的当前曲目编号替换
10.
--章节 文档名称
从文件中读取章节信息 文档名称. 请参阅有关以下章节的部分
了解详情。
--全局标签 文档名称
从文件中读取全局标签 文档名称. 请参阅下面关于标签的部分
细节。
一般用途总体评估 产量 控制 (先进的 全球化 选项)
--跟踪订单 FID1:TID1,FID2:TID2,...
此选项更改创建输入文件轨道的顺序。 这
参数是逗号分隔的对 ID 列表。 每对首先包含文件 ID
(荧光检测器1) 这只是命令行上从 0 开始的文件编号。
第二个是轨道 ID (TID1) 来自该文件。 如果省略了某些轨道 ID,则那些
轨道是在创建了此选项给定的轨道之后创建的。
--簇长度 规格
限制每个集群中数据块的数量或数据的持续时间。 这 规格
参数可以是数字 n 没有单位或数字 d 后缀'ms'。
如果没有使用单位,则 合并(1) 最多会放 n 数据块放入每个簇中。
最大块数为 65535。
如果数 d 然后以“ms”为后缀 合并(1) 最多放 d 毫秒
数据进入每个集群。 最低为 d 是'100ms',最大值是'32000ms'。
合并(1) 默认最多放入 65535 个数据块和 5000ms 的数据
簇。
试图寻找某个帧的程序只能直接寻找一个簇并且有
之后阅读整个集群。 因此,创建更大的集群可能会导致
不精确或缓慢寻找。
--无提示
告诉 合并(1) 不创建和写入可以比较的提示数据
AVI 中的索引。 Matroska(TM) 文件可以在没有提示数据的情况下播放,但是
寻找可能不准确且速度较慢。 只有当你真的
迫切需要空间或测试目的。 另见选项 --提示 哪个可以
为每个输入文件指定。
--元搜索中的簇
告诉 合并(1) 在包含所有内容的文件末尾创建一个元搜索元素
集群。 另请参阅有关 Matroska(TM) 文件布局的部分。
--禁用系带
禁用所有轨道的系带。 这将增加文件的大小,特别是如果
有很多音轨。 此选项不适用于日常使用。
--启用持续时间
写入所有块的持续时间。 这将增加文件大小并且不提供任何
目前对玩家的附加价值。
--禁用跟踪统计标签
通常情况下 合并(1) 会为每个音轨写一些带有统计信息的标签。 如果这样
标签已经存在,那么它们将被覆盖。 标签是 BPS, 期限,
NUMBER_OF_BYTES 和 NUMBER_OF_FRAMES 帧.
启用此选项可防止 合并(1) 从写那些标签和从触摸
任何具有相同名称的现有标签。
--时间码比例 因素
强制时间码比例因子为 因素. 有效值在范围内
1000..10000000 或特殊值 -1.
通常情况下 合并(1) 将使用一个值 1000000 这意味着时间码和
持续时间的精度为 1 毫秒。 对于不包含视频轨道的文件
但至少有一个音轨 合并(1) 会自动选择一个时间码比例
因素,以便所有时间码和持续时间都具有一个音频样本的精度。 这个
导致更大的开销,但允许精确查找和提取。
如果特殊值 -1 然后使用 合并(1) 将使用样本精度,即使
存在视频轨道。
文件 分裂, 链接, 附加 和 级联 (更多的 全球化 选项)
- 分裂 规范
在给定大小或给定时间后拆分输出文件。 请注意,曲目可以
仅在关键帧之前拆分。 由于缓冲 合并(1) 将右拆分
在到达分割点之后的下一个关键帧之前。 因此分裂
点可能与用户指定的有点偏离。
眼下 合并(1) 支持四种不同的模式。
1.按大小拆分。
语法: - 分裂[尺寸:]d[千|米|克]
示例:--split size:700m 或--split 150000000
参数 d 可能以 'k'、'm' 或 'g' 结尾,表示大小以 KB 为单位,
分别是 MB 或 GB。 否则假定大小为字节。 在当前
输出文件已达到此大小限制,将启动一个新文件。
出于兼容性原因,可以省略“size:”前缀。
2. 一段时间后拆分。
语法: - 分裂[期间:]HH:MM:SS.nnnnnnnn|ds
示例:--split duration:00:60:00.000 或 --split 3600XNUMXs
参数必须具有以下形式 HH:MM:SS.nnnnnnnn 用于指定
持续时间高达纳秒精度或为数字 d 其次是信
's' 表示持续时间(以秒为单位)。 HH 是小时数, MM 的数量
分钟, SS 秒数和 恩恩恩恩恩 纳秒数。 两个都
小时数和纳秒数可以省略。 可以有
到小数点后九位。 在内容的持续时间之后
当前输出已达到此限制,将启动新的输出文件。
出于兼容性原因,可以省略“duration:”前缀。
3.在特定时间码后拆分。
语法: - 分裂时间码:A[,B[,C...]]]
Example: --split timecodes:00:45:00.000,01:20:00.250,6300s
参数 A, B, C 等必须与用于
持续时间(见上文)。 时间码列表以逗号分隔。 之后
输入流已达到当前分割点的时间码,将创建一个新文件。
然后使用此列表中给出的下一个分割点。
'timecodes:' 前缀不能省略。
4. 通过指定时间码范围保留特定部分,同时丢弃其他部分。
语法: - 分裂部分:start1-end1[,[+]start2-end2[,[+]start3-end3...]]]
例子:
1. --split parts:00:01:20-00:02:45,00:05:50-00:10:30
2. --split parts:00:01:20-00:02:45,+00:05:50-00:10:30
3. --split parts:-00:02:45,00:05:50-
零件模式告诉 合并(1) 保持一定范围的时间码,同时
丢弃他人。 要保留的范围必须在部分之后列出:关键字
并以逗号分隔。 范围本身由开始和结束时间码组成
以相同的格式,其他变体 - 分裂 接受(例如 00:01:20 和
80s 指的是相同的时间码)。
如果忽略了开始时间码,则默认为上一个范围的结束时间
时间码。 如果没有先前的范围,则默认为文件的开头
(见例 3)。
如果省略了结束时间码,则默认为源文件的结尾
这基本上告诉 合并(1)保留其余部分(见例3)。
通常每个范围都会被写入一个新文件。 这可以改变,以便
连续的范围被写入同一个文件。 为此,用户必须加前缀
带 + 的开始时间码。 这告诉 合并(1) 不创建新文件和
而是将范围附加到前一个范围写入的同一文件中。
时间码将被调整,以便输出文件中没有间隙,即使
输入文件中的两个范围存在间隙。
在示例 1 中 合并(1) 将创建两个文件。 第一个将包含内容
从 00:01:20 到 00:02:45。 第二个文件将包含内容
从 00:05:50 到 00:10:30。
在示例 2 中 合并(1) 将只创建一个文件。 该文件将包含两者
从 00:01:20 到 00:02:45 开始的内容和从
00:05:50 until 00:10:30.
在示例 3 中 合并(1) 将创建两个文件。 第一个将包含内容
从源文件的开始直到 00:02:45。 第二个文件将包含
从 00:05:50 开始到源文件结束的内容。
备注
需要注意的是 合并(1) 只在关键帧做出关于分裂的决定
职位。 这适用于每个范围的开始和结束。 所以即使
如果结束时间码在两个关键帧之间 合并(1) 将继续
输出直到但不包括以下关键帧的帧。
5. 通过指定帧/场编号范围保留特定部分,同时丢弃
其他。
语法: - 分裂零件框架:start1-end1[,[+]start2-end2[,[+]start3-end3...]]]
例子:
1. --split part-frames:137-258,548-1211
2. --split parts-frames:733-912,+1592-2730
3.--拆分零件-框架:-430,2512-
零件框架模式告诉 合并(1) 保持一定范围的帧/场
数字而丢弃其他人。 要保留的范围必须列在
部分框架:关键字,用逗号分隔。 一个范围本身由一个
开始和结束帧/场编号。 编号从 1 开始。
如果省略了起始编号,则默认为前一个范围的结束编号。
如果没有先前的范围,则默认为文件的开头(请参阅
例 3)。
如果省略了结束编号,则默认为源文件的末尾
基本上告诉 合并(1)保留其余部分(见例3)。
通常每个范围都会被写入一个新文件。 这可以改变,以便
连续的范围被写入同一个文件。 为此,用户必须加前缀
带 + 的起始编号。 这告诉 合并(1) 不创建新文件和
而是将范围附加到前一个范围写入的同一文件中。
时间码将被调整,以便输出文件中没有间隙,即使
输入文件中的两个范围存在间隙。
备注
需要注意的是 合并(1) 只在关键帧做出关于分裂的决定
职位。 这适用于每个范围的开始和结束。 所以即使
如果结束帧/场编号在两个关键帧之间 合并(1) 将
继续输出直到但不包括以下关键帧的帧。
在示例 1 中 合并(1) 将创建两个文件。 第一个将包含内容
从 137 或之后的第一个关键帧开始,直到但不包括第一个关键帧
258 或之后的关键帧。第二个文件将包含从
548 到 1211。
在示例 2 中 合并(1) 将只创建一个文件。 该文件将包含两者
从 733 到 912 的内容和从 1592 到的内容
2730.
在示例 3 中 合并(1) 将创建两个文件。 第一个将包含内容
从源文件的开始直到 430。第二个文件将包含
内容从 2512 开始,直到源文件结束。
此模式仅考虑输出的第一个视频轨道。 如果没有视频轨道
是输出不会发生分裂。
备注
用这个参数给出的数字是根据
输出的 Matroska(TM) 块。 单个 Matroska(TM) 块包含
全帧(用于渐进式内容)或单场(用于
隔行内容)。 mkvmerge 不区分这两个和
简单地计算块的数量。 例如:如果一个人想分开后
具有隔行扫描内容的第 25 个全帧必须使用 50(两个
每个全帧的场数)作为分割点。
6. 在特定帧/场之后拆分。
语法: - 分裂框架:A[,B[,C...]]]
示例:--分割帧:120,237,891
参数 A, B, C etc 必须都是正整数。 编号从 1 开始。
帧/场编号列表用逗号分隔。 在输入流有
达到当前分割点的帧/场编号,将创建一个新文件。 然后
使用此列表中给出的下一个分割点。
不得省略“frames:”前缀。
此模式仅考虑输出的第一个视频轨道。 如果没有视频轨道
是输出不会发生分裂。
备注
用这个参数给出的数字是根据
输出的 Matroska(TM) 块。 单个 Matroska(TM) 块包含
全帧(用于渐进式内容)或单场(用于
隔行内容)。 mkvmerge 不区分这两个和
简单地计算块的数量。 例如:如果一个人想分开后
具有隔行扫描内容的第 25 个全帧必须使用 50(两个
每个全帧的场数)作为分割点。
7、具体章节前的拆分。
语法: - 分裂章节:全部或 - 分裂章节:A[,B[,C...]]]
示例:--split 章节:5,8
参数 A, B, C etc 必须都是正整数。 编号从 1 开始。
章节编号列表以逗号分隔。 分裂将发生
在时间码等于或大于开始的第一个关键帧之前
列出编号的章节的时间码。 从 0s 开始的章节是
从未考虑过分裂并默默丢弃。
可以使用关键字 all 代替手动列出所有章节编号。
不得省略“章节:”前缀。
备注
Matroska(TM) 文件格式支持任意深度嵌套的章节
称为“版本条目”和“章节原子”的结构。 不过这种模式
仅考虑所有版本条目中最顶层的章节。
对于这种拆分模式,输出文件名的处理方式与正常情况不同
手术。 它可能包含一个 的printf like 表达式 '%d' 包括一个可选字段
宽度,例如“%02d”。 如果是,则当前文件编号将被格式化
适当地插入文件名中的那个点。 如果没有这样的模式
然后在文件扩展名之前假设有一个“-%03d”模式:“-o”
output.mkv' 将导致 'output-001.mkv' 等等。 如果没有扩展名,那么
'-%03d' 将附加到名称。
- 关联
拆分输出文件时,将文件相互链接。 请参阅文件部分
详情链接如下。
--链接到上一个 段-UID
将第一个输出文件链接到具有段 UID 的段
段-UID 范围。 有关详细信息,请参阅下面有关文件链接的部分。
如果 SID 以 = 开头,则其其余部分将被解释为 Matroska 文件的名称
读取和使用段 UID。
--链接到下一个 段-UID
将最后一个输出文件链接到具有段 UID 的段
段-UID 范围。 有关详细信息,请参阅下面有关文件链接的部分。
如果 SID 以 = 开头,则其其余部分将被解释为 Matroska 文件的名称
读取和使用段 UID。
--附加模式 模式
确定附加文件时如何计算时间码。 参数 模式 能够
有两个值:'file'(也是默认值)和'track'。
当 mkvmerge 从第二个文件中附加一条轨道(从现在起称为“track2_1”)时
(称为“file2”)从第一个文件(称为“file1”)到轨道(称为“track1_1”)
然后它必须将“track2_1”的所有时间码偏移一定量。 对于“文件”模式,这个
amount 是“file1”中遇到的最高时间码,即使该时间码来自
与“track1_1”不同的轨道。 在轨道模式下,偏移量是最高的时间码
'track1_1'。
不幸的是 mkvmerge 无法检测到可靠地使用哪种模式。 因此它默认
到“文件”模式。 “文件”模式通常对已创建的文件更有效
彼此独立; 例如,当附加 AVI 或 MP4 文件时。 “跟踪”模式可能
对于本质上只是一个大文件的一部分的源,例如 VOB,效果更好
和 EVO 文件。
字幕轨道始终被视为“文件”模式处于活动状态,即使“轨道”模式也是如此
究竟是什么。
--附加到 SFID1:STID1:DFID1:DTID1[,...]
此选项控制将另一个轨道附加到哪个轨道。 每个规格包含四个
ID:文件ID、轨道ID、第二文件ID和第二轨道ID。 第一对,
“源文件 ID”和“源轨道 ID”,标识要附加的轨道。
第二对,“目标文件 ID”和“目标轨道 ID”,标识
跟踪第一个附加到。
如果省略此选项,则使用标准映射。 这个标准映射
将当前文件中的每个曲目附加到前一个文件中的曲目中
相同的曲目 ID。 如果电影被分成两部分,这允许轻松附加
并且两个文件都具有与命令相同的轨道数和轨道 ID 合并
-o 输出.mkv 第 1 部分.mkv +第2部分.mkv.
+
单个“+”会导致下一个文件被追加而不是被添加。 “+”也可以
放在下一个文件名前面。 因此,以下两个命令是
当量:
$ mkvmerge -o full.mkv 文件 1.mkv + 文件 2.mkv
$ mkvmerge -o full.mkv file1.mkv +file2.mkv
=
通常情况下 合并(1) 在与输入文件相同的目录中查找具有
相同的基本名称,仅在运行编号上有所不同(例如“VTS_01_1.VOB”,
'VTS_01_2.VOB'、'VTS_01_3.VOB' 等)并将所有这些文件视为
连接成一个大文件。 这个选项,一个单一的“=”,导致 mkvmerge 不
寻找那些额外的文件。
'=' 也可以放在下一个文件名的前面。 因此以下两
命令是等效的:
$ mkvmerge -o full.mkv = file1.mkv
$ mkvmerge -o full.mkv =file1.mkv
( file1 file2 )
如果一对括号中包含多个文件名,则这些文件将是
将它们视为由内容组成的单个大文件处理
每个文件一个接一个。
这可以用于例如来自 DVD 或 MPEG 传输流的 VOB 文件。 它
如果每个文件都包含自己的一组标头,则不能使用,这通常是这种情况
与 AVI 或 MP4 等独立文件。
将文件名放入括号也可以防止 合并(1) 从寻找
与选项中描述的具有相同基本名称的附加文件 =. 因此这两个
命令行是等效的:
$ mkvmerge -o out.mkv = 文件.mkv
$ mkvmerge -o out.mkv '(' file.mkv ')'
应注意以下几点:
1. 左括号后和右括号前必须有空格。
2. 括号内的每个参数都被解释为文件名。 因此所有
应用于此逻辑文件的选项必须在打开之前列出
插入语。
3. 某些shell 将括号视为特殊字符。 因此你必须逃脱或
如上例所示引用它们。
附件 支持 (更多的 全球化 选项)
--附件说明 描述
以下附件的纯文本描述。 适用于下一个 --附加文件
or --附加文件一次 选项。
--attachment-mime 类型 MIME 类型
以下附件的 MIME 类型。 适用于下一个 --附加文件 or
--附加文件一次 选项。 可以找到官方认可的 MIME 类型列表
例如在 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 IANA 网页[2]。 MIME 类型对于附件是必需的。
--附件名称 姓名
设置将存储在此附件的输出文件中的名称。 如果这
未给出选项,则名称将从附件的文件名派生
正如给出的 --附加文件 或者 --附加文件一次 选项。
--附加文件 文档名称, --附加文件一次 文档名称
在 Matroska(TM) 文件中创建文件附件。 MIME 类型必须是
在此选项可以使用之前设置。 两种形式的区别在于,在
拆分附加的文件 --附加文件 附加到所有输出文件,而
那些附有 --附加文件一次 仅附加到创建的第一个文件。
如果不使用拆分,则两者都执行相同的操作。
tract(1) 可用于从 Matroska(TM) 文件中提取附件。
可选项 这 能够 be 用过的 每 输入 文件
-a, --音轨 [!]n、m、...
复制音轨 n, m 等等。这些数字是可以通过以下方式获得的曲目 ID
这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 - 确认 转变。 它们不仅仅是曲目编号(请参阅曲目 ID 部分)。
默认:复制所有音轨。
除了轨道 ID,您还可以提供 ISO 639-2 语言代码。 这只会
适用于为其曲目提供语言标签的源文件。
默认:复制所有此类曲目。
如果 ID 以 ! 那么意思是相反的:复制这个的所有曲目
种类但在 ! 之后列出的那些。
-d, --视频轨道 [!]n、m、...
复制视频轨道 n, m 等等。这些数字是可以通过以下方式获得的曲目 ID
这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 - 确认 转变。 它们不仅仅是曲目编号(请参阅曲目 ID 部分)。
默认:复制所有视频轨道。
除了轨道 ID,您还可以提供 ISO 639-2 语言代码。 这只会
适用于为其曲目提供语言标签的源文件。
如果 ID 以 ! 那么意思是相反的:复制这个的所有曲目
种类但在 ! 之后列出的那些。
-s, --字幕轨道 [!]n、m、...
复制字幕轨道 n, m 等。 数字是可以获得的曲目ID
与 - 确认 转变。 它们不仅仅是曲目编号(请参阅曲目部分
身份证)。 默认:复制所有字幕轨道。
除了轨道 ID,您还可以提供 ISO 639-2 语言代码。 这只会
适用于为其曲目提供语言标签的源文件。
如果 ID 以 ! 那么意思是相反的:复制这个的所有曲目
种类但在 ! 之后列出的那些。
-b, --按钮轨道 [!]n、m、...
复制按钮轨道 n, m 等等。这些数字是可以通过以下方式获得的曲目 ID
这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 - 确认 转变。 它们不仅仅是曲目编号(请参阅曲目 ID 部分)。
默认:复制所有按钮轨道。
除了轨道 ID,您还可以提供 ISO 639-2 语言代码。 这只会
适用于为其曲目提供语言标签的源文件。
如果 ID 以 ! 那么意思是相反的:复制这个的所有曲目
种类但在 ! 之后列出的那些。
--跟踪标签 [!]n、m、...
复制轨道的标签 n, m 等。 数字是可以获得的曲目ID
与 - 确认 开关(请参阅轨道 ID 部分)。 他们不仅仅是赛道
数字。 默认:复制所有轨道的标签。
如果 ID 以 ! 那么意思是相反的:复制除
! 之后列出的 ID。
-m, --附件 [!]n[:全部|第一个],m[:全部|第一个],...
复制带有 ID 的附件 n, m 等全部或仅第一个输出文件。 每个
ID 可以后跟“:all”(如果两者都没有输入,则为默认值)或
':第一的'。 如果拆分处于活动状态,则 ID 指定为的那些附件
':all' 被复制到所有生成的输出文件,而其他的只是
复制到第一个输出文件中。 如果拆分未激活,则两个变体都有
同样的效果。
默认是将所有附件复制到所有输出文件。
如果 ID 以 ! 那么意思是相反的:复制除
! 之后列出的 ID。
-A, --无音频
不要从此文件中复制任何音轨。
-D, --无视频
不要从此文件中复制任何视频轨道。
-S, --无字幕
不要从此文件中复制任何字幕轨道。
-B, --无按钮
不要从此文件中复制任何按钮轨道。
-T, --无轨道标签
不要从此文件中复制任何特定于轨道的标签。
--无章节
不要从这个文件复制章节。
-M, --无附件
不要从该文件复制附件。
--无全局标签
不要从此文件中复制全局标签。
--章节字符集 字符集
设置用于转换为 UTF-8 以获取章节信息的字符集
包含在源文件中。 请参阅有关文本文件和字符集的部分
解释如何 合并(1) 字符集之间的转换。
--章节语言 语言代码
设置为每个章节条目编写的 ISO639-2 语言代码。 这个选项
可用于包含章节但不包含有关章节信息的源文件
章节的语言,例如 MP4 和 OGM 文件。
-y, - 同步 TID:d[,o[/p]]
用 id 调整曲目的时间码 TID by d 多发性硬化症。 轨道 ID 相同
作为那些给出的 - 确认 (请参阅轨道 ID 部分)。
o/p: 调整时间戳 o/p 修复线性漂移。 p 如果省略,则默认为 1。
以上皆是 o 和 p 可以是浮点数。
默认值:无手动同步校正(与 d = 0 和 o/p = 1.0).
对于应用到多个轨道的输入文件,此选项可以多次使用
每次选择不同的轨道 ID。
--提示 TID:无|iframes|全部
控制为给定轨道创建哪些轨道提示(索引)条目(请参阅
部分轨道 ID)。 'none' 禁止创建提示条目。 仅适用于“iframe”
没有后向或前向引用的块(=视频轨道中的 I 帧)被放置
进入提示表。 “所有”原因 合并(1) 为所有块创建提示条目
这将使文件非常大。
视频轨道的默认值为“iframes”,所有其他轨道的默认值为“none”。 另见选项
--无提示 它禁止创建提示条目,而不管 --提示 选项
用过的。
对于应用到多个轨道的输入文件,此选项可以多次使用
每次选择不同的轨道 ID。
--默认轨道 TID[:布尔]
如果可选,则设置给定轨道的“默认”标志(请参阅轨道 ID 部分)
论点 布尔 不存在。 如果用户自己没有明确选择曲目
那么玩家应该更喜欢设置了“默认”标志的曲目。 只有一个
每种轨道(音频、视频、字幕、按钮)都可以设置“默认”标志。
如果用户不希望任何曲目设置默认曲目标志,则他必须设置 布尔
至 0 对于所有曲目。
对于应用到多个轨道的输入文件,此选项可以多次使用
每次选择不同的轨道 ID。
--强制跟踪 TID[:布尔]
如果可选,则设置给定轨道的“强制”标志(请参阅轨道 ID 部分)
论点 布尔 不存在。 播放器必须播放设置了此标志的所有曲目
至 1.
对于应用到多个轨道的输入文件,此选项可以多次使用
每次选择不同的轨道 ID。
--blockadd TID:级别
仅保持 BlockAdditions 达到该级别 水平 对于给定的轨道。 默认是
保持所有水平。 此选项仅影响某些类型的编解码器,例如 WAVPACK4。
--曲目名称 TID:名称
将给定轨道的轨道名称(请参阅轨道 ID 部分)设置为 姓名.
- 语 TID:语言
设置给定轨道的语言(请参阅轨道 ID 部分)。 两种 ISO639-2 语言
代码和 ISO639-1 国家代码是允许的。 国家代码将被转换为
语言代码自动。 包括 ISO639-2 代码在内的所有语言都可以
与 --列表语言 选项。
对于应用到多个轨道的输入文件,此选项可以多次使用
每次选择不同的轨道 ID。
-t, --标签 TID:文件名
读取带有编号的曲目的标签 TID 从文件 文档名称. 见章节
关于下面的标签的详细信息。
--aac-is-sbr 时间[:0|1]
告诉 合并(1)那个带有ID的曲目 TID 是 SBR AAC(也称为 HE-AAC 或
AAC+)。 如果 a) 源文件是 AAC 文件(而不去 查阅
Matroska(TM) 文件)和 b) AAC 文件包含 SBR AAC 数据。 这样做的原因
switch 是技术上不可能自动告诉正常的 AAC 数据来自
SBR AAC 数据,无需解码完整的 AAC 帧。 由于有几个专利问题
带AAC解码器 合并(1) 永远不会包含这个解码阶段。 所以对于 SBR AAC
文件这个开关是强制性的。 生成的文件可能无法正确播放或
如果省略开关,甚至根本不会。
如果源文件是 Matroska(TM) 文件,那么 CodecID 应该足以检测
SBR AAC。 但是,如果 CodecID 错误,则可以使用此开关进行更正
那。
如果 mkvmerge 错误地检测到 AAC 文件是 SBR,那么您可以将“:0”添加到
轨道 ID。
--减少到核心 TID
一些音频编解码器有一个有损核心和可选的扩展来实现无损
解码。 这个选项告诉 合并(1) 只复制核心而不复制扩展。
默认情况下 合并(1) 复制核心和扩展。
目前只有 DTS 曲目受此选项影响。 TrueHD 轨道包含
嵌入式 AC-3 核心改为呈现为两个独立的轨道,用户可以
选择要复制的曲目。 对于 DTS,这种方案不能用作 HD 扩展
无法自行解码 - 与 TrueHD 数据不同。
如果 mkvmerge 错误地检测到 AAC 文件是 SBR,那么您可以将“:0”添加到
轨道 ID。
--时间码 TID:文件名
从以下位置读取要用于特定轨道 ID 的时间码 文档名称。 这些
时间码强行覆盖时间码 合并(1) 正常计算。 读
关于外部时间码文件的部分。
--默认持续时间 工时:x
将给定轨道的默认持续时间强制为指定值。 还修改了
轨道的时间码以匹配默认持续时间。 论据 x 必须后缀
's'、'ms'、'us'、'ns'、'fps'、'p' 或 'i' 以秒为单位指定默认持续时间,
毫秒、微秒、纳秒、“每秒帧数”、“每秒渐进帧数”
秒'或'隔行每秒帧数'。 号码 x 本身可以是一个
浮点数或分数。
如果不强制默认持续时间,则 mkvmerge 将尝试导出轨道的
来自容器和/或特定轨道的编码比特流的默认持续时间
类型,例如 AVC/h.264 或 MPEG-2。
此选项还可用于更改视频轨道的 FPS,而无需使用
外部时间码文件。
--fix-bitstream-timing-信息 时间[:0|1]
通常情况下 合并(1) 不改变存储的时序信息(帧/场速率)
在视频比特流中。 使用此选项可调整信息以匹配
容器计时信息。 容器计时信息可以来自各种
来源:来自命令行(见选项 --默认持续时间),源容器
或从比特流派生。
备注
到目前为止,这仅适用于 AVC/h.264 视频轨道。
--nalu-大小-长度 工时:n
强制 NALU 大小长度为 n 字节。 此参数仅在 AVC/h.264
使用基本流打包器。 如果省略它默认为 4 个字节,但有
是包含所有小于 65536 字节的帧或切片的文件。 为了
此类文件,您可以使用此参数并将大小减小到 2。
- 压缩 工时:n
选择要用于曲目的压缩方法。 请注意,该播放器还具有
来支持这种方法。 有效值为“无”、“zlib”、“lzo”/“lxo1x”、“bz2”/“bzlib”
和'mpeg4_p2'/'mpeg4p2'。 值 'lzo'/'lxo1x' 和 'bz2'/'bzlib' 只是
如果可用 合并(1) 已编译为支持 liblzo(TM) 和
bzlib(TM) 压缩库。
压缩方法 'mpeg4_p2'/'mpeg4p2' 是一种特殊的压缩方法,称为
“标题删除”仅适用于 MPEG4 第 2 部分视频轨道。
某些字幕轨道的默认值是“zlib”压缩。 这种压缩方法是
也是大多数(如果不是全部)播放应用程序支持的应用程序。 支持其他
不保证“无”以外的压缩方法。
可选项 这 仅由 应用 至 电影 轨道
-f, --fourcc TID:四CC
强制 FourCC 为指定值。 仅适用于“MS”中的视频轨道
兼容模式'。
--显示尺寸 TID:宽x高
Matroska(TM) 文件包含两个值,用于设置播放器的显示属性
应该在播放时将图像缩放到:显示宽度和显示高度。 这些值
可以使用此选项进行设置,例如“1:640x480”。
指定值的另一种方法是使用 --纵横比 或者
--纵横比因子 选项(见下文)。 这些选项是相互排斥的。
--纵横比 TID:比率|宽/高
Matroska(TM) 文件包含两个值,用于设置播放器的显示属性
应该在播放时将图像缩放到:显示宽度和显示高度。 有了这个
选项 合并(1)会自动计算显示宽度和显示高度
基于图像的原始宽度和高度以及由此给出的纵横比
选项。 该比率可以作为浮点数给出 比 或作为
分数 '宽度/高度',例如'16/9'。
指定值的另一种方法是使用 --纵横比因子 or
--显示尺寸 选项(见上文和下文)。 这些选项是相互的
排斥。
--纵横比因子 TID:因子|n/d
另一种设置纵横比的方法是指定一个 因素. 原始纵横比
首先乘以这个 因素 并在之后用作目标纵横比。
指定值的另一种方法是使用 --纵横比 or --显示尺寸
选项(见上文)。 这些选项是相互排斥的。
--裁剪 TID:左、上、右、下
将视频轨道的像素裁剪参数设置为给定值。
--立体声模式 TID:n|关键字
使用轨道 ID 设置视频轨道的立体声模式 TID. 模式可以是
一个号码 n 之间 0 和 14 或以下关键字之一:
'mono', 'side_by_side_left_first', 'top_bottom_right_first', 'top_bottom_left_first',
'checkerboard_right_first'、'checkerboard_left_first'、'row_interleaved_right_first'、
'row_interleaved_left_first', 'column_interleaved_right_first',
'column_interleaved_left_first'、'anaglyph_cyan_red'、'side_by_side_right_first'、
'anaglyph_green_magenta'、'both_eyes_laced_left_first'、'both_eyes_laced_right_first'。
可选项 这 仅由 应用 至 文本 字幕 轨道
--子字符集 TID:字符集
为给定的 UTF-8 字幕设置转换为 UTF-8 的字符集
轨道 ID。 如果未指定,字符集将从当前语言环境派生
设置。 请注意,从 Matroska(TM) 文件读取的字幕不需要字符集
或来自 Kate 流,因为它们总是以 UTF-8 格式存储。 请参阅有关文本的部分
文件和字符集的解释如何 合并(1)字符之间的转换
集。
对于应用到多个轨道的输入文件,此选项可以多次使用
每次选择不同的轨道 ID。
其他 选项
-i, - 确认 文档名称
会让 合并(1) 探测单个文件并报告其类型,包含的曲目
在文件及其轨道 ID 中。 如果使用此选项,则唯一的其他选项
允许是文件名。
可以使用选项 --identification- 更改用于结果的输出格式
格式。
-I, --识别详细 文档名称
此选项已弃用。 使用 --identification-format 详细文本 --identify ...
代替。
-F, --标识格式 格式
确定 --identify 选项使用的输出格式。 以下格式是
支持:文本(如果不使用此选项,则为默认值)、详细文本和 json。
1. 文本格式简短易读。 每个项目由一行组成
找到(容器、轨道、附件等)。
这种格式不应该被解析。 输出将被翻译成
language 合并(1) 使用(另见 --ui-language)。
2. 详细文本格式扩展了文本格式,具有附加属性
每个物品。 额外的信息用方括号括起来。 它包括
空格分隔的键/值对,其中键和值用冒号分隔。
每个值都根据有关部分中描述的规则进行转义
转义文本中的特殊字符。
这种格式不应该被解析。 输出将被翻译成
language 合并(1) 使用(另见 --ui-language)。
3. json 格式输出机器可读的 JSON 表示。 这种格式
遵循文件中描述的 JSON 模式
mkvmerge-标识-输出-schema.json[3]。
-l, --列表类型
列出支持的输入文件类型。
--列表语言
列出所有语言及其 ISO639-2 代码,这些代码可用于 - 语
选项。
- 优先事项 优先
设置进程优先级 合并(1) 运行。 有效值为“最低”,
“较低”、“正常”、“较高”和“最高”。 如果没有给出任何内容,则使用“正常”。
在类 Unix 系统上 合并(1) 将使用 不错(2) 功能。 因此只有
超级用户可以使用“更高”和“最高”。 在 Windows 上,所有值都可用于每个
用户。
选择“最低”也会导致 合并(1)除了选择空闲I/O优先级
尽可能低的进程优先级。
--命令行字符集 字符集
设置字符集以转换命令行上给出的字符串。 它默认
到系统当前语言环境给出的字符集。 此设置适用于
以下选项的参数: - 标题, --曲目名称 和
--附件说明.
--输出字符集 字符集
设置将要输出的字符串转换为的字符集。 它
默认为系统当前语言环境给出的字符集。
-r, --重定向输出 文档名称
将所有消息写入文件 文档名称 而不是控制台。 虽然这可以
使用输出重定向轻松完成在某些情况下需要此选项:
当终端在将输出写入文件之前重新解释输出时。 人物
设置设置 --输出字符集 很荣幸。
--ui-语言 码
强制翻译语言 码 被使用(例如“de_DE”代表德语
翻译)。 最好使用环境变量 朗, LC_消息 和
LC_ALL 尽管。 输入“列表”作为 码 会引发 合并(1) 输出一个列表
可用的翻译。
-调试 主题
打开特定功能的调试。 此选项仅对开发人员有用。
- 从事 特集
开启实验功能。 可以使用以下命令请求可用功能列表
合并 - 从事 名单. 这些功能并不打算在正常情况下使用。
--gui模式
打开 GUI 模式。 在这种模式下,特殊格式的行可能会输出,可以告诉
一个控制 GUI 发生了什么。 这些消息遵循“#GUI#message”格式。
消息后面可能跟有键/值对,如
'#GUI#message#key1=value1#key2=value2...'。 消息和密钥都不是
翻译并始终以英文输出。
@选项文件
从文件中读取额外的命令行参数 选项文件. 见章节
关于选项文件以获取更多信息。
--能力
列出有关已编译并退出的可选功能的信息。 这
第一行输出将是版本信息。 以下所有行完全包含
一个词的存在表明该功能已被编译。这些
特点是:
·“BZ2”——bzlib(TM) 压缩库。 影响可用压缩
方法 - 压缩 选项。
·“LZO”——lzo(TM) 压缩库。 影响可用压缩
方法 - 压缩 选项。
·“FLAC”——读取原始 FLAC 文件并处理其他容器中的 FLAC 轨道,
例如Ogg(TM) 或Matroska(TM)。
-h, - 帮帮我
显示使用信息并退出。
-V, - 版
显示版本信息并退出。
- 检查更新
通过下载 URL 在线检查新版本
http://mkvtoolnix-releases.bunkus.org/latest-release.xml. 将输出四行
key=value 样式:从中检索信息的 URL(键
version_check_url),当前运行的版本(key running_version),最新的
发行版本(key available_version)和下载 URL(key download_url)。
之后,如果没有更新的版本可用,程序会以退出代码 0 存在,
如果有更新的版本可用,则为 1,如果发生错误,则为 2(例如,如果
无法检索更新信息)。
此选项仅在程序构建时支持 libcurl 时可用。
用法
对于每个文件,用户可以选择哪些曲目 合并(1) 应取。 他们都放
到指定的文件中 -o. 已知(和支持)的源格式列表可以是
获得 -l 选项。
重要
命令行选项的顺序很重要。 请阅读“选项顺序”部分
如果您是该计划的新手。
OPTION 订单
输入选项的顺序对于某些选项很重要。 选项落入
两类:
1. 影响整个程序并且不与任何输入文件绑定的选项。 这些
包括但不限于 --命令行字符集, - 输出 or - 标题。 这些可以
出现在命令行的任何位置。
2. 影响单个输入文件或输入文件中单个轨道的选项。 这些
选项都适用于命令行上的以下输入文件。 所有选项
可以写入应用于相同输入(或来自相同输入文件的轨道)的文件
以任何顺序,只要它们都出现在该输入文件的名称之前。 示例
适用于输入文件的选项是 --无章节 or --章节字符集. 示例
适用于单个轨道的选项是 --默认持续时间 or - 语.
选项从左到右处理。 如果一个选项在其中多次出现
相同的范围然后将使用最后一次出现。 因此标题将被设置为
以下示例中的“其他东西”:
$ mkvmerge -o output.mkv --title '这个和那个' input.avi --title '别的东西'
以下示例显示使用 - 语 选择两次是可以的,因为它们是
用于不同的范围。 即使它们适用于它们适用的相同轨道 ID
不同的输入文件,因此具有不同的范围:
$ mkvmerge -o 输出.mkv --语言 0:fre français.ogg --语言 0:deu deutsch.ogg
示例
假设您有一个名为 MyMovie.avi 的文件和一个单独的文件中的音轨,
例如“MyMovie.wav”。 首先,您要将音频编码为 OggVorbis(TM):
$ oggenc -q4 -oMyMovie.ogg 我的电影.wav
几分钟后,您可以加入视频和音频:
$ mkvmerge -o MyMovie-with-sound.mkv MyMovie.avi MyMovie.ogg
如果您的 AVI 已经包含一个音轨,那么它也会被复制(如果 合并(1)
支持音频格式)。 为了避免这种情况,简单地做
$ mkvmerge -o MyMovie-with-sound.mkv -A MyMovie.avi MyMovie.ogg
经过几分钟的考虑,您翻录了另一条音轨,例如导演的
评论或其他语言到“MyMovie-add-audio.wav”。 再次编码并加入
与另一个文件:
$ oggenc -q4 -oMyMovie-add-audio.ogg 我的Movie-add-audio.wav
$ mkvmerge -o MM-complete.mkv MyMovie-with-sound.mkv MyMovie-add-audio.ogg
可以达到相同的结果
$ mkvmerge -o MM-complete.mkv -A MyMovie.avi MyMovie.ogg MyMovie-add-audio.ogg
现在启动 mplayer(TM) 并享受。 如果您有多个音轨(甚至视频
曲目)然后你可以告诉 mplayer(TM) 用 ' 播放哪个曲目-视频'和'-援助'
选项。 这些是基于 0 的,不区分视频和音频。
如果您需要同步音轨,您可以轻松实现。 首先找出哪个轨道
Vorbis 轨道的 ID
$ mkvmerge -- 识别 outofsync.ogg
现在您可以在以下命令行中使用该 ID:
$ mkvmerge -o goodsync.mkv -A source.avi -y 12345:200 不同步.ogg
这将在带有 ID 的音轨开头添加 200 毫秒的静音 12345
取自“outofsync.ogg”。
一些电影开始正确同步,但慢慢地不同步。 对于这类电影
您可以指定应用于所有时间戳的延迟因子——不添加数据或
移除。 因此,如果您将该因素设置得太大或太小,您都会得到糟糕的结果。 一个
例如,我转码的一集是 0.2 结束时不同步的秒数
电影是 77340 帧长。 在 29.97fps0.2 秒对应约。 6 框架。
所以我做了
$ mkvmerge -o goodsync.mkv -y 23456:0,77346/77340 不同步.mkv
结果很好。
同步选项也可以以相同的方式用于字幕。
对于文本字幕,您可以使用某些 Windows 软件(如 SubRipper(TM))或
subrip(TM) 包在 转码(1)'contrib/subrip' 目录中的源代码。 这
一般流程是:
1. 从源中提取原始字幕流:
$ tccat -i /path/to/copied/dvd/ -T 1 -L | tcextract -x ps1 -t vob -a 0x20 | 字幕2pgm -o 我的电影
2. 使用 gocr 将生成的 PGM 图像转换为文本:
$ pgm2txt 我的电影
3. 拼写检查生成的文本文件:
$ ispell -d 美国*txt
4. 将文本文件转换为 SRT 文件:
$ srttool -s -w -i 我的电影.srtx -o 我的电影.srt
生成的文件可以用作另一个输入文件 合并(1):
$ mkvmerge -o 我的电影.mkv 我的电影.avi 我的电影.srt
如果您想为给定曲目指定语言,那么这很容易完成。 先找
为您的语言输出 ISO639-2 代码。 合并(1) 可以为您列出所有这些代码:
$ mkvmerge --列表语言
在列表中搜索您需要的语言。 假设您已经放置了两个音轨
进入 Matroska(TM) 文件,并希望设置他们的语言代码并且他们的曲目 ID 是
2 和 3. 这可以用
$ mkvmerge -o with-lang-codes.mkv --语言 2:ger --语言 3:dut without-lang-codes.mkv
如您所见,您可以使用 - 语 切换多次。
也许您还想让播放器使用荷兰语作为默认语言。
您还有额外的字幕,例如英语和法语,并且想要播放器
默认显示法语。 这可以用
$ mkvmerge -o with-lang-codes.mkv --language 2:ger --language 3:dut --default-track 3 without-lang-codes.mkv --language 0:eng english.srt --default-track 0 -- 语言 0:fre french.srt
如果您没有看到您指定的语言或默认曲目标志
微信信息(1) 的输出然后请阅读有关默认值的部分。
关闭输入文件的压缩。
$ mkvmerge -o no-compression.mkv --compression -1:none MyMovie.avi --compression -1:none mymovie.srt
查询 IDS
一些选项 合并(1) 需要一个轨道 ID 来指定它们应该是哪个轨道
应用于。 这些轨道 ID 在对当前输入进行解复用时由阅读器打印
文件,或者如果 合并(1) 用 - 确认 选项。 此类输出的示例:
$ mkvmerge -i v.mkv
文件“v.mkv”:容器:Matroska(TM)
轨道 ID 0:视频(V_MS/VFW/FOURCC、DIV3)
轨道 ID 1:音频 (A_MPEG/L3)
不要混淆分配给放置在输出中的轨道的轨道 ID
带有输入文件轨道 ID 的 MKV 文件。 仅输入文件轨道 ID 用于
需要这些值的选项。
另请注意,每个输入文件都有自己的一组轨道 ID。 因此,曲目 ID 为
'mkvmerge --identify' 报告的文件 'file1.ext' 无论有多少都不会改变
其他输入文件在那里或在哪个位置使用“file1.ext”。
轨道 ID 的分配方式如下:
· AVI文件:视频轨道的ID为0,音轨按升序获取ID
从 1 开始。
· AAC、AC-3、MP3、SRT 和 WAV 文件:该文件中的一个“曲目”的 ID 为 0。
· 大多数其他文件:按在文件中找到曲目的顺序分配曲目 ID
从 0 开始。
特殊轨道 ID '-1' 是一个通配符并将给定的开关应用于所有轨道
从输入文件中读取。
使用轨道 ID 的选项是那些描述包含“TID”的选项。 这
以下选项也使用轨道 ID: --音轨, --视频轨道,
--字幕轨道, --按钮轨道 和 --跟踪标签.
文字 FILES AND 字符 设置 转换
备注
本节适用于 MKVToolNix 中的所有程序,即使它只提到
合并(1)。
介绍
Matroska(TM) 文件中的所有文本都以 UTF-8 编码。 这意味着 合并(1) 必须
将它读取的每个文本文件以及命令行上给出的每个文本从一个
字符集为 UTF-8。 作为回报,这也意味着 合并(1) 的输出必须是
从 UTF-8 转换回该字符集,例如,如果使用非英语翻译
- --ui-语言 或用于源自 Matroska(TM) 文件的文本。
合并(1) 根据字节顺序的存在自动执行此转换
标记(简称:BOM)或系统的当前语言环境。 如何推断字符集
区域设置取决于操作系统 合并(1) 运行。
字节 秩序 标记 (BOM)
以 BOM 开头的文本文件已经以一种 UTF 表示形式进行编码。
合并(1) 支持以下五种模式:UTF-8、UTF-16 Little and Big Endian、UTF-32
小端和大端。 带有 BOM 的文本文件会自动转换为 UTF-8。 任何
否则会为此类文件设置字符集的参数(例如
--子字符集) 被默默忽略。
Linux 和 类Unix 系统 如: Mac OS
在类 Unix 系统上 合并(1) 使用 设置区域(3) 系统调用依次使用
环境变量 朗, LC_ALL 和 LC_CYPE. 结果字符集通常是一个
UTF-8 或 ISO-8859-* 系列,用于所有文本文件操作和
在命令行上编码字符串并输出到控制台。
Windows
在 Windows 上,用于转换文本文件的默认字符集由
打电话给 获取ACP() 系统调用。
读取命令行是通过 获取命令行W() 已经返回的函数
一个 Unicode 字符串。 因此选项 --命令行字符集 在 Windows 上被忽略。
输出到控制台包含三个场景:
1.如果使用选项重定向输出 --重定向输出 然后是默认字符集
是 UTF-8。 这可以改变 --输出字符集.
如果输出重定向为 CMD.EXE 本身,例如使用 mkvinfo file.mkv >
info.txt,则字符集始终为 UTF-8,无法更改。
否则(直接写入控制台时)Windows 函数 写控制台W()
使用和选项 --输出字符集 被忽略。 控制台应该可以
输出对应语言支持的所有Unicode字符
已安装(例如,英文 Windows 上可能不显示中文字符
版本)。
命令 线 选项
存在以下允许指定字符集的选项:
· --子字符集 用于文本字幕文件和存储在容器中的文本字幕轨道
无法明确确定字符集的格式(例如 Ogg
文件),
· --章节字符集 对于章节文本文件以及存储在
无法明确确定字符集的容器格式(例如
用于章节信息、曲目和文件标题等的 Ogg 文件; 章节的 MP4 文件
信息),
· --命令行字符集 对于命令行上的所有字符串,
· --输出字符集 对于写入控制台或文件的所有字符串,如果输出有
被重定向 --重定向输出 选项。 在非 Windows 系统上,默认
输出字符集是系统的当前字符集。 在 Windows 上,它默认为
UTF-8 都用于重定向 --重定向输出 和 CMD.EXE 本身,例如
mkvinfo 文件.mkv > info.txt。
OPTION FILES
选项文件是一个文件 合并(1) 可以从中读取额外的命令行参数。 这个
可用于规避 shell 或操作的某些限制
系统执行外部程序时,如有限的命令行长度。
有几个关于选项文件的规则。 第一个非空白字符的行
是井号 ('#') 被视为注释并被忽略。 开头的空格和
行尾将被剥离。 每行必须包含一个选项。
不包含任何内容的行也会被忽略。 空参数由
“#EMPTY#”行。
可以转义多个字符,例如,如果您需要以“#”开头的非注释行。 这
规则在有关转义文本的部分中进行了描述。
请注意,必须始终转义反斜杠。 哈希标记 ('#') 必须转义,如果它们
不应该开始评论。
命令行 '合并 -o “我的 文件.mkv” -A "a 电影.avi” 声音.ogg' 可以转换
进入以下选项文件:
# 在 Windows 上写入文件 "c:\Matroska\my file.mkv"。
-o
c:\\Matroska\\我的文件.mkv
# 设置标题为'#65'。
- 标题
\h65
# 只从“a movie.avi”中获取视频。
-A
电影.avi
声音.ogg
逃离 特别 字符 IN 文字
有几个地方必须或应该对文本中的特殊字符进行转义。 这
转义规则很简单:每个需要转义的字符都被替换为
反斜杠后跟另一个字符。
规则是:''(一个空格)变成'\s','"'(双引号)变成'\2',':'变成
'\c', '#' 变成 '\h', '[' 变成 '\b', ']' 变成 '\B' 和 '\'(一个反斜杠)
本身变成'\\'。
字幕
有多种文本和位图字幕格式可以嵌入 Matroska(TM)。
文本字幕必须重新编码为 UTF-8,以便他们可以正确显示
播放器(请参阅有关文本文件和字符集的部分以了解如何
合并(1) 在字符集之间转换)。 Kate 字幕已经采用 UTF-8 编码
并且不必重新编码。
目前支持以下字幕格式:
· 字幕开膛手 (SRT) 文件
·变电站Alpha(SSA)/高级变电站Alpha脚本(ASS)
· 通用字幕格式 (USF) 文件
· OggKate 流
· VobSub 位图字幕文件
· 蓝光光盘上的 PGS 位图字幕文件
文件 链接
Matroska(TM) 支持文件链接,它只是说一个特定的文件是
当前文件的前驱或后继。 准确地说,并不是真正的文件
链接但 Matroska(TM) 段。 由于大多数文件可能只包含
一个 Matroska(TM) 段 以下解释使用术语“文件链接”,尽管
“段链接”会更合适。
每个段由唯一的 128 位宽段 UID 标识。 这个 UID 是自动的
由...生成 合并(1). 链接主要是通过放置段 UID 来完成的
(简称:SID)上一个/下一个文件的段头信息。 微信信息(1)
如果找到它们,则打印这些 SID。
如果一个文件被分成几个较小的文件并使用链接,那么时间码将
不再从 0 开始,而是从最后一个文件停止的地方继续。 这样一来
即使以前的文件不可用(例如,流式传输时)也会保留绝对时间。
如果未使用链接,则每个文件的时间码应从 0 开始。 默认情况下
合并(1) 不使用文件链接。 如果你愿意,你可以打开它 - 关联
选项。 此选项仅在拆分也被激活时有用。
无论拆分是否处于活动状态,用户都可以分辨 合并(1) 链接
生成的文件到特定的 SID。 这是通过选项实现的 --链接到上一个 和
--链接到下一个. 这些选项接受格式为 微信信息(1) 输出:
16个十六进制数之间 0x00 和 0xff 每个前缀为'0x',例如'0x41 0xda 0x73
0x66 0xd9 0xcf 0xb2 0x1e 0xae 0x78 0xeb 0xb4 0x5e 0xca 0xb3 0x93'。 或者更短的
可以使用的形式:16个十六进制数之间 0x00 和 0xff 没有“0x”前缀
并且没有空格,例如'41da7366d9cfb21eae78ebb45ecab393'。
如果使用拆分,则第一个文件将链接到给定的 SID
--链接到上一个 并且最后一个文件链接到给定的 SID --链接到下一个。 如果
不使用拆分,则一个输出文件将链接到两个 SID。
DEFAULT 王斌金璟閣的價值觀
Matroska(TM) 规范规定某些元素具有默认值。 通常一个
如果元素的值等于其默认值,则元素不会写入文件,以便
节省空间。 用户可能错过的元素 微信信息(1) 的输出是 language
和 默认 跟踪时 旗 元素。 的默认值 language 是英语
('eng') 和默认值 默认 跟踪时 旗 is true. 因此,如果您使用
- 语 0:英文 对于曲目,则它不会出现在 微信信息(1) 的输出。
ATTACHMENTS
也许您还想在 Matroska(TM) 文件中保留一些照片,或者您正在使用
SSA 字幕,需要一种非常罕见的特殊 TrueType(TM) 字体。 在这些情况下你
可以将这些文件附加到 Matroska(TM) 文件中。 它们不会只是附加到
文件,但嵌入其中。 然后播放器可以显示这些文件(“照片”案例)或使用
它们来呈现字幕(“TrueType(TM) 字体”案例)。
以下是如何将照片和 TrueType(TM) 字体附加到输出文件的示例:
$ mkvmerge -o 输出.mkv -A 视频.avi 声音.ogg \
--attachment-description “我和台后乐队的小聚会”\
--attachment-mime-type 图像/jpeg \
--附加文件 me_and_the_band.jpg \
--attachment-description “真正罕见且令人难以置信的好看字体” \
--附件类型应用程序/八位字节流\
--附加文件really_cool_font.ttf
如果使用包含附件文件的 Matroska(TM) 作为输入文件,则 合并(1)
将附件复制到新文件中。 复制附件的选择
哪些不能用选项改变 --附件 和 --无附件.
章和
Matroska(TM) 章节系统比 OGM 使用的旧的已知系统更强大
文件。 完整规格可在以下位置找到 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 马特罗斯卡(TM) 官网[1]。
合并(1) 支持两种章节文件作为其输入。 第一种格式,称为
“简单章节格式”与 OGM 工具所期望的格式相同。 第二种格式
是一种基于 XML 的章节格式,支持 Matroska(TM) 的所有章节功能。
- 简单 章 格式
此格式由以 'CHAPTERxx=' 和 'CHAPTERxxNAME=' 开头的几对行组成
分别。 第一个包含开始时间码,而第二个包含
标题。 下面是一个例子:
第01章=00:00:00.000
CHAPTER01NAME=介绍
第02章=00:02:30.000
CHAPTER02NAME=宝宝准备摇滚
第03章=00:02:42.300
CHAPTER03NAME=婴儿摇晃房子
合并(1) 将每一对或每一行转换成一个 Matroska(TM)ChapterAtom。 它确实
不设置任何 ChapterTrackNumber 这意味着章节都适用于所有曲目
文件。
由于这是一个文本文件,可能需要进行字符集转换。 请参阅有关部分
文本文件和字符集的解释如何 合并(1) 之间的转换
字符集。
- XML 基于 章 格式
基于 XML 的章节格式如下例所示:
00:00:30.000
00:01:20.000
短短的一章
英
00:00:46.000
00:01:10.000
那篇短章的一部分
英
使用这种格式可以实现简单章节无法实现的三件事
格式:
1.可以设置章节结束的时间戳,
2.章节可以嵌套,
3.语言和国家可以设置。
mkvtoolnix 发行版在 doc 子目录中包含一些示例文件,这些文件可以
用作依据。
下面列出了受支持的 XML 标记、它们的数据类型以及(在适当的情况下)
它们的值的有效范围:
章节(主)
版本条目(主)
EditionUID(无符号整数,有效范围:1 <= 值)
EditionFlagHidden(无符号整数,有效范围:0 <= value <= 1)
EditionFlagDefault(无符号整数,有效范围:0 <= value <= 1)
EditionFlagOrdered(无符号整数,有效范围:0 <= value <= 1)
ChapterAtom(大师)
ChapterAtom(大师)
ChapterUID(无符号整数,有效范围:1 <= 值)
ChapterTimeStart(无符号整数)
ChapterTimeEnd(无符号整数)
ChapterFlagHidden(无符号整数,有效范围:0 <= value <= 1)
ChapterFlagEnabled(无符号整数,有效范围:0 <= value <= 1)
ChapterSegmentUID(二进制,有效范围:1 <= 字节长度)
ChapterSegmentEditionUID(无符号整数,有效范围:1 <= 值)
ChapterPhysicalEquiv(无符号整数)
ChapterTrack(主)
ChapterTrackNumber(无符号整数,有效范围:1 <= 值)
章节展示(大师)
ChapterString(UTF-8 字符串)
ChapterLanguage(UTF-8 字符串)
ChapterCountry(UTF-8 字符串)
ChapterProcess (主)
ChapterProcessCodecID(无符号整数)
ChapterProcessPrivate(二进制)
ChapterProcessCommand(主)
ChapterProcessTime(无符号整数)
ChapterProcessData(二进制)
一般用途总体评估 笔记
拆分文件时 合并(1) 也会正确调整章节。 这意味着
每个文件只包含适用于它的章节条目,并且时间码
将偏移以匹配每个输出文件的新时间码。
合并(1) 能够从 Matroska(TM) 源文件复制章节,除非这是
明确禁用 --无章节 选项。 所有来源的章节
(Matroska(TM) 文件、Ogg 文件、MP4 文件、章节文本文件)通常不合并,但
最终出现在单独的 ChapterEditions 中。 仅当从多个 Matroska(TM) 或
共享相同版本 UID 的 XML 文件将章节合并为一个
章节版。 如果在其他情况下也需要这样的合并,那么用户有
从所有来源中提取章节 tract(1)首先,合并XML文件
手动并在之后混合它们。
标签
介绍
Matroska(TM) 支持大量已弃用的标签和一个新的、更简单的标签
像它一样的系统用于大多数其他容器: 键=值. 然而,在 Matroska(TM)
这些标签也可以嵌套,并且 KEY 和 VALUE 是他们自己的元素。
示例文件 example-tags-2.xml 展示了如何使用这个新系统。
适用范围 of 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 标签
Matroska(TM) 标签不会自动应用于整个文件。 他们可以,但他们也
可能适用于文件的不同部分:一个或多个曲目,一个或多个章节,
甚至是两者的结合。 这 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 马特罗斯卡(TM) 规范[4] 提供了更多细节
关于这个事实。
一个重要的事实是标签与曲目或章节相关联
TargetsMatroska(TM) 标记元素,并且用于此链接的 UID 是 而不去 轨道
标识 合并(1) 随处使用。 相反,使用的数字是 UID 合并(1)
自动计算(如果曲目取自除
Matroska(TM)) 或从源文件复制的,如果曲目的源文件是
Matroska(TM) 文件。 因此很难知道在标签文件中使用哪些 UID
在文件移交给 合并(1)。
合并(1) 知道两个选项,您可以使用它们向 Matroska(TM) 文件添加标签:
--全局标签 和 --标签 选项。 不同的是,前一种选择,
--全局标签, 将通过删除任何标签使标签应用于完整文件
上面提到的目标元素。 后一种选择, --标签, 自动插入 UID
这 合并(1) 为指定的标签生成 TID 的一部分。 --标签 选项。
例如:
假设您想向从 AVI 读取的视频轨道添加标签。 合并
- 确认 文件.avi 告诉您视频轨道的 ID(不要将此 ID 与 UID 混用!)
是 0。所以你创建你的标签文件,省略所有 Targets 元素并调用 合并(1):
$ mkvmerge -o 文件.mkv --tags 0:tags.xml 文件.avi
标签 文件 格式
合并(1) 支持基于 XML 的标签文件格式。 格式非常接近模仿
这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 马特罗斯卡(TM) 规范[4]。 二进制和源代码分布
MKVToolNix 带有一个名为 example-tags-2.xml 的示例文件,它简单地列出了所有已知的
标签,可用作现实生活标签文件的基础。
基础知识是:
· 最外层元素必须是.
· 一个逻辑标签包含在一对XML 标签。
· 标签内容前后的空白被忽略。
时间 类型
新的 Matroska(TM) 标记系统只知道两种数据类型,UTF-8 字符串和二进制
类型。 第一个用于标记的名称和元素而二进制类型
用于元素。
由于二进制数据本身不适合 XML 文件 合并(1) 支持另外两种方法
存储二进制数据。 如果 XML 标记的内容以“@”开头,则以下内容
text 被视为文件名。 将对应文件的内容复制到
Matroska(TM) 元素。
否则数据应该是 Base64 编码的。 这是一种转换的编码
将二进制数据转换为一组有限的 ASCII 字符,并用于例如电子邮件程序。
tract(1) 将输出二进制元素的 Base64 编码数据。
不推荐使用的标记系统知道更多的数据类型,可以在
官方 Matroska(TM) 标签规范。 作为 合并(1) 不再支持这个系统这些
这里不描述类型。
已知的 标签 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 XML 文件 格式
下面列出了受支持的 XML 标记、它们的数据类型以及(在适当的情况下)
它们的值的有效范围:
标签(主)
标签(主)
目标(主)
TargetTypeValue(无符号整数)
目标类型(UTF-8 字符串)
TrackUID(无符号整数)
EditionUID(无符号整数)
ChapterUID(无符号整数)
AttachmentUID(无符号整数)
简单(大师)
简单(大师)
名称(UTF-8 字符串)
标签语言(UTF-8 字符串)
DefaultLanguage(无符号整数)
字符串(UTF-8 字符串)
二进制(二进制)
“ 段 信息 XML FILES
使用段信息 XML 文件,可以在“段信息”中设置某些值
信息”Matroska(TM) 文件的头字段。所有这些值都不能通过
其他命令行选项。
其他“段信息”头字段可以通过命令行选项设置,但不能通过
XML 文件。 这包括例如 - 标题 和 --时间码比例 选项。
还有其他元素既不能通过命令行选项也不能通过 XML 设置
文件。 其中包括以下要素: 日期UTC (也称为“混合日期”),
混合应用, 写作应用 和 时间长度. 他们总是由 合并(1) 本身。
下面列出了受支持的 XML 标记、它们的数据类型以及(在适当的情况下)
它们的值的有效范围:
信息(主)
SegmentUID(二进制,有效范围:以字节为单位的长度 == 16)
SegmentFilename(UTF-8 字符串)
PreviousSegmentUID(二进制,有效范围:长度以字节为单位 == 16)
PreviousSegmentFilename(UTF-8 字符串)
NextSegmentUID(二进制,有效范围:以字节为单位的长度 == 16)
NextSegmentFilename(UTF-8 字符串)
SegmentFamily(二进制,有效范围:以字节为单位的长度 == 16)
章翻译(硕士)
ChapterTranslateEditionUID(无符号整数)
ChapterTranslateCodec(无符号整数)
ChapterTranslateID(二进制)
马特罗斯卡(商标) 文件 布局
Matroska(TM) 文件布局非常灵活。 合并(1) 将渲染一个文件
预定义的方式。 生成的文件如下所示:
[EBML 头] [segment {meta seek #1} [segment information] [track information]
{附件} {章节} [cluster 1] {cluster 2} ... {cluster n} {cues} {meta seek #2}
{标签}]
花括号中的元素是可选的,取决于所使用的内容和选项。 一种
几个注意事项:
· meta seek #1 仅包含少量的 1 级元素,并且仅当它们
实际存在:附件、章节、提示、标签、元搜索 #2。 旧版本
合并(1) 也用于将簇放入此元搜索元素中。 所以
为了保留足够的空间,必须进行一些不精确的猜测。 它经常失败。 现在
只有簇存储在元查找 #2 中,元查找 #1 指的是元查找
元素#2。
· 附件、章节和标签元素只有在添加后才会出现。
最短的 Matroska(TM) 文件如下所示:
【EBML头】【段【段信息】【轨道信息】【簇1】】
纯音频文件可能就是这种情况。
外部 时间码 FILES
合并(1) 允许用户自己选择特定曲目的时间码。 这个可以
用于创建具有可变帧速率视频的文件或在音频中包含间隙。
在这种情况下,框架是 合并(1) 每个 Matroska(TM) 分别创建
堵塞。 对于视频,这恰好是一帧,对于音频,这是特定数据包的一个数据包
音频类型。 例如,对于 AC-3,这将是一个包含 1536 样本。
必须仅指定轨道相互附加时使用的时间码文件
对于轨道链中的第一部分。 例如,如果您附加两个文件,v1.avi 和
v2.avi,并且想要使用时间码,那么您的命令行必须如下所示:
$ mkvmerge ... --timecodes 0:my_timecodes.txt v1.avi +v2.avi
有四种格式可以识别 合并(1). 第一行总是包含
版本号。 空行、仅包含空格的行和以
'#' 被忽略。
时间码 文件 格式 v1
这种格式从版本行开始。 第二行声明默认数量
每秒帧数。 以下所有行都包含三个以逗号分隔的数字:
起始帧(0 是第一帧)、结束帧和这个范围内的帧数。
FPS 是一个带点“.”的浮点数。 作为小数点。 范围可以
包含使用默认 FPS 的间隙。 一个例子:
# 时间码格式 v1
承担27.930
800,1000,25
1500,1700,30
时间码 文件 格式 v2
在这种格式中,每一行都包含相应帧的时间码。 这个时间码
必须以毫秒精度给出。 它可以是一个浮点数,但它不是
不得不。 你 它们在许多情况下都能提供类似的结果。 至 给出至少与帧中的帧数一样多的时间码行
追踪。 此文件中的时间码必须排序。 25fps 的示例:
# 时间码格式 v2
0
40
80
时间码 文件 格式 v3
在这种格式中,每一行都包含一个以秒为单位的持续时间,然后是一个可选数量的
每秒帧数。 两者都可以是浮点数。 如果每秒帧数
不存在则使用默认值。 对于音频,您应该让编解码器计算
帧时间码本身。 为此,您应该使用 0.0 作为每帧的数量
第二。 您还可以使用“gap”关键字后跟
间隙的持续时间。 音频文件示例:
# 时间码格式 v3
承担0.0
25.325
7.530,38.236
差距,10.050
2.000,38.236
时间码 文件 格式 v4
此格式与 v2 格式相同。 唯一的区别是时间码
不必排序。 几乎不应该使用这种格式。
退出 编码
合并(1) 以三个退出代码之一退出:
· 0 -- 此退出代码表示复用已成功完成。
· 1 - 在这种情况下 合并(1) 至少输出了一个警告,但 muxing 确实输出了
继续。 警告以文本“警告:”为前缀。 视问题而定
涉及到的结果文件可能没问题。 敦促用户检查
警告和生成的文件。
· 2 -- 此退出代码在发生错误后使用。 合并(1) 立即中止
输出错误信息。 错误消息范围从错误的命令行参数
对损坏的文件的读/写错误。
环境 变数
合并(1) 使用确定系统区域设置的默认变量(例如 朗 和
这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 LC_* 家庭)。 附加变量:
MKVMERGE_DEBUG, MKVTOOLNIX_DEBUG 及其简短形式 MTX_调试
内容被视为通过 -调试 选项。
MKVMERGE_参与, MKVTOOLNIX_ENGAGE 及其简短形式 MTX_ENGAGE
内容被视为通过 - 从事 选项。
MKVMERGE_OPTIONS, MKVTOOLNIX_OPTIONS 选项 及其简短形式 MTX_选项
内容在空白处被分割。 结果部分字符串被视为
它已作为命令行选项传递。 如果需要传递特殊字符
(例如空格)然后您必须转义它们(请参阅有关转义特殊
文本中的字符)。
使用 onworks.net 服务在线使用 mkvmerge