分享|ThingsBoard 扩展视频接入和实时点播/直播功能
社区经常问到的问题:TB 怎么接视频?

本文所涉及到的视频技术主要是 ffmpegrtsponvifwebrtc, 如果不太了解的话,建议去先预习一下。

另外,本文所描述的应用场景主要是跟流媒体服务相关,没有过多的 ThingsBoard 配置管理。

关注公众号

手动添加:thingsboard_cn

访问社区网站点击下方按钮

了解更多

社区经常问到的问题:TB 怎么接视频?

答案是:肯定的,支持!

这个问题困扰着很多人,有的解决了,有的还在苦苦挣扎中,那这篇文章将可能帮助那些还没有解决的伙伴一个思路和指引。

我们要实现的目标(需求分析)

视频采集要简单(点几下鼠标,自动发现或输入连接信息)

不管是 USB 摄像头还是 IPC 网络摄像头,要很 方便 的管理和视频采集。

  • USB 摄像头一般都是 WebCam,通过 USB 接在网关或主机上,比如 Linux 下: /dev/video0, /dev/video1
  • IPC 网络摄像头:
    1. 绝大部分都支持 ONVIF 协议,对接相对便捷,输入用户名和密码,自动获取 StreamURI;
    2. 不支持 ONVIF 协议,可以采用 RTSP 协议进行对接,配置起来相对比较麻烦些,必须要知道摄像头流播放地址,就是 StreamURI ;
    3. 最好是支持 POE 供电的网络摄像头,这样就不需要为摄像头拉电源线和转换器;

在 Web 浏览器查看视频流(谁还愿意安装一个 App 来看视频呢?)

  • 坚决抵制(客户要求)安装 App 来查看视频,是不是太原始了;
  • 能够兼容绝大部分的浏览器(对不起:IE 不支持  );

查看视频流延迟尽量小(< 1 秒)

客户需求肯定是希望视频流越快越好,最好没有延迟和卡顿( 基本做不到 ,那就尽量提高查看视频效率吧

  • 人眼感知度在 1秒 内,还是可以忍受的范围,市面上大部分摄像头也就能达到这个级别;
  • 视频和音频同步播放,怕就怕在声音来了图像还没有到,那种感觉太难受了;
  • 不同的播放终端设备,其实延迟都不一样,比如 HLS 协议相对就比较延迟一些;
  • 采用更高效的 WebRTC 协议,的确效果改善不少(需要浏览器支持);

按需点播/直播,空闲时节省服务器资源

占着茅坑不拉屎,就是形容某些没有点播/直播的时候网关/服务器还占着资源不释放,所以 按需 才是王道。

  • 没有点播/直播时,要处于 suspend 或 standby 的状态,以便节省计算和网络资源;
  • 即点即播,一旦有客户端发起点播指令,应该在 几百毫秒 之内完成 采集->编码->解码->视频流 这一系列工作;
  • 按需,根据需要来驱动视频流的相关流程和处理,是客户所认同的观点。

技术实现原理(解决方案)

架构设计

简单架构设计逻辑

架构

ARCH

如上图所示,需要一系列的组建来完成这个架构设计,我司经过多年的经验和精密的设计,完成了高效的框架,以便满足在边缘端实现视频流处理。

复杂产品化框图

产品级

YiFUSION-ARCH

要想达到产品级的要求,需要更多逻辑来配合上述简单设计,如果需要产品资料可与 文末 管理员联系。

网络摄像头(IPC)

支持 ONVIF 协议

这是首要条件,也是必备条件,请认准 ONVIF 标志在你的网络摄像头上支持程度。

  • 海康、大华、TPLINK、华为等工业摄像头都是支持这个 ONVIF 协议的产品;
  • 支持 PoE 接入是最好的了,方便快捷,一根网线搞定;
  • 家庭监控的摄像头基本都不支持 ONVIF 协议,购买时请与商家确认好需求;
  • Wi-Fi 摄像头不够稳定,选择时需要慎重
  • 4G LTE 摄像头不能被局域网管理,不能选

USB 摄像头(WebCam)

USB 摄像头仅仅作为测试用途

如果暂时没有 IPC,也可以用 USB 摄像头来测试/演示,笔记本自带摄像头或购买 USB 外置摄像头。

  • 视频流实现起来非常容易,几行命令就可以驱动摄像头工作;
  • 测试效果比 IPC 要好,尤其是延迟会减少,不要被这个性能所迷惑了
  • 无法批量增加摄像头,并行查看效果,功能比较单一;

流媒体服务器 YiMEDIA

流媒体服务器器是必须的组件

更多的流媒体服务器软件知识可以在互联网找到,如果需要我司支持,请与我们商务人员联系。

  • 如 架构图 所示,YiMEDIA 流媒体服务器是一个盘路的工具,不影响整个系统的稳定性;
  • 宿主服务器的处理性能决定了所接入的 IPC 摄像头的数量和可点播的客户端数量;
  • 第三方流媒体服务器不能在本项目中支持

效果展示

IPC 视频监控

两路 IPC 监控(内部网络,不支持在线实时点播

局域网延迟在 300ms 以内,效果非常不错。

IPC

录制了一段演示视频,3个 IPC(左上:OEM,右上:海康,右下:TPLINK),一个 USB WebCam(左下:最普通了像素很低),抬手的同时,可以观察到稍微有点延迟,不过效果已经非常好了。

360P

点击图片在线查看 DEMO,2 个实时 360P 视频流播放

  • 编/解码 完全没压力,刚刚的;
  • CPU 要求低,1核心 可以处理8路视频源;
  • 同时播放几路视频,无卡顿现象;

360P

720P

点击图片在线查看 DEMO, 1 个实时 720P 视频流播放

  • 视频解码要求一般,720P 绰绰有余;
  • 1核心 CPU 可以处理好几路视频源;
  • 2Mb 互联网带宽播放没有卡顿现象;

720P

1080P

1 个实时 1080P 视频流播放(服务器带宽不足,就不能提供实时 DEMO 查看效果了)

  • 服务器处理要求高,1010P 编/解码耗资源
  • 至少需要 1核心 CPU 来负责处理 1路 视频源;
  • 网络传输要求高,流量大,缓存现象严重;

1010P

关于亿琪软件

打个广告

上海亿琪软件有限公司成立于 2016 年,专注于 5G 通信、AI 人工智能、边缘计算和大数据网络安全多项技术领域,致力于物联网领域前沿技术的创新,为用户提供全方位、智能化和安全的物联网解决方案。

  • 2023 年,公司发布“YiFUSION |工业边缘智能融合一体机”产品,为工业客户提供一整套的边缘计算+AI 能力:高性能数据采集、多类型数据融合、AI 算法集成、云端业务对接。在边缘网关的基础上,集成了 IoT 平台的边缘协同能力、本地 Web SCADA 和 HMI 功能、本地数据存储、边缘 AI 视频分析、行业应用集成等。

  • 2022 年公司推出 “YiCLOUD |亿琪云”一站式物联网应用解决方案。公司的业务涵盖了智慧城市、智慧农业、智能工厂和智慧园区等多个领域,公司软硬件产品和解决方案获得华为技术认证,得到中国移动 OCP 认证,公司还是边缘计算产业联盟 ECC 成员。

感知物联,畅快无限。

联系我们

  • 网站:http://yiqisoft.cn
  • 邮件:support@yiqisoft.cn
  • 电话:021-68863086
  • 手机:186-1666-9123
开源|ThingsBoard FAQ 使用和二次开发常见问题汇总六