查看“Mkvpropedit”的源代码
←
Mkvpropedit
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于这些用户组的用户执行:ninja、
机器人
、
管理员
您可以查看和复制此页面的源代码。
''(作者:Moritz Bunkus;译者:[[User:XsLiDian|XsLiDian]];复制自 [http://greatdreamers.cn/projects/mkvtoolnix/doc/mkvpropedit.html mkvpropedit])'' ==名称== mkvpropedit — 在不进行完整的重新混流的情况下修改现有 Matroska™ 文件的属性 ==概要== <code class="command">mkvpropedit [选项] {源文件名} {操作}</code> ==说明== 此程序可分析现有 Matroska™ 文件,并修改其部分属性。然后它将将变更写入现有文件。可修改的属性包括剪辑信息元素(如标题)和轨道头部(如语言代码、'默认轨' 标记或轨道名称)。 选项: ; <code class="option">-l</code>, <code class="option">--list-property-names</code> : 列出所有已知的可编辑的属性名称、它们的类型(字符串型、整数型、布尔型等等)及简短说明。程序随后将退出执行。因此不必提供 ''<code>source-filename</code>'' 参数。 ; <code class="option">-p</code>, <code class="option">--parse-mode</code> ''<code>模式</code>'' : 设置解析模式。参数 '''<code>模式</code>''' 可以为 '<code class="literal">fast(快速)</code>'(此项为默认值)或 '<code class="literal">full(完整)</code>'。'<code class="literal">fast(快速)</code>'模式不解析整个文件,而是使用元定位元素确定源文件中所需元素的位置。99% 的情况下这就足够了。但如果碰到不含元定位元素或者元定位元素损坏的文件,用户可能得考虑 '<code class="literal">full(完整)</code>' 解析模式。完整扫描文件可能要花费几分钟,而快速扫描只需要几秒钟。 操作: ; <code class="option">-e</code>, <code class="option">--edit</code> ''<code>选择器</code>'' : 设置后续的 添加、设置 或 删除 操作所针对的 Matroska™ 文件区域(即剪辑信息或某个轨道的头部)。此选项可多次使用,以同时修改多个元素。关于完整的语法说明请参见关于 [[mkvpropedit#编辑选择器|编辑选择器]] 的段落。 ; <code class="option">-a</code>, <code class="option">--add</code> ''<code>名称</code>''<nowiki>=</nowiki>''<code>数值</code>'' : 添加名为 ''<code>名称</code>''、值为 ''<code>数值</code>'' 的属性。即使已存在这样的属性,也将执行添加属性操作。注意大多数属性是唯一的,不能出现多个。 ; <code class="option">-s</code>, <code class="option">--set</code> ''<code>名称</code>''<nowiki>=</nowiki>''<code>数值</code>'' : 设置所有名为 ''<code>名称</code>'' 的属性的数值为 ''<code>数值</code>''。如果不存在这样的属性,则将添加该属性。 ; <code class="option">-d</code>, <code class="option">--delete</code> ''<code>名称</code>'' : 删除所有名为 ''<code>名称</code>'' 的属性。注意部分属性是必需的,不能删除。 其他选项: ; <code class="option">--command-line-charset</code> ''<code>字符集</code>'' : 设定在命令行给出的字符串的字符集,用于转为其他字符集。默认为系统当前区域设置中所给定的字符集。 ; <code class="option">--output-charset</code> ''<code>字符集</code>'' : 设置输出的字符串应被转换到何种字符集。默认为系统当前区域设置中所给定的字符集。 ; <code class="option">-r</code>, <code class="option">--redirect-output</code> ''<code>文件名</code>'' : 将所有信息写入文件 ''<code>文件名</code>'' 而不是输出到命令行。 尽管该操作可以用输出重定向轻松实现,但在某些情况下还需要靠它:如当终端在写入文件之前重新解释(覆盖输出)时。将优先使用通过 <code class="option">--output-charset</code> 设定的字符集。 ; <code class="option">--ui-language</code> ''<code>语言代码</code>'' : 强制使用语言代码为 ''<code>语言代码</code>'' 的翻译(如 '<code class="literal">de_DE</code>' 对应德文翻译)。使用 <code class="varname">LANG</code>, <code class="varname">LC_MESSAGES</code> 及 <code class="varname">LC_ALL</code> 这些环境变量更好。如果在 ''<code>语言代码</code>'' 处输入 '<code class="literal">list</code>',mkvextract 将输出可用翻译列表。 ; <code class="option">-v</code>, <code class="option">--verbose</code> : 使输出信息更详尽,且每当读取到重要的 Matroska™ 元素时就将其显示。 ; <code class="option">-h</code>, <code class="option">--help</code> : 显示用法信息并退出。 ; <code class="option">-V</code>, <code class="option">--version</code> : 显示版本信息并退出。 ; <code class="option">@</code>选项文件 : 从文件 ''<code>选项文件</code>'' 中读取额外的命令行参数。首个非空白字符为井号 ('<code class="literal"><nowiki>#</nowiki></code>') 的行将被当作注释对待,在处理过程中将被忽略。各行开头与结尾的空白将被除去。各行必须恰好含有一个选项。没有元字符转义。命令行 ''''mkvpropedit 源.mkv --edit track:a2 --set name=注释'''' 可以转换为下述选项文件: <pre> # 修改 源.mkv 源.mkv #编辑第二条音频轨 --edit track:a2 # 并设置标题为 '注释' --set title=注释</pre> ==编辑选择器== <code class="option">--edit</code> 选项设置后续的 添加, 设置 或 删除 操作所影响的 Matroska™ 文件区域(剪辑信息或者特定轨道的头部)。在出现另一个 <code class="option">--edit</code> 选项之前,此选项将一直有效。此选项的参数就叫做编辑选择器。 ===剪辑信息=== 可以通过这三个词中的任意一个选择剪辑信息: '<code class="literal">info</code>'、'<code class="literal">segment_info</code>' 或 '<code class="literal">segmentinfo</code>'。剪辑信息包含的属性包括剪辑标题、剪辑 UID 等。 ===轨道头部=== 可用于选择轨道头部的选择器稍显复杂:所有以 '<code class="literal">track:</code>' 开头的变体。轨道头部属性包括如语言代码、'默认轨' 标记、轨道名称等属性。 ; <code class="option">track:</code>''<code>n</code>'' : 如果参数 ''<code>n</code>'' 为数字,则将选择第 ''<code>n</code>'' 条轨道。轨道顺序与 mkvmerge 的 <code class="option">--identify</code> 选项所输出的相同。 ; <code class="option">track:</code>''<code>t</code>''''<code>n</code>'' : 如果参数以字母 ''<code>t</code>'' 后接 ''<code>n</code>'' 开头,则将选择选定轨道类型中的第 ''<code>n</code>'' 条轨道。轨道类型参数 ''<code>t</code>'' 必须为下述四个字母中的一个: '<code class="literal">a</code>' 代表音频轨道,'<code class="literal">b</code>' 代表按钮轨道,'<code class="literal">s</code>' 代表字幕轨道,'<code class="literal">v</code>' 代表视频轨道。轨道顺序与 mkvmerge 的 <code class="option">--identify</code> 选项所输出的相同。 ; <code class="option">track:</code><nowiki>=</nowiki>''<code>uid</code>'' : 如果参数以 '<code class="literal"><nowiki>=</nowiki></code>' 后接 ''<code>uid</code>'' 开头,则将选择轨道 UID 元素等于此 ''<code>uid</code>'' 的轨道。轨道 UID 可通过 mkvinfo 获取。 ; <code class="option">track:</code>@''<code>数字</code>'' : 如果参数以 '<code class="literal">@</code>' 后接 ''<code>数字</code>'' 开头,则选择轨道号元素等于 ''<code>数字</code>'' 的轨道。轨道号可以通过 mkvinfo 获取。 ===注=== 由于轨道编辑选择器的特性,一些选择器所匹配的轨道头部可能是相同的。在此情况下,这些编辑选择器的所有操作将被按照在命令行给出的顺序合并运行。 ==示例== 下面的示例将编辑一个名为 '<code class="literal">电影.mkv</code>' 的文件。示例中将设置剪辑标题并修改一条音频轨和一条字幕轨的语言代码。附注,本示例可以简写,即省去 <code class="option">--edit</code> 选项,因为在第一个 <code class="option">--edit</code> 选项之前的所有选项默认编辑的就是剪辑信息元素。 $ mkvpropedit 电影.mkv --edit info --set "title=影片" --edit track:a1 --set language=fre --edit track:a2 --set language=ita 第二个示例,将 '默认轨标记' 从第一条字幕轨移除并设置到第二条字幕轨上。注意 mkvpropedit 与 mkvmerge 不同,不会在将另一个轨道的 '默认轨标记'设为 '1' 的时候自动将其他轨道的标记设为 '0'。 $ mkvpropedit 影片.mkv --edit tracks:s1 --set flag-default=0 --edit tracks:s2 --set flag-default=1 ==退出代码== mkvpropedit 退出时会返回以下三个退出代码中的一个: * <code class="constant">0</code> -- 此退出代码说明已成功完成修改。 * <code class="constant">1</code> -- 这种情况下 mkvpropedit 至少输出了一条警告信息,但修改并未因之中止。 警告信息以文字 '<code class="literal">警告:</code>' 为前缀。根据问题的不同,生成的文件可能是好的,也可能不是。 强烈建议用户检查警告信息以及生成的文件。 * <code class="constant">2</code> -- 此退出代码用于错误发生之后。 mkvpropedit 在输出错误信息后即中断处理。错误信息可能是错误的命令行参数,也可能是损坏文件的读取/写入错误。 ==参阅== * [[mkvmerge]] * [[mkvinfo]] * [[mkvextract]] * [[mmg]] ==网络== 最新版本总可以在 [http://www.bunkus.org/videotools/mkvtoolnix/ MKVToolNix 主页] 找到。
返回至“
Mkvpropedit
”。
导航菜单
个人工具
登录
名字空间
页面
讨论
不转换
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
台灣正體
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
社区门户
新闻动态
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息
其他资源
AviSynthWiki(英语)
avisynth.info(日语)
NMM论坛(讨论区)