drewThomasson commited on
Commit
b0371fe
·
verified ·
1 Parent(s): 6be0923

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -18
app.py CHANGED
@@ -64,27 +64,22 @@ def update_voice_and_audio(speaker, selected_voice):
64
  audio_sample = play_sample(speaker)
65
  return audio_sample
66
 
67
- # Creating Gradio interface
68
  def create_interface():
69
- components = []
70
-
71
- # For each speaker, we create a dropdown and an audio component that only updates for this speaker
72
- for speaker in speakers:
73
- with gr.Row():
74
- dropdown = gr.Dropdown(choices=voice_actors, label=f"Select voice actor for {speaker}", value=selected_voices[speaker], interactive=True)
75
- audio = gr.Audio(label=f"Audio preview for {speaker}", type="filepath", value=play_sample(speaker), interactive=False)
76
-
77
- def on_change(speaker=speaker):
78
- def update(selected_voice):
79
  return update_voice_and_audio(speaker, selected_voice)
80
- return update
81
 
82
- dropdown.change(on_change(speaker), inputs=[dropdown], outputs=[audio])
83
- components.append((dropdown, audio))
84
-
85
- # Display the interface
86
- interface = gr.Interface(fn=None, inputs=None, outputs=None, live=True)
87
- return interface
88
 
89
  app = create_interface()
90
 
 
64
  audio_sample = play_sample(speaker)
65
  return audio_sample
66
 
67
+ # Creating Gradio interface using Blocks
68
  def create_interface():
69
+ with gr.Blocks() as demo:
70
+ for speaker in speakers:
71
+ with gr.Row():
72
+ dropdown = gr.Dropdown(choices=voice_actors, label=f"Select voice actor for {speaker}", value=selected_voices[speaker])
73
+ audio = gr.Audio(label=f"Audio preview for {speaker}", type="filepath", value=play_sample(speaker))
74
+
75
+ # Function to update audio when a new voice actor is selected
76
+ def update_audio(selected_voice, speaker=speaker):
 
 
77
  return update_voice_and_audio(speaker, selected_voice)
 
78
 
79
+ # Connect the dropdown change to the audio preview update
80
+ dropdown.change(fn=update_audio, inputs=dropdown, outputs=audio)
81
+
82
+ return demo
 
 
83
 
84
  app = create_interface()
85