WebRTC-streaming

WebRTC giver den laveste latens for kamerastreaming i HomeBe·at. Her er, hvordan du opsætter det med din Home Assistant-instans.

Hvorfor WebRTC?

HomeBe·at understøtter flere streamingprotokoller. WebRTC tilbyder den bedste balance mellem lav latens og kvalitet — typisk under 1 sekunds forsinkelse sammenlignet med 5–15 sekunder for HLS.

ProtokolLatensKvalitetOpsætning
WebRTC< 1sHøjIndbygget siden HA 2024.11
RTSP< 1sHøjDirekte forbindelse til kamera
HLS5–15sMediumIndbygget med HA-kameraer
MJPEG1–2sLavIndbygget fallback

go2rtc i Home Assistant

go2rtc er indbygget i Home Assistant siden version 2024.11 og leverer WebRTC-streaming lige ud af boksen.

Krav

  • Home Assistant 2024.11+ med go2rtc-integration
  • Docker-baseret installation (HA OS, Container eller Supervised) — go2rtc er IKKE tilgængelig i Python/Core-installationer
  • UDP-netværksforbindelse mellem HA-serveren og din enhed

Standardkonfiguration

Moderne versioner af Home Assistant inkluderer go2rtc-understøttelse lige ud af boksen. Hvis dine kameraer eksponerer en RTSP-stream, kan HA automatisk bruge go2rtc til WebRTC-levering. Kontrollér, at dine kameraentiteter viser en "WebRTC"-streamindstilling i HA-dashboardet.

Manuel go2rtc-konfiguration

For kameraer, der ikke konfigureres automatisk, kan du tilføje dem til din go2rtc.yaml-konfiguration:

streams:
  front_door:
    - rtsp://admin:[email protected]:554/stream1
  backyard:
    - rtsp://admin:[email protected]:554/h264

Streaming i HomeBe·at

HomeBe·at understøtter WebRTC, HLS og MJPEG-streaming for Home Assistant-kameraer samt RTSP for brugerdefinerede kameraer. Appen registrerer automatisk, hvilke protokoller der er tilgængelige for hvert kamera, og bruger den bedste. Du kan tilsidesætte streamprotokollen pr. kamera i appens indstillinger.

Understøttede codecs

HomeBe·at understøtter H.264, H.265 (HEVC), VP8, VP9 og AV1. Codec'en forhandles automatisk mellem go2rtc og appen under WebRTC-handshake. Ingen manuel konfiguration er nødvendig — hvis dit kamera streamer i H.265, dekodes det nativt.

Reolink-kameraer

Reolink-kameraer, der eksponerer separate fluent (lav opløsning) og clear (høj opløsning) stream-entiteter, fungerer nativt med HomeBe·at. Appen registrerer disse opløsningskanaler og bruger dem til kvalitetsskift — Medium kvalitet forbinder til fluent-streamen, Høj kvalitet til clear-streamen. Dette undgår bitrate-begrænsning og giver den bedste billedkvalitet på hvert niveau. Multi-linse-kameraer (f.eks. Reolink Duo 3 PoE) vises som separate kameraer, ét pr. linse.

Aktivering af Clear-kanal-entiteter

Som standard aktiverer Home Assistant kun fluent (lav opløsning) kameraentiteten for Reolink-kameraer. For at få streaming i høj kvalitet i HomeBe·at skal du aktivere clear-kanalen:

  1. I Home Assistant, gå til Indstillinger → Enheder og tjenester → Reolink
  2. Klik på din kameraenhed
  3. Under Entiteter, find de deaktiverede entiteter (vist i grå eller bag en "Vis deaktiverede"-knap)
  4. Aktivér Clear-kameraentiteten (f.eks. camera.indkorsel_clear eller camera.indkorsel_clear_lens_0)
  5. Vent et par sekunder på, at HA registrerer entiteten, og genstart derefter HomeBe·at eller opret forbindelse igen

Når den er aktiveret, registrerer HomeBe·at automatisk clear-kanalen og bruger den til streaming i høj kvalitet.

Yderligere Reolink-entiteter

Reolink-kameraer eksponerer flere andre entiteter, som HomeBe·at kan bruge, hvis de er aktiveret i Home Assistant:

EntitetTypeBeskrivelse
Fluent/Clear bitrateTal (skyder)Stream-bitrate for hver kanal. Justér for at styre båndbreddeforbrug.
Fluent/Clear billedfrekvensTal (skyder)Stream-billedfrekvens for hver kanal. Højere FPS = jævnere video.
PTZ-positionssensorerSensorAktuel panorerings- og vippeposition (skrivebeskyttet).
PTZ-knapperKnapRetningsbevægelse (venstre, højre, op, ned) og stop. HomeBe·at bruger tryk-og-hold til kontinuerlig bevægelse.
PTZ-zoomTal (skyder)Optisk zoomniveau. HomeBe·at opdeler intervallet i brugbare trin til +/- zoomstyring.
PTZ-forudindstillingerValg/KnapGemte kamerapositioner (f.eks. "Hoveddør", "Indkørsel").

For at aktivere disse entiteter skal du følge de samme trin som for clear-kanalen — find dem under enhedens deaktiverede entiteter i Home Assistant og slå dem til.

Fejlfinding

WebRTC forbinder ikke

  1. Kontrollér, at go2rtc kører — Gå til Indstillinger > Tilføjelser i Home Assistant og verificér, at go2rtc er aktiv.
  2. Kontrollér UDP-forbindelse — WebRTC kræver UDP-trafik mellem HA-serveren og din enhed. Nogle virksomheds- eller restriktive netværk blokerer UDP.
  3. Kontrollér fejlkoder — Hvis HA returnerer "unknown_command", eksisterer WebRTC-endpointet ikke (opdatér til HA 2024.11+). Hvis den returnerer "not_found", er go2rtc-integrationen ikke indlæst.

Automatisk fallback

Hvis WebRTC fejler, falder HomeBe·at øjeblikkeligt tilbage til MJPEG, mens den samtidig forsøger at etablere en HLS-stream. Når HLS er klar, overtager den fra MJPEG. Du kan se den aktive protokolbadge opdateres på kameraet, efterhånden som fallback-processen skrider frem.

Brugere, der ikke kan bruge WebRTC

  • Python/Core Home Assistant-installationer (ingen go2rtc)
  • Brugere, der manuelt har deaktiveret go2rtc
  • Netværk, der blokerer al UDP-trafik

I disse tilfælde falder HomeBe·at automatisk tilbage til MJPEG eller HLS.

Tip: Hvis du oplever forbindelsesproblemer med WebRTC, skal du kontrollere, at dit netværk tillader UDP-trafik mellem HA-serveren og din enhed.