Scroll to navigation

MKVINFO(1) 用户命令 MKVINFO(1)

名称

mkvinfo - 输出关于 Matroska(TM) 文件中各轨的信息

概要

mkvinfo [选项] {源文件名}

说明

本程序可列出 Matroska(TM)文件中包含的所有轨道,输出信息可以限定为文件的轨道列表以及所用编解码器的信息。
-g, --gui
启动 GUI。本选项仅当 mkvinfo 编译时附加 GUI 支持时可用。
-c, --checksums
计算并显示各帧的 Adler32 校验码。仅当调试时有用处。
-s, --summary
仅显示 mkvinfo(1) 所获取信息的简要概述,而非各元素。
-t, --track-info
在“详细”模式下为各轨道显示统计信息。如果“详细”程度为 0 级,则将同时将级别设为 1。
-x, --hexdump
以十六进制转储形式显示各帧的前 16 字节。
-X, --full-hexdump
以十六进制转储形式显示各帧的所有字节。
-z, --size
显示各元素的尺寸,含头部所占用的尺寸。
--command-line-charset 字符集
设定在命令行给出的字符串的字符集,用于转为其他字符集。默认为系统当前区域设置中所给定的字符集。
--output-charset 字符集
设置输出的字符串应被转换到何种字符集。默认为系统当前区域设置中所给定的字符集。
-r, --redirect-output 文件名
将所有信息输出至文件 文件名,而不是在命令行显示。尽管该操作可以用输出重定向轻松实现,但在特定情况下还是缺不得它:当终端写入文件之前重新解释(覆盖输出)时。 --output-charset 中所选定的字符集将被优先选用。
--ui-language 语言代码
强制使用语言代码 语言代码 所对应的翻译(如 'de_DE' 对应德文翻译)。使用 LANGLC_MESSAGESLC_ALL 这些环境变量更好。如果在 code 处输入 'list', mkvinfo(1) 将输出可用翻译的列表。
--debug 主题
为特定功能开启调试。该选项仅对开发者有用。
--engage 功能
开启实验性功能。可用功能列表可通过 mkvinfo --engage list 获取。通常情况下不应该使用这些功能。
-v, --verbose
使输出更详尽。请参阅关于 “详细”程度 的段落获取在哪些层级将输出哪些信息的描述。
-h, --help
显示用法信息并退出。
-V, --version
显示版本信息并退出。
--check-for-updates
联机下载 URL http://mkvtoolnix-releases.bunkus.org/latest-release.xml 检查新版本。将以 键=值 的样式输出四行: 检索信息的 URL(键 version_check_url),当前运行的版本(键 running_version),最新版本(键 available_version)及其下载 URL(键 download_url)。
 
若无更新版本可用,程序将以退出码 0 退出,若有更新版本可用,退出码为 1,若出现错误(如无法检索更新信息),退出码则为 2。
 
此选项仅当程序附带 libcurl 支持编译时可用。
@选项文件
从文件 选项文件 中读取额外的命令行参数。首个非空白字符为井号 ('#') 的行将被当作注释对待,在处理过程中将被忽略。各行开头与结尾的空白将被除去。各行必须恰好仅含一个选项。
 
有些字符可以转义,如当您需要使用 '#' 作为一个不是评论的行的开头。规则在关于转义文本的段落有描述。
 
命令行 ' mkvinfo -v -v 输入.mkv --redirect-output 信息.txt' 可以转换为下面所示的选项文件:
 
# 更为详尽
-v
-v
# 解析 输入.mkv
输入.mkv
# 并将输出信息写入 信息.txt
--redirect-output
信息.txt

“详细”程度

 
-v 选项可以使 mkvinfo(1) 增强其“详细”程度并输出关于当前文件的更多信息。
在 level 0 mkvinfo(1) 仅输出它发现的轨道头及其类型。头部解析完毕后(更专业地:遇到首个簇时), mkvinfo(1) 将退出执行。在此层级,定位头项与 cue 索引不会显示出来——即使它们位于轨道信息之前。
在 level 1 mkvinfo(1) 同样将输出在整个文件中遇到的所有 Matroska(TM) 元素,此外还将输出定位头项与 cue 索引项。如果启用了简要模式, mkvinfo(1) 还将输出各帧位置。
在 level 2 mkvinfo(1) 同样将输出定位头项与 cue 索引项,以及文件中各 Matroska(TM) 元素被发现的位置。
在 level 3 及更高层级 mkvinfo(1) 将输出一些与 Matroska(TM) 元素不直接相连的信息。对于其他元素,将只输出发现的基本信息。Level 3 增加了元信息以便调试(换句话说:它是为开发人员设计的)。Level 3 输出的所有行都以方括号嵌套以便过滤。

退出代码

 
mkvinfo(1) 退出时会返回以下三个退出代码中的一个:
 
 
0 -- 此退出代码说明已成功完成运行。
 
 
1 -- 这种情况下 mkvinfo(1) 至少输出了一条警告信息,但运行并未因之中止。 警告信息以文字 '警告:' 为前缀。
 
 
2 -- 此退出代码用于错误发生之后。 mkvinfo(1) 在输出错误信息后即中断运行。错误信息可能是错误的命令行参数,也可能是损坏文件的读取/写入错误。

文本中特殊字符的转义

有时文本中的特殊字符必须或应该转义。转义规则很简单: 用反斜杠后接一字符替换需要转义的各字符。
规则为: ' ' (空格) 变为 '\s'、'"' (双引号) 变为 '\2'、':' 变为 '\c'、'#' 变为 '\h',而 '\' (单个反斜杠) 自己则变为 '\\'。

环境变量

 
mkvinfo(1) 会使用决定系统区域设置的默认变量 (如 LANGLC_* 族)。其他变量包括:
MKVTOOLNIX_DEBUG 及其缩写形式 MTX_DEBUG
内容将被当作通过 --debug 选项传递的参数对待。
MKVTOOLNIX_ENGAGE 及其缩写形式 MTX_ENGAGE
内容将被当作通过 --engage 选项传递的参数对待。
MKVTOOLNIX_OPTIONS 及其缩写形式 MTX_OPTIONS
内容将在空白处切割。最终得到的字符串部分将按命令行选项的格式处理。如果您需要传递特殊字符 (如空白) 则需要转义 (参见关于转义文本中特殊字符的段落)。

参阅

 
mkvmerge(1), mkvextract(1), mkvpropedit(1), mmg(1)

网络

最新版本总可以在 MKVToolNix 主页[1] 找到。

作者

Moritz Bunkus <moritz@bunkus.org>
开发者

备注

1.
MKVToolNix 主页
http://www.bunkus.org/videotools/mkvtoolnix/
2012-05-27 MKVToolNix 5.6.0