音频播放完毕后,如何循环播放随机音频?

时间:2019-07-17 23:37:10

标签: javascript audio

我一直在努力寻找一种方法,使一首歌过渡到下一首歌,我将如何处理?

我没有尝试太多。我对Java语言的经验不足,因此我的尝试通常是徒劳的。

var numberOfSongs = 4
var sound = new Array(numberOfSongs+1)
sound[0]= "skytop.mp3"
sound[1]= "ac.mp3"
sound[2]= "forgotten.mp3"
sound[3]= "miserable.mp3"


function randomNumber(){
var randomLooper = -1
while (randomLooper < 0 || randomLooper > numberOfSongs || isNaN(randomLooper)){ randomLooper = parseInt(Math.random()*(numberOfSongs+1))
}
return randomLooper
}
var randomsub = randomNumber()
var soundFile = sound[randomsub]
document.write ('<EMBED src= "' + soundFile + '" hidden=true type="audio/mpeg" autostart=true loop=true>')

这就是我正在使用的,任何指针将不胜感激。

1 个答案:

答案 0 :(得分:0)

这不是一个完整的答案(需要一段时间!),但它可能会帮助您入门。看一下这些API:

https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement

https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement

https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement

播放剪辑的方式如下:

var audio = new Audio('url/to/my/audio.mp3');
audio.play();

可以播放音频。但是,由于您想知道音乐何时停止播放,因此为了播放下一个剪辑,请在开始播放之前添加事件监听器:

audio.addEventListener('ended', (event) => {
  // Your code to start playing the next clip goes here.
});

当然,您可以得到更多的鸽友。有足够的音频处理功能可供您淡化选择,而不仅仅是顺序播放。