在Windows(和Linux)上播放各种音频的最佳Python解决方案?

3 投票
2 回答
4012 浏览
提问于 2025-04-17 03:28

我正在尝试用Python写一些脚本来播放我的音乐收藏。找到可以播放ogg和mp3格式的Python模块并不难。不过,我在播放从iTunes下载的aac编码的m4a文件时遇到了很多问题(这些文件没有数字版权保护)。pygame的音频功能不支持这种格式,所以我试了试pymedia:

a = pymedia.player.Player()
a.start()
a.startPlayback("myM4a.m4a", format='aac')

我尝试了好几种不同的代码写法,包括不加格式参数、把文件改成mp4等等。mp3格式的文件播放得很好。

pymedia甚至声称支持aac编码的文件,但这个项目似乎已经被放弃了。

有没有什么好的、更新的解决方案可以在Python中播放所有类型的音频?现有的Python媒体中心或播放器都用什么呢?

我还想补充一下,我主要是在Windows上使用这个,所以这个库必须支持Windows,但如果能跨平台那就更好了。

2 个回答

0

MPlayer可以播放大多数常见的音频格式,并且有一个Python的封装可以使用:

http://code.google.com/p/python-mplayer/

这里还有一个MPlayer支持的音频编码格式列表:

http://www.mplayerhq.hu/DOCS/codecs-status.html#ac

1

你应该看看gStreamer这个API。它有很多插件,可以支持许多主流的音频格式,很多音频播放器,比如Banshee和Rhythmbox,都在用它。而且它可以在Linux、Windows和Mac上运行。它还提供了Python的接口,还有其他很多语言的接口:

http://gstreamer.freedesktop.org/bindings/

撰写回答