WebAudio将流连接到目标不';行不通

WebAudio将流连接到目标不';行不通,audio,webrtc,web-audio-api,mediastream,Audio,Webrtc,Web Audio Api,Mediastream,我从WebRTC获得一个包含音频数据的MediaStream。让我们调用这个流srcStream 如果我有我的HTML 我跑 audioEl=document.querySelector(“音频”) audioEl.srcObject=srcStream 我可以听到音频,我可以看到音频元素开始计算秒数 但是,我有多个音频流,所以我想做一些更一般的事情,将所有这些流连接到一个流。 如果我跑 audioCtx=newaudiocontext() dst=audioCtx.createMedia

我从
WebRTC
获得一个包含音频数据的
MediaStream
。让我们调用这个流
srcStream

如果我有我的HTML


我跑

audioEl=document.querySelector(“音频”)
audioEl.srcObject=srcStream
我可以听到音频,我可以看到音频元素开始计算秒数

但是,我有多个音频流,所以我想做一些更一般的事情,将所有这些流连接到一个流。 如果我跑

audioCtx=newaudiocontext()
dst=audioCtx.createMediaStreamDestination()
audioEl.srcObject=dst.stream
src=audioCtx.createMediaStreamSource(srcStream);
src.connect(dst)
音频显示为正在播放,但我听不到播放的任何音频


我如何创建我的目的地有问题吗?

也许可以检查控制台,查看由于CORS限制而无法播放的消息。要让WebAudio播放音频,您必须在音频标签源上正确设置CORS,以允许访问。

这是Chrome中的一个选项。 解决方案是将流附加到新的音频对象,即使它未使用

newaudio().srcObject=srcStream;

谢谢。控制台没有特殊消息。此外,直接播放
srcStream
是有效的,当我构建此destinationWebAudio时,它不起作用。如果您没有CORS访问权限,则需要生成静音输出,即使音频标记在连接到媒体流源节点之前播放得很好。如果你提供了一段与webaudio不兼容的实际音频片段,这将非常有帮助,