Synchronized Pipelines

Sebastian Dröge sebastian at centricular.com
Sat Nov 14 10:03:42 UTC 2020


On Fri, 2020-11-13 at 17:43 -0500, Stirling Westrup wrote:
> 
> [...]
>
> Do you have any recommendations of the best/easiest way to do what
> we're doing? Should we not be modelling things as sinks and sources
> but as pairs of connected transformational elements? At this point I'm
> quite confused as to if I'm even approaching this correctly.

What happens sounds very much like you don't enforce the same base time
on all involved pipelines.

You can do so by doing the following *before* setting the pipelines to
PLAYING:

    gst_element_set_base_time(pipeline, X);
    gst_element_set_start_time(pipeline, GST_CLOCK_TIME_NONE);

In addition you also want to force the same clock on all pipelines:

    gst_pipeline_use_clock(pipeline, clock);


You could e.g. use a base time of 0 on all pipelines and the system
clock, or set the base time to the clock time when you start the very
first pipeline.

-- 
Sebastian Dröge, Centricular Ltd · https://www.centricular.com




More information about the gstreamer-devel mailing list