
早在2015年,我们发布了RTMP直播推送模块,那时候音视频直播这块场景需求,还不像现在这么普遍,我们做这块的初衷,主要是为了实现移动单兵应急指挥系统的低延迟音视频数据传输。好多开发者可能会疑惑,走RTMP怎么可能低延迟?网上看到的RTMP推拉流延迟,总归要2-3秒起,如果是自己实现框架,RTMP推拉流逻辑自己实现的话,延迟确实可以控制在毫秒级,这个已无需赘述。
随着无纸化会议、智慧教室、智能化硬件产品的普及,RTMP的技术方案发展一度非常好,有些无人机或智能机器人,都可以自带推送RTMP流数据,配合大牛直播SDK的RTMP低延迟播放器模块,可以实现毫秒级的技术体验。
那为什么后面要做GB28181设备接入模块呢老鹰赛事预测?我们推出的Android平台GB28181接入模块的目的,可实现不具备国标音视频能力的 Android终端,通过平台注册接入到现有的GB/T28181—2016服务,可用于如执法记录仪、智能安全帽、智能监控、智慧零售、智慧教育、远程办公、明厨亮灶、智慧交通、智慧工地、雪亮工程、平安乡村、生产运输、车载终端等场景。
GB28181规范,信令和媒体数据分离,可以订阅实时位置信息、云台控制、对焦等,数据传输走TCP或UDP,实现按需查看和语音广播、语音对讲,更成体系化,也更适合有交互的场景。
我们实现demo的时候,RTMP推送和GB28181都放到一起了,也就是说,可以同时使用RTMP推送和GB28181设备接入,也可以单独使用。 RTMP推送
RTMP采用的是TCP传输,采用全自研框架,易于扩展,自适应算法让延迟更低、采集编码传输效率更高。延迟配合我们的播放器,轻松实现毫秒级延迟。
功能设计如下:
接口调用如下:
停止RTMP推送
GB/T28181
国标GB/T28181协议全称《安全防范视频监控联网系统信息传输、交换、控制技术要求》,是一个定义视频联网传输和设备控制标准的白皮书,由公安部科技信息化局提出,该标准规定了城市监控报警联网系统中信息传输、交换、控制的互联结构、通信协议结构,传输、交换、控制的基本要求和安全性要求,以及控制、传输流程和协议接口等技术要求。解决了视频间互联互通,数据共享,以及设备控制的问题,这个问题从顶层解决了视频信息各自为战的问题,打通了视频联网的信息孤岛。前进之鹰赛事推荐
支持对接数据类型:
功能设计如下:
信令处理
GBSIPAgentListener主要系GB28181注册、心跳、DevicePosition等,如注册成功、注册超时、注册网络传输层错误、心跳异常、设备位置请求处理:
GBSIPAgentPlayListener主要系GB28181的Invite、Ack、Bye等处理:
GBSIPAgentAudioBroadcastListener主要系GB28181语音广播处理相关,如有语音广播相关需求,可参照demo实例实现:
GBSIPAgentDeviceControlListener主要系GB28181设备控制相关,比如远程启动、云台控制:
GBSIPAgentQueryCommandListener主要系GB28181查询命令,如预置位查询:
GBSIPAgentTalkListener主要系GB28181语音对讲相关处理:
媒体数据处理
RTP数据发送
RTP Sender(SmartPublisherJniV2.java)相关接口设计:
RTP数据接收
对应RTP Receiver(SmartPlayerJniV2.java)相关接口设计,如无语音广播或语音对讲相关技术需求,这部分可忽略:
PostAudioPacket(SmartPlayerJniV2.java),投递音频包给外部Live source,目前仅于语音对讲使用:
Android平台音视频数据流通,主要还看技术方案选择怎样的场景,如果是对接执法记录仪、智能安全帽、智能监控、智慧零售、智慧教育、远程办公、明厨亮灶、智慧交通、智慧工地、雪亮工程、平安乡村、生产运输、车载终端等场景等,目前选择GB28181的更多一些,如果主要是上云或者无纸化同屏、智慧教室等,还是RTMP推送多一些。具体可以根据场景选择适合自己的技术方案。
大家比较担心延迟问题,如果GB28181平台侧走RTMP或者webrtc的话,延迟也不大,和RTMP方案一样,整体都可以做到毫秒级。

