Gstreamer Pipeline gets stuck when switching cameras

Hi everyone!

I’m currently streaming video from my Jetson Nano to my local network using a server. The camera doesn’t directly connect to the CSI, instead goes to a multicamera adapter, which is connected to the CSI. The adapter uses GPIO signals to switch between cameras. It’s working fine to take pictures.

Now I have a video stream running and when I externally switch the signal to switch to another camera on the adapter, the stream freezes. I’m pretty new to the whole programming stuff so I’m not very familiar on what to do.

Any one have any ideas?

One idea I was having is, as soon as the user requests to switch camera, we can pause gstreamerpipeline, switch camera and resume pipeline. But I’m not sure how I can do this.

Any help is really appreciated! Thanks a lot.

Hi,
We don’t support runtime switch. You need to stop the pipeline first and re-start it.

1 Like

Hi @praneethg9,

One question, with this “camera adapter”, are you able to execute two pipelines at the same time with the cameras? If so, then the switch can be made by software and you might want to give a try to GstInterpipe, which allows to separate pipelines in section and therefore you can change between images sources (cameras, rtspsrc, videotestsrc, etc).

We have sucessfully done this in the past.

Regards,
Fabian
www.ridgerun.com

Hi @praneethg9,

Could you explain how you solved this using @fabian.solano advice with GstInterpipe? I see that you marked his post as the solution, but I have been unable to find a solution using GstInterpipe. Everything I do causes the cameras to crash when I try runtime switching.