Need to manually enter the gstreamer command in MP HUD to start streaming video from a Raspberry Pi

Trying with MP 1.3.76 and Navio2 with raspivid.

Used to work some years ago, now I cannot get video in the HUD. I understand that there is nothing I have to do with Mission Planner, as now it already includes the essential parts of gstreamer.

So it may be what I am sending from the Raspberry Pi. I’m using this pipeline command on the Pi:

raspivid -n -w 1280 -h 720 -b 1000000 -fps 15 -t 0 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=10 pt=96 ! udpsink host=192.168.1.2 port=5600

Where 192.168.1.2 is the IP address of my Mission Planner PC.

Thank you for any help,

Paul

Ok, I got it work by entering this pipeline command into the “Set GStreamer Source” field in the HUD:

udpsrc port=5600 buffer-size=90000 ! application/x-rtp ! rtph264depay ! avdec_h264 ! queue leaky=2 ! videoconvert ! video/x-raw,format=BGRA ! appsink name=outsink sync=false

But, I have to delete the existing pipeline command first, click OK, then enter it again and click OK for the video to start showing. Any time I start or restart MP I have to do these steps again to get the video.

Is there a way to have the video in Mission Planner’s HUD come up automatically without having to delete and re-enter the pipeline command?

Thanks,

Paul

Hey Paul, I’m at the same spot, were you ever able to set this automatically?

after further testing Paul’s solution does work, clearing the udp pressing ok and then replugging the udp and pressing ok will get the feed and it looks like my current version of mission planner saves this string so it always auto connects now. cheers.

Just tried this again, and my Mission Planner does not save the string automatically. I have to manually enter it each time to turn on the video.

Maybe there is a configuration file somewhere in Mission Planner where I could set that string?

Hi, the first part of the above pipeline command: “raspivid -n -w 1280 -h 720 -b 1000000 -fps 15 -t 0 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=10 pt=96 ! udpsink host=192.168.1.2 port=5600” seems to be only applicable for the legacy camera system.

I would like to ask if anyone knows how to integrate libcamera into the pipeline command? Or anyone knows the pipeline syntax for Raspberry PI with Bullseye OS and above? Thanks.

See Raspberry Pi Documentation: https://www.raspberrypi.com/documentation/computers/camera_software.html#using-gstreamer

1 Like

you solved this issue ?

I solved it using this command

libcamera-vid -t 0 -n --inline -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=10 pt=96 ! udpsink host=COMPUTER_IP_ADDRESS port=PORT_NUMBER

I wrote a script like this in RPI and I’m running that script but what we have to put on MP HUD?
We have to put this command in mission planner HUD ??

I downloaded the GStreamer to my computer and entered this on the GStreamer URL:

videotestsrc ! video/x-raw, width=1280, height=720,framerate=25/1 ! clockoverlay ! videoconvert ! video/x-raw,format=BGRA ! appsink name=outsink