Javascript 检测HLS音频播放事件

Javascript 检测HLS音频播放事件,javascript,jquery,nginx,http-live-streaming,Javascript,Jquery,Nginx,Http Live Streaming,我正在使用nginx和nginx rtmp模块为移动设备创建音频流。对于视频,我使用ffmpeg将视频切片为jpeg图像,这样我就可以向移动用户显示视频流。音频分离导致音频延迟15-30秒。我假设发生这种情况是因为JPEG的视频在音频缓冲区之前开始。所以我试着去捕捉 检测代码: var audio = document.getElementById('preview-audio'); audio.oncanplay=function(){ console.log('audio loaded'

我正在使用nginx和nginx rtmp模块为移动设备创建音频流。对于视频,我使用ffmpeg将视频切片为jpeg图像,这样我就可以向移动用户显示视频流。音频分离导致音频延迟15-30秒。我假设发生这种情况是因为JPEG的视频在音频缓冲区之前开始。所以我试着去捕捉

检测代码:

 var audio = document.getElementById('preview-audio');
 audio.oncanplay=function(){ console.log('audio loaded'); };
但这一事件从未发生过。触发的事件只有“loadstart”和“progress”。如何检测音频是否已缓冲,以便与jpeg同步


提前感谢

我相信您可以使用
oncanplaythrough
事件

var audio = document.getElementById("preview-audio");
audio.oncanplaythrough = function() {
    console.log("Audio can be played.");
};
有关
oncanplaythrough
的更多信息