使用rtc的Firefox createMediaStreamDestination错误?

Cra*_*dks 6 javascript audio firefox html5-audio

我通过rtc传输音频,并希望将音频静音和取消静音.

这有效...但没有增益控制:

function(stream) { /* getUserMedia stream */
      console.log("Access granted to audio/video");
      peer_connection.addStream(stream);
}
Run Code Online (Sandbox Code Playgroud)

这适用于Chrome但不适用于Firefox(带增益控制)

function(stream) { /* getUserMedia stream */
  console.log("Access granted to audio/video");
  var microphone = context.createMediaStreamSource(stream);
  gainNode = context.createGain();
  var dest = context.createMediaStreamDestination();
  microphone.connect(gainNode);
  gainNode.connect(dest);

  local_media_stream = dest.stream;
  peer_connection.addStream(local_media_stream);
}
Run Code Online (Sandbox Code Playgroud)

我没有得到任何错误,我听不到任何声音.当我将gainNode发送到context.destination时,我可以听到自己.

我认为"context.createMediaStreamSource(stream)"以任何方式被破坏.谁能告诉我为什么?以及如何解决这个问题.


编辑:所以我检查了流和:

stream //type: LocalMediaStream    
dest.steam //type: MediaStream
Run Code Online (Sandbox Code Playgroud)

在Firefox中!在chrome中,两者都是MediaStreams

Cra*_*dks 3

好的,感谢 @Ken Fyrstenberg,我刚刚尝试了 Firefox Nighly 版本。在 Nightly 上,everythink 工作得很好(就像在 Chrome 中一样)。数据类型有:

stream //type: LocalMediaStream    
dest.steam //type: MediaStream
Run Code Online (Sandbox Code Playgroud)

和以前一样,但我可以听到对手的声音并且能够将麦克风静音。

所以我只需要等待发布:P