Agent DVR: Plugins
Installieren von Plugins
Der einfachste Weg, Plugins zu installieren, ist über das Remote-Webportal. Sobald Sie verbunden sind, klicken Sie auf das Server-Symbol oben links und navigieren Sie zu "Plugins" unter System. Hier können Sie das gewünschte Plugin aus dem Dropdown-Menü oben rechts auswählen und auf "Installieren" klicken, um loszulegen.
Bevorzugen Sie eine manuelle Installation? Kein Problem! Sie können die Plugins aus dem Quellcode erstellen und dann die erstellte Ausgabe in Agent/Plugins/PLUGINNAME kopieren. Diese Methode gibt Ihnen mehr Kontrolle über den Installationsprozess.
Verfügbare Plugins
Agent DVR ist mit fortschrittlichen Videoverarbeitungsfunktionen wie CodeProject AI-Integration, fortschrittlicher Objektverfolgung, Audioerkennung und Zähldetektoren ausgestattet. Um Ihr Erlebnis weiter zu verbessern, bieten wir eine Reihe von Plugins an, die Sie in AgentDVR verwenden können, um seine Funktionalität zu erweitern.
Plugin-Liste
Barcodes
Scannen Sie praktisch jeden Barcode mit einer Kamera (nur Windows).
Ereignisse: Erkannter Barcode
Unterstützt: Video
Gain
Wenden Sie Live-Bandfilter auf Audio an, das von Audiogeräten kommt.
Ereignisse: Keine
Unterstützt: Audio
Live Delay
Fügt Live-Audio und -Video eine Verzögerung hinzu (nützlich für Sportanalysen).
Ereignisse: Keine
Unterstützt: Video, Audio
Weather
Fügt basierend auf Ihrem Standort eine Wetterstatus-Overlay zu Live-Video hinzu. Löst Ereignisse aus, wenn sich das Wetter ändert - zum Beispiel, wenn ein Sturm kommt oder wenn Windböen oder Temperaturgrenzen überschritten werden. Sie können das Layout und den Anzeigemodus der Wetterdaten anpassen, von einem Symbol bis zu vollständigen Details.
Vollständige Informationen:
{icon}{main}: {description} Wind: {wind} Gust: {gust} Temp: {temp} Gefühlt wie: {feelsLike} Luftfeuchtigkeit: {humidity} UVI: {uvi}
Nur Symbol:
{icon}
Eine Zeile:
{main} {wind} {temp} {humidity} UVI: {uvi}
Ausgelöste Ereignisse: Hohe Temperatur, Böe, Status
Unterstützt: Video
Konfigurieren von Plugins
Bereit, die Kraft von Plugins zu nutzen? Fügen Sie einfach ein Gerät (Kamera und/oder Mikrofon) hinzu und gehen Sie in die Einstellungen. Suchen Sie nach dem Plugins-Tab in der Dropdown-Liste oben rechts. Hier können Sie Ihr gewünschtes Plugin auswählen und auf die Schaltfläche "..." klicken, um es an Ihre Bedürfnisse anzupassen.
Einige Plugins lösen Ereignisse aus, an die Sie Aktionen anhängen können. Das Wetter-Plugin löst zum Beispiel ein Gust-Ereignis aus, wenn böige Winde einen bestimmten Wert überschreiten (konfigurierbar im Plugin). Wenn Sie die Kamera bearbeiten und zum Register "Aktionen" navigieren, haben Sie die Möglichkeit, darauf zu reagieren - zum Beispiel einen Alarm auszulösen oder eine Aufnahme zu starten. Wählen Sie einfach den Plugin-Namen: Ereignis - z.B. Wetter: Gust - in der "Wenn"-Auswahlliste aus und weisen Sie eine Aktion zu.
Erstelle dein eigenes Plugin.
Plugins sind dynamische Module, die Sie dem Agent hinzufügen können, um seine Audio- und Videoverarbeitungsfunktionen zu verbessern. Mit Plugins können Sie Echtzeit-Effekte, Überlagerungen, Ereignisse auslösen und Alarme im Agent aktivieren, was fortgeschrittene benutzerdefinierte Aktionen ermöglicht.
Um Plugins für Agent DVR zu erstellen, sollten sie als .Net Standard 2.0-Projekte entwickelt werden, die auf allen Plattformen kompatibel sind. Beginnen Sie, indem Sie unsere Open-Source-Plugins unter https://github.com/ispysoftware/AgentDVR-Plugins klonen. Sie benötigen eine aktuelle Version von Visual Studio, um sie zu erstellen.
Wir empfehlen, mit dem Demo-Plugin als Basis zu beginnen. Stellen Sie sicher, dass Sie die neueste Version von Agent installiert haben. Nach dem Erstellen des Demo-Plugins kopieren Sie alle Dateien von Demo\bin\Debug\netstandard2.0 in Agent\Plugins\Demo\. Starten Sie Agent neu, bearbeiten Sie eine Kamera und gehen Sie zum Plugins-Tab. Aktivieren Sie das Plugin, wählen Sie Demo aus dem Dropdown-Menü und klicken Sie auf die Schaltfläche "..." um es zu konfigurieren.
Das Demo-Plugin ist vollständig plattformübergreifend kompatibel und zeigt die umfangreichen Funktionen, die Sie mit Plugins erstellen können. Es enthält Live-Videoeffekte, grafische Überlagerungen, Live-Lautstärkeregelung und Integration mit Agent's Ereignis-Subsystem. Das Plugin-Menü gibt Einblicke in die Funktionsweise verschiedener Eingabesteuerungen.
Plugin-Hinweise für Entwickler:
Konfiguration: Agent verwendet eine Mischung aus XML, XSD und JSON für die Speicherung und Darstellung von Einstellungen. Um die Datei config.xsd zu bearbeiten, verwenden Sie den XML (Text)-Editor von Visual Studio mit Codierung. Nachdem Sie die erforderlichen Felder hinzugefügt haben, generieren Sie die C#-Klassendatei mit dem Befehl C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\xsd.exe /c config.xsd
im Verzeichnis der xsd-Datei.
Agent's Konfigurations-Darstellung und XML-Aktualisierung basieren auf .json-Dateien. Bearbeiten Sie config_en.json im json-Verzeichnis für die Anzeige der Benutzeroberfläche, wo Sie mehrere Abschnitte hinzufügen können, die als Registerkarten dargestellt werden. Die Schlüsselfelder 'bindto' in json verlinken mit den Konfigurations-XML-Feldern. Agent automatisiert die Steuerungs-Darstellung, die Speicherung von Einstellungen und die Aktualisierung.
Wenn Sie "live": true
zu den json-Einträgen hinzufügen, werden sofortige Aktualisierungen ohne Warten auf den Klick auf die OK-Schaltfläche ermöglicht, was für die Live-Anpassung großartig ist. Das Feld 'converter' verwendet 'PopulateResponse' in Utils.cs für die Formatierung von Werten.
Medien-Unterstützung: Wählen Sie aus, ob "Video", "Audio" oder beides verarbeitet werden soll. Das Feld 'Supports' in Main.cs kann fest codiert werden.
Kontinuierliche Verarbeitung: Jedes Video- und Audioframe des Geräts wird zur Analyse oder Verarbeitung an das Plugin gesendet, wie im Demo gezeigt.
Bewegungs-/Alarmverarbeitung: Verarbeiten Sie Frames bei Bewegung oder Alarmen, indem Sie die Methode 'ProcessEvent' im Demo-Plugin nutzen. Dadurch wird die Frame-Verarbeitung nur während dieser Ereignisse ermöglicht.
Benutzerdefinierte Ereignisse: Die Methode 'GetCustomEvents' in Ihrem Plugin sollte eine Liste der von ihm generierten benutzerdefinierten Ereignisse zurückgeben. Diese Ereignisse erscheinen dann unter Aktionen in der 'If'-Liste der Agent-Benutzeroberfläche. Lösen Sie diese Ereignisse mit einem 'Result'-Eintrag aus, in dem der Name der Aktion und optional MSG, Tag, Dateiname und AIJSON angegeben sind.
Alarm, Erkennung und Markierung: Lösen Sie Alarme oder erkennen Sie Ereignisse, indem Sie ein Ergebnis mit dem Ereignisnamen "alert" oder "detect" hinzufügen. Markieren Sie laufende Aufnahmen mit einem Ereignisnamen 'tag' und legen Sie Tags nach Bedarf fest.
API-Aufrufe: Agent initialisiert Plugins mit Geräteinformationen und dem lokalen Serverport, der für API-Befehle für das Gerät nützlich ist. Die Eigenschaften AppDataPath und AppPath werden ebenfalls für Anzeige- oder Dateispeicherorte festgelegt.
Distribution: Haben Sie ein cooles oder nützliches Plugin erstellt? Teilen Sie es mit uns und tragen Sie zur Community bei!