ボイスチェンジャー & Resoniteノードグラフ:クリエイター向け上級ガイド
Resoniteノードグラフボイスのカスタマイズは、ソーシャルVRで最も技術的に興味深い課題の一つであり、最もドキュメント化されていないものの一つでもあります。Yellow Dog Man Studiosが開発したResoniteには、ProtoFluxが搭載されています。完全にシミュレートされたマシン、インタラクティブゲーム、共有ワールド内の複雑なオーディオルーティングを構築するほど強力なビジュアルスクリプトシステムです。ProtoFluxのオーディオ機能がどこで終わり、上流のボイスチェンジャーがどこから始まるかを正確に理解することが、本格的なResoniteクリエイターが実際に使用する種類の高度な音声ワークフローを構築するための鍵です。このガイドでは両方のレイヤーを完全に説明します。
TL;DR
- ResoniteのProtoFluxノードグラフはオーディオクリップ、トリガー、ワールド内サウンドルーティングを操作できます。ライブマイクストリームへの直接パイプラインではありません
- リアルタイム音声変換(ピッチシフト、フォルマント、AIクローニング)はResoniteがマイク信号を受信する前に、Windowsオーディオレイヤーで上流に行う必要があります
- WASAPIベースのボイスチェンジャーからの仮想マイクが、Resoniteの高度な音声ワークフローの正しい統合ポイントです
- マルチユーザーセッションは各ユーザーのすでに処理されたオーディオを送信します。あなたの変換が他の参加者が聞くものになります
- ProtoFluxと上流ボイスチェンジャーを一緒に使うことができます。ProtoFluxがワールド内オーディオロジックを処理し、ボイスチェンジャーがライブキャラクターを処理します
- 快適なResonite会話のレイテンシー予算:合計100ms以下
「Resoniteアドバンスドボイス」が実際に意味すること
Resoniteアドバンスドボイスセットアップガイドを検索する人は、通常、二つの異なることのどちらかを求めています。それらを混同すると混乱が生じます:
レイヤー1 - 上流マイクパイプライン。 ResoniteがあなたのVoiceを見る前に何が起こるか。あなたの物理マイク信号はOSオーディオグラフを通過します。これには仮想オーディオデバイスでのボイスチェンジャー、ノイズサプレッサー、またはEQが含まれる場合があります。Resoniteがマイク入力として使用するように設定されているデバイスが、受信するものです。このレイヤーのすべてはResoniteの外で完全に行われます。
レイヤー2 - ProtoFluxオーディオノード。 Resoniteのワールドシミュレーション内に入ると、ProtoFluxはオーディオをデータとして操作できます。サンプルのトリガー、3Dポジション間のオーディオクリップのルーティング、リアクティブサウンドビジュアライザーの構築、ワールド内に存在するサウンドへのResoniteの組み込みオーディオエフェクトの適用など。これはワールドビルドやインタラクティブ体験に強力ですが、ライブマイクストリームとは別のシステムです。
Resoniteの完全な高度な音声セットアップは両方のレイヤーを組み合わせます。上流レイヤーがリアルタイムキャラクターを処理し、ProtoFluxレイヤーがワールド内オーディオインタラクティビティと雰囲気を処理します。どちらも他方を置き換えることはできません。
ProtoFluxオーディオノード:できることとできないこと
ProtoFluxはResoniteのビジュアルノードベースプログラミングシステムです。Unreal EngineのBlueprintシステムに精神的に似ていますが、ライブの共同ワールド内で動作します。詳細に理解する価値のあるオーディオ関連ノードのセットが付属しています。
オーディオを扱うノード
ProtoFluxオーディオノードセットには以下が含まれます:
- AudioClipノード - ワールドまたは個人インベントリに保存されたオーディオアセットファイルを参照。再生、一時停止、停止、ループ
- AudioOutputノード - 3Dオブジェクトに取り付けてワールド空間にポジショナルサウンドを放出。音量、範囲、フォールオフカーブを制御
- AudioStreamノード - URLソースからワールドにオーディオをストリーミング(ウェブラジオ、ホストされたファイル)
- トリガーとロジックノード - 条件付きオーディオロジックを構築:「このオブジェクトが触れられたときにこのサウンドを再生する」「近さに基づいて二つのオーディオクリップをクロスフェードする」
- ミキサーとバスノード - ワールドシーン内の複数のオーディオソースの相対レベルを制御
ProtoFluxがマイクでできないこと
ProtoFluxは、継続的なオーディオバッファーとして着信マイク信号への直接の読み書きアクセスを持っていません。「マイク入力を取得し、ピッチシフトを適用し、仮想デバイスに出力する」というノードはありません。Resoniteのマイクボイスパスはエンジンのネットワーキングレイヤーによって処理されます。選択されたOS入力デバイスからキャプチャし、圧縮し、他のユーザーに送信します。ProtoFluxはワールドシミュレーションレイヤーにあり、ネットワーキング/オーディオキャプチャレイヤーにはありません。
これはResonite固有の制限ではありません。リアルタイムVoIP音声送信が、ほとんどのソーシャルVRプラットフォームのワールドオーディオスクリプティングとアーキテクチャ的に分離されている方法を反映しています。
実践的な意味合い:ライブ音声を変換したい場合は、上流で行います。
Resoniteのための上流ボイスチェンジャーの設定
上流ツールを使ったResoniteの音声変調の正しいアーキテクチャは次のようになります:
物理マイク → ボイスチェンジャー(WASAPI)→ 仮想マイクデバイス → Resonite入力
ステップバイステップのプロセスを説明します:
-
WASAPIベースのボイスチェンジャーをインストールする。 VoxBoosterのようなカーネルドライバー不要のツールは、ドライバーレベルのアクセスなしに標準Windowsオーディオデバイスとしてインストールされます。これによりResoniteのオーディオエンジンとの競合を避けられます。
-
ボイスチェンジャーを起動して変換を設定する。 DSPエフェクト(ピッチシフト、フォルマント、リバーブ、ディストーション)はどのCPUでも10ms以下で動作します。AI音声クローニングは中クラスGPU(RTX 3060以上)で約80msで動作します。会話にはローレイテンシーモードを使用してください。
-
Resoniteを開き、設定 > オーディオに移動する。 マイク入力をボイスチェンジャーの仮想出力デバイスに設定します。ほとんどのシステムでは「VoxBooster Virtual Microphone」または類似の名前として表示されます。
-
友達と一緒に、またはソロワールドでテストする。 セッションに参加して、モニタリングミックスで聞こえるものが、他の人が報告するものと一致することを確認してください。一部のボイスチェンジャーはモニタリングパススルーを提供しているので、自分を他の人が聞くように聴くことができます。
-
必要に応じてレイテンシーを調整する。 会話のリズムの乱れに気づく場合は、ローレイテンシーモードでAIモデルのバッファサイズを減らすか、よりレイテンシーの低いDSPエフェクトチェーンに切り替えてください。
Resoniteの音声変換アプローチの比較
| アプローチ | レイテンシー | CPU/GPU負荷 | 品質 | 最適な用途 |
|---|---|---|---|---|
| DSPピッチ + フォルマント | <10ms | CPUのみ、低 | ±4半音に適している | 生き物/ロボットキャラクター |
| DSPピッチ + リバーブチェーン | <10ms | CPUのみ、低 | 雰囲気のあるキャラクター | ファンタジー/アンビエントワールド |
| AI音声クローニング(ローレイテンシー) | ~80ms | GPU必要 | 高 - 自然な音 | 人間のキャラクター、VTuber |
| AI音声クローニング(品質モード) | ~200ms | GPU必要 | 最高 | スタジオ録音、ライブ不可 |
| ノイズサプレッションのみ | <5ms | CPU、最小 | N/A - クリーンアップのみ | 全シナリオ(常時オン) |
ワールド内オーディオインタラクティビティのためのProtoFluxノードグラフ
ProtoFluxはマイクストリームを直接タップできませんが、Resoniteワールド内でオーディオに関するすべてのことに適したツールです。音声に焦点を当てたクリエイターが知っておくべき実践的なクリエイティブアプリケーションを紹介します。
オーディオトリガーゾーンの構築
空間トリガーノードを使用して、ユーザーが定義されたゾーンに入ったときを検出し、そのゾーンに取り付けられたAudioClipをトリガーします。オーディオ出力フォールオフカーブと組み合わせて、方向性のある音声演技の再生を作成します。ワールドの中心的なオブジェクトに訪問者が近づいたときに再生される、アセットとして保存された劇的なモノローグなどです。
ノードチェーン:
User Near Trigger → Boolean → AudioClip.Play → AudioOutput(3D位置)
近接ベースの音声エフェクトシミュレーション
ProtoFluxはライブマイクを処理できませんが、VoxBooster(または任意の録音ツール)で事前録音してワールドアセットとして保存したオーディオクリップのリバーブ設定を制御することはできます。ユーザーが「エコーチェンバー」ゾーンにいるか開けた場所のゾーンにいるかに基づいて調整するウェット/ドライミックスコントロールを構築します。これにより、ライブ音声が上流処理を通じて届く一方で、ワールドのオーディオ環境がその周りに動的に変化する、層のある体験が生まれます。
マルチユーザーオーディオ同期トリガー
共同Resoniteセッションでは、同期されたオーディオキュー(カウントダウン、楽曲のビート、全ユーザーが正確な同じシミュレートされたワールド時間に聞くサウンドエフェクト)が必要な場合があります。ProtoFluxのクロックとネットワークノードにより、セッション内の全ユーザー間でのオーディオクリップ再生を数フレームの精度で同期できます。これは単純なボイスチェンジャーに相当機能がないマルチユーザーオーディオセッション機能です。真にProtoFluxネイティブな機能です。
マイクアクセスなしの音声アクティベートロジック
ProtoFluxは音声アクティビティデータへのアクセスを持っています。具体的には、ユーザーが現在話しているかどうか(音声検出システムから導出されたブールトリガー)を読み取ることができます。これはオーディオ信号自体ではありませんが、視覚的な反応を駆動することができます。話すときにアバターの発光を脈動させる、音声アクティビティに連動したアニメーションをトリガーする、または発話に同期したパーティクルエフェクトをアクティブにするなどです。これはResoniteでの実際のオーディオパイプラインに触れることなくアバターの表現力を高める人気のテクニックです。
ノードチェーン:
UserVoiceActive(localUser) → If True → Avatar.SetEmissiveIntensity(1.0) → Else → Avatar.SetEmissiveIntensity(0.2)
上級クリエイターワークフロー:両方のレイヤーを組み合わせる
最も洗練されたResoniteの音声ワークフローは、両方のレイヤーを同時に使用します。クリエイターが完全な体験を構築する方法を説明します:
シナリオ:複数のキャラクターゾーンを持つ没入型ロールプレイワールド
- 上流レイヤー(ボイスチェンジャー): クリエイターはVoxBoosterを使用して、リアルタイムでAIクローンのキャラクターボイスを実行します。すべてのライブ発話はResoniteに届く前にこの変換を通ります。
- ProtoFluxレイヤー(ワールドスクリプティング): ワールドの異なるゾーンには異なるオーディオ雰囲気があります。スクリプトはクリエイターがどのゾーンにいるかを検出し、アンビエントオーディオを調整し、サウンドエフェクトクリップにゾーン固有のリバーブを追加し、クリエイターが新しいエリアに入るときにテーマに沿ったオーディオキューをトリガーします。
- 結果: キャラクターボイスは上流ツールで一貫しており、ProtoFluxを通じてクリエイターの動きにワールドが動的に反応します。
これが実践における「上級」の意味です。すべてを行う単一のシステムではなく、それぞれの仕事をきちんと行う二つのよく理解されたシステムです。
Resoniteのマルチユーザーオーディオセッション:技術的詳細
Resoniteのネットワークモデルはセッションホスト付きのピアツーピアです。音声オーディオは内部管理されたVoIPパイプラインを使ってリアルタイムで送信されます。マルチユーザーシナリオを考えているクリエイターへの重要な事実を以下に示します:
各ユーザーのオーディオはローカルで処理される。 ボイスチェンジャーはあなたのマシンで実行されます。仮想マイクがResoniteに提示するものはすべて、エンコードされて送信されます。他のユーザーはあなたの変換を聞きます。生の物理マイク音声は聞こえません。
空間オーディオは受信者側で適用される。 方向性のある3D位置オーディオ処理は、相対的なアバター位置に基づいて各聴取者のマシンで行われます。つまり、上流の音声変換は空間化の前に適用されます。変更された音声の空間化されたバージョンが、他のユーザーが聞くものです。
レイテンシーは加算的に積み重なる。 ボイスチェンジャーが80ms、ネットワークレイテンシーが50msを追加した場合、聴取者は話してから130ms後に音声を聞きます。カジュアルな会話ではこれは気づかれません。音楽同期パフォーマンスや厳密に脚本化されたシーンでは、それらのセグメントでより低レイテンシーのDSPチェーンへの切り替えを検討してください。
セッションの安定性にはワールドホストが重要。 セッションホストのCPUとアップロード帯域幅はすべてのユーザーに影響します。複雑なProtoFluxワールドをホストしながらGPU集約型AIボイスクローニングも実行している場合は、パブリックセッションを開始する前にシステム負荷をプロファイルしてください。ノイズサプレッションを実行することは常に役立ちます。送信前に背景ノイズを除去することで、オーディオ転送に必要なビットレートを削減します。
Resoniteキャラクターの音声キャラクター:デザインの考慮事項
Resoniteキャラクターに適した音声変換を選ぶことは、技術的制約を持つクリエイティブな決定です。実践的なフレームワークを紹介します:
人間のキャラクターまたはVTuberのアイデンティティ
AI音声クローニングが最も自然な結果をもたらします。変換は固定されたスペクトルシフトを適用する代わりに、発話のダイナミクス(自然なイントネーション、強調、リズム)を保持します。Resoniteでは会話が速いペースのゲームよりも長く表現豊かになる傾向があるため、これは重要です。静的なピッチシフトは長いセッションで聞き疲れします。よく調整されたAIクローンはそうなりません。
生き物、ロボット、または合成キャラクター
DSPエフェクトチェーンがここでは優れています。それらは不自然に聞こえるように設計されており、キャラクターのアーキタイプに合致します。3〜5半音のピッチダウンとフォルマントシフトで説得力のある大型生き物を作成できます。合成的な品質のために微妙なコーラスと少量のリバーブを追加します。これらはすべてCPUで10ms以下で動作します。
ロールプレイナラティブキャラクター
Resoniteでの長時間のロールプレイセッション(共同ストーリーテリング、テーブルトップ形式のゲーム、ナラティブワールドなど)では、単一のエフェクト品質よりも長期間にわたる音声の一貫性の方が重要です。何時間も使い続けられる、基となるキャラクターによる音声疲れなしに耐えられる、適度なAI変換または慎重に調整されたDSPプリセットを検討してください。
Resoniteセッションのストリーミング
Resoniteセッションを録画またはストリーミングしている場合(多くのクリエイターがOBSで行う)、OBSはResoniteが使用するのと同じ仮想マイクをキャプチャするため、ボイスチェンジャーはストリームキャプチャに自動的に適用されます。ストリーム出力用の別のオーディオルーティングは不要です。
Resoniteのノイズサプレッション:思ったよりも重要な理由
複数の同時ユーザーがいるソーシャルVR環境では、背景ノイズが大幅に増幅されます。セッション内の他のユーザーは、送信するすべてのキーボードクリック、ファンの音、環境室内音を聞きます。オーディオ品質が様々なことに慣れているDiscordコールとは異なり、Resoniteの没入型環境では背景ノイズがより破壊的です。ワールドの没入感が壊れます。
Resoniteの上流でノイズサプレッションを実行することは、それを含むボイスチェンジャーを使えば簡単です。VoxBoosterのノイズサプレッションはWASAPIレベルで動作し、信号がResoniteのVoIPエンコーダーに届く前に背景ノイズを除去します。これにより、オーディオ送信に必要な実効ビットレートも削減され、セッションの安定性にプラスになります。
一般的なResoniteの音声問題のトラブルシューティング
問題:Resoniteが音声変換された出力の代わりに生のマイクを取得している。 Resonite設定 > オーディオ > マイク入力で正しい仮想出力デバイスが選択されていることを確認してください。一部のWindowsアップデートがデバイスの選択をリセットします。また、Resoniteを起動する前にボイスチェンジャーアプリケーションが実行中でアクティブであることを確認してください。
問題:他のユーザーがエコーや二重音を報告している。 これは通常、物理マイクと仮想マイクの両方が入力としてアクティブであることを意味します。Resoniteで物理マイク入力を無効にしてください。仮想出力デバイスのみが選択されるべきです。
問題:会話で気になる高レイテンシー。 ボイスチェンジャーのAIクローニング品質モードからローレイテンシーモードに切り替えてください。または、自然な音のAI出力よりも応答性の方が重要なセッションでは、DSPのみのエフェクトチェーンを使用してください。
問題:ProtoFluxオーディオクリップが自分には再生されるが他のユーザーには再生されない。 Resoniteインスペクターでオーディオアセットがローカルのみとしてマークされていないことを確認してください。アセットは他のユーザーが受け取るために、共有セッションコンテキストまたはクラウド同期の場所に保存されている必要があります。ローカルアセットはセッション内の他のユーザーと同期されません。
問題:ボイスチェンジャーがクリックやドロップアウトを引き起こしている。 ボイスチェンジャー設定でオーディオバッファサイズを増やしてください。Resoniteのオーディオエンジンとボイスチェンジャーがオーディオデバイスアクセスを競合しています。大きなバッファにより競合が軽減されます。48kHzで512サンプルは約10msのレイテンシーを追加しますが、ほとんどのドロップアウトの問題を解消します。
まとめ
Resoniteノードグラフボイスの質問はアーキテクチャを理解すれば明確な答えがあります。ProtoFluxはワールド内オーディオスクリプティングシステムであり、マイク処理パイプラインではありません。Resoniteのアドバンスドボイスワークフローは、Windows WASAPIレベルで動作する上流ボイスチェンジャーとProtoFluxのワールド内オーディオロジックを組み合わせて、両方の最良の部分を得ます。上流ツールがライブキャラクターを処理し(リアルタイムピッチ、フォルマント、AI音声クローニング)、ProtoFluxがワールドリアクティブオーディオ、同期キュー、環境サウンドデザインを処理します。
実践的なソーシャルVR音声セットアップには、VoxBoosterが上流レイヤーをカバーします。WASAPIネイティブ、カーネルドライバー不要、DSPエフェクト10ms以下、中クラスGPUでAIクローニング約80ms。3日間の無料トライアルで、コミットする前に実際のResoniteセットアップでテストできます。$6.99 USDから。
VoxBoosterをダウンロード - 3日間の無料トライアル、クレジットカード不要。