<div dir="ltr">Hi All,<div><br></div><div>I'm hoping someone can chime in here with a little bit of explanation, as I think I have gotten myself somewhat confused on this topic.</div><div><br></div><div>I've read the following:</div><div>(from here, <a href="https://gstreamer.freedesktop.org/documentation/application-development/advanced/clocks.html#latency-compensation">https://gstreamer.freedesktop.org/documentation/application-development/advanced/clocks.html#latency-compensation</a>)</div><div>Before the pipeline goes to the PLAYING state, it will, in addition to selecting a clock and calculating a base-time, calculate the latency in the pipeline. It does this by doing a LATENCY query on all the sinks in the pipeline. The pipeline then selects the maximum latency in the pipeline and configures this with a LATENCY event.<br></div><div><br></div><div>So this is "automatic" and the application itself does not need to be involved at this point ... correct so far?</div><div><br></div><div>Now, what if I want to know what the latency value is (of what was configured automatically by the pipeline)? </div><div>Can I use gst_pipeline_get_latency()?</div><div>Am I correct that this function would return the currently *configured* pipeline latency?</div><div>Or should I use a query with gst_query_new_latency()?</div><div>Though, I think this function would get me the current *actual* latency (vs what is configured), right?</div><div><br></div><div>Finally, if I want to change the latency value, is that done via gst_pipeline_set_latency() or gst_query_set_latency() ?</div><div><br></div><div>Much thanks in advance,</div><div>-jim</div></div>