I have an application where several image processing nodes need to be fed by previously recorded video as fast as possible, but without dropping any frames. To keep memory overhead down, I'm using nodelets to take advantage of the zero-copy mechanism, but that limits me to using a topic/`ImageTransport` topology. The challenge then becomes keeping the topic queues full, but not overflowing and causing a video frame to not be processed because it was dropped. As far as I can tell, though, there's no built-in way to have `publish()` block if any of its downstream queues are full.
Is this option hiding somewhere, or do I have to come up with some other mechanism to manage the data flow?
↧