DEV Community

loading...

echoCancellationType で system を使う

voluntas profile image voluntas ・1 min read

WebRTC を利用したとき、エコーキャンセルが思ったより聞かないな ... って思った方いらっしゃいませんか? デフォルトのエコーキャンセルはブラウザ内蔵のソフトウェア処理で行われているため、期待した効果が出ないことが多いです。

実はあまり知られていないのですが、getUserMedia に echoCancellationType というエコーキャンセルをシステム内蔵のものを使うという設定があります。これは Chrome M71 から利用可能です。

navigator.mediaDevices.getUserMedia({
  audio: {echoCancellationType: 'system'}
})

エコーキャンセル自体は標準で有効なので、タイプを指定するだけで良いです。

Windows と macOS でのみ有効です。効果は絶大なので是非試してみてください。

参考

More native echo cancellation!  |  Web  |  Google Developers

Discussion

pic
Editor guide