使用者指南: Agent DVR 插件
安裝插件
安裝插件的最簡單方法是通過遠程網絡門戶。連接後,點擊左上角的服務器圖標,然後在“系統”下導航到“插件”。在這裡,您可以從右上角的下拉菜單中選擇要使用的插件,然後點擊“安裝”開始使用。
偏好手動安裝?沒問題!您可以從源代碼 構建插件,然後將構建的輸出複製到Agent/Plugins/PLUGINNAME。這種方法可以讓您更好地控制安裝過程。
可用插件
Agent DVR擁有先進的視頻處理功能,如CodeProject AI集成,以及高級物體跟踪、音頻識別和計數檢測器。為了進一步提升您的體驗,我們提供了一系列插件,您可以在AgentDVR中使用以擴展其功能。
插件列表
實時延遲
天氣
根據您的位置,在實時視頻上添加天氣狀態覆蓋。如果天氣變化(例如即將來臨的風暴或超過風力或溫度限制),則觸發事件。您可以自定義天氣數據的佈局和顯示模式,從僅有圖標到完整詳細信息。
完整信息:
{icon}{main}:{description} 風力:{wind} 陣風:{gust} 溫度:{temp} 體感溫度:{feelsLike} 濕度:{humidity} UVI:{uvi}
僅圖標:
{icon}
單行顯示:
{main} {wind} {temp} {humidity} UVI:{uvi}
觸發事件:高溫,陣風,狀態
支援:視頻
配置插件
準備好利用插件的功能了嗎?只需添加設備(攝像機和/或麥克風),然後進入其編輯設置。在右上角的下拉菜單中尋找「插件」選項卡。在這裡,您可以選擇所需的插件,並點擊「...」按鈕將其配置為符合您的需求。
一些插件會觸發事件,您可以將動作附加到這些事件上。例如,天氣插件在突風超過指定值時(可在插件中配置)會觸發「Gust」事件。編輯攝像機並轉到「動作」選項卡,您可以選擇如何回應此事件-例如,響起警報或開始錄製。只需在「如果」選擇框中選擇插件名稱:事件-即「天氣:Gust」,然後指定一個動作。
創建您自己的插件
插件是您可以添加到 Agent 的動態模塊,以增強其音頻和視頻處理能力。通過插件,在 Agent 中應用實時效果、覆蓋物、觸發事件和觸發警報,從而實現高級自定義操作。
要開始為 Agent DVR 創建插件,它們應該作為 .Net Standard 2.0 項目開發,可在所有平台上兼容。首先克隆我們的開源插件,網址為:https://github.com/ispysoftware/AgentDVR-Plugins。您需要最新版本的 Visual Studio 來構建它們。
我們建議您以演示插件作為基礎。確保您安裝了最新版本的 Agent。在構建演示插件後,將所有文件從 Demo\bin\Debug\netstandard2.0 複製到 Agent\Plugins\Demo\。重新啟動 Agent,編輯一個攝像頭,然後轉到 插件 標籤。啟用插件,從下拉菜單中選擇 Demo,然後點擊 "..." 按鈕進行配置。
演示插件完全跨平台兼容,展示了您可以使用插件構建的豐富功能。它包括實時視頻效果、圖形覆蓋物、實時音量控制以及與 Agent 的事件子系統集成。插件菜單提供了各種輸入控件的操作方式。
開發者插件注意事項:
配置: Agent 混合使用 XML、XSD 和 JSON 進行設置存儲和渲染。要編輯 config.xsd 文件,請使用 Visual Studio 的 XML(文本)編輯器進行編輯,並設置編碼。在添加必要字段後,使用命令 C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\xsd.exe /c config.xsd
在 xsd 文件目錄中生成 C# 類文件。
Agent 的配置渲染和 XML 更新依賴於 .json 文件。編輯 json 目錄中的 config_en.json 文件以進行 UI 顯示,您可以添加多個作為選項卡呈現的部分。json 中的 'bindto' 鍵字段與配置 XML 字段相關聯。Agent 自動完成控件渲染、設置存儲和更新。
在 json 条目中添加 "live": true
可以在不等待 OK 按鈕點擊的情況下立即更新,這對於實時調整非常有用。'converter' 字段使用 Utils.cs 中的 'PopulateResponse' 進行值格式化。
媒體支持: 選擇處理 "video"、"audio" 或兩者。Main.cs 中的 'Supports' 字段可以硬編碼。
連續處理: 將來自設備的每個視頻和音頻幀發送到插件進行分析或處理,就像演示中所示。
運動/警報處理: 通過在演示插件中利用 'ProcessEvent' 方法,在運動或警報時處理幀。這僅在這些事件期間進行幀處理。
自定義事件: 您的插件中的 'GetCustomEvents' 方法應該返回它生成的自定義事件列表。然後,這些事件將出現在 Agent UI 的 'If' 列表中的操作下。使用 'Result' 項目觸發這些事件,指定操作名稱和可選的 MSG、Tag、Filename 和 AIJSON。
警報、檢測和標記: 通過添加具有 "alert" 或 "detect" eventName 的 Result 來觸發警報或檢測事件。使用 'tag' eventName 為正在進行的錄像標記,並根據需要設置標記。
API 調用: Agent 使用設備信息和本地服務器端口初始化插件,這對於設備的 API 命令非常有用。屬性 AppDataPath 和 AppPath 也用於顯示或文件保存位置。
分發: 創建了一個很酷或有用的插件?與我們分享,並為社區做出貢獻!