I am working on a Flutter application to stream video from a drone, and I have been using GStreamer to handle the video stream. Specifically, I am using the GStreamerSurfaceView to display the video feed on the Android platform UI. However, I am experiencing noticeable latency, even with relatively high frame rates, and I am trying to understand how QGroundControl is able to achieve such low latency when displaying the video stream.
Could you please share which technologies, libraries, or techniques QGroundControl uses to achieve such low latency in video streaming? Specifically, I am interested in the following:
Are there any specific libraries integrated for video decoding/rendering, such as FFmpeg, GStreamer, or something custom-built for this purpose?
What settings or optimizations are applied to minimize latency, especially in terms of buffering or frame rate?
Any insights would be greatly appreciated!
Hi there,
I am working on a Flutter application to stream video from a drone, and I have been using GStreamer to handle the video stream. Specifically, I am using the GStreamerSurfaceView to display the video feed on the Android platform UI. However, I am experiencing noticeable latency, even with relatively high frame rates, and I am trying to understand how QGroundControl is able to achieve such low latency when displaying the video stream.
Could you please share which technologies, libraries, or techniques QGroundControl uses to achieve such low latency in video streaming? Specifically, I am interested in the following:
Are there any specific libraries integrated for video decoding/rendering, such as FFmpeg, GStreamer, or something custom-built for this purpose? What settings or optimizations are applied to minimize latency, especially in terms of buffering or frame rate? Any insights would be greatly appreciated!
Thanks in advance for your time and help!
Best regards, Garuda