From b565076dd1df85126bf3fc154ea2ca9286431865 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sencer=20Y=C3=BCcel?= Date: Mon, 3 Jun 2024 11:25:29 +0300 Subject: [PATCH] container and codec formats changed for video input/outputs --- app.py | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/app.py b/app.py index 537df115..72095792 100644 --- a/app.py +++ b/app.py @@ -7,15 +7,6 @@ import cv2 import tempfile -def check_file_size(file, max_file_size=20*1024*1024): # 20MB - file_size = 0 - if file: - with open(file, "rb") as f: - file_size = len(f.read()) - if file_size > max_file_size: - raise gr.Error("File size exceeds the 20MB limit. Please try with another file.") - - def yolov10_inference(image, video, model_path, image_size, conf_threshold): model = YOLOv10(model_path) if image: @@ -23,8 +14,7 @@ def yolov10_inference(image, video, model_path, image_size, conf_threshold): annotated_image = results[0].plot() return annotated_image[:, :, ::-1], None else: - check_file_size(video) - video_path = tempfile.mktemp(suffix=".mp4") + video_path = tempfile.mktemp(suffix=".webm") with open(video_path, "wb") as f: with open(video, "rb") as g: f.write(g.read()) @@ -34,8 +24,8 @@ def yolov10_inference(image, video, model_path, image_size, conf_threshold): frame_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) frame_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) - output_video_path = tempfile.mktemp(suffix=".mp4") - out = cv2.VideoWriter(output_video_path, cv2.VideoWriter_fourcc(*'mp4v'), fps, (frame_width, frame_height)) + output_video_path = tempfile.mktemp(suffix=".webm") + out = cv2.VideoWriter(output_video_path, cv2.VideoWriter_fourcc(*'vp80'), fps, (frame_width, frame_height)) while cap.isOpened(): ret, frame = cap.read()