Skip to content

Wie es funktioniert ​

camera.ui ist server-zentral: Ein einzelner Server, der auf deiner Hardware läuft, erledigt die gesamte Arbeit. Er verbindet sich mit deinen Kameras, streamt und nimmt Video auf, führt die Erkennung aus und liefert die Oberfläche aus. Der Browser und die Mobile-Apps sind Viewer dieses Servers. Die Desktop-App kann ebenfalls Viewer sein oder selbst den Server betreiben.

Ein in sich geschlossener Server ​

Der camera.ui-Server bringt alles mit, was er zum Laufen braucht: die Weboberfläche, eine eingebaute Streaming-Engine (unser eigener go2rtc-Build) für Live-Video und eine eigene Video-Verarbeitung zum Dekodieren und Aufnehmen. Deine Einstellungen, Kameras, Benutzer und Ereignisse liegen in einer kleinen lokalen Datenbank auf derselben Maschine.

Nichts verlässt dein Netzwerk, solange du nicht den Remote-Zugriff aktivierst. Es gibt keine externe Datenbank, und für den Betrieb eines Servers ist kein Cloud-Account nötig.

Das große Ganze ​

Von der Kamera zur Benachrichtigung ​

  1. Streaming. Die Streaming-Engine verbindet sich mit jeder Kamera und wandelt deren Feed in browserfreundliches Live-Video um (WebRTC und MSE). Streams werden „warm" gehalten, damit Live-Ansicht und Snapshots sofort laden.
  2. Analyse pro Kamera. Jede Kamera bekommt ihren eigenen Frame-Worker, einen Hintergrundprozess, der das Video dekodiert und die Erkennung ausführt. Ein Problem bei einer Kamera beeinträchtigt die anderen nicht.
  3. Gestufte Erkennung. Zuerst läuft die günstige Bewegungserkennung und weckt die schwerere KI nur bei Bewegung: Objekterkennung, dann Gesichter, Kennzeichen, Klassifizierung und semantische (CLIP-)Analyse. Audio wird parallel analysiert. Diese „Kaskade" hält CPU- und GPU-Last niedrig.[1]
  4. Ereignisse & Aufnahme. Wenn die Erkennung auslöst, baut der Server ein Ereignis mit Segmenten, Thumbnails und den gefundenen Objekten, Gesichtern oder Kennzeichen. Das NVR-Plugin nimmt das Material auf, speichert es und liefert es für die Wiedergabe zurück.[2]
  5. Benachrichtigungen. Ereignisse können Push-Benachrichtigungen auslösen und Automationen ausführen.[2:1]

Plugins machen es erweiterbar ​

Vieles an camera.ui kommt über Plugins aus dem In-App-Store. Jedes Plugin läuft in einem eigenen Prozess, ein fehlerhaftes Plugin legt den Server also nicht lahm, und nach einem Absturz startet es automatisch neu.

Plugins liefern:

  • Kamera-Quellen. ONVIF und weitere Kamera-Protokolle.
  • Detektoren. Bewegungs-Engines und die KI-Backends (CoreML, ONNX, OpenVINO, NCNN, Coral, Hailo).
  • Aufnahme & Benachrichtigungen. Das NVR-Plugin nimmt dein Material auf und sendet Push-Benachrichtigungen.
  • Smart-Home-Bridges. Apple HomeKit.

Mehr dazu unter Plugins.

Apps: Desktop, Mobile, Web ​

Alle Apps zeigen dieselbe Oberfläche, aber ihre Rollen unterscheiden sich:

  • Die Desktop-App kann der Server selbst sein (All-in-One), ein Viewer, der sich mit einem anderen Server verbindet, oder ein Worker, der einen anderen Server beim Dekodieren, bei der Erkennung oder mit einem Plugin unterstützt. Du wählst das beim ersten Start und kannst jederzeit wechseln. Siehe Über mehrere Maschinen skalieren.
  • Die Mobile-Apps und der Browser sind immer Viewer.

Wie Viewer den Server erreichen:

  • In deinem Netzwerk verbinden sich Browser und ein Desktop-Viewer direkt.
  • Die Mobile-Apps verbinden sich zu Hause direkt über dein lokales Netzwerk und unterwegs über camera.ui Cloud.[3]
  • Ein Browser außerhalb von zuhause nutzt die Remote-Zugriff-Option, die du eingerichtet hast: camera.ui Cloud, einen Cloudflare-Tunnel oder deine eigene Domain.

Du kannst außerdem mehr als einen Server als Instanz speichern und in derselben App zwischen ihnen wechseln.

Über mehrere Maschinen skalieren ​

Zusätzliche Maschinen können als Worker mitarbeiten. Ein Worker übernimmt Dekodieren und Erkennung für einige Kameras oder führt ein ganzes Plugin aus (für einen Detektor, der Hardware braucht, die dem Hauptserver fehlt). Kameras und Plugins eines Workers fallen zurück auf den Hauptserver, solange der Worker offline ist, und wandern zurück, sobald er sich wieder verbindet. Siehe Worker.

Von außen erreichen ​

Von außerhalb deines Netzwerks nutzt du camera.ui Cloud, einen Cloudflare-Tunnel, eine eigene Domain oder Port-Forwarding. Alles davon ist optional. Siehe Remote-Zugriff.


  1. Erkennung benötigt ein Detection-Plugin, das zu deiner Hardware passt (CoreML, ONNX, OpenVINO, NCNN oder einen Edge-Beschleuniger wie Coral oder Hailo). Siehe Erkennung & KI. ↩︎

  2. Ein aktives camera.ui-Abo deckt Aufnahmen (NVR) und die darauf aufbauenden Funktionen ab, etwa Wiedergabe, Export, Gesichtserkennung, semantische Suche und KI-Beschreibungen, dazu Push-Benachrichtigungen. Live-Ansicht und Echtzeit-Erkennung sind kostenlos. ↩︎ ↩︎

  3. camera.ui Cloud ist optional. In deinem eigenen Netzwerk bleibt alles lokal, und dein Server muss sich nie mit der Cloud verbinden. Siehe Von außen erreichen. ↩︎