我习惯使用 FFMPEG bat 文件转换所有音频和视频内容,因为它很方便。
我目前正在使用ffmpeg -i "%1" %~dpn1.wav
拖放式 bat 文件,它确实可以将 MP3(和其他格式)转换为 WAV,但不幸的是,声音两端的几毫秒静音似乎被丢弃了。至少声音长度不再相同。
有没有办法让 FFMPEG 输出完全相同的长度而不修剪声音的任何部分?
答案:感谢 Ricardo Bohner,他建议将-ss 00:00:00
代码转换为ffmpeg -ss 00:00:00 -i "%1" %~dpn1.wav
还建议使用 -c copy,但不知何故不起作用。这也导致 Audacity 无法打开转换后的声音文件,而 Adobe Audition 仍然可以打开。
答案1
只有-c copy
选项可以保证输入和输出流具有相同的数据/持续时间:
ffmpeg -i "%1" -c copy %~dpn1.wav
任何编解码器转换(如-c
完全跳过选项或使用除 之外的任何其他选项-c copy
)都可能导致输入和输出之间存在一些差异。另一方面,如果wav
格式无法使用输入文件中的编解码器,则上述命令将不起作用。