合并多个 MP3 文件(无损)

合并多个 MP3 文件(无损)

如何将多个 MP3 文件合并为一个?“cat”和“mp3wrap”都不好用,因为它们会生成非标准 MP3 文件。我知道我可以使用 audacity,但是当你需要将 1000 个 MP3 文件合并为一个时,这需要的时间太长了。

有什么建议么?

答案1

使用ffmpeg或者类似的工具将所有 MP3 转换为一致的格式,例如

ffmpeg -i originalA.mp3 -f mp3 -ab 128kb -ar 44100 -ac 2 intermediateA.mp3 ffmpeg -i originalB.mp3 -f mp3 -ab 128kb -ar 44100 -ac 2 intermediateB.mp3

然后,在运行时,将您的文件连接在一起:

cat intermediateA.mp3 intermediateB.mp3 > output.mp3

最后,通过工具运行它们MP3值修复任何流错误而不强制进行完全重新编码:

mp3val output.mp3 -f -nb
(来源)

答案2

您可以使用以下方式以编程方式执行此操作ffmpeg连接解复用器

首先创建一个名为inputs.txt的文件,其中包含如下行

file '/path/to/input1.mp3'
file '/path/to/input2.mp3'
file '/path/to/input3.mp3'

...等等。然后运行以下 ffmpeg 命令:

ffmpeg -f concat -i inputs.txt -c copy output.mp3

使用 bash 可以轻松生成inputs.txt为了循环(这可能也可以用 Windows 批处理 for 循环来完成),假设您想按字母顺序合并文件。这将匹配每一个*.mp3 在工作目录中,但可以轻松修改:

for f in ./*.mp3; do echo "file '$f'" >> inputs.txt; done
##  Alternatively
printf "file '%s'\n" ./*.mp3 >> inputs.txt

也可以在一行中完成整个操作,避免使用以下命令创建中间列表文件流程替代

ffmpeg -f concat -i <(printf "file '%s'\n" ./*.mp3) -c copy output.mp3

答案3

您可以使用免费mp3猫

mp3cat indir - > outfile.mp3

答案4

Freemake 音频转换器非常棒:

http://www.freemake.com/free_audio_converter/

转换和/或合并音频文件。

下载并安装 Freemake 后(注意不要安装 Ad-Aware Web Companion、TuneUp Utilities、Opera,或将 Yahoo! 设置为主页),启动该程序。单击窗口左上角的 +Audio 按钮,然后选择要合并/转换的文件。

单击窗口右上角的“加入文件”开关。

选择您想要的音频类型(可能是无损 FLAC)

它将允许您自定义音频设置和输出文件夹。准备好后,单击转换。

相关内容