请问大佬语音视频延迟高 ping 延迟不高怎么排查

198 天前
 iSNN

请问下大佬们:

我们这里用 freeswitch 做了个通话系统,用户端是 web 用 jssip 通过 webrtc 。 目前排查出来问题应该就是用户的延迟高,出在用户电脑与 freeswitch 的纯语音流 webrtc 上。

后来一次远程用户电脑的时候,远程延迟大,并且发现远程画面中用户百度出的北京时间就比我百度的慢两秒多,让他语音中读秒确实也慢两秒,而 ping 服务器是 30ms 。 某成熟远程软件的通信和我们自己写的 webrtc 都存在这个问题,我觉得是用户网络环境有问题了。

后来为了更加准确,我找了一个地域距离更远的朋友远程和 webrtc 语音,ping 的结果是 40+,但是不管第三方远程画面还是我们自己写的 webrtc 语音流都只差了半秒不到。

不知道该如何排查,还望大佬们指点下

1284 次点击
所在节点    程序员
10 条回复
z1113456051
198 天前
有缓存吧
IsuYww83LvR48EaC
198 天前
我们当时也遇到该问题,可以看看是不是从呼入端到 FS 或者 FS 到呼出端的延迟时间导致的
txzh007
198 天前
走没走 turn?
toss156
198 天前
webrtc 和 ping 两者走的链路不一样,webrtc 可能走了服务端转发了
basncy
198 天前
语音有没有转码.
视频有没有硬编解码.
iSNN
198 天前
@txzh007 有 turn stun ,用 coturn 搭的。coturn 和 webrtc 服务端是同一台机器
iSNN
198 天前
@jiaqizhang 请问这个怎么看呢,我 sngrep 抓包也看不出所以然,只能看出建立 rtp 的时间,看不出中间流的延迟
iSNN
198 天前
@basncy 我记忆中好像是 opus ,我们只是语音服务,视频是我远程的时候发现的延迟。不过你说的这个可能确实是个问题,但是我当时任务管理器看了下客户那边系统负载不到 cpu 50%内存 70%
wnpllrzodiac
197 天前
一层层查,流里面加时间戳,看都慢在哪里了。数据说话。捕获,编码,发送,接受,显示。每个地方都可能慢。看看有没有缓存数据么地方。池子不能大
iSNN
196 天前
@wnpllrzodiac 请问大佬数据说话。捕获,编码,发送,接受,显......这些东西哪里可以打断点和流里加时间戳呢....我用的基于 webrtc 的 jssip ,各个回调有时间戳,但是获取语音权限后建立流后我理解的流中就不能处理了...原理上浏览器中 webrtc 的一些接口也能调用,请问下大概是什么样的思路,感谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/1058609

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX