[Freeswitch-users] FreeSWITCH 1.8.2 - 1-2 second dropped Audio\RTP at the start of a call

Shaun Stokes shaun.stokes at itec-support.co.uk
Fri Dec 14 13:16:14 UTC 2018


Correction, we had moved FreeSWITCH 1.4 (not 1.8) to Server 1 which worked without any audio delays. Upon testing FreeSWITCH 1.8 on Server 1 there is a 1-2 second delay before RTP is established once the call is answered.

This is a FreeSWITCH 1.8.2 issue, not a Debian 9 specific (also occurs on Debian 8). FreeSWITCH 1.6 and 1.4 are not effected using the same configuration through-out.
________________________________
From: Shaun Stokes
Sent: 14 December 2018 11:44:18
To: FreeSWITCH Users Help
Subject: Re: [Freeswitch-users] FreeSWITCH 1.8.2 - 1-2 second dropped Audio\RTP at the start of a call

We have built two test servers side by side on the same hardware with the same configuration, as follows.
Server 1: Debian 8 with FreeSWITCH 1.6.20
Server 2: Debian 9 with FreeSWITCH 1.8.2

We can replicate the 1-2 second delay on Server 2 only, whereas Server 1 provides near instant RTP in both directions upon answer. Interestingly, if we move FreeSWITCH 1.8.2 from Server 2 to Server 1 there are still no issues with delay on Server 1, the problem is only observable on the Server 2 running Debian 9 so the problem is not specifically related to FreeSWITCH 1.8.2.

At this stage it seems likely the issue lies with Debian 9 or the change in packages on Debian 9.

Thanks,
Shaun
________________________________
From: FreeSWITCH-users <freeswitch-users-bounces at lists.freeswitch.org> on behalf of Shaun Stokes <shaun.stokes at itec-support.co.uk>
Sent: 11 December 2018 15:28:33
To: FreeSWITCH Users Help
Subject: [Freeswitch-users] FreeSWITCH 1.8.2 - 1-2 second dropped Audio\RTP at the start of a call


Hi All,


Since we've been using FreeSWITCH 1.8.2 we've noticed that the first 1-2 seconds of Audio\RTP at the start of the call when the call is answered is now dropped\missing but this doesn't occur on 1.6.20. When comparing the examples we've noticed the call flow is slightly different, as follows.


FreeSWITCH 1.8.2

Leg A: switch_channel.c:2249 (sofia/internal/SRC_EXT at DOMAIN:PORT) Callstate Change DOWN -> RINGING
Leg B: sofia.c:7291 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [calling][0]
Leg B: sofia.c:7291 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [proceeding][180]
Leg B: sofia.c:7401 Ring-Ready sofia/internal/DST_EXT at LAN_IP:PORT!
Leg B: switch_channel.c:3354 (sofia/internal/DST_EXT at LAN_IP:PORT) Callstate Change DOWN -> RINGING
Leg A: switch_ivr_originate.c:1246 Sending early media
Leg A: switch_channel.c:3482 (sofia/internal/SRC_EXT at DOMAIN:PORT) Callstate Change RINGING -> EARLY
Leg A: sofia.c:7291 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [early][183]
Leg B: sofia.c:7291 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [completing][200]
Leg B: switch_channel.c:3482 (sofia/internal/DST_EXT at LAN_IP:PORT) Callstate Change RINGING -> EARLY
Leg B: sofia.c:7291 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [ready][200]
Leg B: sofia.c:8429 Channel [sofia/internal/DST_EXT at LAN_IP:PORT] has been answered
Leg B: switch_channel.c:3781 (sofia/internal/DST_EXT at LAN_IP:PORT) Callstate Change EARLY -> ACTIVE
Leg A: switch_ivr_bridge.c:766 Channel [sofia/internal/SRC_EXT at DOMAIN:PORT] has been answered
Leg A: sofia.c:7291 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [completed][200]
Leg A: switch_channel.c:3781 (sofia/internal/SRC_EXT at DOMAIN:PORT) Callstate Change EARLY -> ACTIVE
Leg A: sofia.c:7291 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [ready][200]
Leg A: switch_ivr_async.c:1500 No silence detection configured; assuming start of speech
Leg B: sofia.c:7291 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [calling][0]
Leg A: sofia.c:7291 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [calling][0]
Leg A: sofia.c:7291 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [ready][200]
Leg A: sofia.c:8272 Processing updated SDP
Leg B: sofia.c:7291 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [ready][200]


FreeSWITCH 1.6.20

Leg A: switch_channel.c:2249 (sofia/internal/SRC_EXT at DOMAIN:PORT) Callstate Change DOWN -> RINGING
Leg B: sofia.c:7084 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [calling][0]
Leg B: sofia.c:7084 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [proceeding][180]
Leg B: sofia.c:7192 Ring-Ready sofia/internal/DST_EXT at LAN_IP:PORT!
Leg B: switch_channel.c:3346 (sofia/internal/DST_EXT at LAN_IP:PORT) Callstate Change DOWN -> RINGING
Leg A: switch_ivr_originate.c:1215 Sending early media
Leg A: switch_channel.c:3474 (sofia/internal/SRC_EXT at DOMAIN:PORT) Callstate Change RINGING -> EARLY
Leg A: sofia.c:7084 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [early][183]
Leg B: sofia.c:7084 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [completing][200]
Leg B: sofia.c:7084 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [ready][200]
Leg A: switch_channel.c:3773 (sofia/internal/SRC_EXT at DOMAIN:PORT) Callstate Change EARLY -> ACTIVE
Leg A: sofia.c:7084 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [completed][200]
Leg A: switch_ivr_originate.c:3705 Originate Resulted in Success: [sofia/internal/DST_EXT at LAN_IP:PORT]
Leg B: switch_channel.c:3773 (sofia/internal/DST_EXT at LAN_IP:PORT) Callstate Change RINGING -> ACTIVE
Leg A: sofia.c:7084 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [ready][200]
Leg B: Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [ready][200]
Leg A: switch_ivr_async.c:1500 No silence detection configured; assuming start of speech
Leg B: sofia.c:7084 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [calling][0]
Leg A: sofia.c:7084 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [calling][0]
Leg A: sofia.c:7084 Channel sofia/internal/SRC_EXT at DOMAIN:PORT entering state [ready][200]
Leg A: sofia.c:8061 Processing updated SDP
Leg B: sofia.c:7084 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [completing][200]
Leg B: sofia.c:7084 Channel sofia/internal/DST_EXT at LAN_IP:PORT entering state [ready][200]


On 1.6.20 Leg B changes straight from RINGING to ACTIVE, but on 1.8.2 Leg B first changes from RINGING to EARLY then EARLY to ACTIVE, not sure if this could be related.


We've experimented with the following to no avail.
rtp-rewrite-timestamps
send_silence_when_idle
fsctl sync_clock
suppress_cng
ignore_early_media

As per:
https://freeswitch.org/confluence/display/FREESWITCH/RTP+Issues
https://freeswitch.org/confluence/display/FREESWITCH/VAD+and+CNG
https://freeswitch.org/confluence/display/FREESWITCH/send_silence_when_idle
https://freeswitch.org/confluence/display/FREESWITCH/Early+Media


The calls are local between two extensions\endpoints on the same FreeSWITCH instance and the same SIP profile, the SIP profiles on both servers (1.6.20 and 1.8.2) are identical.


Does anyone have any ideas?


Thanks,

Shaun
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20181214/5f716b81/attachment.html>


More information about the FreeSWITCH-users mailing list