>What we essentially need is a safe way for a filter _plugin_ (while I >was referring to the core part handling the filtering) to deliver N >*more* (cloned) frames to the core, right?
I think you're misunderstanding my approach. It's not an issue of "more" or "less" frames; I want to treat the two streams of frames as entirely separate, so filters are free to add, delete, reorder, delay (as with smartyuv and such), or do whatever they want and the core doesn't have to worry about keeping track. If anything, doing away with zero copy for now and making each filter copy frames to a distinct output buffer will help enforce this idea of having unconnected input and output streams, I think. (And now that I think of it, most filters end up doing something or other to the entire frame anyway, so not doing zero copy won't make much difference.) --Andrew Church achu...@achurch.org http://achurch.org/