集成摄像头视频
集成摄像头视频
在物联网项目中,视频监控往往与传感器数据同等重要。将摄像头画面融入可视化看板或用户 App,温度超标时不仅看到数值,还能直接调取现场画面确认异常。
但摄像头不同于温湿度传感器——它产生的是连续的视频流,数据量大、协议特殊,无法像 MQTT 数据那样直接推送到平台存储。视频播放需要借助专门的视频流服务器(也叫流媒体服务器)进行中转。
平台目前支持三种接入方式,下面逐一来看。
三种接入方式对比
| 方式 | 适用摄像头 | 是否需要自建视频流服务器 | 延迟 | 配置复杂度 | 移动端兼容性 |
|---|---|---|---|---|---|
| 萤石云摄像头 | 萤石 / 海康威视等支持萤石云的设备 | 不需要(萤石云提供) | 1-3 秒 | 简单 | iOS ✅ 安卓 ✅ |
| HLS 视频流地址 | 支持标准推流协议的摄像头 | 需要 | 5-15 秒 | 中等 | iOS ✅ 安卓 ✅ |
| FLV 视频流地址 | 支持标准推流协议的摄像头 | 需要 | 1-3 秒 | 中等 | iOS ❌ 安卓 ✅ |
移动端兼容性指该平台下的 ThingsX App 和小程序。例如:FLV 视频流在 iOS 手机的 ThingsX App 和微信小程序中均不支持播放。
方式一:萤石云摄像头(推荐)
萤石云是海康威视旗下的消费级安防云平台,自带完整的视频流服务器。将摄像头接入萤石云,再把萤石云账号集成到 ThingsCloud 平台,就能在看板和 App 中播放视频,无需自建任何服务器。
适合这些场景:
- 新采购摄像头,直接选萤石或海康设备
- 不想维护服务器的中小型项目
- 需要云台控制、语音对讲、录像回放等高级功能
方式二:HLS 视频流地址
如果你已有支持标准推流协议的设备(IP 摄像头、NVR 录像机、无人机图传或视频编码器,支持 RTSP、RTMP、GB28181、SRT 等协议),可以通过 HLS 视频流地址接入。
HLS(HTTP Live Streaming,HTTP 实时流)是苹果公司提出的一种视频流标准。它的核心原理是:
- 视频流服务器将连续的视频流切成一小段一小段(通常为 2-10 秒一个切片)
- 这些切片以
.ts文件的形式存储在服务器上 - 播放器通过一个
.m3u8索引文件,知道当前有哪些切片,按顺序下载播放
通俗理解:HLS 就像看连载小说,每隔几分钟更新一章,你按章节顺序读下去。因为按"章"下载,所以网络波动时只需要重新加载当前章节,不会从头开始。
特点:
- 兼容性好:iOS 和 Android 的 ThingsX App 及小程序均支持播放
- 延迟相对较高:因为需要等待切片生成,通常 5-15 秒延迟
- 需要摄像头厂商提供视频流服务,或自行搭建视频流服务器(如 SRS)
- 适合:对延迟不敏感、需要在移动端 App 或小程序中流畅播放的场景
方式三:FLV 视频流地址
同样,你也可以通过 FLV 视频流地址接入。
FLV(Flash Video)原本是 Adobe Flash 时代的视频格式,但在流媒体领域,它通常指通过 HTTP 流式传输的 FLV 封装视频。它的核心原理是:
- 视频流服务器将视频编码为 FLV 格式,通过 HTTP 协议持续推送给播放器
- 播放器收到数据后立即解码播放,无需等待文件切片
通俗理解:FLV 就像看直播,数据源源不断地流过来,画面几乎是实时呈现的。
特点:
- 延迟低:通常 1-3 秒,接近实时
- 平台兼容:在 Android 的 ThingsX App 及小程序中支持播放,iOS 不支持
- 需要摄像头厂商提供视频流服务,或自行搭建视频流服务器(如 SRS)
- 适合:需要低延迟的实时监控场景,如工业现场、安防值守
在看板中使用视频组件
在看板中添加或编辑组件,打开音视频分类,按需选择:

- 萤石视频监控:输入摄像头序列号,支持云台、对讲、回放
- HLS 视频播放:输入 HLS 视频流播放 URL,播放 HLS 流
- FLV 视频播放:输入 FLV 视频流播放 URL,播放 FLV 流
组件支持调整画面尺寸、自动播放、控制栏显示等样式。
在 ThingsX 设备面板中使用视频组件
萤石云视频组件
详细步骤请阅读:→ 集成萤石云摄像头
HLS/FLV 视频组件
接入 HLS 或 FLV 视频流,需要在设备类型和 App 面板中分别配置:
第一步:定义设备属性
在设备类型的属性定义中,添加一个文本类型的属性,子类型选择 HLS 视频 URL 或 FLV 视频 URL,用来保存对应的视频流播放地址。

第二步:配置设备面板
在设备面板编辑器中,添加HLS 视频播放或 FLV 视频播放组件,并绑定刚才定义的属性。用户在 ThingsX App 打开设备详情页,即可看到视频画面,支持全屏播放。

为什么需要视频流服务器?
你可以这样理解两种数据的链路差异:
- 传感器数据:设备 → MQTT 上报 → ThingsCloud 平台存储 → 看板/App 展示
- 视频数据:摄像头 → 推流到视频流服务器 → 平台播放器拉流播放 → 不在平台存储视频文件
平台本身不存储视频内容,而是作为播放器,通过萤石云等第三方平台的私有协议,或 HLS、FLV 等标准协议,从视频流服务器获取实时画面进行展示。
摄像头常用的原生协议,如 RTSP、RTMP、GB28181、SRT 等,有一个共同问题:App 和小程序无法直接播放。它们必须经过视频流服务器转换,变成 HLS 或 FLV 格式,才能在看板和 App 中展示。
转换链路示意:
如何搭建视频流转换服务器?
要接入已有摄像头,最实用的方案是搭一台视频流转换服务器。这里推荐开源方案 SRS(Simple Realtime Server)。
SRS 简介
SRS 是国产开源流媒体服务器,支持市面上绝大多数主流输入协议:
- RTSP 拉流:IP 摄像头最常见,SRS 可主动从摄像头拉取
- RTMP 推流:直播行业最常用,编码器或 OBS 均支持
- SRT 推流/拉流:安全可靠的传输协议,适合公网不稳定环境
- GB28181 国标接入:安防监控国家标准,支持 NVR/DVR/IPC 直接注册
- WebRTC 推流:适合实时音视频通话和网页推流,双向视频
- HLS / HTTP-FLV / MPEG-TS / RTP 输入:用于二次分发、聚合或转封装
输出方面,SRS 支持:
- HLS(
.m3u8地址) - FLV(
.flv地址) - RTMP、WebRTC、SRT(向下游转发)
官方项目:https://github.com/ossrs/srs
基本搭建原理
SRS 部署在一台有公网 IP 的服务器上(云服务器即可)。摄像头通过 RTSP 或 RTMP 推流给 SRS,SRS 同时转换为 HLS 和 FLV 两种格式:
- HLS 地址:
http://your-server/live/stream.m3u8 - FLV 地址:
http://your-server/live/stream.flv
看板或 App 中填入上述地址,即可播放视频。
HTTPS 要求
看板和 App 面板中的视频播放均要求使用 HTTPS 加密地址。因此,SRS 服务器必须配置 HTTPS 证书,将 http:// 替换为 https:// 后,才能在 ThingsCloud 中正常播放。如果直接填入 HTTP 地址,App 或小程序会拦截非安全内容,导致视频无法加载。
快速搭建步骤(Docker 方式)
SRS 提供了官方 Docker 镜像,最快 5 分钟即可运行起来:
- 准备一台 Linux 云服务器(推荐 Ubuntu 20.04+,2核4G 配置)
- 安装 Docker
- 拉取并运行 SRS:
docker run --rm -it -p 1935:1935 -p 8080:8080 -p 1985:1985 \
--name srs ossrs/srs:5 ./objs/srs -c conf/rtmp2hls.conf
以上命令启动了一个 SRS 实例,支持:
- RTMP 推流端口:
1935 - HLS 播放端口:
8080 - HTTP API 端口:
1985
摄像头推流或拉流配置成功后,经过正确的 HTTPS 加密证书配置,即可通过以下地址在 ThingsCloud 中播放:
- HLS:
https://your-server-ip:8080/live/stream.m3u8 - FLV:
https://your-server-ip:8080/live/stream.flv
进阶方案
对于多摄像头项目,建议将 SRS 与物联网网关结合部署:
- 在园区/工厂现场部署一台边缘服务器(如 NVR 或工控机)
- 边缘服务器运行 SRS,接收现场所有摄像头的 RTSP 流
- 边缘服务器通过 4G/宽带将转换后的 HLS/FLV 流转发到云端
- 优势:现场局域网内可直接观看,低延迟;同时支持云端统一管理和回放
总结与选型建议
| 您的场景 | 推荐方案 | 理由 |
|---|---|---|
| 新采购摄像头,不想自建服务器 | 萤石云摄像头 | 零运维成本,即插即用,功能完整 |
| 已有 RTSP/RTMP 摄像头,懂服务器运维 | SRS + HLS/FLV | 灵活可控,不依赖第三方平台,适合私有化项目 |
| 低延迟实时监控(工业值守、安防) | SRS + FLV | 延迟 1-3 秒,接近实时 |
| 需要 iOS 和 Android 的 App 及小程序广泛兼容播放 | SRS + HLS | 兼容所有主流移动端 App 和小程序 |
| 已有国标 GB28181 平台 | SRS + HLS/FLV(SRS 通过 GB28181 接收) | 直接对接现有平台,无需更换摄像头 |
无论选哪种方式,都能将视频画面融入 ThingsCloud 物联网平台的可视化看板和移动 App,让"看到现场"和"看到数据"变成同一个体验。
需要技术支持?
需要技术支持?
以下均为有偿增值服务,可以联系技术支持团队:
- SRS 服务器部署指导:根据摄像头型号和数量给配置建议
- HTTPS 加密证书配置:协助配置 SSL 证书,确保 HLS/FLV 地址符合看板和 App 的 HTTPS 要求
- 网络架构规划:现场局域网 + 云端公网部署方案
- HLS / FLV 链路调试:排查视频无法播放、卡顿、延迟等问题
- GB28181 平台对接:协助已有安防平台接入 ThingsCloud
请联系您的技术支持工程师或商务经理。