go2rtc con RTSP de cámaras Xiaomi: conectar NVR, HomeKit y Frigate

Nota práctica para obtener el flujo RTSP de una cámara Xiaomi con go2rtc y reutilizarlo en NVR, HomeKit y Frigate.

Esta nota muestra cómo usar go2rtc para obtener directamente los flujos de cámaras Xiaomi y redistribuirlos a NVR, HomeKit y Frigate.

Ejemplo de despliegue con Docker

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
services:
  go2rtc:
    container_name: go2rtc
    image: alexxit/go2rtc:master-hardware
    restart: always
    network_mode: host
    privileged: true
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /vol1/1000/docker/go2rtc:/config

Interfaz web de go2rtc:

1
http://192.168.3.217:1984/

Ejemplo de configuración de flujos

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
streams:
    micam1:
     - xiaomi://xxx
    #H265 a H264, usado para la vista previa de HomeKit
    #micam1_h264:
     #- ffmpeg:micam1#video=h264#width=1280#height=720#hardware#raw=-r 15
    micam2:
     - xiaomi://xxx
    micam3:
     - xiaomi://xxx

Formato de URL RTSP:

1
rtsp://192.168.3.217:8554/micam1

Calidad y parámetros

La calidad se controla con valores de 0 a 5:

  • 0 suele significar automático
  • 1 significa sd
  • 2 significa hd, el valor predeterminado en go2rtc

En algunos modelos nuevos, HD puede estar en 3. En modelos antiguos, 3 puede romper la configuración de códec, así que no conviene aplicar un único valor fijo a todos los dispositivos.

Puedes usar subtype=hd/sd/auto/0-5 para definir la calidad:

1
2
streams:
  xiaomi1: xiaomi://***&subtype=sd

Para cámaras de doble lente, usa el segundo canal con channel=2:

1
2
streams:
  xiaomi1: xiaomi://***&channel=2

Resumen

Una vez que go2rtc está delante, una misma fuente RTSP puede servir al mismo tiempo para grabación NVR, detección en Frigate y vista previa en HomeKit, lo que reduce bastante el coste de mantenimiento.

Referencias

记录并分享
Creado con Hugo
Tema Stack diseñado por Jimmy