From 77c19d1073e72fa1cf26ad4b181c59fcf6a05cb9 Mon Sep 17 00:00:00 2001 From: KRSHH <136873090+KRSHH@users.noreply.github.com> Date: Mon, 23 Dec 2024 14:58:43 +0530 Subject: [PATCH] FaceTime Camera Index to 0 --- modules/ui.py | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/modules/ui.py b/modules/ui.py index 16e7a9f..33ded63 100644 --- a/modules/ui.py +++ b/modules/ui.py @@ -812,13 +812,29 @@ def get_available_cameras(): camera_indices = [] camera_names = [] - # Test the first 10 indices - for i in range(10): - cap = cv2.VideoCapture(i) + if platform.system() == "Darwin": # macOS specific handling + # Try to open the default FaceTime camera first + cap = cv2.VideoCapture(0) if cap.isOpened(): - camera_indices.append(i) - camera_names.append(f"Camera {i}") + camera_indices.append(0) + camera_names.append("FaceTime Camera") cap.release() + + # On macOS, additional cameras typically use indices 1 and 2 + for i in [1, 2]: + cap = cv2.VideoCapture(i) + if cap.isOpened(): + camera_indices.append(i) + camera_names.append(f"Camera {i}") + cap.release() + else: + # Linux camera detection - test first 10 indices + for i in range(10): + cap = cv2.VideoCapture(i) + if cap.isOpened(): + camera_indices.append(i) + camera_names.append(f"Camera {i}") + cap.release() if not camera_names: return [], ["No cameras found"]