12

我正在使用音频元素从 icecast 服务器流式传输 ogg 源。音频元素是否提取冰冷的元数据,有没有办法通过 javascript 访问它?

基本上,我想显示我正在播放的广播电台的“当前播放”信息。我有哪些选择?

谢谢!

4

2 回答 2

7

不,您的 HTML5 元素只知道流数据,甚至没有发出适当的请求来获取元数据。

请参阅这些帖子:

现在,这无论如何都不是不可能的。你只需要在服务器端做。(特别是第二个链接。)

我还应该指出,在成熟的 SHOUTcast 服务器上(尚未使用 Icecast 进行测试,但值得一试)生成“7.html”,其中包含有关听众数量、最大听众、峰值听众、立体声/单声道、比特率和当前轨道名称为逗号分隔值。像这样:

2,1,33,625,2,128,J Mascis - Not Enough

如果你可以 fetch http://yourstreamingserver:port/7.html,那么你可以很容易地得到这些数据。

于 2011-05-25T13:23:25.660 回答
2

如果是 Ogg 容器流(Vorbis 和 Opus 都是如此),至少 Firefox 支持 javascript 访问元数据。这目前只是“供应商特定”的 Javascript API:audio.mozGetMetadata();

另一方面,如果您使用 Icecast 2.4.1,您可以通过 JSON API 独立访问元数据。其他评论中指出的缺乏同步适用。不过,它通常“足够接近”。

于 2014-11-25T14:29:03.737 回答