目录中的视频缩略图图像

时间:2014-10-13 06:06:20

标签: ios video ios7

我是iOS的新手。我想在图片视图中显示视频缩略图,这样点击按钮就可以打开一个图库,通过选择一个视频,它应该显示视频缩略图......请帮忙我...

2 个答案:

答案 0 :(得分:1)

照片库中存储了视频和图像,首先,您希望在iOS 8之前获取库中的所有视频,this post向您展示如何使用AssetsLibrary库获取图片。您可以在执行此操作时过滤视频,然后获得可以表示图像或视频的ALAsset,假设在您选择视频时,您获得ALAsset命名资源,使用以下函数将获得该视频的缩略图图像

如果您使用ALAsset。

UIImage *thumbnail = [UIImage imageWithCGImage:[asset thumbnail]];

对于iOS 8,Apple推出了一个新的Photos库,你可以像上面那样从库中获取所有视频,一个视频或图像由PHAsset表示,假设你有一个PHAsset ivar命名资产,你可以使用以下方法来从这个资产中获取UIImage。看看requestImageForAsset:targetSize:contentMode:options:resultHandler:,您可以将目标大小设置为您想要的拇指图像的大小,在resultHandler中,您将获得UIImage。

答案 1 :(得分:0)

我使用下面的代码来获取在文档目录中下载的视频缩略图

- (UIImage *)thumbnailFromVideoAtURL:(NSURL *)url
{
   AVURLAsset *aImgAsset = [[AVURLAsset alloc] initWithURL:url options:nil];
   AVAssetImageGenerator *aImgGenerator = [[AVAssetImageGenerator alloc] aImgAsset];
   aImgGenerator.appliesPreferredTrackTransform = YES;
   NSError *err = NULL;
   CMTime time = CMTimeMake(1, 2);
   CGImageRef aImgRef = [aImgGenerator copyCGImageAtTime:time actualTime:NULL error:&err];
   UIImage *aImgThumb = [[UIImage alloc] initWithCGImage:aImgRef];

   return aImgThumb;
}