获取第一帧图片

导入 AVFoundation.Framework、CoreMedia.Framework

实现代码例如以下:

+ (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;
}

获取多帧图片的办法

[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];
}
}];

最新文章

  1. 【java】jstack
  2. hdu-1856-More is better
  3. df,du,mount
  4. jquery中.attr('value')和.val()的区别
  5. several生命周期
  6. 【py登陆】python模拟登录
  7. request.getParameter与request.getAttribute()
  8. Android框架 加载图片 库 Picasso 的使用简介
  9. asp.net中导出Execl的方法
  10. zendstudio 出现failed to create the java machine转
  11. aspx页面状态管理Cookie和ViewState
  12. 一些嵌入式和FPGA相关模块的开源
  13. Maven学习总结——聚合与继承
  14. VS2008下OpenCV1.0的设置
  15. 对consistencygroup的一些研究和实践
  16. 使用SeekBar办Android调色板
  17. IntelliJ IDEA运行慢解决方法
  18. FeignClient注解及参数
  19. asp.net core 通过ajax调用后台方法(非api)
  20. c++ STL概述

热门文章

  1. Python之双色球选购和三级菜单问题
  2. WordPress个性页面制作教程
  3. express模块安装使用命令配置
  4. python+opencv+Face++实现人脸识别比对
  5. Jmeter接口测试---get和post及解决乱码问题
  6. 廖雪峰 Git教程学习笔记 原文 http://www.liaoxuefeng.com/
  7. php经典bug
  8. vscode常好用的插件以及几个快捷操作
  9. LDA主题模型(理解篇)
  10. Handling unhandled exceptions and signals