File size: 1,102 Bytes
b996e0b
8bc1b1b
 
a6dfc58
 
 
 
8bc1b1b
 
a6dfc58
b996e0b
 
 
 
8bc1b1b
6ddcd8a
8bc1b1b
 
a6dfc58
6ddcd8a
8bc1b1b
1da77a0
 
a6dfc58
8bc1b1b
3f6ca44
8bc1b1b
1da77a0
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import gradio as gr
from nemo.collections.tts.models import FastPitchModel
from nemo.collections.tts.models import HifiGanModel
from nemo.collections.tts.models import MixerTTSModel

# spec_generator_2 = MixerTTSModel.from_pretrained("tts_en_lj_mixerttsx")
# model1 = HifiGanModel.from_pretrained(model_name="tts_en_lj_hifigan_ft_mixerttsx")

spec_generator = FastPitchModel.from_pretrained("tts_en_fastpitch_multispeaker")
voc_model = HifiGanModel.from_pretrained(model_name="tts_en_hifitts_hifigan_ft_fastpitch")

def greet(name):
    return "Hello " + name + "!!"

def generate_tts(text: str, speaker: int = 0):
    sr = 22050
    parsed = spec_generator.parse(text)
    spectrogram = spec_generator.generate_spectrogram(tokens=parsed, speaker=speaker)
    audio = voc_model.convert_spectrogram_to_audio(spec=spectrogram)
    return sr, audio

def run():
    demo = gr.Interface(
        fn=generate_tts,
        inputs=["text",
                gr.Slider(0, 10, step=1)],
        outputs="audio",
    )

    demo.launch(server_name="0.0.0.0", server_port=7860)


if __name__ == "__main__":
    run()