1

我正在尝试使用CIGloom过滤器实现以下功能。但是,我遇到了内存泄漏问题。

我尝试在 iOS7 和 iOS6 设备上运行代码,但问题似乎只发生在 iOS7 中。

- (CIImage*) GloomFilter : (CIImage*) sourceImage{
    id filterReleasePool = [[NSAutoreleasePool alloc] init];

    CIImage * outputImage = sourceImage;

    float gloomRadius = 1. / 10. * outputImage.extent.size.width;

    {
        CIFilter *filter = [ CIFilter filterWithName : @"CIGloom" ];
        [ filter setDefaults ];
        [ filter setValue : [ NSNumber numberWithFloat : gloomRadius ]
                            forKey : @"inputRadius" ];
        [ filter setValue : [ NSNumber numberWithFloat : 1.0 ]
                            forKey : @"inputIntensity" ];
        [ filter setValue : outputImage 
                            forKey : kCIInputImageKey ];
        outputImage = filter.outputImage;
    }

    [ outputImage retain ];

    [ filterReleasePool release ];

    return [ outputImage autorelease ];

有人对此有解决方案吗?

4

0 回答 0