フィルターを変更しようとすると問題が発生します。
私のviewDidLoadでこれを行います:
filter = [[GPUImageSepiaFilter alloc] init];
[videoCamera addTarget:filter];
filterView = (GPUImageView *)self.view;
[filter addTarget:filterView];
filterView は GPUImageView *filterView; を使用して .h で宣言されます。
私の問題はこの方法にあります:
-(void)changeEffect
{
[videoCamera removeAllTargets];
[filter removeAllTargets];
filter = [[GPUImageColorInvertFilter alloc] init];
[videoCamera addTarget:filter];
[filter addTarget: filterView];
}
命令 [filter addTarget: filterView] で、次のエラーが表示されます: * キャッチされない例外 'NSInvalidArgumentException' が原因でアプリを終了しています。理由: '* -[__NSArrayM insertObject:atIndex:]: オブジェクトを nil にすることはできません'