Ios GPUImage2无法实时循环通过过滤器

Ios GPUImage2无法实时循环通过过滤器,ios,swift,image-processing,gpuimage,gpuimagestillcamera,Ios,Swift,Image Processing,Gpuimage,Gpuimagestillcamera,下面的代码块利用GPUImage2库实时过滤视频。这个想法是能够循环这些过滤器的基础上点击按钮。但只有一个过滤器将被应用,每当我尝试并循环到下一个过滤器时,它不会改变。以下是我的功能: func filterToggle() { switch(filterSelected) { case 0: let sketch = SketchFilter() camera! --> sketch --> renderView br

下面的代码块利用GPUImage2库实时过滤视频。这个想法是能够循环这些过滤器的基础上点击按钮。但只有一个过滤器将被应用,每当我尝试并循环到下一个过滤器时,它不会改变。以下是我的功能:

func filterToggle() {
    switch(filterSelected) {
    case 0:
        let sketch = SketchFilter()
        camera! --> sketch --> renderView
        break;
    case 1:
        let toon = ToonFilter()
        camera! --> toon --> renderView
        break;
    default:
        break;
    }
    camera?.startCapture()
}

谢谢你的帮助

在切换到其他过滤器之前,必须断开先前过滤器与renderView和相机的连接

在向链中添加新过滤器之前,请在相机和上一个过滤器上调用
removeAllTargets()
(为此,您可能需要一个存储上一个过滤器的实例变量)。FilterShowcase的Mac版本实际演示了这一点