Configuration du Plugin
Configuration du Modèle
Configuration Standard du Modèle
Le nœud Create Runtime Viseme Generator
utilise des paramètres par défaut qui fonctionnent bien pour la plupart des scénarios. La configuration est gérée via les propriétés du nœud de mélange de l'Animation Blueprint.
Pour les options de configuration de l'Animation Blueprint, consultez la section Configuration de la Synchronisation Labiale ci-dessous.
Configuration du Modèle Réaliste
Le nœud Create Realistic MetaHuman Lip Sync Generator
accepte un paramètre Configuration optionnel qui vous permet de personnaliser le comportement du générateur :
Type de Modèle
Le paramètre Model Type détermine quelle version du modèle réaliste utiliser :
Type de Modèle | Performance | Qualité Visuelle | Gestion du Bruit | Cas d'Utilisation Recommandés |
---|---|---|---|---|
Highly Optimized (Par défaut) | Performance la plus élevée, utilisation CPU la plus faible | Bonne qualité | Peut montrer des mouvements de bouche notables avec du bruit de fond ou des sons non vocaux | Environnements audio propres, scénarios critiques pour les performances |
Semi-Optimized | Bonnes performances, utilisation CPU modérée | Haute qualité | Meilleure stabilité avec l'audio bruyant | Équilibre entre performance et qualité, conditions audio mixtes |
Original | Adapté à une utilisation en temps réel sur les CPU modernes | Qualité la plus élevée | Plus stable avec le bruit de fond et les sons non vocaux | Productions de haute qualité, environnements audio bruyants, quand une précision maximale est nécessaire |
Paramètres de Performance
Intra Op Threads : Contrôle le nombre de threads utilisés pour les opérations de traitement internes du modèle.
- 0 (Par défaut/Automatique) : Utilise la détection automatique (généralement 1/4 des cœurs de CPU disponibles, maximum 4)
- 1-16 : Spécifiez manuellement le nombre de threads. Des valeurs plus élevées peuvent améliorer les performances sur les systèmes multi-cœurs mais utilisent plus de CPU
Inter Op Threads : Contrôle le nombre de threads utilisés pour l'exécution parallèle des différentes opérations du modèle.
- 0 (Par défaut/Automatique) : Utilise la détection automatique (généralement 1/8 des cœurs de CPU disponibles, maximum 2)
- 1-8 : Spécifiez manuellement le nombre de threads. Généralement gardé faible pour le traitement en temps réel
Taille des Blocs de Traitement
La Processing Chunk Size détermine combien d'échantillons sont traités à chaque étape d'inférence. La valeur par défaut est 160 échantillons (10ms d'audio à 16kHz) :
- Les valeurs plus petites fournissent des mises à jour plus fréquentes mais augmentent l'utilisation du CPU
- Les valeurs plus grandes réduisent la charge CPU mais peuvent diminuer la réactivité de la synchronisation labiale
- Recommandé d'utiliser des multiples de 160 pour un alignement optimal
Configuration du Modèle avec Humeur
Le nœud Create Realistic MetaHuman Lip Sync With Mood Generator
fournit des options de configuration supplémentaires au-delà du modèle réaliste de base :
Configuration de Base
Lookahead Ms : Délai de prévision en millisecondes pour une meilleure précision de la synchronisation labiale.
- Par défaut : 80 ms
- Plage : 20 ms à 200 ms (doit être divisible par 20)
- Des valeurs plus élevées offrent une meilleure synchronisation mais augmentent la latence
Type de sortie : Contrôle quels contrôles faciaux sont générés.
- Visage complet : Tous les 81 contrôles faciaux (sourcils, yeux, nez, bouche, mâchoire, langue)
- Bouche uniquement : Uniquement les contrôles liés à la bouche, la mâchoire et la langue
Paramètres de performance : Utilise les mêmes paramètres Intra Op Threads et Inter Op Threads que le modèle réaliste standard.
Paramètres d'humeur
Humeurs disponibles :
- Neutre, Heureux, Triste, Dégoût, Colère, Surprise, Peur
- Confiant, Excité, Ennuyé, Enjoué, Confus
Intensité de l'humeur : Contrôle à quel point l'humeur affecte l'animation (0.0 à 1.0)
Contrôle de l'humeur en temps réel
Vous pouvez ajuster les paramètres d'humeur pendant l'exécution en utilisant les fonctions suivantes :
- Définir l'humeur : Changer le type d'humeur actuel
- Définir l'intensité de l'humeur : Ajuster la force avec laquelle l'humeur affecte l'animation (0.0 à 1.0)
- Définir Lookahead Ms : Modifier le délai de prévision pour la synchronisation
- Définir le type de sortie : Basculer entre les contrôles Visage complet et Bouche uniquement
Guide de sélection de l'humeur
Choisissez des humeurs appropriées en fonction de votre contenu :
Humeur | Idéal pour | Plage d'intensité typique |
---|---|---|
Neutre | Conversation générale, narration, état par défaut | 0.5 - 1.0 |
Heureux | Contenu positif, dialogue joyeux, célébrations | 0.6 - 1.0 |
Triste | Contenu mélancolique, scènes émotionnelles, moments sombres | 0.5 - 0.9 |
Dégoût | Réactions négatives, contenu déplaisant, rejet | 0.4 - 0.8 |
Colère | Dialogue agressif, scènes de confrontation, frustration | 0.6 - 1.0 |
Surprise | Événements inattendus, révélations, réactions de choc | 0.7 - 1.0 |
Peur | Situations menaçantes, anxiété, dialogue nerveux | 0.5 - 0.9 |
Confiant | Présentations professionnelles, dialogue de leadership, discours affirmé | 0.7 - 1.0 |
Excité | Contenu énergique, annonces, dialogue enthousiaste | 0.8 - 1.0 |
Ennuyé | Contenu monotone, dialogue désintéressé, discours fatigué | 0.3 - 0.7 |
Enjoué | Conversation décontractée, humour, interactions légères | 0.6 - 0.9 |
Confus | Dialogue riche en questions, incertitude, perplexité | 0.4 - 0.8 |
Configuration du Animation Blueprint
Configuration de la synchronisation labiale
- Standard Model
- Realistic Models
Le nœud Blend Runtime MetaHuman Lip Sync
possède des options de configuration dans son panneau des propriétés :
Propriété | Défaut | Description |
---|---|---|
Vitesse d'interpolation | 25 | Contrôle la rapidité avec laquelle les mouvements des lèvres transitent entre les visèmes. Des valeurs plus élevées entraînent des transitions plus rapides et plus abruptes. |
Temps de réinitialisation | 0.2 | La durée en secondes après laquelle la synchronisation labiale est réinitialisée. Ceci est utile pour empêcher la synchronisation labiale de continuer après l'arrêt de l'audio. |
Le nœud Blend Realistic MetaHuman Lip Sync
possède des options de configuration dans son panneau des propriétés :
Propriété | Défaut | Description |
---|---|---|
Vitesse d'interpolation | 30 | Contrôle la rapidité avec laquelle les mouvements des lèvres transitent entre les positions. Des valeurs plus élevées entraînent des transitions plus rapides et plus abruptes. |
Temps de réinitialisation | 0.2 | La durée en secondes après laquelle la synchronisation labiale est réinitialisée. Ceci est utile pour empêcher la synchronisation labiale de continuer après l'arrêt de l'audio. |
Note : Le même nœud d'Animation Blueprint est utilisé pour les modèles réalistes standards et ceux compatibles avec les humeurs.
Animation de rire
Vous pouvez également ajouter des animations de rire qui répondront dynamiquement au rire détecté dans l'audio :
- Ajoutez le nœud
Blend Runtime MetaHuman Laughter
- Connectez votre variable
RuntimeVisemeGenerator
à la brocheViseme Generator
- Si vous utilisez déjà la synchronisation labiale :
- Connectez la sortie du nœud
Blend Runtime MetaHuman Lip Sync
à laSource Pose
du nœudBlend Runtime MetaHuman Laughter
- Connectez la sortie du nœud
Blend Runtime MetaHuman Laughter
à la brocheResult
de l'Output Pose
- Connectez la sortie du nœud
- Si vous utilisez uniquement le rire sans synchronisation labiale :
- Connectez votre pose source directement à la
Source Pose
du nœudBlend Runtime MetaHuman Laughter
- Connectez la sortie à la broche
Result
- Connectez votre pose source directement à la
Lorsqu'un rire est détecté dans l'audio, votre personnage s'animera dynamiquement en conséquence :
Configuration du rire
Le nœud Blend Runtime MetaHuman Laughter
possède ses propres options de configuration :
Propriété | Défaut | Description |
---|---|---|
Vitesse d'interpolation | 25 | Contrôle la rapidité avec laquelle les mouvements des lèvres transitent entre les animations de rire. Des valeurs plus élevées entraînent des transitions plus rapides et plus abruptes. |
Temps de réinitialisation | 0.2 | La durée en secondes après laquelle le rire est réinitialisé. Ceci est utile pour empêcher le rire de continuer après l'arrêt de l'audio. |
Poids maximum du rire | 0.7 | Échelle l'intensité maximale de l'animation de rire (0.0 - 1.0). |
Remarque : La détection du rire est actuellement disponible uniquement avec le Modèle Standard. |
Combinaison avec les Animations Existantes
Pour appliquer la synchronisation labiale et le rire parallèlement aux animations corporelles existantes et aux animations faciales personnalisées sans les écraser :
- Ajoutez un nœud
Layered blend per bone
entre vos animations corporelles et la sortie finale. Assurez-vous queUse Attached Parent
est vrai. - Configurez la configuration des couches :
- Ajoutez 1 élément au tableau
Layer Setup
- Ajoutez 3 éléments aux
Branch Filters
pour la couche, avec lesBone Name
suivants :FACIAL_C_FacialRoot
FACIAL_C_Neck2Root
FACIAL_C_Neck1Root
- Ajoutez 1 élément au tableau
- Important pour les animations faciales personnalisées : Dans
Curve Blend Option
, sélectionnez "Use Max Value". Cela permet aux animations faciales personnalisées (expressions, émotions, etc.) d'être correctement superposées par-dessus la synchronisation labiale. - Effectuez les connexions :
- Animations existantes (comme
BodyPose
) → entréeBase Pose
- Sortie de l'animation faciale (depuis les nœuds de synchronisation labiale et/ou de rire) → entrée
Blend Poses 0
- Nœud de mélange en couches →
Result
pose finale
- Animations existantes (comme
Ajustement Fin du Comportement de la Synchronisation Labiale
Contrôle de la Protrusion de la Langue
Dans le modèle de synchronisation labiale standard, vous pouvez remarquer un mouvement excessif de la langue vers l'avant pendant certains phonèmes. Pour contrôler la protrusion de la langue :
- Après votre nœud de mélange de synchronisation labiale, ajoutez un nœud
Modify Curve
- Faites un clic droit sur le nœud
Modify Curve
et sélectionnez Add Curve Pin - Ajoutez une épingle de courbe avec le nom
CTRL_expressions_tongueOut
- Définissez la propriété Apply Mode du nœud sur Scale
- Ajustez le paramètre Value pour contrôler l'extension de la langue (par exemple, 0,8 pour réduire la protrusion de 20 %)
Contrôle de l'Ouverture de la Mâchoire
La synchronisation labiale réaliste peut produire des mouvements de mâchoire excessivement réactifs selon votre contenu audio et vos besoins visuels. Pour ajuster l'intensité de l'ouverture de la mâchoire :
- Après votre nœud de mélange de synchronisation labiale, ajoutez un nœud
Modify Curve
- Faites un clic droit sur le nœud
Modify Curve
et sélectionnez Add Curve Pin - Ajoutez une épingle de courbe avec le nom
CTRL_expressions_jawOpen
- Définissez la propriété Apply Mode du nœud sur Scale
- Ajustez le paramètre Value pour contrôler l'amplitude d'ouverture de la mâchoire (par exemple, 0,9 pour réduire le mouvement de la mâchoire de 10 %)
Ajustement Fin Spécifique à l'Humeur
Pour les modèles compatibles avec l'humeur, vous pouvez affiner des expressions émotionnelles spécifiques :
Contrôle des Sourcils :
CTRL_L_brow_raiseIn.ty
/CTRL_R_brow_raiseIn.ty
- Sourcil intérieur levéCTRL_L_brow_raiseOut.ty
/CTRL_R_brow_raiseOut.ty
- Sourcil extérieur levéCTRL_L_brow_down.ty
/CTRL_R_brow_down.ty
- Sourcil abaissé
Contrôle de l'Expression des Yeux :
CTRL_L_eye_squintInner.ty
/CTRL_R_eye_squintInner.ty
- Plissement des yeuxCTRL_L_eye_cheekRaise.ty
/CTRL_R_eye_cheekRaise.ty
- Soulèvement de la joue
Comparaison et Sélection des Modèles
Choix Entre les Modèles
Lorsque vous décidez quel modèle de synchronisation labiale utiliser pour votre projet, prenez en compte ces facteurs :
Considération | Modèle Standard | Modèle Réaliste | Modèle Réaliste avec Humeurs |
---|---|---|---|
Compatibilité des Personnages | MetaHumans et tous les types de personnages personnalisés | MetaHumans uniquement | MetaHumans uniquement |
Qualité Visuelle | Bonne synchronisation labiale avec des performances efficaces | Réalisme amélioré avec des mouvements de bouche plus naturels | Réalisme amélioré avec des expressions émotionnelles |
Performances | Optimisé pour toutes les plateformes, y compris mobile/RV | Besoins en ressources plus élevés | Besoins en ressources plus élevés |
Fonctionnalités | 14 visèmes, détection des rires | 81 contrôles faciaux, 3 niveaux d'optimisation | 81 contrôles faciaux, 12 humeurs, sortie configurable |
Support des Plateformes | Windows, Android, Quest | Windows, Mac, iOS, Linux | Windows, Mac, iOS, Linux |
Cas d'Utilisation | Applications générales, jeux, RV/RA, mobile | Expériences cinématiques, interactions en plan rapproché | Narration émotionnelle, interaction avancée avec les personnages |
Compatibilité des Versions du Moteur
Si vous utilisez Unreal Engine 5.2, les Modèles Réalistes peuvent ne pas fonctionner correctement en raison d'un bogue dans la bibliothèque de rééchantillonnage d'UE. Pour les utilisateurs d'UE 5.2 qui ont besoin d'une fonctionnalité de synchronisation labiale fiable, veuillez utiliser le Modèle Standard à la place.
Ce problème est spécifique à UE 5.2 et n'affecte pas les autres versions du moteur.
Recommandations de Performance
- Pour la plupart des projets, le Modèle Standard offre un excellent équilibre entre qualité et performance
- Utilisez le Modèle Réaliste lorsque vous avez besoin de la plus haute fidélité visuelle pour les personnages MetaHuman
- Utilisez le Modèle Réaliste avec Humeurs lorsque le contrôle de l'expression émotionnelle est important pour votre application
- Prenez en compte les capacités de performance de votre plateforme cible lors du choix entre les modèles
- Testez différents niveaux d'optimisation pour trouver le meilleur équilibre pour votre cas d'utilisation spécifique
Compatibilité TTS
Type de Modèle | Support TTS Local (via Runtime Text To Speech) | Support TTS Externe | Notes |
---|---|---|---|
Modèle Standard | ✅ Support complet | ✅ Support complet | Compatible avec toutes les options TTS |
Modèle Réaliste | ❌ Support limité | ✅ Support complet | Conflits du runtime ONNX avec le TTS local |
Modèle Réaliste avec Humeurs | ✅ Support complet | ✅ Support complet | Compatible avec toutes les options TTS |
Dépannage
Problèmes Courants
Recréation du Générateur pour les Modèles Réalistes : Pour un fonctionnement fiable et cohérent avec les Modèles Réalistes, il est recommandé de recréer le générateur chaque fois que vous souhaitez envoyer de nouvelles données audio après une période d'inactivité. Ceci est dû au comportement du runtime ONNX qui peut entraîner l'arrêt de la synchronisation labiale lors de la réutilisation des générateurs après des périodes de silence. Compatibilité TTS Local : Le TTS local fourni par le plugin Runtime Text To Speech n'est actuellement pas pris en charge avec le modèle Realistic standard en raison de conflits avec le runtime ONNX. Cependant, il est entièrement compatible avec le modèle Standard et le modèle Realistic avec activation des humeurs. Utilisez des services TTS externes si vous avez spécifiquement besoin du modèle Realistic standard avec la fonctionnalité TTS.
Optimisation des Performances :
- Ajustez la taille des blocs de traitement pour les modèles Realistic en fonction de vos exigences de performance
- Utilisez un nombre de threads approprié pour votre matériel cible
- Envisagez d'utiliser le type de sortie 'Mouth Only' pour les modèles avec activation des humeurs lorsque l'animation faciale complète n'est pas nécessaire