花了一些时间并不能真正理解哪里出了问题。
我正在使用 GPUImage 0.1.3(来自 CocoaPods)并且代码非常简单:
GPUImageiOSBlurFilter *iosBlur = [[GPUImageiOSBlurFilter alloc] init];
UIImage *splashScreenImage = [UIImage imageNamed:@"Splash"];
UIImage *bluredImage = [iosBlur imageByFilteringImage:splashScreenImage];
bluredImage 为零。 我单步执行了代码,iosBlur 不是 nil,splashScreenImage 不是 nil 并且包含正确的图像(在调试器的快速 View 中检查过)。所以我不知道哪里出了问题。
最佳答案
这就是我解决它的方法 - 粗糙,但有效。 顺便说一句 - 这仍然发生在 GPUImage 的最新代码中,尽管我主要在模拟器中看到这个问题。
int errorCount = 0;
UIImage *blurImage;
//Loop workaround for some unknown GPUImage issue where sometimes the result is nil.
while (! (blurImage = [imageFilter imageByFilteringImage:image]) ) {
++errorCount;
}
if (errorCount > 0) {
NSLog(@"GPUImageiOSBlurFilter imageByFilteringImage error count: %i", errorCount);
}
关于ios - GPUImageiOSBlurFilter imageByFilteringImage : returns nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22810163/