メインコンテンツまでスキップ

音声活動検出 (Voice Activity Detection)

Streaming Sound Wave および Capturable Sound Wave などの派生型は、音声活動検出 (VAD) をサポートしています。VADは入力されるオーディオデータをフィルタリングし、音声が検出された場合にのみ内部バッファにデータを格納します。

本プラグインでは2種類のVAD実装を提供しています:

デフォルト実装では libfvad を使用しています。これは軽量な音声活動検出ライブラリで、Runtime Audio Importerがサポートする全てのプラットフォームとエンジンバージョンで効率的に動作します。

基本的な使用方法

サウンドウェーブ作成後にVADを有効化するには、ToggleVAD 関数を使用します:

Toggle VAD node

VADを有効にした後、いつでもリセットできます:

VADノードをリセット

デフォルトVAD設定

デフォルトVADプロバイダを使用する場合、VADモードを変更することでその積極性を調整できます:

Set VAD Mode node

VADモードパラメータは、音声検出のフィルタリングの厳格さを制御します。値が高いほど制限が厳しくなり、誤検知が減る代わりに一部の音声を見逃す可能性があります。

VADプロバイダー

ToggleVAD関数でVADを有効にした後、ニーズに合わせて異なるVoice Activity Detectionプロバイダーを選択できます。デフォルトプロバイダは組み込み型ですが、Silero VADなどの追加プロバイダは拡張プラグインを通じて利用可能です。

Set VAD Provider node

Silero VAD 拡張機能

Silero VADはニューラルネットワークを使用してより正確な音声検出を提供します。使用方法:

  1. プロジェクトにRuntime Audio Importerプラグインが既にインストールされていることを確認してください
  2. Google DriveからSilero VAD拡張プラグインをダウンロード
  3. ダウンロードしたアーカイブからフォルダを抽出し、プロジェクトのPluginsフォルダに配置(存在しない場合は作成)
  4. プロジェクトをリビルド(この拡張機能にはC++プロジェクトが必要)
important
  • デフォルトVADはRuntime Audio Importerがサポートする全エンジンバージョンで動作(UE 4.24, 4.25, 4.26, 4.27, 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6)
  • Silero VADはUnreal Engine 4.27と全UE5バージョンをサポート(4.27, 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6)
  • Silero VADは現在Windows版のみ利用可能
  • この拡張機能はソースコード形式で提供され、使用にはC++プロジェクトが必要
  • プラグインの手動ビルド方法についてはBuilding Pluginsチュートリアルを参照

インストール後、SetVADProvider関数でSileroクラスプロバイダを指定してVADプロバイダとして選択できます。

音声開始・終了検出

Voice Activity Detection(VAD)は音声の存在を検出するだけでなく、音声活動の開始と終了も検出可能です。これは再生やキャプチャ中に音声が開始/終了した際のイベントトリガーに有用です。

最小音声継続時間や無音期間などのパラメータを調整することで、音声開始・終了検出の感度をカスタマイズできます。これにより、短いノイズや音声間の短すぎるポーズを誤検知しないよう微調整が可能です。

最小音声継続時間

Minimum Speech Durationパラメータは、音声開始イベントをトリガーするために必要な連続した音声活動の最小時間を設定します。これにより、音声と見なすべきでない短いノイズをフィルタリングし、持続的な音声活動のみを確実に認識できます。Minimum Speech Durationのデフォルト値は300ミリ秒です。

Set Minimum Speech Duration node

無音期間

無音期間パラメータは、音声終了イベントをトリガーするために必要な無音の長さを設定します。これにより、単語や文の間の自然な間隔で音声検索が早期に終了するのを防ぎます。無音期間のデフォルト値は500ミリ秒です。

Set Silence Duration node

スピーチデリゲートへのバインド

スピーチの開始時または終了時に特定のデリゲートにバインドできます。これは、音声アクティビティに基づいてカスタム動作(テキスト認識の開始/停止や他のオーディオソースの音量調整など)をトリガーする場合に便利です。

Bind Event To On Speech Started Bind Event To On Speech Ended

VADプロバイダーの比較

デフォルトVAD (libfvad)

利点:

  • 軽量で効率的
  • すべてのプラットフォームで動作
  • リソース使用量が最小限
  • モバイルや低電力デバイスに適している

最適な用途:

  • 静かな環境でのシンプルな音声検出
  • モバイルアプリケーション
  • パフォーマンスが優先されるプロジェクト
  • ユニバーサルなプラットフォームサポートが必要な場合