gpt4 book ai didi

javascript - 在流中传递 ID3 信息并在前端进行解析

转载 作者:行者123 更新时间:2023-11-28 07:49:06 27 4
gpt4 key购买 nike

我一直很喜欢 SoundManager2 作为前端音乐播放器(带有 python 后端)our MP3 streaming player ,但是当流中注入(inject)了 id3 帧时,播放器界面会开始切换暂停(或具有类似结果的操作)。

我想使用 ID3 帧(或其他方法)来标记流中的点,以便我可以显示有关每个特定(当前播放)片段的详细信息。

该流在 Chrome mp3 播放器中完美播放。

因此,我正在寻找有关如何重新配置​​ SM2 以处理中流 id3 标签的一些见解。据我所知,HTML5 不支持 id3,并且已经看到一些检索 id3v1 和 id3v2 标签的 JavaScript 库,但尚未找到可以使用流的库。

是否有可能在流中包含和检索 id3 标签,还是我们在这里找错了树?

最佳答案

根据 SM2 开发人员的说法(谢谢 Scott):

HTML5 音频在播放选项方面有点“愚蠢”,因为它基本上是“即发即忘”——您无法真正访问任何元数据事件,也无法访问原始音频流等。有一个元数据事件在 HTML5 中,但我不相信它在初始加载/请求时触发多次,也不包含 ID3 信息。

有用于超低延迟播放和位级流访问的较新的 Web Audio API,但它也有一些错误和不一致的实现(尽管它正在变得更好),并且在任何版本的 IE 中都不支持。 (也许会出现在 IE 12 中,待定。)

尽管这是不可取的,但我可能会考虑经常轮询服务器以获取当前的流元数据。如果是直播,您可以让服务器返回已知的当前艺术家/标题。如果是静态的,您可以让客户端发送当前时间偏移并根据该偏移确定哪首歌曲等。

Flash 8/9 确实提供了对 ID3 解析的一些支持,但它通常不可靠,并且具有其他限制 - 特别是 Flash 根本不能很好地进行“流式处理”。

关于javascript - 在流中传递 ID3 信息并在前端进行解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27072761/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com