Bonjour,
J’ai installé frigate sur une machine et frigate proxy sur mon Home Assistant.
Ça marchait bien, j’avais un flux rapide RTC jusqu’à ce que je touche à la configuration car j’ai ajouté une caméra pour mon portier et là c’est la catastrophe !
Plus rien ne fonctionne, j’ai remis l’ancienne configuration mais ça ne fonctionne pas bien: frigate semble fonctionner mais plus la caméra dans ma vue caméra (hors frigate).
Je tiens à signaler que l’installation de Frigate a eu lieu avant l’intégration de go2rtc à HA et ça m’a posé bien des problèmes !
Ce que j’aimerais c’est juste une « config minimale » qui fonctionne.
Franchement, une caméra, un frigate et un frigate proxy ça ne devrait pas poser autant de problème !
NB : j’ai mis entre crochet les login / mdp que j’ai supprimé pour ne pas les afficher ici.
Voici ma configuration :
NAS Synology, Home Assistant sur une VM : IP = 192.168.0.52
Frigate proxy sur le Home assistant.
Mini PC : frigate sur un docker : IP = 192.168.0.60
Caméra HIKVision : IP = 192.168.0.56
J’ai un fichier go2rtc.yaml dans HA, je ne sais pas à quoi il sert, ni s’il est correct :
Et j’ai un compte https://dashboard.ngrok.com/ est-il nécessaire ?
webrtc:
listen: ":8555" # external TCP/UDP port
candidates:
- stun:8555
ngrok:
command: ngrok tcp 8555 --authtoken xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Pour frigate j’ai la configuration suivante :
version: 0.16-0
# Pour reset mot de passe activer les deux lignes en dessous
# Relancer le docker puis lancer la commande
# docker logs frigate
# Vous verrez le mot de passe nouvellement généré
#auth:
# reset_admin_password: true
mqtt:
enabled: true
host: 192.168.0.52
user: [usermqtt]
password: [passmqtt]
port: 1883
cameras:
# Flux vidéo de la caméra jardin arrière
camera_jardin:
ffmpeg:
inputs:
- path: rtsp://[loginfrigatecamera]:[passfrigatecamera]@192.168.0.56:554/Streaming/Channels/101
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://[loginfrigatecamera]:[passfrigatecamera]@192.168.0.56:554/Streaming/Channels/102
input_args: preset-rtsp-restream
roles:
- detect
detect:
enabled: true
width: 704 # largeur de l'image du flux secondaire (en pixels)
height: 576 # hauteur de l'image du flux secondaire (en pixels)
detectors:
coral:
type: edgetpu
device: usb
record:
enabled: true
retain:
days: 7
mode: all
alerts:
retain:
days: 7
pre_capture: 10
post_capture: 10
detections:
retain:
days: 7
pre_capture: 10
post_capture: 10
snapshots:
enabled: true
objects:
track:
- person
- cat
- dog
# Désactiver le certificat pour le reverse proxy
tls:
enabled: false
detect:
enabled: true
Avant j’avais ça en plus dans la configuration frigate, je pense que ce n’est plus nécessaire.
go2rtc:
webrtc:
listen: :8555 # external TCP/UDP port
candidates:
- stun:8555
ngrok:
command: ngrok tcp 8555 --authtoken xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Je vois ma caméra (flux basse résolution) sur Frigate.
Aussi bien sur Frigate en direct que sur le Frigate Proxy sur le Home Assistant.
Par contre, cela ne fonctionne plus sur la vue caméra :
title: Caméras
icon: mdi:webcam
path: cameras
type: custom:layout-card
layout_type: grid
layout:
max_cols: 2
cols: 2
grid-template-columns: 100%
place-content: center
cards:
- type: custom:layout-card
layout_type: grid
min_size: 200
layout:
max_cols: 2
grid-template-columns: 75% 25%
grid-template-rows: auto
grid-template-areas: |
"left right"
cards:
- type: custom:webrtc-camera
view_layout:
grid:area: left
url: >-
rtsp://[loginhomeassistant]:[passwordhomeassistant]@192.168.0.56:554/Streaming/Channels/101
poster: https://home-assistant.io/images/cast/splash.png
server: http://localhost:11984/
title: null
muted: true
background: true
mode: webrtc,mse,mp4,mjpeg
camera_view: live
ui: true
style: >-
.pictureinpicture {display: none} .screenshot {display: none}
ptz: service: onvif.ptz data_left:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
pan: LEFT
speed: 1
distance: 0.3
move_mode: ContinuousMove
data_right:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
pan: RIGHT
speed: 1
distance: 0.3
move_mode: ContinuousMove
data_up:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
tilt: UP
speed: 1
distance: 0.3
move_mode: ContinuousMove
data_down:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
tilt: DOWN
speed: 1
distance: 0.3
move_mode: ContinuousMove
data_zoom_in:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
zoom: ZOOM_IN
move_mode: ContinuousMove
data_zoom_out:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
zoom: ZOOM_OUT
move_mode: ContinuousMove
- type: entities
title: Caméra Jardin
min_width: 200
view_layout:
grid:area: right
entities:
- entity: switch.camera_jardin_detect
name: Détection
- entity: camera.hikvision_ds_2de2a404iw_de3_mainstream
type: button
name: Terrasse
show_state: false
icon: mdi:home
show_icon: true
tap_action:
action: call-service
service: onvif.ptz
service_data:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
preset: 1
speed: 0.1
distance: 0.5
move_mode: GotoPreset
- entity: camera.hikvision_ds_2de2a404iw_de3_mainstream
type: button
name: Barbecue
show_state: false
icon: mdi:fireplace
show_icon: true
tap_action:
action: call-service
service: onvif.ptz
service_data:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
preset: 2
speed: 0.1
distance: 0.5
move_mode: GotoPreset
- entity: camera.hikvision_ds_2de2a404iw_de3_mainstream
type: button
name: Allée
show_state: false
icon: mdi:road
show_icon: true
tap_action:
action: call-service
service: onvif.ptz
service_data:
entity_id: camera.hikvision_ds_2de2a404iw_de3_mainstream
preset: 3
speed: 0.1
distance: 0.5
move_mode: GotoPreset
visible:
- user: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- user: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- user: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- user: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- user: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- user: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- user: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Les deux flux (en direct) fonctionnent :
rtsp://[loginfrigatecamera]:[passfrigatecamera]@192.168.0.56:554/Streaming/Channels/101
rtsp://[loginfrigatecamera]:[passfrigatecamera]@192.168.0.56:554/Streaming/Channels/102
Je pense que le problème se situe au niveau de WebRTCCamera, on voit que le serveur est : http://localhost:11984/
Où est ce serveur ?
Comment se configure WebRTCCamera ?
Avant dans go2rtc j’avais ça en plus mais je crois que c’est obsolète (actuellement toute cette partie est commentée) !
# Pour faire fonctionner la carte "custom:webrtc-camera" il faut ajouter l'intégration "WebRTC Camera" en plus de RTSCToWebRTC sinon la carte ne fonctionne pas.
# Rien de ce qu'il y a ensuite semble être important.
#
# Voir : https://forum.hacf.fr/t/flux-camera-go2rtc-inutilisable/31200
# Flux RTSP qui fonctionne : rtsp://[user]:[mdp]4@192.168.0.56:554#backchannel=0
streams:
camera_jardin:
- camera.hikvision_ds_2de2a404iw_de3 #the name of the device not camera entity in ha
- ffmpeg:camera_jardin#video=h264#hardware
streams:
camera_jardin: rtsp://homeassistant:mu7mds1gnki4zz4@192.168.0.56:554/streaming/channels/101
rtsp:
listen: ":8554" # rtsp server tcp port, default - 8554
username: "loginhomeassistant" # change the username
password: "mdphomeassistant" # change the password
default_query: "video" # optional, default codecs filters (ie video&audio)
Voilà l’image que ça me donne :
Ce qui semble poser problème c’est le http://localhost:11984/
EDIT : J’ai trouvé ça dans configuration.yaml
# Pour la configuration de WebRTC
webrtc:
ice_servers:
# Add an entry for each STUN or TURN server
- url:
- stun.l.google.com:19302
# Pour afficher go2rtc config
# http://192.168.0.52:11984
go2rtc:
debug_ui: true
username: [username]
password: [password]
Et lorsque je me rend sur la page de go2RTC : http://192.168.0.52:11984
C’est la page de go2RTC. Qui modifie ce fichier ?
# This file is managed by Home Assistant
# Do not edit it manually
app:
modules: ["api","exec","ffmpeg","http","mjpeg","onvif","rtmp","rtsp","srtp","webrtc","ws","debug"]
api:
listen: ":11984"
unix_listen: "/tmp/go2rtc-pfdy8nyd/go2rtc.sock"
allow_paths: ["/","/api","/api/frame.jpeg","/api/schemes","/api/streams","/api/webrtc","/api/ws","/api/config","/api/log","/api/streams.dot"]
local_auth: true
username: monuser
password: monmdp
# ffmpeg needs the exec module
# Restrict execution to only ffmpeg binary
exec:
allow_paths:
- ffmpeg
rtsp:
listen: "127.0.0.1:8554"
webrtc:
listen: ":8555/tcp"
ice_servers: []
Merci pour votre aide, je pense que ça doit être tout con…






