Home        Store        Learn        Blog

Interfacing second Camera into QGC for a split-screen/picture in picture display

Hey Guys,
Is there currently a way to have a split-screen/picture in picture display for 2 cameras in QGC. For example, using a pilot front-facing camera and then a top facing camera and have the two feed brought into QGC.
I’m using 2 fathom-X boards one top-side and one wet-side, a Pixhawk and a raspberry Pi running the latest companion software.

All feedback would be welcomed.

Hello @Ryan6419 ,

I’m afraid that is not quite possible yet. You would probably need to use a third party software to watch the second video stream.

Do you know any third-party software that could watch the 2nd stream?
would it need to be an IP camera or USB?

You can use OBS with the OBS-gstreamer plugin. Gstreamer will happily receive a stream from an IP camera, but you can also connect an extra USB camera to the Raspberry Pi companion computer in the ROV, and set up another video stream through the start_video.sh script.

Note that if you’re using a USB camera you’ll want something like the bluerobotics low light camera, both for its low-light performance and because it encodes to h264 on the camera itself, which means the raspberry pi just sends on an efficient stream over the tether connection, instead of having to first encode the frames in a streaming format.


Would there be a possibility of editing the QGC Source code to support the 2nd camera? id imagine that would be a massive undertaking nonetheless.

It has been tried, but the idea is currently abandoned.

From this QGC issue there’s a backend implementation that apparently works, it just doesn’t have the UI built in to support multiple playback streams at once. Then there’s this issue about reworking the entire video component of QGC because it’s apparently quite a mess, which is part of what’s been making it difficult to have a coherent process of adding in extra video streams for display in QGC. This pull-request is the most comprehensive attempt, but was abandoned late last year (I’m not sure why). If you’re interested in continuing the work that last link is the best place to start - the people who were working on it will hopefully help get you up to speed on what’s been done so far and what’s left to do.