मुख्य कंटेंट तक स्किप करें

प्लगइन कॉन्फ़िगरेशन

मॉडल कॉन्फ़िगरेशन

स्टैंडर्ड मॉडल कॉन्फ़िगरेशन

Create Runtime Viseme Generator नोड डिफ़ॉल्ट सेटिंग्स का उपयोग करता है जो अधिकांश परिदृश्यों के लिए अच्छी तरह काम करती हैं। कॉन्फ़िगरेशन एनीमेशन ब्लूप्रिंट ब्लेंडिंग नोड गुणों के माध्यम से संभाला जाता है।

एनीमेशन ब्लूप्रिंट कॉन्फ़िगरेशन विकल्पों के लिए, नीचे लिप सिंक कॉन्फ़िगरेशन अनुभाग देखें।

रियलिस्टिक मॉडल कॉन्फ़िगरेशन

Create Realistic MetaHuman Lip Sync Generator नोड एक वैकल्पिक Configuration पैरामीटर स्वीकार करता है जो आपको जनरेटर के व्यवहार को अनुकूलित करने की अनुमति देता है:

मॉडल प्रकार

Model Type सेटिंग निर्धारित करती है कि रियलिस्टिक मॉडल के किस संस्करण का उपयोग करना है:

मॉडल प्रकारप्रदर्शनदृश्य गुणवत्ताशोर हैंडलिंगअनुशंसित उपयोग के मामले
अत्यधिक अनुकूलित (डिफ़ॉल्ट)उच्चतम प्रदर्शन, सबसे कम CPU उपयोगअच्छी गुणवत्तापृष्ठभूमि शोर या गैर-आवाज ध्वनियों के साथ ध्यान देने योग्य मुंह की हरकतें दिखा सकता हैसाफ ऑडियो वातावरण, प्रदर्शन-महत्वपूर्ण परिदृश्य
अर्ध-अनुकूलितअच्छा प्रदर्शन, मध्यम CPU उपयोगउच्च गुणवत्ताशोर भरे ऑडियो के साथ बेहतर स्थिरतासंतुलित प्रदर्शन और गुणवत्ता, मिश्रित ऑडियो स्थितियां
मूलआधुनिक CPUs पर रियल-टाइम उपयोग के लिए उपयुक्तउच्चतम गुणवत्तापृष्ठभूमि शोर और गैर-आवाज ध्वनियों के साथ सबसे स्थिरउच्च-गुणवत्ता वाले प्रोडक्शन, शोर भरे ऑडियो वातावरण, जब अधिकतम सटीकता की आवश्यकता हो

प्रदर्शन सेटिंग्स

Intra Op Threads: आंतरिक मॉडल प्रसंस्करण संचालन के लिए उपयोग किए जाने वाले थ्रेड्स की संख्या को नियंत्रित करता है।

  • 0 (डिफ़ॉल्ट/स्वचालित): स्वचालित पहचान का उपयोग करता है (आमतौर पर उपलब्ध CPU कोर का 1/4, अधिकतम 4)
  • 1-16: मैन्युअल रूप से थ्रेड काउंट निर्दिष्ट करें। उच्च मान मल्टी-कोर सिस्टम पर प्रदर्शन में सुधार कर सकते हैं लेकिन अधिक CPU का उपयोग करते हैं

Inter Op Threads: विभिन्न मॉडल संचालन के समानांतर निष्पादन के लिए उपयोग किए जाने वाले थ्रेड्स की संख्या को नियंत्रित करता है।

  • 0 (डिफ़ॉल्ट/स्वचालित): स्वचालित पहचान का उपयोग करता है (आमतौर पर उपलब्ध CPU कोर का 1/8, अधिकतम 2)
  • 1-8: मैन्युअल रूप से थ्रेड काउंट निर्दिष्ट करें। आमतौर पर रियल-टाइम प्रसंस्करण के लिए कम रखा जाता है

प्रोसेसिंग चंक साइज़

Processing Chunk Size निर्धारित करता है कि प्रत्येक इन्फ़रेंस स्टेप में कितने सैंपल प्रोसेस किए जाते हैं। डिफ़ॉल्ट मान 160 सैंपल है (16kHz पर 10ms का ऑडियो):

  • छोटे मान अधिक बार अपडेट प्रदान करते हैं लेकिन CPU उपयोग बढ़ाते हैं
  • बड़े मान CPU लोड कम करते हैं लेकिन लिप सिंक की प्रतिक्रियाशीलता कम कर सकते हैं
  • इष्टतम संरेखण के लिए 160 के गुणकों का उपयोग करने की अनुशंसा की जाती है

प्रोसेसिंग चंक साइज़ सेट करना

मूड-सक्षम मॉडल कॉन्फ़िगरेशन

Create Realistic MetaHuman Lip Sync With Mood Generator नोड बेसिक रियलिस्टिक मॉडल से परे अतिरिक्त कॉन्फ़िगरेशन विकल्प प्रदान करता है:

बेसिक कॉन्फ़िगरेशन

लुकअहेड एमएस: बेहतर लिप सिंक सटीकता के लिए लुकअहेड समय।

  • डिफ़ॉल्ट: 80ms
  • रेंज: 20ms से 200ms (20 से विभाज्य होना चाहिए)
  • उच्च मान बेहतर सिंक्रनाइज़ेशन प्रदान करते हैं लेकिन विलंबता बढ़ाते हैं

आउटपुट प्रकार: नियंत्रित करता है कि कौन से चेहरे के नियंत्रण उत्पन्न होते हैं।

  • फुल फेस: सभी 81 चेहरे के नियंत्रण (भौहें, आँखें, नाक, मुँह, जबड़ा, जीभ)
  • माउथ ओनली: केवल मुँह, जबड़ा और जीभ से संबंधित नियंत्रण

प्रदर्शन सेटिंग्स: नियमित यथार्थवादी मॉडल के समान इंट्रा ऑप थ्रेड्स और इंटर ऑप थ्रेड्स सेटिंग्स का उपयोग करता है।

मूड सेटिंग्स

उपलब्ध मूड:

  • Neutral, Happy, Sad, Disgust, Anger, Surprise, Fear
  • Confident, Excited, Bored, Playful, Confused

मूड तीव्रता: नियंत्रित करती है कि मूड एनीमेशन को कितनी दृढ़ता से प्रभावित करता है (0.0 से 1.0)

रनटाइम मूड कंट्रोल

आप रनटाइम के दौरान निम्नलिखित फ़ंक्शन का उपयोग करके मूड सेटिंग्स समायोजित कर सकते हैं:

  • सेट मूड: वर्तमान मूड प्रकार बदलें
  • सेट मूड इंटेंसिटी: समायोजित करें कि मूड एनीमेशन को कितनी दृढ़ता से प्रभावित करता है (0.0 से 1.0)
  • सेट लुकअहेड एमएस: सिंक्रनाइज़ेशन के लिए लुकअहेड समय संशोधित करें
  • सेट आउटपुट टाइप: फुल फेस और माउथ ओनली नियंत्रणों के बीच स्विच करें

मूड कॉन्फ़िगरेशन

मूड चयन गाइड

अपनी सामग्री के आधार पर उपयुक्त मूड चुनें:

मूडसर्वोत्तम उपयोगविशिष्ट तीव्रता सीमा
Neutralसामान्य बातचीत, वर्णन, डिफ़ॉल्ट स्थिति0.5 - 1.0
Happyसकारात्मक सामग्री, हंसमुख संवाद, उत्सव0.6 - 1.0
Sadउदासी भरी सामग्री, भावनात्मक दृश्य, गंभीर क्षण0.5 - 0.9
Disgustनकारात्मक प्रतिक्रियाएं, अरुचिकर सामग्री, अस्वीकृति0.4 - 0.8
Angerआक्रामक संवाद, टकराव वाले दृश्य, निराशा0.6 - 1.0
Surpriseअप्रत्याशित घटनाएं, रहस्योद्घाटन, सदमे की प्रतिक्रियाएं0.7 - 1.0
Fearखतरनाक स्थितियां, चिंता, घबराया हुआ संवाद0.5 - 0.9
Confidentपेशेवर प्रस्तुतियां, नेतृत्व संवाद, मुखर भाषण0.7 - 1.0
Excitedऊर्जावान सामग्री, घोषणाएं, उत्साही संवाद0.8 - 1.0
Boredएकरस सामग्री, अरुचि वाला संवाद, थका हुआ भाषण0.3 - 0.7
Playfulआकस्मिक बातचीत, हास्य, हल्के-फुल्के संवाद0.6 - 0.9
Confusedप्रश्न-प्रधान संवाद, अनिश्चितता, हैरानी0.4 - 0.8

एनीमेशन ब्लूप्रिंट कॉन्फ़िगरेशन

लिप सिंक कॉन्फ़िगरेशन

Blend Runtime MetaHuman Lip Sync नोड में इसके गुण पैनल में कॉन्फ़िगरेशन विकल्प हैं:

गुणडिफ़ॉल्टविवरण
इंटरपोलेशन गति25नियंत्रित करता है कि विसेम्स के बीच होंठों की गतिविधियाँ कितनी तेज़ी से संक्रमण करती हैं। उच्च मान तेज़ और अधिक अचानक संक्रमणों का परिणाम देते हैं।
रीसेट समय0.2सेकंड में वह अवधि जिसके बाद लिप सिंक रीसेट हो जाता है। ऑडियो रुकने के बाद लिप सिंक को जारी रहने से रोकने के लिए यह उपयोगी है।

हँसी एनीमेशन

आप ऑडियो में पहचाने गए हँसी के अनुसार गतिशील रूप से प्रतिक्रिया देने वाले हँसी एनिमेशन भी जोड़ सकते हैं:

  1. Blend Runtime MetaHuman Laughter नोड जोड़ें
  2. अपने RuntimeVisemeGenerator वेरिएबल को Viseme Generator पिन से कनेक्ट करें
  3. यदि आप पहले से ही लिप सिंक का उपयोग कर रहे हैं:
    • Blend Runtime MetaHuman Lip Sync नोड के आउटपुट को Blend Runtime MetaHuman Laughter नोड के Source Pose से कनेक्ट करें
    • Blend Runtime MetaHuman Laughter नोड के आउटपुट को Output Pose के Result पिन से कनेक्ट करें
  4. यदि लिप सिंक के बिना केवल हँसी का उपयोग कर रहे हैं:
    • अपने स्रोत पोज़ को सीधे Blend Runtime MetaHuman Laughter नोड के Source Pose से कनेक्ट करें
    • आउटपुट को Result पिन से कनेक्ट करें

Blend Runtime MetaHuman Laughter

जब ऑडियो में हँसी पहचानी जाती है, तो आपका कैरेक्टर गतिशील रूप से तदनुरूप एनिमेट होगा:

Laughter

हँसी कॉन्फ़िगरेशन

Blend Runtime MetaHuman Laughter नोड के अपने कॉन्फ़िगरेशन विकल्प हैं:

प्रॉपर्टीडिफ़ॉल्टविवरण
इंटरपोलेशन स्पीड25हँसी एनिमेशन के बीच होंठों की गतिविधियों के संक्रमण की गति को नियंत्रित करता है। उच्च मान तेज़ और अधिक अचानक संक्रमण का परिणाम देते हैं।
रीसेट टाइम0.2सेकंड में वह अवधि जिसके बाद हँसी रीसेट हो जाती है। यह ऑडियो बंद होने के बाद हँसी को जारी रहने से रोकने के लिए उपयोगी है।
मैक्स लाफ्टर वेट0.7हँसी एनिमेशन की अधिकतम तीव्रता को स्केल करता है (0.0 - 1.0)।

नोट: हँसी पहचान वर्तमान में केवल स्टैंडर्ड मॉडल के साथ उपलब्ध है।

मौजूदा एनिमेशन के साथ संयोजन

लिप सिंक और हँसी को मौजूदा बॉडी एनिमेशन और कस्टम फेशियल एनिमेशन के साथ उन्हें ओवरराइड किए बिना लागू करने के लिए:

  1. अपनी बॉडी एनिमेशन और फाइनल आउटपुट के बीच एक Layered blend per bone नोड जोड़ें। सुनिश्चित करें कि Use Attached Parent सही है।
  2. लेयर सेटअप कॉन्फ़िगर करें:
    • Layer Setup ऐरे में 1 आइटम जोड़ें
    • लेयर के लिए Branch Filters में 3 आइटम जोड़ें, निम्नलिखित Bone Name के साथ:
      • FACIAL_C_FacialRoot
      • FACIAL_C_Neck2Root
      • FACIAL_C_Neck1Root
  3. कस्टम फेशियल एनिमेशन के लिए महत्वपूर्ण: Curve Blend Option में, "Use Max Value" चुनें। यह कस्टम फेशियल एनिमेशन (एक्सप्रेशन, इमोशन, आदि) को लिप सिंक के ऊपर ठीक से लेयर करने की अनुमति देता है।
  4. कनेक्शन बनाएँ:
    • मौजूदा एनिमेशन (जैसे BodyPose) → Base Pose इनपुट
    • फेशियल एनिमेशन आउटपुट (लिप सिंक और/या हँसी नोड्स से) → Blend Poses 0 इनपुट
    • लेयर्ड ब्लेंड नोड → फाइनल Result पोज़

Layered Blend Per Bone

लिप सिंक व्यवहार को फाइन-ट्यून करना

जीभ बाहर निकलने का नियंत्रण

मानक लिप सिंक मॉडल में, आप कुछ फोनेम के दौरान अत्यधिक आगे की ओर जीभ की गति देख सकते हैं। जीभ के बाहर निकलने को नियंत्रित करने के लिए:

  1. अपने लिप सिंक ब्लेंड नोड के बाद, एक Modify Curve नोड जोड़ें
  2. Modify Curve नोड पर राइट-क्लिक करें और Add Curve Pin चुनें
  3. CTRL_expressions_tongueOut नाम के साथ एक कर्व पिन जोड़ें
  4. नोड की Apply Mode प्रॉपर्टी को Scale पर सेट करें
  5. जीभ के विस्तार को नियंत्रित करने के लिए Value पैरामीटर को समायोजित करें (उदाहरण के लिए, 20% तक बाहर निकलने को कम करने के लिए 0.8)

जबड़ा खोलने का नियंत्रण

यथार्थवादी लिप सिंक आपकी ऑडियो सामग्री और दृश्य आवश्यकताओं के आधार पर अत्यधिक प्रतिक्रियाशील जबड़े की गतिविधियाँ उत्पन्न कर सकता है। जबड़ा खोलने की तीव्रता को समायोजित करने के लिए:

  1. अपने लिप सिंक ब्लेंड नोड के बाद, एक Modify Curve नोड जोड़ें
  2. Modify Curve नोड पर राइट-क्लिक करें और Add Curve Pin चुनें
  3. CTRL_expressions_jawOpen नाम के साथ एक कर्व पिन जोड़ें
  4. नोड की Apply Mode प्रॉपर्टी को Scale पर सेट करें
  5. जबड़ा खोलने की सीमा को नियंत्रित करने के लिए Value पैरामीटर को समायोजित करें (उदाहरण के लिए, जबड़े की गति को 10% कम करने के लिए 0.9)

मूड-विशिष्ट सूक्ष्म समायोजन

मूड-सक्षम मॉडल के लिए, आप विशिष्ट भावनात्मक अभिव्यक्तियों को सूक्ष्मता से समायोजित कर सकते हैं:

भौंह नियंत्रण:

  • CTRL_expressions_browRaiseInL / CTRL_expressions_browRaiseInR - भीतरी भौंह उठाना
  • CTRL_expressions_browRaiseOuterL / CTRL_expressions_browRaiseOuterR - बाहरी भौंह उठाना
  • CTRL_expressions_browDownL / CTRL_expressions_browDownR - भौंह नीचे करना

आँख अभिव्यक्ति नियंत्रण:

  • CTRL_expressions_eyeSquintInnerL / CTRL_expressions_eyeSquintInnerR - आँखें सिकोड़ना
  • CTRL_expressions_eyeCheekRaiseL / CTRL_expressions_eyeCheekRaiseR - गाल उठाना

मॉडल तुलना और चयन

मॉडल के बीच चयन करना

अपने प्रोजेक्ट के लिए किस लिप सिंक मॉडल का उपयोग करना है, यह तय करते समय इन कारकों पर विचार करें:

विचारस्टैंडर्ड मॉडलरियलिस्टिक मॉडलमूड-सक्षम रियलिस्टिक मॉडल
कैरेक्टर संगतताMetaHumans और सभी कस्टम कैरेक्टर प्रकारकेवल MetaHumansकेवल MetaHumans
दृश्य गुणवत्ताकुशल प्रदर्शन के साथ अच्छी लिप सिंकअधिक प्राकृतिक मुँह की गतिविधियों के साथ बढ़ी हुई यथार्थताभावनात्मक अभिव्यक्तियों के साथ बढ़ी हुई यथार्थता
प्रदर्शनमोबाइल/VR सहित सभी प्लेटफॉर्म के लिए अनुकूलितउच्च संसाधन आवश्यकताएँउच्च संसाधन आवश्यकताएँ
सुविधाएँ14 विसेम, हँसी का पता लगाना81 फेशियल कंट्रोल, 3 ऑप्टिमाइज़ेशन स्तर81 फेशियल कंट्रोल, 12 मूड, कॉन्फ़िगरेबल आउटपुट
प्लेटफॉर्म समर्थनWindows, Android, QuestWindows, Mac, iOS, LinuxWindows, Mac, iOS, Linux
उपयोग के मामलेसामान्य एप्लिकेशन, गेम, VR/AR, मोबाइलसिनेमाई अनुभव, क्लोज-अप इंटरैक्शनभावनात्मक कहानी कहना, उन्नत कैरेक्टर इंटरैक्शन

इंजन संस्करण संगतता

UE 5.2 संगतता समस्या

यदि आप Unreal Engine 5.2 का उपयोग कर रहे हैं, तो यथार्थवादी मॉडल UE की रीसैंपलिंग लाइब्रेरी में एक बग के कारण सही ढंग से काम नहीं कर सकते हैं। UE 5.2 उपयोगकर्ताओं के लिए जिन्हें विश्वसनीय लिप सिंक कार्यक्षमता की आवश्यकता है, कृपया इसके बजाय मानक मॉडल का उपयोग करें।

यह समस्या विशेष रूप से UE 5.2 के लिए है और अन्य इंजन संस्करणों को प्रभावित नहीं करती है।

प्रदर्शन सिफारिशें

  • अधिकांश परियोजनाओं के लिए, मानक मॉडल गुणवत्ता और प्रदर्शन का एक उत्कृष्ट संतुलन प्रदान करता है
  • यथार्थवादी मॉडल का उपयोग तब करें जब आपको MetaHuman पात्रों के लिए उच्चतम दृश्य निष्ठा की आवश्यकता हो
  • मूड-सक्षम यथार्थवादी मॉडल का उपयोग तब करें जब भावनात्मक अभिव्यक्ति नियंत्रण आपके एप्लिकेशन के लिए महत्वपूर्ण हो
  • मॉडल के बीच चयन करते समय अपने लक्षित प्लेटफ़ॉर्म की प्रदर्शन क्षमताओं पर विचार करें
  • अपने विशिष्ट उपयोग के मामले के लिए सर्वोत्तम संतुलन खोजने के लिए विभिन्न अनुकूलन स्तरों का परीक्षण करें

TTS संगतता

मॉडल प्रकारस्थानीय TTS समर्थन (Runtime Text To Speech के माध्यम से)बाहरी TTS समर्थनटिप्पणियाँ
मानक मॉडल✅ पूर्ण समर्थन✅ पूर्ण समर्थनसभी TTS विकल्पों के साथ संगत
यथार्थवादी मॉडल❌ सीमित समर्थन✅ पूर्ण समर्थनONNX रनटाइम स्थानीय TTS के साथ संघर्ष करता है
मूड-सक्षम यथार्थवादी मॉडल✅ पूर्ण समर्थन✅ पूर्ण समर्थनसभी TTS विकल्पों के साथ संगत

समस्या निवारण

सामान्य समस्याएँ

यथार्थवादी मॉडल के लिए जनरेटर पुनर्निर्माण: यथार्थवादी मॉडल के साथ विश्वसनीय और सुसंगत संचालन के लिए, निष्क्रियता की अवधि के बाद नए ऑडियो डेटा को फीड करना चाहते हैं तो हर बार जनरेटर को फिर से बनाने की सिफारिश की जाती है। यह ONNX रनटाइम व्यवहार के कारण है जो लिप सिंक को काम करना बंद कर सकता है जब चुप्पी की अवधि के बाद जनरेटर का पुन: उपयोग किया जाता है।

स्थानीय TTS संगतता: Runtime Text To Speech प्लगइन द्वारा प्रदान किया गया स्थानीय TTS वर्तमान में ONNX रनटाइम संघर्षों के कारण नियमित यथार्थवादी मॉडल के साथ समर्थित नहीं है। हालाँकि, यह मानक मॉडल और मूड-सक्षम यथार्थवादी मॉडल दोनों के साथ पूरी तरह से संगत है। यदि आपको विशेष रूप से TTS कार्यक्षमता के साथ नियमित यथार्थवादी मॉडल की आवश्यकता है तो बाहरी TTS सेवाओं का उपयोग करें।

लिप सिंक प्रतिक्रियाशीलता में गिरावट: यदि आप अनुभव करते हैं कि Streaming Sound Wave या Capturable Sound Wave का उपयोग करते समय लिप सिंक समय के साथ कम प्रतिक्रियाशील हो जाता है, तो यह मेमोरी संचय के कारण हो सकता है। डिफ़ॉल्ट रूप से, नया ऑडियो जोड़े जाने पर हर बार मेमोरी को पुन: आवंटित किया जाता है। इस समस्या को रोकने के लिए, संचित मेमोरी को मुक्त करने के लिए ReleaseMemory फ़ंक्शन को समय-समय पर कॉल करें, जैसे कि हर 30 सेकंड या उसके आसपास।

प्रदर्शन अनुकूलन:

  • अपनी प्रदर्शन आवश्यकताओं के आधार पर यथार्थवादी मॉडल के लिए प्रोसेसिंग चंक आकार समायोजित करें
  • अपने लक्षित हार्डवेयर के लिए उपयुक्त थ्रेड काउंट का उपयोग करें
  • मूड-सक्षम मॉडल के लिए Mouth Only आउटपुट प्रकार का उपयोग करने पर विचार करें जब पूर्ण चेहरे की एनीमेशन की आवश्यकता नहीं होती है