HTML5<音频>:点击下一首歌曲时停止加载/缓冲

HTML5 <Audio> : stop loading/buffering when clicking on next song

本文关键字:一首 加载 缓冲 gt 音频 lt HTML5      更新时间:2024-04-17

我有一个小网站,里面有大约40个mp3播客,你可以使用html5标签收听。

每个播客大约一小时长,大小为100兆字节。

这是我的问题:

假设我在播客1上按PLAY,它开始播放,并将播客的其余部分预加载到100%。

现在假设我想玩PODCAST 2,我在第一个上按暂停,在第二个上按播放。

如何停止第一个播客的预加载/缓冲,以便所有带宽都可以用于预加载/缓存第二个播客?

我看着jplayer,以为它就是这么做的,但通过查看代码,当在同一页面上使用多个播放器时,它所做的只是"暂停"其他播放器,而不是"停止"预加载/缓冲。

你知道我该怎么做吗?

非常感谢:)

edit:我已经使用了preload="none"

我遇到了完全相同的问题,并通过在暂停之前将players src属性设置为一个非常短的无声mp3文件来解决它。例如.

var silent_file = 'http://example.com/silent.mp3';
var blogstream = 'http://example.com/blogstream';
var audioelement = document.getElementById( 'audioplayer' );
function stop(){
    audioelement.src = silent_file;
    audioelement.pause();
}
function play(){
    audioelement.src = blogstream ;
    audioelement.play(); // not necessary if audio element has autoplay
}