ऑडियो प्रोसेसिंग गाइड
यह गाइड आपके लिप सिंक जेनरेटरों को ऑडियो डेटा फीड करने के लिए विभिन्न ऑडियो इनपुट विधियों को सेट अप करने के तरीके को कवर करती है। आगे बढ़ने से पहले सुनिश्चित करें कि आपने सेटअप गाइड पूरा कर लिया है।
ऑडियो इनपुट प्रोसेसिंग
आपको ऑडियो इनपुट को प्रोसेस करने के लिए एक विधि सेट अप करने की आवश्यकता है। यह आपके ऑडियो स्रोत के आधार पर कई तरीकों से किया जा सकता है।
- माइक्रोफोन (रियल-टाइम)
- Microphone (Playback)
- Text-to-Speech (Local)
- Text-to-Speech (External APIs)
- From Audio File/Buffer
- Streaming Audio Buffer
यह दृष्टिकोण माइक्रोफोन में बोलते समय रियल-टाइम में लिप सिंक करता है:
- स्टैंडर्ड मॉडल
- यथार्थवादी मॉडल
- मूड-सक्षम यथार्थवादी मॉडल
- रनटाइम ऑडियो इम्पोर्टर का उपयोग करके एक कैप्चर करने योग्य साउंड वेव बनाएं
- ऑडियो कैप्चर करना शुरू करने से पहले,
OnPopulateAudioData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने रनटाइम विसेम जेनरेटर से
ProcessAudioData
को कॉल करें - माइक्रोफोन से ऑडियो कैप्चर करना शुरू करें
यथार्थवादी मॉडल स्टैंडर्ड मॉडल के समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन VisemeGenerator
के बजाय RealisticLipSyncGenerator
वेरिएबल के साथ।
मूड-सक्षम मॉडल समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन MoodMetaHumanLipSyncGenerator
वेरिएबल और अतिरिक्त मूड कॉन्फ़िगरेशन क्षमताओं के साथ।
यह दृष्टिकोण माइक्रोफोन से ऑडियो कैप्चर करता है, फिर उसे लिप सिंक के साथ प्लेबैक करता है:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- Runtime Audio Importer का उपयोग करके एक Capturable Sound Wave बनाएं
- माइक्रोफोन से ऑडियो कैप्चर शुरू करें
- कैप्चरेबल साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने Runtime Viseme Generator से
ProcessAudioData
को कॉल करें
Realistic Model, Standard Model के समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन VisemeGenerator
के बजाय RealisticLipSyncGenerator
वेरिएबल के साथ।
Mood-Enabled Model समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन MoodMetaHumanLipSyncGenerator
वेरिएबल और अतिरिक्त मूड कॉन्फ़िगरेशन क्षमताओं के साथ।
- Regular
- Streaming
यह दृष्टिकोण स्थानीय TTS का उपयोग करके पाठ से भाषण संश्लेषित करता है और लिप सिंक करता है:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- पाठ से भाषण उत्पन्न करने के लिए Runtime Text To Speech का उपयोग करें
- संश्लेषित ऑडियो को आयात करने के लिए Runtime Audio Importer का उपयोग करें
- आयातित साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने Runtime Viseme Generator से
ProcessAudioData
को कॉल करें
Runtime Text To Speech प्लगइन द्वारा प्रदान किया गया Local TTS, ONNX रनटाइम संघर्षों के कारण वर्तमान में नियमित Realistic मॉडल के साथ समर्थित नहीं है। नियमित Realistic मॉडल के साथ text-to-speech के लिए, बाहरी TTS समाधानों पर विचार करें या इसके बजाय Standard मॉडल का उपयोग करें।
- पाठ से भाषण उत्पन्न करने के लिए Runtime Text To Speech का उपयोग करें
- संश्लेषित ऑडियो को आयात करने के लिए Runtime Audio Importer का उपयोग करें
- आयातित साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने Mood-Enabled Lip Sync Generator से
ProcessAudioData
को कॉल करें - पाठ सामग्री या वांछित भावनात्मक अभिव्यक्ति के आधार पर मूड सेटिंग्स कॉन्फ़िगर करें
Mood Integration के साथ TTS:
- TTS जनरेशन से पहले या उसके दौरान उपयुक्त मूड सेट करें
- पाठ की भावनात्मक टोन से मेल खाने के लिए मूड तीव्रता समायोजित करें
- लंबी पाठ सामग्री के विभिन्न खंडों के लिए विभिन्न मूड का उपयोग करें
यह दृष्टिकोण रीयल-टाइम लिप सिंक के साथ स्ट्रीमिंग टेक्स्ट-टू-स्पीच सिंथेसिस का उपयोग करता है:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- टेक्स्ट से स्ट्रीमिंग स्पीच जनरेट करने के लिए Runtime Text To Speech का उपयोग करें
- सिंथेसाइज़्ड ऑडियो को इम्पोर्ट करने के लिए Runtime Audio Importer का उपयोग करें
- स्ट्रीमिंग साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने Runtime Viseme Generator से
ProcessAudioData
को कॉल करें
Runtime Text To Speech प्लगइन द्वारा प्रदान किया गया Local TTS, ONNX रनटाइम कॉन्फ्लिक्ट्स के कारण वर्तमान में नियमित Realistic मॉडल के साथ समर्थित नहीं है। नियमित Realistic मॉडल के साथ टेक्स्ट-टू-स्पीच के लिए, बाहरी TTS सेवाओं का उपयोग करने पर विचार करें या इसके बजाय Standard मॉडल का उपयोग करें।
- टेक्स्ट से स्ट्रीमिंग स्पीच जनरेट करने के लिए Runtime Text To Speech का उपयोग करें
- सिंथेसाइज़्ड ऑडियो को इम्पोर्ट करने के लिए Runtime Audio Importer का उपयोग करें
- स्ट्रीमिंग साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने Mood-Enabled Lip Sync Generator से
ProcessAudioData
को कॉल करें - यदि आवश्यक हो तो स्ट्रीमिंग के दौरान मूड सेटिंग्स को डायनामिक रूप से एडजस्ट करें
- Regular
- Streaming
यह दृष्टिकोण रनटाइम एआई चैटबॉट इंटीग्रेटर प्लगइन का उपयोग एआई सेवाओं (OpenAI या ElevenLabs) से संश्लेषित वाक् उत्पन्न करने और लिप सिंक करने के लिए करता है:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- बाहरी एपीआई (OpenAI, ElevenLabs, आदि) का उपयोग करके पाठ से वाक् उत्पन्न करने के लिए Runtime AI Chatbot Integrator का उपयोग करें
- संश्लेषित ऑडियो डेटा को आयात करने के लिए Runtime Audio Importer का उपयोग करें
- आयातित साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलीगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने रनटाइम विसेम जेनरेटर से
ProcessAudioData
को कॉल करें
रियलिस्टिक मॉडल स्टैंडर्ड मॉडल के समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन VisemeGenerator
के बजाय RealisticLipSyncGenerator
वेरिएबल के साथ।
मूड-सक्षम मॉडल समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन MoodMetaHumanLipSyncGenerator
वेरिएबल और अतिरिक्त मूड कॉन्फ़िगरेशन क्षमताओं के साथ।
यह दृष्टिकोण एआई सेवाओं (OpenAI या ElevenLabs) से संश्लेषित स्ट्रीमिंग स्पीच उत्पन्न करने और लिप सिंक करने के लिए रनटाइम एआई चैटबॉट इंटीग्रेटर प्लगइन का उपयोग करता है:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- स्ट्रीमिंग TTS APIs (जैसे ElevenLabs Streaming API) से कनेक्ट करने के लिए Runtime AI Chatbot Integrator का उपयोग करें
- संश्लेषित ऑडियो डेटा को आयात करने के लिए Runtime Audio Importer का उपयोग करें
- स्ट्रीमिंग साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने रनटाइम विसेम जेनरेटर से
ProcessAudioData
को कॉल करें
रियलिस्टिक मॉडल स्टैंडर्ड मॉडल के समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन VisemeGenerator
के बजाय RealisticLipSyncGenerator
वेरिएबल के साथ।
मूड-एनेबल्ड मॉडल समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन MoodMetaHumanLipSyncGenerator
वेरिएबल और अतिरिक्त मूड कॉन्फ़िगरेशन क्षमताओं के साथ।
यह दृष्टिकोण लिप सिंक के लिए पहले से रिकॉर्ड किए गए ऑडियो फ़ाइलों या ऑडियो बफ़र्स का उपयोग करता है:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- डिस्क या मेमोरी से एक ऑडियो फ़ाइल इम्पोर्ट करने के लिए Runtime Audio Importer का उपयोग करें
- इम्पोर्ट की गई साउंड वेव को प्लेबैक करने से पहले, इसके
OnGeneratePCMData
डेलिगेट से बाइंड करें - बाउंड फ़ंक्शन में, अपने Runtime Viseme Generator से
ProcessAudioData
को कॉल करें - इम्पोर्ट की गई साउंड वेव को प्ले करें और लिप सिंक एनीमेशन को ऑब्ज़र्व करें
रियलिस्टिक मॉडल स्टैंडर्ड मॉडल के समान ही ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन VisemeGenerator
के बजाय RealisticLipSyncGenerator
वेरिएबल के साथ।
मूड-एनेबल्ड मॉडल समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन MoodMetaHumanLipSyncGenerator
वेरिएबल और अतिरिक्त मूड कॉन्फ़िगरेशन क्षमताओं के साथ।
स्ट्रीमिंग ऑडियो डेटा के लिए, आपको चाहिए:
- Standard Model
- Realistic Model
- Mood-Enabled Realistic Model
- आपके स्ट्रीमिंग स्रोत से उपलब्ध फ़्लोट PCM फ़ॉर्मेट में ऑडियो डेटा (फ़्लोटिंग-पॉइंट सैंपल्स की एक ऐरे) (या अधिक फ़ॉर्मेट्स को सपोर्ट करने के लिए Runtime Audio Importer का उपयोग करें)
- सैंपल रेट और चैनलों की संख्या
- जैसे ही ऑडियो चंक्स उपलब्ध होते हैं, इन पैरामीटर्स के साथ अपने Runtime Viseme Generator से
ProcessAudioData
को कॉल करें
Realistic Model स्टैंडर्ड मॉडल के समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन VisemeGenerator
के बजाय RealisticLipSyncGenerator
वेरिएबल के साथ।
Mood-Enabled Model समान ऑडियो प्रोसेसिंग वर्कफ़्लो का उपयोग करता है, लेकिन MoodMetaHumanLipSyncGenerator
वेरिएबल और अतिरिक्त मूड कॉन्फ़िगरेशन क्षमताओं के साथ।
नोट: स्ट्रीमिंग ऑडियो स्रोतों का उपयोग करते समय, विकृत प्लेबैक से बचने के लिए ऑडियो प्लेबैक टाइमिंग को उचित रूप से प्रबंधित करना सुनिश्चित करें। अधिक जानकारी के लिए Streaming Sound Wave documentation देखें।
प्रोसेसिंग परफॉर्मेंस टिप्स
-
चंक साइज़: यदि आप अधिक रिस्पॉन्सिव लिप सिंक के लिए छोटे चंक में ऑडियो डेटा प्रोसेस करना चाहते हैं, तो
SetNumSamplesPerChunk
फ़ंक्शन में गणना को एडजस्ट करें। उदाहरण के लिए, सैंपल रेट को 100 (हर 10 ms पर स्ट्रीमिंग) के बजाय 150 से विभाजित करने पर (हर ~6.67 ms पर स्ट्रीमिंग) अधिक बार लिप सिंक अपडेट प्रदान करेगा। -
बफ़र प्रबंधन: मूड-सक्षम मॉडल 320-सैंपल फ़्रेम (16kHz पर 20ms) में ऑडियो प्रोसेस करता है। इष्टतम प्रदर्शन के लिए सुनिश्चित करें कि आपकी ऑडियो इनपुट टाइमिंग इसके साथ संरेखित हो।
-
जनरेटर पुनर्निर्माण: Realistic मॉडल के साथ विश्वसनीय ऑपरेशन के लिए, निष्क्रियता की अवधि के बाद नए ऑडियो डेटा को फ़ीड करना चाहते हैं तो हर बार जनरेटर को पुनः बनाएँ।
अगले कदम
एक बार जब आप ऑडियो प्रोसेसिंग सेट अप कर लेते हैं, तो आप चाह सकते हैं:
- अपने लिप सिंक व्यवहार को फ़ाइन-ट्यून करने के लिए Configuration options के बारे में जानें
- बढ़ी हुई अभिव्यक्ति के लिए laughter animation जोड़ें
- कॉन्फ़िगरेशन गाइड में वर्णित लेयरिंग तकनीकों का उपयोग करके मौजूदा फेशियल एनिमेशन के साथ लिप सिंक को संयोजित करें