Compensating compute latency

Bruce Tsai wagamama.tsai at
Thu May 4 08:26:43 UTC 2017

When pipeline is going to “PLAYING” state, all sink elements query latency of upstream elements.
The total latency is considered in sink elements.
All elements that receives latency query shall report their latencies for sink elements.

Yi-Lung (Bruce) Tsai
wagamama.tsai at

> On May 4, 2017, at 3:31 PM, Baby Octopus <jagadishkamathk at> wrote:
> Hi,
> Was wondering if there is a need to handle compute latency in gstreamer for
> synchronization. I went through the basesink code basesink_do_sync() to see
> if the computational(processing) latency is handled but it doesn't seem to
> Say for example A, B, C D are video filters and each take 10ms to process a
> video frame for 1920x1980, on certain machine. We have a pipeline
> capture ! A ! B ! C ! D ! render
> None of the elements have buffering, hence each of them report a latency of
> 0ms. The pipeline itself will have 0ms latency, but the buffer would reach
> the sink 40ms late, and it can be dropped if QOS is enabled
> So my question is if some averaging algorithm needs to be implemented in
> basesink to take care of this?
> ~BO
> --
> View this message in context:
> Sent from the GStreamer-devel mailing list archive at
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the gstreamer-devel mailing list