From c4c88c8175f6defe07c20791e739d1a8bdc2dad3 Mon Sep 17 00:00:00 2001 From: PhatPhuckDave Date: Thu, 4 Sep 2025 21:30:32 +0200 Subject: [PATCH] refactor(main.py): update backend order preference to prioritize FFmpeg for video files and DirectShow for cameras --- croppa/main.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/croppa/main.py b/croppa/main.py index 615ba86..187b4c4 100644 --- a/croppa/main.py +++ b/croppa/main.py @@ -182,12 +182,12 @@ class VideoEditor: self.video_path = video_path # Try different backends for better performance - # Order of preference: DirectShow (Windows), FFmpeg, any available + # Order of preference: FFmpeg (best for video files), DirectShow (cameras), any available backends_to_try = [] - if hasattr(cv2, 'CAP_DSHOW'): # Windows DirectShow - backends_to_try.append(cv2.CAP_DSHOW) - if hasattr(cv2, 'CAP_FFMPEG'): # FFmpeg + if hasattr(cv2, 'CAP_FFMPEG'): # FFmpeg - best for video files backends_to_try.append(cv2.CAP_FFMPEG) + if hasattr(cv2, 'CAP_DSHOW'): # DirectShow - usually for cameras + backends_to_try.append(cv2.CAP_DSHOW) backends_to_try.append(cv2.CAP_ANY) # Fallback self.cap = None