WebRTC – Receive Low-Latency Live Video Stream from DJI Drones
When receiving a live video stream from DJI drones you need a reliable and real-time platform.
When you want to stream live, and even control your drone remotely according to the view from its camera you must have a low-latency video stream.
A strong radio link to the drone will enable you to control the drone’s movements but your video will take a few seconds to be received. That can hamper your attempts to fly your drone correctly when it is out of your line-of-sight.
You can add a piece of hardware such as a 4G/LTE device that will transmit the video in excellent quality and real-time, but there are some points to consider. From the aspect of SWaP-C (Size, Weight, Power consumption, and Cost) to the drone that is not wise. More Size, More Weight, more Power consumption and higher Costs due to the extra hardware that rides on the drone.
DJI, a market leader in easy-to-fly drones and aerial photography systems, offers options to stream the video from its drone’s camera but with a price of latency.
DJI’s remote control includes an HD video receiver. One can connect the remote control to the Android phone and view the stream on the phone. But that is only on the phone.
DJI and companies that are related to it offer a cloud streaming option of RTMP protocol to other computers, but this option can have a latency of up to 5 seconds. That is not the real real-time low-latency video stream that you require.
Accuware offers a better option: live transmission to any computer with very low-latency, less than 1 second, with minimal lag. Accuware does that via the WebRTC protocol with no blockage on the way. No Size, no Weight and no Power consumption costs to the drone.
Accuware’s solution is an Android library that can be integrated inside the Android app you build. It enables seamless streaming of live video from your DJI drone to other computers.
Our solution enables your DJI-SDK based app to capture the H.264 video of any DJI drone. The decoded output of this process is then transcoded to any video standard (e.g. H.264, VP8 and VP9) and forwarded in real-time with very low latency to a remote WebRTC client allowing external applications to acquire the video and use it for multiple purposes.
The video stream features full peer-to-peer technology and does not go through a 3rd party service. The video streams do not go through Accuware’s servers, and are not kept at all. Users are connected privately and seamlessly via certain “channels”. The receiving party can be behind a firewall or behind any other 4G/LTE/5G network limitation, and there is no need for any special configuration.
No need to install anything on the receiving side to watch the stream.
Our solution is built on top of the advanced WebRTC technology. It works with DJI Phantom, DJI Mavic, DJI Spreading Wings, DJI Inspire, DJI Spark, DJI Matrice and much more.
Kindly note that Accuware’s technology is not meant for end-users; It is meant for software and hardware integrators.
The use of Accuware’s DJI streamer library is provided for 14 days free of charge. After that period is over you will be required to purchase a license. Using the library requires a bit of Android and DJI SDK knowledge (which is needed in any case to control a DJI drone from an app).
We provide a sample Android app and technical support to assist you achieve your goals.
After you have integrated our library with your app, you simply need to connect DJI’s remote control to your Android device with a USB cable. Now you can get the DJI drone’s video in real-time anywhere in the world and use it for any purpose.
What is WebRTC and How Does it Work?
We mentioned WebRTC a lot in this blog entry. WebRTC (Web Real-Time Communications) is a technology and standard that adds real-time peer-to-peer multimedia capabilities to apps, and does not require any additional plug-ins. WebRTC utilizes a plethora of technologies and protocols, such as data streams, advanced STUN/TURN servers, signaling processes, network sockets, etc.
WebRTC enables peers to send and receive multimedia behind firewalls and NAT devices, seamlessly.
WebRTC and Dragonfly
By the way, we use our WebRTC platform not only with the DJI Streamer Library, but also for our patented Visual SLAM Dragonfly solution as well, thanks to its minimal lag and high quality. A user can use the Streamer Library to acquire the video. Dragonfly can utilize that excellent video output to assist the Drone in navigation or to let its operator know its location in a GPS-deprived area.