有没有简单的方法来分割mp3文件?


31

我最近学到了一个巧妙的技巧。要将mp3文件连接在一起,只需使用命令(在Windows中)

copy /b *.mp3 joined.mp3

瞧,您有一个大的mp3文件。

我的问题:是否有相反的方法,例如,轻松拆分mp3文件?


您应该将此标签标记为Windows
Mark Thalman,2009年

1
不一定...我给出的命令行连接示例在其他系统中也应同样有效。另外,问题是针对任何操作系统的命令行拆分器。
Yuval,2009年

Yuval,您接受的答案将使您的MP3解码并重新编码。这确实会降低您的音频质量。在MP3DirectCut上查看我的答案。
2009年

同样,您的加入方法将导致在音频的中间出现不良帧,从而残留了标题和尾部(标记所在的位置)。最好使用删除这些不良帧的连接工具。
2009年

吉姆,我感谢你对音频质量的关注,但我主要使用分裂和加入的MP3收听有声读物更方便,这些都是很难以高品质开始...
尤瓦

Answers:


27

拆分MP3的方法有两种:

  1. 解码成wave,拆分并重新编码。这是Audacity使用的方法,会导致音频质量下降
  2. 直接拆分MP3。拆分位置的分辨率较低,但结果不会降低音频质量。我使用MP3DirectCut取得了较好的效果。

通常,您会想要使用第二种方法,因为它是无损的,除非您真的不在乎音频质量。


我非常喜欢mp3DirectCut。它所做的只是拆分mp3文件,而且非常擅长。
Michael Kohne

我不知道这个...信息的10倍!
尤瓦尔

1
谢谢吉姆。我也没有意识到这一点。我使用Audacity已有一段时间了,从现在开始将是MP3Direct。
卡尼尼

37

我经常使用mp3splt。它是Windows和Linux的开源程序,并包含gui(我不使用它,因此无法对其进行评论)。

这是我通常用来将播客分为6分钟的命令行:

mp3splt podcast.mp3 -g %[@N=0,@o] -o "@n @f" -t 6.0
  • -t 6.0:每6分钟分割一次
  • -g %[@N=0,@o]:对于每个部分,请使用原始标签,但从0开始更新曲目号。
  • -o "@n @f":输出文件名应为原始文件名,并在轨道号前面加上。

该工具非常适合剪切MP3以便在HTTP流中使用。quicktime不喜欢由ffmpeg剪切的mp3填充的m3u8,但是mp3splt可以完美地工作。它也自动剪切每个部分!命令行是一个额外的胜利。感谢您发布!
brack 2010年

在Windows 8.1中崩溃
Scott Anderson

1
@ScottAnderson:我可以建议在他们的网站上提交错误吗?sourceforge.net/p/mp3splt/bugs
内森·费尔曼

1
我在车载收音机中使用的有声读物使用的是同一个记号,但记不得很好。我建议使用“ -f”,他们说这对于vbr来说是必需的,而且我认为它具有更高的容错能力。另外,如果拆分发生在单词中间,我还会在3秒内添加“ -O 0.3”。
彼得2014年

我可以找到的最快的好方法!
ImtiazeA

8

它不像您在问题中提到的命令那么容易。话虽这么说,有简单的方法可以做到这一点。

Audacity是一个免费程序,可让您分割mp3。一旦掌握了界面,它就相对易于使用。


3
Audacity很好,Beta 1.3.x版甚至更易于使用。我建议直接与该版本开始
德雷克

3
仅供参考,虽然Audacity是一个很好的工具,但以这种方式拆分MP3涉及对MP3进行解码和重新编码。这会降低音频质量。
Jim McKeeth,2009年


2

如果您恰巧使用Linux,则可以始终使用“ split --bytes = 1M --numeric-suffixes largefile.mp3 smallfile”。但是,很遗憾,您将不得不自己附加.mp3。


2

根据记录,这不是合并MP3的最佳方法。

它可以工作,但会将后续文件中的多余信息(ID3标签)保留在最终文件中。使用这种方式的Copy只是一个串联-额外的标头信息仍在其中。

MP3文件的结构可以使您有所了解:

在此处输入图片说明

(点击放大)


1
这非常有趣,但是并不能回答问题。在这里可能更有意义:superuser.com/questions/202809/join-multiple-mp3-files-lossless
Nathan Fellman 2013年

如果您担心标签,可以先删除所有标签,然后再将其添加回去。
李斯特先生2014年

很好,但是问题不是合并,而是分裂。
Shai Alon '18

2

诸如mp3DirectCut之类的专用MP3分离器可在帧边界上剪切。但是大多数MP3都使用位存储器来节省空间。一帧的音频数据通常从前一帧开始,有时返回2或3帧。因此,分割点附近的帧可能无法播放,并且会被静默跳过。如果分裂发生在寂静之中,则可能无需担心。

如果拆分发生在连续音乐的中间,您可能会注意到跳过的帧。为了缓解这种情况,请使用mp3packer以最小的位存储库使用量(-b 320 -r in.mp3 temp.mp3)将mp3扩展到320 kbps,在mp3DirectCut中进行编辑,然后再次使用mp3packer重新打包(-s -t -z temp.mp3 out.mp3)。它不能保证能正常工作,因为在高比特率的文件中可能不可避免地会使用位库,但它可以提供帮助,并且不会导致质量损失。

另外,您可以使用pcutmp3进行拆分。它保留必要的帧,并在文件开头将无缝播放数据(编码器延迟和填充信息)添加到LAME标签。支持此数据的播放器将在播放时修剪额外的样本。


非常聪明的解释和技术。真好!
丹尼尔·莫斯蒙多(DanielMošmondor),

1

并不是那么容易,但是在线上有许多mp3拆分工具可供您选择拆分mp3文件的位置。

当然,如果您想分割一个mp3文件只是为了传输它(而不是播放分割的部分),则可以使用通用文件分割实用程序,然后使用用于重组mp3的二进制复制方法。


有没有可以推荐的?你知道一个免费的吗?
Yuval

以前,我曾经使用arj(arjsoftware.com)将文件拆分为1.44MB的块以适合软盘。我看到它还在附近。WinRAR(rarlab.com)可以做同样的事情。哎呀,即使是很好的ole'pkzip 2.04gpkware.com)也增加了对此的支持,尽管它比arj方便得多
Nathan Fellman


0

Sliff是正确的,没有可用的os工具。

从技术上说,对mp3进行了配置,以便您可以在所需的任何位置拆分。它使用静态或可变长度的18 ms块,并在每个块的开头使用特定的位组合。如果您将文件分割成一个块,播放器将无声地转发到下一个块,因此最多损失18毫秒。

标记块-您可以在文件中的任何位置放置或省略有关输入艺术家,标题,专辑等信息的位置。甚至多个标签块也不会造成伤害(首先采取)。

因此,您可以随时随地拆分并加入。

任何拆分文件的工具都可以。


文件中间的标签可能会被忽略。同样,由于大多数MP3都利用位存储库,因此帧边界不会与音频数据起点对齐。因此,如果像所有专用的MP3分割器一样在帧边界上进行分割,则可能会使与分割点相邻的某些帧无法播放,就像在帧中间进行剪切一样。如果剪切是在沉默的中间进行的,则可能不会很明显,但是如果编辑点上连续不断地发出声音,则可以听到接缝。
麦克·布朗

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.