取得视频第一帧 HA


AVFoundationframework 

 CoreMediaframework

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

} 

原文地址:https://www.cnblogs.com/halou/p/2089438.html