La documentación de DJI cubre menús. No cubre las preguntas que la gente realmente busca: qué códec usa la transmisión, cuál es el bitrate real, si los cuadros por segundo se sostienen, y qué camino conviene configurar primero. Así que pusimos un Matrice 4E y un RC Plus 2 en el banco de pruebas y las respondimos directamente.
Todo dron enterprise de DJI corre su propio servidor RTSP. Actívalo en Cloud Services → Customize Live Stream, define una cuenta y una contraseña, y el dron empieza a servir video en el puerto 8554. No requiere conexión a internet, ni cuenta de terceros, ni nada que configurar del lado receptor más allá del usuario y la contraseña.
Recibimos la transmisión directamente en ffmpeg por la red local:
rtsp://<cuenta>:<contraseña>@<ip-del-dron>:8554/streaming/live/1
Esa forma de URL (la ruta /streaming/live/1, el 1 final como índice de cámara) no aparece en ninguna parte de la documentación de DJI. Tampoco lo que sale del otro extremo: H.264 perfil High, 1280×720, unos 30 fps, sin pista de audio. Lo medimos todo directamente.
RTSP es el punto de partida correcto porque es el camino de menor fricción hacia un video funcionando. Si solo quieres confirmar que tu dron puede transmitir, esta es la versión de cinco minutos.
La misma pantalla de Customize Live Stream tiene una pestaña RTMP. Donde RTSP convierte al dron en un servidor del que tú lees el video, RTMP lo convierte en un cliente que lo envía a la URL que le indiques: un solo campo, dirección del servidor y stream key combinados (rtmp://host:puerto/ruta, la clave es el último segmento de la ruta).
Apuntamos el dron a un receptor en nuestro banco de pruebas y medimos el mismo codificador: H.264 High, 1280×720, ~30 fps. Aquí la hoja de especificaciones de DJI se vuelve francamente engañosa. El ajuste de calidad de la app muestra "1.5M" como tope de bitrate. El nuestro corrió de forma consistente entre 9.5 y 14 Mbps, y el indicador de tasa en vivo de la propia app confirmó más de 13 Mbps sostenidos. "Adaptive" hace exactamente lo que dice: el 1.5M es un piso que DJI garantiza, no un tope de lo que la transmisión puede usar.
Si presupuestaste ancho de banda o almacenamiento con el número que publica DJI, presupuesta más bien cerca de 14 Mbps.
Con esa transmisión RTMP funcionando, apuntarla a Hover es el mismo envío, solo que dirigido a una URL que Hover te entrega en lugar de un receptor genérico. Agrega el dron en tu panel y Hover genera una URL de ingesta y un stream key de un solo uso. Pega eso en el mismo campo RTMP del dron y el video aparece en vivo: detección, grabación y el resto del pipeline de Hover corriendo sobre él como con cualquier otra cámara.
Lo corrimos de punta a punta con nuestro propio equipo: del control remoto a la ingesta de Hover, de la ingesta al pipeline de video, y del pipeline a la vista en vivo del panel mostrando la cámara real del dron. Ciclo completo, sin huecos.
Una nota sobre RTSP hacia Hover en específico: leer el feed RTSP del dron directamente en Hover (saltando el paso de envío de arriba) está en nuestro roadmap, todavía no disponible. Si quieres ese camino hoy, el que funciona es el envío RTMP.
Este artículo cubre lo que encontramos. Para las rutas de menú exactas, capturas de pantalla y el desglose por modelo de qué soporta cada equipo, consulta la guía completa (en inglés):
H.264 perfil High. DJI no lo documenta; lo medimos con ffprobe en un Matrice 4E, en los caminos RTSP y RTMP. 1280×720, unos 30 fps, yuv420p.
Medimos entre 9.5 y 14 Mbps en red local, aunque el ajuste de calidad de la app dice 1.5M. La etiqueta de 1.5M es un piso, no un tope: el modo Adaptive sube muy por encima cuando el ancho de banda lo permite.
No. La transmisión es solo video en los caminos RTSP y RTMP. Confirmamos que no hay pista de audio en las transmisiones medidas.
rtsp://CUENTA:CONTRASEÑA@IP-DEL-CONTROL:8554/streaming/live/1 — la cuenta y la contraseña son las que defines en la pestaña RTSP, el puerto está fijo en 8554 y la ruta está fija en /streaming/live/1. El 1 final es el índice de cámara. DJI no documenta esta forma de URL; la observamos en el banco de pruebas.
Según la documentación de DJI, los drones con DJI Fly soportan solo envío RTMP personalizado, sin opción RTSP. La URL del servidor y el stream key van en un solo campo llamado RTMP Address.
Todavía no. La lectura RTSP directa hacia Hover está en nuestro roadmap. Hoy el camino que funciona es el envío RTMP: Hover genera una URL de ingesta y un stream key, y los pegas en el campo RTMP del dron.