在Python中播放音频文件

4
什么是python播放MP3文件的好工具包?它需要是跨平台的(Win,Mac,Linux),并且需要有一个简单和可重复的调用结构,而不是每次打开相同文件时都要执行复杂设置(我在各种循环中使用声音,不需要不断担心通道是否满或其他因素)。此外,它还需要相对较小; 我不想导入整个GUI工具包,只是为了播放一些小铃声和警报声。最后,它需要是非阻塞的;我需要它播放文件一次并继续向前移动,而不会锁定整个程序。
我曾经使用PyAudiere来从python播放MP3文件,因为它符合所有这些标准。不幸的是,该软件包已被放弃,因此我需要找到替代品(PyAudiere已更新到python 2.6,并在2.7中仍然可以工作,如果您手动更改版本检查,则可以进行黑客攻击,但这不是长期的解决方案,特别是现在难以找到该软件包)。

我继续寻找,似乎除了 PyGame 之外,所有支持 MP3 的东西都已经被放弃了。这不可能是真的。 - Elliot
1个回答

0

PyMedia最后更新于2006年,甚至比PyAudiere还要早。我已经知道了PyGame,但它是一个庞大的库,涵盖从渲染到控制再到声音的所有内容,对于只想在程序中放置警报声的需求来说,这显然过于臃肿(我只是播放不同的声音来让人们知道各种事情已经完成)。如果必须使用它,我会用它,但我希望有一些更轻量级的东西。 - Elliot
唔...唯一的选择是 pyglet ... 就像你说的,很糟糕的是没有一个合适的轻量级库可以代替它! - Raghav RV
Pyglet作为一个阻塞程序的子进程运行。Pygame也是如此。PyAudio以复杂的分块方式读取,容易出问题,并且在MP3上不可靠。有关示例,请参见http://guzalexander.com/2012/08/17/playing-a-sound-with-python.html。 - Elliot

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接