how to change sources while pipeline is on PLAYING state?

David Röthlisberger david at rothlis.net
Thu Sep 12 01:06:27 PDT 2013


On 11 Sep 2013, at 18:01, Lautaro Woites wrote:
> 
> I'm using gstreamer 0.10.36 and I have a pipeline like this:
> 
> filesrc ! decodebin2 ! valve ! queue2, ! videorate ! video_scale ! xvimagesink
> 
> I'm trying to change the filesrc/decoder when the pipeline is on PLAYING state.
> 
> * The sources have started to change but they hasn't started from the beginning. For example, if I change the filesrc in second 10, the new filesrc starts playing from second 10.

This is probably because the sink has already seen frames with
timestamps 0 to 10, and the second filesrc starts sending frames with
timestamps starting from 0. You might have to manipulate the timestamps
somehow, or send some kind of event that signals a new "stream" or
whatever it's called.

This is the total extent of my knowledge regarding clocking and
timestamps in GStreamer so someone else will have to fill in the
details, or at least it will give you an idea of where to start
looking. :-)



More information about the gstreamer-devel mailing list