منصوبے کے بارے میں

## پروجیکٹ کا جائزہ Retrieval-based-Voice-Conversion-WebUI (RVC) ایک آسان اور استعمال میں آسان آواز کی تبدیلی/وائس چینجر فریم ورک ہے، جو ویب انٹرفیس فراہم کرتا ہے۔ README کے مطابق، اس کے بیس ماڈل کو تقریباً 50 گھنٹے کے اوپن سورس VCTK ٹریننگ سیٹ پر تربیت دی گئی ہے، اور کاپی رائٹ کے حوالے سے کوئی تشویش نہیں ہے۔ ## اہم خصوصیات - ٹاپ1 ریٹریول کا استعمال کرتے ہوئے، ان پٹ سورس فیچرز کو ٹریننگ سیٹ فیچرز سے تبدیل کیا جاتا ہے تاکہ آواز کے رساو کو دبایا جا سکے۔ - نسبتاً کمزور گرافکس کارڈ پر بھی تیزی سے تربیت ممکن ہے۔ - کم ڈیٹا سے تربیت ممکن ہے، کم از کم 10 منٹ کا کم شور والا آڈیو ڈیٹا جمع کرنے کی سفارش کی جاتی ہے۔ - ckpt-merge کے ذریعے ماڈل فیوژن کر کے آواز کی خصوصیت تبدیل کی جا سکتی ہے۔ - آسان اور استعمال میں آسان ویب انٹرفیس فراہم کرتا ہے۔ - pymss/MSST ماڈلز کو کال کر کے آواز اور موسیقی کو الگ کیا جا سکتا ہے۔ - InterSpeech2023-RMVPE آواز کی پچ نکالنے کا الگورتھم استعمال کرتا ہے، README کے مطابق یہ گونگے پن کے مسائل کو کم کر سکتا ہے، تیز رفتار اور کم وسائل استعمال کرتا ہے۔ - AMD/Intel گرافکس کارڈز 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 نے تربیت اور جانچ کیا ہے۔