Код: Выделить всё
let devices = AVCaptureDevice.DiscoverySession(deviceTypes: [.builtInWideAngleCamera], mediaType: .video, position: .back)
Первую широкоугольную камеру с виртуальным 2-кратным увеличением я искал следующим образом:
Код: Выделить всё
if let wideDevice = AVCaptureDevice.default(.builtInWideAngleCamera, for: .video, position: .back) {
for formats in wideDevice.formats {
if formats.supportedMaxPhotoDimensions.last!.width > 8000 {
self.is48MPCapable = true
if !formats.secondaryNativeResolutionZoomFactors.isEmpty {
self.isSecondTelephotoAvailable = true
}
}
}
}
< /code>
Теперь, когда ультра широкая камера имеет 48 Мп возможностей, вы должны запустить выше кода для каждого устройства: сверхширого, широкоугольный и телеобъектив. Я предполагаю, что у Apple будет более прямой метод. Есть ли лучший подход? < /P>
wideDevice.virtualDeviceSwitchOverVideoZoomFactors
Подробнее здесь: https://stackoverflow.com/questions/797 ... al-2x-crop
Мобильная версия