Utilisation détectée d'un ancien fournisseur WebRTC

Moi ça ne marche pas et en effet je n’ai rien compris à ce que tu as fais.
J’ai supprimé RTSPtoWebRTC et j’ai conservé WebRTC Camera (HACS) et la carte custom:webrtc-camera.

Plus de ngrok ? Qu’est-ce que c’est debug_ui ? C’est où ? Dans quel fichier ?
MON_IP:11984 c’est où ? Avant c’était 1984 (je ne sais plus où) ?
Bref je nage.

Mon ancienne configuration go2rtc :

webrtc:
  listen: ":8555" # external TCP/UDP port
  candidates:
    - stun:8555

ngrok:
  command: ngrok tcp 8555 --authtoken xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Bonsoir @anon26006247,

Oui pas de soucis de mon côté j’ai :

  • Sauvegarde au cas où
  • Supprimer RTSPtoWebRTP (intégration) et désinstaller go2RTC (add-on)
  • Reboot de HA
  • Activer le debug_ui de go2RTC dans le fichier configuration.yaml
    image
go2rtc:
  debug_ui: true
  • Reboot de HA pour recharger le configuration.yaml et donc activer le debug_ui
  • Ouvrir l’UI de go2RTC par l’adresse « http:// TON IP HA:11984 »
  • Ce qui me donne ceci :

    J’ai donc bien les flux qui remontent
  • Ensuite ne pas oublier de supprimer le debug_ui (=supprimer les lignes du 4ème point)
  • Reboot de HA pour recharger le configuration.yaml sans debug_ui

Bon, j’ai réussi à accéder à go2rtc.
Voici le fichier :

# This file is managed by Home Assistant
# Do not edit it manually

api:
  listen: ":11984"

rtsp:
  listen: "127.0.0.1:18554"

webrtc:
  listen: ":18555/tcp"
  ice_servers: []

Mais WebRTC Camera ne fonctionne pas, il doit taper 1984 ou 8555…
Il y a des trucs à configurer ailleurs.

WebRTC Camera indique une erreur, il tape 1984 et pas 11984. Je ne sais pas où le configurer.

De mon côté, j’ai supprimé RTSPtoWebRTC et go2RTC, n’utilisant pas WebRTC (HACS) je ne me risquerai pas à te conseiller là dessus au risque de casser encore plus ta config :upside_down_face:

Idem, je n’utilise pas cette feature donc je ne saurai t’aider :confused:

Visiblement tu as réussi cette étape :+1:

Exact ! HA a modifié les ports par défaut pour ne pas faire des conflits de ports :

D’où le port 11984.

Tes caméras remontent dans go2RTC du coup ?

Dans la doc de WebRTC Camera (HACS), exemple de carte :

type: 'custom:webrtc-camera'

url: 'rtsp://....'
entity: camera.generic_stream
mode: webrtc,webrtc/tcp,mse,hls,mjpeg  # stream technology, default all of them
media: video,audio  # select only video or audio track, default both

server: http://192.168.1.123:1984/     # custom go2rtc server address, default empty

Apparemment on peut changer le serveur go2RTC, à tester.

Bon, c’est ça qu’il me manquait, le serveur dans la carte WebRTC camera :

server: http://localhost:11984/

Cette ligne là, je n’en avait pas besoin avant mais on passait par RTSPtoWebRTC et elle est là la différence à mon avis, cette ligne était configurée dans ce module.
Donc, ça marche, je vous donne ma carte avec les flèches (pour bouger la caméra), les 3 positions (Allée / Terrasse / Barbecue) ainsi que l’activation de la détection par Frigate (switch.camera_jardin_detect). Frigate est sur une autre machine (avec un Google Coral) et sur HA j’ai juste le Frigate Proxy.

!! Un grand, un énorme merci pour votre aide !!

type: custom:layout-card
layout_type: custom:masonry-layout
layout: {}
cards:
  - type: custom:webrtc-camera
    url: camera.hikvision_ds_2de2a404iw_de3_mainstream
    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: false
    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
    entities:
      - entity: switch.camera_jardin_detect
        name: Detect
      - entity: camera.hikvision_ds_2de2a404iw_de3_mainstream
        type: button
        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
        name: Terrasse
        show_state: false
        icon: mdi:home
        show_icon: true
      - entity: camera.hikvision_ds_2de2a404iw_de3_mainstream
        type: button
        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
        name: Barbecue
        show_state: false
        icon: mdi:fireplace
        show_icon: true
      - entity: camera.hikvision_ds_2de2a404iw_de3_mainstream
        type: button
        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
        name: Allée
        show_state: false
        icon: mdi:road
        show_icon: true

1 « J'aime »

Une seule petite ligne de différence et ça repart :sweat_smile: !

En tout cas, une intégration et un add-on en moins ça simplifiera pas mal la maintenance à l’avenir ! J’ai pas trouvé la doc très claire pour ce changement sur les protocoles RTC etc… mais bon on s’en est sorti !

Demain je test au taf si ça passe par un ngrok ou autre truc (je crois avoir lu que c’est autre chose qui est utilisé) pour voir si hors réseau local ça fonctionnera toujours de façon aussi réactive.

Oui j’ai lu l’info aussi mais n’étant pas du tout un spécialiste en réseau/tunneling etc pour l’accès aux caméras je me suis pas renseigné plus que ça.

Oui à tester au taf ou alors simplement en 4G sur ton téléphone, en espérant pour toi que ça roule !

Bon avec tout ça j’ai pu faire des test, et donc, comprendre…
Effectivement go2rtc est intégré et j’ai accès à l’interface hors on ne peut pas modifier la conf.
ET il est là le problème, si j’ai de la latences en 4G c’est dû au fait que je ne peut pas modifier la conf qui est gérer par HA, donc je ne peut pas ajouter la partie ngrok pour visionner les caméras depuis l’extérieur !
Donc je ne sais pas comment faire mais effectivement il semblerait qu’il me suffirait de réussir à mettre ces lignes pour ngrok et donc que les flux soit rediriger à l’extérieur (ce qui n’est pas nécessaire pour ceux qui ont nabu casa car au lieu d’avoir besoin de ngrok quand on paye nabu casa, leurs serveur agissent comme ngrok agit…)
Je creuserai demain ou attendrais une MAJ plus simple et explicite…
Merci pour tout

Salut,
Pourquoi continues tu à utiliser la carte webrtc-camera ? La carte picture-entity devrait maintenant automatiquement utiliser WebRTC quand possible avec la nouvelle version de HA, non ?

De ce que j’ai compris :

  • l’accès au serveur STUN est fourni gratuitement par HA peu importe si on est abonné au Cloud Nabu Casa ou non et peu importe l’accès extérieur utilisé
  • l’accès au serveur TURN quant à lui nécessite l’abonnement au Cloud Nabu Casa

Et oui apparemment on ne peut pas éditer le fichier config de go2RTC directement depuis son UI.

Mais on peut modifier les infos du serveur STUN et/ou TURN dans le fichier configuration.yaml (cf. la doc ici).
Je ne sais pas si ça peut aider… .

Et sinon as-tu essayé la méthode, un peu bourrin, d’ajouter la partie ngrok directement dans le configuration.yaml (au même endroit que pour le debug_ui), du style :

go2rtc:
  debug_ui: false
  ngrok:
    command: ngrok tcp 8555 --authtoken xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Peu de chance que ça marche je pense mais à tester, on ne sait jamais… .

Bon, en effet, arrivé au taf ça ne fonctionne pas !

La carte picture-entity affiche en effet la caméra, une image toutes les 10 à 15 secondes !
J’ai pas l’impression que ça soit automatique le RTC.
La carte webrtc-camera contient (voir mon code) une section ptz qui me permet d’ajouter les commande de zoom avec la caméra et d’ajouter des flèches pour la faire bouger. Pas certain que je puisse faire ça avec la carte picture-entity.

C’est quoi ce serveur STUN ? En fait je ne sais pas à quoi sert ce truc.
Sinon le ngrok ajouté c’est une bonne idée mais ça ne fonctionne pas, la conf est invalide !

Je vais chercher…

Bon, ça marche !
J’ai ajouté dans les lignes suivantes dans le fichier configuration.yaml.
Contrairement à ce qui est écrit ici (Section MANUAL CUSTOMIZATION) : https://www.home-assistant.io/integrations/homeassistant/#custom-stun-and-turn-servers
Il ne FAUT PAS mettre webrtc: sous homeassistant: mais bien à la racine (collé à gauche) !

webrtc:
  ice_servers:
    # Add an entry for each STUN or TURN server
    - url:
      - "stun.l.google.com:19302"

Par contre, plus besoin de ngrok ? Bizarre tout ça.

Après reboot ça marche !
Après deuxième reboot, ça marche plus alors que je n’ai rien changé ! (mse stream not found)

En faite il faudrait savoir comment réintégrer ngrok car c’est ça qui donne l’accès extérieur des caméras… tiens nous au courant, ça fonctionne plus du coup après ton reboot ?

Hello

Je ne comprends pas ( et n’ai jamais cherché à comprendre) cette histoire avec Ngrok.
Les tutos video et moi ça fait 2, c’est peut-être pour ça ? :grin:

Utilisant le go2RTC intégré à Frigate, et une carte Frigate pour l’affichage, je n’ai jamais eu besoin de creer un tunnel ngrok pour visualiser sans latence de l’extérieur mes caméras sur mon dashboard :thinking:

Aucun « bug » ni changement depuis l’intégration native de Go2rtc ( normal puisque ça n’utilise pas le même port) .
Et Pour tester , une simple générique caméra, une carte picture entity ou Frigate, et c’est sans latence ( comme promis par cette nouvelle version) , et Toujours pas besoin de Ngrok :wink:

1 « J'aime »

Bonjour,

L’explication ici :

1 « J'aime »

Merci @Integra

Après avoir appliqué ce que tu as indiqué, je n’ai qu’une seule caméra qui est remontée (Reolink Video Doorbell). Pas de trace de la deuxième caméra.

Je vais voir si avec l’intégration webRTC j’arrive à avoir l’audio bidirectionnel sur une carte webRTC-camera.

1 « J'aime »

Bonjour @Feneck91,

La bascule entre RTC & HLS ou autres se fait bien automatiquement sur une picture-entity card selon les flux disponibles.

De mon côté, j’ai pu rajouter le PTZ sur une picture entity card sans soucis, ainsi qu’un bouton pour activer/désactiver la caméra. Donc je pense que tu pourrais avec ta config actuelle. Mais si ta carte WebRTC te convient alors reste dessus, le principal c’est que se soit fonctionnel et pratique pour toi.

image

Pour tout ceux que ça intéresse, ou qui on du temps à perdre, beaucoup d’infos et de réponses à nos questions sont apportées dans le live qui venait présenté la MAJ 2024.11.

Concernant la partie WebRTC voici lien de la vidéo avec le bon timecode.
Pendant 20 minutes, ils présentent et répondent aux questions concernant l’intégration WebRTC en natif (explication des serveurs STUN & TURN, reverse proxy, Cloudflare, NAT… etc.) donc voila les infos à la source.

Et si l’utilisation de Ngrok est indispensable pour vous, vous pouvez toujours continuer avec l’add-on go2RTC contenant votre config Ngrok fonctionnelle. Puis dans le fichier configuration.yaml de Home Assistant rajouter les lignes suivantes :

go2rtc:
  url: http://VOTRE IP HA ou go2RTC:1984

Ainsi le lien sera fait entre l’add-on go2RTC et celui présent en natif (au port 11984). En attendant de prochaines MAJ qui pourraient ou non ajouter la config Ngrok en natif.

1 « J'aime »

et en faisant ce lien doit on enlever l’intégration rtsptowebrtc?
je vais tester ça après du coup ! faire le lien avec le module complémentaire go2rt. pour garder ngrok…j’ai regarder la vidéo et effectivement il travaille visiblement déjà sur une alternative pour un serveur TURN pour ceux qui n’utilise pas nabu casa (une simple intégration de ngrok serait le plus simple je pense)…