我需要编写一个能够接收此无线电流的应用程序:http ://mp32.bbc.streamuk.com:80/ 虽然听起来很简单,但我不知道他们使用什么流媒体格式。有什么想法我怎么能找到?
3 回答
看起来流以 MIME 类型的音频\mpeg 呈现,因此它可能是 MP3 流——这是 SHOUTcast 流的相对标准,您的 URL 就是其中之一。
我不确定您所说的“接收”无线电流是什么意思。如果您正在寻找制作播放器/收音机实用程序,我会查看 tRio 之类的东西,它是开源的,可以作为您滚动自己的播放器的起点。关于滚动你自己的,我已经用 MP3 流(在 Python 中)做了类似的事情,但不适用于 SHOUTcast。这里和这里的 SO 问题对我的工作很有帮助。
如果“接收”您的意思是“捕获到文件”(即 rip),您可能会考虑在命令行程序(如flcy)周围编写一个包装器。
问题是你不应该偷流。如果您很好地询问 BBC Worldservice,我相信能够适应他们的职权范围是让他们的流广泛可用。
如果您想知道它是一个 mp3 流。只要去世界服务网站,那里就有描述如何倾听的页面。我更喜欢VLC...
顺便说一句,它是一个 32 kbps mp3 广播流。
由于它是 BBC,根据您所在的位置,您很有可能无法接收到流。只要你在英国,他们就会提供相当多的流媒体(音频、视频),但在外面,大部分都无法访问。
我只是摆弄了一下(来自荷兰),这就是我得到的:
E:\tmp>wget.exe http://mp32.bbc.streamuk.com/listen.pls
--00:56:25-- http://mp32.bbc.streamuk.com/listen.pls
=> `listen.pls'
Resolving mp32.bbc.streamuk.com... 194.50.90.138
Connecting to mp32.bbc.streamuk.com|194.50.90.138|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [audio/x-scpls]
[ <=> ] 70 --.--K/s
00:56:30 (2.89 MB/s) - `listen.pls' saved [70]
E:\tmp>type listen.pls
[playlist]
NumberOfEntries=1
File1=http://mp32.bbc.streamuk.com:8020/
E:\tmp>c:wget.exe http://mp32.bbc.streamuk.com:8020/
--00:57:04-- http://mp32.bbc.streamuk.com:8020/
=> `index.html'
Resolving mp32.bbc.streamuk.com... 194.50.90.138
Connecting to mp32.bbc.streamuk.com|194.50.90.138|:8020... failed: Connection refused.
connection refused
说话量很大。http://mp32.bbc.streamuk.com/上的状态页面显示尚未达到最大连接数,因此很可能与数字出口限制有关。