長いフレーズに対するアライメント
指定した複数の長いフレーズについて、それぞれがどこまで発話されたかを判定する機能です。
サンプル実装は、Plugins > WhisperRealtime > Sample > BP > Alignment_Long > BP_WhisperRealtimeAlignmentLongTextにあります。
Plugins > WhisperRealtime > Sample > Map > test_AlignmentLongのマップでテストできます。
基本的なセットアップ
- アクターBlueprintを作成します
Whisper Realtime Alignment Shortコンポーネントを追加します- ニューラルネットワーク設定(Neural Net settings)と音声入力・スペクトル分析設定(Audio Input Spectrum Analysis settings)のデフォルト値を設定します:
- 詳細は、使い方 - 文字起こしページを参照してください。
- アライメント設定のデフォルト値を設定します:
- 詳細は、使い方 - 短いフレーズに対するアライメントページを参照してください。
-
長いフレーズに対するアライメント設定のデフォルト値を設定します:
Min Token Length to Search:発話されたかどうかを確認するトークンの数を指定します。-
Probability Threshold:発話を判定するための確率の閾値の基準値を指定します。閾値の算出式
bをこの値、pを無音入力時の各トークンの出現確率とすると
(1 - p) * b + pが最終的な閾値です。
-
Max Skip at Beginning of Speech:発話開始時に閾値以下のトークンをいくつスキップすることを許可するかを指定します。 Max Skip during Speech:発話中に閾値以下のトークンをいくつスキップすることを許可するかを指定します。
-
イベント「On Speaking」と「On Spoken」から結果を取得します。
- これらのイベントは、
Alignment Long Resultの配列を提供します。配列の要素は、下記の3つの情報を保持します。Spoken history: フレーズの発話済みの部分。Cursor: フレーズのまだ発話されていない部分の最初のトークンのインデックス。Probabilities: フレーズ内の各トークンが発話されたかどうかの確率。
On SpeakingとOn Spokenの違いは、使い方 - 文字起こしページを参照してください。
各フレーズに含まれるトークンや閾値の確認方法
Get Alignment Targetsを呼び出すことで、Whisper Alignment Long Targetの配列を取得できます。
この配列の各要素は、各フレーズのトークンIDなどの情報を格納しています。 - これらのイベントは、
進行状況のリセット
全フレーズのアライメントの進行状況をリセットするには、Reset Progress関数を呼び出します。
設定の変更
- 長いフレーズに対するアライメント設定を変更するには、
Change Alignment Setting関数を呼び出します。 - アライメント対象の文字列
Phrases to Alignを変更するには、Set Phrases関数を呼び出します。 - 音声入力・スペクトル分析設定を変更するには、
Change Spectrum Analysis Setting関数を呼び出します。 - ニューラルネットワーク設定を変更するには、
Change Neural Net Setting関数を呼び出します。