我想在iPhone的uiimageview中显示url的video图像
是否有可能获得video的第一个图像帧,并显示在uiimageview。 我的video保存在服务器上。 我需要调用url来播放video
一个例子:
NSURL *videoURl = [NSURL fileURLWithPath:videoPath]; AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURl options:nil]; AVAssetImageGenerator *generate = [[AVAssetImageGenerator alloc] initWithAsset:asset]; generate.appliesPreferredTrackTransform = YES; NSError *err = NULL; CMTime time = CMTimeMake(1, 60); CGImageRef imgRef = [generate copyCGImageAtTime:time actualTime:NULL error:&err]; UIImage *img = [[UIImage alloc] initWithCGImage:imgRef]; [YourImageView setImage:img];
希望能帮助到你..
我使用这种方法来做同样的事情
/** * This method retunrs a thumbnail of a Video file */ + (UIImage *)generateThumbnailIconForVideoFileWith:(NSURL *)contentURL WithSize:(CGSize)size { UIImage *theImage = nil; AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:contentURL options:nil]; AVAssetImageGenerator *generator = [[AVAssetImageGenerator alloc] initWithAsset:asset]; generator.maximumSize=size; generator.appliesPreferredTrackTransform = YES; NSError *err = NULL; CMTime time = CMTimeMake(100,100); //change whatever you want here. CGImageRef imgRef = [generator copyCGImageAtTime:time actualTime:NULL error:&err]; theImage = [[UIImage alloc] initWithCGImage:imgRef] ; CGImageRelease(imgRef); return theImage; }
你可以使用MPMoviePlayerController
像下面这样做。
MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:yourVideoURL]; UIImage *videoThumbnail = [player thumbnailImageAtTime:1.0 timeOption:MPMovieTimeOptionNearestKeyFrame]; [player stop];
另请参阅从这个链接AVURLAsset
另一个答案越来越thumbnail从videourl或数据在iPhone SDK