10

アプリファイルにJavaScriptコードを適用して、WebRTCの「自動ゲイン制御機能」をデフォルトで無効にする方法はありますか?

私はsimplewebrtcを使用しています。

4

2 に答える 2

19

制約を使用して音声処理をオフにすることができます ( Chrome ではhttps フィドルを使用します)。

var constraints = {
  audio: {
    echoCancellation: false,
    noiseSuppression: false,
    autoGainControl: false,
  }
};

navigator.mediaDevices.getUserMedia(constraints)
  .then(stream => audio.srcObject = stream)
  .catch(e => log(e));

var log = msg => div.innerHTML += msg + "<br>";
<audio id="audio" controls autoplay></audio><br>
<div id="div"></div>
<script src="https://webrtc.github.io/adapter/adapter-latest.js"></script>

が指定されている場合、 Chromeは明らかにすべてのオーディオ処理をオフにしechoCancellation: falseます。

Firefox はまだautoGainControl: falseそれを行っていないので、今のところとも含めnoiseSuppression: falseてください。

Chrome と Firefox (64+) の両方がデフォルトのように見えます。autoGainControltrue

古いバージョンの Firefox のデフォルトautoGainControlfalsenoiseSuppressionですtrueが、すべてのデバイス設定と同様に、デフォルトはブラウザごと、デバイスごと、または状況によっても異なる可能性があるため、設定が気になる場合は制限してください。

3 つの設定はすべて、Chrome と Firefox で個別に制御することもできます。

于 2016-05-19T19:11:55.027 に答える