Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import torch | |
| from TTS.api import TTS | |
| import os | |
| # Aceptar términos de uso de Coqui TTS | |
| os.environ["COQUI_TOS_AGREED"] = "1" | |
| # Configurar para usar CPU si no hay GPU disponible | |
| device = "cuda" if torch.cuda.is_available() else "cpu" | |
| # Inicializar el modelo de TTS con manejo seguro de carga | |
| tts = TTS("tts_models/multilingual/multi-dataset/xtts_v2", gpu=torch.cuda.is_available()).to(device) | |
| # Función para clonar la voz y generar el archivo de audio | |
| def clone(text, audio): | |
| output_path = "./output.wav" | |
| tts.tts_to_file(text=text, speaker_wav=audio, language="es", file_path=output_path) | |
| return output_path | |
| # Interfaz de Gradio | |
| iface = gr.Interface( | |
| fn=clone, | |
| inputs=[ | |
| gr.Textbox(label='Text'), | |
| gr.Audio(type='filepath', label='Voice reference audio file') | |
| ], | |
| outputs=gr.Audio(type='filepath'), | |
| title='cn-speech-esss', | |
| description=""" | |
| by [Gitgato](gitgato) | |
| This space uses the xtts_v2 model. Non-commercial use only. [Coqui Public Model License](https://coqui.ai/cpml) | |
| Please ❤️ this Space. <a href="mailto:a@om">Email me</a>. | |
| """, | |
| theme=gr.themes.Base(primary_hue="teal", secondary_hue="teal", neutral_hue="slate"), | |
| ) | |
| # Lanzar la interfaz | |
| iface.launch() | |