GPUImage imageFromCurrentFramebuffer有时为GPUImageLookupFilter返回nil,它的子类

我一直在为我的项目使用GPUImage ,我正在进入这个问题,其中imageFromCurrentFramebuffer返回零的GPUImageLookupFilter's一些。

我在GPUImageFilterGroupGPUImageFilterGroup样子类如下:

 -(MTLookupFilter *) initWithLookupImageName:(NSString *) lookupImageName { self = [super init]; if (self) { UIImage *image = [UIImage imageNamed:lookupImageName]; self.lookupImageSource = [[GPUImagePicture alloc] initWithImage:image]; GPUImageLookupFilter *lookupFilter = [[GPUImageLookupFilter alloc] init]; [self addFilter:lookupFilter]; [self.lookupImageSource addTarget:lookupFilter atTextureLocation:1]; [self.lookupImageSource processImage]; self.initialFilters = [NSArray arrayWithObjects:lookupFilter, nil]; self.terminalFilter = lookupFilter; } return self; } 

我有几个这个类的对象添加到数组中,我使用:

 - (IBAction)filterAction:(id)sender { NSInteger index = arc4random()%self.filtersArray.count; id filter = self.filtersArray[index]; GPUImagePicture *stillImageSource = [[GPUImagePicture alloc] initWithImage:self.fullImage]; UIImage *filteredimage = nil; [stillImageSource addTarget:filter]; [stillImageSource processImage]; [filter useNextFrameForImageCapture]; filteredimage = [filter imageFromCurrentFramebuffer]; if (filteredimage) { self.imageView.image = filteredimage; } else { NSLog(@"Filtered image is nil"); } } 

imageFromCurrentFramebuffer返回的图像有时是零,我不明白这是因为。 我会感谢任何帮助。 有时甚至对于filterGPUImageAmatorkaFilterGPUImageSoftEleganceFilterGPUImageAmatorkaFilter ,图像都是零,所以我知道这是不是我的子类的问题。