Browse Source

Use AV capture methods available since iOS 7

DominusExult 1 month ago
parent
commit
0270da4d1f
1 changed files with 5 additions and 7 deletions
  1. 5 7
      src/camera/coremedia/SDL_camera_coremedia.m

+ 5 - 7
src/camera/coremedia/SDL_camera_coremedia.m

@@ -440,13 +440,11 @@ static bool COREMEDIA_OpenDevice(SDL_Camera *device, const SDL_CameraSpec *spec)
     }
     }
     [session addOutput:output];
     [session addOutput:output];
 
 
-    // Try to set the frame rate on the connection
-    AVCaptureConnection *connection = [output connectionWithMediaType:AVMediaTypeVideo];
-    if (connection && connection.isVideoMinFrameDurationSupported) {
-        connection.videoMinFrameDuration = frameDuration;
-        if (connection.isVideoMaxFrameDurationSupported) {
-            connection.videoMaxFrameDuration = frameDuration;
-        }
+    // Try to set the frame rate on the device (preferred modern approach)
+    if ([avdevice lockForConfiguration:nil]) {
+        avdevice.activeVideoMinFrameDuration = frameDuration;
+        avdevice.activeVideoMaxFrameDuration = frameDuration;
+        [avdevice unlockForConfiguration];
     }
     }
 
 
     [session commitConfiguration];
     [session commitConfiguration];