Kamera defekt: Kein Bild in Gladys, aber Bild in der Hersteller-App

Hallo,
Ich habe heute festgestellt, dass ich ein Bild von einer defekten Kamera habe.

Ich habe seit sehr langer Zeit zwei identische NETATMO-Kameras in Gladys integriert.

In der „Kamera“-Integration wird ein Fehler für eines der Geräte angezeigt, obwohl ich nichts verändert habe und das andere Gerät kein Problem hat.

Bild der Netatmo-Weboberfläche:

Hast du nicht ein Update der Kamera durchgeführt, das die URL geändert hätte?

Nein, die Updates werden von Netatmo bereitgestellt.
Das letzte Update stammt von November 2024.

Die URL ist dieselbe, die ich am 17.12.2022 angegeben habe.
Notiert in meinem Dokument, das bei der Integration der Kameras erstellt wurde.

@gaetanb76,

Gab es einen Stromausfall bei dieser Kamera und nicht bei der anderen? Eine Trennung? Ein Neustart? Etwas anderes? Weißt du genau, wann das passiert ist und könntest du im Verlauf der Anwendung zurückgehen, um es zu finden?

Entschuldigung für die späte Rückmeldung.

Die Bilder werden in meiner Dropbox gespeichert.
Im März gab es keine Kameraausfälle.

Ich weiß nicht, wie ich auf die Gladys-Logs zugreifen soll, um auf ein so weit zurückliegendes Datum zuzugreifen.
Außerdem wurde Gladys seitdem mehrmals neu gestartet.

Vor zwei Wochen hatte ich eine Internetunterbrechung von vier Tagen.
Alles ist wieder in Ordnung gekommen, ohne dass ich etwas tun musste.

Keine Probleme mehr mit der Kamera @gaetanb76?
Netatmo hat seit Anfang März schon einiges gemacht…

Hallo,
der gleiche Fehler wieder, Bild in der Netatmo-App, aber nicht in Gladys. Und zwar für dieselbe Kamera.

Gladys-Logs:

2025-04-26T16:32:48+0200 <warn> getImage.js:79 () Fehler: Befehl ist fehlgeschlagen: ffmpeg -i http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/index.m3u8 -f image2 -vframes 1 -qscale:v 15 -vf scale=1280:-1 /tmp/gladysassistant/camera-36b64735-384d-49a0-a909-086732595ff7-269-38-32-16.jpg
ffmpeg Version 5.1.6-0+deb12u1 Copyright (c) 2000-2024 the FFmpeg developers
  compiled with gcc 12 (Debian 12.2.0-14)
  configuration: --prefix=/usr --extra-version=0+deb12u1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-sndio --enable-libjxl --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
[hls @ 0x58fa8d91e880] Skip ('#EXT-X-INDEPENDENT-SEGMENTS')
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/high/index.m3u8' for reading
[hls @ 0x58fa8d91e880] Skip ('#EXT-X-VERSION:7')
[http @ 0x58fa8d92be40] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/medium/index.m3u8' for reading
[hls @ 0x58fa8d91e880] Skip ('#EXT-X-VERSION:7')
[http @ 0x58fa8d92be40] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/low/index.m3u8' for reading
[hls @ 0x58fa8d91e880] Skip ('#EXT-X-VERSION:7')
[http @ 0x58fa8d92be40] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/poor/index.m3u8' for reading
[hls @ 0x58fa8d91e880] Skip ('#EXT-X-VERSION:7')
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/high/live0000523595.ts' for reading
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/high/live0000523596.ts' for reading
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/medium/live0000523595.ts' for reading
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/medium/live0000523596.ts' for reading
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/low/live0000523595.ts' for reading
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/low/live0000523596.ts' for reading
[http @ 0x58fa8d92be40] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/poor/index.m3u8' for reading
[hls @ 0x58fa8d91e880] Skip ('#EXT-X-VERSION:7')
[hls @ 0x58fa8d91e880] skipping 2 segments ahead, expired from playlists
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/poor/live0000523597.ts' for reading
[hls @ 0x58fa8d91e880] Opening 'http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/files/poor/live0000523598.ts' for reading

    at genericNodeError (node:internal/errors:983:15)
    at wrappedFn (node:internal/errors:537:14)
    at ChildProcess.exithandler (node:child_process:414:12)
    at ChildProcess.emit (node:events:518:28)
    at maybeClose (node:internal/child_process:1101:16)
    at Process.ChildProcess._handle.onexit (node:internal/child_process:304:5) {
  code: 255,
  killed: true,
  signal: null,
  cmd: 'ffmpeg -i http://192.168.xxx.xxx/xxxxxxxxx84d7803eb4e6913cxxxxxxxxx/live/index.m3u8 -f image2 -vframes 1 -qscale:v 15 -vf scale=1280:-1 /tmp/gladysassistant/camera-36b64735-384d-49a0-a909-086732595ff7-269-38-32-16.jpg'
}
2025-04-26T16:32:48+0200 <warn> poll.js:14 (RtspCameraHandler.poll) Kamera kann nicht abgefragt werden

Hallo @gaetanb76!

Ich habe keine Netatmo-Kamera zur Hand, daher ist es schwierig, selbst zu testen, aber hier sind einige klassische Punkte, die du überprüfen kannst:

  • Hast du den Stream in VLC getestet, um sicherzustellen, dass er funktioniert? (Dokumentation → Intégration caméra IP : ajoutez n'importe quelle caméra RTSP ou HTTP à Gladys | Gladys Assistant)
  • Könnte es ein Problem mit dem lokalen Netzwerk sein? Wenn die Kamera zu lange braucht, um zu antworten, löst Gladys einen Fehler aus. Es gibt eine Timeout von 10 Sekunden, um das Bild abzurufen. Laut den Logs antwortet sie zwar, aber vielleicht zu langsam?
  • Wird der Stream von einem anderen Client parallel genutzt? Einige Kameras unterstützen keine mehreren Verbindungen gleichzeitig, was den Fehler erklären könnte.

Halte uns auf dem Laufenden, wir finden eine Lösung! :slight_smile:

Hallo @pierre-gilles,
Vielen Dank für deine Rückmeldung.

  • Der Videostream von VLC ist OK (Appentis)

  • Der Stream wird von keiner anderen Instanz genutzt
  • Seit meiner Nachricht ist das Bild von alleine zurückgekommen.
    Ich habe eine weitere Kamera „Netatmo Außenbereich“ (Eingang), die dieses Problem nicht aufweist.

Die Unterschiede zwischen den beiden:

  • Eingang ist per WLAN-Direct mit dem Haupt-TP-Link-Deco verbunden (ich habe das WLAN der Box deaktiviert)
  • Appentis ist per WLAN mit einem Orange Wifi 6 Repeater verbunden, der wiederum per Powerline mit der Box verbunden ist.

Ich habe einen dritten Deco, den ich nicht nutze, ich könnte versuchen, ihn anstelle des Orange-Repeaters zu verwenden.
Falls nicht, könnte es auch am zu kurzen Timeout liegen, in der Tat.

Ja, nach dem, was du mir sagst, ist es wahrscheinlich ein Timeout-Problem.

Allerdings sind 10 Sekunden, um ein Kamerabild abzurufen, schon sehr lang, also solltest du auf deiner Seite prüfen, wie du dein Netzwerk verbessern kannst, damit deine Kamera in weniger als 10 Sekunden antwortet.

Ein Orange-Repeater, der über Powerline (CPL) verbunden ist, könnte das Problem sein!

Hallo @pierre-gilles
Ich poste hier, weil ich ein Problem mit einer Tapo C210-Kamera habe. Das ist jetzt schon das zweite oder dritte Mal, dass das passiert. Die Kamera liefert zwar ein Bild mit der TAPO-App und auch beim Streaming auf dem TB von Gladys, aber nicht alle 10 Sekunden. Und dann funktioniert es wieder, ohne dass ich etwas mache. Sehr seltsam
Hier sind die Logs:

2025-05-25T08:36:38+0200 <warn> getImage.js:79 () Error: Command failed: ffmpeg -rtsp_transport tcp -i rtsp://xxxxxxxxxxxxxxxxxxxxxxxxx@192.168.1.174:554/stream1 -f image2 -vframes 1 -qscale:v 15 -vf scale=1280:-1 /tmp/gladysassistant/camera-5346cd76-3f07-455a-bd57-2e4189598e6d-991-27-36-8.jpg
ffmpeg version 5.1.6-0+deb12u1 Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 12 (Debian 12.2.0-14)
  configuration: --prefix=/usr --extra-version=0+deb12u1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-sndio --enable-libjxl --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100

    at genericNodeError (node:internal/errors:983:15)
    at wrappedFn (node:internal/errors:537:14)
    at ChildProcess.exithandler (node:child_process:414:12)
    at ChildProcess.emit (node:events:518:28)
    at maybeClose (node:internal/child_process:1101:16)
    at Process.ChildProcess._handle.onexit (node:internal/child_process:304:5) {
  code: 255,
  killed: true,
  signal: null,
  cmd: 'ffmpeg -rtsp_transport tcp -i rtsp://xxxxxxxxxxxxxxxxxxxxxxxxxxxx@192.168.1.174:554/stream1 -f image2 -vframes 1 -qscale:v 15 -vf scale=1280:-1 /tmp/gladysassistant/camera-5346cd76-3f07-455a-bd57-2e4189598e6d-991-27-36-8.jpg'
Vor den Updates 4.58 hatte ich dieses Problem nicht, ich habe andere Tapo- und IMOU-Kameras, die einwandfrei funktionieren. Was denkst du? Vielen Dank im Voraus

Hallo @Psoy,

Deine Kamera braucht mehr als 10 Sekunden, um zu reagieren, das ist der Grund für den Fehler.

Da mehrere Nutzer betroffen zu sein scheinen, werde ich die Wartezeit auf 20 Sekunden erhöhen, um solche Probleme zu vermeiden.

Allerdings, @Psoy @gaetanb76, da eure Netzwerke etwas langsam zu sein scheinen, empfehle ich euch, die Bilder eurer Kameras nicht zu häufig zu aktualisieren. Ein Intervall von einer Minute wäre in eurem Fall besser geeignet :slightly_smiling_face:

Timeout hier erhöht:

Das ist gemerged und wird in der nächsten Version von Gladys enthalten sein :slight_smile:

Es ist live in Gladys Assistant 4.59: