|
import gradio as gr |
|
import numpy as np |
|
|
|
from nemo.collections.tts.models import FastPitchModel |
|
spec_generator = FastPitchModel.from_pretrained(model_name="inOXcrm/German_multispeaker_FastPitch_nemo") |
|
|
|
|
|
|
|
from nemo.collections.tts.models import HifiGanModel |
|
model = HifiGanModel.from_pretrained(model_name="tts_de_hui_hifigan_ft_fastpitch_multispeaker_5") |
|
|
|
|
|
|
|
def generate_audio(speaker_id, input_txt): |
|
sr=44100 |
|
parsed = spec_generator.parse(input_txt) |
|
spectrogram = spec_generator.generate_spectrogram(tokens=parsed, speaker=int(speaker_id)) |
|
audio = model.convert_spectrogram_to_audio(spec=spectrogram) |
|
audio = audio.to('cpu').detach().numpy()[0] |
|
audio = audio / np.abs(audio).max() |
|
return (sr, audio) |
|
|
|
|
|
gr.Interface( |
|
generate_audio, |
|
[ |
|
gr.Textbox(type="text", value=1, label="Speaker ID (1-5)"), |
|
gr.Textbox(type="text", value="Hallo, wie geht es ihnen?", label="Input Text") |
|
], |
|
"audio", |
|
).launch() |
|
|