Can the identity plugin cause frame drop?
michael.gruner at ridgerun.com
Tue Jul 9 00:47:05 UTC 2019
The handoff will be emitted for every buffer and won’t drop buffers. Recall, however, that signals block. I suspect that you have an indirect buffer drop on nvcamerasrc.
Nvcamera src has an internal (limited) buffer queue. If you block the processing on the signal callback for too long, the queue will start filling up and, eventually, drop buffers. I believe that you can increase this queue size a lot, but if your signal processing takes more than 33ms (assuming a 30fps capture), eventually you’ll end up losing buffers in the same way.
Make sure the processing your are doing on the callback actually is below your period deadline. If it’s below, but high, I recommend adding a queue after the identity to split processing in different threads.
> On Jul 8, 2019, at 3:40 PM, pisymbol . <pisymbol at gmail.com> wrote:
> Is this true?
> So if I have a source like this:
> nvcamerasrc ! identity name=tap ! magicunicorns ! ...
> Can tap's "handoff" callback cause frame drops in the pipe/source? Or is it that the "handoff" function won't see every frame no matter what I do? I'm talking fixed 30fps here which isn't THAT fast.
> I thought "identity" was the safest way to tape the pipe (I need to get all the buffers to extra some metadata out of each one etc.).
> If it can cause a drop, should I try to use tee/queue idiom to see all the buffers?
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the gstreamer-devel