How to mix live and non-live sources

Sebastian Dröge sebastian at centricular.com
Fri Sep 24 11:23:10 UTC 2021


On Fri, 2021-09-24 at 13:17 +0200, Marianna Smidth Buschle wrote:
> On 24.09.2021 13.05, Sebastian Dröge wrote:
> On Fri, 2021-09-24 at 12:59 +0200, Marianna Smidth Buschle via
> gstreamer-devel wrote:
> 
> > I have a use case where I have N live sources (v4l2src) from which
> > I can 
> > select to be the output.
> > 
> > I also need to be able to make a replay (seek from a filesrc).
> > 
> > My question is how to properly handle the mixing of the live and 
> > non-live sources since the timestamps don't match.
> > 
> > The filesrc starts from zero (or the seeking point) and the live
> > sources 
> > have a running-time based on the clock.
> 
> This is actually simpler than what you wrote. What you would do is to
> call gst_pad_set_offset() on the source pad of the non-live streams
> that you want to connect to the mixer.
> That would then make sure to update the running time accordingly.
> Can I do that directly on the filesrc (the MPEG-TS) stream?
> Or should it be on the tsdemux pads, or later on the audio/video
> decoder pads?
filesrc doesn't know anything about time, so that won't have any
effect.
I would do it directly on the source pads that you connect to
compositor/audiomixer/etc.

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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20210924/1c2eb6b0/attachment.htm>


More information about the gstreamer-devel mailing list