Info

Configuring the codec used on the phone can intentionally increase or reduce the voice quality on phone calls. Certain codecs like G729 compress the audio stream to save on bandwidth usage. Other codecs like PCMU (G711), or G722 are utilized for increasing the voice quality but as a trade-off the bandwidth usage increases.


Important Note: Currently, TotalCX only allows PCMU/G711 on inbound/outbound calls to external callers/callees. However, any permitted payload type should be allowed for on-net calls (internal calling or calling DIDs to any existing TotalCX customer). This makes it important to watch your priority and have PCMU/G711 in the codec priority list somewhere. 


You may also need to refresh how overrides are given to phones in this article.

 


Yealink

With Yealink configurations there are two configurations necessary to make: 

Enabling the Codec: account.x.codec.<payload_type>.enable
Priority of the Codec: account.x.codec.<payload_type>.priority

You must substitute the x for the account (usually 1) and the permitted payload types for the <payload_type>. 

Permitted Payload Types: 

g722
pcmu
g729

Once a payload type is determined, you'll have to set the configuration value: 

0 - Disabled
1 - Enabled

Example

account.1.codec.pcmu.enable="1"
account.1.codec.g729.enable="1"
account.1.codec.g722.enable="0"
account.1.codec.pcmu.priority="2"
account.1.codec.g729.priority="1"

In this example PCMU and G729 are enabled while G722 is disabled. It also sets the priority to use G729 over PCMU. 

 

Other Configurations to Consider


Voice Activity Detection (VAD)

VAD can avoid unnecessary coding or transmission of silence packets in VoIP applications, saving on computation and network bandwidth.

Parameter
voice.vad 
DescriptionIt enables or disables the VAD (Voice Activity Detection) feature.
Permitted Values

0-Disabled

1-Enabled

Default0
Web UISettings > Voice > Echo Cancellation > VAD

 

Comfort Noise Generation (CNG)

Comfort Noise Generation (CNG) is used to generate background noise for voice communications during periods of silence in a conversation.


Note: VAD is used to send CN packets when the phone detects a “silence” period; CNG is used to generate comfortable noise when the phone receives CN packets from the other side.

 

Parameter
voice.cng 
DescriptionIt enables or disables the CNG (Comfortable Noise Generation) feature.
Permitted Values

0-Disabled

1-Enabled

Default1
Web UISettings > Voice > Echo Cancellation > CNG

 


Typical Configuration

account.1.codec.pcmu.enable="1"
account.1.codec.g722.enable="1"
account.1.codec.g722_1_24kpbs.enable="1"
account.1.codec.g722_1c_24kpbs.enable="1"
account.1.codec.g722_1c_32kpbs.enable="1"
account.1.codec.g722_1c_48kpbs.enable="1"
account.1.codec.g729.enable="1"
account.1.codec.pcmu.priority="1"
account.1.codec.g722.priority="2"
account.1.codec.g729.priority="3"
account.1.codec.g722_1c_48kpbs.priority="4"
account.1.codec.g722_1c_32kpbs.priority="5"
account.1.codec.g722_1c_24kpbs.priority="6"
account.1.codec.g722_1_24kpbs.priority="7"
voice.vod="1"
voice.cng="0"

 


Polycom

For Poly you simply need to set up the priority. 


Relevant Overrides:

voice.codecPref.G711_Mu
voice.codecPref.G722
voice.codecPref.G729AB

Available Values:

  • Permitted values to set audio codec priority are 1 - 27.
  • A value of 1 is the highest priority, 27 the lowest.
  • If 0 or Null, the codec is disabled.

Typical Defaults/Example Configuration

voice.codecPref.G711_Mu="1"
voice.codecPref.G722="2"
voice.codecPref.G729AB="3"

 


Cisco

Relevant Overrides:

Preferred_Codec_1_
Second_Preferred_Codec_1_ 
Third_Preferred_Codec_1_
Use_Pref_Codec_Only_1_

 

Available Values:

G711u
G711a
G726-16
G726-24
G726-32
G726-40
G729a
G722

 

Typical Default/Example Usage: 

Preferred_Codec_1_="G711u" Use_Pref_Codec_Only_1_="Yes"