I am currently using the method:
NSArray *captureDevices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
to get a list of devices but X
AVCaptureDevice.default(.builtInWideAngleCamera, for: AVMediaTypeVideo, position: .front)
I think something like that would work. I think the AVCapture.DiscoverySession's initializer may be helpful as well. See the documentation and the stack overflow post on something similar in swift. Let me know if it helped!:)
Create AVCaptureDeviceDiscoverySession for your requirement and then call devices
method to get Array
of currently available devices matching the session’s criteria
Code:
AVCaptureDeviceDiscoverySession *captureDeviceDiscoverySession = [AVCaptureDeviceDiscoverySession discoverySessionWithDeviceTypes:@[AVCaptureDeviceTypeBuiltInWideAngleCamera]
mediaType:AVMediaTypeVideo
position:AVCaptureDevicePositionBack];
NSArray *captureDevices = [captureDeviceDiscoverySession devices];
let discoverySession = AVCaptureDevice.DiscoverySession(deviceTypes: [.builtInWideAngleCamera], mediaType: .video, position: .back)
Available
Device types
Media types
Position