Audio gaps with increasing call duration – switch UC media server jitter buffer operating mode
State of knowledge | September 2024 |
---|---|
Product relevance | estos ProCall 8 Enterprise estos ProCall 7 Enterprise |
With estos ProCall Enterprise Version 7.3.1.5076 the operating mode of the pages RTPEndpoint and WebRTCEndpoint has been made configurable.
Since estos ProCall Enterprise Version 7.4.2.5993 this operating mode has been fundamentally This operating mode has been fundamentally reparameterized in order to eliminate the problem of "audio gaps with increasing call duration" described at the beginning, even without special configuration measures.
Background
Operating mode for PBX streaming (RTP endpoint) and client streaming (WebRTC endpoint)
Theoperating mode for the PBX streaming side (RTP endpoint) and for the client streaming side (WebRTC endpoint) up to and including version 7.3.0 was permanently set to mode4 (synced - synchronized sender and receiver clocks), which is the case with packet loss at the input of a media pipeline in specific customer environments can lead to increasing audio packet bursts.
In practice, this manifests itself in the form of increasing audio gaps as the duration of the conversation increases.
Solution
With estos ProCall Enterprise 7.4.2 or higher, the operating mode was provided with new default values, which set the mode to 0 (none - only use RTP timestamps) and the audiolatency parameter set to the value 50.
To solve the problem described in detail, update the estos ProCall Enterprise installation to at least version 7.4.2.
This means that no further specific configuration measures are required.
To verify this parameterization, you will find the information about its storage locations here (assuming the standard installation path of the estos ProCall Enterprise Server):
C:\Program Files\estos\UCServer\MediaService\emswindows\etc\kurento\modules\kurento\BaseRtpEndpoint.conf.ini:
;minPort=1024
;maxPort=65535
;audiolatency=50
C:\Program Files\estos\UCServer\MediaService\emswindows\etc\kurento\modules\kurento\SdpEndpoint.conf.json:
{
...
"jbufmodertp" : 0,
"jbufmodewebrtc" : 0,
...
}
Solution (for versions 7.3.1 to 7.4.1)
Switch operating mode from synced to none - Switch off buffering
As a workaround, the operating mode in the UC Media Server configuration can now be switched to mode 0 (none - only use RTP timestamps) as required since version 7.3.1.5076, the operating mode in the UC Media Server configuration can now be switched to mode0 (none - only use RTP timestamps) if required. This switches off the buffering of audio packets in the estos UC Media Server is switched off, the increasing formation of audio packet bursts is prevented and the more frequent and increasingly longer acoustic dropouts in the audio reception channel of the client are thus eliminated.
Procedure (when using versions 7.3.1 to 7.4.1)
Configuration file SdpEndpoint.conf.json
- Use a suitable text editor such as Notepad++ to open the estos UC Media Server configuration file SdpEndpoint.conf.json.
When using the standard installation paths, this is located under
C:\Program Files\estos\UCServer\MediaService\emswindows\etc\kurento\modules\kurento\. In this file you will find the parameters jbufmodertp and jbufmodewebrtc .
Both parameters are set to the value4 by default. Change these two parameters to thevalue0.Please take care not to change the formatting and punctuation structure.
Save your changes and close the text editor.
The procedure described here for manually changing parameterizations of the estos UC Media Server can of course also be applied to software versions 7.4.2 or higher. However, deviations from the parameterization standard of version 7.4.2 or higher should only be made in close consultation with your support instance.
Example configuration file
- The content ofSdpEndpoint.conf.json looks as follows, whereby thelocalAddress parameter will show the individual setting of an IPv4 address in the customer system:
{
"audioCodecs" : [
{
"name" : "opus/48000/2"
},
{
"name" : "PCMA/8000"
},
{
"name" : "PCMU/8000"
},
{
"name" : "AMR/8000"
}
],
"jbufmodertp" : 0,
"jbufmodewebrtc" : 0,
"localAddress" : "<YourIndividualIPv4Address>",
"numAudioMedias" : 1,
"numVideoMedias" : 0,
"videoCodecs" : [
{
"name" : "VP8/90000"
}
]
}
Save and restart
- Make sure that no softphone calls are currently being made and take into account that no calls can be made during the subsequent restart phase of the estos UC Media Server service.
- Restart the estos UC Media Server service via the Microsoft Windows Services Manager.
This completes the conversion of the estos UC Media Server jitter buffer operating mode.
Restore standard
The jitter buffer operating mode can be switched from0 to 4, i.e. fromnone to synced, in order to restore the operating standard of versions 7.3.1 to 7.4.1 is also possible.
For updates and upgrades
Please note that settings that deviate from the installation standard are overwritten when an update or upgrade is installed, the configuration filesSdpEndpoint.conf.json and BaseRtpEndpoint.conf.ini are replaced.
Therefore, check the settings after installing a server-side software change and carry out the steps described here again if necessary.
Non-supported operating modes
The other available operating modes
- 1 - slave – slave receiver to sender clock
- 2 - buffer – do low / high watermark buffering
are currently not supported in the estos UC Media Server. The activation of these operating modes is not supported by estos.