File size: 1,330 Bytes
1678478
0815599
 
 
1678478
7e520c6
 
0815599
 
81ae7f5
7e520c6
81ae7f5
 
1678478
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import gradio as gr
import os
import datetime
import inference

import spaces

example1 = ["sample_data/ref1.jpg", "sample_data/ano.mp3"]
example2 = ["sample_data/ref2.jpg", "sample_data/rakugo.mp3"]

@spaces.GPU
def fix_face_video(input_image, input_audio):

    dt = datetime.datetime.now() + datetime.timedelta(hours=9)
    fol_name = dt.strftime("%Y%m%d")
    file_name = dt.strftime("%H%M%S")

    out_video = "./output/" + fol_name+ "/fix_face_" + file_name + ".mp4"

    inference.fix_face(input_image, input_audio, out_video)

    return out_video

image = gr.Image(label="画像(image)", type="filepath")
audio = gr.File(label="音声(audio)", file_types=[".mp3", ".MP3"])
out_video = gr.Video(label="Fix Face Video")
btn = gr.Button("送信", variant="primary")

title = "V_Express"
description = "<div style='text-align: center;'><h3>画像と音声だけで生成できます。(Using only images and audio)"
description += "<br>This uses the following V-Express \"https://github.com/tencent-ailab/V-Express\"</h3></div>"

demo = gr.Interface(
    fn=fix_face_video,
    inputs=[image, audio],
    examples=[example1, example2],
    outputs=[out_video],
    title=title,
    submit_btn=btn,
    clear_btn=None,
    description=description,
    allow_flagging="never"
)

demo.queue()
demo.launch(share=True, debug=True)