createMediaElementSource从音频文件输入?

我正在尝试制作一个网站,可立即在立体声音频上执行相位取消。当我发现相位消除和所有它可以实现我认为它是惊人的,所以我想看看你是否可以在网上很快做到这一点,使它更有趣。createMediaElementSource从音频文件输入?

我找到了this Web Audio API post,这个例子正是我想要的(如果你按下卡拉OK按钮)。但是,它有点慢,它不适用于大文件。 The author also mentions this:

真的,我应该使用mediaElement来操纵更长的音轨,因为我们真的不应该在javascript中进行复杂的处理。

我试图使用mediaElement,但我甚至无法弄清楚如何开始。我尝试这样做:

<input type="file" id="upload" accept="audio/*"> 

<script>

var upload = document.getElementById("upload");

upload.addEventListener("change", function() {

var context = new (window.AudioContext || window.webkitAudioContext)();

var source = context.createMediaElementSource(upload);

console.log(source);

});

</script>

我得到的错误Failed to execute 'createMediaElementSource' on 'BaseAudioContext': parameter 1 is not of type 'HTMLMediaElement'.

我知道一个输入元素是不一样的声音元素,所以我不明白你怎么可以加载它作为一个MediaElement的。

任何帮助将不胜感激!

回答:

createMediaElementSource()需要一个<audio>元素,所以如果我们创建一个并将文件数据传递给它,我们就得到了源代码。

​​

以上是 createMediaElementSource从音频文件输入? 的全部内容, 来源链接: utcz.com/qa/259346.html

回到顶部