ios-生成系统同步40次花费的时间太长
我的问题是从视频中加载20幅图像花费的时间太长。我想要的缩略图越多,等待的时间就越长。我使用的方法是同步生成框架。有人知道我为什么会有这个问题吗ios-生成系统同步40次花费的时间太长,ios,image,generator,Ios,Image,Generator,我的问题是从视频中加载20幅图像花费的时间太长。我想要的缩略图越多,等待的时间就越长。我使用的方法是同步生成框架。有人知道我为什么会有这个问题吗 AVAssetImageGenerator *generator = [[AVAssetImageGenerator alloc] initWithAsset:asset]; generator.appliesPreferredTrackTransform = YES; generator.requestedTimeToleranceAfter = k
AVAssetImageGenerator *generator = [[AVAssetImageGenerator alloc] initWithAsset:asset];
generator.appliesPreferredTrackTransform = YES;
generator.requestedTimeToleranceAfter = kCMTimeZero;
generator.requestedTimeToleranceBefore = kCMTimeZero;
CGSize maxSize = CGSizeMake(320, 180);
generator.maximumSize = maxSize;
AVAssetImageGeneratorCompletionHandler handler = ^(CMTime requestedTime, CGImageRef im, CMTime actualTime, AVAssetImageGeneratorResult result, NSError *error){
if (result != AVAssetImageGeneratorSucceeded) {
NSLog(@"couldn't generate thumbnail, error:%@", error);
}
UIImage *frameImage = [UIImage imageWithCGImage:im];
dispatch_async(dispatch_get_main_queue(), ^{
[_frameImageView setImage:frameImage];
});
};
[generator generateCGImagesAsynchronouslyForTimes:timeArray completionHandler:handler];
我知道你的问题
生成缩略图需要很多时间,因为您将requestedTimeOranceAfter和requestedTimeOranceBefore设置为kCMTimeZero
长答案:
如果您指定了特定的时间公差,它将转向精度而不是性能。如果你只想视频缩略图,那么你不需要生成高精度的缩略图
这与seekToTime相似,但也有一定的容忍度。参考,部分寻求重新定位播放头
简短回答:
只需删除RequestedTimeolaranceAfter和RequestedTimeolaranceBefore即可。我遇到了同样的问题,你有什么解决方案吗?@ScorpianAlive面对同样的问题,你找到解决方案了吗?