import cv2 import os from moviepy.editor import VideoFileClip def extract_frames(video_path, output_folder, frame_rate=1): if not os.path.exists(output_folder): os.makedirs(output_folder) cap = cv2.VideoCapture(video_path) count = 0 success, image = cap.read() while success: if count % frame_rate == 0: frame_id = int(count / frame_rate) cv2.imwrite(os.path.join(output_folder, f"frame_{frame_id:05d}.jpg"), image) success, image = cap.read() count += 1 cap.release() print(f"Frames extracted to {output_folder}") def extract_audio(video_path, output_audio_path): video = VideoFileClip(video_path) audio = video.audio audio.write_audiofile(output_audio_path) print(f"Audio extracted to {output_audio_path}") def main(video_path, output_frames_folder, output_audio_path, frame_rate=1): extract_frames(video_path, output_frames_folder, frame_rate) extract_audio(video_path, output_audio_path) if __name__ == "__main__": video_path = "./AustinScott0.mp4" output_frames_folder = "output/frames" output_audio_path = "output/audio.mp3" frame_rate = 1 # Change this to your desired frame rate main(video_path, output_frames_folder, output_audio_path, frame_rate)