我是iOS的新手。我想在图片视图中显示视频缩略图,这样点击按钮就可以打开一个图库,通过选择一个视频,它应该显示视频缩略图......请帮忙我...
答案 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;
}