|
import gradio as gr |
|
from TTS.api import TTS |
|
import os |
|
|
|
|
|
tts = TTS("tts_models/multilingual/multi-dataset/your_tts").to("cpu") |
|
|
|
def generate_cloned_voice(text, reference_audio, language): |
|
output_path = "output.wav" |
|
|
|
|
|
tts.tts_to_file(text=text, speaker_wav=reference_audio, file_path=output_path, language=language) |
|
|
|
return output_path |
|
|
|
print(tts.languages) |
|
|
|
|
|
interface = gr.Interface( |
|
fn=generate_cloned_voice, |
|
inputs=[ |
|
gr.Textbox(label="Enter Translated Text"), |
|
gr.Audio(label="Upload Reference Audio", type="filepath"), |
|
gr.Dropdown(["en", "fr", "de", "es", "it"], label="Select Target Language", value="en") |
|
], |
|
outputs=gr.Audio(label="Generated Cloned Voice"), |
|
title="Free Voice Cloning API", |
|
description="Upload a sample voice and input text. Select a language, and the system will generate the text in the same voice." |
|
) |
|
|
|
|
|
interface.launch() |
|
|