Plugin-Konfiguration
Modellkonfiguration
Standardmodell-Konfiguration
Der Create Runtime Viseme Generator
-Knoten verwendet Standardeinstellungen, die für die meisten Szenarien gut funktionieren. Die Konfiguration erfolgt über die Eigenschaften des Animation Blueprint-Blending-Knotens.
Für Animation Blueprint-Konfigurationsoptionen siehe den Abschnitt Lip Sync-Konfiguration unten.
Realistische Modellkonfiguration
Der Create Realistic MetaHuman Lip Sync Generator
-Knoten akzeptiert einen optionalen Configuration-Parameter, der es Ihnen ermöglicht, das Verhalten des Generators anzupassen:
Modelltyp
Die Model Type-Einstellung bestimmt, welche Version des realistischen Modells verwendet wird:
Modelltyp | Leistung | Visuelle Qualität | Rauschbehandlung | Empfohlene Anwendungsfälle |
---|---|---|---|---|
Hochoptimiert (Standard) | Höchste Leistung, niedrigste CPU-Auslastung | Gute Qualität | Kann merkliche Mundbewegungen bei Hintergrundgeräuschen oder Nicht-Sprach-Geräuschen zeigen | Saubere Audio-Umgebungen, leistungskritische Szenarien |
Teiloptimiert | Gute Leistung, moderate CPU-Auslastung | Hohe Qualität | Bessere Stabilität bei verrauschtem Audio | Ausgewogene Leistung und Qualität, gemischte Audio-Bedingungen |
Original | Geeignet für Echtzeitanwendung auf modernen CPUs | Höchste Qualität | Stabilste bei Hintergrundgeräuschen und Nicht-Sprach-Geräuschen | Hochwertige Produktionen, verrauschte Audio-Umgebungen, wenn maximale Genauigkeit benötigt wird |
Leistungseinstellungen
Intra Op Threads: Steuert die Anzahl der Threads, die für interne Modellverarbeitungsoperationen verwendet werden.
- 0 (Standard/Automatisch): Verwendet automatische Erkennung (typischerweise 1/4 der verfügbaren CPU-Kerne, Maximum 4)
- 1-16: Thread-Anzahl manuell angeben. Höhere Werte können die Leistung auf Multi-Core-Systemen verbessern, verbrauchen aber mehr CPU
Inter Op Threads: Steuert die Anzahl der Threads, die für die parallele Ausführung verschiedener Modelloperationen verwendet werden.
- 0 (Standard/Automatisch): Verwendet automatische Erkennung (typischerweise 1/8 der verfügbaren CPU-Kerne, Maximum 2)
- 1-8: Thread-Anzahl manuell angeben. Wird normalerweise niedrig für die Echtzeitverarbeitung gehalten
Verarbeitungs-Chunk-Größe
Die Processing Chunk Size bestimmt, wie viele Samples in jedem Inferenzschritt verarbeitet werden. Der Standardwert ist 160 Samples (10ms Audio bei 16kHz):
- Kleinere Werte bieten häufigere Updates, erhöhen aber die CPU-Auslastung
- Größere Werte reduzieren die CPU-Last, können aber die Lip Sync-Reaktionsfähigkeit verringern
- Empfohlen, Vielfache von 160 für optimale Ausrichtung zu verwenden
Stimmungsfähige Modellkonfiguration
Der Create Realistic MetaHuman Lip Sync With Mood Generator
-Knoten bietet zusätzliche Konfigurationsoptionen über das grundlegende realistische Modell hinaus:
Grundkonfiguration
Lookahead Ms: Lookahead-Zeit in Millisekunden für verbesserte Lip-Sync-Genauigkeit.
- Standard: 80ms
- Bereich: 20ms bis 200ms (muss durch 20 teilbar sein)
- Höhere Werte bieten bessere Synchronisation, erhöhen aber die Latenz
Output Type: Steuert, welche Gesichtssteuerungen generiert werden.
- Full Face: Alle 81 Gesichtssteuerungen (Augenbrauen, Augen, Nase, Mund, Kiefer, Zunge)
- Mouth Only: Nur mund-, kiefer- und zungenbezogene Steuerungen
Performance Settings: Verwendet die gleichen Intra Op Threads und Inter Op Threads Einstellungen wie das reguläre realistische Modell.
Mood Settings
Verfügbare Stimmungen:
- Neutral, Happy, Sad, Disgust, Anger, Surprise, Fear
- Confident, Excited, Bored, Playful, Confused
Mood Intensity: Steuert, wie stark die Stimmung die Animation beeinflusst (0.0 bis 1.0)
Runtime Mood Control
Sie können die Stimmungseinstellungen während der Laufzeit mit den folgenden Funktionen anpassen:
- Set Mood: Ändert den aktuellen Stimmungstyp
- Set Mood Intensity: Passt an, wie stark die Stimmung die Animation beeinflusst (0.0 bis 1.0)
- Set Lookahead Ms: Modifiziert die Lookahead-Zeit für die Synchronisation
- Set Output Type: Wechselt zwischen Full Face und Mouth Only Steuerungen
Mood Selection Guide
Wählen Sie geeignete Stimmungen basierend auf Ihrem Inhalt:
Stimmung | Am besten geeignet für | Typischer Intensitätsbereich |
---|---|---|
Neutral | Allgemeine Konversation, Erzählung, Standardzustand | 0.5 - 1.0 |
Happy | Positive Inhalte, fröhliche Dialoge, Feierlichkeiten | 0.6 - 1.0 |
Sad | Melancholische Inhalte, emotionale Szenen, düstere Momente | 0.5 - 0.9 |
Disgust | Negative Reaktionen, widerliche Inhalte, Ablehnung | 0.4 - 0.8 |
Anger | Aggressive Dialoge, konfrontative Szenen, Frustration | 0.6 - 1.0 |
Surprise | Unerwartete Ereignisse, Enthüllungen, Schockreaktionen | 0.7 - 1.0 |
Fear | Bedrohliche Situationen, Angst, nervöse Dialoge | 0.5 - 0.9 |
Confident | Professionelle Präsentationen, Führungsdialoge, bestimmte Sprache | 0.7 - 1.0 |
Excited | Energetische Inhalte, Ankündigungen, enthusiastische Dialoge | 0.8 - 1.0 |
Bored | Monotone Inhalte, desinteressierte Dialoge, müde Sprache | 0.3 - 0.7 |
Playful | Gelegentliche Konversation, Humor, unbeschwerte Interaktionen | 0.6 - 0.9 |
Confused | Fragenreiche Dialoge, Unsicherheit, Verwirrung | 0.4 - 0.8 |
Animation Blueprint Configuration
Lip Sync Configuration
- Standard-Modell
- Realistische Modelle
Der Blend Runtime MetaHuman Lip Sync
-Knoten hat Konfigurationsoptionen in seinem Eigenschaften-Bedienfeld:
Eigenschaft | Standard | Beschreibung |
---|---|---|
Interpolationsgeschwindigkeit | 25 | Steuert, wie schnell die Lippenbewegungen zwischen Visemen übergehen. Höhere Werte führen zu schnelleren, abrupten Übergängen. |
Zurücksetzzeit | 0.2 | Die Dauer in Sekunden, nach der die Lippen-Synchronisation zurückgesetzt wird. Dies ist nützlich, um zu verhindern, dass die Lippen-Synchronisation fortgesetzt wird, nachdem das Audio gestoppt hat. |
Der Blend Realistic MetaHuman Lip Sync
-Knoten hat Konfigurationsoptionen in seinem Eigenschaften-Bedienfeld:
Eigenschaft | Standard | Beschreibung |
---|---|---|
Interpolationsgeschwindigkeit | 30 | Steuert, wie schnell die Lippenbewegungen zwischen Positionen übergehen. Höhere Werte führen zu schnelleren, abrupten Übergängen. |
Zurücksetzzeit | 0.2 | Die Dauer in Sekunden, nach der die Lippen-Synchronisation zurückgesetzt wird. Dies ist nützlich, um zu verhindern, dass die Lippen-Synchronisation fortgesetzt wird, nachdem das Audio gestoppt hat. |
Hinweis: Derselbe Animation Blueprint-Knoten wird sowohl für reguläre als auch für stimmungsaktivierte realistische Modelle verwendet.
Lachen-Animation
Sie können auch Lachen-Animationen hinzufügen, die dynamisch auf im Audio erkanntes Lachen reagieren:
- Fügen Sie den
Blend Runtime MetaHuman Laughter
-Knoten hinzu - Verbinden Sie Ihre
RuntimeVisemeGenerator
-Variable mit demViseme Generator
-Pin - Wenn Sie bereits Lippen-Synchronisation verwenden:
- Verbinden Sie die Ausgabe des
Blend Runtime MetaHuman Lip Sync
-Knotens mit derSource Pose
desBlend Runtime MetaHuman Laughter
-Knotens - Verbinden Sie die Ausgabe des
Blend Runtime MetaHuman Laughter
-Knotens mit demResult
-Pin derOutput Pose
- Verbinden Sie die Ausgabe des
- Wenn Sie nur Lachen ohne Lippen-Synchronisation verwenden:
- Verbinden Sie Ihre Quell-Pose direkt mit der
Source Pose
desBlend Runtime MetaHuman Laughter
-Knotens - Verbinden Sie die Ausgabe mit dem
Result
-Pin
- Verbinden Sie Ihre Quell-Pose direkt mit der
Wenn Lachen im Audio erkannt wird, animiert sich Ihre Figur entsprechend dynamisch:
Lachen-Konfiguration
Der Blend Runtime MetaHuman Laughter
-Knoten hat seine eigenen Konfigurationsoptionen:
Eigenschaft | Standard | Beschreibung |
---|---|---|
Interpolationsgeschwindigkeit | 25 | Steuert, wie schnell die Lippenbewegungen zwischen Lachen-Animationen übergehen. Höhere Werte führen zu schnelleren, abrupten Übergängen. |
Zurücksetzzeit | 0.2 | Die Dauer in Sekunden, nach der das Lachen zurückgesetzt wird. Dies ist nützlich, um zu verhindern, dass das Lachen fortgesetzt wird, nachdem das Audio gestoppt hat. |
Maximale Lachen-Intensität | 0.7 | Skaliert die maximale Intensität der Lachen-Animation (0.0 - 1.0). |
Hinweis: Die Lach-Erkennung ist derzeit nur mit dem Standard-Modell verfügbar. |
Kombination mit bestehenden Animationen
Um Lippen-Synchronisation und Lachen zusammen mit bestehenden Körperanimationen und benutzerdefinierten Gesichtsanimationen anzuwenden, ohne diese zu überschreiben:
- Fügen Sie einen
Layered blend per bone
-Knoten zwischen Ihren Körperanimationen und der endgültigen Ausgabe hinzu. Stellen Sie sicher, dassUse Attached Parent
auf true gesetzt ist. - Konfigurieren Sie den Layer-Setup:
- Fügen Sie 1 Item zum
Layer Setup
-Array hinzu - Fügen Sie 3 Items zu den
Branch Filters
für den Layer hinzu, mit den folgendenBone Name
s:FACIAL_C_FacialRoot
FACIAL_C_Neck2Root
FACIAL_C_Neck1Root
- Fügen Sie 1 Item zum
- Wichtig für benutzerdefinierte Gesichtsanimationen: Wählen Sie in der
Curve Blend Option
"Use Max Value". Dies ermöglicht es, benutzerdefinierte Gesichtsanimationen (Ausdrücke, Emotionen etc.) korrekt über der Lippen-Synchronisation zu schichten. - Stellen Sie die Verbindungen her:
- Bestehende Animationen (wie
BodyPose
) →Base Pose
-Eingang - Gesichtsanimation-Ausgabe (von Lippen-Synchronisations- und/oder Lach-Knoten) →
Blend Poses 0
-Eingang - Layered blend-Knoten → Endgültige
Result
-Pose
- Bestehende Animationen (wie
Feinabstimmung des Lippen-Synchronisations-Verhaltens
Zungen-Protrusions-Kontrolle
Im Standard-Lippen-Synchronisations-Modell bemerken Sie möglicherweise eine übermäßige Vorwärtsbewegung der Zunge bei bestimmten Phonemen. Um die Zungen-Protrusion zu kontrollieren:
- Fügen Sie nach Ihrem Lippen-Synchronisations-Blend-Knoten einen
Modify Curve
-Knoten hinzu - Klicken Sie mit der rechten Maustaste auf den
Modify Curve
-Knoten und wählen Sie Add Curve Pin - Fügen Sie einen Curve Pin mit dem Namen
CTRL_expressions_tongueOut
hinzu - Setzen Sie die Apply Mode-Eigenschaft des Knotens auf Scale
- Passen Sie den Value-Parameter an, um die Zungen-Ausdehnung zu steuern (z.B. 0.8, um die Protrusion um 20% zu reduzieren)
Kiefer-Öffnungs-Kontrolle
Die realistische Lippen-Synchronisation kann je nach Ihrem Audio-Inhalt und visuellen Anforderungen übermäßig reagierende Kieferbewegungen erzeugen. Um die Kiefer-Öffnungs-Intensität anzupassen:
- Fügen Sie nach Ihrem Lippen-Synchronisations-Blend-Knoten einen
Modify Curve
-Knoten hinzu - Klicken Sie mit der rechten Maustaste auf den
Modify Curve
-Knoten und wählen Sie Add Curve Pin - Fügen Sie einen Curve Pin mit dem Namen
CTRL_expressions_jawOpen
hinzu - Setzen Sie die Apply Mode-Eigenschaft des Knotens auf Scale
- Passen Sie den Value-Parameter an, um den Kiefer-Öffnungs-Bereich zu steuern (z.B. 0.9, um die Kieferbewegung um 10% zu reduzieren)
Stimmungs-spezifische Feinabstimmung
Für modellaktivierte Stimmungen können Sie spezifische emotionale Ausdrücke feinabstimmen:
Augenbrauen-Kontrolle:
CTRL_L_brow_raiseIn.ty
/CTRL_R_brow_raiseIn.ty
- Innere Augenbrauen-HebungCTRL_L_brow_raiseOut.ty
/CTRL_R_brow_raiseOut.ty
- Äußere Augenbrauen-HebungCTRL_L_brow_down.ty
/CTRL_R_brow_down.ty
- Augenbrauen-Senkung
Augen-Ausdrucks-Kontrolle:
CTRL_L_eye_squintInner.ty
/CTRL_R_eye_squintInner.ty
- Augen-ZukneifenCTRL_L_eye_cheekRaise.ty
/CTRL_R_eye_cheekRaise.ty
- Wangen-Hebung
Modellvergleich und -auswahl
Auswahl zwischen Modellen
Bei der Entscheidung, welches Lippenbewegungsmodell Sie für Ihr Projekt verwenden möchten, sollten Sie folgende Faktoren berücksichtigen:
Überlegung | Standardmodell | Realistisches Modell | Stimmungsfähiges Realistisches Modell |
---|---|---|---|
Charakterkompatibilität | MetaHumans und alle benutzerdefinierten Charaktertypen | Nur MetaHumans | Nur MetaHumans |
Visuelle Qualität | Gute Lippenbewegung mit effizienter Leistung | Verbesserter Realismus mit natürlicheren Mundbewegungen | Verbesserter Realismus mit emotionalen Ausdrücken |
Leistung | Für alle Plattformen optimiert, einschließlich Mobilgeräte/VR | Höhere Ressourcenanforderungen | Höhere Ressourcenanforderungen |
Funktionen | 14 Viseme, Lachen-Erkennung | 81 Gesichtssteuerungen, 3 Optimierungsstufen | 81 Gesichtssteuerungen, 12 Stimmungen, konfigurierbare Ausgabe |
Plattformunterstützung | Windows, Android, Quest | Windows, Mac, iOS, Linux | Windows, Mac, iOS, Linux |
Anwendungsfälle | Allgemeine Anwendungen, Spiele, VR/AR, Mobilgeräte | Filmische Erfahrungen, Nahaufnahme-Interaktionen | Emotionales Storytelling, erweiterte Charakterinteraktion |
Engine-Version-Kompatibilität
Wenn Sie Unreal Engine 5.2 verwenden, funktionieren die Realistischen Modelle möglicherweise nicht korrekt aufgrund eines Fehlers in UEs Resampling-Bibliothek. Für UE 5.2-Benutzer, die eine zuverlässige Lippenbewegungsfunktionalität benötigen, verwenden Sie bitte stattdessen das Standardmodell.
Dieses Problem betrifft speziell UE 5.2 und betrifft keine anderen Engine-Versionen.
Leistungsempfehlungen
- Für die meisten Projekte bietet das Standardmodell eine hervorragende Balance aus Qualität und Leistung
- Verwenden Sie das Realistische Modell, wenn Sie die höchste visuelle Wiedergabetreue für MetaHuman-Charaktere benötigen
- Verwenden Sie das Stimmungsfähige Realistische Modell, wenn die Kontrolle des emotionalen Ausdrucks für Ihre Anwendung wichtig ist
- Berücksichtigen Sie die Leistungsfähigkeiten Ihrer Zielplattform bei der Auswahl zwischen den Modellen
- Testen Sie verschiedene Optimierungsstufen, um die beste Balance für Ihren spezifischen Anwendungsfall zu finden
TTS-Kompatibilität
Modelltyp | Lokale TTS-Unterstützung (über Runtime Text To Speech) | Externe TTS-Unterstützung | Hinweise |
---|---|---|---|
Standardmodell | ✅ Vollständige Unterstützung | ✅ Vollständige Unterstützung | Kompatibel mit allen TTS-Optionen |
Realistisches Modell | ❌ Eingeschränkte Unterstützung | ✅ Vollständige Unterstützung | ONNX Runtime-Konflikte mit lokaler TTS |
Stimmungsfähiges Realistisches Modell | ✅ Vollständige Unterstützung | ✅ Vollständige Unterstützung | Kompatibel mit allen TTS-Optionen |
Fehlerbehebung
Häufige Probleme
Generator-Neuerstellung für Realistische Modelle: Für einen zuverlässigen und konsistenten Betrieb mit den Realistischen Modellen wird empfohlen, den Generator jedes Mal neu zu erstellen, wenn Sie nach einer Phase der Inaktivität neue Audiodaten zuführen möchten. Dies liegt am Verhalten der ONNX Runtime, die dazu führen kann, dass die Lippenbewegung nicht mehr funktioniert, wenn Generatoren nach Phasen der Stille wiederverwendet werden. Lokale TTS-Kompatibilität: Die von der Runtime Text To Speech-Plugin bereitgestellte lokale TTS wird derzeit aufgrund von ONNX Runtime-Konflikten nicht mit dem regulären Realistic-Modell unterstützt. Sie ist jedoch vollständig mit sowohl dem Standard-Modell als auch dem mood-fähigen Realistic-Modell kompatibel. Verwenden Sie externe TTS-Dienste, wenn Sie speziell das reguläre Realistic-Modell mit TTS-Funktionalität benötigen.
Leistungsoptimierung:
- Passen Sie die Verarbeitungs-Chunk-Größe für Realistic-Modelle basierend auf Ihren Leistungsanforderungen an
- Verwenden Sie geeignete Thread-Anzahlen für Ihre Zielhardware
- Erwägen Sie die Verwendung des Ausgabetyps "Mouth Only" für mood-fähige Modelle, wenn keine vollständige Gesichtsanimation benötigt wird