diff --git a/photon-server/src/main/java/org/photonvision/vision/camera/USBCameraSource.java b/photon-server/src/main/java/org/photonvision/vision/camera/USBCameraSource.java index aba98ab38..33ece846a 100644 --- a/photon-server/src/main/java/org/photonvision/vision/camera/USBCameraSource.java +++ b/photon-server/src/main/java/org/photonvision/vision/camera/USBCameraSource.java @@ -128,10 +128,19 @@ public class USBCameraSource implements VisionSource { List videoModesList = new ArrayList<>(); try { for (var videoMode : camera.enumerateVideoModes()) { + // Filter grey modes if (videoMode.pixelFormat == VideoMode.PixelFormat.kGray || videoMode.pixelFormat == VideoMode.PixelFormat.kUnknown) { continue; } + + // On picam, filter non-bgr modes for performance + if (cameraQuirks.hasQuirk(CameraQuirk.PiCam)) { + if (videoMode.pixelFormat != VideoMode.PixelFormat.kBGR) { + continue; + } + } + videoModesList.add(videoMode); } } catch (Exception e) {