عن المشروع

## نظرة عامة على المشروع Retrieval-based-Voice-Conversion-WebUI (RVC) هو إطار عمل بسيط وسهل الاستخدام لتحويل نبرة الصوت/تغيير الصوت، ويوفر واجهة تشغيل عبر الويب. يذكر ملف README أن النموذج الأساسي دُرّب باستخدام مجموعة تدريب VCTK مفتوحة المصدر قريبة من 50 ساعة، ويشير إلى عدم وجود مخاوف تتعلق بحقوق النشر. ## الميزات الرئيسية - يستخدم استرجاع top1 لاستبدال ميزات الإدخال المصدر بميزات مجموعة التدريب، بهدف كبح تسرب النبرة. - يمكن تدريبه بسرعة نسبيًا حتى على بطاقات الرسومات الأضعف. - يمكن التدريب بكمية قليلة من البيانات؛ يُنصح بجمع 10 دقائق على الأقل من البيانات الصوتية منخفضة الضوضاء. - يمكن دمج النماذج عبر ckpt-merge لتغيير النبرة. - يوفر واجهة ويب بسيطة وسهلة الاستخدام. - يمكن استدعاء نماذج pymss/MSST لفصل الغناء عن المرافقة. - يعتمد على خوارزمية استخراج طبقة الصوت InterSpeech2023-RMVPE، ويذكر README أنها تخفف مشكلة الصوت المبحوح وتتميز بسرعة عالية واستهلاك منخفض للموارد. - بطاقات AMD/Intel تعتمد على حل CPU؛ يمكن استخدام DirectML على Windows وCPU على Linux. ## الواجهة وزمن الاستجابة يعرض 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؛ يمكن استخدام DirectML على Windows وCPU على Linux. - NVIDIA RTX 50 series: تثبيت Torch بإصدار CUDA 12.8 أولاً، ثم تثبيت requirments_cu128_py312.txt. - ما قبل NVIDIA RTX 50 series: تثبيت Torch بإصدار CUDA 11.8 أولاً، ثم تثبيت 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.