In this section:
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.
The SBC SWe does not support transcoding EFR.
On 5400/7000 HW platform SILK transcode is added as part of 7.2 release.
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 | 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 |
EVRC | NB | 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 |
EVRCB | NB | 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; | 5.9, 7.2, 8, 9.6, 13.2, 16.4, 24.4, 32, 48, 64, 96, 128
| 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-SS | NB | 15.2 | 20, 40, 60 |
NB | 13.3 | 30, 60 | |
L16 | WB | 256 | 10, 20 |
Opus | NB and WB |
| 10, 20, 30, 40, 50, 60 |
T.38 (version 0) | N/A | up to 14.4 | |
T.38 (version 3) | N/A | up to 33.6 | |
SILK | NB (8 Kbps) WB (16 Kbps) | 8, 12, 16, 24 | 20, 40, 60, 80, 100 |
NOTE: When collecting statistics, the following are considered separate codecs: Coding Rates (Kbps) Packetization Periods (ms) AMR with T.140 (DSP-PAD)(PSX) Codec Selections NB/WB NB Same for all AMR 20, 40, 60, 80 AMR-WB with T.140 (DSP PAD) WB Same for all AMR-WB 20, 40, 60, 80, 100
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 | 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/8000 | NB | 82 | 20 |
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, 128 | 20, 40, 60, 80, 100 |
G722 with Silence Suppression | WB | 48, 56, 64 | 10, 20, 30, 40 |
G.722.1-SS | WB | 16, 24, 32 | 20, 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) | NB | 13.2 | 20, 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, 16 | 20, 40, 60 |
SILK | MB (12 Kbps) SWB (24 Kbps) | 8, 12, 16, 24 | 20, 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.
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:
The configured Codec Entries are then incorporated in Packet Service Profiles (PSP) and assigned to enable EVS 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:
The SBC platforms include the following Opus functionality:
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.
The following Opus attributes cannot be controlled by the operator:
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).
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:
Parameter | Behavior |
---|---|
Maxaveragebitrate | min (offer/answer of peer, route PSP, 20kbit/s) |
Useinbandfec | Inband FEC is used, if useinbandfec is set in the route PSP and if the peer requests it |
usedtx | DTX is used, if usedtx is set in the route PSP and if the peer requests it |
usecbr | Constant bit rate if either peer requests cbr=1 OR route is configured for cbr=1 |
For more information, refer to Codec Entry - CLI.
The GPU transcoding solution supports the following codecs:
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.