diff --git a/packages/react-native-vision-camera/ios/Extensions/AVFoundation/AVCaptureDevice.Format+supportsOutput.swift b/packages/react-native-vision-camera/ios/Extensions/AVFoundation/AVCaptureDevice.Format+supportsOutput.swift index 5a496ce5a3..a55730b29c 100644 --- a/packages/react-native-vision-camera/ios/Extensions/AVFoundation/AVCaptureDevice.Format+supportsOutput.swift +++ b/packages/react-native-vision-camera/ios/Extensions/AVFoundation/AVCaptureDevice.Format+supportsOutput.swift @@ -9,7 +9,15 @@ import Foundation extension AVCaptureDevice.Format { func supportsOutput(_ output: AVCaptureOutput) -> Bool { + #if targetEnvironment(simulator) + // SimCam's DummyCaptureDeviceFormat doesn't implement isStreamingDisparitySupported, + // which is called internally by unsupportedCaptureOutputClasses, causing a SIGSEGV + // on the com.margelo.camera.session queue. On simulator all outputs are assumed + // supported since we're using a fake camera anyway. + return true + #else let targetOutputClass = type(of: output) return self.unsupportedCaptureOutputClasses.allSatisfy { $0 != targetOutputClass } + #endif } }