naonauno commited on
Commit
4ae4a65
·
verified ·
1 Parent(s): 4a80f3a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +74 -54
app.py CHANGED
@@ -184,54 +184,58 @@ with gr.Blocks(title="Vevo Voice Conversion") as demo:
184
  interactive=True
185
  )
186
 
187
- with gr.Row():
188
- with gr.Column():
189
- with gr.Group(visible=True) as audio_inputs:
190
- content_audio = gr.Audio(
191
- label="Source Audio",
192
- type="filepath",
193
- interactive=True
194
- )
195
-
196
- ref_style_audio = gr.Audio(
197
- label="Reference Style Audio",
198
- type="filepath",
199
- interactive=True
200
- )
201
-
202
- ref_timbre_audio = gr.Audio(
203
- label="Reference Timbre Audio",
204
- type="filepath",
205
- interactive=True
206
- )
207
-
208
- with gr.Column():
209
- with gr.Group(visible=False) as text_inputs:
210
- src_text = gr.Textbox(
211
- label="Source Text",
212
- placeholder="Enter text for TTS mode",
213
- interactive=True
214
- )
215
-
216
- ref_text = gr.Textbox(
217
- label="Reference Style Text",
218
- placeholder="Optional: Enter reference text",
219
- interactive=True
220
- )
221
-
222
- src_language = gr.Dropdown(
223
- choices=["en", "zh"],
224
- value="en",
225
- label="Source Language",
226
- interactive=True
227
- )
228
-
229
- ref_language = gr.Dropdown(
230
- choices=["en", "zh"],
231
- value="en",
232
- label="Reference Language",
233
- interactive=True
234
- )
 
 
 
 
235
 
236
  with gr.Row():
237
  steps = gr.Slider(
@@ -249,16 +253,32 @@ with gr.Blocks(title="Vevo Voice Conversion") as demo:
249
  # Handle visibility of components based on mode
250
  def update_interface(mode):
251
  is_tts = mode == "tts"
252
- return {
253
- audio_inputs: not is_tts,
254
- text_inputs: is_tts,
255
- ref_style_audio: mode != "timbre",
256
- }
 
 
 
 
 
 
 
 
257
 
258
  mode.change(
259
  fn=update_interface,
260
  inputs=[mode],
261
- outputs=[audio_inputs, text_inputs, ref_style_audio]
 
 
 
 
 
 
 
 
262
  )
263
 
264
  # Handle generation
 
184
  interactive=True
185
  )
186
 
187
+ # Audio inputs
188
+ content_audio = gr.Audio(
189
+ label="Source Audio",
190
+ type="filepath",
191
+ visible=True,
192
+ interactive=True
193
+ )
194
+
195
+ ref_style_audio = gr.Audio(
196
+ label="Reference Style Audio",
197
+ type="filepath",
198
+ visible=True,
199
+ interactive=True
200
+ )
201
+
202
+ ref_timbre_audio = gr.Audio(
203
+ label="Reference Timbre Audio",
204
+ type="filepath",
205
+ visible=True,
206
+ interactive=True
207
+ )
208
+
209
+ # Text inputs
210
+ src_text = gr.Textbox(
211
+ label="Source Text",
212
+ placeholder="Enter text for TTS mode",
213
+ visible=False,
214
+ interactive=True
215
+ )
216
+
217
+ ref_text = gr.Textbox(
218
+ label="Reference Style Text",
219
+ placeholder="Optional: Enter reference text",
220
+ visible=False,
221
+ interactive=True
222
+ )
223
+
224
+ src_language = gr.Dropdown(
225
+ choices=["en", "zh"],
226
+ value="en",
227
+ label="Source Language",
228
+ visible=False,
229
+ interactive=True
230
+ )
231
+
232
+ ref_language = gr.Dropdown(
233
+ choices=["en", "zh"],
234
+ value="en",
235
+ label="Reference Language",
236
+ visible=False,
237
+ interactive=True
238
+ )
239
 
240
  with gr.Row():
241
  steps = gr.Slider(
 
253
  # Handle visibility of components based on mode
254
  def update_interface(mode):
255
  is_tts = mode == "tts"
256
+ is_timbre = mode == "timbre"
257
+
258
+ return [
259
+ # Audio components visibility
260
+ not is_tts, # content_audio
261
+ not is_timbre and not is_tts, # ref_style_audio
262
+ True, # ref_timbre_audio (always visible)
263
+ # Text components visibility
264
+ is_tts, # src_text
265
+ is_tts, # ref_text
266
+ is_tts, # src_language
267
+ is_tts # ref_language
268
+ ]
269
 
270
  mode.change(
271
  fn=update_interface,
272
  inputs=[mode],
273
+ outputs=[
274
+ content_audio,
275
+ ref_style_audio,
276
+ ref_timbre_audio,
277
+ src_text,
278
+ ref_text,
279
+ src_language,
280
+ ref_language
281
+ ]
282
  )
283
 
284
  # Handle generation