You need to enable JavaScript to run this app.
导航

使用官方 ONVIF 驱动

最近更新时间2024.03.08 11:53:09

首次发布时间2023.02.02 17:17:52

边缘智能提供了官方的 ONVIF 驱动程序,允许您快捷添加支持 ONVIF 协议的网络摄像头(IPC)设备到边缘一体机。添加 IPC 设备到边缘一体机后,您可获取设备的视频流播放地址,查看设备的实时视频。本文介绍了官方 ONVIF 驱动的使用方法。

背景信息

ONVIF(Open Network Video Interface Forum)是一个开放的全球论坛,致力于标准化和保护 IP 视频监控产品的通信方式,以简化视频数据的交换。 例如,使监控中心或类似组织能够在任何基于 IP 的监控系统中快速访问实时和录制的视频流。
边缘智能官方 ONVIF 驱动支持 ONVIF 标准的部分接口。您在边缘一体机上部署官方 ONVIF 驱动后,即可通过该驱动连接一体机网络可访问的 ONVIF IPC 设备,获取实时的视频数据并上传数据到云端进行查看。

查看官方 ONVIF 驱动

您可以在边缘智能控制台设备管理 > 驱动模板 页面,查看官方 ONVIF 驱动
图片

驱动属性

官方 ONVIF 驱动定义了下表罗列的属性。

类型

配置名称

说明

协议参数
通信协议中规定的参数

IP 地址

IPC 设备的 IP 地址。

端口号

访问 IPC 设备所使用的端口。

用户名

访问 IPC 设备所使用的用户名。

密码

访问 IPC 设备所使用的密码。

验证模式

IPC 设备的访问验证方式。可选项:

  • 摘要认证
  • 用户名密码认证
  • 用户名密码摘要认证

点表配置
现场设备与边缘智能之间的数据格式转换关系

服务

对应 ONVIF 配置文件(Profiles)中支持的服务(Service)。
关于官方 ONVIF 驱动支持的服务,请参见支持的服务与函数

读取方法

对应 ONVIF 配置文件(Profiles)中支持的 Get 类方法(Function)。
关于官方 ONVIF 驱动支持的读取方法,请参见支持的服务与函数

设置方法

对应 ONVIF 配置文件(Profiles)中支持的 Set 类方法(Function)。
关于官方 ONVIF 驱动支持的设置方法,请参见支持的服务与函数

采样周期

采集数据的频率。单位:毫秒。默认值:10000。

图片

准备工作

准备 IPC 设备

使用官方 ONVIF 驱动前,您需要准备支持 ONVIF 协议的网络摄像头(IPC)设备。

  • 网络摄像头设备必须支持通过互联网进行 H.264 流传输。
  • 网络摄像头设备的视频数据必须使用以下音频格式:AAC、MP3、WANS、OPUS。

准备一体机

使用 ONVIF 驱动前,您需要准备一台边缘一体机,并完成以下工作:

步骤1:创建物模型

物模型是现场设备实体在边缘智能控制台的数字化表示。您通过物模型定义设备相关的数据对象。

  1. 登录边缘智能控制台
  2. 在左侧导航栏顶部的 我的项目 区域,选择您的项目。
  3. 在左侧导航栏,选择 设备管理 > 设备模板
  4. 创建一个设备模板。
    1. 单击 创建设备模板
    2. 创建设备模板 对话框,为模板设置一个 名称,选中 视频流设备,并添加 描述

      本教程中使用 onvif-device 作为设备模板的名称。

    3. 单击 确定
  5. 定位到要使用的设备模板,单击模板的名称。
  6. 定义物模型。
    1. 在设备模板详情页,单击 物模型定义 页签。

    2. 单击 编辑

    3. 编辑物模型 页面,单击 确定
      对于 视频流设备 模板,默认模块 中默认包含以下 3 个自定义功能。您无需修改。

      说明

      自定义功能 对应于 ONVIF 设备中的数据对象。您也可以根据需要,增加其他符合 ONVIF 协议要求的数据对象。更多信息,请参见 YAML 文件

      功能名称

      功能类型

      标识符

      数据类型

      数据定义

      说明

      Snapshot

      服务

      Snapshot

      N/A

      调用方式:同步

      调用 Snapshot,可以获取 IPC 设备快照。

      ContinuousMove

      属性

      ContinuousMove

      struct

      N/A

      用于控制设备云台。

      LocalStreamUri

      属性

      LocalStreamUri

      text

      数据长度:1024

      表示本地视频流 URI。该 URI 用于视频流数据在一体机内部流转。例如一体机内部的应用需要处理视频数据。

    4. 发布新版本 对话框,设置 版本号描述,然后单击 确定

      本教程中使用 1.0.0.0 作为物模型的版本号。

发布版本后,您将会得到如下图所示的物模型。
图片

步骤2:部署 ONVIF 驱动

您必须在一体机上部署 ONVIF 驱动,然后才可以添加监控设备到一体机。

  1. 在左侧导航栏,单击 一体机
  2. 一体机 页面,找到要部署 ONVIF 驱动的一体机,单击一体机名称。
  3. 单击 设备接入 页签。
  4. 部署驱动实例。
    • 如果您是首次在当前一体机上部署驱动实例,单击 立即部署
    • 如果您不是首次在当前一体机上部署驱动实例,可以单击左侧驱动列表上方的 + 按钮。
  5. 新建驱动实例 对话框,选择 ONVIF驱动 的最新版本,然后单击 确定

您提交部署请求后,系统将在一体机上部署驱动实例。部署过程涉及到数据传输。根据现场网络环境不同,部署所需时间不同。请确保您的一体机在线,并耐心等待部署完成。

步骤3:添加 IPC 设备

当驱动部署成功后,驱动实例状态 将变为 运行中。这时,您可以在驱动下添加设备。
图片

  1. 单击 添加设备
  2. 添加设备 面板,根据以下设备配置说明完成设备配置,然后单击 确定
    图片

完成以上操作后,您可以在 设备实例 列表查看新添加的设备。此时,设备的 状态添加中。当设备的状态变为 在线,表示设备已经添加成功。

设备配置说明

配置项

说明

名称

为设备设置一个名称。

本教程中使用 deviceA 作为设备名称。

标识符

为设备设置一个标识符。

本教程中使用 devicea 作为标识符。

设备模板

选择您在步骤1创建的物模型和版本。

本教程中选择 onvif-device

子协议名称

Onvif

IP地址

输入现场 IPC 设备的 IP 地址。

端口号

输入现场 IPC 设备的端口号。

用户名

输入访问 IPC 设备所使用的用户名。

密码

输入访问 IPC 设备所使用的密码。

验证模式

选择 用户名密码认证

子协议类型

选择 Onvif

点表

  1. 单击下拉框,然后单击 +创建点表
  2. 根据点表配置说明,完成设备的点表设置,然后单击 确认
  3. 从下拉列表选择新建的点表。

标签

为设备添加标签。如果需要创建新的标签,输入 keyvalue 后,单击 创建标签

描述

为设备添加描述信息。

点表配置说明

类别

配置项

说明

基本信息

名称

为点表设置一个名称。

本教程中使用 data-point 作为点表名称。

驱动模板

选择 ONVIF 驱动。

配置信息

ContinuousMove

  • 服务:PTZ
  • 读取方法:无需设置
  • 设置方法:ContinuousMove
  • 采样周期:10000ms

LocalStreamUri

  • 服务:Media
  • 读取方法:GetStreamUri
  • 设置方法:无需设置
  • 采样周期:10000ms

图片

步骤4:部署北向通道

现场 IPC 设备添加到一体机后,您还需要在一体机上部署北向通道,才能使一体机的视频流数据上报到边缘智能控制台供您查看。

  1. 在左侧导航栏,选择 设备管理 > 北向通道
  2. 单击 创建北向通道
  3. 创建北向通道 页面,为北向通道设置一个 名称,选择 直播上云 类型,并选择将北向通道部署到已添加 IPC 设备的一体机上。

    本教程中使用 live-data-to-cloud 作为北向通道名称。

  4. 单击 确定

等待北向通道在一体机上部署成功。

步骤5:查看实时视频

完成以上操作后,您可以在边缘智能控制台查看 IPC 设备的实时视频。

  1. 回到一体机的 设备接入 列表,定位到新添加的设备,单击 操作 列的 直播
    图片
  2. 在弹出的 设备直播 窗口,查看设备的实时视频。
    • 在左侧视频界面,您可以通过相关按钮暂停视频、刷新视频、取消静音、进入全屏模式查看。
    • 在右侧 云台操作 界面,您可以控制 IPC 设备的转动和视频画面缩放。
      • 通过 旋转 的上、下、左、右方向键控制云台的上、下、左、右转动,旋转步长可以在 角度 参数中设定。
      • 通过 变倍 控制视频画面缩放,调整步长在 倍数 中设定。
        图片

步骤6:获取视频监控设备快照

ONVIF 驱动支持获取 IPC 设备快照。

  1. 在一体机的 设备接入 页面,单击新添加的设备名称。
    图片
  2. 在实例详情页面,单击 在线调试 页签,然后单击 服务调用
  3. 从对应模块下选择 Snapshot 调试功能,单击左下角的 发送指令,可以获取视频监控设备快照。
    鼠标单击获取的设备快照,可以进行放大查看。
    图片

参考信息

支持的服务与函数

下表罗列了官方 ONVIF 驱动支持的所有服务与方法。

功能类别

服务

读取方法

设置方法

数据类型

自动发现

Device

GetDiscoveryMode

SetDiscoveryMode

Object

Device

GetScopes

SetScopes

Object

Device

N/A

AddScopes

Object

Device

N/A

RemoveScopes

Object

网络配置

Device

GetHostname

SetHostname

Object

Device

GetDNS

SetDNS

Object

Device

GetNetworkInterfaces

SetNetworkInterfaces

Object

Device

GetNetworkProtocols

SetNetworkProtocols

Object

Device

GetNetworkDefaultGateway

SetNetworkDefaultGateway

Object

系统功能

Device

GetDeviceInformation

N/A

Object

Device

GetSystemDateAndTime

SetSystemDateAndTime

Object

Device

N/A

SetSystemFactoryDefault

Object

Device

N/A

SystemReboot

Object

用户处理

Device

GetUsers

SetUser

Object

Device

N/A

CreateUsers

Object

Device

N/A

DeleteUsers

Object

元数据配置

Media

GetMetadataConfiguration

SetMetadataConfiguration

Object

Media

GetMetadataConfigurations

N/A

Object

Media

GetCompatibleMetadataConfigurations

N/A

Object

Media

GetMetadataConfigurationOptions

N/A

Object

Media

N/A

AddMetadataConfiguration

Object

Media

N/A

RemoveMetadataConfiguration

Object

视频流

Media

GetProfiles

N/A

Object

Media

GetStreamUri

N/A

Object

视频编码器配置

Media

GetVideoEncoderConfiguration

SetVideoEncoderConfiguration

Object

Media

GetVideoEncoderConfigurationOptions

N/A

Object

云台节点

PTZ

GetNode

N/A

Object

PTZ

GetNodes

N/A

Object

云台配置

PTZ

GetConfigurations

N/A

Object

PTZ

GetConfiguration

SetConfiguration

Object

PTZ

GetConfigurationOptions

N/A

Object

Media

N/A

AddPTZConfiguration

Object

Media

N/A

RemovePTZConfiguration

Object

云台驱动

PTZ

N/A

AbsoluteMove

Object

PTZ

N/A

RelativeMove

Object

PTZ

N/A

ContinuousMove

Object

PTZ

N/A

Stop

Object

PTZ

GetStatus

N/A

Object

PTZ

GetPresets

N/A

Object

PTZ

N/A

GotoPreset

Object

PTZ

N/A

RemovePreset

Object

云台起始位置

PTZ

N/A

GotoHomePosition

Object

PTZ

N/A

SetHomePosition

Object

云台辅助操作

PTZ

N/A

SendAuxiliaryCommand

Object

事件处理

Event

N/A

Notify

Object

Event

N/A

Subscribe

Object

Event

N/A

Renew

Object

Event

N/A

Unsubscribe

Object

Event

N/A

CreatePullPointSubscription

Object

Event

N/A

PullMessages

Object

Event

N/A

TopicFilter

Object

Event

N/A

MessageContentFilter

Object

分析文件配置

Media2

GetProfiles

N/A

Object

Media2

GetAnalyticsConfigurations

N/A

Object

Media2

N/A

AddConfiguration

Object

Media2

N/A

RemoveConfiguration

Object

分析模块配置

Analytics

GetSupportedAnalyticsModules

N/A

Object

Analytics

GetAnalyticsModules

ModifyAnalyticsModules

Object

Analytics

N/A

CreateAnalyticsModules

Object

Analytics

N/A

DeleteAnalyticsModules

Object

Analytics

GetAnalyticsModuleOptions

N/A

Object

规则配置

Analytics

GetSupportedRules

N/A

Object

Analytics

GetRules

ModifyRule

Object

Analytics

N/A

CreateRules

Object

Analytics

N/A

DeleteRules

Object

Analytics

GetRuleOptions

N/A

Object

图片操作

Imaging

GetServiceCapabilities

N/A

Object

系统功能

EdgeX

RebootNeeded

N/A

Bool

EdgeX

CameraEvent

N/A

Bool

EdgeX

N/A

SubscribeCameraEvent

Bool

EdgeX

N/A

UnsubscribeCameraEvent

Bool

媒体

EdgeX

GetSnapshot

N/A

Binary

自定义元数据

EdgeX

GetCustomMetadata

SetCustomMetadata

Object

自定义元数据

EdgeX

N/A

DeleteCustomMetadata

Object

YAML 文件

以下 YAML 文件罗列了官方 ONVIF 驱动支持的所有数据,其中 deviceResouces 对象均可定义为自定义功能。

camera.yaml
23.20KB