Spaces:
Build error
Build error
File size: 1,018 Bytes
4fa8bcb |
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 |
import glob
import os
from PIL import Image
from video_sequencer.assemble_video import assemble_video
import numpy as np
from utils.path_utils import resolve_path
def generate_frames_and_video(coords, output_folder="frames", fps=5, frame_size=64):
# Use /tmp directory for frames
tmp_frames_dir = os.path.join("tmp", output_folder)
os.makedirs(tmp_frames_dir, exist_ok=True)
# Clean up any existing frames
for file in glob.glob(os.path.join(tmp_frames_dir, "*.png")):
os.remove(file)
for i, (x, y) in enumerate(coords):
px = int(x * (frame_size - 1))
py = int(y * (frame_size - 1))
frame = np.zeros((frame_size, frame_size), dtype=np.uint8)
frame[py, px] = 255
img = Image.fromarray(frame).convert("RGB")
img.save(os.path.join(tmp_frames_dir, f"frame_{i:03}.png"))
output_video_path = os.path.join(tmp_frames_dir, "output_video.mp4")
assemble_video(tmp_frames_dir, output_video_path, fps=fps)
return output_video_path |