Hello, team,
We are highly interested in supporting 2 cameras (2 video-streams) from a drone simultaneously. We want to see the 1st video-stream in the main window and the 2nd video-stream in a smaller subsidiary window, and to be able to switch between them (i.e. to point the 2nd video-stream to the main window and the 1st one to the subsidiary window).
As far as we understand, we need to modify QGC’s core code to achieve that.
Could you suggest a starting point for such a modification and point us to the interfaces to be used/modified?
There is an outdated pull request that seems to be related - how suitable and relevant is it today? –
WIP / Discuss: Multiple video streams
master ← tcanabrava:multiple_video_streams
opened 08:58PM - 11 Nov 19 UTC
A tiny summary of what this does:
- Breaks a lot of code, do not think that I… want to merge this, it's really a work in progress.
- [WARNING] Creates a new VideoSetting class that does not use the FactSystem (Thi is because I did not found out how use the fact system with *multiple* elements) - but code is sane and should be easy to handle. Give me pointers on how to convert this to FactSystem and I'll do.
- [WARNING] Breaks every single video control that we had. nor play, nor pause, nor record, nor pip, nor detach are working.
- Remove the old QtGstreamer implementation and uses a new GStreamer qmlsink plugin
- Uses gst_parse to create pipelines so we can remove a lot of boilerplate
- Handles 120 video streams (using a videotestsrc with a random pattern) (hard limited to 40 currently)
- Removes the Plugin for video streaming thru gtreamer: We don't need nor want this, the one thing we need is to let the developers define a pipeline that load their gstreamer plugins, we don't need to allow them to touch the manager or the video items to achieve this.
- Saves the VideoConfigurations for all the video in disk and restores them when opening the QGC.
Please, while looking on this review don't comment about the code that's broken, I know that a lot of things are broken. I want to know if this is a sane approach code-wise, to be merged in the near future (as soon as I fix the issue and clean the git history)
Thing that I still need to finish:
- Configuration on a per stream basis - it's there, I just need to plug the calls on Qml
- Rework the PIP for multiple video in mind.
- Rework Detach
- Rework Reattach
- Use a pipeline with udpsrc instead of videotestsrc
original author here.
this used to work, it was passing ci and approved but was never merged.
if you are interested in this i can work as a freelancer to make it work again with the current code.
cool, reach to me in private so we can discuss.
tomaz.canabrava at gmail
Hi, I’ve sent an e-mail. Please check, maybe it is in a Spam folder?