Protocolos de streaming

HomeBe·at admite múltiples protocolos de streaming para las transmisiones de cámaras. La app detecta automáticamente qué protocolos están disponibles para cada cámara y selecciona el mejor.

Comparación de protocolos

ProtocoloLatenciaCalidadConfiguración
WebRTC< 1sAltaIntegrado desde HA 2024.11
RTSP< 1sAltaConexión directa a la cámara
HLS5–15sMediaIntegrado con las cámaras de HA
MJPEG1–2sBajaFallback integrado

Cadena de fallback automático

HomeBe·at usa una cadena de fallback automática cuando un protocolo de streaming falla:

WebRTC > MJPEG > VLC (RTSP) > HLS > Snapshot

Si WebRTC no logra conectar (p. ej., go2rtc no está disponible o UDP está bloqueado), la app cambia a MJPEG inmediatamente, mientras intenta establecer simultáneamente un stream VLC o HLS. Una insignia en la vista de la cámara muestra qué protocolo está activo actualmente.

Para cámaras con una URL RTSP personalizada (configurada manualmente o descubierta automáticamente desde go2rtc), VLC transmite el feed RTSP directamente con latencia inferior a un segundo.

WebRTC

El protocolo preferido. Proporciona latencia inferior a un segundo con vídeo de alta calidad. Requiere go2rtc en Home Assistant (integrado desde HA 2024.11). Usa UDP para el transporte de medios, por lo que tu red debe permitir tráfico UDP entre el servidor de HA y tu dispositivo.

Soporte de códecs

HomeBe·at soporta los códecs de vídeo H.264, H.265 (HEVC), VP8, VP9 y AV1. El códec se negocia automáticamente entre go2rtc y la app. El soporte de H.265 es especialmente beneficioso para cámaras que transmiten de forma nativa en HEVC (p. ej., modelos Reolink y UniFi más recientes), proporcionando mejor calidad a bitrates más bajos.

Niveles de calidad

El control de calidad depende del tipo de cámara:

Cámaras Reolink — Las cámaras Reolink con canales de resolución (fluent / clear) usan cambio de stream nativo — la app se conecta a la entidad fluent de baja resolución para calidad Media y a la entidad clear de alta resolución para calidad Alta. No se necesita limitación de bitrate ya que cada stream está en su calidad nativa. La calidad alterna solo entre MQ y HQ.

Otras cámaras — Otras cámaras (incluyendo UniFi Protect, cuyas entidades de canal alternativo no soportan WebRTC) usan restricciones de bitrate SDP en la entidad principal:

CalidadBitrate
Baja (LQ)2.5 Mbps
Media (MQ)5 Mbps
Alta (HQ)8 Mbps

Cambiar la insignia de calidad en la vista de la cámara detiene y reinicia la conexión WebRTC. Para cámaras Reolink esto cambia entre entidades de stream; para otras aplica nuevas restricciones SDP.

Cámaras multi-objetivo

Las cámaras con múltiples objetivos (p. ej., Reolink Duo 3 PoE) aparecen como cámaras separadas en HomeBe·at, una por objetivo. Cada objetivo tiene sus propios canales de resolución y ciclo de calidad. La app agrupa automáticamente los objetivos por dispositivo y asigna la entidad fluent/clear correcta a cada objetivo.

MJPEG

Motion JPEG transmite una serie de fotogramas JPEG a través de HTTP. Funciona en cualquier red (no requiere UDP) pero ofrece menor calidad y usa más ancho de banda que WebRTC. Es el fallback principal cuando WebRTC no está disponible.

HLS

HTTP Live Streaming segmenta el vídeo en pequeños fragmentos entregados por HTTP. Es fiable y funciona en todas partes, pero introduce 5–15 segundos de latencia debido al buffer de segmentos. Está integrado en Home Assistant para todas las entidades de cámara.

RTSP (vía VLC)

Real-Time Streaming Protocol proporciona streams de baja latencia y alta calidad. Se transmite a través del reproductor VLC integrado. Se usa para cámaras personalizadas y para cámaras de Home Assistant que tienen una URL RTSP configurada (manualmente o mediante el autodescubrimiento de go2rtc).

RTSP admite los códecs H.264 y H.265. Tanto WebRTC como RTSP ahora soportan H.265, por lo que cualquiera de los dos protocolos funciona bien para cámaras que usan codificación HEVC.

Elegir un protocolo

Para la mayoría de usuarios, la selección automática predeterminada funciona mejor. La app elige el protocolo con menor latencia disponible:

  • Si tienes go2rtc configurado — WebRTC (mejor experiencia)
  • Si WebRTC falla o no está disponible — MJPEG inmediatamente, luego mejora a HLS
  • Si necesitas fiabilidad sobre latencia — HLS (siempre funciona, mayor retardo)

Puedes cambiar el protocolo de streaming por cámara en los ajustes de la app.