最近遇到了Brad Larson的GPUImage项目。对链接过滤器的用途感到困惑。
使用GPUImageFilterGroup和GPUImageFilterPipeline(过滤器链)与为每个过滤器执行addTarget:有什么区别?
感谢。
答案 0 :(得分:4)
这是方便的问题。
从一系列子过滤器创建GPUImageFilterGroup时,您可以将其视为单个过滤器。这意味着您可以从过滤器链中删除一个组作为一个单元,更改目标等。过滤器组子类可以将常用的过滤器链打包成可重复使用的单元,并具有相关的公开属性以进行调整。
例如,GPUImageCannyEdgeDetectionFilter是一个GPUImageFilterGroup,由执行Canny边缘检测过程的几个过滤器步骤组成。你不需要知道任何使用它作为一个独特的过滤器,因为它在组内被抽象出来。