In this section:

Audio Codec Support

This section summarize audio codec support with and without (pass-through) transcoding selectable on the SBC Core.

Audio codec relay is supported in SIP-SIP, SIP-H.323 and H.323-H.323 interworking calls.

Note

The SBC SWe does not support transcoding EFR.

Note

On 5400/7000 HW platform SILK transcode is added as part of 7.2 release.

Audio Codecs Supported (Transcoding and Pass-Through)

The SBC Core supports the following narrowband (NB) and wideband (WB) audio codecs for transcoding and pass-through:

Audio Codecs Supported (Transcoding and Pass-Through)

(PSX) Codec Selections

NB / WB

Coding Rates
(Kbps)

Packetization Periods
(ms)

AMR-Bandwidth Efficient

NB

Variable - mix of 4.75, 5.15, 5.90, 6.70, 7.40, 7.95, 10.20, 12.20

20, 40, 60, 80

AMR-Octet Aligned

NB

Same for all AMR

20, 40, 60, 80

EFR

NB

12.2

20, 40, 60
EVRCNB

Variable (171, 80, or 16 bit samples per 20 ms)

20, 40, 60

EVRC0

NB

Variable (171, 80, or 16 bit samples per 20 ms)

20

EVRCB0

NB

4.8, 5.8, 6.2, 6.6, 7.0, 7.5, 8.5, 9.3

20
EVRCBNB

4.8, 5.8, 6.2, 6.6, 7.0, 7.5, 8.5, 9.3

20, 40, 60
EVS

NB (5.9 - 24.4 Kbps)

WB (5.9 - 24.4 Kbps;
Note: higher rates are supported
only for pass-through calls)

5.9, 7.2, 8, 9.6, 13.2, 16.4, 24.4, 32, 48, 64, 96, 128


  • 5.9 to 24.4 (transcoded)
  • 5.9 to 128 (pass-through)


20, 40, 60, 80, 100

G.711

NB

64

10, 20, 30, 40, 50, 60

G.711 with Silence Suppression

NB

64

10, 20, 30, 40, 50, 60

G.722

WB

48, 56, 64

10, 20, 30, 40

G.722.1

WB

16, 24, 32

20, 40, 60, 80

G.722.2 (AMRWB-Bandwidth Efficient)

WB

6.6, 8.85, 12.65, 14.25, 15.85, 18.25, 19.85, 23.05, or 23.85

20, 40, 60, 80, 100

G.722.2 (AMRWB-Octet Aligned)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.723.1

NB

5.3, 6.3

30, 60, 90, 120, 150

G.723.1A

NB

5.3, 6.3

30, 60, 90, 120, 150

G.726

NB

32

10, 20, 30, 40

G.726 with Silence Suppression

NB

32

10, 20, 30, 40

G.729A (compatible with G.729)

NB

8

10, 20, 30, 40, 50, 60

G.729A+B

NB

8

10, 20, 30, 40, 50, 60
iLBC, iLBC-SSNB15.220, 40, 60
NB13.330, 60

L16

WB25610, 20
OpusNB and WB
  • 6 to 20 (transcoded)
  • 6 to 510 (pass-through)

10, 20, 30, 40, 50, 60

T.38 (version 0)

N/A

up to 14.4


T.38 (version 3)N/Aup to 33.6
SILK

NB (8 Kbps)

WB (16 Kbps)

8, 12, 16, 2420, 40, 60, 80, 100


NOTEWhen collecting statistics, the following are considered separate codecs:

(PSX) Codec SelectionsNB/WB

Coding Rates

(Kbps)

Packetization Periods

(ms)

AMR with T.140 (DSP-PAD)

NBSame for all AMR20, 40, 60, 80
AMR-WB with T.140 (DSP PAD)WBSame for all AMR-WB20, 40, 60, 80, 100

Audio Codecs Supported (Pass-Through Only)

The SBC Core supports the following narrowband (NB) and wideband (WB) audio codecs for pass-through:

Audio Codecs Supported (Pass-Through Only)

(PSX) Codec Selections

NB / WB

Coding Rates
(Kbps)

Packetization Periods
(ms)

AMR-CRC

NB

Same for all AMR

20, 40, 60

AMR-CRC Robust Sorting

NB

Same for all AMR

20, 40, 60

AMR-CRC-Interleaving-Robust Sorting

NB

Same for all AMR

20, 40, 60

AMR-Interleaving

NB

Same for all AMR

20, 40, 60

AMR-Interleaving-Robust Sorting

NB

Same for all AMR

20, 40, 60

AMR-Robust Sorting

NB

Same for all AMR

20, 40, 60

Broadvoice

NB (16 Kbps)

WB (32 Kbps)

16, 32

5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60

Broadvoice with FEC

WB

32

15, 20, 25, 30, 35, 40, 45, 50, 55, 60
Dolby DVC-2/8000NB8220

EVRC1

NB

Variable (171, 80, or 16 bit samples per 20 ms)

20, 40, 60

EVRC1 FR

NB

8.55

20, 40, 60

EVRCB1

NB

Variable (171, 80, 40, or 16 bit samples per 20 ms)

20, 40, 60

EVRCB1 FR

NB

8.55

20, 40, 60

EVS

SWB (9.6 - 128 Kbps)

FB (16.4 - 128 Kbps)

5.9, 7.2, 8, 9.6, 13.2, 16.4, 24.4, 32, 48, 64, 96, 12820, 40, 60, 80, 100

G722 with Silence Suppression

WB

48, 56, 64

10, 20, 30, 40

G.722.1-SSWB16, 24, 3220, 40, 60, 80

G.722.2 (AMRWB-CRC)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.722.2 (AMRWB-CRC-Interleaving)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.722.2 (AMRWB-CRC-Robust Sorting)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.722.2 (AMRWB- CRC-Interleaving-Robust_Sorting)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.722.2 (AMRWB-Interleaving)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.722.2 (AMRWB-Interleaving-Robust Sorting)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.722.2 (AMRWB-Robust Sorting)

WB

Same for all AMR-WB

20, 40, 60, 80, 100

G.728

NB

16

10, 20, 30, 40, 50, 60, 70, 80,

90, 100, 110, 120, 130, 140, 150

G.728 with Silence Suppression

NB

16

10, 20, 30, 40, 50, 60, 70, 80,

90, 100, 110, 120, 130, 140, 150

GSM (full rate)NB13.220, 40, 60

iSAC HD codec (pass-through and direct media)

WB

10 to 32

30, 60
MS-RTA

NB (8 Kbps)

WB (16 Kbps)

8, 1620, 40, 60
SILK

MB (12 Kbps)

SWB (24 Kbps)

8, 12, 16, 2420, 40, 60, 80, 100

Speex

NB (8 Kbps)

WB (16 Kbps)

SWB (24 Kbps)

8, 16, 32

20, 40, 60

Speex with FEC

NB (8 Kbps)

WB (16 Kbps)

8, 16

20, 40, 60

The SBC selects codecs on a call-by-call basis, and negotiates codec use with destination gateway during initial call setup. The SBC also renegotiates the media during a call. The SBC defines configuration parameters such as audio codec, packet size, and TOS to apply to individual call legs.

For direct media connections, bandwidth and policing requirements do not apply. Audio streams must have different IP port numbers, but may have the same or different remote IP addresses. Audio streams for each call leg can be allocated on the same or different IP interface.

EVS Pass-through Support

The SBC supports use of the Enhanced Voice Services (EVS) codec in pass-through mode. Pass-through of the EVS codec from one call leg to another can occur when EVS is configured in both the ingress and egress PSPs, based on the outcome of SDP offer-answer procedures.

In pass-through mode, all EVS codec parameters in Primary mode as well as AMRWB-IO mode are relayed to the egress peer. 

The SBC drops any unknown parameters received in the a=fmtp: line in the SDP offer or answer, as well as any known EVS codec parameters that have values other than the range defined in the TS 26.114 standard. 

To enable support of EVS, you can configure codec entries that specify EVS as the codec type. The codec entry configuration allows the SBC to restrict certain parameters, like bit-rate, according to the operator's requirements. The configurable options for an EVS-based codec entry include:

  • Packet size 20-100ms supported - default 20 ms
  • Dynamic Preferred RTP Payload Type 0-127 supported - default 96
  • Min Bit Rate - Supported rates are: 5.9, 7.2,8, 9.6, 13.2, 16.4, 24.4, 32, 48, 64, 96, and 128, but must be less than or equal to Max Bit Rate - default 5.9
  • Max Bit Rate - Supported rates are: 5.9, 7.2,8, 9.6, 13.2, 16.4, 24.4, 32, 48, 64, 96, and 128, but must be greater than or equal to Min Bit Rate - default 128
    The configured minimum and maximum for bit rate defines the range the SBC uses in its offer/answers during SDP negotiation.
  • DTMF Relay - Supported values are: None (default), Out Of Band, Rfc2833, Either Oob Or Rfc2833, Both Oob And2833.
  • DTMF Remove Digits - Supported values are Disable and Enable (default).

The configured Codec Entries are then incorporated in Packet Service Profiles (PSP) and assigned to enable EVS support.

Opus Codec Support

The SBC  SBC 5400, SBC 7000, and SBC SWe platforms support the Opus audio codec in accordance with RFC 6716 and draft-ietf-payload-rtp-opus-01 (refer to Supported Standards page). There are no licensing requirements for this codec.

Opus is an open, royalty-free, highly versatile audio codec consisting of a combination of SILK (LPC) and CELT (Constrained-Energy Lapped Transform) codecs. At any given point of time the LP layer, the MDCT (CELT) layer or both may be active. Opus is used for the following applications:

  • VoIP and video conferencing
  • Music/video streaming and storage
  • Remote music jamming
  • Wireless speakers/headphones/microphone
  • Audio books
  • Virtualization/sound servers

Supported Opus Features

The SBC platforms include the following Opus functionality:

  • Input sampling rates of 8k Hz (NB) and 16k Hz (WB) are supported on the IDP interface (encoder input and decoder output)
  • Opus-to-Opus pass-through calls
    • Encoding output bandwidths of 8, 12, 16, 24 and 48 kHz
    • 6 kbps to 510 kbps bit rates
  • Opus transcoded calls
    • Max bandwidth of 16 kHz
    • Max bit rate of 20 kbps
  • Mono mode for both pass-through transcoded calls
  • Stereo mode for Opus-to-Opus pass-through.
  • Inband FEC mode
  • Variable bit rate (VBR)
  • DTX mode
  • Single channel mode is supported
  • Fax/Modem tone (FMTD) detection is not supported in Opus leg
  • DTMF (Inband DTMF detection is not guaranteed)

On SBC SWe, Opus DTX is fully supported on both transmitter and receiver sides; however, packets are generated approximately every 200 milliseconds during DTX period.

Note

The following Opus attributes cannot be controlled by the operator:

  • Maxplaybackrate
  • Sprop-maxcapturerate
  • Stereo
  • sprop-stereo

UXPAD Operational Modes

As with other currently-supported compression codecs, the SBC supports Opus in UXPAD only. The following UXPAD operational modes are supported by the SBC:

  • WB to WB transcoding using two UXPADs connected back to back preserves wideband voice by transferring the data between the two UXPADs in wideband format (IDP-WB).

  • WB to NB transcoding (except for G.711-RTP) using two UXPAD connected back to back over IDP-NB format.
  • WB to G.711-RTP transcoding using single UXPAD.
  • Opus to TNAPAD to play out any tones or announcements.
  • Opus-to-Opus transcoding using two UXPADs connected back-to-back over IDP-WB format. This is used only for Opus-to-Opus transcoding that may occur due to existing Packet Service Profile (PSP) flags:
    • Transcode always
    • Conditional Transcoding > Conditions in addition to “No common Codec”:
      • Different ptime/Silence Suppression,
      • Different DTMF relay.
Note

Any up-sampling or down-sampling may introduce some noise and degrade speech quality. In addition, wideband speech quality is lost if down-sampling is done for wideband-to-narrowband transcoding. However, up-sampling / down-sampling is required for interworking.

UXPAD Support of Opus


Opus transcoding options can be configured using the following parameters:

ParameterBehavior
Maxaveragebitratemin (offer/answer of peer, route PSP, 20kbit/s)
UseinbandfecInband FEC is used, if useinbandfec is set in the route PSP and if the peer requests it
usedtxDTX is used, if usedtx is set in the route PSP and if the peer requests it
usecbrConstant bit rate if either peer requests cbr=1 OR route is configured for cbr=1

For more information, refer to Codec Entry - CLI.

Codecs Supported with GPU Transcoding

The GPU transcoding solution supports the following codecs:

  • AMR-NB
  • AMR-WB
  • EVRC
  • EVRCB
  • G729
  • G722
  • Opus
  • EVS

The coding rates and packetization times applicable for the supported codecs in the GPU use case are the same as those shown in the previous tables for the same codecs.