Spaces:
Running
on
Zero
Running
on
Zero
Update webgui.py
Browse files
webgui.py
CHANGED
@@ -260,71 +260,76 @@ with gr.Blocks() as demo:
|
|
260 |
<a href='https://arxiv.org/abs/2407.08136'><img src='https://img.shields.io/badge/Paper-Arxiv-red'></a>
|
261 |
</div>
|
262 |
""")
|
|
|
263 |
with gr.Row():
|
264 |
with gr.Column(min_width=250):
|
265 |
uploaded_img = gr.Image(type="filepath", label="Reference Image")
|
|
|
266 |
uploaded_audio = gr.Audio(type="filepath", label="Input Audio")
|
|
|
|
|
267 |
with gr.Accordion(label=advanced_settings_label, open=False):
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
generate_button = gr.Button("Generate Video")
|
288 |
-
with gr.Column(min_width=250):
|
289 |
output_video = gr.Video()
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
],
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
],
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
<
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
|
|
|
|
328 |
# def generate_video(uploaded_img, uploaded_audio, facemask_dilation_ratio=default_values["facemask_dilation_ratio"],
|
329 |
# facecrop_dilation_ratio=default_values["facecrop_dilation_ratio"],
|
330 |
# context_frames=default_values["context_frames"],
|
|
|
260 |
<a href='https://arxiv.org/abs/2407.08136'><img src='https://img.shields.io/badge/Paper-Arxiv-red'></a>
|
261 |
</div>
|
262 |
""")
|
263 |
+
|
264 |
with gr.Row():
|
265 |
with gr.Column(min_width=250):
|
266 |
uploaded_img = gr.Image(type="filepath", label="Reference Image")
|
267 |
+
with gr.Column(min_width=250):
|
268 |
uploaded_audio = gr.Audio(type="filepath", label="Input Audio")
|
269 |
+
|
270 |
+
with gr.Column(min_width=250):
|
271 |
with gr.Accordion(label=advanced_settings_label, open=False):
|
272 |
+
with gr.Row():
|
273 |
+
width = gr.Slider(label="Width", minimum=128, maximum=1024, value=default_values["width"], interactive=available_property)
|
274 |
+
height = gr.Slider(label="Height", minimum=128, maximum=1024, value=default_values["height"], interactive=available_property)
|
275 |
+
with gr.Row():
|
276 |
+
length = gr.Slider(label="Length", minimum=100, maximum=5000, value=default_values["length"], interactive=available_property)
|
277 |
+
seed = gr.Slider(label="Seed", minimum=0, maximum=10000, value=default_values["seed"], interactive=available_property)
|
278 |
+
with gr.Row():
|
279 |
+
facemask_dilation_ratio = gr.Slider(label="Facemask Dilation Ratio", minimum=0.0, maximum=1.0, step=0.01, value=default_values["facemask_dilation_ratio"], interactive=available_property)
|
280 |
+
facecrop_dilation_ratio = gr.Slider(label="Facecrop Dilation Ratio", minimum=0.0, maximum=1.0, step=0.01, value=default_values["facecrop_dilation_ratio"], interactive=available_property)
|
281 |
+
with gr.Row():
|
282 |
+
context_frames = gr.Slider(label="Context Frames", minimum=0, maximum=50, step=1, value=default_values["context_frames"], interactive=available_property)
|
283 |
+
context_overlap = gr.Slider(label="Context Overlap", minimum=0, maximum=10, step=1, value=default_values["context_overlap"], interactive=available_property)
|
284 |
+
with gr.Row():
|
285 |
+
cfg = gr.Slider(label="CFG", minimum=0.0, maximum=10.0, step=0.1, value=default_values["cfg"], interactive=available_property)
|
286 |
+
steps = gr.Slider(label="Steps", minimum=1, maximum=100, step=1, value=default_values["steps"], interactive=available_property)
|
287 |
+
with gr.Row():
|
288 |
+
sample_rate = gr.Slider(label="Sample Rate", minimum=8000, maximum=48000, step=1000, value=default_values["sample_rate"], interactive=available_property)
|
289 |
+
fps = gr.Slider(label="FPS", minimum=1, maximum=60, step=1, value=default_values["fps"], interactive=available_property)
|
290 |
+
device = gr.Radio(label="Device", choices=["cuda", "cpu"], value=default_values["device"], interactive=available_property)
|
291 |
generate_button = gr.Button("Generate Video")
|
|
|
292 |
output_video = gr.Video()
|
293 |
+
with gr.Row():
|
294 |
+
|
295 |
+
gr.Examples(
|
296 |
+
label = "Portrait examples",
|
297 |
+
examples = [
|
298 |
+
['assets/test_imgs/a.png'],
|
299 |
+
['assets/test_imgs/b.png'],
|
300 |
+
['assets/test_imgs/c.png'],
|
301 |
+
['assets/test_imgs/d.png'],
|
302 |
+
['assets/test_imgs/e.png']
|
303 |
+
],
|
304 |
+
inputs = [uploaded_img]
|
305 |
+
)
|
306 |
+
gr.Examples(
|
307 |
+
label = "Audio examples",
|
308 |
+
examples = [
|
309 |
+
['assets/test_audios/chunnuanhuakai.wav'],
|
310 |
+
['assets/test_audios/chunwang.wav'],
|
311 |
+
['assets/test_audios/echomimic_en_girl.wav'],
|
312 |
+
['assets/test_audios/echomimic_en.wav'],
|
313 |
+
['assets/test_audios/echomimic_girl.wav'],
|
314 |
+
['assets/test_audios/echomimic.wav'],
|
315 |
+
['assets/test_audios/jane.wav'],
|
316 |
+
['assets/test_audios/mei.wav'],
|
317 |
+
['assets/test_audios/walden.wav'],
|
318 |
+
['assets/test_audios/yun.wav'],
|
319 |
+
],
|
320 |
+
inputs = [uploaded_audio]
|
321 |
+
)
|
322 |
+
gr.HTML("""
|
323 |
+
<div style="display:flex;column-gap:4px;">
|
324 |
+
<a href="https://huggingface.co/spaces/fffiloni/EchoMimic?duplicate=true">
|
325 |
+
<img src="https://huggingface.co/datasets/huggingface/badges/resolve/main/duplicate-this-space-xl.svg" alt="Duplicate this Space">
|
326 |
+
</a>
|
327 |
+
<a href="https://huggingface.co/fffiloni">
|
328 |
+
<img src="https://huggingface.co/datasets/huggingface/badges/resolve/main/follow-me-on-HF-xl-dark.svg" alt="Follow me on HF">
|
329 |
+
</a>
|
330 |
+
</div>
|
331 |
+
""")
|
332 |
+
|
333 |
# def generate_video(uploaded_img, uploaded_audio, facemask_dilation_ratio=default_values["facemask_dilation_ratio"],
|
334 |
# facecrop_dilation_ratio=default_values["facecrop_dilation_ratio"],
|
335 |
# context_frames=default_values["context_frames"],
|