BradLarson / GPUImage

An open source iOS framework for GPU-based image and video processing
http://www.sunsetlakesoftware.com/2012/02/12/introducing-gpuimage-framework
BSD 3-Clause "New" or "Revised" License
20.22k stars 4.62k forks source link

Add Two GPUImageFilterGroup Doesn't work #2474

Open vaghasiya opened 7 years ago

vaghasiya commented 7 years ago

-(void)viewDidLoad {

  [super viewDidLoad];    
  imageToShow = [[GPUImageView alloc] initWithFrame:CGRectMake(00, 30, 375, 375)];
  UIImage * image = [UIImage imageNamed:@"24.jpg"];
  [self.view addSubview:imageToShow];
  gpuImagePicture = [[GPUImagePicture alloc] initWithImage:image];
  group_filter = [[GPUImageFilterGroup alloc] init];

  amatorkafilter = [[GPUImageAmatorkaFilter alloc] initWithImageName:@"basic_2" ];

  brightness = [[GPUImageBrightnessFilter alloc]init];
  [brightness setBrightness:0];

  bulr = [[GPUImageGaussianBlurFilter alloc]init];
  [bulr setBlurRadiusInPixels:10];

  rgb = [[GPUImageRGBFilter alloc]init];
  rgb.red=255.0f/255.0f;
  rgb.blue=0.0f/255.0f;
  rgb.green=255.0f/255.0f;

  [amatorkafilter addTarget:rgb];
  [rgb addTarget:bulr];

  ((GPUImageFilterGroup *) group_filter).initialFilters = @[amatorkafilter];
  ((GPUImageFilterGroup *) group_filter).terminalFilter = bulr;

  [gpuImagePicture addTarget:group_filter];
  [group_filter addTarget:imageToShow];
  [gpuImagePicture processImage];

}

-(IBAction)slider_value_change:(id)sender{

bulr.blurRadiusInPixels=_slider.value;
[gpuImagePicture processImage];

}

It's work first time only. When we change blur value by slider its doesn't work. if we add brightness filter instance of amatorkafilter than its work .