File size: 2,073 Bytes
5592e3b
 
 
 
358d190
 
e98a54a
358d190
 
e98a54a
358d190
 
 
 
b01c955
358d190
 
 
 
 
 
5592e3b
358d190
5592e3b
 
 
 
f24cc04
5592e3b
358d190
5592e3b
499e45c
b01c955
358d190
5592e3b
358d190
5592e3b
e98a54a
5592e3b
 
 
 
 
 
a230e6f
 
 
5592e3b
a230e6f
 
 
 
 
 
 
 
5592e3b
 
358d190
 
5592e3b
358d190
a230e6f
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
58
59
60
61
62
63
64
from microsoft_tts import edge_tts_pipeline
import gradio as gr
import click
from lang_data import languages

# TTS function
def tts(text, Language='English', Gender='Male', translate_text_flag=False, no_silence=True):
    voice_name = None
    tts_save_path = ''
    speed = 1.0  # Set speed directly in the function
    edge_save_path = edge_tts_pipeline(
        text, Language, voice_name, Gender, 
        translate_text_flag=translate_text_flag, 
        no_silence=no_silence, speed=speed, 
        tts_save_path=tts_save_path, long_sentence=True  # Always set long_sentence to True
    )
    return edge_save_path


# Gradio setup
source_lang_list = ['English']
source_lang_list.extend(languages.keys())

@click.command()
@click.option("--debug", is_flag=True, default=False, help="Enable debug mode.")
@click.option("--share", is_flag=True, default=False, help="Enable sharing of the interface.")
def main(debug, share):
    description = """"""
    gr.Markdown(description)
    
    # Define Gradio inputs and outputs
    example = [["This is just the beginning of the journey of HundAI Solutions, HundAI will continue to build AI tools for Hund Ecosystem.",
                "English", "Female", 1.0, False, False]]
    
    gradio_inputs = [
        gr.Textbox(label="Enter Text", lines=3, placeholder="Enter your text here..."),
        gr.Dropdown(label="Language", choices=source_lang_list, value="English"),
        gr.Dropdown(label="Gender", choices=['Male', 'Female'], value="Female")
    ]
    
    gradio_outputs = [
        gr.Audio(label="Audio File")
    ]

    # Apply theme
    theme = 'Hev832/Applio'  # Replace with your desired Hugging Face theme

    # Create Gradio interface
    demo = gr.Interface(
        fn=tts, 
        inputs=gradio_inputs, 
        outputs=gradio_outputs, 
        title="", 
        examples=example, 
        theme=theme  # Apply the theme here
    )

    # Launch Gradio with command-line options
    demo.queue().launch(allowed_paths=[f"./audio"], debug=debug, share=share)

if __name__ == "__main__":
    main()