import gradio as gr import ffmpeg import subprocess from gradio import outputs quality = gr.inputs.Dropdown(choices=["18", "23", "28", "32"], label="Quality") video_file = gr.inputs.File(label="Video File") def convert_video(quality): output_path = "output.m3u8" ffmpeg_command = f"ffmpeg -i input.mp4 -c:v libx264 -crf {quality} -f hls {output_path}" subprocess.run(ffmpeg_command, shell=True) return gr.outputs.Video(output_path) gr.Interface(convert_video, inputs=[quality], outputs=[outputs.Video()]).launch()