7 Description of the transmitted parameter indices
26.4453GPPCodec for Enhanced Voice Services (EVS)Detailed algorithmic descriptionRelease 15TS
7.1 Bit allocation for the default option
The allocation of the bits for various operating modes in the EVS encoder is shown for each bitrate in the following tables. Note that the most significant bit (MSB) of each codec parameter is always sent first. In the tables below, the abbreviation CT is used to denote the coder type and the abbreviation BW is used to denote the bandwidth.
7.1.1 Bit allocation at VBR 5.9, 7.2 – 9.6 kbps
The EVS codec encodes NB and WB content at 7.2 and 8.0 kbps with CELP core or HQ-MDCT core. No extension layer is used at these bitrates. The EVS codec encodes NB and WB content at 9.6 kbps with CELP core or TCX core. To encode WB signals at 9.6 kbps, the CELP core uses TBE extension layer and the TCX core uses IGF extension layer. Similarly to encode SWB signals at 9.6 kbps, the CELP core uses TBE extension layer and the TCX core uses IGF extension layer.
VBR mode uses 4 different active frame types with different bit rates to achieve the average bit rate of 5.9 kbps. The 4 different frame rates are 2.8 kbps PPP frame, 2.8 kbps NELP frame, and 7.2 kbps and 8 kbps CELP frames. The CT bits are allocated as 1 bit to differentiate active 2.8 kbps (PPP or NELP) frames from any other 2.8 kbps frames (such as SID frame with payload header) and the remaining 2 bits are used to represent NB PPP, WB PPP, NB NELP and WB NELP frames.
Table 179: Bit allocation at 7.2 – 9.6 kbps and 2.8 kbps PPP/NELP
|
Description |
2.8 PPP |
2.8 NELP |
7.2 |
8.0 |
9.6 |
||
|
core |
CELP |
CELP |
CELP HQ-MDCT |
CELP HQ-MDCT |
CELP |
TCX |
|
|
ext. layer |
NO |
NO |
NO |
NO |
SWB TBE |
WB TBE |
IGF |
|
Number of bits per frame |
56 |
56 |
144 |
160 |
192 |
||
|
BW |
4 |
2 |
|||||
|
CT |
3 |
3 |
3 |
||||
|
core bits |
53 |
53 |
140 |
156 |
171 |
181 |
187 |
|
WB/SWB ext. layer bits |
16 |
6 |
|||||
Note that the BW and CT parameters are combined together to form a single index at 7.2 and 8.0 kbps. This index conveys the information whether CELP core or HQ-MDCT core is used. At 9.6 kbps, the information about using the CELP core or the TCX core is encoded as a part of the CT parameter.
7.1.2 Bit allocation at 13.2 kbps
The EVS codec encodes NB, WB and SWB content at 13.2 kbps with CELP core, HQ-MDCT core, or TCX core. For WB signals, the CELP core uses TBE or FD extension layer. For SWB signals, the CELP core uses TBE or FD extension layer, and the TCX core uses IGF extension layer.
Table 180: Bit allocation at 13.2 kbps
|
Description |
13.2 |
|||||||
|
core |
CELP |
HQ-MDCT |
TCX |
CELP |
TCX |
|||
|
ext. layer |
NO |
NO |
NO |
WB TBE |
WB FD |
SWB TBE SWB FD |
IGF |
|
|
Number of bits per frame |
264 |
|||||||
|
BW, CT, RF |
5 |
|||||||
|
TCX/HQ-MDCT core flag |
1 |
1 |
1 |
|||||
|
TCX CT |
2 |
2 |
||||||
|
TD/FD ext. layer flag |
1 |
1 |
1 |
|||||
|
core bits |
259 |
258 |
256 |
238 |
252 |
227 |
256 |
|
|
WB/SWB ext. layer bits |
20 |
6 |
31 |
|||||
Note that the BW, CT, and RF parameters are combined together to form a single index. This index also conveys the information whether LP-based core or MDCT-based core (TCX or HQ-MDCT) is used. The decision between the HQ-MDCT core and the TCX core is encoded with one extra bit called MDCT core flag. At this bitrate, the TCX coder type is encoded with 2 extra bits (TCX CT).
7.1.3 Bit allocation at 16.4 and 24.4 kbps
The EVS codec encodes NB, WB, SWB and FB content at 16.4 and 24.4 kbps with CELP core, HQ-MDCT core or TCX core. For SWB and FB signals, the CELP core uses TBE extension layer and the TCX core uses IGF extension layer.
Table 181: Bit allocation at 16.4 kbps
|
Description |
16.4 |
|||||
|
core |
CELP |
TCX |
HQ-MDCT |
CELP |
TCX |
CELP |
|
ext. layer |
NO |
NO |
NO |
SWB TBE |
IGF |
FB TBE |
|
Number of bits per frame |
328 |
|||||
|
BW |
2 |
|||||
|
Reserved flag |
1 |
|||||
|
CT |
3 |
4 |
2 |
3 |
4 |
3 |
|
core bits |
322 |
321 |
323 |
286 |
321 |
287 |
|
SWB ext. layer bits |
33 |
31 |
||||
|
FB ext. layer bits |
4 |
|||||
|
Padding bits |
3 |
|||||
Table 182: Bit allocation at 24.4 kbps
|
Description |
24.4 |
|||||
|
core |
CELP |
TCX |
HQ-MDCT |
CELP |
TCX |
CELP |
|
ext. layer |
NO |
NO |
NO |
SWB TBE |
IGF |
FB TBE |
|
Number of bits per frame |
488 |
|||||
|
BW |
2 |
|||||
|
Reserved flag |
1 |
|||||
|
CELP/MDCT core flag |
1 |
|||||
|
TCX/HQ-MDCT core flag |
1 |
1 |
1 |
|||
|
CELP->HQ core switching flag |
1-2 |
|||||
|
CT |
2 |
2 |
2 |
2 |
2 |
|
|
core bits |
482 |
481 |
481-2 |
422 |
481 |
423 |
|
SWB ext. layer bits |
57 |
55 |
||||
|
FB ext. layer bits |
4 |
|||||
|
Padding bits |
3 |
|||||
The information about using the CELP core or the MDCT-based core (HQ-MDCT or TCX) is transmitted as a 1-bit CELP/MDCT core flag. In the case of MDCT-based core, the next bit decides whether HQ-MDCT core or TCX core is used. In the case of TCX, the remaining 2 bits are used to represent the TCX coder type (TCX CT). In the case of HQ-MDCT core, the next one or two bits signal whether the previous frame was encoded with the CELP core or not. The second bit is used to signal its internal sampling rate (12.8 or 16 kHz) only when the previous frame was encoded with the CELP core.
7.1.4 Bit allocation at 32 kbps
The EVS codec encodes WB, SWB and FB content at 32 kbps with CELP core, HQ-MDCT core, or TCX core. For SWB and FB signals, the CELP core uses TBE or FD extension layer and the TCX core uses IGF extension layer.
Table 183: Bit allocation at 32 kbps
|
Description |
32 |
||||||||||||
|
core |
CELP |
HQ-MDCT |
TCX |
CELP |
TCX |
CELP |
|||||||
|
ext. layer |
NO |
NO |
NO |
SWB TBE/FD |
IGF |
FB TBE/FD |
|||||||
|
Number of bits per frame |
640 |
||||||||||||
|
CELP/MDCT core flag |
1 |
||||||||||||
|
CELP->HQ core switching flag |
1-2 |
||||||||||||
|
TCX/HQ-MDCT core flag |
1 |
1 |
1 |
||||||||||
|
BW |
4 |
2 |
2 |
4 |
2 |
4 |
|||||||
|
CT |
2 |
2 |
|||||||||||
|
TBE/FD ext. layer flag |
1 |
||||||||||||
|
core bits |
634 |
632-3 |
632 |
602 |
633 |
576 |
|||||||
|
SWB ext. layer bits |
55/31 |
55/31 |
|||||||||||
|
FB ext. layer bits |
4 |
||||||||||||
The information about using the CELP core or the MDCT-based core (HQ-MDCT or TCX) is transmitted as a 1-bit CELP/MDCT core flag. If CELP core is selected, the BW and CT parameters are combined together to form a single index. In the case of MDCT-based core, the next bit decides whether HQ-MDCT core is used or the TCX core is used. In the case of TCX, the remaining 2 bits are used to represent the TCX coder type (TCX CT). In the case of HQ-MDCT core, the next one or two bits signal whether the previous frame was encoded with the CELP core or not. The second bit is used to signal its internal sampling rate (12.8 or 16 kHz) only when the previous frame was encoded with the CELP core. Finally, 1 bit is used to distinguish between TBE and FD extension layer in the case of CELP core.
7.1.5 Bit allocation at 48, 64, 96 and 128 kbps
The EVS codec encodes WB, SWB and FB content at 48 kbps with TCX core only. For SWB and FB signals, the TCX core uses IGF extension layer. At 64 kbps, the EVS codec encodes WB, SWB and FB content with CELP core or HQ-MDCT core. For SWB and FB signals, the CELP core uses FD extension layer.
Table 184: Bit allocation at 48, 64, 96 and 128 kbps
|
Description |
48 |
64 |
96 |
128 |
||||||
|
core |
TCX |
TCX |
CELP |
HQ-MDCT |
CELP |
TCX |
TCX |
TCX |
TCX |
|
|
ext. layer |
NO |
IGF |
NO |
NO |
SWB FD FB FD |
NO |
IGF |
NO |
IGF |
|
|
Number of bits per frame |
960 |
1280 |
1920 |
2560 |
||||||
|
CELP/MDCT |
1 |
|||||||||
|
CELP->HQ core switching flag |
1-2 |
|||||||||
|
TCX/HQ-MDCT core flag |
1 |
|||||||||
|
BW |
2 |
4 |
2 |
4 |
2 |
2 |
||||
|
CT |
||||||||||
|
Reserved flag |
1 |
1 |
1 |
|||||||
|
TCX CT |
3 |
3 |
3 |
|||||||
|
core bits |
954 |
954 |
1275 |
1274-5 |
954 |
1914 |
1914 |
2554 |
2554 |
|
|
ext. layer bits |
326 |
|||||||||
At 64 kbps, the information about using the CELP core or the HQ-MDCT core is transmitted as a 1-bit CELP/MDCT core flag. If CELP core is selected, the BW and CT parameters are combined together to form a single index. In the case of HQ-MDCT core, the next one or two bits signal whether the previous frame was encoded with the CELP core or not. The second bit is used to signal its internal sampling rate (12.8 or 16 kHz) only when the previous frame was encoded with the CELP core.
7.2 Bit allocation for SID frames in the DTX operation
The SID payload consists of 48 bits independent of the bandwidth, bit rate and mode. The EVS codec supports three types of SID frames, one for the FD-CNG and two for the LP-CNG scheme.
Table 185: Bit allocation of FD-CNG SID frame
|
Description |
FD-CNG |
||||
|
Number of bits per frame |
48 |
||||
|
CNG type flag |
1 |
||||
|
Bandwidth indicator |
2 |
||||
|
CELP sample rate |
1 |
||||
|
Global gain |
7 |
||||
|
Spectral band energy |
37 |
The CNG type flag determines the usage of FD-CNG or LP-CNG. The bandwidth indicator indicates NB, WB, SWB or FB. The CELP sample rate can be 12.8 kHz or 16 kHz. The remaining bits are used for the spectral envelope information.
Table 186: Bit allocation of LP-CNG SID frame
|
Description |
WB SID |
SWB SID |
|
Number of bits per frame |
48 |
48 |
|
CNG type flag |
1 |
1 |
|
Bandwidth indicator |
1 |
1 |
|
Core sampling rate indicator |
1 |
1 |
|
Hangover frame counter |
3 |
3 |
|
LSF bits |
29 |
29 |
|
Low-band energy bits |
7 |
7 |
|
Low-band excitation spectral envelope bits |
6 |
N/A |
|
High-band energy bits |
N/A |
4 |
|
Unused bits |
N/A |
2 |
The CNG type flag determines if the SID belongs to FD-CNG or LP-CNG. The bandwidth indicator indicates whether the SID is a WB or a SWB SID. The core sampling rate indicator indicates whether the core is running at 12.8 kHz or 16 kHz sampling rate. The hangover frame counter indicates the number of hangover frames preceding the SID. The low-band excitation spectral envelope bits are only applicable to WB SID. The high-band energy bits are only applicable to SWB SID.
7.3 Bit allocation for the AMR-WB-interoperable option
The AMR-WB-interoperable option has the same bit allocation as AMR-WB. For more details see clause 7 of [9].
7.4 Bit Allocation for the Channel-Aware Mode
The EVS codec encodes WB and SWB content at 13.2 kbps channel aware mode with CELP core or TCX core for the primary frame as well as the partial redundant frame (RF). For both WB and SWB signals, the CELP core uses TBE extension layer and the TCX core uses IGF extension layer.
The [BW, CT, and RF] information is packed in 5 bits. When RF flag is set to zero, the channel aware mode at 13.2 kbps will be a bit exact implementation of the EVS 13.2 kbps mode described in subclause 7.1.2. An ACELP partial RF information can be transmitted along with an ACELP or a TCX primary copy. Similarly, a TCX partial RF information can be transmitted along with an ACELP or a TCX primary copy. The RF frame offset information (i.e., offset = 2 or 3, or 5, or 7) at which the partial copy is transmitted with the primary frame is included in the bit stream. Similarly, the RF frame type with 3 bits that signals (RF_NO_DATA, RF_TCXFD, RF_TCXTD1, RF_TCXTD2, RF_ALLPRED, RF_NOPRED, RF_GENPRED, and RF_NELP) is included in the bit stream. Depending on the RF frame type, the distribution of number of bits used for primary copy and partial RF information varies. The last three bits in the bit stream contains the RF frame type information. The two bits before the RF frame type information contains the RF offset data. The signalling [BW, CT, and RF] is carried in the first 5 bits in the bit stream for ease of parsing by the JBM.
Table 187: Bit allocation at 13.2 kbps channel aware mode
|
Description |
13.2 channel aware |
||
|
core |
CELP |
TCX |
|
|
ext. layer |
WB TBE |
SWB TBE |
IGF |
|
Number of bits per frame |
264 |
||
|
BW, CT, RF |
5 |
||
|
core bits (primary) |
183-248 |
171-236 |
189-254 |
|
WB/SWB ext. layer bits (primary) |
6 |
18 |
|
|
Core bits (partial RF) |
0-60 |
0-60 |
0-65 |
|
WB/SWB ext. layer bits (partial RF) |
0-5 |
0-5 |
|
|
RF offset |
2 |
||
|
RF frame type |
3 |
||
Annex A (normative):
RTP Payload Format and SDP Parameters