iphone – 你如何使用AVCaptureStillImageOutput,captureStillIm
发布时间:2020-12-14 19:55:57 所属栏目:百科 来源:网络整理
导读:如何设置完成处理程序: captureStillImageAsynchronouslyFromConnection:completionHandler: for AVCaptureStillImageOutput? (void)captureDelegate:(CMSampleBufferRef)缓冲区错误:(NSError *)错误; ? 解决方法 使用块. 像这样的东西: [[self stil
如何设置完成处理程序:
captureStillImageAsynchronouslyFromConnection:completionHandler: for AVCaptureStillImageOutput? >(void)captureDelegate:(CMSampleBufferRef)缓冲区错误:(NSError *)错误; ? 解决方法
使用块.
像这样的东西: [[self stillImageOutput] captureStillImageAsynchronouslyFromConnection:videoConnection completionHandler:^(CMSampleBufferRef imageDataSampleBuffer,NSError *error) { if (imageDataSampleBuffer != NULL) { NSData *imageData = [AVCaptureStillImageOutput jpegStillImageNSDataRepresentation:imageDataSampleBuffer]; UIImage *image = [[UIImage alloc] initWithData:imageData]; ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; [library writeImageToSavedPhotosAlbum:[image CGImage] orientation:(ALAssetOrientation)[image imageOrientation] completionBlock:^(NSURL *assetURL,NSError *error){ if (error) { id delegate = [self delegate]; if ([delegate respondsToSelector:@selector(captureStillImageFailedWithError:)]) { [delegate captureStillImageFailedWithError:error]; } } }]; [library release]; [image release]; } else if (error) { id delegate = [self delegate]; if ([delegate respondsToSelector:@selector(captureStillImageFailedWithError:)]) { [delegate captureStillImageFailedWithError:error]; } } }]; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |