2016-08-08 2 views
0

Я бегу AVCaptureSession, чтобы получать неподвижные изображения от него при действии пользователя (нажатие кнопки). У меня есть проблемы с ориентацией, повернутой на 90 градусов, хотя я установить эти значения:AVCaptureStillImageOutput Ориентация изображения неверна

- (void)setupAVCapture { 
    //Capture session 
    _session = nil; 
    _session = [[AVCaptureSession alloc] init]; 
    [_session setSessionPreset:AVCaptureSessionPreset1280x720]; 
//preview view 
    self.previewLayer = nil; 
    self.previewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:_session]; 
    [self.previewLayer setVideoGravity:AVLayerVideoGravityResizeAspectFill]; 

    CALayer *rootLayer = [_previewView layer]; 
    [rootLayer setMasksToBounds:YES]; 
    [[_previewLayer connection]setVideoOrientation:AVCaptureVideoOrientationPortrait]; 
} 

И

- (IBAction)captureImage:(id)sender { 

    AVCaptureConnection *stillImageConnection = [stillImageOutput connectionWithMediaType:AVMediaTypeVideo]; 
    [stillImageConnection setVideoOrientation:AVCaptureVideoOrientationPortrait]; 
    [stillImageOutput captureStillImageAsynchronouslyFromConnection:stillImageConnection completionHandler:^(CMSampleBufferRef imageDataSampleBuffer, NSError *error) { 
     if (imageDataSampleBuffer != nil) { 
      NSData *imageData = [AVCaptureStillImageOutput jpegStillImageNSDataRepresentation:imageDataSampleBuffer]; 
      CGDataProviderRef dataProvider = CGDataProviderCreateWithCFData((CFDataRef)imageData); 
      CGImageRef cgImageRef = CGImageCreateWithJPEGDataProvider 
      (dataProvider, nil, YES, kCGRenderingIntentDefault); 

      _capturedImage = [UIImage imageWithCGImage:cgImageRef scale:1.0 orientation:UIImageOrientationUp]; 
     } 
    }]; 

Заранее спасибо

+0

Попробуйте это, я думаю, что это та же проблема. http://stackoverflow.com/questions/3561738/why-avcapturesession-output-a-wrong-ориентация –

+0

Мое приложение - это портрет, и я задал ориентацию сеанса и неподвижную ориентацию изображения на портрет и ориентацию изображения на UIImageOrientationUp! но изображение повернуто вправо – OXXY

+0

Вы когда-нибудь получали эту работу, я, похоже, имею аналогичную проблему. – BarrettJ

ответ

0

Попробуйте с UIImageOrientationLeft ориентацией.

+0

как параметр для изображенияWithCGImage? – OXXY

Смежные вопросы