Saltearse al contenido

Drone stream tile

El drone stream tile es el centro visual de control primario de un drone. Reproduce el vídeo en directo del drone, superpone HUD + detecciones AI, maneja el cambio de lente + cámara y proporciona una vista picture-in-picture para cámaras secundarias.

Dos modos de transporte

En la parte superior derecha del tile, cuando ambas rutas están disponibles, dos botones te permiten cambiar el transporte:

  • TACLINK — ruta RC local del operador. Peer-to-peer, latencia mínima, pero requiere que el operador esté en la misma ruta de red.
  • DJI CLOUD API — ruta del DJI dock vía ingress WHIP. Enrutado por la nube, funciona globalmente, añade algo de latencia pero funciona incluso cuando el operador no es directamente alcanzable.

El modo se autoselecciona según el evento streamSelected que abrió el tile — mode: 'djiCloud' desde la pestaña DOCKS o desde el peer de video-ingress de un dock, mode: 'taclink' desde un peer handheld. Puedes cambiar de modo en tiempo de ejecución si ambos están disponibles para el mismo drone.

Elegir un drone

Un pequeño desplegable de peer se sitúa en la cabecera del tile — si múltiples drones están haciendo streaming actualmente, úsalo para cambiar entre ellos sin volver al tile de streams.

La barra de control

La barra de herramientas se superpone al vídeo al hacer hover. Controles, ordenados aproximadamente de izquierda a derecha:

Selector de lente

  • Sólo aparece para cámaras multi-lente.
  • Botones por lente disponible — WIDE / ZOOM / IR (el nombre varía por cámara).
  • Haz clic para cambiar de lente a mitad de stream. La lente actual está resaltada.

Selector de calidad (sólo DJI Cloud)

  • Botones para cada preset de calidad que reporta el dock (smooth / SD / HD / UHD en DJI docks).
  • Haz clic para enviar el cambio de calidad vía live_set_quality de DJI.
  • Para streams TACLINK, la calidad se negocia peer-to-peer y no hay override manual aquí.

Selector de cámara

  • Cuando un drone publica múltiples pistas de cámara (p. ej. FPV de la aeronave + FPV externa del dock en DJI Dock 3), el selector de cámara expone cada una. Haz clic para intercambiar la vista principal.

Toggles de overlay

Cada toggle habilita/deshabilita un overlay — consulta la sección de overlays más abajo.

PIP (picture-in-picture)

Para drones con pistas de cámara secundarias:

  • Un pequeño panel flotante se acopla en una esquina mostrando el stream de la cámara secundaria.
  • Arrastra para reposicionar el panel en cualquier lugar del tile.
  • Haz clic para intercambiar — la secundaria se convierte en la principal, la principal va al PIP.

Pantalla completa

Vía la Full Screen API nativa del navegador — lanzada desde la barra del tile o el menú contextual del navegador. Escape sale.

Play / pause / mute

El elemento <video> es autoplay muted por defecto. No hay un botón de pausa explícito en la barra; la pausa es implícita vía el menú contextual de vídeo del navegador.

Captura / grabar

Estos no están en la barra de la build actual. La grabación se controla a nivel de misión (auto-grabación) o vía el flujo de grabaciones de streams. Para capturas, usa la herramienta de captura de tu SO.

Overlays

Seis overlays son reales en la build actual. Cada uno es un toggle independiente:

HUD

El heads-up display — actitud, velocidad, altitud, rumbo, modo, batería, señal, viento, obstáculos, ángulo de gimbal. Consulta HUD overlay para la referencia completa de lecturas.

Detecciones AI

Bounding boxes del agente YOLO11 o detecciones SEI de DJI. Cada caja tiene:

  • Una etiqueta de clase + chip de confianza (umbral de confianza configurable en el drone settings drawer → pestaña AI).
  • Color por clase (persona / vehículo / animal / otro) o un único color elegido por el operador dependiendo del ajuste del drawer.
  • IDs de tracking persistentes para que una caja siga al mismo objetivo entre frames.

El control toggleSegmentation() habilita tanto las cajas como la suscripción de inferencia subyacente.

Flags (etiquetas de detección)

Cuando el overlay de detección está activo, un toggle adicional “mostrar etiquetas” activa/desactiva los chips de etiqueta de clase de forma independiente del contorno de la caja. Útil cuando quieres contornos limpios para capturas.

AR

Overlay de realidad aumentada — entidades del mapa geo-referenciadas proyectadas en el frame de la cámara. Flags, otros drones, waypoints aparecen como etiquetas flotantes en sus posiciones 3D reales. Útil para áreas de búsqueda amplias donde quieres saber “qué hay fuera de pantalla a la derecha?”. Funciona mejor cuando el GPS del drone + el estado del gimbal están frescos — las posiciones antiguas derivan.

SAM (Segment Anything)

Segmentación bajo demanda. Haz clic en un punto del vídeo y una máscara se ajusta al objeto bajo ese punto. Consulta SAM overlay para prompts y menú contextual.

SVS (Synthetic Vision System)

Mesh de terreno renderizado sobre el vídeo usando los mismos datos de elevación que usa Cesium. Útil en operaciones con baja visibilidad o nocturnas para ver la geometría del suelo que la cámara real no puede.

Overlay de input de joystick

Un pequeño panel de visualización de inputs muestra las posiciones en directo del stick del operador. Dibuja:

  • Sticks del drone (pitch/roll + yaw/throttle).
  • Sticks del gimbal (pitch / yaw / zoom).
  • Ejes deslizantes (si los hay — p. ej. Ry / Rz en controladores HOTAS).
  • Barra de throttle.

Útil para verificar que tu hardware de input está produciendo las deflexiones que esperas.

Salud del stream

Una lectura compacta en el HUD overlay muestra:

  • Bitrate (bps) — ancho de banda actual a nivel de pista.
  • FPS.
  • RTT (ms) — round-trip time desde getStats().
  • Resolución (p. ej. 1920×1080).
  • Etiqueta — etiqueta libre de la pista.
  • Calidad — badge LIVE o DEMO.

Este es el mismo conjunto de estadísticas que muestra el overlay de cuadrícula en modo depuración.

Limitaciones conocidas

  • Sin UI explícita de pause / mute — sólo nativa del navegador.
  • Sin controles de captura / grabación en el tile — delegados a la grabación a nivel de misión.
  • Sin multi-stream split-screen (PIP maneja la secundaria; no hay vista de tres simultáneos para tres lentes a la vez).

Relacionado