Python Pyaudio -- 如何播放通过HTTP流传的文件

0 人关注

我想知道如何播放存在于我服务器上通过HTTP提供的MP3。 我试图找出pyglet,但AVBin有太多的问题,使其工作(关于源代码中除以0的东西)。 所以,我决定试试PyAudio,但我不知道如何用它从HTTP流式传输MP3源。 所有的例子都是wav文件,我需要的是例子而不是文档,否则我恐怕要在最底层搞清楚音频工作的具体细节。 所有的文档对我们这些不懂行话(采样率等)的人来说都很混乱。 谁能帮帮我?

python
audio
mp3
audio-streaming
pyaudio
linus72982
linus72982
发布于 2016-02-14
1 个回答
Anil_M
Anil_M
发布于 2017-05-23
0 人赞同

你的源服务器和目标服务器环境是什么?[windows / linux / mac? ] 。另外,你是想播放一个音频文件还是视频?

无论哪种情况,你都可以用 Gstreamer 和python。 我的笔记本是windows系统,所以我试着用 这里 的Gstreamer 1.0.x。

网上的例子是针对Gstreamer 0.10的,不能用于更新的Gstreamer 1.0。有很多修改都是针对特定平台的。 然而,在windows下,Gstreamer带有gst-launch二进制文件,可以直接使用。[对于Linux,有相应的二进制文件] 。

服务器端。

在服务器端,你需要设置HTTP服务器。在不了解你的具体环境的情况下,我可以说有各种解决方案,包括python http服务器 SimpleHTTPServer
请看 这里 的解决方案

一旦http服务器被安装并运行,在你的笔记本电脑上,你可以简单地运行
C:\Python27\Lib\site-packages\gnome> .\gst-launch.exe playbin uri = http://www.freesound.org/data/previews/148/1482641337920-lq.mp3