Guenter Bartsch commited on
Commit
78b1e75
·
1 Parent(s): 468fe55

autoplay, column layout

Browse files
Files changed (1) hide show
  1. app.py +24 -16
app.py CHANGED
@@ -14,6 +14,9 @@ if "text" not in st.session_state:
14
  if "message" not in st.session_state:
15
  st.session_state.message = "READY."
16
 
 
 
 
17
  def update_text_input():
18
  global text
19
  if st.session_state['lang'] == "en":
@@ -72,36 +75,41 @@ def do_synth():
72
 
73
  st.session_state.message = message
74
 
75
- status.update(label=message, state="complete")
76
 
77
  st.session_state.wav = wav
78
- playback.audio(wav, sample_rate=SAMPLE_RATE)
 
 
 
79
 
80
-
81
 
82
- lang = st.selectbox("Language",
83
- ["en", "de"],
84
- on_change=update_text_input,
85
- key='lang')
 
86
 
87
- meldec = st.selectbox("MEL decoder",
88
- ["meldec-libritts-multi-band-melgan-v2", "meldec-libritts-hifigan-v1"],
89
- #on_change=update_text_input,
90
- key='meldec')
91
 
92
- speakerref = st.selectbox("Voice sample", ZeroVoxTTS.available_speakerrefs())
93
 
94
- st.audio(ZeroVoxTTS.get_speakerref(speakerref, SAMPLE_RATE), sample_rate=SAMPLE_RATE)
 
 
 
 
95
 
96
- text = st.text_input("Text to synthesize", value=st.session_state.text)
97
 
98
- st.button("Synthesize!", type="primary", on_click=do_synth)
99
 
100
  status = st.status(st.session_state.message, state="complete")
101
 
102
  if 'wav' in st.session_state:
103
 
104
- playback = st.audio(st.session_state.wav, sample_rate=SAMPLE_RATE)
105
 
106
  else:
107
 
 
14
  if "message" not in st.session_state:
15
  st.session_state.message = "READY."
16
 
17
+ if "autoplay" not in st.session_state:
18
+ st.session_state.autoplay = False
19
+
20
  def update_text_input():
21
  global text
22
  if st.session_state['lang'] == "en":
 
75
 
76
  st.session_state.message = message
77
 
78
+ #status.update(label=message, state="complete")
79
 
80
  st.session_state.wav = wav
81
+ st.session_state.autoplay = True
82
+ #playback.audio(wav, sample_rate=SAMPLE_RATE)
83
+
84
+ st.markdown("# ZeroVOX TTS Demo\n\nZeroVOX is a zero-shot realtime TTS system, fully offline, free and open source.\n\nFor more information, check out\n[https://github.com/gooofy/zerovox](https://github.com/gooofy/zerovox)\n")
85
 
86
+ col1, col2 = st.columns(2)
87
 
88
+ with col1:
89
+ lang = st.selectbox("Language",
90
+ ["en", "de"],
91
+ on_change=update_text_input,
92
+ key='lang')
93
 
94
+ text = st.text_input("Text to synthesize", value=st.session_state.text)
 
 
 
95
 
96
+ st.button("Synthesize!", type="primary", on_click=do_synth)
97
 
98
+ with col2:
99
+ meldec = st.selectbox("MEL decoder",
100
+ ["meldec-libritts-multi-band-melgan-v2", "meldec-libritts-hifigan-v1"],
101
+ #on_change=update_text_input,
102
+ key='meldec')
103
 
104
+ speakerref = st.selectbox("Voice sample", ZeroVoxTTS.available_speakerrefs())
105
 
106
+ st.audio(ZeroVoxTTS.get_speakerref(speakerref, SAMPLE_RATE), sample_rate=SAMPLE_RATE)
107
 
108
  status = st.status(st.session_state.message, state="complete")
109
 
110
  if 'wav' in st.session_state:
111
 
112
+ playback = st.audio(st.session_state.wav, sample_rate=SAMPLE_RATE, autoplay=st.session_state.autoplay)
113
 
114
  else:
115