Показвам визуализация на видео на прозорец за заснемане 320x320 и използвам videoGravity, за да запълня квадрата:
captureVideoPreviewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
След това вземам изображение с фото качество от сесията и го изрязвам, започвайки от 0, 0. Проблемът, който имам, е, че запазеното изображение се показва повече в горната част (но не вляво) на рамката, отколкото визуализацията. По принцип бих искал да виждам само горната част на рамката, изглежда, че виждам средната част, надявам се, че се обяснявам правилно.
Ето кодовия фрагмент, ако помага:
AVCaptureVideoPreviewLayer *captureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
captureVideoPreviewLayer.frame = _cameraView.bounds;
[_cameraView.layer addSublayer:captureVideoPreviewLayer];
captureVideoPreviewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
Благодаря предварително за всяка помощ.
наздраве
captureVideoPreviewLayer.position=CGPointMake(CGRectGetMidX(_cameraView.bounds), 160);
да го позиционирам, но без радост, същият проблем. - person mrEmpty   schedule 04.06.2012