我正在使用AVCaptureMetadataOutput
来检测iOS上的面孔,而我正在尝试在用户旋转设备后设置视频的方向。但是,似乎我不能这样做,因为每当我在isVideoOrientationSupported
所拥有的唯一AVCaptureConnection上调用getter AVCaptureMetadataOutput
时,它总是返回false。我已经在可以想象的每个地方尝试了下面的代码,但它总是返回no。有没有办法为我的元数据设置方向?
AVCaptureConnection *conn = [self.metadataOutput connectionWithMediaType:AVMediaTypeMetadataObject];
NSLog(@"%@",self.metadataOutput.connections);
if (!conn) {
NSLog(@"NULL CONNECTION OBJ");
}
if ([conn isVideoOrientationSupported]) {
NSLog(@"Supported!");
}
else {
NSLog(@"Not supported");
}
答案 0 :(得分:0)
Apple工程师在Apple Developer论坛上为我解决了这个问题。这是link。这是他们的回应:
如果您要翻译元数据对象'协调空间 另一个
AVCaptureOutput
的那个(例如AVCaptureVideoDataOutput
),使用- (AVMetadataObject *)transformedMetadataObjectForMetadataObject:(AVMetadataObject *)metadataObject connection:(AVCaptureConnection *)connection NS_AVAILABLE_IOS(6_0);
它位于AVCaptureOutput.h中。如果你想 将坐标转换为视频的坐标空间 预览图层,使用AVCaptureVideoPreviewLayer.h' s- (AVMetadataObject *)transformedMetadataObjectForMetadataObject:(AVMetadataObject *)metadataObject NS_AVAILABLE_IOS(6_0);