Python分割mp3频道

Python分割mp3频道,python,mp3,Python,Mp3,我想用Python分离mp3文件的通道,并将其保存在另外两个文件中。 有人知道这方面的图书馆吗。 提前感谢。我假设您希望无损地分割频道,而无需对MP3进行解码和重新编码-否则您根本不会提到MP3,并且会很容易找到许多工具,如Audacity MP3帧有4种声道模式-这意味着有4种类型的MP3文件:简单立体声、联合立体声、双声道、单声道。联合立体声文件无法拆分而不丢失。mono文件不需要拆分。其余:立体声和双声道,由不到0.1%的所有MP3文件组成,技术上可以分为2个文件,每个文件对应一个声道,不

我想用Python分离mp3文件的通道,并将其保存在另外两个文件中。 有人知道这方面的图书馆吗。
提前感谢。

我假设您希望无损地分割频道,而无需对MP3进行解码和重新编码-否则您根本不会提到MP3,并且会很容易找到许多工具,如Audacity

MP3帧有4种声道模式-这意味着有4种类型的MP3文件:简单立体声、联合立体声、双声道、单声道。联合立体声文件无法拆分而不丢失。mono文件不需要拆分。其余:立体声和双声道,由不到0.1%的所有MP3文件组成,技术上可以分为2个文件,每个文件对应一个声道,不会丢失。然而,互联网上没有任何工具可以做到这一点——没有任何命令行工具,也没有任何GUI工具,因为很少有人需要这个功能

也没有适合您的python库。大多数库都将MP3文件抽象为一个公共音频,在解码后您可以对其进行操作。pymad是唯一一个特定于MP3文件的,它可以判断文件是否使用了4种通道模式中的任何一种,但不提供在不解码的情况下提取通道的功能。如果你写了一个新的工具,你将不得不处理原始的MP3文件或者为它制作一个库

而且为它编写工具或库并不容易。它是一个具有两个通道的流,而不是在一个帧级别上交错的两个流。您不能简单地处理MP3帧,删除一些帧,保留其他帧,然后设法以这种方式提取频道。这是一个专业人员的任务,可能最好发生在解码器项目中(如lame或libmad),而不是在文件操作项目中(如mp3info或PythonEyed3)。换句话说,这个特性很可能是用C编写的,而不是用python编写的


实施说明:

因此,构建此类工具的任务非常适合计算机科学C编程语言课程项目: 1.这需要很多时间去做; 2.它需要从C编程课程中学到的每一项技能; 3.它很容易出错; 4.它可能建立在其他项目的工作基础上,这是调整现有工作的一个教训; 5.这是一个以前没有人做过的非常艰苦的努力,因此非常值得 6.也许可以用300行困难的代码来代替臃肿的简单Visual Basic代码,因此是一个简洁和高质量的好选择; 7.最后一点:没有人急于等待一个有效的实现

所有条件都非常适合C编程课程项目

实施说明2:

某些比特率仅在单声道模式(80kbps)下可能,而某些比特率仅在立体声模式(例如320kpbs)下可能。幸运的是,这在本任务中不会出现问题,因为所有双mp3比特率都可以映射为合适的单mp3比特率——但反之亦然

快速谷歌搜索显示。我从未使用过它,但网站上说:“它允许你解析、解复用、复用、解码和编码所有支持的格式。它可以为Windows、Linux和cygwin编译。”相关问题: