Javascript无延迟播放无限循环音频文件
Posted
技术标签:
【中文标题】Javascript无延迟播放无限循环音频文件【英文标题】:Javascript playing an endless loop audio file without delay 【发布时间】:2021-09-13 09:57:03 【问题描述】:标题几乎是不言自明的。
我想用 javascript 创建一个无限循环,但在读取(再次)相同的文件之间不停止。
这是我的代码:
function playMySong(url)
var audio=document.createElement('audio');
audio.style.display="none";
audio.src=url;
audio.autoplay=true;
audio.onended=function()
playMySong('whiteNoise.wav');
;
document.body.appendChild(audio);
playMySong('whiteNoise.wav');
我的代码(几乎)完美运行,但我想了解声音结束到同一个文件开始之间的微小延迟。
不是:
[whiteNoise.wav][0.2ms delay][whiteNoise.wav]
我想要:
[whiteNoise.wav][whiteNoise.wav]
:)
【问题讨论】:
使用loop
属性怎么样?
【参考方案1】:
当音频文件到达末尾时,您会一次又一次地加载它。显然,加载资源需要时间。
为什么不对audio
元素使用简单的loop 属性?它将循环播放音频剪辑本身,而不会一次又一次地加载资源。
function playMySong(url)
var audio=document.createElement('audio');
audio.style.display="none";
audio.src=url;
audio.autoplay=true;
audio.loop = true;
document.body.appendChild(audio);
playMySong('whiteNoise.wav');
【讨论】:
以上是关于Javascript无延迟播放无限循环音频文件的主要内容,如果未能解决你的问题,请参考以下文章