Protocolli di streaming
HomeBe·at supporta diversi protocolli di streaming per i feed delle telecamere. L'app rileva automaticamente quali protocolli sono disponibili per ogni telecamera e seleziona il migliore.
Confronto protocolli
| Protocollo | Latenza | Qualità | Configurazione |
|---|---|---|---|
| WebRTC | < 1s | Alta | Integrato da HA 2024.11 |
| RTSP | < 1s | Alta | Connessione diretta alla telecamera |
| HLS | 5–15s | Media | Integrato con le telecamere HA |
| MJPEG | 1–2s | Bassa | Fallback integrato |
Catena di fallback automatica
HomeBe·at utilizza una catena di fallback automatica quando un protocollo di streaming fallisce:
WebRTC > MJPEG > VLC (RTSP) > HLS > Snapshot
Se WebRTC non riesce a connettersi (ad es. go2rtc non è disponibile o UDP è bloccato), l'app passa immediatamente a MJPEG, tentando contemporaneamente di stabilire uno streaming VLC o HLS. Un badge nella vista della telecamera mostra quale protocollo è attualmente attivo.
Per le telecamere con un URL RTSP personalizzato (configurato manualmente o scoperto automaticamente da go2rtc), VLC trasmette il feed RTSP direttamente con latenza inferiore al secondo.
WebRTC
Il protocollo preferito. Offre latenza inferiore al secondo con video di alta qualità. Richiede go2rtc in Home Assistant (integrato da HA 2024.11). Utilizza UDP per il trasporto dei media, quindi la rete deve consentire il traffico UDP tra il server HA e il tuo dispositivo.
Supporto codec
HomeBe·at supporta i codec video H.264, H.265 (HEVC), VP8, VP9 e AV1. Il codec viene negoziato automaticamente tra go2rtc e l'app. Il supporto H.265 è particolarmente vantaggioso per le telecamere che trasmettono nativamente in HEVC (ad es. i modelli Reolink e UniFi più recenti), offrendo una qualità migliore a bitrate inferiori.
Livelli di qualità
Il controllo della qualità dipende dal tipo di telecamera:
Telecamere Reolink — Le telecamere Reolink con canali di risoluzione (fluent / clear) utilizzano il cambio nativo dello stream — l'app si connette all'entità fluent a bassa risoluzione per la qualità Media e all'entità clear ad alta risoluzione per la qualità Alta. Non è necessaria alcuna limitazione del bitrate poiché ogni stream è alla sua qualità nativa. La qualità cicla solo tra MQ e HQ.
Altre telecamere — Le altre telecamere (incluse UniFi Protect, le cui entità canale alternativo non supportano WebRTC) utilizzano vincoli di bitrate SDP sull'entità principale:
| Qualità | Bitrate |
|---|---|
| Bassa (LQ) | 2.5 Mbps |
| Media (MQ) | 5 Mbps |
| Alta (HQ) | 8 Mbps |
Ciclando il badge della qualità nella vista della telecamera si interrompe e riavvia la connessione WebRTC. Per le telecamere Reolink questo cambia tra le entità stream; per le altre applica nuovi vincoli SDP.
Telecamere multi-obiettivo
Le telecamere con più obiettivi (ad es. Reolink Duo 3 PoE) appaiono come telecamere separate in HomeBe·at, una per obiettivo. Ogni obiettivo ha i propri canali di risoluzione e ciclo di qualità. L'app raggruppa automaticamente gli obiettivi per dispositivo e associa l'entità fluent/clear corretta a ogni obiettivo.
MJPEG
Motion JPEG trasmette una serie di fotogrammi JPEG tramite HTTP. Funziona su qualsiasi rete (nessun UDP richiesto) ma offre una qualità inferiore e utilizza più banda rispetto a WebRTC. È il fallback principale quando WebRTC non è disponibile.
HLS
HTTP Live Streaming segmenta il video in piccoli blocchi trasmessi tramite HTTP. È affidabile e funziona ovunque, ma introduce 5–15 secondi di latenza a causa del buffering dei segmenti. Integrato in Home Assistant per tutte le entità telecamera.
RTSP (tramite VLC)
Real-Time Streaming Protocol offre streaming a bassa latenza e alta qualità. Trasmesso tramite il lettore VLC integrato. Utilizzato per telecamere personalizzate e per telecamere Home Assistant che hanno un URL RTSP override configurato (manualmente o tramite la scoperta automatica di go2rtc).
RTSP supporta sia i codec H.264 che H.265. Sia WebRTC che RTSP supportano ora H.265, quindi entrambi i protocolli funzionano bene per le telecamere che utilizzano la codifica HEVC.
Scegliere un protocollo
Per la maggior parte degli utenti, la selezione automatica predefinita funziona al meglio. L'app sceglie il protocollo con la latenza più bassa disponibile:
- Se hai configurato go2rtc — WebRTC (esperienza migliore)
- Se WebRTC fallisce o non è disponibile — MJPEG immediatamente, poi passa a HLS
- Se hai bisogno di affidabilità più che di latenza — HLS (funziona sempre, ritardo maggiore)
Puoi sovrascrivere il protocollo di streaming per ogni telecamera nelle impostazioni dell'app.