![“-map t”与“-map 0:t”与“-tcodec copy”?](https://linux22.com/image/1560278/%E2%80%9C-map%20t%E2%80%9D%E4%B8%8E%E2%80%9C-map%200%3At%E2%80%9D%E4%B8%8E%E2%80%9C-tcodec%20copy%E2%80%9D%EF%BC%9F.png)
为了将所有附件从输入文件复制到输出文件......两者之间有什么区别:
-地图 t / -地图 0:t
&
-tcodec 复制
应该使用其中哪一个?如果我可以问的话,还有一个子问题:当使用 ffmpeg + x265 进行 2 次编码时,每次编码都有 1 个批次,我应该在两次编码中都使用 map/codec 副本还是只在第二次编码/批次中使用?(第一次编码为 NUL)
答案1
-map t
只会从第一个输入中选择流,因此它等效于-map 0:t
。后者应该是首选,因为它明确定义了输入文件。
-c:t copy
(别名 -tcodec 未定义)为任何映射的附件流设置编解码器操作。如果没有明确映射此类流,则该选项无效。特别是,在没有映射的情况下,它不会选择此类流进行输出。
答案2
-tcodec 复制不存在(肯定不在最新的(20180506-0736f32-win64-static)ffmpeg.exe 和 x265.exe 的管道中)。此外,将附件移动到每一遍直到达到最终输出并不是那么有效。在这种情况下,mkvmerge.exe 胜过 ffmpeg.exe
mkvmerge.exe -o "X:\done.mkv" "K:\encoded.mkv" -A -D -S -B -T --no-chapters --no-global-tags "O:\source.mkv" "K:\audio.flac"