linux – 如何在FreeSWITCH pbx软件中关闭SIP调用的RTP缓冲?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – 如何在FreeSWITCH pbx软件中关闭SIP调用的RTP缓冲?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2700字,纯文字阅读大概需要4分钟。
内容图文
![linux – 如何在FreeSWITCH pbx软件中关闭SIP调用的RTP缓冲?](/upload/InfoBanner/zyjiaocheng/958/4f31a5e6d3d7476293f92b95237a14dc.jpg)
我想在freeswitch pbx软件中关闭SIP调用的缓冲.
Freeswitch在缓冲区中保存来自客户端的RTP数据,并每隔20ms发送一次.
我希望freeswitch能够在没有保持的情况下通过数据包.
如何配置?
—–编辑(附加信息)—–
我有两个SIP客户端和FreeSwitch PBX.
语音8 kHz采样率,A-Law编码(每个采样8个字节,无压缩)
当我直接从一个客户端调用另一个客户端时,一个客户端上的tcpdump输出是:
00:00:00.000475 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.031599 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.032012 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.000315 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.031775 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.000384 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.031499 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.031986 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.000475 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.031578 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.031936 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.000419 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
00:00:00.031573 IP 10.64.177.34.5440 > 10.64.0.42.5082: UDP, length 172
但当我使用pbx作为中间点从一个客户端连接到另一个客户端时,我得到:
00:00:00.020013 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.019969 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.020017 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.019984 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.020078 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.020016 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.019850 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.020045 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.020012 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.019974 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.020054 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.019996 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
00:00:00.019972 IP 10.64.72.24.30230 > 10.64.0.42.5078: UDP, length 172
两种情况下的平均时间约为20ms(直接情况下较轻),但非常规数据部分似乎对客户更好,因为听到的声音(扬声器或耳机)没有间隙.我认为由于时钟漂移问题,常规时段的数据会导致问题.
所以我想在FreeSwitch中关闭此功能,因此数据将以原始时间戳的形式出现.
解决方法:
我找到了解决问题的方法.
你需要添加一行
<X-PRE-PROCESS cmd="set" data="rtp_notimer_during_bridge=true"/>
在文件中
/etc/freeswitch/vars.xml
这会导致桥接模式下的FreeSwitch保留原始数据包间隔.
内容总结
以上是互联网集市为您收集整理的linux – 如何在FreeSWITCH pbx软件中关闭SIP调用的RTP缓冲?全部内容,希望文章能够帮你解决linux – 如何在FreeSWITCH pbx软件中关闭SIP调用的RTP缓冲?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。