iOS - Как захватить изображение: разрешение 3840x2160, используя GPUImageStillCamera?
Мне нужно захватить изображение с самым высоким разрешением, используя GPUImageStillCamera, я пробовал эти свойства, такие как: AVCaptureSessionPresetPhoto, AVCaptureSessionPreset1920x1080. Это дает мне немного хороший результат. Обратите внимание, что когда я записываю изображение, используя свойство AVCaptureSessionPresetPhoto вместо AVCaptureSessionPresetHigh, тогда оно (AVCaptureSessionPresetPhoto) дает лучший результат, чем AVCaptureSessionPresetHigh. Но когда я использую свойства AVCaptureSessionPreset3840x2160, значит:
videoCamera = [[GPUImageStillCamera alloc] initWithSessionPreset:AVCaptureSessionPreset3840x2160 cameraPosition:AVCaptureDevicePositionBack]; .
Мое приложение вылетает (даже в последней версии iPhone) и показывает это сообщение (я использую iPhone 5 S, версия:9.3.1, версия Xcode: 7.3)
Завершение работы приложения из-за необработанного исключения "NSInvalidArgumentException", причина: "AVCaptureSessionPreset3840x2160 не поддерживается заранее.
Есть ли способ проверить, поддерживается ли конкретный AVCaptureSessionPreset на устройстве iOS? Я хочу установить разрешение AVCaptureSession, но я не знаю, как проверить, способно ли устройство захватывать кадры камеры с использованием выбранного разрешения. Короче говоря, мне нужно изображение самого высокого качества, самого большого размера для всех различных устройств iPhone. Любое предложение будет отличным. Спасибо, парни.
1 ответ
Ты можешь использовать AVCaptureSession
"s sessionPreset
свойство что-то вроде ниже,
cameraSession.sessionPreset = AVCaptureSessionPresetHigh;
Тебе стоит попробовать AVCaptureSessionPresetHigh
в вашем коде тоже.
Надеюсь, это поможет:)