[英]Playlist of audio files within HTML5 webapps?
給定與許多音頻文件相對應的網址數組,例如:
var playlistUrls = [
"./audio/cmn-ni3.mp3",
"./audio/cmn-hao3.mp3",
"./audio/cmn-lao3.mp3",
"./audio/cmn-mao3.mp3"
];
如何以提供的網址數組相同的順序將這些文件作為播放列表(一個在另一個的末尾)播放?
我傾向於在howler.js范圍內執行此操作,因為它提供了各種HTML5后備功能 。
以下內容確實有效,並且具有可伸縮性,並且可能是實現上面引用的功能( jsfiddle )的一個良好的開端:
var playlist = function(e) {
// initialisation:
pCount = 0;
playlistUrls = [
"https://upload.wikimedia.org/wikipedia/commons/8/8a/Zh-Beijing.ogg",
"https://upload.wikimedia.org/wikipedia/commons/8/8a/Zh-Beijing.ogg",
"./audio/a.mp3",
"./audio/b.mp3",
"./audio/c.mp3",
"./audio/d.mp3"
], // audio list
howlerBank = [],
loop = true;
// playing i+1 audio (= chaining audio files)
var onEnd = function(e) {
if (loop === true ) { pCount = (pCount + 1 !== howlerBank.length)? pCount + 1 : 0; }
else { pCount = pCount + 1; }
howlerBank[pCount].play();
};
// build up howlerBank:
playlistUrls.forEach(function(current, i) {
howlerBank.push(new Howl({ urls: [playlistUrls[i]], onend: onEnd, buffer: true }))
});
// initiate the whole :
howlerBank[0].play();
}
另外,我發出了Github的請求,將該功能添加到Howler.js中 。
如果您願意,請在jsfiddle上分享您的版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.