我不明白这一点。
对于第一个命令,元数据(处理程序、语言)已正确存储。第二个命令保留了 temp.mkv 中的元数据。
我究竟做错了什么?
作品:
ffmpeg^
-i video.h264 -i audio1.dts -i audio2.dts -i sbtl1.srt -i sbtl2.srt^
-map 0:0 -map 1:0 -map 2:0 -map 3:0 -map 4:0^
-metadata:s:v:0 handler="AVC"^
-metadata:s:a:0 language=deu -metadata:s:a:0 handler="DTS-HD Master Audio"^
-metadata:s:a:1 language=kor -metadata:s:a:1 handler="DTS-HD Master Audio"^
-metadata:s:s:0 language=ger -metadata:s:s:0 handler="Deutsch (forced)"^
-metadata:s:s:1 language=ger -metadata:s:s:1 handler="Deutsch"^
-movflags disable_chpl^
-c:s mov_text -c:v copy -c:a alac -sample_fmt:a s16p^
output.m4v
不:
ffmpeg^
-i temp.mkv -i sbtl1.srt -i sbtl2.srt^
-map 0:0 -map 0:1 -map 0:2 -map 1:0 -map 2:0^
-metadata:s:v:0 handler="AVC"^
-metadata:s:a:0 language=deu -metadata:s:a:0 handler="DTS-HD Master Audio"^
-metadata:s:a:1 language=kor -metadata:s:a:1 handler="DTS-HD Master Audio"^
-metadata:s:s:0 language=ger -metadata:s:s:0 handler="Deutsch (forced)"^
-metadata:s:s:1 language=ger -metadata:s:s:1 handler="Deutsch"^
-movflags disable_chpl^
-c:s mov_text -c:v copy -c:a alac -sample_fmt:a s16p^
output.m4v
temp.mkv = 视频.h264 & 音频1.dts & 音频2.dts
答案1
在 ffmpeg 4.0.3 中它是处理程序,自 4.1(可能更早)以来它是 handler_name。