play multiple sources at once, each from a different position

Tomasz Mikolajczyk tmmikolajczyk at gmail.com
Mon Jan 24 01:18:46 UTC 2022


Hi,
I would like to use gstreamer to play multiple sources (for instance two
video files) simultaneously using a single pipeline but each video starting
from a different position, for instance first video from the beginning and
the second from the middle. Could someone guide me on how to achieve it?

Simplifying, my pipeline is an equivalent of:

gst-launch-1.0 \
uridecodebin uri=file:///Users/tmikolaj/Downloads/videoalpha_video_dancer1.webm
! videoconvert ! autovideosink \
uridecodebin uri=file:///Users/tmikolaj/Downloads/videoalpha_video_dancer1.webm
! videoconvert ! autovideosink
, but created programmatically.
Obviously, a simple pipeline's seeking seeks two files at once.
I was trying to register a probe of the
GST_PAD_PROBE_TYPE_EVENT_UPSTREAM type from inside the "pad-added"
signal callback of the "uridecodebin" element. Inside the probe I
wanted to catch the "GST_EVENT_SEEK" event and drop it for the first
video. However, it seems that dropping the SEEK message leaves the
pipeline in a "PAUSED" state and even an explicit state change to
"PLAYING" does nothing.
Does anybody have some hints on how to solve that problem?

Regards,
Tomasz
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20220124/a96fe3a7/attachment.htm>


More information about the gstreamer-devel mailing list