[Bug 788431] tracers: Latency tracer should not include sink synchronization pause

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Oct 11 15:17:29 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=788431

--- Comment #3 from Nicolas Dufresne (stormer) <nicolas at ndufresne.ca> ---
Created attachment 361332
  --> https://bugzilla.gnome.org/attachment.cgi?id=361332&action=edit
latency-tracer: Exclude synchronization time

The goal of this tracer is to measure the processing latency between a
src and a sink. In push mode, the time was read after the chain function
have returned. As the amount of time we wait to get synched is reverse
to the amount of latency the source introduced, the result was quite
surprising.

This patch moves the latency calculation in the pre-push hook. When
there is no processing in a a pipeline (e.g. fakesrc ! fakesink), the
latency will now be 0 as it's supposed to. For pull mode, the code was
already correct. When GstBaseSink operate in pull mode, the processing
time is done durring the pull, so pull-post is the right hook. The
synchronization will happen after the pull has ended. Note that
GstBaseSink rarely operate in pull mode.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list