One Shot Voice Cloning
1.0.0
英語| 中文
❗現在我們提供了推論代碼和預訓練模型。您可以生成想要的任何文本聲音。
模型訓練只會使用中性情緒的語料庫,並且不使用任何強烈的情感語音。
台外風格轉移仍然存在巨大的挑戰。受培訓語料庫的限制,揚聲器插入或無監督的樣式學習(例如GST)的方法很難模仿看不見的數據。
在UNET網絡和ADAIN層的幫助下,我們提出的算法具有強大的揚聲器和样式傳輸功能。
演示結果
紙鏈接
強烈建議使用COLAB筆記本進行測試。

現在,您只需要使用參考語音進行一次性語音克隆,而不再需要手動輸入持續時間統計信息。
?作者正在準備基於Aishell3的UNET-TTS的簡單,清晰且有據可查的培訓過程。
它包含:
敬請關注!
cd One-Shot-Voice-Cloning/TensorFlowTTS
pip install .
(or python setup.py install)選項1:修改要克隆在unettts_syn.py文件中的參考音頻文件。 (有關更多詳細信息,請參見此文件)
cd One-Shot-Voice-Cloning
CUDA_VISIBLE_DEVICES=0 python UnetTTS_syn.py選項2:筆記本
注意:請在系統路徑中添加單次彈藥路徑。否則將無法從unettts_syn.py文件導入所需類的UNETTT。
import sys
sys . path . append ( "<your repository's parent directory>/One-Shot-Voice-Cloning" )
from UnetTTS_syn import UnetTTS
from tensorflow_tts . audio_process import preprocess_wav
"""Inint models"""
models_and_params = { "duration_param" : "train/configs/unetts_duration.yaml" ,
"duration_model" : "models/duration4k.h5" ,
"acous_param" : "train/configs/unetts_acous.yaml" ,
"acous_model" : "models/acous12k.h5" ,
"vocoder_param" : "train/configs/multiband_melgan.yaml" ,
"vocoder_model" : "models/vocoder800k.h5" }
feats_yaml = "train/configs/unetts_preprocess.yaml"
text2id_mapper = "models/unetts_mapper.json"
Tts_handel = UnetTTS ( models_and_params , text2id_mapper , feats_yaml )
"""Synthesize arbitrary text cloning voice using a reference speech"""
wav_fpath = "./reference_speech.wav"
ref_audio = preprocess_wav ( wav_fpath , source_sr = 16000 , normalize = True , trim_silence = True , is_sil_pad = True ,
vad_window_length = 30 ,
vad_moving_average_width = 1 ,
vad_max_silence_length = 1 )
# Inserting #3 marks into text is regarded as punctuation, and synthetic speech can produce pause.
text = "一句话#3风格迁移#3语音合成系统"
syn_audio , _ , _ = Tts_handel . one_shot_TTS ( text , ref_audio )https://github.com/tensorspeech/tensorflowtts
https://github.com/corentinj/realtim-voice-cloning