我正在试着在网页上收听直播音频流,时延小于3秒。到目前为止,使用ices & icecast生成的ogg vorbis流,我无法获得小于7秒的延迟。到目前为止,我使用过的所有播放器(火狐、歌剧、野生动物园的html5音频标签;VLC )似乎都引入了类似的延迟。目前还不清楚与客户端播放器相比,ices/icecast引入了多大的延迟。我已经调整了冰块和冰球的设置,但都没有用。
有谁在类似的ices/icecast设置中实现了比这更好的延迟吗?我不希望ogg vorbis解码器(浏览器中的html5、VLC或其他任何东西)会延迟音频流几秒钟。我说错了吗?我在浏览器中找不到任何关于控制缓冲区大小或解码的信息。
使用不同的架构(html5、firefox、WSGI服务器提供wav格式的音频),我能够实现大约1-2秒的延迟。默认情况下,火狐开始播放wav文件要晚几秒,但我可以通过将audio.currentTime设置为5+来提前播放,并且只会后退1-2秒(有点脆弱)。然而,我更喜欢使用icecast,而且流媒体wav显然不能扩展。
提前感谢您的任何想法。
发布于 2011-01-25 08:37:13
Icecast和Shoutcast服务器本身都有内部缓冲区。我知道shoutcast是可以配置的(查看文档中的高级指令)。
发布于 2019-02-07 06:55:58
有一些关于Ogg / Vorbis相关延迟的归档讨论线程:
答案似乎是,你必须使用Ogg容器格式,然后Vorbis的剩余延迟应该不会太高。
然而,我也经常读到新的Opus codec更适合低延迟/延迟。例如,请参阅here或here。
https://stackoverflow.com/questions/3611998
复制相似问题