Configuration minimale pour Frigate : dahua

Bonjour,

Suite de ce sujet : Configuration minimale pour Frigate - Entraide Home Assistant - Home Assistant Communauté Francophone

J’ai fais fonctionner ma caméra arrière jardin.
Et il me semble bien que ma caméra dahua du portier fonctionnait. Je l’ai laissée hors tension pendant un certain temps et lorsque je la remet, je n’ai plus de stream sur le portier.
J’ai des variables d’environnement pour Frigate (données dans un .env et setté dans le docker-compose.yaml.
Une fois le docker chargé, je peux visualiser les variables qui semblent corrrectes.
Les stream ffmpeg sont correctement visualisable dans vlc ou dans HA.
Mais ce que je souhaite ce sont les flucs go2rtc comme pour ma caméra arrière.
J’ai bien mis les scripts pour l’audio (que j’avais avant).

version: 0.17-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:
  # Optional: Enable mqtt server (default: shown below)
  enabled: true
  # Required: host name
  host: 192.168.0.52
  # Optional: port (default: shown below)
  port: 1883
  # Optional: topic prefix (default: shown below)
  # NOTE: must be unique if you are running multiple instances
  topic_prefix: frigate
  # Optional: client id (default: shown below)
  # NOTE: must be unique if you are running multiple instances
  client_id: frigate
  # Optional: user
  # NOTE: MQTT user can be specified with an environment variable or docker secrets that must begin with 'FRIGATE_'.
  #       e.g. user: '{FRIGATE_MQTT_USER}'  
  user: '{FRIGATE_MQTT_USER}'
  # Optional: password
  # NOTE: MQTT password can be specified with an environment variable or docker secrets that must begin with 'FRIGATE_'.
  #       e.g. password: '{FRIGATE_MQTT_PASSWORD}'
  password: '{FRIGATE_MQTT_PASSWORD}'

#===============================================================================
#=                            Google Coral USB key                             =
#===============================================================================
detectors:
  coral:
    type: edgetpu  # Utilise le Edge TPU de la clé Coral
    device: usb    # Spécifie que la clé est connectée en USB

#===============================================================================
#=                      Optional: Snapshot configuration                       =
#===============================================================================
# Optional: Snapshot configuration  
snapshots:
  enabled: true
  # Optional: save a clean PNG copy of the snapshot image (default: shown below)
  clean_copy: true
  # Optional: print a timestamp on the snapshots (default: shown below)
  timestamp: true
  # Optional: draw bounding box on the snapshots (default: shown below)
  bounding_box: true
  # Optional: crop the snapshot (default: shown below)
  crop: false
  # Optional: Camera override for retention settings (default: global values)
  retain:
    # Required: Default retention days (default: shown below)
    default: 15
    # Optional: Per object retention days
    objects:
      person: 15

#===============================================================================
#=                                  go2rtc                                     =
#===============================================================================
go2rtc:
  streams:
    camera_jardin:
      - rtsp://{FRIGATE_CAMERA_JARDIN_LOGIN}:{FRIGATE_CAMERA_JARDIN_PASSWORD}@192.168.0.56:554/Streaming/Channels/101
    camera_jardin_sub:
      - rtsp://{FRIGATE_CAMERA_JARDIN_LOGIN}:{FRIGATE_CAMERA_JARDIN_PASSWORD}@192.168.0.56:554/Streaming/Channels/102
    dahua_portier_vto:
      # H264 720p
      - echo:/config/scripts/fix_vto_codecs.sh 
        ffmpeg:rtsp://{FRIGATE_DAHUA_VTO_LOGIN}:{FRIGATE_DAHUA_VTO_PASSWORD}@192.168.0.65:554/cam/realmonitor?channel=1&subtype=0#video=copy
      # PCMA, 2-way audio
      - echo:/config/scripts/fix_vto_codecs.sh 
        rtsp://{FRIGATE_DAHUA_VTO_LOGIN}:{FRIGATE_DAHUA_VTO_PASSWORD}@192.168.0.65:554/cam/realmonitor?channel=1&subtype=0&unicast=true&proto=Onvif#media=audio#backchannel=1
      # AAC
      - rtsp://{FRIGATE_DAHUA_VTO_LOGIN}:{FRIGATE_DAHUA_VTO_PASSWORD}@192.168.0.65:554/doorbell_hd?audio=aac
    dahua_portier_vto_sub:
      # H264, AAC D1
      - echo:/config/scripts/fix_vto_codecs.sh 
        ffmpeg:rtsp://{FRIGATE_DAHUA_VTO_LOGIN}:{FRIGATE_DAHUA_VTO_PASSWORD}@192.168.0.65:554/cam/realmonitor?channel=1&subtype=1#video=copy#audio=copy
      # PCMA
      - rtsp://{FRIGATE_DAHUA_VTO_LOGIN}:{FRIGATE_DAHUA_VTO_PASSWORD}@192.168.0.65:554/doorbell?audio=pcma&backchannel=0
  ffmpeg:
    path: '5.0'
  webrtc:
    listen: :8555   # external TCP/UDP port
    candidates:
      - 192.168.0.60:8555
      - stun:8555

#===============================================================================
#=                                  Caméras                                    =
#=                                                                             =
#= 8555 : port go2rtc                                                          =
#= 8554 : Lecture pour go2rtc                                                  =
#===============================================================================
cameras:
  # Flux vidéo de la caméra jardin arrière
  camera_jardin:
    ffmpeg:
      # Optional: global hwaccel args (default: auto detect)
      # NOTE: See hardware acceleration docs for your specific device
      hwaccel_args: auto
      inputs:
        - path: rtsp://127.0.0.1:8554/camera_jardin
          input_args: preset-rtsp-restream
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/camera_jardin_sub
          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)
      fps: 6
    objects:
      track:
        - person
        - cat
        - dog
    live:
      streams:
        main_stream: camera_jardin
        sub_stream: camera_jardin_sub
    onvif:
      host: 192.168.0.56
      port: 80 # Dans caméra, Configuration / Réglages de base / Port => Port du serveur
      user: '{FRIGATE_CAMERA_JARDIN_PTZ_LOGIN}'
      password: '{FRIGATE_CAMERA_JARDIN_PTZ_PASSWORD}'
      ignore_time_mismatch: true
  dahua_portier_vto:
    enabled: true
    ffmpeg:
      hwaccel_args: auto
      inputs:
        - path: rtsp://127.0.0.1:8554/dahua_portier_vto
          input_args: preset-rtsp-restream-low-latency
          roles:
            - audio  # Pour activer l'audio            
        - path: rtsp://127.0.0.1:8554/dahua_portier_vto_sub
          input_args: preset-rtsp-restream-low-latency
          roles:
            - detect
      output_args:
        record: preset-record-generic-audio-aac
    detect:
      enabled: false # Désactive la détection
    record:
      enabled: false # Désactive l'enregistrement
    live:
      streams:
        main_stream: dahua_portier_vto
        sub_stream: dahua_portier_vto_sub

#===============================================================================
#=                            Détections / Enregistrements                     =
#===============================================================================

# Optional: Record configuration
# NOTE: Can be overridden at the camera level
    motion:
      mask: 0.036,0.023,0.574,0.025,0.576,0.075,0.039,0.074
record:
  enabled: true
  # Optional: Number of minutes to wait between cleanup runs (default: shown below)
  # This can be used to reduce the frequency of deleting recording segments from disk if you want to minimize i/o
  expire_interval: 60
  # Optional: Retention settings for recording
  alerts:
    retain:
      days: 15
    pre_capture: 10
    post_capture: 10
  detections:
    retain:
      days: 15
    pre_capture: 10
    post_capture: 10

#===============================================================================
#=                                  Détections                                 =
#===============================================================================
  continuous:
    days: 0
  motion:
    days: 15
objects:
  track:
    - person
    - cat
    - dog

# Désactiver le certificat pour le reverse proxy
tls:
  enabled: false

detect:
  enabled: true

Le log :

info | 2026-05-25 12:07:55 | watchdog.dahua_portier_vto | Restarting ffmpeg…
error | 2026-05-25 12:07:55 | frigate.video | dahua_portier_vto: Unable to read frames from ffmpeg process.
error | 2026-05-25 12:07:55 | frigate.video | dahua_portier_vto: ffmpeg process is not running. exiting capture thread…
error | 2026-05-25 12:08:05 | watchdog.dahua_portier_vto | Ffmpeg process crashed unexpectedly for dahua_portier_vto.
error | 2026-05-25 12:08:05 | watchdog.dahua_portier_vto | The following ffmpeg logs include the last 100 lines prior to exit.
error | 2026-05-25 12:08:05 | ffmpeg.dahua_portier_vto.detect | [rtsp @ 0x5651d4f211c0] method DESCRIBE failed: 404 Not Found
error | 2026-05-25 12:08:05 | ffmpeg.dahua_portier_vto.detect | [in#0 @ 0x5651d4f20e40] Error opening input: Server returned 404 Not Found
error | 2026-05-25 12:08:05 | ffmpeg.dahua_portier_vto.detect | Error opening input file rtsp://127.0.0.1:8554/dahua_portier_vto_sub.
error | 2026-05-25 12:08:05 | ffmpeg.dahua_portier_vto.detect | Error opening input files: Server returned 404 Not Found
info | 2026-05-25 12:08:05 | watchdog.dahua_portier_vto | Restarting ffmpeg…
error | 2026-05-25 12:08:05 | frigate.video | dahua_portier_vto: Unable to read frames from ffmpeg process.
error | 2026-05-25 12:08:05 | frigate.video | dahua_portier_vto: ffmpeg process is not running. exiting capture thread…
error | 2026-05-25 12:08:15 | watchdog.dahua_portier_vto | Ffmpeg process crashed unexpectedly for dahua_portier_vto.
error | 2026-05-25 12:08:15 | watchdog.dahua_portier_vto | The following ffmpeg logs include the last 100 lines prior to exit.
error | 2026-05-25 12:08:15 | ffmpeg.dahua_portier_vto.detect | [rtsp @ 0x55ec3aeb01c0] method DESCRIBE failed: 404 Not Found
error | 2026-05-25 12:08:15 | ffmpeg.dahua_portier_vto.detect | [in#0 @ 0x55ec3aeafe40] Error opening input: Server returned 404 Not Found
error | 2026-05-25 12:08:15 | ffmpeg.dahua_portier_vto.detect | Error opening input file rtsp://127.0.0.1:8554/dahua_portier_vto_sub.
error | 2026-05-25 12:08:15 | ffmpeg.dahua_portier_vto.detect | Error opening input files: Server returned 404 Not Found
info | 2026-05-25 12:08:15 | watchdog.dahua_portier_vto | Restarting ffmpeg…
error | 2026-05-25 12:08:15 | frigate.video | dahua_portier_vto: Unable to read frames from ffmpeg process.
error | 2026-05-25 12:08:15 | frigate.video | dahua_portier_vto: ffmpeg process is not running. exiting capture thread…

Et ça continue comme ça en boucle !

Bon j’ai trouvé. Il s’agit d’une sécurité qui ne permet plus d’appeler le script pour avoir l’audio.
Il faut ajouter dans docker-compose.yaml :

    environment:
      # Pour appeler fix_vto_codecs.sh
      - GO2RTC_ALLOW_ARBITRARY_EXEC=true

ok, coche résolu :wink: pour éviter qu’on y passe du temps dessus.

Ok, merci. Pour le moment ça fonctionne.

Tu n'as pas compris mon message, quand on a un sujet résolu, on coche "Solution", ça nous permet de pas lire des sujets résolus, surtout quand c'est l'auteur qui a trouvé la solution :innocent:

Ca ressemble à ça : image

Je n'avais pas compris le sens de ton message, je croyais que tu me l'avais fait !
En y regardant plus attentivement, oui j'ai été un peu con... Mais c'est bon c'est corrigé.
J'attendais pour mettre le résolu d'avoir quelques jours de recul pour voir si tout était correct.