如何使用“ffmpeg”修剪 mp3 文件?

如何使用“ffmpeg”修剪 mp3 文件?

这是一个困扰我一段时间的 Linux 音频 MP3 难题:

如何修剪 MP3 音频文件的开头几秒? (我无法ffmpeg -ss使用 00:01 或 1.000 格式)

到目前为止,为了做我想做的事情,我采用 GUI 方式来完成,这对于单个文件来说可能会更慢,对于一批文件来说肯定更慢。

答案1

对于在 Linux 下编辑 mp3,我推荐袜队。它有一个简单易用的trim效果,可以满足您的要求(请参阅man soxdatails - 搜索(按/)“trim start”)。例子:

sox input.mp3 output.mp3 trim 1 5

你没有提到它,但如果你的目的只是删除安静在文件的开头,您会发现silence效果更有用(man sox,搜索“above-periods”)

答案2

你可以尝试使用mp3splt,它可以分割MP3和Ogg文件,优点是不重新编码文件,从而避免质量损失。

答案3

确保您的时间规范以小时开头。

引用ffmpeg 手册页:

位置可以以秒为单位或以“hh:mm:ss[.xxx]”形式

这意味着当您选择第二种语法时,只有该.xxx部分是可选的。否则 ffmpeg 可能会将其错误解析为秒。

持续时间也是如此:

持续时间可以是以秒为单位的数字,或者以“hh:mm:ss[.xxx]”形式

另一个陷阱是 ffmpeg 参数的顺序(例如,输入文件的-ss/-t选项必须位于该-i选项之前)。

例子

$ wget http://traffic.libsyn.com/twiv/TWiV179.mp3
$ ffmpeg -ss 1:05:59.3 -t 00:02:03.9 -i TWiV179.mp3 -acodec copy \
     what_is_a_hmm_twiv179.mp3

根据规范,-ss 1:05:59.3 -t 2:03.9您将得到不同的结果(即 2 秒长的片段)。

(在 Fedora 17 上使用 ffmpeg 版本 0.10.7 进行测试。)

相关内容