Как сделать автофокус, когда пользователь перемещает мобильный телефон в iOS?

Я пытался, когда пользователь перемещается, я хочу сделать автофокус, здесь я создал камеру с,

AVCaptureSession, потому что, если я открою камеру через UIImagePickerController, автофокусировка будет невозможна, поэтому я предпочел AVCaptureSession.

 //Capture Session
    AVCaptureSession *session = [[AVCaptureSession alloc]init];
    session.sessionPreset = AVCaptureSessionPresetPhoto;

    //Add device
    AVCaptureDevice *device =
    [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
    // SETUP FOCUS MODE
    if ([device lockForConfiguration:nil]) {

        [device setFocusMode:AVCaptureFocusModeAutoFocus];

        [device unlockForConfiguration];
    }
    else{
        NSLog(@"error while configuring focusMode");
    }

    //Input
    AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:nil];

    if (!input)
    {
        NSLog(@"No Input");
    }

    [session addInput:input];

    //Output
    AVCaptureVideoDataOutput *output = [[AVCaptureVideoDataOutput alloc] init];
    [session addOutput:output];
    output.videoSettings =
    @{ (NSString *)kCVPixelBufferPixelFormatTypeKey : @(kCVPixelFormatType_32BGRA) };

    //Preview Layer
    AVCaptureVideoPreviewLayer *previewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
    UIView *myView = viewForCamera;
    previewLayer.frame = myView.bounds;
    previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
    [viewForCamera.layer addSublayer:previewLayer];

    //Start capture session
    [session startRunning];

Но мой код не работает, потому что я сделал какую-то ошибку. Пожалуйста, помогите мне преодолеть эту проблему.


person Kishore Kumar    schedule 09.08.2016    source источник
comment
В чем проблема? Режим фокусировки не работает?   -  person Teja Nandamuri    schedule 09.08.2016
comment
@TejaNandamuri автофокус не работает, бро   -  person Kishore Kumar    schedule 09.08.2016
comment
проверьте, поддерживается ли isFocusMode или нет. если ([устройство isFocusModeSupported:AVCaptureFocusModeAutoFocus]   -  person Teja Nandamuri    schedule 09.08.2016
comment
@TejaNandamuri хорошо, братан, я проверю   -  person Kishore Kumar    schedule 09.08.2016
comment
Также обратитесь к этому ответу, stackoverflow.com/questions/5391203/   -  person Teja Nandamuri    schedule 09.08.2016
comment
Подсказывают, что нужно поставить точку интереса для режима автофокуса, иначе он не будет знать, куда фокусироваться.   -  person Teja Nandamuri    schedule 09.08.2016
comment
Если это решит вашу проблему, вы можете пометить свой вопрос как дубликат этого вопроса.   -  person Teja Nandamuri    schedule 09.08.2016
comment
@TejaNandamuri хорошо, братан, конечно   -  person Kishore Kumar    schedule 09.08.2016