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

デモプロジェクト

Runtime MetaHuman Lip Sync をすぐに使い始められるよう、すぐに使えるデモプロジェクトが2つ用意されています。どちらも Unreal Engine 5.6+ で構築されており、Blueprintのみで動作し、Windows、Mac、Linux、iOS、Android、および Android ベースのプラットフォーム(Meta Quest を含む)でクロスプラットフォーム対応しています。

利用可能なデモプロジェクト

音声認識、AIチャットボット(LLM)、テキスト読み上げ、オーディオ再生とリアルタイムのリップシンクを組み合わせた、完全なAI会話アバターワークフローです。これらすべてが単一のプロジェクト内で連携して動作します。ゲームインタラクティブキオスクバーチャルプロダクション博物館のインスタレーションデジタルアシスタントトレーニングシミュレーションなど、幅広いユースケースに適しています。

パイプラインの概要

🎤 Microphone → Speech Recognition → 💬 LLM Chatbot → 🔊 Text-to-Speech → 👄 Lip Sync + Playback

動画

クイックプレビュー(約30秒)

デモの動作を簡単に紹介します。

完全なウォークスルー

セットアップ、設定、および完全な会話パイプラインを網羅した詳細なチュートリアルです。

ダウンロード

必須プラグインとオプションプラグイン

デモプロジェクトはモジュール式です。使用したいプロバイダーのプラグインのみが必要です。

プラグイン目的必須ですか?
Runtime MetaHuman Lip Syncリップシンクアニメーション常に
Runtime Audio Importer音声キャプチャと処理常に
Runtime Speech Recognizerオフライン音声認識(whisper.cpp)常に
Runtime AI Chatbot Integrator外部LLM(OpenAI、Claude、DeepSeek、Gemini、Grok、Ollama)および/または外部TTS(OpenAI、ElevenLabs)🔶 オプション
Runtime Local LLMllama.cpp によるローカル LLM 推論(Llama、Mistral、Gemma などの GGUF モデル)🔶 オプション
Runtime Text To SpeechPiperとKokoroによるローカルTTS🔶 オプション
オプションプラグイン - プロバイダーの要件

上記の各プラグインは個別にオプションですが、デモを動作させるには少なくとも1つのLLMプロバイダー少なくとも1つのTTSプロバイダーが必要です。自由に組み合わせてください(例:ローカルLLM + ElevenLabs TTS、またはOpenAI LLM + ローカルTTS)。

モジュラーアーキテクチャ

Content フォルダ内に Modules フォルダがあり、その中に 3 つのサブフォルダが含まれています。

Content/
└── Modules/
├── RuntimeAIChatbotIntegrator/ ← External LLMs and/or external TTS
├── RuntimeLocalLLM/ ← Local LLM via llama.cpp
└── RuntimeTextToSpeech/ ← Local TTS via Piper/Kokoro

もしオプションプラグインのいずれか(または複数)を取得していない場合は、該当するフォルダを削除するだけで問題ありません。デモプロジェクトの基本アセット(ゲームインスタンス、ウィジェットなど)はこれらのモジュールを直接参照していないため、削除してもアセット参照エラーは発生しません。設定UIは、フォルダが存在しないプロバイダーを自動的に非表示にします。

注記

このモジュール性は、LLM および TTS プロバイダーにのみ適用されます。音声認識(Runtime Speech Recognizer)とリップシンク(Runtime MetaHuman Lip Sync)は、基本デモプロジェクトの一部であり、常に必要です。

Modules folder structure

警告

初回起動時、Unrealは不足しているオプションプラグインを無効にするかどうかを尋ねることがあります。はいをクリックしてください。対応する Content/Modules/ フォルダも削除したことを確認してください(上記参照)。

デモプロジェクトのレイアウト

UIはデモンストレーション用です。

以下に示すユーザーインターフェースは、すべてUMG(Unreal Motion Graphics)で構築されており、音声認識 → LLM → TTS → リップシンクというパイプラインのデモンストレーションを目的としています。プロジェクトのビジュアルデザイン、操作方式、プラットフォーム(VR/AR、モバイル、コンソール、キオスクなど)に合わせて、自由にスタイル変更や置き換えを行ってください。また、ユースケースで不要なウィジェットがあれば、単に非表示(例:可視性をCollapsedHiddenに設定)にすることも可能です。

Annotated overview of the demo project main screen

Area何がありますか?
中央揃えMetaHumanキャラクター
左側以下に詳細を説明する、4つの設定ボタン(音声認識、AIチャットボット、テキスト読み上げ、アニメーション)。
中央下部録音開始ボタン。これをクリックすると音声会話が始まります。マイクが音声をキャプチャし、文字起こしされ、LLMに送信され、応答がTTSで合成され、リップシンクとともに再生されます。完全にハンズフリーで動作します。
右中央会話履歴ウィジェットは、あなたとAIの間の完全なやり取り(ユーザーメッセージとアシスタントメッセージの両方)を表示します。また、テキスト入力フィールドも含まれており、音声認識を使わずに直接メッセージを入力できます。これはテストやアクセシビリティ、マイクが利用できない場合に便利です。
ヒント

同じセッション内で、両方の入力モードを自由に混在させることができます。メッセージを話したり、他のメッセージをタイプしたりできます。

設定ボタン

左側にある4つの設定ボタンは、パイプラインの各パート専用のパネルを開きます。

1. 音声認識を設定する

ユーザーの音声をどのようにキャプチャして文字起こしするかを設定します。

  • 言語を選択
  • 音声認識パラメータを調整(Whisperモデル設定)
  • AEC(音響エコーキャンセレーション)を設定
  • VAD(音声アクティビティ検出)を設定

Speech recognition configuration screen

2. AIチャットボットを設定する

LLMプロバイダーを選択し、設定してください。

  • プロバイダーを選択(Runtime AI Chatbot Integrator または Runtime Local LLM)
  • 外部プロバイダーの場合:認証トークンモデル名など
  • ローカルLLMの場合:GGUFモデルを選択し、コンテキストサイズやその他の推論パラメータを設定します。また、デモから直接実行時に独自のGGUFモデルをダウンロード(例:URL経由)し、プロジェクトを再構築せずにすぐに使用することもできます。
ヒント

プロバイダーのコンボボックスには、Content/Modules/ にプラグインモジュールフォルダーが存在するプロバイダーのみが表示されます。

AI chatbot configuration - Runtime AI Chatbot Integrator (external LLM)

AI chatbot configuration - Runtime Local LLM (local GGUF)

3. テキスト読み上げを設定する

TTSプロバイダーを選択し、音声/モデルを設定してください。

  • プロバイダーを選択(OpenAI/ElevenLabs向けRuntime AI Chatbot Integrator、またはローカルPiper/Kokoro向けRuntime Text To Speech)
  • 音声/モデルを選択
  • プロバイダー固有のパラメータを調整

TTS configuration - Runtime AI Chatbot Integrator (external TTS)

TTS configuration - Runtime Local Text To Speech (local Piper/Kokoro)

4. アニメーションを設定する

AIアバターのビジュアルをコントロール:

  • 3つのプリダウンロード済みMetaHumanキャラクター(Aera、Ada、Orlando)から選択
  • リップシンクモデル(StandardまたはRealistic)を選択
  • リップシンクモデルタイプを選択 - Highly Optimized、Semi-Optimized、またはOriginal(モデルタイプを参照)
  • 処理チャンクサイズを調整 - リップシンク推論の実行頻度を制御します(処理チャンクサイズを参照)
  • 会話中にMetaHumanで再生するアイドルアニメーションを選択

Animations configuration screen

エディターでデモを事前設定する

ソースバージョンを使用する場合、エディターで直接デフォルト値を事前入力できるため、実行のたびに値を再入力する必要はありません。

Whatどこ
一般設定(リップシンクモデル、アイドルアニメーション、キャラクタークラス、音声認識など)Content/LipSyncSTSGameInstance
外部LLM / 外部TTS 設定(ランタイムAIチャットボット統合機能)Content/Modules/RuntimeAIChatbotIntegrator/RuntimeAIChatbotIntegrator_Provider
Local LLM 設定 (Runtime Local LLM)Content/Modules/RuntimeLocalLLM/RuntimeLocalLLM_Provider
ローカルTTS設定(ランタイムテキスト読み上げ)Content/Modules/RuntimeTextToSpeech/RuntimeTextToSpeech_Provider

クロスプラットフォームに関する注意事項

デモで使用されているすべてのプラグインは Windows、Mac、Linux、iOS、Android、およびAndroidベースのプラットフォーム(Meta Questを含む)をサポートしているため、デモプロジェクトもこれらすべてで動作します。これにより、ゲームやデスクトップキオスクからモバイルアプリ、スタンドアロンVRヘッドセット、オンセットのバーチャルプロダクション環境まで、幅広い環境への展開に適しています。

弱いデバイス(モバイル、スタンドアロンVR)では、以下のことを検討してもよいでしょう:

  • 標準リップシンクモデルをRealisticの代わりに使用してください - モデル比較を参照
  • 高度に最適化モデルタイプに切り替える
  • 処理チャンクサイズを増やしてCPU負荷を軽減する
  • より小さいLLM/TTSモデルを選択する

プラットフォーム固有の設定については、プラットフォーム別の構成を参照して、Android、iOS、Mac、Linuxでの追加のセットアップ手順をご確認ください。

ピクセルストリーミングのサポート

Pixel Streaming でのデモのデプロイ(クリックして展開)

AI会話デモプロジェクトはPixel Streaming環境でも動作し、MetaHumanアバターをリモートクライアント(例:ウェブブラウザ)にストリーミングしながら、クライアント側からユーザーのマイク音声をキャプチャできます。デモに必要な変更は1つだけです。

1. Runtime Audio Importer用のPixel Streaming拡張機能をインストールします。

Runtime Audio Importerプラグインは、Pixel Streamingクライアントからオーディオをキャプチャできる無料の拡張プラグインを提供します。使用しているPixel Streamingインフラストラクチャのバージョンに応じて、以下のいずれかをインストールしてください。

ダウンロードリンクとインストール手順はこちらをご覧ください: Pixel Streaming Audio Capture - 拡張プラグインのインストール

2. LipSyncSTSGameInstance内のキャプチャ可能なサウンドウェーブノードを交換します。

拡張プラグインをインストールした後:

  1. コンテンツブラウザで /All/Game に移動し、LipSyncSTSGameInstance アセットを開きます。
  2. イベントグラフに切り替えます。
  3. Event Init を見つけ、実行フローを辿って Create Capturable Sound WaveSet Capturable Sound Wave のノードペアを見つけます。
  4. Create Capturable Sound Wave の呼び出しを、対象とする Pixel Streaming インフラストラクチャのバージョンに応じて、Create Pixel Streaming Capturable Sound Wave または Create Pixel Streaming 2 Capturable Sound Wave に置き換えます。
  5. その出力を同じ Set Capturable Sound Wave ノードに接続します。

この後、プロジェクトはPixel Streamingにデプロイできる状態になります。音声認識、LLM、TTS、リップシンクはすべて以前と同様に機能しますが、ローカルマイクではなくリモートクライアントからキャプチャされた音声を使用します。

独自のキャラクターを持ち込む

デモプロジェクトには、3つのサンプルMetaHumanキャラクター(Aera、Ada、Orlando)が付属していますが、独自のMetaHumanをインポートしてデモで使用することもできます。

📺 ビデオチュートリアル: カスタムメタヒューマンキャラクターをデモプロジェクトに追加する

注記

Runtime MetaHuman Lip Syncプラグイン自体は、MetaHuman以外にも多くのキャラクターシステム(ARKitベースのキャラクター、Daz Genesis 8/9、Reallusion CC3/CC4、Mixamo、ReadyPlayerMeなど)をサポートしています(カスタムキャラクター設定ガイドを参照)。ゲームのNPC、バーチャルプレゼンター、キオスクの案内役、バーチャルプロダクション用のデジタルヒューマンなど、どのようなキャラクターを作成する場合でも、このプラグインはキャラクターパイプラインに適応します。

標準リップシンクモデルに関する注意事項

Standard Model(Realisticではなく)をいずれかのデモプロジェクトで使用する予定がある場合は、Standard Lip Sync Extensionプラグインをインストールする必要があります。インストール手順については、Standard Model Extensionをご参照ください。

ヘルプが必要ですか?

デモプロジェクトのセットアップや実行中に問題が発生した場合は、お気軽にお問い合わせください。

Join our Discord
online · support

カスタム開発のご依頼(例:デモに独自のロジックを追加する、特定のプラットフォームやキャラクターパイプラインに適応させるなど)は、[email protected] までお問い合わせください。