我正在使用GPUImageVideoCamera
在视频流上运行一组过滤器(不是使用GPUImageFilterPipeline
,而是处理样本缓冲区)。
要更改我的过滤器,我只需使用:
[self.filterPipeline replaceAllFilters:self.warmFilterArray];
或[self.filterPipeline replaceAllFilters:self.coolFilterArray];
或[self.filterPipeline removeAllFilters];
每当我更换过滤器时,我都会遇到崩溃问题。崩溃是不一致的,但如果我过快地更换过滤器,我更有可能崩溃。
我怀疑它与过滤器链中的目标被突然删除有关。有关如何安全删除过滤器的任何想法?感谢
答案 0 :(得分:0)
我通过使用具有多个输入的多个管道解决了该问题。我将要处理的样本缓冲区发送到适当的输入,这样我就可以避免在处理过程中从链中删除过滤器了!