NTT123
add fast cpp wavegru
d1a84ee
raw
history blame
No virus
1.16 kB
import gradio as gr
import os
## build wavegru-cpp
os.system("go get github.com/bazelbuild/bazelisk")
os.system("bazelisk build wavegru_mod -c opt --copt=-march=native")
from inference import load_tacotron_model, load_wavegru_net, text_to_mel, mel_to_wav
from wavegru_cpp import load_wavegru_cpp, extract_weight_mask
alphabet, tacotron_net, tacotron_config = load_tacotron_model(
"./alphabet.txt", "./tacotron.toml", "./pretrained_model_ljs_500k.ckpt"
)
wavegru_config, wavegru_net = load_wavegru_net(
"./wavegru.yaml", "./wavegru_vocoder_tpu_gta_preemphasis_pruning_v7_0040000.ckpt"
)
wave_cpp_weight_mask = extract_weight_mask(wavegru_net)
wavecpp = load_wavegru_cpp(wave_cpp_weight_mask)
def speak(text):
mel = text_to_mel(tacotron_net, text, alphabet, tacotron_config)
y = mel_to_wav(wavegru_net, wavecpp, mel, wavegru_config)
return 24_000, y
title = "WaveGRU-TTS"
description = "WaveGRU text-to-speech demo."
gr.Interface(
fn=speak,
inputs="text",
outputs="audio",
title=title,
description=description,
theme="default",
allow_screenshot=False,
allow_flagging="never",
).launch(debug=False)