青柠视频云——记一次大华摄像头公网语音对讲失败的问题分析

今天有客户反馈,使用大华摄像头接入青柠视频云,在公网环境下无法进行语音对讲,用户的设备是支持语音对讲的。

这是用户提供的注册截图,看起来也没什么问题,而且用户摄像头带有拾音功能和外放喇叭。

于是我们联系客户开始进行现场的抓包分析,因为语音对讲是分两个阶段走,一个是信令服务器和摄像头进行SIP信令交互,另一个是通信成功后,流媒体就开始给设备发RTP包,因此我们两边都进行抓包处理。

先来看信令服务器端的抓包内容,以下信令服务器IP部分做了处理。

复制代码
INVITE sip:34020000001370000001@1.204.105.252:21052 SIP/2.0
Call-ID: 53b587a7746e3af62a4792409145055b@0.0.0.0
CSeq: 15 INVITE
From: <sip:52000010102330000001@5200001010>;tag=1726656234184
To: <sip:34020000001370000001@1.204.105.252:21052>
Via: SIP/2.0/UDP xx.xxx.xxx.x:15060;rport
Max-Forwards: 70
Contact: <sip:52000010102330000001@xx.xxx.xxx.x:15060>
Subject: 34020000001370000001:0000109373,52000010102330000001:0
Content-Type: APPLICATION/SDP
User-Agent: LimeGBS v11111
Content-Length: 181

v=0
o=34020000001370000001 0 0 IN IP4 xx.xxx.xxx.x
s=Talk
c=IN IP4 xx.xxx.xxx.x
t=0 0
m=audio 30857 RTP/AVP 8
a=sendrecv
a=rtpmap:8 PCMA/8000
y=0000109373
f=v/a/1/8/1

SIP/2.0 100 Trying
Via: SIP/2.0/UDP xx.xxx.xxx.x:15060;rport=15060;branch=z9hG4bK-323833-f7c57fec761a4b9b5340a856dfddb41a
From: <sip:52000010102330000001@5200001010>;tag=1726656234184
To: <sip:34020000001370000001@1.204.105.252:21052>
Call-ID: 53b587a7746e3af62a4792409145055b@0.0.0.0
CSeq: 15 INVITE
User-Agent: SIP UAS V2.1.4.500306
Content-Length: 0

SIP/2.0 101 Dialog Establishement
Via: SIP/2.0/UDP xx.xxx.xxx.x:15060;rport=15060;branch=z9hG4bK-323833-f7c57fec761a4b9b5340a856dfddb41a
From: <sip:52000010102330000001@5200001010>;tag=1726656234184
To: <sip:34020000001370000001@1.204.105.252:21052>;tag=1097555858
Call-ID: 53b587a7746e3af62a4792409145055b@0.0.0.0
CSeq: 15 INVITE
Contact: <sip:34020000001370000001@1.204.105.252:21052>
User-Agent: SIP UAS V2.1.4.500306
Content-Length: 0

SIP/2.0 200 OK
Via: SIP/2.0/UDP xx.xxx.xx.x:15060;rport=15060;branch=z9hG4bK-323833-f7c57fec761a4b9b5340a856dfddb41a
From: <sip:52000010102330000001@5200001010>;tag=1726656234184
To: <sip:34020000001370000001@1.204.105.252:21052>;tag=1097555858
Call-ID: 53b587a7746e3af62a4792409145055b@0.0.0.0
CSeq: 15 INVITE
Contact: <sip:34020000001370000001@1.204.105.252:21052>
User-Agent: SIP UAS V2.1.4.500306
Content-Type: application/sdp
Content-Length: 266

v=0
o=52000010101320100006 0 0 IN IP4 192.168.1.7
s=Talk
i=VCam Talk Session
c=IN IP4 192.168.1.7
t=0 0
m=audio 9712 RTP/AVP 8
a=recvonly
a=rtpmap:8 PCMA/8000/1
m=audio 9712 RTP/AVP 8
a=sendonly
a=rtpmap:8 PCMA/8000/1
y=0000109373
f=v/0/0/0/0/0a/0/0/0

ACK sip:34020000001370000001@1.204.105.252:21052 SIP/2.0
Call-ID: 53b587a7746e3af62a4792409145055b@0.0.0.0
CSeq: 6 ACK
From: <sip:52000010102330000001@5200001010>;tag=1726656234184
To: <sip:34020000001370000001@1.204.105.252:21052>;tag=1097555858
Via: SIP/2.0/UDP xx.xxx.xxx.x:15060;rport=15060;branch=z9hG4bK-323833-f7c57fec761a4b9b5340a856dfddb41a
Max-Forwards: 70
Contact: <sip:52000010102330000001@8.137.51.116:15060>
User-Agent: LimeGBS v11111
Content-Length: 0

从信令服务器抓取的报文内容来看,没什么问题,都是按照国标标准协议走的。

接下来我们看流媒体端抓取的报文内容,我们将抓到的UDP包转换成RTP包,如下图。

接下来我们开始分析RTP包

从报文反馈的内容来看,平台往设备发送了136个包,设备接收了136个包,丢包率为0,持续时间是13.5秒,这里看下来也没有什么问题。平台正常发包,设备正常接收,不存在丢包的情况。

这里我们怀疑是不是RTP包有问题,是否因为没有声音,所以设备端接收了,但是放出来没有声音?于是接下来我们准备将RTP包回放一下,看是否有声音。

点击下方的Play Streams,这里我们可以看到一些信息反馈。如音频模式是g711a,采样率为8000HZ,而且从上面的图片中也看到了是音频格式是PCMA的。这里看下来也没什么问题,这也是大华设备支持的音频格式。

点击播放之后,如下

RTP流播放的时候,是正常且有声音的,到这里我们就几乎得到定论了,问题出在设备上,可能是格式不对或者设备配置的问题,接下来我们会对设备重新检查一下,看是否和配置以及音频支持程度有关。

相关推荐
乐橙开放平台10 小时前
海康和大华摄像头能统一管理吗?可以通过 GB28181 或视频融合平台接入
网络·后端·物联网·音视频
Mirawork16 小时前
Mirawork v0.32.0 更新体验:会话引用、任务分享与音频转写怎么用
人工智能·音视频
熬夜磕代码丶2 天前
RN鸿蒙空间音频实战
华为·音视频·harmonyos
一条破秋裤3 天前
【V4L2采集视频】
音视频
橙橙笔记4 天前
QT的学习第四部分
linux·qt·学习·音视频
AI视频工具指南4 天前
用 AI 能做哪些视频?按想交付的作品选做法
人工智能·aigc·音视频
希和20275 天前
免费AI视频生成工具汇总(国内优先,适合做漫剧、短视频,Obsidian笔记版)
人工智能·笔记·音视频
謓泽5 天前
【插件】用写网页的方式做视频?HyperFrames 让我重新理解了“做视频“这件事!
gpt·ai·大模型·音视频·媒体·claude·视频
无忧_wy5 天前
MoneyPrinterTurbo 自动化视频生成实战指南
运维·人工智能·自动化·音视频
联犀6 天前
联犀 Go SIMD 实战:视频转码从 16.5ms 到 5.46ms
开发语言·golang·音视频