0

我正在尝试使用 FlowPlayer 在我的网页(或者更准确地说,我的网络应用程序)上播放音频直播。包含应用程序和播放器的页面应该保持打开很长时间,比如几个小时,经过一堆测试,我意识到播放器会一直缓冲音频流并在每次丢失某些包时延迟播放(我想这个由于我的连接不稳定导致包裹丢失)。几个小时后,从最初的 1-2 秒,流已经累积了大约 30-35 秒的延迟。

所以,我想要实现的是:任何时候丢失的包会导致音频流延迟,音频流会避免这个错误,甚至导致音频跳跃,但不会造成任何延迟。

我搜索了整个文档,我能找到的关于这个参数的唯一信息是关于缓冲区长度。实际上bufferLength,由于我的实时需求,我将其设置为 2(默认值 3,我有 5-6 秒的基本延迟,对于我尝试运行的那种应用程序来说是不可接受的),但我不能找一个可靠的方法来避免延迟打桩。

我使用 RTMP 协议从 Wowza 2.0 服务器捕获我的实时流。

4

1 回答 1

1

我终于让它工作了,我只是将我的缓冲区长度设置为一个较低的数字(准确地说是 1),并在每次延迟开始堆积时向事件处理程序“onEmptyBuffer”添加一个刷新函数,播放器刷新并返回延迟 1-2 秒。这样,我只会因为刷新而失去 1-2 秒的通信(在我的案例研究中并不那么糟糕),尽管我的延迟不会高于原来的 2-3 秒。

于 2011-07-22T09:01:09.007 回答