Chcę sprawdzić, czy iPhone, który obsługuje obsługuje przechwytywanie wideo Full HD. I okazało się, że należy zwrócić się do sesji AV, jeślicanSetSessionPreset: AVCaptureSessionPreset1920x1080 zwraca "tak" na iPhone 4
avSession = [[AVCaptureSession alloc] init];
[avSession beginConfiguration];
if ([avSession canSetSessionPreset:AVCaptureSessionPreset1920x1080]) {
avSession.sessionPreset = AVCaptureSessionPreset1920x1080;
NSLog(@"FULLHD");
} else {
avSession.sessionPreset = AVCaptureSessionPreset1280x720;
NSLog(@"HDREADY");
}
[avSession commitConfiguration];
Działa to dobrze na iPhone 5 (który rzeczywiście obsługuje pełne HD przechwytywanie), ale na iPhone 4 próbuje też ustawić preset, ale wyraźnie się nie powiedzie. Co ja robię źle?
Dzięki z góry, Matthias
ten sam problem tutaj. Aby to zrobić: if ([captureSession canSetSessionPreset: AVCaptureSessionPreset1920x1080] == YES) { [captureSession setSessionPreset: AVCaptureSessionPreset1920x1080]; } else { [captureSession setSessionPreset: AVCaptureSessionPresetPhoto]; } działa na moim iPhonie 5, ale po uruchomieniu na moim iPhonie 4 próbuje ustawić go na 1929X1080, a sesja nic nie pokazuje. Jeśli wymuszam ustawienie zdjęcia, to działa na iPhone 4. Ktoś? – zumzum