Update app.py
Browse files
app.py
CHANGED
@@ -134,11 +134,11 @@ with gr.Blocks() as demo:
|
|
134 |
|
135 |
with gr.Row():
|
136 |
lang1_select = gr.Dropdown(label="Select Language 1", choices=[f"{language_names.get(lang, lang)}" for lang in languages], value="English (United States)")
|
137 |
-
voice1_select = gr.Dropdown(label="Select Voice 1"
|
138 |
|
139 |
with gr.Row():
|
140 |
lang2_select = gr.Dropdown(label="Select Language 2", choices=[f"{language_names.get(lang, lang)}" for lang in languages], value="None")
|
141 |
-
voice2_select = gr.Dropdown(label="Select Voice 2"
|
142 |
|
143 |
generate_btn = gr.Button("Generate Script")
|
144 |
script_output = gr.Textbox(label="Generated Script", lines=10)
|
@@ -151,6 +151,17 @@ with gr.Blocks() as demo:
|
|
151 |
return gr.Dropdown(choices=[], value=None)
|
152 |
selected_lang = next((key for key, value in language_names.items() if value == lang), None)
|
153 |
voices = voice_dict.get(selected_lang, [])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
return gr.Dropdown(choices=voices, value=voices[0] if voices else None)
|
155 |
|
156 |
lang1_select.change(update_voices, inputs=[lang1_select], outputs=[voice1_select])
|
@@ -169,5 +180,9 @@ with gr.Blocks() as demo:
|
|
169 |
generate_btn.click(generate_script_wrapper, inputs=[api_key_input, content_input, duration], outputs=script_output)
|
170 |
render_btn.click(render_podcast_wrapper, inputs=[api_key_input, script_output, voice1_select, voice2_select], outputs=audio_output)
|
171 |
|
|
|
|
|
|
|
|
|
172 |
if __name__ == "__main__":
|
173 |
demo.launch()
|
|
|
134 |
|
135 |
with gr.Row():
|
136 |
lang1_select = gr.Dropdown(label="Select Language 1", choices=[f"{language_names.get(lang, lang)}" for lang in languages], value="English (United States)")
|
137 |
+
voice1_select = gr.Dropdown(label="Select Voice 1")
|
138 |
|
139 |
with gr.Row():
|
140 |
lang2_select = gr.Dropdown(label="Select Language 2", choices=[f"{language_names.get(lang, lang)}" for lang in languages], value="None")
|
141 |
+
voice2_select = gr.Dropdown(label="Select Voice 2")
|
142 |
|
143 |
generate_btn = gr.Button("Generate Script")
|
144 |
script_output = gr.Textbox(label="Generated Script", lines=10)
|
|
|
151 |
return gr.Dropdown(choices=[], value=None)
|
152 |
selected_lang = next((key for key, value in language_names.items() if value == lang), None)
|
153 |
voices = voice_dict.get(selected_lang, [])
|
154 |
+
|
155 |
+
# Check if the default voice is in the list of available voices
|
156 |
+
default_voice1 = "Microsoft Server Speech Text to Speech Voice (en-US, AvaNeural)"
|
157 |
+
default_voice2 = "Microsoft Server Speech Text to Speech Voice (en-US, AndrewNeural)"
|
158 |
+
|
159 |
+
if lang == "English (United States)":
|
160 |
+
if default_voice1 in voices:
|
161 |
+
return gr.Dropdown(choices=voices, value=default_voice1)
|
162 |
+
elif default_voice2 in voices:
|
163 |
+
return gr.Dropdown(choices=voices, value=default_voice2)
|
164 |
+
|
165 |
return gr.Dropdown(choices=voices, value=voices[0] if voices else None)
|
166 |
|
167 |
lang1_select.change(update_voices, inputs=[lang1_select], outputs=[voice1_select])
|
|
|
180 |
generate_btn.click(generate_script_wrapper, inputs=[api_key_input, content_input, duration], outputs=script_output)
|
181 |
render_btn.click(render_podcast_wrapper, inputs=[api_key_input, script_output, voice1_select, voice2_select], outputs=audio_output)
|
182 |
|
183 |
+
# Set initial values for voice dropdowns
|
184 |
+
voice1_select.value = "Microsoft Server Speech Text to Speech Voice (en-US, AvaNeural)"
|
185 |
+
voice2_select.value = "Microsoft Server Speech Text to Speech Voice (en-US, AndrewNeural)"
|
186 |
+
|
187 |
if __name__ == "__main__":
|
188 |
demo.launch()
|