Bahasa Inggris | 简体中文 | 日本語
Model yang dirilis saat ini mendukung konversi suara zero-shot ? , konversi suara real-time zero-shot dan konversi suara nyanyian zero-shot . Tanpa pelatihan apa pun, ia mampu mengkloning suara dengan pidato referensi 1~30 detik.
Untuk menemukan daftar demo dan perbandingan dengan model konversi suara sebelumnya, silakan kunjungi halaman demo kami
Kami terus meningkatkan kualitas model dan menambahkan lebih banyak fitur.
Kami telah melakukan serangkaian evaluasi objektif terhadap kemampuan konversi suara Seed-VC kami. Untuk kemudahan reproduksi, audio sumber adalah 100 ucapan acak dari LibriTTS-test-clean, dan audio referensi adalah 12 suara alam liar yang dipilih secara acak dengan karakteristik unik.
Sumber audio dapat ditemukan di bawah ./examples/libritts-test-clean
Audio referensi dapat ditemukan di bawah ./examples/reference
Kami mengevaluasi hasil konversi dalam hal kesamaan kosinus penyematan speaker (SECS), tingkat kesalahan kata (WER), dan tingkat kesalahan karakter (CER) dan membandingkan hasil kami dengan dua dasar sumber terbuka yang kuat, yaitu OpenVoice dan CosyVoice.
Hasil pada tabel di bawah menunjukkan bahwa model Seed-VC kami secara signifikan mengungguli model dasar dalam hal kejelasan dan kesamaan pembicara.
ModelMetrik | SECS↑ | WER↓ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|
Kebenaran Dasar | 1.0000 | 8.02 | 1.57 | ~ | ~ | ~ |
Suara Terbuka | 0,7547 | 15.46 | 4.73 | 3.56 | 4.02 | 3.27 |
Suara Nyaman | 0,8440 | 18.98 | 7.29 | 3.51 | 4.02 | 3.21 |
Seed-VC (Milik Kita) | 0,8676 | 11.99 | 2.92 | 3.42 | 3.97 | 3.11 |
Kami juga telah membandingkan model konversi suara non-zero-shot untuk beberapa speaker (berdasarkan ketersediaan model):
Karakter | ModelMetrik | SECS↑ | WER↓ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|---|
~ | Kebenaran Dasar | 1.0000 | 6.43 | 1,00 | ~ | ~ | ~ |
Tokai Teio | Jadi-VITS-4.0 | 0,8637 | 21.46 | 9.63 | 3.06 | 3.66 | 2.68 |
Seed-VC (Milik Kita) | 0,8899 | 15.32 | 4.66 | 3.12 | 3.71 | 2.72 | |
Hijau Susu | Jadi-VITS-4.0 | 0,6850 | 48.43 | 32.50 | 3.34 | 3.51 | 2.82 |
Seed-VC (Milik Kita) | 0,8072 | 7.26 | 1.32 | 3.48 | 4.07 | 3.20 | |
Matikane Tannhuaser | Jadi-VITS-4.0 | 0,8594 | 16.25 | 8.64 | 3.25 | 3.71 | 2.84 |
Seed-VC (Milik Kita) | 0,8768 | 12.62 | 5.86 | 3.18 | 3.83 | 2.85 |
Hasilnya menunjukkan bahwa, meskipun tidak dilatih mengenai pembicara target, Seed-VC mampu mencapai hasil yang jauh lebih baik dibandingkan model non-zero-shot. Namun, hal ini mungkin sangat bervariasi tergantung pada kualitas model SoVITS. PR atau Masalah dipersilakan jika Anda merasa perbandingan ini tidak adil atau tidak akurat.
(Model Tokai Teio dari zomehwh/sovits-tannhauser)
(Model Matikane Tannhuaser dari zomehwh/sovits-tannhauser)
(Model Hijau Susu dari sparanoid/susu-hijau-sovits-4)
Hasil ASR bahasa Inggris dihitung dengan model facebook/hubert-large-ls960-ft
Penyematan speaker dihitung dengan model resemblyzer
Anda dapat mereproduksi evaluasi dengan menjalankan skrip eval.py
python eval.py --source ./examples/libritts-test-clean --target ./contoh/referensi --output ./examples/eval/convert --difusi-langkah 25 --panjang-sesuaikan 1.0 --inferensi-cfg-rate 0,7 --xvector-extractor "resemblyzer"--baseline "" # isi openvoice atau cosyvoice untuk menghitung hasil dasar--max-samples 100 # maksimal ucapan sumber yang harus dilalui
Sebelum itu, pastikan Anda telah menginstal repo openvoice dan cosyvoice dengan benar di ../OpenVoice/
dan ../CosyVoice/
jika Anda ingin menjalankan evaluasi dasar.
Evaluasi konversi suara nyanyian tambahan dilakukan pada dataset M4Singer, dengan 4 pembicara target yang data audionya tersedia di sini.
Kemiripan pembicara dihitung dengan merata-ratakan kesamaan kosinus antara hasil konversi dan seluruh sampel yang tersedia di masing-masing dataset karakter.
Untuk setiap karakter, satu ucapan acak dipilih sebagai petunjuk untuk inferensi zero-shot. Sebagai perbandingan, kami melatih masing-masing model RVCv2-f0-48k untuk setiap karakter sebagai dasar.
100 ucapan acak untuk setiap jenis penyanyi digunakan sebagai sumber audio.
ModelMetrik | F0CORR↑ | F0RMSE↓ | SECS↑ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|---|
RVCv2 | 0,9404 | 30.43 | 0,7264 | 28.46 | 3.41 | 4.05 | 3.12 |
Seed-VC (Milik Kita) | 0,9375 | 33.35 | 0,7405 | 19.70 | 3.39 | 3.96 | 3.06 |
Jenis Penyanyi Sumber | Karakter | ModelMetrik | F0CORR↑ | F0RMSE↓ | SECS↑ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|---|---|---|
Alto (Wanita) | ~ | Kebenaran Dasar | 1.0000 | 0,00 | ~ | 8.16 | ~ | ~ | ~ |
Azuma (Wanita) | RVCv2 | 0,9617 | 33.03 | 0,7352 | 24.70 | 3.36 | 4.07 | 3.07 | |
Seed-VC (Milik Kita) | 0,9658 | 31.64 | 0,7341 | 15.23 | 3.37 | 4.02 | 3.07 | ||
Diana (Wanita) | RVCv2 | 0,9626 | 32.56 | 0,7212 | 19.67 | 3.45 | 4.08 | 3.17 | |
Seed-VC (Milik Kita) | 0,9648 | 31.94 | 0,7457 | 16.81 | 3.49 | 3,99 | 3.15 | ||
Ding Zhen (Pria) | RVCv2 | 0,9013 | 26.72 | 0,7221 | 18.53 | 3.37 | 4.03 | 3.06 | |
Seed-VC (Milik Kita) | 0,9356 | 21.87 | 0,7513 | 15.63 | 3.44 | 3.94 | 3.09 | ||
Kobe Bryant (Pria) | RVCv2 | 0,9215 | 23.90 | 0,7495 | 37.23 | 3.49 | 4.06 | 3.21 | |
Seed-VC (Milik Kita) | 0,9248 | 23.40 | 0,7602 | 26.98 | 3.43 | 4.02 | 3.13 | ||
Bass (Pria) | ~ | Kebenaran Dasar | 1.0000 | 0,00 | ~ | 8.62 | ~ | ~ | ~ |
Azuma | RVCv2 | 0,9288 | 32.62 | 0,7148 | 24.88 | 3.45 | 4.10 | 3.18 | |
Seed-VC (Milik Kita) | 0,9383 | 31.57 | 0,6960 | 10.31 | 3.45 | 4.03 | 3.15 | ||
Diana | RVCv2 | 0,9403 | 30.00 | 0,7010 | 14.54 | 3.53 | 4.15 | 3.27 | |
Seed-VC (Milik Kita) | 0,9428 | 30.06 | 0,7299 | 9.66 | 3.53 | 4.11 | 3.25 | ||
Ding Zhen | RVCv2 | 0,9061 | 19.53 | 0,6922 | 25.99 | 3.36 | 4.09 | 3.08 | |
Seed-VC (Milik Kita) | 0,9169 | 18.15 | 0,7260 | 14.13 | 3.38 | 3,98 | 3.07 | ||
Kobe Bryant | RVCv2 | 0,9302 | 16.37 | 0,7717 | 41.04 | 3.51 | 4.13 | 3.25 | |
Seed-VC (Milik Kita) | 0,9176 | 17.93 | 0,7798 | 24.23 | 3.42 | 4.08 | 3.17 | ||
Sopran (Wanita) | ~ | Kebenaran Dasar | 1.0000 | 0,00 | ~ | 27.92 | ~ | ~ | ~ |
Azuma | RVCv2 | 0,9742 | 47.80 | 0,7104 | 38.70 | 3.14 | 3.85 | 2.83 | |
Seed-VC (Milik Kita) | 0,9521 | 64.00 | 0,7177 | 33.10 | 3.15 | 3.86 | 2.81 | ||
Diana | RVCv2 | 0,9754 | 46.59 | 0,7319 | 32.36 | 3.14 | 3.85 | 2.83 | |
Seed-VC (Milik Kita) | 0,9573 | 59.70 | 0,7317 | 30.57 | 3.11 | 3.78 | 2.74 | ||
Ding Zhen | RVCv2 | 0,9543 | 31.45 | 0,6792 | 40.80 | 3.41 | 4.08 | 3.14 | |
Seed-VC (Milik Kita) | 0,9486 | 33.37 | 0,6979 | 34.45 | 3.41 | 3.97 | 3.10 | ||
Kobe Bryant | RVCv2 | 0,9691 | 25.50 | 0,6276 | 61.59 | 3.43 | 4.04 | 3.15 | |
Seed-VC (Milik Kita) | 0,9496 | 32.76 | 0,6683 | 39.82 | 3.32 | 3,98 | 3.04 | ||
Tenor (Laki-laki) | ~ | Kebenaran Dasar | 1.0000 | 0,00 | ~ | 5.94 | ~ | ~ | ~ |
Azuma | RVCv2 | 0,9333 | 42.09 | 0,7832 | 16.66 | 3.46 | 4.07 | 3.18 | |
Seed-VC (Milik Kita) | 0,9162 | 48.06 | 0,7697 | 8.48 | 3.38 | 3.89 | 3.01 | ||
Diana | RVCv2 | 0,9467 | 36.65 | 0,7729 | 15.28 | 3.53 | 4.08 | 3.24 | |
Seed-VC (Milik Kita) | 0,9360 | 41.49 | 0,7920 | 8.55 | 3.49 | 3.93 | 3.13 | ||
Ding Zhen | RVCv2 | 0,9197 | 22.82 | 0,7591 | 12.92 | 3.40 | 4.02 | 3.09 | |
Seed-VC (Milik Kita) | 0,9247 | 22.77 | 0,7721 | 13.95 | 3.45 | 3.82 | 3.05 | ||
Kobe Bryant | RVCv2 | 0,9415 | 19.33 | 0,7507 | 30.52 | 3.48 | 4.02 | 3.19 | |
Seed-VC (Milik Kita) | 0,9082 | 24.86 | 0,7764 | 13.35 | 3.39 | 3.93 | 3.07 |
Meskipun Seed-VC tidak dilatih pada pembicara target, dan hanya satu ucapan acak yang digunakan sebagai prompt, Seed-VC masih terus mengungguli model RVCv2 khusus pembicara dalam hal kesamaan pembicara (SECS) dan kejelasan (CER), yang menunjukkan suara yang unggul kemampuan kloning dan ketahanan Seed-VC.
Namun, kualitas audio Seed-VC (DNSMOS) terlihat sedikit lebih rendah dibandingkan RVCv2. Kami menanggapi kelemahan ini dengan serius dan akan memberikan prioritas tinggi untuk meningkatkan kualitas audio di masa mendatang.
PR atau isu dipersilahkan jika Anda merasa perbandingan ini tidak adil atau tidak akurat.
Hasil ASR Tiongkok dihitung oleh SenseVoiceSmall
Penyematan speaker dihitung dengan model resemblyzer
Kami menetapkan +12 seminada pergeseran nada untuk konversi pria ke wanita dan -12 seminada untuk konversi wanita ke pria, jika tidak, 0 pergeseran nada
Disarankan python 3.10 di Windows atau Linux.
instalasi pip -r persyaratan.txt
Pos pemeriksaan rilis model terbaru akan diunduh secara otomatis saat inferensi pertama kali dijalankan.
Inferensi baris perintah:
python inference.py --source--target --output --diffusion-steps 25 # direkomendasikan 50~100 untuk konversi suara nyanyian--length-adjust 1.0 --inferensi-cfg-rate 0,7 --f0-condition False # disetel ke True untuk konversi suara nyanyian--auto-f0-adjust False # disetel ke True untuk menyesuaikan nada sumber secara otomatis ke tingkat nada target, biasanya tidak digunakan dalam konversi suara nyanyian--semi-tone-shift 0 # pergeseran nada dalam seminada untuk konversi suara nyanyian
Di mana:
source
adalah jalur ke file ucapan untuk diubah menjadi suara referensi
target
adalah jalur ke file ucapan sebagai referensi suara
output
adalah jalur ke direktori output
diffusion-steps
adalah jumlah langkah difusi yang digunakan, defaultnya adalah 25, gunakan 50-100 untuk kualitas terbaik, gunakan 4-10 untuk inferensi tercepat
length-adjust
adalah faktor penyesuaian panjang, defaultnya adalah 1.0, setel <1.0 untuk ucapan yang dipercepat, >1.0 untuk ucapan yang diperlambat
inference-cfg-rate
memiliki perbedaan halus dalam output, defaultnya adalah 0,7
f0-condition
adalah tanda untuk mengkondisikan nada keluaran ke nada audio sumber, defaultnya adalah False, disetel ke True untuk konversi suara nyanyian
auto-f0-adjust
adalah tanda untuk menyesuaikan nada sumber secara otomatis ke tingkat nada target, defaultnya adalah False, biasanya tidak digunakan dalam konversi suara nyanyian
semi-tone-shift
adalah pergeseran nada dalam seminada untuk konversi suara nyanyian, defaultnya adalah 0
Antarmuka web gradio:
aplikasi python.py
Kemudian buka browser dan buka http://localhost:7860/
untuk menggunakan antarmuka web.
GUI konversi suara waktu nyata:
python real-time-gui.py
PENTING: Sangat disarankan untuk menggunakan GPU untuk konversi suara secara real-time.
Beberapa pengujian kinerja telah dilakukan pada GPU Laptop NVIDIA RTX 3060, hasil dan pengaturan parameter yang disarankan tercantum di bawah ini:
Perkataan | Langkah Difusi | Tingkat CFG Inferensi | Panjang Cepat Maks | Waktu Blokir | Panjang Crossfade | Konteks ekstra (kiri) | Konteks ekstra (kanan) | Latensi (ms) | Kualitas | Waktu Inferensi per Potongan (md) |
---|---|---|---|---|---|---|---|---|---|---|
cocok untuk sebagian besar suara | 10 | 0,7 | 3.0 | 1,0 detik | 0,04 detik | 0,5 detik | 0,02 detik | 2070 md | Sedang | 849ms |
kinerja yang lebih baik untuk suara wanita bernada tinggi | 20 | 0,7 | 3.0 | 2.0 detik | 0,04 detik | 0,5 detik | 0,02 detik | 4070ms | Tinggi | 1585ms |
cocok untuk beberapa suara pria, karena persyaratan kualitas audio lebih rendah | 5 | 0,7 | 3.0 | 0,6 detik | 0,04 detik | 0,5 detik | 0,02 detik | 1270 md | Rendah | 488 md |
Inferensi lebih cepat dengan menyetel inference_cfg_rate ke 0,0, tetapi tidak yakin apakah kinerja turun... | 10 | 0,0 | 3.0 | 0,7 detik | 0,04 detik | 0,5 detik | 0,02 detik | 1470 md | Sedang | 555 md |
Anda dapat menyesuaikan parameter di GUI sesuai dengan kinerja perangkat Anda, aliran konversi suara akan berfungsi dengan baik selama Waktu Inferensi kurang dari Waktu Blokir.
Perhatikan bahwa kecepatan inferensi mungkin turun jika Anda menjalankan tugas intensif GPU lainnya (misalnya bermain game, menonton video)
Secara umum, latensi adalah sekitar 1~2 detik untuk mencegah penurunan kualitas (sifat menyedihkan dari model difusi...?), namun kami terus mencari cara untuk menguranginya.
(Logika chunking GUI dan audio dimodifikasi dari RVC, terima kasih atas implementasinya yang brilian!)
Kode rilis
Rilis model terlatih v0.1:
Demo luar angkasa Huggingface:
Halaman demo HTML (mungkin dengan perbandingan dengan model VC lainnya): Demo
Inferensi streaming
Mengurangi latensi inferensi streaming
Video demo untuk konversi suara waktu nyata
Konversi suara nyanyian
Ketahanan kebisingan untuk audio sumber & referensi
Sumber audio adalah ketahanan kebisingan
Potensi perbaikan arsitektur
Koneksi lewati gaya U-ViT
Mengubah masukan ke OpenAI Whisper
Kode untuk pelatihan data khusus
Berubah menjadi BigVGAN dari NVIDIA untuk mendekode suara nyanyian
Model versi bisikan untuk konversi suara nyanyian
Evaluasi obyektif dan perbandingan dengan RVC/SoVITS untuk konversi suara nyanyian
Tingkatkan kualitas audio
Lebih banyak lagi yang akan ditambahkan
28-10-2024:
Memperbarui model konversi suara nyanyian 44k yang disempurnakan dengan kualitas audio yang lebih baik
27-10-2024:
Menambahkan GUI konversi suara real-time
25-10-2024:
Menambahkan hasil evaluasi menyeluruh dan perbandingan dengan RVCv2 untuk konversi suara nyanyian
24-10-2024:
Model konversi suara nyanyian 44kHz yang diperbarui, dengan OpenAI Whisper sebagai input konten ucapan
07-10-2024:
Memperbarui model terlatih v0.3, mengubah encoder konten ucapan menjadi OpenAI Whisper
Menambahkan hasil evaluasi obyektif untuk model terlatih v0.3
22-09-2024:
Model konversi suara nyanyian diperbarui untuk menggunakan BigVGAN dari NVIDIA, memberikan peningkatan besar pada suara nyanyian bernada tinggi
Mendukung output chunking dan streaming untuk file audio panjang di UI Web
18-09-2024:
Model terkondisi f0 yang diperbarui untuk konversi suara nyanyian
14-09-2024:
Model terlatih v0.2 yang diperbarui, dengan ukuran lebih kecil dan langkah difusi lebih sedikit untuk mencapai kualitas yang sama, dan kemampuan tambahan untuk mengontrol pelestarian prosodi
Menambahkan skrip inferensi baris perintah
Menambahkan instruksi instalasi dan penggunaan