Synchronized Pipelines

Michael Gruner michael.gruner at ridgerun.com
Sun Nov 15 05:22:16 UTC 2020


Adding to Sebastian’s advice: you can play with the “stream-sync” property. It will adjust buffer timestamps according to the individual pipeline base times. 

> On 14 Nov 2020, at 04:03, Sebastian Dröge <sebastian at centricular.com> wrote:
> 
> 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
> 
> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


More information about the gstreamer-devel mailing list