Linux – How to improve call quality freeswitch

freeswitchlinuxlua

Currently I have a system that makes use of FreeSWITCH for outbound calls via SIP External with flowroute and works well, but some users complain about the quality of the call. The system is running the call using a lua script, in which you create two sessions (one for each user), and which are within the same script bridge and record the call, once both have established a connection. G711 codec is used.

Users who complain say that sometimes the audio is very low or stutters. The strange thing is that when you listen to recordings of these calls both people listen very well.

Have been testing the user and normally is poorly listening of the leg 2 of the call. Because of this and the characteristics of the system that I mention, I suspect that when bridging the communication is that the audio fails, or low quality. But I have not found anything conclusive.

I write to ask if anyone knows why this behavior can be given during calls, and because it is perceived in his recordings.

Best Answer

If the recording is good, you know that packages from both devices made it to freeswitch. I am not sure which way the recording was executed but there is a good chance this gives you a hint to that both packages made it in time to the server as well. (These things could be proven with a tcpdump of all upd packages and wireshark, it was a good suggestion to capture traffic on the server to examine it!) From my extensive experience with VoIP this sounds however like a problem with ingress bandwidth on the site of the person who is experiencing the bad audio, sometimes problems like these also show up due to not correctly set (or on the way discarded) QOS flags. Make sure all devices and freeswitch use EF as QOS setting for RTP. Using wireshark you can also check if flags get dropped by your ISP. If they do, there is usually little you can do about it unless you have a business accounts that claims to support QOS, in which case you should complain to them.