web-dev-qa-db-ja.com

マイク-外部サウンドカードのノイズ抑制

こちら と同じ問題がありますので、手続きで返信してみました。すべてがインストールされたら、返信に従ってファイルを変更し、コンピューターを再起動しました。コンピュータが再起動したとき、私はpavucontrolを開いて入力デバイスを調べました。言及したバックグラウンドノイズの修正は内部サウンドカードでのみ機能し、外部サウンドカードでは機能しないことがわかりました。

Pavucontrol echo cancellation on internal sound card

外部サウンドカードのノイズ/エコーキャンセレーションを有効にする可能性はありますか?画像内にオーディオアダプタアナログモノとして表示されていますか?

1
user1257255

私の場合、ヘッドフォンは「ビルトインアナログステレオ」自体のポートリストに表示され、エコーキャンセルで使用できるようにpavucontrolでヘッドフォンを選択できます。

あなたのケースでは、エコーキャンセルを外部ソースに明示的にポイントする必要があると思います。 ここのドキュメント に従って、モジュールに「source_master」引数を指定できます。

したがって、外部ソースの名前pactl list sources | lessを見つけて、必要な外部デバイスを検索します。上記の「オーディオアダプターアナログモノ」(説明が表示されるため、そのためのモニターデバイスのエントリが存在する可能性があるため、スキップしてください。実際のデバイスには、名前に「alsa_input。」プレフィックスが付きます)。必要な外部デバイスの名前を取得し、/etc/Pulse/default.paの行に追加します。

load-module module-echo-cancel source_name=echosource aec_method=webrtc source_master=alsa_input.pci-0000_00_1b.0.analog-stereo

(以前に見つかったように、source_masterの名前を変更します)。 pactl/pacmdを使用してモジュールを再度アンロード+ロードする以外に、これを内部マイクに動的に変更する方法、または外部マイクに動的に戻す方法を見つけることができませんでした。

ちなみに、私の場合、ノイズキャンセリングが有効になるまでに数秒かかり、Skypeの最初の数秒にノイズがあり、ノイズがすぐにスムーズになります。

1
sumwale