国标GB28181协议EasyGBS平台语音级联出现卡住假死的状态,该如何解决?
国标视频云服务EasyGBS支持设备/平台通过国标GB28181协议注册接入,并能实现视频的实时监控直播、录像、检索与回看、语音对讲、云存储、告警、平台级联等功能。平台部署简单、可拓展性强,支持将接入的视频流进行全终端、全平台分发,分发的视频流包括RTSP、RTMP、FLV、HLS、WebRTC等格式。
在级联功能上,EasyGBS可通过国标GB28181协议向上级平台级联,也能支持第三方平台通过国标GB28181协议级联到EasyGBS,实现数据的互通共享,并且也能支持语音级联功能。
今天和大家分享一下我们在开发语音级联时遇到的问题以及解决办法。
在开发EasyGBS级联语音时,EasyGBS配置完上级平台的信息,选择支持语音的通道注册到上级,在上级平台播放级联上来的通道,使用https访问并进行对讲,当第一次语音对讲时,设备不出声,并一直处于卡住假死的状态:
于是进行抓包分析:
发现语音通知命令<CmdType>Broadcast</CmdType>\n和设备初始化注册命令CSeq: 15 INVITE都正常,包括上级平台的语音都已经成功发送到下级平台,所以,可以判断是下级平台在向设备发送语音时,出现了问题。
由于是先取值在赋值,取值的时候还没有赋值,所以,虽然UacAudioOnOff是通道,但是因为取值的时候是nil,所以,在之后即使赋值过后,这边也不会取到了。
可参照如下代码进行优化:
添加如下代码:
在取值之前进行一次值判断即可。
修改后再次抓包,语音级联已经一切正常了。
EasyGBS平台部署轻快、可拓展性强,支持将接入的视频流进行全终端、全平台分发,凭借优秀的视频资源接入与处理能力,EasyGBS已经在很多项目场景中落地应用,如明厨亮灶、智慧工地、雪亮工程、平安乡村等等。感兴趣的用户可以前往演示平台进行体验或部署测试。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
2021-09-23 EasyGBS自动清理过期录像的程序未生效是什么原因?
2021-09-23 EasyGBS如何实现设备定位经纬度的展现?
2020-09-23 【技术普及】国标GB28181协议内SIP监控域互联结构解释
2020-09-23 【协议普及】国标平台EasyGBS完成国标GB28181协议中校时命令的流程
2020-09-23 语音对讲功能在GB28181协议国标视频云服务EasyGBS中的项目应用
2020-09-23 国标GB28181协议流媒体视频平台EasyGBS告警信息和告警视频如何实现对应?
2020-09-23 IP摄像头国标GB28181协议视频平台EasyGBS端口开错问题介绍及处理方案