You need to enable JavaScript to run this app.
导航
使用官方视频流驱动
最近更新时间:2024.09.27 14:57:01首次发布时间:2024.08.07 20:49:08

边缘智能提供了视频流驱动程序,允许您添加支持 RTSP 协议、RTMP 协议和 HLS 协议的视频监控设备到边缘节点(一体机)。添加设备到节点后,您可以查看设备的实时视频。本文介绍了视频流驱动的使用方法。

视频流驱动介绍

支持的协议

视频流驱动支持 RTSP、RTMP 和 HLS,它们都是用于流媒体传输的网络协议:

  • RTSP(Real Time Streaming Protocol)是一种用于控制实时流媒体传输的网络协议。它允许客户端与服务器进行交互,控制流媒体的播放、暂停、停止、倒放、快进等操作。RTSP 协议可以用于音频、视频等多种流媒体数据的传输。
  • RTMP(Real-Time Messaging Protocol)是一种用于音视频流传输的协议。它最初由 Adobe 开发,用于在 Flash 播放器和服务器之间传输实时音视频数据。RTMP 通过建立 TCP 连接来传输音视频数据,具有低延迟和高效率的特点。
  • HLS 全称是 HTTP Live Streaming,是一个由 Apple 公司提出的基于 HTTP 的媒体流传输协议,用于实时音视频流的传输。目前 HLS 协议被广泛的应用于视频点播和直播领域。

查看视频流驱动

您可以在边缘智能控制台驱动模板 > 官方驱动 页面,查看 视频流驱动
图片

驱动属性

视频流驱动定义了下表罗列的属性。

类型

协议参数

说明

子协议配置
rtsp
rtmp
hls

拉流地址

视频流设备的拉流地址。

按需拉流

表示是否只在需要时才从视频源拉取视频流。

  • true:表示启用按需拉流。启用按需拉流后,如果视频直播持续 5 分钟无人观看,会自动断开拉流以节省机器资源。
  • false:表示不启用按需拉流。

默认值:false。

点表配置

采样周期

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

变化上报

用于控制节点进行数据上报的触发条件。

  • true:表示启用变化上报。节点仅在检测到连续两次采集的设备数据不一致时,才会执行数据上报操作。
  • false:表示禁用变化上报。节点将上报每次采集到的设备数据,不管该数据是否与前一次采集的数据相同。

默认值:true。

准备工作

准备视频监控设备

在使用视频流驱动前,您需要准备支持 RTSP 协议、RTMP 协议或 HLS 协议的视频流设备,并获取设备的拉流地址。
本文以支持 RTSP 协议的视频流设备为例,介绍视频流驱动的使用方法。使用 RTMP 协议和 HLS 协议的设备的操作方法类似。

准备节点

使用视频流驱动前,您需要准备一台边缘智能节点,并完成以下工作:

步骤1:配置视频流设备模板

创建设备模板

  1. 登录边缘智能控制台

  2. 在左侧导航栏顶部的 我的项目 区域,选择您的项目。

  3. 在左侧导航栏,选择 设备管理 > 设备模板

  4. 单击 创建设备模板

  5. 创建设备模板 对话框,参考下表说明完成以下配置,并单击 确定

    配置项

    说明

    名称

    为设备模板设置一个名称。

    本教程中使用 video-rtsp。

    设备类型

    选择 视频流设备

    描述

    为设备模板添加描述信息。

    图片

创建成功后,在 设备模板 页面可以看到新创建的设备模板。
图片

发布物模型

物模型定义了设备的功能。您可以通过物模型定义设备功能,并发布一个版本使其生效。

  1. 找到新创建的设备模板,单击模板名称。
  2. 模板详情 页面,单击 物模型定义 页签,然后单击 编辑
  3. 编辑物模型 页面,可以看到,对于 视频流设备 模板,默认模块 中包含以下 3 个自定义功能。
    • Snapshot:服务。调用 Snapshot,可以捕获当前视频流直播画面。
    • ContinuousMove:属性,用于控制视频监控设备云台。

      说明

      视频流驱动目前不支持云台操作,可以删除该功能。

    • LocalStreamUri:属性,表示本地视频流 URI。该 URI 用于视频流数据在节点内部流转。例如节点内部的应用需要处理视频数据。
      您可以根据需要,单击对应功能 操作 下的 编辑删除,进行修改或删除。本教程使用默认配置。
  4. 配置好物模型后,单击右下角的 保存
  5. 发布新版本 对话框,设置 版本号描述,然后单击 确定
    图片

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

创建点表

物模型定义完成后,需要为物模型属性配置点表,来定义数据的采集和处理方式。

  1. 模板详情 页面,单击 点表 页签,然后单击 创建点表

  2. 创建点表 页面,参考下表完成以下配置,并单击右下角的 确认

    类别

    配置项

    说明

    基本信息

    名称

    为点表设置一个名称。

    本教程中使用 video-stream-pt 作为点表名称。

    驱动模板

    选择 视频流驱动

    配置信息

    LocalStreamUri

    • 采样周期:10000ms
    • 变化上报:true

创建成功后,您可以看到一个如下图所示的点表。
图片

步骤2:部署视频流驱动

您必须在节点上部署视频流驱动,然后才可以添加视频监控设备到节点。

  1. 在左侧导航栏,单击 节点管理
  2. 节点管理 页面,找到要部署视频流驱动的节点,单击节点名称。
  3. 单击 设备接入 页签。
  4. 根据节点上是否部署了驱动程序,执行相应操作:
    • 如果节点上未部署任何驱动程序,根据页面提示,单击 立即部署
      图片
    • 如果节点上部署了驱动程序,请检查 驱动实例 列表是否存在 视频流驱动 实例。
      • 如果 驱动实例 列表存在 视频流驱动 实例,您可跳过本步骤,直接前往步骤3:添加视频监控设备
      • 如果 驱动实例 列表不存在 视频流驱动 实例,单击 驱动实例 列表右上方的 新建驱动实例
  5. 新建驱动实例 对话框,选择 视频流驱动 / 1.0.0,然后单击 确定
    图片

提交部署请求后,系统将在节点上部署该驱动。部署过程涉及到数据传输。根据现场网络环境不同,部署所需时间不同。请确保您的节点在线,并耐心等待部署完成。
驱动部署成功后,驱动实例状态 将变为 运行中
图片

步骤3:添加视频监控设备

  1. 驱动实例 列表选中 视频流驱动
  2. 基本信息 标签页,您可以选择以下方式添加设备:
    • 添加设备:一次添加一个设备。
    • 批量添加:一次添加一个或多个设备。最多可以同时添加 100 个设备,并批量设置一些设备参数。

添加设备

  1. 基本信息 标签页,单击 添加设备

  2. 添加设备 面板,完成以下配置,然后单击 确定

    配置项

    说明

    名称

    为设备设置一个名称。

    本教程中使用 dev-rtsp 作为设备名称。

    标识符

    为设备设置一个标识符。

    本教程中使用 dev-rtsp 作为标识符。

    设备模板

    选择您在创建设备模板中创建的设备模板。

    本教程中选择 video-rtsp。

    点表

    选择在创建点表中创建的点表。

    本教程中选择 video-stream-pt。

    子协议名称

    选择 rtsp

    拉流地址

    输入视频流设备的拉流地址。

    按需拉流

    这里选择 false,表示不启用按需拉流,视频流会持续不断地被拉取。

    标签

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

    描述

    为设备添加描述信息。

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

批量添加

  1. 基本信息 标签页,单击 批量添加

  2. 添加设备 页面,您可以在 驱动信息 区域查看驱动相关信息,并参考下表说明完成 设备配置,然后单击 确定

    配置项

    说明

    子协议类型

    选择 rtsp

    设备模板

    选择您在创建设备模板中创建的设备模板。

    本教程中选择 video-rtsp。

    点表

    选择在创建点表中创建的点表。

    本教程中选择 video-stream-pt。

    设备名称

    为设备设置一个名称。

    本教程中使用 dev-rtsp 作为设备名称。

    标识符

    为设备设置一个标识符。

    本教程中使用 dev-rtsp 作为标识符。

    拉流地址

    输入视频流设备的拉流地址。

    按需拉流

    这里选择 false,表示不启用按需拉流,视频流会持续不断地被拉取。

    标签

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

    描述

    为设备添加描述信息。

  3. (可选)如果需要同时添加多个设备,在 添加设备 后的输入框中输入要添加的设备个数,然后单击 添加设备。系统会自动生成多个设备配置条目。

  4. (可选)如果需要批量设置一些设备参数,先勾选右上角的 批量编辑所有配置项,然后修改某个参数值,系统会同步修改所有设备的对应参数值。

    说明

    勾选 批量编辑所有配置项 后,如果参数配置框置灰,表示该参数不支持批量设置。

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

步骤4:查看实时视频

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

  1. 回到节点的 设备接入 页面,定位到新添加的设备,单击 操作 列的 直播
    图片
  2. 在弹出的 设备直播 窗口,查看设备的实时视频。
    在左侧视频界面,您可以通过相关操作按钮,暂停视频、刷新视频、取消静音、进入全屏模式查看。
    图片

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

视频流驱动支持获取视频监控设备快照。

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

在视频数据流中实时获取 RTSP/RTMP 流设备截图

目前,在视频数据流中绘制输入源的 ROI 检测和越线检测时,只有摄像头设备和摄像头设备带分析输入算子支持实时获取设备截图,RTSP/RTMP 流相关的输入算子暂不支持该功能。如果您需要在视频数据流中实时获取 RTSP/RTMP 流设备的截图,需要使用摄像头设备或摄像头设备带分析作为输入算子完成相关操作。

创建视频数据流模板

作为演示,这里通过复制官方模板快速生成一个自定义的视频数据流模板。

  1. 在边缘智能控制台左侧导航栏,选择 数据处理 > 数据流模板

  2. 单击 官方模板 页签,然后单击 视频流数据流 标签筛选出视频数据流模板。
    在选择视频数据流模板时,需要注意以下两点:

    • 根据您的节点硬件配置,选择对应执行框架的模板:
      • DeepStream:基于 NVIDIA DeepStream SDK,适用于具有 NVIDIA GPU 组件的边缘节点。
      • DLStreamer:基于 Intel 的 Deep Learning Streamer(简称 DL Streamer),适用于应用 x86 架构的边缘节点。
    • 视频数据流模板中需要包含使用摄像头设备或摄像头设备带分析作为输入算子的模板版本。您可以单击官方模板名称,然后在模板版本管理处进行确认。
  3. 本教程我们使用 dlstreamer官方模板,单击 操作 下的 复制
    图片

  4. 复制模板 对话框,完成相关参数的设置,然后单击 确定

    参数

    说明

    名称

    为要创建的数据流模板副本设置一个名称。

    本教程中使用 rtsp_stream_template。

    注意

    请确保模板副本所属项目下没有重名的数据流模板,否则复制操作会失败。

    所选模板信息

    • 模板类型:视频数据流
    • 执行框架:DLStreamer

    描述

    为数据流模板副本添加描述或使用默认描述。

完成以上操作后,您可以在 自义模板 页签下看到通过复制官方模板得到的视频数据流模板。
图片

管理模板版本

复制得到的模板默认配置了不同版本的数据处理流程,您可以根据实际需要进行视频数据流的编排。

  1. 单击复制得到模板名称。
    版本管理 区域,可以看到不同的模板版本。这里我们使用 v2-摄像头设备-物体检测-虚拟时序设备 这个版本。
  2. (可选)如果您需要编辑该模板版本,单击该版本 操作编辑,在 编辑版本 页面完成视频数据流的编排。相关操作,请参见数据流编排指南
    图片

创建和部署数据流实例

在模板版本中完成数据流编排后,您就可以引用该数据流模板版本来创建数据流实例,并将数据流实例部署到边缘节点上运行。

创建数据流实例

  1. 在左侧导航栏,选择 数据处理 > 数据流实例

  2. 数据流实例 页面,单击 创建实例

  3. 创建数据流实例 页面,完成相关参数的设置,然后单击 确认

    类型

    参数

    说明

    基本信息

    名称

    为实例设置一个名称。

    本教程中设置为 rtsp_stream_instance。

    描述

    为实例添加描述信息。

    数据流信息

    模板

    选择在创建数据流模板创建的 自定义模板 > 视频数据流 > rtsp_stream_template

    版本

    选择在编辑版本中配置的 v2-摄像头设备-物体检测-虚拟时序设备

    节点

    选择部署实例的边缘节点。

完成实例创建后,您可以在实例列表中查看实例。新建实例的 状态未部署
图片

编辑数据流,实时获取设备截图

  1. 数据流实例 页面,单击新建实例的名称。
    您将会进入 数据流编排 页面。
  2. 数据流编排 页面右上角,单击 编辑数据流
  3. 编辑数据流实例 页面,单击 摄像头设备带分析 算子。
  4. 在右侧算子详情中的 控制参数 区域,从 device 下拉列表选择在添加设备中创建的设备实例 dev-rtsp。
    图片
  5. 单击 绘制 ROI 区域绘制绊线 ,可以实时获取 RTSP 流设备截图。
    图片
  6. 完成相关配置后,单击右下角的 保存