gthub下载地址:
具体项目看github地址项目。
关键代码说明:
self.metaDataOutput = [[AVCaptureMetadataOutput alloc]init];
if([self.captureSession canAddOutput:self.metaDataOutput]) {
[self.captureSession addOutput:self.metaDataOutput];
// 优化媒体的输出数据,只检测检测人脸
self.metaDataOutput.metadataObjectTypes = @[AVMetadataObjectTypeFace];
// 在主线程中设置代理方法,检测视频中一祯一祯的数据,因为需要用到硬件加速器,
dispatch_queue_t queue = dispatch_get_main_queue();
// 开始检测
[self.metaDataOutput setMetadataObjectsDelegate:self queue:queue];
}
代理回调
#pragma AVCaptureMetadataOutputObjectsDelegate
-(void)captureOutput:(AVCaptureOutput *)output didOutputMetadataObjects:(NSArray<__kindof AVMetadataObject *> *)metadataObjects fromConnection:(AVCaptureConnection *)connection {
NSLog(@"检测到了%lu张人脸",(unsigned long)metadataObjects.count);
[self.delegate showFace:metadataObjects];
}