vits
#12
by
Adon
- opened
- .gitignore +0 -2
- README.md +1 -1
- app.py +25 -3
- requirements.txt +2 -2
.gitignore
DELETED
|
@@ -1,2 +0,0 @@
|
|
| 1 |
-
.venv
|
| 2 |
-
*.pyc
|
|
|
|
|
|
|
|
|
README.md
CHANGED
|
@@ -4,7 +4,7 @@ emoji: ππ΄
|
|
| 4 |
colorFrom: green
|
| 5 |
colorTo: gray
|
| 6 |
sdk: gradio
|
| 7 |
-
sdk_version:
|
| 8 |
app_file: app.py
|
| 9 |
pinned: false
|
| 10 |
---
|
|
|
|
| 4 |
colorFrom: green
|
| 5 |
colorTo: gray
|
| 6 |
sdk: gradio
|
| 7 |
+
sdk_version: 3.7
|
| 8 |
app_file: app.py
|
| 9 |
pinned: false
|
| 10 |
---
|
app.py
CHANGED
|
@@ -201,7 +201,7 @@ if __name__ == "__main__":
|
|
| 201 |
placeholder="Type your sentence here (Maximum 150 words)",
|
| 202 |
value="γγγ«γ‘γγ", elem_id=f"tts-input")
|
| 203 |
with gr.Accordion(label="Phoneme Input", open=False):
|
| 204 |
-
temp_text_var = gr.
|
| 205 |
symbol_input = gr.Checkbox(value=False, label="Symbol input")
|
| 206 |
symbol_list = gr.Dataset(label="Symbol list", components=[textbox],
|
| 207 |
samples=[[x] for x in symbols],
|
|
@@ -210,7 +210,29 @@ if __name__ == "__main__":
|
|
| 210 |
symbol_input.change(to_symbol_fn,
|
| 211 |
[symbol_input, textbox, temp_text_var],
|
| 212 |
[textbox, temp_text_var])
|
| 213 |
-
symbol_list.click(None, [symbol_list, symbol_list_json], textbox,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 214 |
# select character
|
| 215 |
char_dropdown = gr.Dropdown(choices=speakers, value=speakers[0], label='character')
|
| 216 |
language_dropdown = gr.Dropdown(choices=lang, value=lang[0], label='language')
|
|
@@ -231,4 +253,4 @@ if __name__ == "__main__":
|
|
| 231 |
outputs=[text_output, audio_output],
|
| 232 |
fn=tts_fn
|
| 233 |
)
|
| 234 |
-
app.queue(
|
|
|
|
| 201 |
placeholder="Type your sentence here (Maximum 150 words)",
|
| 202 |
value="γγγ«γ‘γγ", elem_id=f"tts-input")
|
| 203 |
with gr.Accordion(label="Phoneme Input", open=False):
|
| 204 |
+
temp_text_var = gr.Variable()
|
| 205 |
symbol_input = gr.Checkbox(value=False, label="Symbol input")
|
| 206 |
symbol_list = gr.Dataset(label="Symbol list", components=[textbox],
|
| 207 |
samples=[[x] for x in symbols],
|
|
|
|
| 210 |
symbol_input.change(to_symbol_fn,
|
| 211 |
[symbol_input, textbox, temp_text_var],
|
| 212 |
[textbox, temp_text_var])
|
| 213 |
+
symbol_list.click(None, [symbol_list, symbol_list_json], textbox,
|
| 214 |
+
_js=f"""
|
| 215 |
+
(i, symbols, text) => {{
|
| 216 |
+
let root = document.querySelector("body > gradio-app");
|
| 217 |
+
if (root.shadowRoot != null)
|
| 218 |
+
root = root.shadowRoot;
|
| 219 |
+
let text_input = root.querySelector("#tts-input").querySelector("textarea");
|
| 220 |
+
let startPos = text_input.selectionStart;
|
| 221 |
+
let endPos = text_input.selectionEnd;
|
| 222 |
+
let oldTxt = text_input.value;
|
| 223 |
+
let result = oldTxt.substring(0, startPos) + symbols[i] + oldTxt.substring(endPos);
|
| 224 |
+
text_input.value = result;
|
| 225 |
+
let x = window.scrollX, y = window.scrollY;
|
| 226 |
+
text_input.focus();
|
| 227 |
+
text_input.selectionStart = startPos + symbols[i].length;
|
| 228 |
+
text_input.selectionEnd = startPos + symbols[i].length;
|
| 229 |
+
text_input.blur();
|
| 230 |
+
window.scrollTo(x, y);
|
| 231 |
+
|
| 232 |
+
text = text_input.value;
|
| 233 |
+
|
| 234 |
+
return text;
|
| 235 |
+
}}""")
|
| 236 |
# select character
|
| 237 |
char_dropdown = gr.Dropdown(choices=speakers, value=speakers[0], label='character')
|
| 238 |
language_dropdown = gr.Dropdown(choices=lang, value=lang[0], label='language')
|
|
|
|
| 253 |
outputs=[text_output, audio_output],
|
| 254 |
fn=tts_fn
|
| 255 |
)
|
| 256 |
+
app.queue(concurrency_count=3).launch(show_api=False, share=args.share)
|
requirements.txt
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
numba
|
| 2 |
librosa
|
| 3 |
matplotlib
|
| 4 |
-
numpy
|
| 5 |
phonemizer
|
| 6 |
scipy
|
| 7 |
tensorboard
|
|
@@ -9,7 +9,7 @@ torch
|
|
| 9 |
torchvision
|
| 10 |
torchaudio
|
| 11 |
unidecode
|
| 12 |
-
pyopenjtalk
|
| 13 |
jamo
|
| 14 |
pypinyin
|
| 15 |
ko_pron
|
|
|
|
| 1 |
numba
|
| 2 |
librosa
|
| 3 |
matplotlib
|
| 4 |
+
numpy
|
| 5 |
phonemizer
|
| 6 |
scipy
|
| 7 |
tensorboard
|
|
|
|
| 9 |
torchvision
|
| 10 |
torchaudio
|
| 11 |
unidecode
|
| 12 |
+
pyopenjtalk>=0.3.0
|
| 13 |
jamo
|
| 14 |
pypinyin
|
| 15 |
ko_pron
|