如何在Python中将Shoutcast流转换为可播放样本?

3 投票
3 回答
1555 浏览
提问于 2025-04-15 22:59

我有一个网络电台,现在想为它制作一个播放器。我知道怎么从服务器“获取”音频流,这要感谢bobince的帮助,但我不太确定怎么把这个音频流转换成可以播放的声音样本。这是怎么做到的呢?

3 个回答

1

在Python中,有很多方法可以解码MP3文件。PyMedia是我以前用过的一个,效果还不错(不过它的开发似乎已经停止了)。它不仅仅是一个MP3解码器,还提供了一个播放接口,可以通过ffmpeg支持多种音频和视频格式。还有pyffmpeg,最近似乎又活过来了(我还没试过)。

另外,PyGame也可以播放MP3,不过这只是它功能中的一小部分。pymad是一个更轻量级的选择,它直接与libmad解码库对接。还有一种选择是把这个任务交给外部的多媒体库,比如DirectShow或GStreamer(通过gst-python)...

2

Shoutcast流通常(但不总是)是MP3格式的。要获取可以播放的音频样本,你需要解码这个流中的MP3数据。

你有没有看过这个资源:http://codeboje.de/playing-mp3-stream-python/? 看起来是个简单的解决方案,但需要用到很多库。

0

根据我在Python上看到的信息,可以试试这个网页。如果这个不行,可以看看Python wiki上的PythonInMusic文章。

撰写回答