UIControlEventTouchDown];
[self.takeButton addTarget:self action:@selector(endAction:) forControlEvents:UIControlEventTouchUpInside];
#pragma mark 视频时间少于10s松开发送
-(void)endAction:(UIButton *)sender
{
AVCaptureStillImageOutput *stillImageOutput = [[AVCaptureStillImageOutput alloc]init];
NSDictionary *outputSettings = [[NSDictionary alloc] initWithObjectsAndKeys:AVVideoCodecJPEG, AVVideoCodecKey, nil];
[stillImageOutput setOutputSettings:outputSettings];
if ([self.captureSession canAddInput:self.captureDeviceInput]) {
[self.captureSession addInput:self.captureDeviceInput];
}
if ([self.captureSession canAddOutput:stillImageOutput]) {
[self.captureSession addOutput:stillImageOutput];
}
AVCaptureConnection *videoConnection = [stillImageOutput connectionWithMediaType:AVMediaTypeVideo];
if (!videoConnection) {
return;
}
[stillImageOutput captureStillImageAsynchronouslyFromConnection:videoConnection completionHandler:^(CMSampleBufferRef imageDataSampleBuffer, NSError *error) {
if (imageDataSampleBuffer == NULL) {
return;
}
NSData *imageData = [AVCaptureStillImageOutput jpegStillImageNSDataRepresentation:imageDataSampleBuffer];
UIImage *image = [UIImage imageWithData:imageData];
NSLog(@"image size = %@", NSStringFromCGSize(image.size));
UIImageView *imageV = [[UIImageView alloc]initWithFrame:(CGRectMake(100, 100, 200, 400))];
imageV.image = image;
imageV.backgroundColor = [UIColor lightGrayColor];
[self.view addSubview:imageV];
}];
}
网友评论