Hi there, Eliot! We are considering for now on just trying to get a video stream to the topside, although not necessarily on QGroundControl. GStreamer has already been installed on the topside, as well the plugins required in OBS Studio. For sending the video stream, this is the code that we have used in the companion:
gst-launch-1.0 -v v4l2src device=/dev/video0 ! "image/jpeg,width=800, height=600,framerate=30/1" ! rtpjpegpay ! udpsink clients=192.168.2.1:5600
and we were able to get this output from the terminal:
The LED on our camera has also lit up, giving us a sign that the camera is working.
On the receiver side, we have used this code on the OBS plugin Gstreamer Source:
udpsrc port=5600 ! application/x-rtp, encoding-name=JPEG,payload=26 ! rtpjpegdepay ! jpegdec ! video
However, there is no video output in OBS Studio after clicking Apply or OK.
As of now, we are currently stumped as to why there is no video output on OBS.
On a side note, we have also tried the conversion of MJPEG to H264 and have seen the LED on the camera light up, as well as the increase in CPU usage of the Raspberry Pi. However, upon starting QGroundControl to check, we have been met by errors such as these:
Would you have any idea as to why this has happened?
Edit:
We have also tried another pipeline which looks like it plays a little nicer:
gst-launch-1.0 v4l2src device=/dev/video0 ! image/jpeg,width=800,height=600,framerate=30/1 ! jpegparse ! rtpjpegpay ! udpsink host=192.168.2.1 port=5600
and had a better looking output in the Raspberry Pi terminal:
On the receiving end, this is what we used:
gst-launch-1.0 udpsrc address=192.168.2.1 port=5600 ! application/x-rtp, encoding-name=JPEG,payload=96 ! rtpjpegdepay ! jpegdec ! videoconvert ! autovideosink
However, there is still no output video or window displayed and this is what we only get from the cmd:
Any help provided is highly appreciated. Thanks!