我想在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