私のアプリの機能により、フル解像度の画像を自動強化しています。iPhone 5 より前のデバイスでは、時間がかかります (71 秒)。
標準の自動拡張コードを使用しています。
CIImage * image = [[CIImage alloc] initWithImage:uiImage];
NSArray * filters = [image autoAdjustmentFilters];
for (CIFilter * filter in filters) {
[filter setValue:image forKey:kCIInputImageKey];
image = filter.outputImage;
}
CGImageRef cgImage = [_context createCGImage:image fromRect:[image extent]];
dispatch_async(dispatch_get_main_queue(), ^{
UIImage * final = [UIImage imageWithCGImage:cgImage scale:uiImage.scale orientation:uiImage.imageOrientation];
CGImageRelease(cgImage);
if (completion)completion(final);
});
アプリを一時停止すると、「createCGImage」メソッドが永遠にかかります。同じ出力をより短時間でレンダリングするにはどうすればよいですか?