Linuxでのビデオ会議のためのオーディオ環境

Linuxに乗り換えようかなと思っている人向けにビデオ会議のためのオーディオ環境構築の一例を紹介する。

ハードウェア

Audio I/F: Focusrite Scarlett Solo 3rd Gen

focusrite.com

1万円ちょっとで買えるし、ダイレクトモニターも付いてるし、Linuxのusbaudioドライバで問題無く動作する。 音声入力に対して不満は無いが、ヘッドホンを刺して普通に音楽を鳴らすとめっちゃ硬い音がするので、入力にのみ利用している。

マイク: Shure SM58

www.shure.com

大分昔に買ったボーカルマイクを流用。コンデンサマイクではないが、1万円ぐらいで安い、単一指向性、丈夫、定番、という安定感のあるマイク。 これをテーブル置きのマイクスタンドに設置して利用している。 マイクヘッドを顔側に向けて、インターフェースのゲインを上げれば、30cmぐらい離れていても普通に拾う。

カメラ: Logitech C920 HD Pro Webcam

www.logicool.co.jp

これも1万円ぐらい。既に結構古いが大抵のノートPCのカメラよりは綺麗に映る。Linuxのuvcvideoドライバで問題無く動作する。オートフォーカスも問題なく動く。

ソフトウェア

ノイズ除去: noise-suppression-for-voice

github.com

ニューラルネットワークを利用したRNNoiseというノイズリダクションライブラリを利用したリアルタイムノイズ低減プラグインOSS (GPL-3.0)。

DAW等で良く利用されるVSTプラグインか、Linuxのpulseaudioで利用できるladspaとしてコンパイルできる。

しばらく利用しているがかなり優秀で、環境音はかなり低減できてキーボードをカチャカチャやる音はほぼ消せるし、マイクの側で呼吸しても呼吸音が聞こえなくなる。咳とかはタイプに依る感じ。乾いた咳は結構消えてくれる。

コンパイルの手間はあるが、使う価値はある。

pulseaudio設定: pagraphcontrol

github.com

pulseaudioの設定は基本テキストなので、グラフィカルにやれる様にしてくれるツール。ただ、自分はjack audioに乗り換えたので、こちらは余り利用していない。

pulseaudioをちゃんと設定すれば、特定のオーディオラインにだけエフェクトをかけたりできるし、zoomから流れてくる音声に対して自分のマシンでノイズ除去をかけたりできるのだが、そういうのを視覚的に楽にしてくれる。

jack audio設定: Carla

kx.studio

普通Jack Audioとか使わないと思うんだけど、もし利用したいならCarlaを使うと設定が楽になる。pagraphcontrolみたいにグラフィカルに線を繋げてエフェクトをかけられる。

Jack Audioを使う利点はpulseaudioより遥かにレイテンシを下げられたり、プラグインの幅が広がるところ。

おまけ: PulseEffects

github.com

もし、声や音に色々エフェクトかけて遊びたいなら、PulseEffectsを使うのが手軽で良い。エコーかけたりイコライザ通したり歪ませたり、基本のプラグインだけでも結構色々できる。

ビデオ会議ツールについて

zoomとかdiscordとかは普通に利用できる。ブラウザ系のミーティングツールも基本問題は無い。

ただwaylandを使っているとデスクトップキャプチャが結構面倒なことになる。pipewireとかを駆使すれば出来るらしいが、自分はwaylandを常用していないので余り試せていない。

まとめ

実際、音声周りはプロフェッショナルクオリティを求めないのであれば、Macよりよっぽど自由にやりやすいので、むしろMacより環境が良くなったと思う。

個人的には音声の聞き取り易さというのは結構会議中のストレスに影響するので、ちゃんとしたマイクとノイズ低減の工夫はした方が良いと思う訳で、何かしら参考になれば良いと思う。