fix: AVFoundation inconsistent camera indices

pull/22946/head
Vadim Levin 2 years ago
parent ebaee3ea21
commit 727feda935
  1. 9
      modules/videoio/src/cap_avfoundation_mac.mm

@ -376,6 +376,15 @@ int CvCaptureCAM::startCaptureDevice(int cameraNum) {
return 0; return 0;
} }
// Preserve devices ordering on the system
// see AVCaptureDevice::uniqueID property documentation for more info
devices = [devices
sortedArrayUsingComparator:^NSComparisonResult(AVCaptureDevice *d1,
AVCaptureDevice *d2) {
return [d1.uniqueID compare:d2.uniqueID];
}
];
mCaptureDevice = devices[cameraNum]; mCaptureDevice = devices[cameraNum];
if ( ! mCaptureDevice ) { if ( ! mCaptureDevice ) {

Loading…
Cancel
Save