2016-03-07 78 views
4

我正在使用nginx和nginx rtmp模塊爲移動設備創建音頻流。對於視頻,我使用ffmpeg將視頻切片爲jpeg圖像,並以此方式向移動用戶顯示視頻流。音頻將分開導致15-30秒的音頻延遲。我認爲這是因爲jpegs的視頻在音頻緩衝區之前開始。所以我嘗試的是捕捉<audio>事件「canplay」,以及何時該事件觸發,然後開始視頻預覽。檢測HLS音頻播放事件

音源例如:http://example.com:8081/hls/audio.m3u8

檢測代碼:

var audio = document.getElementById('preview-audio'); 
audio.oncanplay=function(){ console.log('audio loaded'); }; 

,但這一事件永遠不會觸發。只有觸發的事件是「loadstart」和「progress」。我怎樣才能檢測到音頻緩衝,以便我可以與JPEG同步?

在此先感謝

回答

0

我相信你可以使用oncanplaythrough事件。

var audio = document.getElementById("preview-audio"); 
audio.oncanplaythrough = function() { 
    console.log("Audio can be played."); 
}; 

有關oncanplaythroughhere的更多信息。