Spaces:
Sleeping
Sleeping
File size: 2,012 Bytes
914c7b4 ff92946 914c7b4 ff92946 b308ed7 914c7b4 b308ed7 914c7b4 ff92946 914c7b4 b308ed7 914c7b4 b308ed7 914c7b4 b308ed7 914c7b4 b308ed7 914c7b4 b308ed7 ff92946 b308ed7 ff92946 b308ed7 ff92946 b308ed7 ff92946 33c11bc 914c7b4 b308ed7 914c7b4 |
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 53 54 55 56 57 |
import gradio as gr
import uuid
import requests
from datetime import timedelta
from TTS.api import TTS
import locale
locale.getpreferredencoding = lambda: "UTF-8"
tts = TTS("tts_models/multilingual/multi-dataset/xtts_v2", gpu=True)
tts = TTS("xtts_v2.0.2", gpu=True)
async def generate_audio(text_input: str, creator: str) -> str:
refer_voices = ''
unique_id = str(uuid.uuid4())
output_file = f'{unique_id}.wav'
match creator:
case 'Roomie':
refer_voices = ["./assets/roomie/roomie_emocionado_base_1.wav", "./assets/roomie/ref_12.wav", "./assets/roomie/ref_11.wav", "./assets/roomie/ref_10.wav",
"./assets/roomie/ref_1.wav", "./assets/roomie/ref_6.wav", "./assets/roomie/ref_7.wav", "./assets/roomie/ref_8.wav", "./assets/roomie/roomie_emocionado_base_2.wav",]
case 'Xavy':
refer_voices = ["./assets/xavy/neutro_3.wav",
"./assets/xavy/neutro_1.wav", "./assets/xavy/neutro_2.wav"]
case 'Bella':
refer_voices = ["./assets/bella/neutro_2.wav",
"./assets/bella/neutro_1.wav", "./assets/bella/neutro_3.wav"]
case 'Julia':
refer_voices = ["assets/julia/neutro_4_Final_fast.wav", "assets/julia/enfadado_1_Final.wav", "assets/julia/enfadado_2_Final.wav",
"assets/julia/enfadado_3_Final.wav", "assets/julia/emocionada_1.wav", "assets/julia/emocionada_2_Final.wav"]
tts.tts_to_file(text=text_input,
file_path=output_file,
speaker_wav=refer_voices,
language="en",
split_sentences=True,
)
source_audio_file_name = output_file
return gr.Audio(value=source_audio_file_name)
app = gr.Interface(
fn=generate_audio,
inputs=[gr.Textbox(label='Text to Speach'), gr.Dropdown(
['Roomie', 'Xavy', 'Bella', 'Julia'], label="Coice your creator")],
outputs=['audio']
)
app.launch()
|