Ini adalah kerangka kerja teks-ke-kebesaran yang bertujuan untuk mendukung penelitian cepat dan pengembangan produk. Fitur utama termasuk
Kontribusi dipersilakan.
Lihat demo di sini 
git clone https://github.com/ranchlai/mandarin-tts.git
cd mandarin-tts
git submodule update --force --recursive --init --remote
pip install -e . f
Dua contoh disediakan di sini: Biaobei dan Aishell3.
Untuk melatih model Anda sendiri, pertama -tama buat salinan dari contoh yang ada, lalu siapkan fitur Melelspectrogram menggunakan wav2mel.py oleh
cd examples
python wav2mel.py -c ./aishell3/config.yaml -w < aishell3_wav_folder > -m < mel_folder > -d cpuSiapkan file SCP yang diperlukan untuk pelatihan,
cd examples/aishell3
python prepare.py --wav_folder < aishell3_wav_folder > --mel_folder < mel_folder > --dst_folder ./train/Ini akan menghasilkan file SCP yang diperlukan oleh config.yaml (di bagian dataset/kereta). Anda juga perlu memeriksa bahwa semuanya baik -baik saja di file konfigurasi. Biasanya Anda tidak perlu mengubah kode.
Sekarang Anda dapat memulai pelatihan dengan
cd examples/aishell3
python ../../mtts/train.py -c config.yaml -d cudaUntuk dataset Biaobei, alur kerja adalah sama, kecuali bahwa tidak ada penyematan speaker tetapi Anda dapat menambahkan embedding prosodi.
Lebih banyak contoh akan ditambahkan. Tolong tetap.
Saat ini dua contoh disediakan, dan pos pemeriksaan/konfigurasi yang sesuai dirangkum sebagai berikut.
| dataset | pos pemeriksaan | konfigurasi |
|---|---|---|
| Aishell3 | link | link |
| Biaobei | link | link |
Vokoder memainkan peran mengonversi Melspectrograms menjadi bentuk gelombang. Mereka ditambahkan sebagai submodul dan akan dilatih dalam proyek ini. Karenanya Anda harus mengunduh pos pemeriksaan sebelum disintesis. Dalam pelatihan, vokoder tidak diperlukan, karena Anda dapat memantau proses pelatihan dari pengangkutan yang dihasilkan dan juga kurva kerugian. Saat ini kami mendukung vokoder berikut,
| Vocoder | pos pemeriksaan | GitHub |
|---|---|---|
| Waveglow | link | link |
| Hifi-gan | link | link |
| Vokgan | tautan tautan | link |
| Melgan | link | link |
Semua vocoders akan siap setelah menjalankan git submodule update --force --recursive --init --remote . Namun, Anda harus mengunduh pos pemeriksaan secara manual dan benar mengatur jalur di file config.yaml.
Input.txt harus konsisten dengan pengaturan Anda dari emb_type1 ke emb_type_n dalam file config, yaitu, tipe yang sama, pesanan yang sama.
Untuk memfasilitasi transkripsi Hanzi ke Pinyin, Anda dapat mencoba:
cd examples/aishell3/
python ../../mtts/text/gp2py.py -t "为适应新的网络传播方式和读者阅读习惯"
>> sil wei4 shi4 ying4 xin1 de5 wang3 luo4 chuan2 bo1 fang1 shi4 he2 du2 zhe3 yue4 du2 xi2 guan4 sil|sil 为 适 应 新 的 网 络 传 播 方 式 和 读 者 阅 读 习 惯 sil
Tidak Anda dapat menyalin teks ke input.txt, dan ingat untuk meletakkan nama dan ID speaker yang ditentukan sendiri, dipisahkan oleh '|'.
Dengan pos pemeriksaan dan teks di atas, akhirnya Anda dapat menjalankan proses sintesis,
python ../../mtts/synthesize.py -d cuda --c config.yaml --checkpoint ./checkpoints/checkpoint_1240000.pth.tar -i input.txtSilakan periksa file config.yaml untuk pengaturan vokoder.
Jika beruntung, contoh audio dapat ditemukan di folder output.