繁体   English   中英

不要在Android上加载时间流音频

[英]Do not load time streaming audio on Android

我想在电台播放的网络音频上播放它。 按下按加载开始播放事件消息显示为“正在加载”,但在开始播放音频流之前大约4或5秒钟被删除。 我希望该事件可以控制流媒体文件加载的时间。

台式计算机不存在此问题,因为音频会立即加载,但是在Chrome浏览器和SO Android的Smartphone中,此问题非常明显,加载大约需要6或7秒。 所以我会通过一些事件来控制这次。

直到音频开始播放之前,不删除消息LOADING可以使用哪种事件? 谢谢。

 function AudioStart(){
    audio = new Audio();
  audio.src = "http://listen.XXXX.com/XXXX";

    audio.addEventListener("loadstart", function(){

document.getElementById('title').innerHTML="<span>LOADING...</span>";

;
},false);


audio.addEventListener("loadeddata", function(){

audio.play();

},false);



} 

如果要确保已加载整个音频,请监听oncanplay而不是loadeddataoncanplaythrough

当加载了当前帧的数据,但没有足够的数据来播放指定音频/视频的下一帧时,发生loadeddata事件。

当浏览器可以开始播放指定的音频/视频时(当其已足够缓冲以开始播放时),就会发生canplay事件

当浏览器估计它可以播放指定的音频/视频而不必停止缓冲时,就会发生canplaythrough事件。

尝试这个:

 function AudioStart() { audio = new Audio(); audio.src = "http://www.w3schools.com/html/horse.mp3"; audio.addEventListener("loadstart", function() { document.getElementById('title').innerHTML = "<span>LOADING...</span>"; }, false); audio.addEventListener("canplay", function() { //OR 'oncanplaythrough' document.getElementById('title').innerHTML = ""; audio.play(); }, false); } 
 <h3 id='title'></h3> <button onclick='AudioStart()'>Start Audio</button> 

在这里摆弄

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM