Multiagent RTSP Stream Support for QGC PX4 (VOXL2 SDK 1.3.3)
-
I found this old post here about implementing getting RTSP streaming fully integrated with QGC. It says it requires a MAV_SYS_ID = 1, but was also from 3 years ago and uses a much older QGC. We have multiple drones and would like to switch between livestreams. I've seen other systems with the ability to switch between multiple live streams (from different vehicles) based off of MAV_SYS_ID, so when I switch to vehicle 201 in QGC, my livestream will automatically switch to that vehicle's as well. Is this something that is currently supported or will be in the future? If not, do you have a recommended alternative? Worst case, I can just ffplay both of them, use two VLC windows, or manually switch RTSP addresses in QGC. It's not a big deal, but it would be nice to have multiagent support in a more integrated way.
I'm using VOXL2, SDK 1.3.3, system image 1.7.8, QGC 4.4.2*, host machine is Ubuntu 22.04 LTS
*I can't go to the older QGC because there's an issue with rally points and geofences with wildly different PX4/QGC versions and we need to be able to download and view the geofences we set flight safety reasons -
@ctitus Hey I am curious. when you say multiple drones and that you want to switch between livestreams.... you mean within QGC? My understanding is that QGC will only connect with one drone at a time. IS that not the case? Or, are you saying maintaining the QGC connection to drone 1, but just showing the drone 2's video in that QGC session?
-
@groupo To clarify, my setup is as follows: I have 2 PX4 drones flying and connected to QGC (vehicle 201 and vehicle 202, numbers set by MAV_SYS_ID). They both have cameras and live streams set up at rtsp://xxx.xxx.xxx.201:8900/live and rtsp://xxx.xxx.xxx.202:8900/live respectively. I can use QGC to switch between vehicle 201 and 202's telemetry, but doing this doesn't switch the live stream between the drones. What I'd like to have happen is when I switch from vehicle 201 to 202, I'd like the live stream displayed on QGC to switch from vehicle 201 to 202 as well.
Maybe I have something configured wrong, but currently the way I've been getting around this is going into QGC Applications Settings > General and modifying the RTSP Stream URL to match whichever drone I'd like to view.
-
Hi @ctitus I actually have a PR sitting for mavcam manager that captures this exact use case:
https://gitlab.com/voxl-public/voxl-sdk/services/voxl-mavcam-manager/-/merge_requests/13
Please build this branch
zach/mavlink_sys_id_update
from source and then package and unpack the deb on the voxl2. Once there, if you have multiple VOXL2's all with different SYS_ID's from PX4, in the voxl-mavcam-manager.conf file, make sure you set the mav sys id in there to what it is on from PX4. Also set:enable_auto_ip to False
and then set default_uri to the ip address assigned by the radio or modem you are using, not localhost or what is assigned from voxl-mavlink-server - so NOT 192.168.8.1, but the IP assigned by the radio or wifi module.
LMK if that works,
Zach -
@Zachary-Lowell-0 Cut a new version if you just want to download and install the deb
http://voxl-packages.modalai.com/dists/qrb5165/staging/binary-arm64/voxl-mavcam-manager_0.5.7_arm64.deb -
@Zachary-Lowell-0 Perfect, thanks! I'll try it when I get some time next week.