Agent DVR: 插件

安裝插件

外掛程式是選用的附加模組,可擴展 Agent DVR 的額外音訊和視訊處理功能,例如條碼掃描、天氣疊加和音訊濾波器。

安裝外掛程式最簡單的方式是透過遠端網頁入口。連線後,按一下右上角的伺服器圖示,並在系統下方瀏覽至「外掛程式」。在此,您可以從右上角的下拉式選單中選擇您想使用的外掛程式,並按一下「安裝」開始。

偏好手動安裝?沒問題!您可以從來源建置外掛程式 ,然後將建置的輸出複製到 Agent/Plugins/PLUGINNAME。此方法可讓您更好地控制安裝流程。

可用的外掛程式

Agent DVR 隨附進階視訊處理功能,例如 CodeProject AI 整合,以及進階物件追蹤、音訊辨識和計數偵測器。為了進一步增強您的體驗,我們提供一系列外掛程式,您可以在 AgentDVR 中使用以擴展其功能。

插件列表

條碼

從攝影機掃描幾乎任何條碼(僅限 Windows)。

觸發事件:條碼已識別
支援:視訊

螢幕截圖

增益

對來自音訊裝置的音訊套用即時頻帶濾波器。

觸發事件:無
支援:音訊

螢幕截圖

實況延遲

為實況音訊和視訊新增延遲(適用於運動分析)。

觸發事件:無
支援:視訊、音訊

螢幕截圖

天氣

根據您的位置將天氣狀態覆蓋層新增至實況視訊。如果天氣變化(例如暴風雨即將到來或風陣或溫度限制超出),觸發事件。您可以自訂天氣資料的配置和顯示模式,從單一圖示到完整詳細資訊。

天氣組態採用格式字串來配置資訊。以下是您可以使用的一些範例格式字串:

完整資訊:

{icon}{main}: {description} 
 風:{wind} 陣風:{gust} 
 溫度:{temp} 體感溫度:{feelsLike} 
 濕度:{humidity} UVI:{uvi}

僅圖示:

{icon}

單行:

{main} {wind} {temp} {humidity} UVI:{uvi}

觸發事件: 高溫、陣風、狀態
支援: 視訊

螢幕截圖
如果您在攝影機上使用音訊外掛程式(例如 Listen),您需要編輯攝影機、選取 [音訊] 索引標籤,然後按一下以設定麥克風。從該處,您可以存取音訊裝置的 [外掛程式] 索引標籤。或者,您可以按一下 [伺服器] 圖示、編輯裝置,並從該清單編輯麥克風。

配置插件

准备好利用插件的强大功能了吗?只需添加一个设备(摄像头和/或麦克风)并进入其编辑设置。在右上角的下拉菜单中查找"插件"标签。在这里,您可以选择所需的插件并点击"..."按钮根据需要配置它。

某些插件会引发事件,您可以为其附加操作。例如,天气插件在阵风超过指定值(可在插件中配置)时会引发阵风事件。编辑摄像头并导航到"操作"标签,您可以选择响应方式 - 例如触发警报或开始录制。只需在"如果"选择框中选择插件名称:事件(例如天气:阵风),然后分配一个操作。

創建您自己的外掛程式

插件是动态模块,可以添加到 Agent DVR 中以增强其音频和视频处理功能。通过插件,可以在 Agent DVR 中应用实时效果、叠加层、引发事件和触发警报,从而支持高级自定义操作。

要开始为 Agent DVR 创建插件,首先克隆我们的开源插件,位置在 https://github.com/ispysoftware/AgentDVR-Plugins。您需要最新版本的 Visual Studio 来构建它们。

我们建议以演示插件作为基础开始。确保已安装最新版本的 Agent。构建演示插件后,将输出文件夹中的所有文件复制到 Agent\Plugins\Demo\。重启 Agent DVR,编辑摄像头,然后转到插件选项卡。启用插件,从下拉菜单中选择演示,然后点击"..."按钮进行配置。

演示插件完全跨平台兼容,展示了可以使用插件构建的广泛功能。它包括实时视频效果、图形叠加、实时音量控制以及与 Agent DVR 事件子系统的集成。插件菜单提供了对各种输入控制如何操作的见解。


开发人员的插件说明:

配置:Agent DVR 使用 JSON 和类文件进行设置存储。要配置设置,请编辑 config.cs 文件。

Agent DVR 的配置呈现依赖于 .json 文件。编辑 json 目录中的 config_en.json 以进行 UI 显示,您可以添加多个部分作为选项卡呈现。json 中的"bindto"键字段链接到配置字段。Agent DVR 自动化控制呈现、设置存储和更新。

在 json 條目中加入 "live": true 可以立即更新,無需等待 OK 按鈕點擊,非常適合即時調整。'converter' 欄位在 Utils.cs 中使用 'PopulateResponse' 進行數值格式化。

媒体支持:选择处理"视频"、"音频"或两者。Main.cs 中的"Supports"字段可以硬编码。

连续处理:来自设备的每个视频和音频帧都发送到插件进行分析或处理,如演示中所示。

运动/警报处理:通过利用演示插件中的"ProcessEvent"方法在运动或警报时处理帧。这允许仅在这些事件期间处理帧。

自定义事件:插件中的"GetCustomEvents"方法应返回它生成的自定义事件列表。这些事件随后会显示在 Agent DVR UI 的"如果"列表中的操作下。使用"Result"项触发这些事件,指定操作名称和可选的 MSG、Tag、Filename 和 AIJSON。

警报、检测和标记:通过添加包含"alert"或"detect"事件名称的 Result 来引发警报或检测事件。使用"tag"事件名称标记正在进行的录制,并根据需要设置标记。

API 调用:Agent DVR 使用设备信息和本地服务器端口初始化插件,对于设备的 API 命令很有用。AppDataPath 和 AppPath 属性也会被设置,用于显示或文件保存位置。

分发:创建了一个酷炫或有用的插件?与我们分享并为社区做出贡献!