Przeglądaj źródła

Use AV capture methods available since iOS 7

(cherry picked from commit 0270da4d1f5e9704b854ff16f5c6926b344bd784)
DominusExult 2 tygodni temu
rodzic
commit
6299705584
1 zmienionych plików z 5 dodań i 7 usunięć
  1. 5 7
      src/camera/coremedia/SDL_camera_coremedia.m

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

@@ -437,13 +437,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];