Jiangxz01 commited on
Commit
fe462a0
·
verified ·
1 Parent(s): 62ff08b

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +34 -36
app.py CHANGED
@@ -115,26 +115,20 @@ Follow this JSON example structure, MUST be in {language} language:
115
 
116
  async def tts_generate(input_text, speaker1, speaker2):
117
  voice_names = {
118
- "YunJhe - 臺灣國語 (Male)": "zh-TW-YunJheNeural",
119
- "HsiaoChen - 臺灣國語 (Female)": "zh-TW-HsiaoChenNeural",
120
- "HsiaoYu - 臺灣國語 (Female)": "zh-TW-HsiaoYuNeural",
121
- "HiuGaai - 中文 (Female)": "zh-HK-HiuGaaiNeural",
122
- "HiuMaan - 中文 (Female)": "zh-HK-HiuMaanNeural",
123
- "WanLung - 中文 (Female)": "zh-HK-WanLungNeural",
124
- "Xiaoxiao - 中文 (Female)": "zh-CN-XiaoxiaoNeural",
125
- "Xiaoyi - 中文 (Female)": "zh-CN-XiaoyiNeural",
126
- "Yunjian - 中文 (Male)": "zh-CN-YunjianNeural",
127
- "Yunxi - 中文 (Male)": "zh-CN-YunxiNeural",
128
- "Yunxia - 中文 (Male)": "zh-CN-YunxiaNeural",
129
- "Yunyang - 中文 (Male)": "zh-CN-YunyangNeural",
130
- "Xiaobei - 中文 (Female)": "zh-CN-liaoning-XiaobeiNeural",
131
- "Xiaoni - 中文 (Female)": "zh-CN-shaanxi-XiaoniNeural",
132
  "Andrew - English (Male)": "en-US-AndrewMultilingualNeural",
133
  "Ava - English (Female)": "en-US-AvaMultilingualNeural",
134
  "Brian - English (Male)": "en-US-BrianMultilingualNeural",
135
  "Emma - English (Female)": "en-US-EmmaMultilingualNeural",
136
- "Masaru - Japanese (Male)": "ja-JP-MasaruMultilingualNeural",
137
- "Hyunsu - Korean (Male)": "ko-KR-HyunsuMultilingualNeural",
138
  "Florian - German (Male)": "de-DE-FlorianMultilingualNeural",
139
  "Seraphina - German (Female)": "de-DE-SeraphinaMultilingualNeural",
140
  "Remy - French (Male)": "fr-FR-RemyMultilingualNeural",
@@ -242,6 +236,16 @@ body {
242
  padding: 5px !important;
243
  border-radius: 10px !important;
244
  }
 
 
 
 
 
 
 
 
 
 
245
  """
246
 
247
  with gr.Blocks(theme=gr.themes.Monochrome(), css=custom_css) as iface:
@@ -260,26 +264,20 @@ with gr.Blocks(theme=gr.themes.Monochrome(), css=custom_css) as iface:
260
  )
261
 
262
  speaker_choices = [
263
- "YunJhe - 臺灣國語 (Male)",
264
- "HsiaoChen - 臺灣國語 (Female)",
265
- "HsiaoYu - 臺灣國語 (Female)",
266
- "HiuGaai - 中文 (Female)",
267
- "HiuMaan - 中文 (Female)",
268
- "WanLung - 中文 (Female)",
269
- "Xiaoxiao - 中文 (Female)",
270
- "Xiaoyi - 中文 (Female)",
271
- "Yunjian - 中文 (Male)",
272
- "Yunxi - 中文 (Male)",
273
- "Yunxia - 中文 (Male)",
274
- "Yunyang - 中文 (Male)",
275
- "Xiaobei - 中文 (Female)",
276
- "Xiaoni - 中文 (Female)",
277
  "Andrew - English (Male)",
278
  "Ava - English (Female)",
279
  "Brian - English (Male)",
280
  "Emma - English (Female)",
281
- "Masaru - Japanese (Male)",
282
- "Hyunsu - Korean (Male)",
283
  "Florian - German (Male)",
284
  "Seraphina - German (Female)",
285
  "Remy - French (Male)",
@@ -288,7 +286,7 @@ with gr.Blocks(theme=gr.themes.Monochrome(), css=custom_css) as iface:
288
 
289
  Speaker_1 = gr.Dropdown(
290
  choices=speaker_choices,
291
- value="YunJhe - 臺灣國語 (Male)",
292
  label="主持人的語音",
293
  interactive=True,
294
  scale=2,
@@ -296,7 +294,7 @@ with gr.Blocks(theme=gr.themes.Monochrome(), css=custom_css) as iface:
296
  )
297
  Speaker_2 = gr.Dropdown(
298
  choices=speaker_choices,
299
- value="HsiaoChen - 臺灣國語 (Female)",
300
  label="來賓的語音",
301
  interactive=True,
302
  scale=2,
@@ -305,9 +303,9 @@ with gr.Blocks(theme=gr.themes.Monochrome(), css=custom_css) as iface:
305
 
306
  with gr.Row():
307
  generate_button = gr.Button("生成", scale=2, elem_classes="gen-button")
308
- api_key = gr.Textbox(label="API Key", type="password", placeholder="API authentication key for large language models", scale=1)
309
 
310
- audio_output = gr.Audio(label="Generated Podcast Audio")
311
  podcast_script = gr.Textbox(label="Generated Podcast 劇本")
312
  generate_button.click(fn=process_podcast, inputs=[input_text, Language, Speaker_1, Speaker_2, api_key], outputs=[podcast_script, audio_output])
313
 
 
115
 
116
  async def tts_generate(input_text, speaker1, speaker2):
117
  voice_names = {
118
+ "家豪 - 臺灣國語 (Male)": "zh-TW-YunJheNeural",
119
+ "淑芬 - 臺灣國語 (Female)": "zh-TW-HsiaoChenNeural",
120
+ "子晴 - 臺灣國語 (Female)": "zh-TW-HsiaoYuNeural",
121
+ "品妍 - 中文 (Female)": "zh-CN-XiaoxiaoNeural",
122
+ "美玲 - 中文 (Female)": "zh-CN-XiaoyiNeural",
123
+ "建宏 - 中文 (Male)": "zh-CN-YunjianNeural",
124
+ "品睿 - 中文 (Male)": "zh-CN-YunxiNeural",
125
+ "宥廷 - 中文 (Male)": "zh-CN-YunxiaNeural",
126
+ "志明 - 中文 (Male)": "zh-CN-YunyangNeural",
127
+ "雨霏 - 中文 (Female)": "zh-CN-liaoning-XiaobeiNeural",
 
 
 
 
128
  "Andrew - English (Male)": "en-US-AndrewMultilingualNeural",
129
  "Ava - English (Female)": "en-US-AvaMultilingualNeural",
130
  "Brian - English (Male)": "en-US-BrianMultilingualNeural",
131
  "Emma - English (Female)": "en-US-EmmaMultilingualNeural",
 
 
132
  "Florian - German (Male)": "de-DE-FlorianMultilingualNeural",
133
  "Seraphina - German (Female)": "de-DE-SeraphinaMultilingualNeural",
134
  "Remy - French (Male)": "fr-FR-RemyMultilingualNeural",
 
236
  padding: 5px !important;
237
  border-radius: 10px !important;
238
  }
239
+ .api-background {
240
+ background-color: #FFCFB3 !important;
241
+ padding: 5px !important;
242
+ border-radius: 10px !important;
243
+ }
244
+ .audio-background {
245
+ background-color: #E78F81 !important;
246
+ padding: 5px !important;
247
+ border-radius: 10px !important;
248
+ }
249
  """
250
 
251
  with gr.Blocks(theme=gr.themes.Monochrome(), css=custom_css) as iface:
 
264
  )
265
 
266
  speaker_choices = [
267
+ "家豪 - 臺灣國語 (Male)",
268
+ "淑芬 - 臺灣國語 (Female)",
269
+ "子晴 - 臺灣國語 (Female)",
270
+ "品睿 - 中文 (Male)",
271
+ "品妍 - 中文 (Female)",
272
+ "志明 - 中文 (Male)",
273
+ "美玲 - 中文 (Female)",
274
+ "建宏 - 中文 (Male)",
275
+ "宥廷 - 中文 (Male)",
276
+ "雨霏 - 中文 (Female)",
 
 
 
 
277
  "Andrew - English (Male)",
278
  "Ava - English (Female)",
279
  "Brian - English (Male)",
280
  "Emma - English (Female)",
 
 
281
  "Florian - German (Male)",
282
  "Seraphina - German (Female)",
283
  "Remy - French (Male)",
 
286
 
287
  Speaker_1 = gr.Dropdown(
288
  choices=speaker_choices,
289
+ value="家豪 - 臺灣國語 (Male)",
290
  label="主持人的語音",
291
  interactive=True,
292
  scale=2,
 
294
  )
295
  Speaker_2 = gr.Dropdown(
296
  choices=speaker_choices,
297
+ value="品妍 - 中文 (Female)",
298
  label="來賓的語音",
299
  interactive=True,
300
  scale=2,
 
303
 
304
  with gr.Row():
305
  generate_button = gr.Button("生成", scale=2, elem_classes="gen-button")
306
+ api_key = gr.Textbox(label="API Key", type="password", placeholder="API authentication key for large language models", scale=1, elem_classes="api-background")
307
 
308
+ audio_output = gr.Audio(label="Generated Podcast Audio", elem_classes="audio-background")
309
  podcast_script = gr.Textbox(label="Generated Podcast 劇本")
310
  generate_button.click(fn=process_podcast, inputs=[input_text, Language, Speaker_1, Speaker_2, api_key], outputs=[podcast_script, audio_output])
311