在Python中播放和控制mp3文件?

gno*_*med 5 python audio mp3 audio-streaming

首先,我是一名Python初学者,具有面向对象的典型C++/Java背景.

我确信我正在努力尝试使用Python,目前我还喜欢它.我遇到的一个问题是找到一个好的mp3模块.

我试过TkSnack,它安装并运行良好,没有任何错误(只要我的音频设备不忙)但它实际上永远不会产生声音,它什么也没做......我上网寻求帮助,感到很失望随着文件的数量.

所以我决定改变.我尝试过PyMad,因为它也在Ubuntu的标准存储库中.关于此的文档甚至更少,但我可以让它发出声音.唯一的问题是它需要一个循环来不断地写/播放音频缓冲区.这使得处理播放控制(在我看来)特别毛茸茸,因为我必须在一个单独的线程或进程中运行它,并以某种方式控制暂停的搜索位置等.这对于我使用Python的原因来说有点太低了.我喜欢TkSnack的简单性,因为它的简单命令如"mysound.play()"或"mysound.pause()"而不是控制循环.

我也查看了pyMedia,看起来它是最新的文档,但我无法在我的机器上安装它.当运行"python setup.py build"命令时,我得到一个"gcc退出,值为1"错误或类似的东西.

所以我正在寻找任何建议或帮助其中一个模块,或一个完全不同的模块,高水平,易于使用的MP3(也可能是其他格式)我试图有基本的播放控制(暂停,停止,跳过,寻求)我也可能最终流媒体文件(如果我到达那里).

编辑:我喜欢Gstreamer的python绑定,但这是一个跨平台的解决方案吗?我忘记提到这是一个要求.但我总是将GStreamer与Linux联系起来,这会在其他操作系统上运行吗?

编辑:维基百科说是的.

Van*_*ale 3

抱歉,我无法帮助您使用 PyMad 或 pyMedia,但我还有其他建议。

现有的用 Python 编写的音乐播放器:

以上所有内容都使用GStreamer多媒体框架的Python 绑定。绑定的文档很少,但请查看此处此处此处以及此处源分发中的示例。