Web音频循环以 作为源

问题描述 投票:1回答:3

[我了解我可以使用createMediaElementSource()使用Web Audio来处理音频流,但是可以使用Web Audio播放/循环音频并仅使用标签来加载音频吗?

这是我尝试过的,但是它说start()不是函数:

window.onload = init;
var context;
var bufferLoader;

function init() {
    window.AudioContext = window.AudioContext || window.webkitAudioContext;
    context = new AudioContext();

    var audio = $("audio").get(0);
    var source = context.createMediaElementSource(audio);
    source.connect(context.destination);
    source.start(0);
}
javascript html html5-audio web-audio-api
3个回答
3
投票
window.onload = init;

function init() {
    window.AudioContext = window.AudioContext || window.webkitAudioContext;

    var context = new AudioContext();

    var audio = $("audio").get(0);

    audio.addEventListener('loadstart', function() {
        var source = context.createMediaElementSource(audio);
        source.connect(context.destination);

        audio.play(0);
    }, false);
}

参考https://github.com/Korilakkuma/XSound/blob/master/build/xsound.dev.js#L9703中的XSound.js


0
投票

您可以使用audio.play()开始播放音频,但是您的源是MediaElementAudioSourceNode,而不是AudioBufferSourceNode。

如果您找到一种获取音频标签缓冲区的方法,也许您可​​以将其传递给AudioBuffer并使其起作用...


-1
投票

您如何尝试html上的“”命令?它是这样写的:

    <audio controls preload> </li>
    <source src="the/source/in/your/library">
    </audio>

更多信息here

© www.soinside.com 2019 - 2024. All rights reserved.