AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:url options:nil];
AVAssetImageGenerator *generator = [[AVAssetImageGenerator alloc] initWithAsset:asset];
generator.requestedTimeToleranceAfter = kCMTimeZero;
generator.requestedTimeToleranceBefore = kCMTimeZero;
for (Float64 i = 0; i < CMTimeGetSeconds(asset.duration) * FPS ; i++){
@autoreleasepool {
CMTime time = CMTimeMake(i, FPS);
NSError *err;
CMTime actualTime;
CGImageRef image = [generator copyCGImageAtTime:time actualTime:&actualTime error:&err];
UIImage *generatedImage = [[UIImage alloc] initWithCGImage:image];
[self saveImage: generatedImage atTime:actualTime]; // Saves the image on document directory and not memory
CGImageRelease(image);
}
}
iOS获取视频所有图片
最新推荐文章于 2021-03-05 14:41:19 发布
本文介绍了一种使用Objective-C从视频中按帧截取图片的方法。通过创建AVURLAsset对象并利用AVAssetImageGenerator来指定时间点获取图像,最终将生成的CGImageRef转换为UIImage保存。
1301

被折叠的 条评论
为什么被折叠?



