Overview

Comfort noise is generated at the receiving end of the discontinuous transmission (DTX) in which the acoustic background noise might be specially encoded into silence insertion descriptor (SID) frames by the transmitter during the silence suppression period. Comfort noise can also be generated as a direct result of the application of the packet loss concealment by the receiver. A number of speech codecs support comfort noise internally as part of the standard, such as G.729B, G.723.1A, EVRC and AMR codec family. Additionally, the SBC Core supports comfort noise for those speech codecs that do not include built-in silence suppression by employing techniques described in ITU G.711 Appendix II. This support applies to G.711, G.726 and iLBC in SBC Core.

The SID frame, commonly known as Comfort Noise Packet in VoIP, is composed of a payload of up to 11 bytes in length. The first byte indicates the level of the comfort noise, and the remaining optional 10 bytes are the reflection coefficients that describe the spectral envelop of the comfort noise. SBC Core only supports the decoding of the noise level byte in SID, and any reflection coefficient bytes found are ignored. SBC Core generates the comfort noise having a proprietary spectral shaping with the level decoded from the SID.

Comfort Noise Packet Structure

Every Comfort Noise packet contains a description of the noise level and spectral information in the form of reflection coefficients for an all-pole model of the noise. The inclusion of spectral information is OPTIONAL and the model order (number of coefficients) is left unspecified. The magnitude of the noise level is packed into the least significant bits of the noise-level byte with the most significant bit unused and always set to "0". The noise level is expressed in -dBov (dB below overload point), with values from 0 to 127 representing 0 to -127 dBov.

The first byte of the payload MUST contain the noise level. Quantized reflection coefficients are packed in subsequent bytes in ascending order, where M is the model order. The total length of the payload is M+1 bytes.

Comfort Noise Initialization

While establishing a call, when DSP receives enable channel command, the Silence Suppression parameters are checked to observe if it is set or not. If it is set, the extra memory for IPP is allocated to decode CNG packets.

References

To configure a Packet Service Profile using codecs with Silence Suppression for Comfort Noise, refer to:

To create a codec entry and enable Silence Suppression, refer to:

  • No labels