Protocoles de streaming

HomeBe·at prend en charge plusieurs protocoles de streaming pour les flux de caméras. L'application détecte automatiquement les protocoles disponibles pour chaque caméra et sélectionne le meilleur.

Comparaison des protocoles

ProtocoleLatenceQualitéConfiguration
WebRTC< 1sÉlevéeIntégré depuis HA 2024.11
RTSP< 1sÉlevéeConnexion directe à la caméra
HLS5–15sMoyenneIntégré aux caméras HA
MJPEG1–2sFaibleFallback intégré

Chaîne de basculement automatique

HomeBe·at utilise une chaîne de basculement automatique lorsqu'un protocole de streaming échoue :

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

Si WebRTC ne parvient pas à se connecter (par ex. go2rtc est indisponible ou l'UDP est bloqué), l'application bascule immédiatement vers MJPEG, tout en tentant simultanément d'établir un flux VLC ou HLS. Un badge dans la vue caméra indique le protocole actuellement actif.

Pour les caméras avec une URL RTSP personnalisée (configurée manuellement ou découverte automatiquement depuis go2rtc), VLC diffuse le flux RTSP directement avec une latence inférieure à la seconde.

WebRTC

Le protocole préféré. Fournit une latence inférieure à la seconde avec une vidéo de haute qualité. Nécessite go2rtc dans Home Assistant (intégré depuis HA 2024.11). Utilise l'UDP pour le transport média, votre réseau doit donc autoriser le trafic UDP entre le serveur HA et votre appareil.

Prise en charge des codecs

HomeBe·at prend en charge les codecs vidéo H.264, H.265 (HEVC), VP8, VP9 et AV1. Le codec est négocié automatiquement entre go2rtc et l'application. La prise en charge du H.265 est particulièrement avantageuse pour les caméras qui diffusent nativement en HEVC (par ex. les modèles Reolink et UniFi récents), offrant une meilleure qualité à des débits inférieurs.

Niveaux de qualité

Le contrôle de qualité dépend du type de caméra :

Caméras Reolink — Les caméras Reolink avec canaux de résolution (fluent / clear) utilisent le changement de flux natif — l'application se connecte à l'entité fluent basse résolution pour la qualité Moyenne et à l'entité clear haute résolution pour la qualité Haute. Aucune limitation de débit n'est nécessaire puisque chaque flux est à sa qualité native. La qualité alterne uniquement entre MQ et HQ.

Autres caméras — Les autres caméras (y compris UniFi Protect, dont les entités de canaux alternatifs ne prennent pas en charge WebRTC) utilisent des contraintes de débit SDP sur l'entité principale :

QualitéDébit
Basse (LQ)2.5 Mbps
Moyenne (MQ)5 Mbps
Haute (HQ)8 Mbps

Changer le badge de qualité dans la vue caméra arrête et redémarre la connexion WebRTC. Pour les caméras Reolink, cela bascule entre les entités de flux ; pour les autres, de nouvelles contraintes SDP sont appliquées.

Caméras multi-objectifs

Les caméras avec plusieurs objectifs (par ex. Reolink Duo 3 PoE) apparaissent comme des caméras séparées dans HomeBe·at, une par objectif. Chaque objectif a ses propres canaux de résolution et cycle de qualité. L'application regroupe automatiquement les objectifs par appareil et associe la bonne entité fluent/clear à chaque objectif.

MJPEG

Motion JPEG diffuse une série d'images JPEG via HTTP. Il fonctionne sur tout réseau (pas d'UDP requis) mais offre une qualité inférieure et utilise plus de bande passante que WebRTC. C'est le fallback principal lorsque WebRTC n'est pas disponible.

HLS

HTTP Live Streaming segmente la vidéo en petits morceaux livrés via HTTP. C'est fiable et fonctionne partout, mais introduit 5 à 15 secondes de latence en raison de la mise en mémoire tampon des segments. Intégré à Home Assistant pour toutes les entités caméra.

RTSP (via VLC)

Le protocole Real-Time Streaming Protocol offre des flux à faible latence et haute qualité. Diffusé via le lecteur VLC intégré. Utilisé pour les caméras personnalisées et pour les caméras Home Assistant disposant d'un remplacement d'URL RTSP configuré (manuellement ou via la découverte automatique go2rtc).

RTSP prend en charge les codecs H.264 et H.265. WebRTC et RTSP prennent désormais tous deux en charge le H.265, donc l'un ou l'autre protocole fonctionne bien pour les caméras utilisant l'encodage HEVC.

Choisir un protocole

Pour la plupart des utilisateurs, la sélection automatique par défaut fonctionne le mieux. L'application choisit le protocole à la latence la plus faible disponible :

  • Si go2rtc est configuré — WebRTC (meilleure expérience)
  • Si WebRTC échoue ou est indisponible — MJPEG immédiatement, puis bascule vers HLS
  • Si vous privilégiez la fiabilité à la latence — HLS (fonctionne toujours, délai plus élevé)

Vous pouvez modifier le protocole de streaming par caméra dans les réglages de l'application.