Spaces:
Running
on
Zero
Running
on
Zero
File size: 1,672 Bytes
8aa105f 8cc3802 6322243 8cc3802 19b52d8 6322243 8cc3802 19b52d8 8cc3802 19b52d8 8aa105f 19b52d8 |
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
import gradio as gr
import os
import requests
from fireredtts.fireredtts import FireRedTTS
def download_file(url, filename):
response = requests.get(url)
if response.status_code == 200:
with open(filename, 'wb') as file:
file.write(response.content)
print(f"File downloaded successfully: {filename}")
else:
print(f"Failed to download file: HTTP {response.status_code}")
download_file('https://huggingface.co/fireredteam/FireRedTTS/resolve/main/fireredtts_gpt.pt',
'pretrained_models/fireredtts_gpt.pt')
download_file('https://huggingface.co/fireredteam/FireRedTTS/resolve/main/fireredtts_speaker.bin',
'pretrained_models/fireredtts_speaker.bin')
download_file('https://huggingface.co/fireredteam/FireRedTTS/resolve/main/fireredtts_token2wav.pt',
'pretrained_models/fireredtts_token2wav.pt')
tts = FireRedTTS(
config_path="configs/config_24k.json",
pretrained_path='pretrained_models',
)
def tts_inference(text, prompt_wav='examples/prompt_1.wav', lang='zh'):
syn_audio = tts.synthesize(
prompt_wav=prompt_wav,
text=text,
lang=lang,
)
return syn_audio.detach().cpu()
iface = gr.Interface(
fn=tts_inference,
inputs=[
gr.Textbox(label="输入文本"),
# gr.Dropdown(["en-US-Wav2Vec2-Kendra", "en-US-Wav2Vec2-John"], label="选择声音"),
# gr.Slider(minimum=0.5, maximum=2.0, value=1.0, label="语速")
],
outputs=gr.Audio(label="生成的语音"),
title="TTS Demo",
description="Enter some text and listen to the generated speech."
)
if __name__ == "__main__":
iface.launch() |