Synchronizing Multiple Pipelines
Dwight Kulkarni via gstreamer-devel <[email protected]>
| Newsgroups | gmane.comp.video.gstreamer.devel |
|---|---|
| Message-ID | <CAKW2B8jSLZVV+PU0kBc0dudRo-zzCKr8XRKGgodG-1KYWevk2w@mail.gmail.com> |
Hi all, I have 4 pipelines. Pipeline 1 : video src -> app sink1 Pipeline 2 : app src2 -> video 1 Pipeline 3 : app src3 -> downsampled video 2 Pipeline 4 : app src4 -> downsampled video 3 In app sink 1, I connect a new-sample callback I then take the sample, make a copy and push it to each of the app sources. The problem I have is that each pipeline (pipeline 2 to 4) will start at different times. If I take a video of a stop watch, I notice that pipeline 2 is 8 seconds offset from the other 2 pipelines. The behaviour I am going for is that from one video source I want to end up with 3 different videos at different sizes. Eg. 1080p, 720p, etc. However, each video should be exactly the same. I tried to avoid using a Tee and making a single pipeline because Tees take away control over how the frames are going into each element and they might get out of synch. With the app source I was hoping to push exactly a certain number of frames into each pipeline and then call the "spit now" function with splitmux sink. However, this depends on all pipelines starting at the same time and being in synch. Can you advise how to achieve this ? Thanks ! -- Sincerely, Dwight Kulkarni B.ASC, M.ASC, PMP Realize Potential