ios取出视频的每一帧图片(关键帧,AVAssetImageGenerator)
2014-11-06 18:01
537 查看
[html] view
plaincopy
[mImageGenerator generateCGImagesAsynchronouslyForTimes:[NSArray arrayWithObject:[NSValue valueWithCMTime:CMTimeMakeWithSeconds(time, NSEC_PER_SEC)]] completionHandler:
^(CMTime requestedTime, CGImageRef image, CMTime actualTime, AVAssetImageGeneratorResult result, NSError *error)
{
NSLog(@"actual got image at time:%f", CMTimeGetSeconds(actualTime));
if (image)
{
[CATransaction begin];
[CATransaction setDisableActions:YES];
[layer setContents:(id)image];
//UIImage *img = [UIImage imageWithCGImage:image];
//UIImageWriteToSavedPhotosAlbum(img, self, nil, nil);
[CATransaction commit];
}
}];
如何取得第一帧
AVFoundationframework
CoreMediaframework
[html] view
plaincopy
+ (UIImage*) thumbnailImageForVideo:(NSURL *)videoURL atTime:(NSTimeInterval)time {
AVURLAsset *asset = [[[AVURLAsset alloc] initWithURL:videoURL options:nil] autorelease];
NSParameterAssert(asset);
AVAssetImageGenerator *assetImageGenerator = [[[AVAssetImageGenerator alloc] initWithAsset:asset] autorelease];
assetImageGenerator.appliesPreferredTrackTransform = YES;
assetImageGenerator.apertureMode = AVAssetImageGeneratorApertureModeEncodedPixels;
CGImageRef thumbnailImageRef = NULL;
CFTimeInterval thumbnailImageTime = time;
NSError *thumbnailImageGenerationError = nil;
thumbnailImageRef = [assetImageGenerator copyCGImageAtTime:CMTimeMake(thumbnailImageTime, 60) actualTime:NULL error:&thumbnailImageGenerationError];
if (!thumbnailImageRef)
NSLog(@"thumbnailImageGenerationError %@", thumbnailImageGenerationError);
UIImage *thumbnailImage = thumbnailImageRef ? [[[UIImage alloc] initWithCGImage:thumbnailImageRef] autorelease] : nil;
return thumbnailImage;
plaincopy
[mImageGenerator generateCGImagesAsynchronouslyForTimes:[NSArray arrayWithObject:[NSValue valueWithCMTime:CMTimeMakeWithSeconds(time, NSEC_PER_SEC)]] completionHandler:
^(CMTime requestedTime, CGImageRef image, CMTime actualTime, AVAssetImageGeneratorResult result, NSError *error)
{
NSLog(@"actual got image at time:%f", CMTimeGetSeconds(actualTime));
if (image)
{
[CATransaction begin];
[CATransaction setDisableActions:YES];
[layer setContents:(id)image];
//UIImage *img = [UIImage imageWithCGImage:image];
//UIImageWriteToSavedPhotosAlbum(img, self, nil, nil);
[CATransaction commit];
}
}];
如何取得第一帧
AVFoundationframework
CoreMediaframework
[html] view
plaincopy
+ (UIImage*) thumbnailImageForVideo:(NSURL *)videoURL atTime:(NSTimeInterval)time {
AVURLAsset *asset = [[[AVURLAsset alloc] initWithURL:videoURL options:nil] autorelease];
NSParameterAssert(asset);
AVAssetImageGenerator *assetImageGenerator = [[[AVAssetImageGenerator alloc] initWithAsset:asset] autorelease];
assetImageGenerator.appliesPreferredTrackTransform = YES;
assetImageGenerator.apertureMode = AVAssetImageGeneratorApertureModeEncodedPixels;
CGImageRef thumbnailImageRef = NULL;
CFTimeInterval thumbnailImageTime = time;
NSError *thumbnailImageGenerationError = nil;
thumbnailImageRef = [assetImageGenerator copyCGImageAtTime:CMTimeMake(thumbnailImageTime, 60) actualTime:NULL error:&thumbnailImageGenerationError];
if (!thumbnailImageRef)
NSLog(@"thumbnailImageGenerationError %@", thumbnailImageGenerationError);
UIImage *thumbnailImage = thumbnailImageRef ? [[[UIImage alloc] initWithCGImage:thumbnailImageRef] autorelease] : nil;
return thumbnailImage;
相关文章推荐
- iphone ios取出视频的每一帧图片(关键帧,AVAssetImageGenerator)
- iphone ios取出视频的每一帧图片(关键帧,AVAssetImageGenerator)
- iphone ios取出视频的每一帧图片(关键帧,AVAssetImageGenerator)
- iphone ios取出视频的每一帧图片(关键帧,AVAssetImageGenerator)
- iOS截取视频某一帧图片(关键帧,AVAssetImageGenerator)
- iOS截取视频某一帧图片(关键帧,AVAssetImageGenerator)
- iOS 视频的每一帧图片关键帧
- iOS AVAssetImageGenerator从视频中截取图片 AVAsynchronousKeyValueLoading
- iOS GPUImage研究六:为视频添加图片水印
- iOS 播放视频进行滑动获取每一帧图片并且通过UIImageView展示出来
- IOS获取视频每一帧的图片方法
- iOS获取视频的第一帧图片thumbnailImage
- iOS开发之初:根据一张gif图,返回其中每一帧的图片数组(ImageView加载gif))
- IOS学习之IOS 使用NINetworkImageView下载图片,google地图图片的获取。
- ios根据视频地址获取某一帧的图像
- iOS应用开发视频教程笔记(八)Controller Lifecycle & ImageScrollWebViews
- 如何在ImagePickerController中只显示图片或者视频?(既视频和图片的筛选)
- ios 从网络下载图片,保存,并用imageview从保存中显示
- IOS异步图片加载SDWebImage的使用时遇到file not found和Symbol Not Found: _objc_storeStrong
- ios 从网络下载图片,保存,并用imageview从保存中显示