我有两个包含同一部电影的 MKV 文件,我想使用命令行用第二个文件中的视频轨道替换第一个文件中的视频轨道(以便它可以再次用于不同的 MKV 文件对)。
重要的是,我希望保持第一个 MKV 中的所有附件、音轨、章节等不变。这就是为什么,如果可能的话,我不想从第一个文件中提取所有内容,然后再次混合所有内容,只更改视频轨道。
答案1
以下命令似乎可以完成该任务:
mkvmerge -o "merged.mkv" -D ( "first.mkv" ) -A -S -T -M -B --no-chapters ( "second.mkv" )
它会获取 中除视频 ( -D
)之外的所有内容first.mkv
,并且仅-A -S -T -M -B
获取 中的视频 ( 禁用音频、字幕、标签、附件和按钮) second.mkv
。
答案2
@lort:非常感谢。在代码中添加一个循环
for %%x in (firstFolder/*.mkv) do "C:\Program Files\MKVToolNix\mkvmerge.exe" -o "newFolder\%%~x" -D ( "firstFolder\%%~x" ) -A -S -T -M -B --no-chapters ( "secondFolder\%%~x" )
工作结构:
- firstFolder:包含要复制的所有轨道的电影文件夹(视频轨道除外)
- secondFolder:包含要复制的视频轨道的电影的文件夹
- newFolder:获取合并电影的文件夹
批处理文件位于包含所有三个文件夹的父文件夹内。