FFMPEG相同的命令?

很棒的马里奥范

这两个从视频中提取音频的命令之间有什么区别吗?

ffmpeg -i input.mp4 -c copy -map 0:a output.wav

ffmpeg -i input.mp4 -vn -acodec copy output.wav

坦迪·弗里曼(Tandy Freeman)

如果您的mp4文件仅包含一个音轨,则两个命令的结果相同。

在mp4包含多个音频轨道/流的情况下,至少有一个主要区别(我不是指流中的多个通道)。

WAV容器仅允许一个音轨,因此在使用-map 0:a它时,可能会尝试将多个音轨复制到WAV文件中,这将导致以下错误:

Stream mapping:
Stream #0:2 -> #0:0 (copy)
Stream #0:3 -> #0:1 (copy)
Stream #0:4 -> #0:2 (copy)
Stream #0:5 -> #0:3 (copy)
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument

您未指定映射的命令不会引发错误,因为默认情况下,如果未指定映射,则ffmpeg仅输出每种类型的一个轨道。

顺便说一句,您无需-vn在使用-acodec copy和指定WAV容器时进行指定,因为ffmpeg不会自动尝试在WAV中包括视频。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章