2011-05-06 91 views
0

我正在嘗試使用FlowPlayer在我的網頁上播放音頻直播流(或者更準確地說,我的web應用程序)。包含應用程序和播放器的頁面應該長時間保持打開狀態,例如幾個小時,經過一系列測試後,我意識到播放器不斷緩衝音頻流,並在每次缺少一些包時延遲播放它(我想這是由於我的連接不穩定而導致包丟失)。從最初的1-2秒鐘開始,一堆小時之後,這條河流堆積了30-35秒的延遲。如何避免使用Flowplayer在直播回放中累積延遲?

所以,我想要實現的是:任何時候一些丟失的包會導致音頻流的延遲,音頻流會避免這個錯誤,甚至會導致音頻跳躍,但不會堆積任何延遲。

我搜索了所有的文檔,關於這個參數的唯一信息我能找到的是關於緩衝區長度。實際上,由於我的實時需求(默認3值,我有一個5-6秒的基準延遲,對於我試圖運行的應用程序而言不可接受),我實際上將bufferLength設置爲2,但是我可以'噸得到一個可靠的方法來避免延誤打樁。

我使用RTMP協議從Wowza 2.0服務器捕獲實時流。

回答

1

我終於得到它的工作,我只是將我的緩衝區長度設置爲一個較低的數字(準確地說是1),並在事件處理程序「onEmptyBuffer」中添加了一個刷新函數,每當延遲開始堆積時,刷新並恢復到1-2秒的延遲。這樣我只會因刷新而失去1-2秒的通信時間(在我的案例研究中並不那麼糟糕),儘管我不會有比原來2-3秒更高的延遲。