gpt4 book ai didi

javascript - Web Audio API MediaElementSource 节点和 SoundCloud 无法使用效果?

转载 作者:太空宇宙 更新时间:2023-11-04 15:27:33 25 4
gpt4 key购买 nike

我将 SoundCloud URL 用作 audio.src 。当我通过我拥有的延迟链运行它时,它只播放未处理的版本。这是 fiddle : http://jsfiddle.net/ehsanziya/nwaH3/

    var context = new webkitAudioContext();
var audio = new Audio(); //creates a HTML5 Audio Element

url = 'http://api.soundcloud.com/tracks/33925813/stream' + '?client_id=c625af85886c1a833e8fe3d740af753c';
//wraps the soundcloud stream to an audio element.
audio.src = url;

var source = context.createMediaElementSource(audio);
var input = context.createGainNode();
var output = context.createGainNode();
var fb = context.createGainNode();
fb.gain.value = 0.4;

var delay = context.createDelayNode();
delay.delayTime.value = 0.5;


//dry
source.connect(input);
input.connect(output);

//wet
input.connect(delay);
delay.connect(fb);
fb.connect(delay);
delay.connect(output);

source.mediaElement.play();

该链与振荡器节点一起工作。这是什么原因?

还有其他方法可以使用 Web Audio API 处理来自 SoundCloud 的流式声音吗?

最佳答案

您需要等待音频元素上的 canplaythrough 事件触发,然后才能将其与 createMediaElementSource 一起使用。

因此只需添加事件监听器,等待回调触发,然后再分配 source = context.createMediaElementSource(audio); 并建立所有连接。

这是一个更新的 jsFiddle,它会做你想做的事:http://jsfiddle.net/nwaH3/3/

关于javascript - Web Audio API MediaElementSource 节点和 SoundCloud 无法使用效果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18215349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com