Seaside Laboratory

Post

Sound Engine によるノイズ除去

音声加工時に行った Sound Engine によるノイズ低減のやり方を忘れないうちに書いておきます。

フィルター (帯域カット)

特定の周波数だけ取り出すフィルター。

雑音に混じった人の声を取り出す時に使用した。人の声の周波数を調べてみたところ、サイトによって解説が異なるので明確な範囲はわからなかったが、おおよそ 200 ~ 2000 Hz という感じだった。

「ヴィジュアル」を有効にした状態で音声を再生すると、周波数毎の音量が分かるので、どの帯域が強く出ているのか調べる。


4kHz より上の高域が目立つ。

LPF (Low Pass Filter) は指定した周波数以下を通すフィルターなので、高域にあるノイズと人の声の境目あたりの周波数を設定する。


フィルター後。

音声に混ざっているエンジン音を低減する際に HPF (High Pass Filter) を使ってみたが、音が低域から中域に分布していたせいか、中域のノイズが相対的に強調されてしまい、フィルター前より悪化するという結果になってしまった。

フィルターのかけすぎは音質低下につながるので、どこまでノイズをとるのかは難しいところ。

ノイズサプレッサー (雑音帯域低減)

ヒスノイズ (高音の「サー」というノイズ) を低減してくれるフィルター。指定した周波数の音量が低くなったときに音量を絞り込むという仕組みらしい。

会話の隙間にある無音部のノイズを低減する用途で使用した。


無音部分でもノイズが多い。

パラメーターの設定が難しかったので、組み込まれているライブラリーの「12KHz ノイズ低減」を使用。


無音部分の音量が下がりノイズが目立たなくなった。

本来こういう用途にはノイズゲートの方が適切という話ではあるが、今回使った音声ではノイズサプレッサーのほうが良好な結果が得られた。

フェードイン・アウト

屋外で録音した音声のような比較的ノイズが多いものは、再生開始時と終了時に音量が急激に変化するのでノイズが際立ってしまう。そこで、フェードインとフェードアウトを入れることで急激な変化を緩和しノイズ感を抑えることにした。ノイズを除去しているわけではないので、誤魔化しているといった方が正しいか。


初期状態。最後まで音量が大きい。


無音状態へ滑らかにフェードアウト。

波形編集

「プツッ」といった短時間で強いノイズにはフィルター類の効果がイマイチなので、波形を直接編集することにした。

まずは、どこでノイズが発生しているのか調べる必要があるので、波形を眺めながら音声を再生して場所を特定する。

波形の見た目から場所をはっきりと特定できない場合は、再生スピードを下げながら繰り返し再生をして当たり (範囲選択) をつける。選択範囲を狭めていけば問題箇所を特定できるので、表示を拡大したりしながら範囲を微調整し、ノイズの原因となっている波形を削除する。

削除したことによって新たなノイズが発生しては本末転倒なので、前後の波形が滑らかにつながるよう削除範囲を調整した。

理論上は削除による音質の変化や低下が起きるはずではあるが、ノイズが超短時間なことと、音声という特性もあってか気になることはなかった。