220 lines
6.5 KiB
220 lines
6.5 KiB
3 years ago
|
## 背景
|
||
|
|
||
|
> 我司目前主要应用包括:视频监控(健康监测、工地、公厕)、视频称重等。
|
||
|
>
|
||
|
> 早期,通过大华、海康摄像头NVR配合 SDK调用,再使用[MediaPush](http://10.8.30.22/FS-Anxinyun/trunk/codes/services/MediaPusher/mediaPusher) RTSP/RTMP方式推流 (基于SRS开发的推流服务,目前发布在:218.3.150.106)
|
||
|
>
|
||
|
> 后期智慧城市项目多使用海康[萤石云](https://open.ys7.com/console/videoMonitor.html)接入。
|
||
|
>
|
||
|
> 2021年完成对GB28181国标协议的接入(基于开源项目 [Monibuca](https://github.com/Monibuca/engine))。(目前发布地址:http://221.230.55.27:8081/ui/#/home)
|
||
|
|
||
|
|
||
|
|
||
|
## 目标
|
||
|
|
||
|
**统一、开放、独立的视频接入中台服务**。
|
||
|
|
||
|
1. 适配我司现有/待选型摄像头/NVR视频接入和WEB/APP/小程序等所有推流场景。逐渐标准化视频解决方案。
|
||
|
2. 作为IOT产线功能模块直接提供第三方服务,实现独立平台功能包括设备配置、管理,实时推流展示、抓拍录像等
|
||
|
3. 深耕我司安全监测/智慧城市业务领域,实现视频监测与业务融合的解决方案。
|
||
|
|
||
|
|
||
|
|
||
|
## 规划
|
||
|
|
||
|
+ 开发基于`Monibuca`实现可视化视频管理平台 ☆☆☆☆
|
||
|
+ 设备管理列表、项目分组归属;☆☆☆☆
|
||
|
+ 实时预览、历史回看,支持显示多种协议推流地址(URL)信息 ☆☆☆☆
|
||
|
+ 云控、录像、抓拍功能验证或开发;☆☆☆
|
||
|
+ 设备在线状态和流量统计;☆☆☆
|
||
|
+ 性能压测和调优(负载均衡+分布式推流);☆☆☆☆☆
|
||
|
+ 视频和监测联动控制;☆☆
|
||
|
+ 除GB28181之外,考虑适配Onvif、EHOME等较为常见的视频流协议;☆
|
||
|
+ 视频推流分辨率控制;☆
|
||
|
|
||
|
|
||
|
|
||
|

|
||
|
|
||
|
设备管理层级和绑定关系:
|
||
|
|
||
|

|
||
|
|
||
|
|
||
|
|
||
|
## 竞品
|
||
|
|
||
|
### LiveQING LiveGBS
|
||
|
|
||
|
[官网](https://www.liveqing.com/); [演示地址](https://gbs.liveqing.com:10010/#/); [开发文档](https://www.liveqing.com/docs/download/LiveGBS.html#%E7%9B%B8%E5%85%B3%E4%BB%8B%E7%BB%8D); [前端源码](https://gitee.com/livegbs/GB28181-Server)
|
||
|
|
||
|
功能点:
|
||
|
|
||
|
+ 可视化设备管理,在线状态
|
||
|
+ RTSP、RTMP、HTTP-FLV、Websocket-FLV、HLS、WebRTC 等多种协议流输出
|
||
|
+ 国标向上级联
|
||
|
+ H264、H265, UDP、TCP信令和流传输
|
||
|
+ 预览、回看、音频、多路、云台、语音对讲
|
||
|
|
||
|
程序组成结构:
|
||
|
|
||
|

|
||
|
|
||
|
### 海康萤石云
|
||
|
|
||
|
GB接入功能:
|
||
|
|
||
|
+ 设备管理列表
|
||
|
+ License接入控制
|
||
|
+ 国标级联、算法训练
|
||
|
+ 云录制、云存储、消息推送
|
||
|
|
||
|
总览页如下:
|
||
|
|
||
|

|
||
|
|
||
|
|
||
|
|
||
|
监控控制台中的设备列表:
|
||
|
|
||
|

|
||
|
|
||
|
|
||
|
|
||
|
### 青犀TSINGSEE
|
||
|
|
||
|
主页
|
||
|
|
||
|
http://open.tsingsee.com/
|
||
|
|
||
|
`EasyCVR`支持国标和EHOME协议
|
||
|
|
||
|
http://demo.easycvr.com:18000/#/device/list easycvr/easycvr
|
||
|
|
||
|
主要功能:
|
||
|
|
||
|
+ 设备列表、视频调阅
|
||
|
+ 告警设置和查询
|
||
|
+ 定时录像计划、国标级联
|
||
|
|
||
|
设备列表:
|
||
|
|
||
|

|
||
|
|
||
|
通道列表
|
||
|
|
||
|

|
||
|
|
||
|
|
||
|
|
||
|

|
||
|
|
||
|
|
||
|
|
||
|
## 附录-术语+技术
|
||
|
|
||
|
### ONVIF
|
||
|
|
||
|
【百度百科】ONVIF(开放式网络视频接口论坛);
|
||
|
|
||
|
规范1.0版本包括以下方面:
|
||
|
|
||
|
- IP配置
|
||
|
- 查找设备
|
||
|
- 设备管理
|
||
|
- 影像配备
|
||
|
- 实时监控
|
||
|
- 事件分析
|
||
|
- [PTZ](https://baike.baidu.com/item/PTZ/3478717)摄像头控制
|
||
|
- 视频分析
|
||
|
- 安防领域
|
||
|
|
||
|
仅支持局域网访问。外网访问需要有固定IP。
|
||
|
|
||
|
支持golang的库有如下:
|
||
|
|
||
|
```
|
||
|
github.com/use-go/onvif
|
||
|
```
|
||
|
|
||
|
|
||
|
|
||
|
### EHOME
|
||
|
|
||
|
*ehome协议*是海康的私有协议,相对于GB28181国标协议都是基于设备端主动向平台注册,更适用于无固定ip地址的设备,只需要配置一下设备注册地址即可云端使用。
|
||
|
|
||
|
[tsingeye/Free*Ehome*](https://github.com/tsingeye/FreeEhome)
|
||
|
|
||
|
[《EasyCVR平台集成EHOME协议》](https://www.cnblogs.com/EasyNVR/p/13626433.html)
|
||
|
|
||
|
|
||
|
|
||
|
### ES 、PES、PS、TS
|
||
|
|
||
|
+ ES Elementary Stream 原始流,编码器直接输出的流,可以是H.264/MIPEG,音频AAC.
|
||
|
+ PES Packetized Elementary Stream 分组ES(分组、打包、加入包头信息)
|
||
|
+ PS Program Stream 节目流 ,多个PES包的组合,包含同步信息、时钟恢复信息。
|
||
|
+ TS Transport Stream 传输流,固定长度的TS包组成,PES包的重组。信道环境较为恶劣、传输误码较高时一般采用TS码流
|
||
|
|
||
|
|
||
|
|
||
|
### RTMP/RTSP/HLS
|
||
|
|
||
|
REF:https://www.jianshu.com/p/c04d810b7562
|
||
|
|
||
|
+ RTMP: Real time messaging protocol;
|
||
|
|
||
|
Adobe公司提出,基于TCP协议的互联网应用层。基本单元是Message,传输时候会切割成Chunk,进行串行同步的发送。
|
||
|
|
||
|
+ RTSP: Real time streaming protocol
|
||
|
|
||
|
基于RTP/RTCP(UDP)的媒体传输协议;
|
||
|
|
||
|

|
||
|
|
||
|
区别:
|
||
|
|
||
|
1)RTMP协议是Adobe的私有协议,未完全公开,RTSP协议和HTTP协议是共有协议,并有专门机构做维护。
|
||
|
|
||
|
2)RTMP协议一般传输的是flv,f4v格式流,RTSP协议一般传输的是ts,mp4格式的流。
|
||
|
|
||
|
3)RTSP传输一般需要2-3个通道,命令和数据通道分离,RTMP一般在TCP一个通道上传输命令和数据。
|
||
|
|
||
|
+ HLS: Http live streaming
|
||
|
|
||
|
苹果公司提出的基于HTTP协议的流媒体网络传输协议。HTTP+M3U8+TS
|
||
|
|
||
|

|
||
|
|
||
|
|
||
|
|
||
|
### H264 、H265
|
||
|
|
||
|
|
||
|
|
||
|
REF:https://www.cnblogs.com/pjl1119/p/9914861.html;
|
||
|
|
||
|
符合MPEG-4 标准,视频压缩算法(格式)。H265是H264升级,减少带宽提高画质。
|
||
|
|
||
|
- 帧内预测压缩,解决的是空域数据冗余问题。
|
||
|
- 帧间预测压缩(运动估计与补偿),解决的是时域数据冗余问题。
|
||
|
- 整数离散余弦变换(DCT),将空间上的相关性变为频域上无关的数据然后进行量化。
|
||
|
- CABAC压缩。
|
||
|
|
||
|
经过压缩后的帧分为:I帧,P帧和B帧:
|
||
|
|
||
|
- I帧:关键帧,采用帧内压缩技术。
|
||
|
- P帧:向前参考帧,在压缩时,只参考前面已经处理的帧。采用帧音压缩技术。
|
||
|
- B帧:双向参考帧,在压缩时,它即参考前而的帧,又参考它后面的帧。采用帧间压缩技术。
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
## 其他
|
||
|
|
||
|
### 宇视科技
|
||
|
|
||
|
https://open.uniview.com/login yinweiwen/poixxxx_
|
||
|
|
||
|

|