Spaces:
Sleeping
Sleeping
import os | |
import moviepy.editor as mp | |
import gradio as gr | |
def split_video(video_file, parts): | |
video = mp.VideoFileClip(video_file.name) | |
duration = video.duration | |
part_duration = duration / parts | |
output_files = [] | |
for part in range(parts): | |
start_time = part * part_duration | |
end_time = (part + 1) * part_duration | |
part_clip = video.subclip(start_time, end_time) | |
output_filename = f"part_{part + 1}.mp4" | |
part_clip.write_videofile(output_filename, codec="libx264", audio_codec="aac") | |
output_files.append(output_filename) | |
return output_files | |
iface = gr.Interface( | |
fn=split_video, | |
inputs=[gr.inputs.File(type="file", label="Upload Video"), gr.inputs.Slider(minimum=2, maximum=10, default=2, label="Number of Parts")], | |
outputs=gr.outputs.Files(label="Download Split Videos"), | |
title="Video Splitter", | |
description="Upload your video and select how many parts you want to split it into." | |
) | |
if __name__ == "__main__": | |
iface.launch() |