Filter non-bgr modes on Pi (#112)

This can almost double performance in some cases.
This commit is contained in:
Matt
2020-09-05 09:33:48 -07:00
committed by GitHub
parent c1d2cbf1de
commit 73fc8e04ca

View File

@@ -128,10 +128,19 @@ public class USBCameraSource implements VisionSource {
List<VideoMode> 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) {