इस प्रोजेक्ट के बारे में

## परियोजना अवलोकन Retrieval-based-Voice-Conversion-WebUI (RVC) एक सरल और उपयोग में आसान वॉइस टिम्बर रूपांतरण / वॉइस चेंज फ्रेमवर्क है, जो वेब ऑपरेशन इंटरफ़ेस प्रदान करता है। README में कहा गया है कि इसका बेस मॉडल लगभग 50 घंटे के ओपन-सोर्स VCTK ट्रेनिंग सेट पर प्रशिक्षित है, और कॉपीराइट की चिंता नहीं है। ## मुख्य विशेषताएँ - top1 रिट्रीवल का उपयोग करके इनपुट स्रोत फीचर्स को ट्रेनिंग सेट फीचर्स से बदलता है, जिससे टिम्बर लीकेज रुकती है। - अपेक्षाकृत कमज़ोर GPU पर भी तेज़ी से प्रशिक्षण संभव है। - कम डेटा से प्रशिक्षण संभव है; न्यूनतम 10 मिनट कम बैकग्राउंड शोर वाला वॉइस डेटा इकट्ठा करने की सलाह दी जाती है। - ckpt-merge के माध्यम से मॉडल फ्यूज़न करके टिम्बर बदला जा सकता है। - सरल और उपयोग में आसान वेब इंटरफ़ेस उपलब्ध है। - वोकल और बैकिंग ट्रैक को अलग करने के लिए pymss/MSST मॉडल का उपयोग किया जा सकता है। - InterSpeech2023-RMVPE वॉइस पिच एक्सट्रैक्शन एल्गोरिदम का उपयोग करता है; README के अनुसार यह आवाज़ के दबने (म्यूट) की समस्या को कम करता है, तेज़ है और कम संसाधन लेता है। - AMD/Intel GPU के लिए CPU-आधारित समाधान; Windows पर DirectML, Linux पर CPU उपयोग किया जा सकता है। ## इंटरफ़ेस और विलंबता README में प्रशिक्षण/इनफरेंस इंटरफ़ेस और रीयल-टाइम वॉइस चेंज इंटरफ़ेस दिखाए गए हैं। रीयल-टाइम वॉइस चेंज में एंड-टू-एंड 170ms विलंबता लागू की गई है; यदि ASIO इनपुट/आउटपुट डिवाइस का उपयोग किया जाए, तो एंड-टू-एंड 90ms विलंबता संभव है, लेकिन यह हार्डवेयर ड्राइवर सपोर्ट पर अत्यधिक निर्भर है। ## पर्यावरण कॉन्फ़िगरेशन यह ब्रांच Python 3.12 x64 के लिए है; पहले रिपॉजिटरी रूट डायरेक्टरी में जाना आवश्यक है। Ubuntu के लिए Ubuntu 24.04 x86_64 अनुशंसित है। Ubuntu 24.04 पर python3.12, python3.12-venv, python3.12-dev, ffmpeg, unzip, libsndfile1, libportaudio2 इंस्टॉल करें, फिर वर्चुअल एनवायरनमेंट बनाकर pip, setuptools, wheel अपग्रेड करें। Windows पर Python 3.12 x64 इंस्टॉल करने के बाद वर्चुअल एनवायरनमेंट बनाएं। निर्भरताएँ हार्डवेयर के अनुसार चुनें: - CPU, AMD, Intel: requirments_cpu_py312.txt का उपयोग करें; Windows पर DirectML, Linux पर CPU। - NVIDIA RTX 50 सीरीज़: पहले CUDA 12.8 संस्करण का Torch इंस्टॉल करें, फिर requirments_cu128_py312.txt इंस्टॉल करें। - NVIDIA RTX 50 सीरीज़ से पहले: पहले CUDA 11.8 संस्करण का Torch इंस्टॉल करें, फिर requirments_cu118_py312.txt इंस्टॉल करें। README में Torch और CUDA स्थिति जाँचने के कमांड दिए गए हैं। तीनों निर्भरता फ़ाइलों के शीर्ष पर डाउनलोड स्रोत शामिल हैं; चीन के मुख्य भूमि के उपयोगकर्ता डिफ़ॉल्ट मिरर रख सकते हैं या आधिकारिक स्रोत से बदल सकते हैं। ## मॉडल और रन डायरेक्टरी WebUI स्वचालित रूप से रन डायरेक्टरी बनाएगा। मॉडल Hugging Face मॉडल रिपॉजिटरी से डाउनलोड करके निर्दिष्ट पथ पर रखने होंगे, जिनमें assets/hubert_base, assets/rmvpe, assets/pretrained, assets/pretrained_v2, assets/pymss_weights, assets/weights, assets/indices और logs/mute शामिल हैं। README में huggingface_hub का उपयोग करके प्रत्येक घटक मॉडल डाउनलोड करने के कमांड दिए गए हैं, और बताया गया है कि केवल Windows AMD/Intel DirectML वातावरण में rmvpe.onnx की भी आवश्यकता होती है। FFmpeg Ubuntu पर सिस्टम निर्भरता के साथ इंस्टॉल हो जाता है; Windows उपयोगकर्ता ffmpeg.exe और ffprobe.exe को प्रोजेक्ट रूट डायरेक्टरी में रख सकते हैं। ## उपयोग शुरू करना WebUI शुरू करने के लिए python webui.py चलाएँ; डेस्कटॉप के बिना Ubuntu सर्वर के लिए python webui.py --noautoopen उपयोग करें। डिफ़ॉल्ट सेवा पोर्ट 7865 है। अपने .pth मॉडल assets/weights/ में रखें, .index फ़ाइलें assets/indices/ में रखें। ## संदर्भ परियोजनाएँ README में ContentVec, VITS, HIFIGAN, Gradio, FFmpeg, Ultimate Vocal Remover, pymss, audio-slicer और RMVPE जैसी संदर्भ परियोजनाएँ सूचीबद्ध हैं, और बताया गया है कि RMVPE प्रीट्रेंड मॉडल yxlllc और RVC-Boss द्वारा प्रशिक्षित और परीक्षण किया गया है।