Spaces:
Running
Running
darksakura
commited on
Commit
•
541ae6e
1
Parent(s):
989f2f0
Update app.py
Browse files
app.py
CHANGED
@@ -148,34 +148,34 @@ def update_dropdown(new_choices):
|
|
148 |
spks = list(model.spk2id.keys())
|
149 |
new_choices = gr.Dropdown.update(choices=spks)
|
150 |
return new_choices
|
151 |
-
|
152 |
-
app = gr.Blocks()
|
153 |
-
with app:
|
154 |
-
|
155 |
-
|
156 |
|
157 |
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
|
178 |
-
|
179 |
#sid.change(fn=update_dropdown,inputs=[sid],outputs=[sid])
|
180 |
#sid.update(interactive=True)
|
181 |
#with gr.Accordion(label="↓切换模型(音色具有抽奖性质,可切换尝试)", open=False):
|
@@ -183,21 +183,21 @@ with app:
|
|
183 |
#btnMod = gr.Button("载入模型")
|
184 |
#statusa = gr.TextArea()
|
185 |
#btnMod.click(loadmodel, inputs=[modelstrs], outputs = [statusa,sid])
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
app.launch(share=False)
|
201 |
|
202 |
|
203 |
|
|
|
148 |
spks = list(model.spk2id.keys())
|
149 |
new_choices = gr.Dropdown.update(choices=spks)
|
150 |
return new_choices
|
151 |
+
if __name__ == "__main__":
|
152 |
+
app = gr.Blocks()
|
153 |
+
with app:
|
154 |
+
with gr.Tabs():
|
155 |
+
with gr.TabItem(" "):
|
156 |
|
157 |
|
158 |
+
gr.Markdown(value=base64.b64decode( b'ICAgICAgICAgICAgICAgICAgICAjIOWJjeiogAogICAgICAgICAgICAgICAgICAgICog5LmD5pyo5Z2CNzXkvY1UVFPvvJpbaHR0cHM6Ly92aXRzLm5vZ2l6YWthNDYuY2NdKGh0dHBzOi8vdml0cy5ub2dpemFrYTQ2LmNjKSAKICAgICAgICAgICAgICAgICAgICAqIOWbveWGheiuv+mXrui+g+aFou+8jOW7uuiuruS9v+eUqOS7o+eQhi7mm7TmlrDkuo4yMy0xMS0wNuOAguWWguS6hjM1MOmmluatjO+8jOS9huWkp+WkmuaVsOaIkOWRmOS4jei2s+S7peWQkeWUseatjOmfs+iJsumdoOaLou+8jOWboOS4uuiHs+WwkemcgOimgeWNiuWwj+aXtuS7peS4iueahOe0oOadkAogICAgICAgICAgICAgICAgICAgICog5qyi6L+O5Yqg5YWl6K6o6K66VEfnvqQ6W2h0dHBzOi8vdC5tZS8rdlA4TksxTk1MaVl6TURKbF0oaHR0cHM6Ly90Lm1lLyt2UDhOSzFOTUxpWXpNREpsKSDnvqTph4zmnInnrKjnrKhCb3Tmlrnkvr/kuKLmrYzljbNBaee/u+WUseWSjOWIhuemu+W5suWjsCzkuI3ov4fotKjph4/lj6/msqHmnInmiYvliqjliIbnprvnmoTlpb3jgIIKICAgICAgICAgICAgICAgICAgICAjIOWjsOaYjgogICAgICAgICAgICAgICAgICAgICog5aaC55So5q2k5qih5Z6L5Yi25L2c6Z+z6aKR6K+35qCH5rOo5pys5Zyo57q/6L2s5o2i5Zyw5Z2A77yaaHR0cHM6Ly9zb3ZpdHM0Lm5vZ2l6YWthNDYuY2M=').decode())
|
159 |
+
|
160 |
+
with gr.Tabs():
|
161 |
+
with gr.TabItem("单个音频上传"):
|
162 |
+
vc_input3 = gr.Audio(label="上传音频<280s无BGM无和声的干声", type="filepath", source="upload",value="examples/1.mp3")
|
163 |
+
|
164 |
+
with gr.TabItem("文字转语音(实验性)"):
|
165 |
+
gr.Markdown(value="文字转语音(TTS)说明:使用edge_tts服务生成音频,并转换为So-VITS模型音色。")
|
166 |
+
auto_f0 = gr.Checkbox(label="自动f0预测,配合聚类模型f0预测效果更好(仅限转换语音,歌声不要勾选此项会究极跑调)", value=False)
|
167 |
+
with gr.Row():
|
168 |
+
text_input = gr.Textbox(label = "在此输入需要转译的文字(建议打开自动f0预测)限定200字以内,建议f0预测器选dio")#, lines=4
|
169 |
+
with gr.Row():
|
170 |
+
tts_gender = gr.Radio(label = "说话人性别", choices = ["男","女"], value = "女")
|
171 |
+
tts_lang = gr.Dropdown(label = "选择语言,Auto为根据输入文字自动识别", choices=SUPPORTED_LANGUAGES, value = "Auto")
|
172 |
+
with gr.Row():
|
173 |
+
tts_rate = gr.Slider(label = "TTS语音变速(倍速相对值)", minimum = -1, maximum = 3, value = 0, step = 0.1)
|
174 |
+
tts_volume = gr.Slider(label = "TTS语音音量(相对值)", minimum = -1, maximum = 1.5, value = 0, step = 0.1)
|
175 |
+
vc_tts_submit = gr.Button("文本转语音", variant="primary")
|
176 |
+
spks = list(model.spk2id.keys())
|
177 |
|
178 |
+
sid = gr.Dropdown(label="音色", choices=spks, value=base64.b64decode( b'SE9TSElOT19NSU5BTUk=' ).decode())
|
179 |
#sid.change(fn=update_dropdown,inputs=[sid],outputs=[sid])
|
180 |
#sid.update(interactive=True)
|
181 |
#with gr.Accordion(label="↓切换模型(音色具有抽奖性质,可切换尝试)", open=False):
|
|
|
183 |
#btnMod = gr.Button("载入模型")
|
184 |
#statusa = gr.TextArea()
|
185 |
#btnMod.click(loadmodel, inputs=[modelstrs], outputs = [statusa,sid])
|
186 |
+
with gr.Row():
|
187 |
+
slice_db = gr.Slider(label="切片阈值(较嘈杂时-30,保留呼吸声时-50)",maximum=-30, minimum=-70, step=1, value=-40)
|
188 |
+
vc_transform = gr.Slider(label="变调(整数,可以正负,半音数量,升高八度就是12)",maximum=16, minimum=-16, step=1, value=0)
|
189 |
+
f0_predictor = gr.Radio(label=base64.b64decode( b'ZjDpooTmtYvlmago5aaC6YGH5ZOR6Z+z5Y+v5Lul5bCd6K+V5pu05o2iZjAp5Yet5bmy5aOw5bmy5YeA56iL5bqm6YCJ5oup44CC5o6o6I2QZmNwZeWSjHJtdnBl' ).decode(), choices=["pm","dio","harvest","fcpe","rmvpe"], value="fcpe")
|
190 |
+
with gr.Row():
|
191 |
+
cluster_ratio = gr.Number(label="聚类模型混合比例,0-1之间,默认为0不启用聚类,能提升音色相似度,但会导致咬字下降(如果使用建议0.5左右)", value=0)#聚
|
192 |
+
output_format = gr.Radio(label=base64.b64decode( b'6Z+z6aKR6L6T5Ye65qC85byPKE1QM+S8muWvvOiHtOaXtumXtOi9tOWkmjI3bXMs6ZyA5ZCI5oiQ6K+36YCJZmxhYyk=' ).decode(), choices=["flac", "mp3"], value = "mp3")#格式
|
193 |
+
vc_submit = gr.Button("音频转换", variant="primary")
|
194 |
+
|
195 |
+
vc_output1 = gr.Textbox(label=base64.b64decode( b'6Z+z6auY5bmz5Z2H5YGP5beu5Y2K6Z+z5pWw6YeP77yM5L2T546w6L2s5o2i6Z+z6aKR55qE6LeR6LCD5oOF5Ya177yI5LiA6Iis5bCP5LqOMC4177yJ' ).decode())
|
196 |
+
vc_output2 = gr.Audio(label="Output Audio")
|
197 |
+
|
198 |
+
vc_submit.click(vc_fn, [output_format,sid, vc_input3, vc_transform,auto_f0,cluster_ratio, slice_db,f0_predictor], [vc_output1, vc_output2])
|
199 |
+
vc_tts_submit.click(tts_fn, [text_input, tts_gender, tts_lang, tts_rate, tts_volume, sid, vc_transform,auto_f0,cluster_ratio, slice_db, f0_predictor], [vc_output1, vc_output2])
|
200 |
+
app.launch(share=False)
|
201 |
|
202 |
|
203 |
|