I am following the guide located at https://dev.px4.io/en/qgc/video_streaming.html
There are some minor differences to my setup than the one described. First, I am using a raspberry pi camera (https://www.raspberrypi.org/products/camera-module-v2/). Second, I am currently in a proof of concept stage, and therefore using ethernet connected to my router instead of Wi-Fi.
Using the raspberry pi camera has required me to modify the pipeline given to the following:
raspivid -t 0 -h 1080 -w 1920 -fps 24 -hf -b 2000000 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! udpsink host=192.168.1.81 port=5000
I can confirm that this is successfully creating a stream to my laptop as I can run the following command and see the video stream:
gst-launch-1.0 udpsrc port=5000 ! application/x-rtp, payload=96 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! fpsdisplaysink sync=false text-overlay=false
However, when I run QGroundControl and then run the first command, nothing happens. I initially suspected that this was due to there being no flight controller connected, however, after spinning up a drone-kit sitl instance and connecting that to QGroundControl, the video stream still fails to display. Is there some setting I am missing here? If it makes a difference, this is for use with a quad-copter.