समस्या निवारण
भाषा मॉडल स्टेजिंग समस्याएँ
अधिकांश समस्याएँ भाषा मॉडल स्टेजिंग से संबंधित हैं, जो पैकेज्ड बिल्ड में समस्याएँ पैदा कर सकती हैं। विशेष रूप से, आप निम्नलिखित लॉग्स का सामना कर सकते हैं:
LogRuntimeSpeechRecognizer: Error: Language model loading failed: Failed to load the language model asset '/RuntimeSpeechRecognizer/LanguageModels/LanguageModel.LanguageModel'
इसे ठीक करने के लिए, प्रोजेक्ट सेटिंग्स पर जाएं, फिर प्रोजेक्ट -> पैकेजिंग सेक्शन में नेविगेट करें। नीचे स्क्रॉल करें और उन्नत श्रेणी को प्रकट करें, और सुनिश्चित करें कि:
DirectoriesToAlwaysCook(जिसेAdditional Asset Directories to Cookलेबल किया गया है) के अंदर/RuntimeSpeechRecognizer/LanguageModelsके लिए एक एंट्री है। यह एडिटर-टाइम के दौरान प्लगइन द्वारा स्वचालित रूप से किया जाता है, लेकिन कुछ उपयोगकर्ताओं ने इसे मैन्युअल रूप से करने की सूचना दी है, इसलिए कृपया जांच करना सुनिश्चित करें। यह सुनिश्चित करने के लिए आवश्यक है कि भाषा मॉडल एसेट पैकेज्ड बिल्ड में हमेशा स्टेज हो।

bCookMapsOnlyकोfalseपर सेट किया गया है। यदि इसेtrueपर सेट किया गया है, तो यह पिछली प्रॉपर्टी को अनदेखा कर देगा, और संभावना है कि भाषा मॉडल एसेट ठीक से स्टेज नहीं होगा। यह भी प्लगइन द्वारा स्वचालित रूप से किया जाता है, लेकिन केवल निश्चित होने के लिए, कृपया इस वेरिएबल को भी मैन्युअल रूप से जांचें।

ऐसी अन्य प्रॉपर्टीज हो सकती हैं जो इंजन की पैकेजिंग व्यवहार को प्रभावित कर सकती हैं, जिन्हें बाद में जांच के आधार पर इस पेज में जोड़ा जा सकता है।
Android और iOS क्रैश
Android और iOS पर कुछ मामलों में, रनटाइम के दौरान क्रैश हो सकते हैं (जैसे कि TestFlight टेस्टिंग के दौरान)। यह अंतर्निहित whisper.cpp लाइब्रेरी की मेमोरी एलोकेशन आवश्यकताओं के इन प्लेटफॉर्म्स पर Unreal Engine के डिफ़ॉल्ट एलोकेटर्स से टकराने के कारण होता है। अन्य प्लेटफॉर्म्स पर, FMalloc डिफ़ॉल्ट रूप से ANSI एलोकेटर का उपयोग करता है, इसलिए यह समस्या विशेष रूप से Android और iOS के लिए है।
इसे हल करने के लिए, आपको अपने प्रोजेक्ट की Target.cs फ़ाइल में ANSI एलोकेटर को फोर्स करना होगा:
Unreal Engine 5.5 और पहले के लिए:
- आपके प्रोजेक्ट को सोर्स-बिल्ट इंजन (पूर्व-संकलित बाइनरी नहीं) का उपयोग करना चाहिए
- अपनी
Target.csफ़ाइल में निम्नलिखित लाइन जोड़ें:
GlobalDefinitions.Add("FORCE_ANSI_ALLOCATOR=1");
Unreal Engine 5.6 और बाद के लिए:
- स्रोत-निर्मित और पूर्व-संकलित इंजन बिल्ड दोनों के साथ काम करता है
- अपनी
Target.csफ़ाइल में निम्न पंक्ति जोड़ें:
StaticAllocator = StaticAllocatorType.Ansi;
यह Unreal Engine को Android और iOS पर ANSI allocator का उपयोग करने के लिए मजबूर करता है, जो whisper.cpp द्वारा उपयोग किए जाने वाले allocator से मेल खाता है।