File size: 794 Bytes
0bd62e5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import gradio as gr
import os

a = os.path.join(os.path.dirname(__file__), "files/a.mp4")  # Video
b = os.path.join(os.path.dirname(__file__), "files/b.mp4")  # Video
s1 = os.path.join(os.path.dirname(__file__), "files/s1.srt")  # Subtitle
s2 = os.path.join(os.path.dirname(__file__), "files/s2.vtt")  # Subtitle

def video_demo(video, subtitle=None):
    if subtitle is None:
        return video

    return [video, subtitle.name]

demo = gr.Interface(
    fn=video_demo,
    inputs=[
        gr.Video(label="In", interactive=True),
        gr.File(label="Subtitle", file_types=[".srt", ".vtt"]),
    ],
    outputs=gr.Video(label="Out"),
    examples=[
        [a, s1],
        [b, s2],
        [a, None],
    ],
)

if __name__ == "__main__":
    demo.launch()