通过Web Audio API在google Chrome上静默使用WebRTC

我从WebRTC拿到了mediaStream,做了一些音频处理和监控。它可以在FireFox上运行,但在Chrome上是静默的。

下面是一个包含单个gainNode的简化版本作为示例。

    const AudioContext = window.AudioContext || window.webkitAudioContext;
    let myAudioCtx = new AudioContext();
    let mySource = myAudioCtx.createMediaStreamSource(stream);
    let gainNode = myAudioCtx.createGain();
    gainNode.gain.value = 2;
    mySource.connect(gainNode);
    gainNode.connect(myAudioCtx.destination);

相反,如果我将流直接分配给srcObject,我会听到声音。

createMediaStreamSource()似乎没有返回任何音频,因为我的监控显示为静默。但是,如果我将流从WebRTC分配给srcObect,并通过我的监控运行,那么监控就会检测到声音。

myAudioCtx.state说“奔跑”

想不到还能去哪里检查。任何帮助都将不胜感激

转载请注明出处:http://www.intrusion-fire.net/article/20230526/1440511.html