Zum Hauptinhalt springen

Demo-Projekte

Damit Sie schnell mit Runtime MetaHuman Lip Sync loslegen können, stehen zwei gebrauchsfertige Demo-Projekte zur Verfügung. Beide sind mit Unreal Engine 5.6+ erstellt, nur mit Blueprints umgesetzt und laufen plattformübergreifend auf Windows, Mac, Linux, iOS, Android sowie Android-basierten Plattformen (einschließlich Meta Quest).

Verfügbare Demo-Projekte

Ein vollständiger KI-Konversations-Avatar-Workflow, der Spracherkennung, einen KI-Chatbot (LLM), Text-to-Speech und Audiowiedergabe mit Echtzeit-Lip-Sync kombiniert – alles läuft gemeinsam in einem einzigen Projekt. Geeignet für eine breite Palette von Anwendungsfällen – darunter Spiele, interaktive Kioske, virtuelle Produktion, Museumsinstallationen, digitale Assistenten und Trainingssimulationen.

Pipeline-Übersicht

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

Wenn das LLM auf Streaming-Modus eingestellt ist, wird seine Ausgabe Satz für Satz aufgeteilt und an TTS gesendet, sobald jeder Satz abgeschlossen ist, anstatt auf die vollständige Antwort zu warten, um die Latenz zu minimieren.

TTS und Lippen-Synchronisation folgen demselben Prinzip: Bei aktiviertem Streaming-Modus wird Audio in Teilen verarbeitet und animiert, sobald es eintrifft, anstatt auf den vollständigen Clip zu warten.

Videos

Schnellvorschau (~30 Sek.)

Eine kurze Vorführung der Demo in Aktion.

Komplette Schritt-für-Schritt-Anleitung

Ein detaillierter Leitfaden, der Einrichtung, Konfiguration und die vollständige Konversations-Pipeline abdeckt.

Downloads

Erforderliche & optionale Plugins

Das Demo-Projekt ist modular aufgebaut – Sie benötigen nur die Plugins für die Anbieter, die Sie verwenden möchten.

PluginZweckErforderlich?
Runtime MetaHuman Lip SyncLippensynchronisations-Animation✅ Immer
Runtime Audio ImporterAudioerfassung & -verarbeitung✅ Immer
Runtime Speech RecognizerOffline-Spracherkennung (whisper.cpp)✅ Immer
Runtime AI Chatbot IntegratorExterne LLMs (OpenAI, Claude, DeepSeek, Gemini, Grok, Ollama) und/oder externe TTS (OpenAI, ElevenLabs)🔶 Optional
Runtime Local LLMLokale LLM-Inferenz über llama.cpp (Llama, Mistral, Gemma, usw., GGUF-Modelle)🔶 Optional
Runtime Text To SpeechLokale TTS über Piper und Kokoro🔶 Optional
Optionale Plugins – Anforderungen an den Anbieter

Während jedes der oben genannten Plugins einzeln optional ist, benötigst du mindestens einen LLM-Anbieter und mindestens einen TTS-Anbieter, damit die Demo funktioniert. Kombiniere frei nach Belieben (z. B. lokales LLM + ElevenLabs TTS oder OpenAI LLM + lokales TTS).

Modulare Architektur

Im Content-Ordner finden Sie einen Modules-Ordner, der drei Unterordner enthält:

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

Wenn Sie eines (oder mehrere) der optionalen Plugins nicht erworben haben, löschen Sie einfach die entsprechenden Ordner. Die Basis-Assets des Demo-Projekts (Game Instance, Widgets usw.) referenzieren diese Module nicht direkt, sodass das Löschen keine Asset-Referenzfehler verursacht. Die Konfigurations-UI blendet automatisch jeden Anbieter aus, dessen Ordner fehlt.

hinweis

Diese Modularität gilt nur für LLM- und TTS-Anbieter. Spracherkennung (Runtime Speech Recognizer) und Lippensynchronisation (Runtime MetaHuman Lip Sync) sind Teil des Basis-Demoprojekts und immer erforderlich.

Modules folder structure

warnung

Beim ersten Start fragt Unreal möglicherweise, ob fehlende optionale Plugins deaktiviert werden sollen – klicken Sie auf Ja. Stellen Sie sicher, dass Sie auch den entsprechenden Ordner Content/Modules/ gelöscht haben (siehe oben).

Gebündelte Erweiterungs-Plugins

Silero VAD-, WebRTC-AEC3- und Standard-Lip-Sync-Erweiterungen (zum Erweitern klicken)

Die Quellversion der Demo wird mit drei kostenlosen Erweiterungs-Plugins ausgeliefert, die bereits im Ordner Plugins/ gebündelt sind: RuntimeAudioImporterSileroVAD (neuronale VAD), RuntimeAudioImporterWebRTCAEC3 (Echounterdrückung) und RuntimeMetaHumanLipSync_Standard (Standard-Lip-Sync-Modell).

Die gebündelten Binärdateien sind vorkompiliert für UE 5.6. Für UE 5.7 / 5.8 müssen Sie sie entweder aus dem Quellcode erstellen (siehe die Dokumentation jeder Erweiterung) oder vorkompilierte Binärdateien verwenden: UE 5.7 · UE 5.8. Zur Installation: Löschen Sie die drei vorhandenen Ordner aus Plugins/ und extrahieren Sie dann den Inhalt des Archivs an deren Stelle in Plugins/.

Alle drei sind optional – wenn du sie nicht benötigst, lösche einfach ihre Ordner aus Plugins/, bevor du startest.

Demo-Projektstruktur

Die Benutzeroberfläche dient nur zu Demonstrationszwecken.

Die unten gezeigte Benutzeroberfläche ist vollständig mit UMG (Unreal Motion Graphics) erstellt und dient ausschließlich dazu, die Pipeline zu demonstrieren – Spracherkennung → LLM → TTS → Lippen-Synchronisation. Sie können sie frei neu gestalten oder ersetzen, um sie an das visuelle Design, das Steuerungsschema oder die Plattform Ihres Projekts (VR/AR, Mobilgeräte, Konsole, Kiosk usw.) anzupassen. Falls bestimmte Widgets in Ihrem Anwendungsfall nicht benötigt werden, können Sie sie auch einfach ausblenden (z. B. ihre Sichtbarkeit auf Collapsed oder Hidden setzen).

Annotated overview of the demo project main screen

AreaWas ist da
MitteDie MetaHuman-Figur.
Linke SeiteVier Konfigurationsschaltflächen (Spracherkennung, AI-Chatbot, Text-zu-Sprache, Animationen), die unten im Detail beschrieben werden.
Mitte untenEine Aufnahme starten-Schaltfläche. Klicken Sie darauf, um ein Sprachgespräch zu beginnen: Ihr Mikrofon wird aufgenommen, transkribiert, an das LLM gesendet, die Antwort wird über TTS synthetisiert und mit Lippensynchronisation abgespielt – völlig freihändig.
Rechte MitteEin Gesprächsverlaufs-Widget, das den vollständigen Hin und Her zwischen Ihnen und der KI zeigt (sowohl Benutzer- als auch Assistentennachrichten). Es enthält außerdem ein Texteingabefeld, sodass Sie Nachrichten direkt eingeben können, ohne Spracherkennung zu verwenden – nützlich zum Testen, für Barrierefreiheit oder wenn kein Mikrofon verfügbar ist.
tipp

Du kannst beide Eingabemodi in derselben Sitzung frei mischen – sprich einige Nachrichten, tippe andere.

tipp

Wenn die Lippensynchronisation bei längerem Testen immer weiter hinter dem Audio zurückbleibt (nicht nur eine feste Verzögerung), siehe Verarbeitungschunkgröße unter Animationen konfigurieren weiter unten.

Konfigurationsschaltflächen

Die vier Konfigurationsschaltflächen auf der linken Seite öffnen dedizierte Bedienfelder für jeden Teil der Pipeline:

1. Sprachsteuerung konfigurieren

Konfigurieren Sie, wie die Stimme des Benutzers erfasst und transkribiert wird:

  • Sprache auswählen
  • Spracherkennungsparameter anpassen (Whisper-Modelleinstellungen)
  • AEC konfigurieren (akustische Echounterdrückung)
  • VAD konfigurieren (Sprachaktivitätserkennung)

Speech recognition configuration screen

2. KI-Chatbot konfigurieren

Wählen Sie Ihren LLM-Anbieter und konfigurieren Sie ihn:

  • Wählen Sie den Anbieter aus (Runtime AI Chatbot Integrator oder Runtime Local LLM)
  • Wählen Sie den Modus: Regulär oder Streaming (abhängig vom Anbieter; Streaming ermöglicht die satzweise TTS-Übergabe, siehe Pipeline-Übersicht)
  • Für externe Anbieter: Authentifizierungstoken, Modellname usw.
  • Für lokale LLMs: Wählen Sie ein GGUF-Modell aus, legen Sie die Kontextgröße und andere Inferenzparameter fest. Sie können auch zur Laufzeit Ihr eigenes GGUF-Modell herunterladen direkt aus der Demo (z. B. per URL) und es sofort verwenden, ohne das Projekt neu erstellen zu müssen.
tipp

Das Provider-Kombinationsfeld zeigt nur Anbieter an, deren Plugin-Modulordner in Content/Modules/ vorhanden ist.

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

AI chatbot configuration - Runtime Local LLM (local GGUF)

3. Text-to-Speech konfigurieren

Wählen Sie Ihren TTS-Anbieter und konfigurieren Sie Stimmen/Modelle:

  • Wählen Sie Anbieter (Runtime AI Chatbot Integrator für OpenAI/ElevenLabs oder Runtime Text To Speech für lokales Piper/Kokoro)
  • Wählen Sie Modus: Regulär oder Streaming (steuert, ob Audio auf einmal oder während der Synthese zurückgegeben wird)
  • Wählen Sie Stimme/Modell
  • Passen Sie anbieterspezifische Parameter an

TTS configuration - Runtime AI Chatbot Integrator (external TTS)

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

4. Animationen konfigurieren

Steuere die visuelle Darstellung deines KI-Avatars:

  • Wählen Sie zwischen 3 vorab heruntergeladenen MetaHuman-Charakteren (Aera, Ada, Orlando)
  • Wählen Sie das Lip-Sync-Modell (Standard oder Realistisch)
  • Wählen Sie den Lip-Sync-Modelltyp – Hochoptimiert, Semi-optimiert oder Original (siehe Modelltyp)
  • Passen Sie die Verarbeitungs-Chunk-Größe an – steuert, wie oft die Lip-Sync-Inferenz ausgeführt wird (siehe Verarbeitungs-Chunk-Größe)
    • Wenn die Lippensynchronisation unter CPU-Last im Laufe der Zeit weiter hinter dem Audio zurückbleibt, erhöhen Sie diesen Wert auf 480 oder 640.
  • Wählen Sie eine Leerlaufanimation aus, die während des Gesprächs auf dem MetaHuman abgespielt werden soll.

Animations configuration screen

Vorkonfiguration der Demo im Editor

Bei der Arbeit mit der Quellversion können Sie Standardwerte direkt im Editor vorausfüllen, sodass Werte nicht bei jedem Durchlauf erneut eingegeben werden müssen:

WhatWo
Allgemeine Einstellungen (Lip-Sync-Modell, Idle-Animation, Charakterklasse, Spracherkennung usw.)Content/LipSyncSTSGameInstance
Externe LLM / Externe TTS-Einstellungen (Runtime AI Chatbot Integrator)Content/Modules/RuntimeAIChatbotIntegrator/RuntimeAIChatbotIntegrator_Provider
Lokale LLM-Einstellungen (Runtime Local LLM)Content/Modules/RuntimeLocalLLM/RuntimeLocalLLM_Provider
Lokale TTS-Einstellungen (Runtime Text To Speech)Content/Modules/RuntimeTextToSpeech/RuntimeTextToSpeech_Provider

Plattformübergreifende Hinweise

Alle Plugins, die von der Demo verwendet werden, unterstützen Windows, Mac, Linux, iOS, Android sowie Android-basierte Plattformen (einschließlich Meta Quest), sodass das Demo-Projekt auch auf allen diesen Systemen funktioniert. Dadurch eignet es sich für die Bereitstellung in einer Vielzahl von Umgebungen – von Spielen und Desktop-Kiosken über mobile Apps und eigenständige VR-Headsets bis hin zu Virtual-Production-Setups am Set.

Für schwächere Geräte (Mobilgeräte, eigenständige VR) möchten Sie möglicherweise:

  • Verwenden Sie das Standard-Lip-Sync-Modell anstelle von Realistic – siehe den Modellvergleich
  • Wechseln Sie zum Modelltyp Highly Optimized
  • Erhöhen Sie die Processing Chunk Size, um die CPU-Last zu reduzieren
  • Wählen Sie kleinere LLM-/TTS-Modelle

Siehe Plattformspezifische Konfiguration für zusätzliche Einrichtungsschritte auf Android, iOS, Mac und Linux.

Pixel-Streaming-Unterstützung

Bereitstellung der Demo auf Pixel Streaming (zum Erweitern klicken)

Das KI-Konversations-Demoprojekt funktioniert auch in einer Pixel Streaming-Umgebung, sodass Sie den MetaHuman-Avatar an einen entfernten Client (z. B. einen Webbrowser) streamen können, während Sie das Mikrofon-Audio des Benutzers clientseitig erfassen. Für das Demo ist nur eine einzige Änderung erforderlich.

1. Installieren Sie die Pixel Streaming-Erweiterung für Runtime Audio Importer

Das Runtime Audio Importer Plugin bietet ein kostenloses Erweiterungs-Plugin, das die Erfassung von Audio von einem Pixel Streaming-Client ermöglicht. Je nachdem, welche Version der Pixel Streaming-Infrastruktur Sie verwenden, installieren Sie eines der folgenden:

Hier sind die Download-Links und Installationsschritte verfügbar: Pixel Streaming Audio Capture – Installation des Erweiterungs-Plugins.

2. Tauschen Sie den erfassbaren Schallwellen-Knoten in LipSyncSTSGameInstance aus.

Nachdem das Erweiterungs-Plugin installiert ist:

  1. Im Content Browser navigierst du zu /All/Game und öffnest das Asset LipSyncSTSGameInstance.
  2. Wechsle zum Event Graph.
  3. Suche Event Init und folge dem Ausführungsfluss, bis du das Knotenpaar findest: Create Capturable Sound WaveSet Capturable Sound Wave.
  4. Ersetze den Aufruf von Create Capturable Sound Wave entweder durch Create Pixel Streaming Capturable Sound Wave oder Create Pixel Streaming 2 Capturable Sound Wave, je nachdem, welche Pixel-Streaming-Infrastrukturversion du anvisierst.
  5. Verbinde dessen Ausgabe mit demselben Set Capturable Sound Wave-Knoten.

Danach ist das Projekt bereit, für Pixel Streaming bereitgestellt zu werden – Spracherkennung, LLM, TTS und Lip Sync funktionieren weiterhin wie zuvor, jedoch mit Audio, das vom Remote-Client statt von einem lokalen Mikrofon erfasst wird.

Eigene Charaktere einbringen

Das Demo-Projekt enthält drei Beispiel-MetaHuman-Charaktere (Aera, Ada, Orlando), aber du kannst deinen eigenen MetaHuman importieren und ihn im Demo verwenden.

📺 Video-Tutorial: Hinzufügen eines benutzerdefinierten MetaHuman-Charakters zum Demo-Projekt

hinweis

Das Runtime MetaHuman Lip Sync Plugin selbst unterstützt viele andere Charaktersysteme über MetaHumans hinaus (ARKit-basierte Charaktere, Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe usw. – siehe den Leitfaden zur Einrichtung benutzerdefinierter Charaktere). Egal, ob du einen Spiel-NPC, einen virtuellen Präsentator, einen Kiosk-Betreuer oder einen digitalen Menschen für die virtuelle Produktion erstellst, das Plugin passt sich deiner Charakter-Pipeline an.

Brauchen Sie Hilfe?

Wenn Sie beim Einrichten oder Ausführen der Demo-Projekte auf Probleme stoßen, können Sie sich gerne melden:

Join our Discord
online · support

Für individuelle Entwicklungsanfragen (z. B. Erweiterung der Demo mit eigener Logik, Anpassung an eine bestimmte Plattform oder Charakter-Pipeline) kontaktieren Sie solutions@georgy.dev.