录制音频时,仅录制不是来自设备扬声器的声音,即忽略录音设备发出的声音

问题描述

我制作了一个Javascript应用程序,该应用程序创建了音频聊天,但是当有人讲话时,来自扬声器的声音会返回到麦克风,并且重复多次。如何使用JavaScript避免这种影响?非常感谢您的回答。

  
var stream;

if (!navigator.getUserMedia) {
    navigator.getUserMedia = navigator.webkitGetUserMedia ||
        navigator.mozGetUserMedia;
}
navigator.getUserMedia
(
   audio:
  {
    echoCancellation: true,autoGainControl: true,noiseSuppression : true                           
  },function(stream) 
  {
    var ctx = new AudioContext();
    var source = ctx.createmediastreamsource(stream);
    var dest = ctx.createMediaStreamDestination();
    var gainNode = ctx.createGain();

    source.connect(gainNode);
    gainNode.connect(dest);
    
    stream = dest.stream; 

  },function(e) 
  {
    console.log(e); 
  });

var media_options = { audioBitsPerSecond : 128000,mimeType : 'audio/webm; codecs=opus'}
                        
rec = new MediaRecorder( stream,media_options );

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)