werman/noise-suppression-for-voice

Noise suppression plugin based on Xiph's RNNoise

werman/noise-suppression-for-voice

개요 – Xiph의 RNNoise 신경망 모델을 사용하여 마이크의 배경 소음을 줄이는 실시간 오디오 플러그인입니다. VST2, VST3, LV2, LADSPA, AU, AUv3 플러그인으로 제공되며, 대부분의 DAW 및 시스템 전체 오디오 파이프라인에서 사용할 수 있습니다.

주요 기능

  • RNNoise 기반 노이즈 서프레션(다양한 노이즈로 훈련된 순환 신경망)。
  • 16비트、48 kHzモノラルまたはステレオストリームに対応。
  • パラメータと診断統計を表示する最小限のGUI。
  • 調整可能な音声アクティビティ検出(VAD)設定:
    • VADしきい値(%) – 音声を通過させる前にモデルが音声の存在をどの程度確信する必要があるか。
    • VADグレース期間(ミリ秒) – 音声終了後、単語の切断を避けるために出力を短時間聞こえるように保ちます。
    • 遡及VADグレース期間(ミリ秒) – 検出が遅れた場合に音声の開始を保持するために遅延を追加します。
  • Windows、Linux、macOS向けにビルド可能(macOSのAU/AUv3は計画中)。
  • 各プラグインフォーマット用に個別のビルドを提供。不要なフォーマットはCMakeフラグで無効化可能。

使用方法

  1. Windows – VST2/3 DLLをインストールし、Equalizer APO、Carla、または任意のDAWなどのホストでロードします。マイクのサンプルレートを48 kHzに設定します。
  2. Linux(PipeWire) – PipeWireフィルターチェーン設定を介して提供されたlibrnnoise_ladspa.soをロードします(READMEにコピー可能な設定ファイルがあります)。controlブロックでVADコントロールを調整します。
  3. Linux(PulseAudio) – null sinkを作成し、module-ladspa-sinkでLADSPAプラグインをロードし、マイクをsinkにループバックします。自動起動のために~/.config/pulse/default.paに行を追加します。
  4. macOS – ソースコードにAU/AUv3サポートが含まれています。ビルドスクリプトを完成させるための貢献を歓迎します。

ビルド

# 64ビットリリースビルド
cmake -Bbuild-x64 -H. -GNinja -DCMAKE_BUILD_TYPE=Release
ninja -C build-x64

32ビットをコンパイルしたり、提供されたMinGWツールチェーンでWindows用にクロスコンパイルできます。-DBUILD_VST_PLUGIN=OFFなどのCMakeフラグを使用して不要なフォーマットをスキップできます。

依存関係 – プロジェクトはgit-subrepoを介して外部コードをベンダリングしています:

  • JUCE (GPLv3) – GUIおよびプラグインラッパー用フレームワーク。
  • FST – オーディオ処理ユーティリティ。
  • catch2 – ユニットテストライブラリ。

ライセンス – GPL-3.0(RNNoiseおよびJUCEと同じ)。誰でも同じライセンスの下でプラグインを使用、変更、再配布できます。

対象ユーザー – 商用DSPソリューションに費用を払わずに、音声チャット、ストリーミング、録音用の低遅延・オンデバイスノイズリダクションが必要な人。システム全体のオーディオ(Equalizer APO、PipeWire、PulseAudio)に統合できるリモートワーク環境で特に便利。

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트