Audio 合并mp3文件的最佳方式是什么?

Audio 合并mp3文件的最佳方式是什么?,audio,mp3,Audio,Mp3,我有很多很多mp3文件,我想合并成一个文件。我使用了命令行方法 copy /b 1.mp3+2.mp3 3.mp3 但是当有很多这样的人,而且他们的名字不一致时,这是一种痛苦。时间似乎也永远不会正确。时间问题与MP3文件的ID3头有关,在复制整个文件时,您的方法没有考虑到这一点 你有一种你想使用的语言选择吗?这无关紧要吗?这将影响到支持您所需操作的可用库。就我个人而言,我会使用类似mplayer的音频传递选项,例如-oac copy,正如Thomas Owens指出的那样,简单地连接这些文件将

我有很多很多mp3文件,我想合并成一个文件。我使用了命令行方法

copy /b 1.mp3+2.mp3 3.mp3

但是当有很多这样的人,而且他们的名字不一致时,这是一种痛苦。时间似乎也永远不会正确。

时间问题与MP3文件的ID3头有关,在复制整个文件时,您的方法没有考虑到这一点


你有一种你想使用的语言选择吗?这无关紧要吗?这将影响到支持您所需操作的可用库。

就我个人而言,我会使用类似mplayer的音频传递选项,例如-oac copy

,正如Thomas Owens指出的那样,简单地连接这些文件将使多个ID3头分散在结果连接的文件中,因此时间/比特率信息将大错特错

您将需要使用一个工具,它可以为您组合音频数据

这将是理想的-它的目的是连接在一起的MP3文件,而不需要解码+重新编码的数据(这将导致音频质量的损失),并将处理ID3标签智能


也可以使用mp3splt工具将生成的文件拆分回其组成部分-mp3wrap将信息添加到IDv3注释中以允许此操作。

MP3文件具有需要尊重的标题

您可以使用类似的库并围绕它编写工具。
或者你可以使用一个能够理解mp3文件的工具,比如。

我会使用Winamp来实现这一点。创建一个要合并到其中的文件的播放列表,选择Disk Writer output plugin,选择filename,就完成了。您将获得的文件将是正确的MP3文件,您可以设置比特率等。

正如David所说的,这是一种方法。但是,我发现它没有修复音频长度头,因此iTunes拒绝播放整个文件,即使所有数据都在那里。(我合并了三个7分钟的文件,但只看到了前7分钟。)

我找到了,这解释了如何修复这个问题,以及如何从原始文件复制ID3标记(mp3wrap本身会删除您的ID3标记)。或者只需复制标签(使用id3cp从),请执行以下操作:


我以前没听说过mp3wrap。看起来很棒。我猜某个地方也有人把它做成了gui。但是,作为对原始帖子的回应,我已经编写了一个gui来执行COPY/b方法。所以,在封面下,没有什么新鲜事,但是如果你有很多文件要合并,那么这个程序就是为了让这个过程不那么痛苦…你不想重新编码,而且要合并的每一组文件都是相同的比特率。如果你有这个功能(而且你在Windows上),请在:上查看Mp3Merge,看看这是否就是你想要的功能。

使用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
最后,通过工具运行它们以修复任何流错误,而无需强制完全重新编码:

mp3val output.mp3 -f -nb

而不是使用命令行来执行

复制/b 1.mp3+2.mp3.mp3

您可以使用将所有MP3片段重命名为一系列名称,这些名称根据某种计数器的顺序排列。然后,您可以使用相同的命令行格式,但将其稍微更改为:

复制/b*.mp3输出\u name.mp3


这是假设你在同一时间翻录了所有这些片段MP3,并且它们具有相同的音频设置。当我将.aa中的一本有声书转换为一本.mp3时,这对我来说非常有用。我不得不将所有的.aa文件刻录到9张CD上,然后翻录所有9张CD,然后剩下大约90张mp3。a55真是一个难题。

我真正想要的是一个GUI来重新排序它们并将它们作为一个文件输出

正是这样,解码并重新编码成一个组合的MP3。它是为创建混合磁带或简单播客而设计的,但您可能会发现它很有用

(披露:我编写了该软件,如果你购买Pro版,我会获利。Lite版是一个有一些限制的免费版本)。

正确的说法是,只要将文件串联起来,ID3标签就会分散在里面(虽然这通常不会影响播放,所以你可以在UNIX上执行“复制/b”或“cat a.mp3 b.mp3>combined.mp3”在紧要关头)

然而,mp3wrap并不是将多个mp3合并成一个“干净”文件的正确工具。它没有使用ID3,而是在MP3帧中插入了自己的“环绕”部分,这会导致播放问题,尤其是在iTunes和iPod上。虽然如果您只是让文件从头到尾运行(因为播放机将跳过这些非MPEG字节),文件将可以正常播放,但文件持续时间和比特率将被错误报告,从而中断搜索。此外,mp3wrap将删除所有ID3元数据,包括封面艺术,并且无法用正确的文件长度更新VBR头

它本身将生成一个良好的连接数据文件(因此,优于mp3wrap),但它也会剥离ID3标记,并且无法用连接文件的正确长度更新VBR头

这里有一个问题和方法(实际上有两个)来组合MP3文件,并在原始元数据完好无损的情况下生成“干净”的最终结果——它的命令行在Mac/Linux/BSD等上工作。它使用:

  • 若要仅将MPEG数据帧组合到一个连续文件中,则
  • 将所有元数据复制到组合文件,最后
  • 更新VBR标头

对于Windows GUI工具,请看一看--它处理所有事情。(VBRFix也以GUI形式提供,但它不起作用。)

如果您想要免费的东西,我建议您使用一个简单的用户界面,使mp3完全干净

功能:

  • 剥离ID3数据(ID3v1和ID3v2.x),不添加自己的数据(与mp不同
    mp3val output.mp3 -f -nb