Dieser Beitrag erklärt umfassend, wie du dein Kamera-Setup in Home Assistant aufbauen kannst, um bestmögliche Funktionalität zu erzielen.
Wir beleuchten, welche Kameras am besten mit Home Assistant zusammenarbeiten, wie du sie integrierst, wie ein beispielhaftes Setup aussehen kann und welche Modelle sich empfehlen.
Kamera-Modelle in der Übersicht
Hier werden WLAN- und PoE-Modelle vorgestellt, die sich für die Integration eignen. Für batteriebetriebene Kameras gibt es einen separaten Abschnitt weiter unten.
Duo 3
Mit 180-Grad Sicht und 2 Linsen perfekt für weitläufige Bereiche wie Terrassen oder Gärten und für Wandmontage geeignet.
Reolink 16MP UHD Dual-Objektiv PoE Überwachungskamera außen mit 180° Panoramaansicht, Bewegungsspur, Farb-Nachtsicht, Personen-/Fahrzeug-/Tiererkennung, 2-Wege-Audio, 24/7 Aufzeichnung, Duo 3 PoE
CX810
Normaler Sichtwinkel, krasse Nachtsicht und in Farbe.
Reolink CX810 ColorX PoE Kamera, 4K UHD, Echtfarben-Nachtsicht, F1,0 Superblende, 1/1,8“ Bildsensor, HDR Technologie, Personen-/Tiererkennung, Spotlight & Sirene Alarm, 2-Wege-Audio
RLC-1240A
12MP UHD, 145° Sichtfeld und IK10 Vandalismus-geschützt. Dieses Modell sollte mit Home Assistant funktionieren.
Reolink 12MP Vandalismusgeschützte PoE-Sicherheitskamera mit 145° Weitwinkel, Farbnachtsicht, Zwei-Wege-Audio, Smarter Personen-/Fahrzeug-/Tiererkennung & IP67 Wetterschutz, RLC-1240A
TrackMix PoE
4K PTZ mit Wi-Fi 6 und Dual-Objektiv. Ideal für umfassende Überwachung. Es gibt auch eine WLAN-Version.
Reolink 4K 8MP PTZ PoE Überwachungskamera Außen mit Dual-Objektiv, 6X Hybridzoom, 355°/90° Schwenkbar, Auto-Tracking, Farbnachtsicht, Personen-/Fahrzeug-/Tiererkennung, 2-Wege-Audio, TrackMix PoE
Duo 3 WiFi
Genauso leistungsstark wie die Duo 3 PoE, aber mit WLAN-Konnektivität und Netzteil.
Reolink Duo 3 WiFi, 16MP Wi-Fi 6 Überwachungskamera Aussen WLAN mit 180° Panoramablick, Bewegungsspur, Dual-Lens WLAN Kamera Outdoor, 30m Farbnachtsicht, 24/7 Aufzeichnung, KI-Erkennung, IP67
Elite Floodlight WiFi
Diese WLAN-Kamera dient mit ihren 3000-Lumen Scheinwerfern auch als Flutlicht-Ersatz. Sie kann direkt an ein 230V-Kabel angeschlossen werden, ideal für die Platzierung an ehemaligen Lampenstandorten.
Reolink Elite Floodlight WiFi, 4K WLAN Kamera Outdoor mit 3000 Lumen Flutlicht, Dimmbares Licht(3000K~6000K), 2,4/5GHz Wi-Fi 6, Kabelgebundene Überwachungskamera, 180° Panorama Blick, Smart-Erkennung
TrackMix WiFi
Eine 4K PTZ Kamera mit Wi-Fi 6 und Dual-Objektiv für umfangreiche WLAN-Überwachung.
Reolink 4K 8MP Wi-Fi 6 PTZ Überwachungskamera Aussen mit Dual-Objektiv, Auto-Tracking, Smarte Personen-/Fahrzeug-/Tiererkennung, 6X Hybrid-Zoom, Farbnachtsicht, 2-Wege-Audio, TrackMix WiFi
Reolink Integration einrichten (keine Batterie-Kameras)
Um eine Reolink Kamera in Home Assistant einzurichten, wird die offizielle Reolink Integration empfohlen, da sie oft stabiler und funktionsreicher ist als generische RTSP- oder ONVIF-Verbindungen. Das Video erklärt den genauen Einrichtungsprozess, die Konfiguration für Streaming und wie ein benutzerdefiniertes Dashboard mit Live-Kamera-Feed und Kontrollbuttons erstellt wird.
Beispiel-Code für eine Reolink-Karte
camera_view: live type: picture-glance title: Your Camera Location image: https://demo.home-assistant.io/stub_config/kitchen.png entities: - entity: binary_sensor.your_camera_motion - entity: camera.your_camera_entity icon: mdi:numeric-1-box-outline tap_action: action: call-service service: reolink_dev.ptz_control service_data: entity_id: camera.your_camera_entity command: TOPOS preset: 1 - entity: camera.your_camera_entity icon: mdi:numeric-2-box-outline tap_action: action: call-service service: reolink_dev.ptz_control service_data: entity_id: camera.your_camera_entity command: TOPOS preset: 2 - entity: camera.your_camera_entity icon: mdi:numeric-3-box-outline tap_action: action: call-service service: reolink_dev.ptz_control service_data: entity_id: camera.your_camera_entity command: TOPOS preset: 3 camera_image: camera.your_camera_entity
Alternativer Code für ONVIF
Die ONVIF Integration muss für die Reolink Kamera eingerichtet sein.
camera_view: live type: picture-glance title: Your Camera Location image: https://demo.home-assistant.io/stub_config/kitchen.png entities: - entity: camera.your_onvif_camera_mainstream icon: mdi:numeric-1-box-outline name: Overview secondary_info: Overview tap_action: action: call-service service: ONVIF.PTZ service_data: entity_id: camera.your_onvif_camera_mainstream move_mode: GotoPreset preset: '000' - entity: camera.your_onvif_camera_mainstream icon: mdi:numeric-2-box-outline name: Living Room tap_action: action: call-service service: ONVIF.PTZ service_data: entity_id: camera.your_onvif_camera_mainstream move_mode: GotoPreset preset: '001' - entity: camera.your_onvif_camera_mainstream icon: mdi:numeric-3-box-outline name: Hallway tap_action: action: call-service service: ONVIF.PTZ service_data: entity_id: camera.your_onvif_camera_mainstream move_mode: GotoPreset preset: '002' camera_image: camera.your_onvif_camera_mainstream
Reolink Kamera für Innenbereiche
Reolink 5MP PTZ WLAN Überwachungskamera Innen, 2,4/5 GHz WiFi Baby Monitor mit Mensch/Haustiererkennung, Auto-Tracking, 3X Optischem Zoom, Heimüberwachungskamera für Ältere Kids, 2-Wege-Audio, E1 Zoom
Batteriebetriebene Reolink Kameras
Hier erfährst du, wie du batteriebetriebene Reolink Kameras nahtlos in Home Assistant integrierst. Ein Beispiel ist die Atlas PT Ultra Kamera, das neueste Flaggschiff der Batteriekameras von Reolink, die auf ihre Integrationsfähigkeit getestet wurde.
Hier eine übersichtliche Liste der aktuellen Reolink Akku-Kameras. Diese können direkt beim Hersteller erworben werden.

Premium-Serie
Die neuesten Kameras mit unglaublicher Leistung. Dazu gehört auch die Atlas PT Ultra mit 4K Solar-Außenüberwachung, Daueraufzeichnung, ColorX-Nachtsicht und Auto-Tracking.
Die Argus 4 Pro ist eine weitere gute Alternative mit zwei Linsen für 180 Grad Weitwinkel (ohne PTZ-Funktion).
Medium-Segment
Erschwingliche batteriebetriebene Kameras mit guter Bildqualität und Linsen. Die Argus 3 Pro bietet tolle Bildqualität, Personen-/Tier-/Fahrzeugerkennung, aber keine 180-Grad-Sicht und keinen beweglichen PTZ-Kopf.
Die Argus Eco Ultra ist ebenfalls ein empfehlenswertes Modell.
Beginner
Budgetfreundliche Kameras für den Einstieg. Die Argus Eco bietet 3MP-Linsen und 2K-Aufnahmen. Empfehlenswert, wenn das Budget eine Kernrolle spielt.
Home Hub
Wichtig: Um die Reolink Akku-Kameras mit Home Assistant nutzen zu können, benötigst du den Reolink Home Hub oder Home Hub Pro als Gateway/Zentrale.
Hinweis zum Medien-Browser
Mittlerweile können die Aufnahmen der Altas PT-Ultra problemlos über den Medien-Browser von Home Assistant angezeigt bzw. abgespielt werden.
Code-Snippets & Automationsideen
Die Code-Snippets sind beispielhaft für Kameras mit PTZ-Funktionen geschrieben und können für die meisten Reolink-Kameras adaptiert werden.
Falls du die Code-Snippets übernehmen möchtest, stelle sicher, dass die Entitäten-IDs in Home Assistant deiner Nomenklatur entsprechen (z.B. camera.your_camera_entity
).
Dashboard
Die Konfiguration der Bildüberblick-Karte:
camera_view: live type: picture-glance title: Your Camera Location entities: - entity: camera.your_camera_entity_stream icon: mdi:door-closed name: Door secondary_info: Door tap_action: action: call-service service: select.select_option service_data: entity_id: select.your_camera_ptz_preset option: Door - entity: camera.your_camera_entity_stream icon: mdi:road-variant name: Street tap_action: action: call-service service: select.select_option service_data: entity_id: select.your_camera_ptz_preset option: Street - entity: camera.your_camera_entity_stream icon: mdi:stairs-up name: Stairs tap_action: action: call-service service: select.select_option service_data: entity_id: select.your_camera_ptz_preset option: Stairs camera_image: camera.your_camera_entity_stream layout_options: grid_columns: 8 grid_rows: auto
Automation(en)
Kamera drehen bei Bewegungserkennung
Dafür kann ein ZigBee Bewegungsmelder genutzt werden.
alias: Camera Motion-Move Stairs description: "" mode: single triggers: - type: motion device_id: your_motion_sensor_device_id entity_id: your_motion_sensor_entity_id domain: binary_sensor trigger: device conditions: - condition: state entity_id: binary_sensor.your_camera_vehicle state: "off" - condition: state entity_id: binary_sensor.your_camera_person state: "off" - condition: state entity_id: binary_sensor.your_camera_pet state: "off" - condition: state entity_id: binary_sensor.your_camera_motion state: "off" actions: - action: select.select_option metadata: {} data: option: Stairs target: entity_id: select.your_camera_ptz_preset
Live-Stream senden
Die folgenden Automationen erfordern eine eingerichtete Home Assistant App und einen funktionierenden Device-Tracker für die genutzte Person (z.B. über die App-Entität).
Außerdem muss dein Home Assistant von unterwegs aus erreichbar sein.
alias: Camera - Send Stream to User description: "" triggers: - trigger: state entity_id: - binary_sensor.your_camera_person to: "on" conditions: - condition: state entity_id: person.your_person_entity state: not_home enabled: true - alias: Automation has not run yet or ran more than 2 minutes ago condition: template value_template: >- {{ state_attr("automation.camera_send_stream_to_user", "last_triggered") == None or ( as_timestamp(now()) - as_timestamp(state_attr("automation.camera_send_stream_to_user", "last_triggered")) |int(0) ) >= (2*60) }} actions: - action: notify.mobile_app_your_device metadata: {} data: message: Camera - Person detected! data: entity_id: camera.your_camera_entity_stream enabled: true mode: single
Video-Aufnahme erstellen & senden
alias: Camera - Send Video to User description: "" triggers: - trigger: state entity_id: - binary_sensor.your_camera_person to: "on" conditions: - condition: state entity_id: person.your_person_entity state: not_home enabled: false actions: - action: camera.record metadata: {} data: duration: 30 filename: /media/your_camera_recording.mp4 target: entity_id: camera.your_camera_entity_stream - wait_template: >- {{ is_state("binary_sensor.your_camera_person", "off") and is_state("binary_sensor.your_camera_motion", "off") }} continue_on_timeout: false timeout: "42" - action: notify.mobile_app_your_device metadata: {} data: message: Camera - Person detected! data: video: /media/local/your_camera_recording.mp4 enabled: true mode: single
FAQ zu Reolink Kameras und Kameras im Allgemeinen
Bei den batteriebetriebenen Kameras, unterstützt beispielsweise die Altas PT-Ultra eine Voraufnahme, also das Aufnehmen bereits vor Ereigniserkennung.
Die Aufnahme vor Ereigniserkennung kann in der Reolink-App unter den Kamera-Einstellungen (Zahnrad oben rechts) im „Voraufzeichnungsmodus“ konfiguriert werden.
Damit das Video auch auf der Apple Watch angezeigt wird, muss die Home Assistant Companion App auch auf der Watch installiert sein.
Falls die Kamera über den Home-Hub nicht im WLAN konfiguriert werden kann, füge die Kamera zuerst „direkt“ in der Reolink App hinzu. Du kannst diese dann nachträglich noch auf den Home-Hub umstellen, indem du beim Home-Hub ein Gerät hinzufügst und „LAN“ auswählst.
Achtung: Subnetting, also verschiedene Netzwerke, wird hier nicht unterstützt. Home-Hub und Kamera müssen im selben Netzwerk sein.
Ja, du kannst die Reolink-Kameras ohne Probleme vom Internet aussperren (z.B. über den Router) und trotzdem die Kameras weiterhin mit Home Assistant nutzen!
Auch die Reolink App funktioniert dann noch, aber nicht von unterwegs aus.
Aus technischen Gründen können die Batterie-Kameras keinen dauerhaften RTSP-Stream oder Webserver (zum Anbinden an Home Assistant) bereitstellen.
Dies erfolgt indirekt über den Home-Hub, da dieser über ein spezielles Protokoll die Kameras wecken kann und als zentraler Speicherort der Aufnahmen dient. Es ist zu beachten, dass beim Reolink Home Hub keine Abo-Kosten anfallen.
Dies ist der maximal möglichen Bandbreite beim Schreiben auf 1 (oder genauer gesagt 2) microSD-Karten geschuldet; mehr Kamera-Streams können hier nicht aufgezeichnet werden.
Falls du mehr batteriebetriebene Kameras planst, gibt es alternativ den Home Hub Pro mit Festplatte und einem deutlich höheren Gerätelimit.
Kurz gesagt, nein. Es gibt einige wenige Ausnahmen, wenn man es begründen kann, aber generell ist nur das Filmen des eigenen Grundstücks/Immobilie erlaubt.
Auch das Filmen von Gehwegen oder gemeinsam genutzten Einfahrten ist generell nicht erlaubt.
Kameras mit Schwenkfunktionen sind eventuell problematisch und sollten im Optimalfall so platziert werden, dass diese mit dem PTZ-Kopf gar nicht erst etwas filmen können, das nicht gefilmt werden darf.
In der Reolink-App kann unter anderem der horizontale Verfolgungsbereich des PTZ-Kopfes eingestellt werden, damit dieser kurz vor öffentlichem Grund mit der Verfolgung aufhört.
Es wird empfohlen, Kameras so einzustellen, dass kein öffentlicher Grund im Sichtfeld ist und somit keine Personen auf der Straße gefilmt oder von der Personenerkennung „verfolgt“ werden. Außerdem kann unter Einstellungen -> Display -> Privatsphärenmaske, Bereiche des Videos schwarz gemacht werden. Bei PTZ-Kameras ist es sinnvoller, den horizontalen Verfolgungsbereich entsprechend einzustellen.
Kamera-Attrappen sind ebenfalls problematisch, da diese das Gefühl auslösen können, beobachtet zu werden.
LLMVision – KI für Überwachungskameras
Mit LLMVision werden alle Kameras in Home Assistant intelligent. Es bietet Personenerkennung, eine zentrale Timeline aller Ereignisse, Integration in Home Assistant Assist und vieles mehr.
Links
- Webseite: https://llmvision.org/
- Doku: https://llmvision.gitbook.io/getting-started/
- GitHub-Repo (in HACS enthalten): https://github.com/valentinfrlch/ha-llmvision
- Timeline-Karte (muss in HACS hinzugefügt werden): https://github.com/valentinfrlch/llmvision-card
- Blueprint (für Timeline-Eventspeicherung): https://raw.githubusercontent.com/valentinfrlch/ha-llmvision/refs/heads/main/blueprints/event_summary.yaml
Hinweis zur Blueprint
Wenn eine neue Version von LLMVision installiert wird oder es ein Update gibt, muss meist auch die Blueprint erneut importiert werden, um weiterhin mit LLMVision kompatibel zu sein!
Prompts
Beispiel-Prompts für verschiedene LLMs:
Memory / Settings
Typ | Prompt |
---|---|
System | Deine Aufgabe ist es, eine Reihe von Bildern zu analysieren und eine prägnante Ereignisbeschreibung basierend auf diesen Anweisungen zu erstellen. Konzentriere dich dabei auf die Identifizierung und Beschreibung der Aktionen von Personen, Haustieren und dynamischer Objekten (z.B. Fahrzeuge) und nicht auf statische Hintergrunddetails. Wenn mehrere Bilder gegeben werden, verfolge und fasse Bewegungen oder Veränderungen über die Zeit zusammen (z.B. “Eine Person geht zur Haustür”, “Ein Auto fährt aus der Einfahrt” oder „Jemand sitzt auf dem Stuhl“). Halte die Antworten kurz und objektiv. Vermeide Spekulationen und priorisiere beobachtbare Aktivitäten. Die Zusammenfassung muss weniger als 255 Zeichen lang sein, daher muss sie so gut wie möglich innerhalb dieser Zeichenbegrenzung zusammengefasst werden. |
Title | Deine Aufgabe ist es, einen kurzen und prägnanten Ereignistitel basierend auf der bereitgestellten Beschreibung zu erstellen. Dieser Titel sollte die wichtigsten Aktionen oder Ereignisse in den Bildern zusammenfassen und sich gut für Benachrichtigungen oder Alarme eignen. Achte darauf, dass der Titel klar sowie relevant für den Bildinhalt und kürzer als 6 Wörter ist. Vermeide unnötige Details oder subjektive Interpretationen. Das Format des Titels sollte gesehen bei sein, zum Beispiel: „Person bei Haustür gesehen“. |
Blueprint
Fasse die Ereignisse basierend auf der mitgeschickten Reihe von Bildern zusammen, die in kurzen Abständen aufgenommen wurden. Konzentriere dich nur auf bewegliche Objekte wie Menschen, Fahrzeuge, Tiere und andere (normalerweise) aktive Elemente. Ignoriere Objekte, die in der Regel Statisch sind und Landschaften. Schildere die Bewegungen und Interaktionen klar und prägnant. Erwähnen nicht das Vorhandensein von Bildern und stelle die Informationen so dar, als ob du die Ereignisse direkt beobachtet hättest. Beschränke deine Antwort auf maximal 100 Zeichen / 20 Tokens. Wenn keine Bewegung festgestellt wird, antworten mit: „Keine Aktivität beobachtet“.
Automationen
Türklingel
Beschreibe das Bild. Wenn du eine Person darauf erkennst, beschränke dich auf die Beschreibung Person. Bitte verzichte auf einleitende oder abschließende Sätze, gib direkt die geforderte Beschreibung aus und fasse dich kurz.
Paketerkennung
Antworte mit einer einfachen Zahl. Erkennst du jemanden, der ein Paket zustellt? Wenn du niemanden siehst, der ein Paket liefert, antworte mit 0. Wenn du einen Paketzusteller erkennst, antworte mit 1.
Waschbär
Antworte mit einer einfachen Zahl. Erkennst du einen Waschbär auf dem Bild? Wenn du keinen Waschbär siehst, antworte mit 0. Wenn du einen einen Waschbär erkennst, antworte mit 1.
Wäsche
Antworte mit einer einfachen Zahl. Wie viele Wäschestücke hängen auf der Leine? Wenn du keine Wäsche siehst, antworte mit 0. Wenn du Kleidung auf der Wäscheleine erkennst, antworte mit der Anzahl der Wäschestücke die auf der leine hängen.
Automations-Code
Paketerkennung
alias: Package Detection - LLMVision description: Integration triggers: - trigger: state entity_id: - binary_sensor.your_camera_person_detection to: "on" from: "off" id: FrontDoor conditions: [] actions: - action: llmvision.image_analyzer data: message: >- Antworte mit einer einfachen Zahl. Erkennst du jemanden, der ein Paket zustellt? Wenn du niemanden siehst, der ein Paket liefert, antworte mit 0. Wenn du einen Paketzusteller erkennst, antworte mit 1. image_entity: - camera.your_camera_low_res target_width: 1280 max_tokens: 100 temperature: 0.2 provider: your_llm_provider_id include_filename: false model: meta-llama/llama-4-scout-17b-16e-instruct expose_images: true response_variable: CameraLLMVisionResponse - if: - condition: template value_template: "{{ CameraLLMVisionResponse.response_text | int > 0 }}" then: - action: camera.snapshot metadata: {} data: filename: /media/your_camera_snapshot.jpeg target: entity_id: - camera.your_camera_high_res - action: notify.mobile_app_your_device metadata: {} data: title: Package delivered! data: image: /media/local/your_camera_snapshot.jpeg message: A package delivery person was detected by LLMVision mode: single
Türklingel (relevanter Teil des Auswählers als Code)
choose: - conditions: - condition: trigger id: - FrontDoor sequence: - action: llmvision.image_analyzer data: message: >- Beschreibe das Bild. Wenn du eine Person darauf erkennst, beschränke dich auf die Beschreibung Person. Bitte verzichte auf einleitende oder abschließende Sätze, gib direkt die geforderte Beschreibung aus und fasse dich kurz. image_entity: - camera.your_camera_low_res target_width: 1280 max_tokens: 100 temperature: 0.2 provider: your_llm_provider_id include_filename: false model: gemini-2.0-flash expose_images: true generate_title: true remember: true use_memory: true response_variable: CameraLLMVisionResponse - variables: action_open: "{{ 'OPEN_' ~ context.id }}" action_close: "{{ 'CLOSE_' ~ context.id }}" - action: notify.mobile_app_your_device metadata: {} data: message: "{{ CameraLLMVisionResponse.response_text }}" title: Doorbell rang! data: entity_id: camera.your_camera_low_res push: sound: name: default critical: 1 volume: 0.5 actions: - action: "{{ action_open }}" title: Open Door destructive: true - action: "{{ action_close }}" title: Lock Door - wait_for_trigger: - trigger: event event_type: mobile_app_notification_action event_data: action: "{{ action_open }}" - trigger: event event_type: mobile_app_notification_action event_data: action: "{{ action_close }}" timeout: hours: 0 minutes: 5 seconds: 0 milliseconds: 0 - choose: - conditions: - condition: template value_template: "{{ wait.trigger.event.data.action == action_open }}" sequence: - action: lock.unlock metadata: {} data: {} target: entity_id: lock.your_smart_lock_entity - conditions: - condition: template value_template: "{{ wait.trigger.event.data.action == action_close }}" sequence: - action: lock.lock metadata: {} data: {} target: entity_id: lock.your_smart_lock_entity
Blueprint-Code für Gemini
Falls jemand etwas nachvollziehen will, hier ein Beispiel für einen Blueprint-Code:
alias: AI Event Summary (vX.Y.Z) - LLMVision - Your Camera Location - Gemini description: "" use_blueprint: path: valentinfrlch/event_summary.yaml input: camera_entities: - camera.your_camera_1_low_res - camera.your_camera_2_low_res provider: your_llm_provider_id model: gemini-2.0-flash motion_sensors: - binary_sensor.your_camera_1_person - binary_sensor.your_camera_2_person run_conditions: [] message: >- Fasse die Ereignisse basierend auf der mitgeschickten Reihe von Bildern zusammen, die in kurzen Abständen aufgenommen wurden. Konzentriere dich nur auf bewegliche Objekte wie Menschen, Fahrzeuge, Tiere und andere (normalerweise) aktive Elemente. Ignoriere Objekte, die in der Regel Statisch sind und Landschaften. Schildere die Bewegungen und Interaktionen klar und prägnant. Erwähnen nicht das Vorhandensein von Bildern und stelle die Informationen so dar, als ob du die Ereignisse direkt beobachtet hättest. Wenn keine Bewegung festgestellt wird, antworten mit: „Keine Aktivität beobachtet“. notify_device: - your_device_id_1 - your_device_id_2 notification_sticky: false notification_volume: 1 cooldown: hours: 0 minutes: 2 seconds: 0 file_path: /config/www/snapshots/{{ camera_file_path }}/last_motion.jpg duration: 3 max_frames: 3 use_memory: true remember: true important: false condition_notify: - condition: state entity_id: binary_sensor.is_someone_home state: "off" temperature: 0.4 max_tokens: 20
Groq Modell: meta-llama/llama-4-scout-17b-16e-instruct
Frigate
Als komplett lokale Alternative zu LLMVision gibt es Frigate NVR – eine beliebte Open-Source-Software zur Kameraüberwachung. Hier wird gezeigt, was Frigate alles kann, welche Hardware benötigt wird und wie es optimal konfiguriert wird. Es wird auch kritisch beleuchtet, ob der Einrichtungsaufwand gerechtfertigt ist.
Doku / Links
Es wird wärmstens empfohlen, sich durch die Dokumentation von Frigate zu arbeiten: https://docs.frigate.video
Addon-Repo
https://github.com/blakeblackshear/frigate-hass-addons/tree/main
HACS-Integration
https://github.com/blakeblackshear/frigate-hass-integration
Weitere hilfreiche Links
Info | Link |
---|---|
Sizing & HW-Empfehlungen | https://docs.frigate.video/frigate/hardware/ |
go2rtc Config | https://github.com/AlexxIT/go2rtc/tree/v1.9.2#configuration |
Hardwarebeschleunigung | https://docs.frigate.video/configuration/hardware_acceleration/ |
Detectors (Objekterkennung ohne CPU) | https://docs.frigate.video/frigate/hardware#detectors |
iGPU VAAPI in Proxmox nutzen | https://pw999.wordpress.com/2023/12/10/igpu-vaapi-acceleration-on-ha-frigate-in-proxmox/ |
Beispiel-Konfiguration für Frigate
environment_vars: LIBVA_DRIVER_NAME: i965 # <------ https://docs.frigate.video/configuration/hardware_acceleration#intel-based-cpus mqtt: host: core-mosquitto user: your_mqtt_user password: your_mqtt_password ffmpeg: hwaccel_args: preset-vaapi # <------ https://docs.frigate.video/configuration/hardware_acceleration#intel-based-cpus input_args: preset-rtsp-restream output_args: record: preset-record-generic-audio-copy detectors: # <------ Intel-CPU Detection ov: type: openvino device: GPU model: path: plus://019207ca9d362c2398c5350b59d20f5b # <------ Frigate + Model record: # <------ Globale Option für Recording-Einstellungen. Jede globale Einstellung kann immer auf dem Kamera-Level überschrieben werden enabled: true # <------ Aktiviert Recordings expire_interval: 30 sync_recordings: false retain: days: 0 # <------ Deaktiviert das generelle Aufnehmen von Kamera-Streams, auch wenn keine Bewegung erkannt wird. alerts: retain: days: 7 # <------ Bei Alerts (Personen im Standard) wird die Aufnahme gestartet und 7 Tage aufgehoben, vor und nach dem erkannten Ereignis werden 15 Sekunden aufgenommen. mode: active_objects pre_capture: 15 post_capture: 15 detections: retain: days: 7 # <------ Bei Detections (Katzen, Vögel, etc. je nach Konfig) wird die Aufnahme gestartet und 7 Tage aufgehoben, vor und nach dem erkannten Ereignis werden 15 Sekunden aufgenommen. mode: active_objects pre_capture: 15 post_capture: 15 snapshots: # <------ Aktiviert das Speichern von Snapshots mit eingerahmtem erkanntem Objekt (bounding Box) enabled: true timestamp: false bounding_box: true crop: false retain: default: 7 quality: 75 detect: enabled: true fps: 4 min_initialized: 2 max_disappeared: 20 stationary: interval: 40 threshold: 40 objects: track: - person - face # <------ Nur mit Frigate + Modell verfügbar. Ansonsten entfernen - cat filters: person: min_score: 0.6 threshold: 0.75 cat: min_score: 0.3 threshold: 0.5 go2rtc: streams: your_camera_1_main: - ffmpeg:rtsp://user:password@your_camera_ip_1/Preview_01_main#backchannel=0 - rtsp://user:password@your_camera_ip_1/Preview_01_main - ffmpeg:your_camera_1_main#audio=opus your_camera_1_sub: - ffmpeg:rtsp://user:password@your_camera_ip_1/Preview_01_sub your_camera_2_main: - ffmpeg:rtsp://user:password@your_camera_ip_2/Preview_01_main#backchannel=0 - rtsp://user:password@your_camera_ip_2/Preview_01_main - ffmpeg:your_camera_2_main#audio=opus your_camera_2_sub: - ffmpeg:rtsp://user:password@your_camera_ip_2/Preview_01_sub webrtc: candidates: - 192.168.0.200:8555 - stun:8555 cameras: Your_Camera_1_Name: # <------ Name der Kamera enabled: true ffmpeg: inputs: - path: rtsp://127.0.0.1:8554/your_camera_1_sub # <----- Stream für Detektion roles: - detect - path: rtsp://127.0.0.1:8554/your_camera_1_main # <----- Stream für Aufnahme roles: - record live: streams: Main Stream: your_camera_1_main Sub Stream: your_camera_1_sub objects: track: - person - face - cat - bird - fox - raccoon - squirrel - deer - robot_lawnmower motion: mask: [] # Beispiel: - 0.086,0.953,0.176,0.97,0.146,0.663,0.106,0.661,0.084,0.56,0.014,0.613 threshold: 35 contour_area: 13 improve_contrast: true zones: Zone_1: coordinates: [] # Beispiel: 0.367,0.588,0.491,0.586,0.495,0.523,0.479,0.503,0.507,0.459,0.537,0.329,0.571,0.367,0.593,0.37,0.612,0.388,0.623,0.383,0.629,0.401,0.627,0.421,0.613,0.425,0.616,0.455,0.611,0.488,0.629,0.47,0.669,0.488,0.704,0.495,0.715,0.527,0.735,0.554,0.757,0.566,0.787,0.575,0.874,0.611,0.904,0.609,0.919,0.579,0.937,0.537,0.968,0.504,0.993,0.516,0.999,0.419,0.998,0.4,0.774,0.22,0.508,0.213,0.277,0.233,0.256,0.28,0.389,0.268,0.389,0.285,0.384,0.301,0.386,0.369,0.388,0.404,0.392,0.435,0.382,0.477,0.37,0.531 loitering_time: 0 Zone_2: coordinates: [] loitering_time: 0 Your_Camera_2_Name: enabled: true ffmpeg: inputs: - path: rtsp://127.0.0.1:8554/your_camera_2_sub roles: - detect - path: rtsp://127.0.0.1:8554/your_camera_2_main roles: - record live: streams: Main Stream: your_camera_2_main Sub Stream: your_camera_2_sub motion: improve_contrast: true genai: enabled: false provider: gemini api_key: your_gemini_api_key model: gemini-1.5-flash semantic_search: enabled: false model_size: small face_recognition: enabled: true model_size: small lpr: enabled: true classification: bird: enabled: true version: 0.16-0 camera_groups: Group_1: order: 1 icon: LuLeaf cameras: - Your_Camera_1_Name - Your_Camera_2_Name
Geräte für Home Assistant
Mehr Geräte für Home Assistant, HACS oder auch Alexa, Google Home, HomeKit sowie Homebridge findest du in relevanten Smart Home Gerätefindern.
Fazit
Dieser Beitrag hat umfassende Informationen zu Home Assistant und Kameras bereitgestellt, einschliesslich Setup-Beispielen, Datenschutzaspekten und PoE. Er zeigt, warum die Reolink-Integration oft besser ist als RTSP und ONVIF und wie man sie für das Streaming konfiguriert. Abschliessend wurde die Erstellung eines benutzerdefinierten Dashboards mit Live-Kamera-Feed und Schaltflächen zur Steuerung behandelt.