“unrecognized selector” when attempting to access CIFilter's outputImage

后端 未结 2 640
轮回少年
轮回少年 2021-01-19 13:04

I\'m experimenting with Core Image (on OS X, 10.7.3) for the first time and am running into a brick wall. I\'m certain this is something silly I\'m doing and just need some

2条回答
  •  长发绾君心
    2021-01-19 13:36

    I believe your extents are the culprit (however strange it is). When I change the extents to be a CIVector* it works.

    NSURL *imageURL = [NSURL fileURLWithPath:@"/Users/david/Desktop/video.png"];
    CIImage *inputImage = [CIImage imageWithContentsOfURL:imageURL];
    CIFilter *filter = [CIFilter filterWithName:@"CIAreaAverage"];
    [filter setValue:inputImage forKey:kCIInputImageKey];
    CGRect inputExtent = [inputImage extent];
    CIVector *extent = [CIVector vectorWithX:inputExtent.origin.x
                                           Y:inputExtent.origin.y
                                           Z:inputExtent.size.width
                                           W:inputExtent.size.height];
    [filter setValue:extent forKey:kCIInputExtentKey];
    CIImage *outputImage = [filter valueForKey:@"outputImage"];
    

    [inputImage extent] returns an CGRect, but apparently a CIVector* works better.

提交回复
热议问题