iPad:示例项目AVCapture:针对不同方向旋转视频预览?

时间:2011-04-16 22:34:12

标签: ipad orientation video-capture

iPad:示例项目AVCapture:如何针对不同方向旋转视频预览?

2 个答案:

答案 0 :(得分:1)

如果你想采取简单的方法,除了UIInterfaceOrientation之外不要支持任何方向,并且图像将被正确显示。

否则,您必须将翻译应用于willAnimateRotationToInterfaceOrientation:duration:方法中与界面方向相反的预览图层。例如,UIInterfaceOrientationLandscapeLeft是(IIRC)顺时针旋转90°。因此,对预览图层应用90°逆时针旋转以进行补偿。

答案 1 :(得分:0)

这就是我使用的:

- (void)willAnimateRotationToInterfaceOrientation: (UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
    [CATransaction begin];
    self.prevLayer.orientation = toInterfaceOrientation; //AVCaptureVideoPreviewLayer
    self.prevLayer.frame = self.view.frame;
    [CATransaction commit];

    [super willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
}