基于JT/T 1078协议设计和开发部标视频服务器
交通部与2016年10月份推出了JT/T 1078-2016标准,全称是<道路运输车辆卫星定位系统视频通信协议>。该标准将改变以往两客一危车辆的视频监控设备通信协议都是设备厂商私有协议的局面。标准起草单位:中国交通通信信息中心、北京国交信通科技发展有限公司、江苏威森通讯科技有限公司、大连信开数码软件有限公司、深圳市锐明视讯技术有限公司、广州亿程交通信息有限公司、深圳市瑞信视讯技术有限公司、吉林省寰旗卫星导航通信集团有限公司、杭州海康威视数字技术股份有限公司、大连鼎视科技有限公司。这里面真正做视频老牌厂商也就是海康、大华这两家公司。
1.部标1078协议和808协议的区别
部标1078协议文档明确说明了,协议是在JT/T 808协议的基础上进行增加了大量的视频指令,以前的终端32位报警,由于增加了视频报警,拓展为64位报警。终端参数中也增加了大量与视频相关的参数设置。协议的通信方式、数据类型、传输规则和消息组成按照 JT/T 808-2011中第 4 章的要求。协议中信令数据报文的通信连接方式按照 JT/T 808-2011中第 5 章的要求。协议中信令数据报文的消息处理机制按照 JT/T 808-2011中第 6 章的要求。协议中信令数据报文的加密机制按照 JT/T 808-2011中第 7 章的要求。
可见1078协议仍然是基于部标808协议继续拓展的协议指令集,不过在1078协议中分为信令和数据两个独立的通道,也就是视频设备与视频平台的服务器之间是建立两个通道:
1)信令数据通道:数据格式应符合 JT/T 808-2011的规定,并在其协议格式的基础上添加新的协议指令及数据格式。 报文通信应使用车载视频终端和企业视频监控平台之间已建立的、用于传输定位信息的链路,不应新建链路。
2)码流数据通道:用于网络实时音视频传输、网络录像回放、语音对话、语音监听、语音广播等。报文通信应新建链路,而不使用传输定位信息的链路。
2.架构设计
从协议中可以看出,视频的查看,需要平台下发给设备,完成一连串的指令交互,待指令交互完成后,由设备再和平台的视频服务器建立视频数据通道,开始传递视频数据。
所以视频服务器需要两个服务器子系统,一个是视频的信令服务器,我们可以在部标808GPS网关服务器的基础上增加视频的信令和相关的逻辑处理、视频报警分析、视频参数设置等功能。对于流媒体数据解析这块,需要单独增加一个流媒体服务器,来进行流媒体的数据解析、编解码处理、录像存储、数据转发等工作。
开发一个高性能的完整的流媒体转发服务器,从架构设计上面分为五层:
1)视频连接接入、管理、流量计算;
2)RTP包数据解析,计算丢包率,提取音视频裸码流,根据RTP包的音视频类型格式,进行不同的编解码转换;
3)转发层:根据用户端的播放请求和用户所能接受的音视频编码格式,匹配设备的音视频数据转发给指定的用户端,转发是视频服务器中最复杂的一环,不仅包括对企业平台用户的转发,还包括对上级监管平台用户的转发,两种转发基于不同的协议,需要做单独的处理。
4)日志层:记录码流,记录音频数据为wav文件,方便进行调试; .
5)界面层:进行视频设备连接监控和数据包监控
在服务器端,内嵌了一个视频播放器,可以直接在视频服务器上面,双击视频连接查看视频,这样有助于调试设备视频。
如需购买部标1077视频平台或苏标平台,可联系2379423771@qq.com
基于此视频服务器可以开发1077视频平台或苏标主动安全平台:基于Spring4+SpringMVC4+Mybatis3+Hibernate4+Junit4框架构建高性能企业级的部标视频监控平台
3.界面设计
视频服务器由于是接入全国几十家过检的设备厂商,不同的设备厂商采用不同的音频编码,视频数据流又非常庞大复杂,需要有非常友好的界面,方便设备调试,视频连接管理,丢包监控等。如下图所示,在视频服务器界面上能够做到以下监控:
1)当前的视频连接,音频编码,流量,丢包率,传输速度,时长;
2)可以查看某一个视频连接的RTP数据包;
3)可以监控当前的对讲和广播数据包;
4)对上级监管平台的转发数据包监控;
4.上级监管平台的转发
对上级监管平台的交互,也是分为指令通道和数据通道,首先要基于809部分中的视频指令协议,完成视频指令交互应答后,为上级监控平台提供Http服务器接口,上级监控平台用户按照视频协议的HttpURL格式要求,发起Http请求,企业平台返回指定的设备的视频数据,上级监控平台获取数据后自行解码播放。部标视频的压测文章参见:部标1077视频平台过检和压力测试经验分享
基于JT/T 1078协议设计和开发部标视频服务器的更多相关文章
- Fixed-Length Frames 谈谈网络编程中应用层(基于TCP/UDP)的协议设计
http://blog.sina.com.cn/s/blog_48d4cf2d0101859x.html 谈谈网络编程中应用层(基于TCP/UDP)的协议设计 (2013-04-27 19:11:00 ...
- 基于DDD的微服务设计和开发实战
你是否还在为微服务应该拆多小而争论不休?到底如何才能设计出收放自如的微服务?怎样才能保证业务领域模型与代码模型的一致性?或许本文能帮你找到答案. 本文是基于 DDD 的微服务设计和开发实战篇,通过借鉴 ...
- 基于树莓派的微型气象站设计与开发(Windows 10 IoT Core)
前言 树莓派(Raspberry Pi,RPi)是专门为学生计算机编程教育而设计,只有信用卡大小的卡片式电脑,可以运行Linux或者Windows 10 IoT Core操作系统.本文将利用树莓派和U ...
- 基于web自动化测试框架的设计与开发(本科论文word)
- 基于web自动化测试框架的设计与开发(讲解演示PPT)
- MMORPG大型游戏设计与开发(游戏服务器 游戏场景 概述 updated)
我们在玩游戏的时候,我们进入游戏后第一眼往往都是看到游戏世界中的场景,当然除了个别例外,因为那些游戏将游戏场景隐藏了起来,如文字游戏中的地点一样.既然我们接触了游戏世界的核心,那么作为核心的场景又包括 ...
- 基于Html5+HLS协议播放符合部标1078协议的实时流媒体视频
由于现在主流的部标GPS和1077视频监控平台,都是BS架构,在网页上播放视频,早期的很多平台用的都是ActiveX控件的形式,依赖于IE浏览器,需要降低浏览器的安全设置,而且非常难用.同时由于win ...
- 基于java spring框架开发部标1078视频监控平台精华文章索引
部标1078视频监控平台,是一个庞杂的工程,涵盖了多层协议,部标jt808,jt809,jt1078,苏标Adas协议等,多个平台功能标准,部标796标准,部标1077标准和苏标主动安全标准,视频方面 ...
- 基于C#和Asp.NET MVC开发GPS部标视频监控平台
基于C#和Asp.NET MVC开发GPS部标监控平台 目前整理了基于.NET技术的部标平台开发文章,可以参考: 1.部标Jt808协议模拟终端的设计和开发 2.C#版的808GPS服务器开发-> ...
随机推荐
- Codeforces Round #369 (Div. 2) A. Bus to Udayland【字符串/二维字符数组求连起来的座位并改为其他字符】
A. Bus to Udayland time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- MySQL读写分离-架构
MySQL读写分离-架构 简介 对于很多大型网站(pv值百万.千万)来说,在所处理的业务中,其中有70%的业务是查询(select)相关的业务操作(新闻网站,插入一条新闻.查询操作),剩下的则是写(i ...
- Python的网络编程[3] -> BOOTP 协议[1] -> BOOTP 的 Python 实现
BOOTP实现 / BOOTP Implement 目录 BOOTP 的服务器建立过程 BOOTP 的客户端建立过程 Note: 理论部分请参考文末相关阅读链接 1 BOOTP 的服务器建立过程 服务 ...
- Editing 2011-2012 ACM-ICPC Northeastern European Regional Contest (NEERC 11)
NEERC 11 *wiki链接[[https://acm.ecnu.edu.cn/wiki/index.php?title=2011-2012_ACM-ICPC_Northeastern_Europ ...
- springMVC初探视图解析器——XmlViewResolver
XmlViewResolver解析器 XmlViewResolver基于XML文件中的视图bean来解析“逻辑视图”.XmlViewResolver默认会从/WEB-INF/views.xml中加载视 ...
- [置顶]
zabbix通过lykchat发送告警信息配置过程
本文介绍zabbix通过lykchat发送告警信息配置过程. lykchat代码在https://github.com/lykops/lykchat/ 步骤 编写脚本 1).查看服务器端的配置文件et ...
- appium Parameters were incorrect
raise exception_class(value) selenium.common.exceptions.WebDriverException: Message: Parameters were ...
- GlusterFS分布式文件系统部署
GlusterFS是一个可伸缩的网络文件系统,使用常见的现成的硬件,您可以创建大型分布式存储流媒体解决方案.数据分析.和其他数据相关的任务.GlusterFS是自由和开源软件. 详细参考官网:http ...
- ambari修改admin密码
https://community.hortonworks.com/questions/449/how-to-reset-ambari-admin-password.html 1) Postgres ...
- oracle find blocking session
show current session id select sid from v$mystat where rownum=1; show blocking session selec ...