在总结前面版本遇到的问题、综合用户反馈的意见的基础上,经过长达1年的开发测试,GT-Streaming
迎来了新的重大更新版本:v4.0.0。
对接方式的改进
这个版本,最主要的改进是将原来内置在Micro-GNSS
中的流媒体服务代理集成到流媒体服务中,同时采用消息队列来作为与企业应用服务的对接上的主要的媒介。
这种新设计简化了企业集成时的后端对接的开发工作,企业的应用服务的对接工作只需要对接指令系统即可。在部署上也更灵活简单,双方只需要一个消息队列地址即可。
同时,原来的 Micro-GNSS API
也集成到流媒体服务中,GT-Streaming
从这个版本开始,部署时不再需要Micro-GNSS
服务。
但对于仍需要使用简单对接方式的用户,可使用GT-Streaming
流媒体服务套件中包含的 Micro-Gateway
来作为终端网关。
WebSocket API 和 strm-js
库的引入
原来的Micro-GNSS API
(HTTP API) 在常规的HTTP调用之外,还需要与服务端建立一个STOMP WebSocket
通讯来获得消息通知,这给客户端程序带来了一定的复杂度。
为了简化客户端的开发,从 4.0.0 版本开始,GT-Streaming
引入新的 WebSocket API
,使得接口调用与接收消息通知都统一在一个信道上。
同时,GT-Streaming
提供了 strm-js
库,这个库基本涵盖了客户端与流媒体服务交互的大部分接口、常量和数据结构定义,并内置了心跳、流保持、请求管理这些基础功能的处理。
使用 strm-js
,不但减少开发工作量,客户端功能的性能和稳定性也会相应得到一定程度的提升。
strm-js
库除了提供操作 WebSocket API
的类,也提供了 HTTP API
的类。strm-js
现已发布到 npm 库。通过以下命令即可安装:
npm install -S `strm-js`
主要对讲音频格式的全面支持
对讲功能从原来只支持 G711A
和 G711U
两种格式,到基本覆盖主要的对讲音频格式:
LPCM
G711A
G711U
G726-16
G726-24
G726-32
G726-40
ADPCM
HTTP/2 支持
GT-Streaming
的HTTP基础架构支持 HTTP/2,HTTP API
由此获得采用 HTTP/2 协议带来的性能上的提升(可通过配置启用或关闭 HTTP/2)。
其他改进
GT-Streaming
集成了 ADAS 报警附件接收服务,同时统一ADAS 报警代码,以支持同时使用多种 ADAS 协议的终端的企业应用。- 采用 nginx 格式SSL证书,支持不重启服务更新证书