Spaces:
Paused
Paused
File size: 933 Bytes
88c7481 cb2c10c 838164d 6388cc6 7148179 88c7481 b059570 88c7481 9571046 88c7481 a64acd3 7148179 a64acd3 88c7481 7148179 88c7481 fb7cfb1 7f52e8a 7148179 45a6dfa 724f805 45a6dfa 1d5a2f0 724f805 |
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 |
import gradio as gr
import ffmpeg
from gradio.components import File
import os
def transcode_video(input_video_file):
"""Transcodes a video file to m3u8 using ffmpeg.
Args:
input_video_file: The path to the video file to transcode.
Returns:
The path to the transcoded file.
"""
# Create a folder to save the transcoded video file to.
output_dir = os.path.dirname(input_video_file)
if not os.path.exists(output_dir):
os.makedirs(output_dir)
# Transcode the video file.
output_file = os.path.join(output_dir, f"{input_video_file.name}.m3u8")
ffmpeg.input(input_video_file).output(output_file, format="hls").run()
# Return the path to the transcoded file.
return output_file
# Remove unused keyword argument
input_video_file = File()
outputs={"output_file": File(accept=".m3u8")}
gr.Interface(
transcode_video,
inputs={"input_video_file": input_video_file},
outputs=outputs
).launch()
|