我一直在使用:
ffmpeg -i "video.mkv"-sub_charenc UTF-8 -i "video.srt"-c:v copy -c:a copy -c:s mov_text -metadata:s:s:0 language=eng -metadata:s :s:0 handler="English"-id3v2_version 3 -write_id3v1 1 "subbed_video.mp4"
但是当我这样做时,我注意到只有英文音频继续存在,而日文音频消失了。有没有办法确保两者都结转?谢谢。
最佳答案
默认情况下,ffmpeg 只复制一个视频流和一个音频流。您需要使用 3 -map 输出选项指定所有流:
ffmpeg -i "video.mkv" -sub_charenc UTF-8 -i "video.srt" -c:v copy -c:a copy -c:s mov_text -metadata:s:s:0 language=eng -metadata:s:s:0 handler="English" -id3v2_version 3 -write_id3v1 1 -map 0:v:0 -map 0:a:0 -map 0:a:1 -map 1:s:0 "subbed_video.mp4"
在这里,我假设您在 a:0
上只有 2 个音轨( a:1
和 video.mkv
) .
关于video - 如何在使用 ffmpeg 保留多个音频文件的同时将 srt 字幕混合到视频中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71229485/