ETSI TS 102 366 V1.4.1 (2017-09)
Digital Audio Compression (AC-3, Enhanced AC-3) Standard
Digital Audio Compression (AC-3, Enhanced AC-3) Standard
RTS/JTC-041
General Information
Standards Content (Sample)
ETSI TS 102 366 V1.4.1 (2017-09)
TECHNICAL SPECIFICATION
Digital Audio Compression
(AC-3, Enhanced AC-3) Standard
---------------------- Page: 1 ----------------------
2 ETSI TS 102 366 V1.4.1 (2017-09)
Reference
RTS/JTC-041
Keywords
audio, broadcasting, coding, digital
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88
Important notice
The present document can be downloaded from:
http://www.etsi.org/standards-search
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the only prevailing document is the
print of the Portable Document Format (PDF) version kept on a specific network drive within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
https://portal.etsi.org/TB/ETSIDeliverableStatus.aspx
If you find errors in the present document, please send your comment to one of the following services:
https://portal.etsi.org/People/CommiteeSupportStaff.aspx
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying
and microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2017.
© European Broadcasting Union 2017.
All rights reserved.
TM TM TM
DECT , PLUGTESTS , UMTS and the ETSI logo are trademarks of ETSI registered for the benefit of its Members.
TM
3GPP and LTE™ are trademarks of ETSI registered for the benefit of its Members and
of the 3GPP Organizational Partners.
oneM2M logo is protected for the benefit of its Members.
GSM® and the GSM logo are trademarks registered and owned by the GSM Association.
ETSI
---------------------- Page: 2 ----------------------
3 ETSI TS 102 366 V1.4.1 (2017-09)
Contents
Intellectual Property Rights . 17
Foreword . 17
Modal verbs terminology . 17
Introduction . 18
1 Scope . 21
2 References . 21
2.1 Normative references . 21
2.2 Informative references . 21
3 Definitions and abbreviations . 22
3.1 Definitions . 22
3.2 Abbreviations . 24
4 Bit stream syntax . 27
4.1 Synchronization frame . 27
4.2 Semantics of syntax specification. 27
4.3 Syntax specification . 28
4.3.0 AC-3_bit_stream and syncframe . 28
4.3.1 syncinfo - Synchronization information . 28
4.3.2 bsi - Bit stream information . 28
4.3.3 audblk - Audio block . 29
4.3.4 auxdata - Auxiliary data . 32
4.3.5 errorcheck - Error detection code . 32
4.4 Description of bit stream elements . 32
4.4.0 Introduction. 32
4.4.1 syncinfo - Synchronization information . 32
4.4.1.1 syncword - Synchronization word - 16 bits . 32
4.4.1.2 crc1 - Cyclic redundancy check 1 bit to 16 bits . 32
4.4.1.3 fscod - Sample rate code - 2 bits . 33
4.4.1.4 frmsizecod - Frame size code - 6 bits . 33
4.4.2 bsi - Bit stream information . 33
4.4.2.1 bsid - Bit stream identification - 5 bits . 33
4.4.2.2 bsmod - Bit stream mode - 3 bits . 33
4.4.2.3 acmod - Audio coding mode - 3 bits . 33
4.4.2.4 cmixlev - Centre mix level - 2 bits . 34
4.4.2.5 surmixlev - Surround mix level - 2 bits . 34
®
4.4.2.6 dsurmod - Dolby Surround mode - 2 bits . 34
4.4.2.7 lfeon - Low frequency effects channel on - 1 bit . 35
4.4.2.8 dialnorm - Dialogue normalization - 5 bits . 35
4.4.2.9 compre - Compression gain word exists - 1 bit . 35
4.4.2.10 compr - Compression gain word - 8 bits . 35
4.4.2.11 langcode - Language code exists - 1 bit . 35
4.4.2.12 langcod - Language code - 8 bits . 35
4.4.2.13 audprodie - Audio production information exists - 1 bit . 35
4.4.2.14 mixlevel - Mixing level - 5 bits . 36
4.4.2.15 roomtyp - Room type - 2 bits . 36
4.4.2.16 dialnorm2 - Dialogue normalization, Ch2 - 5 bits . 36
4.4.2.17 compr2e - Compression gain word exists, Ch2 - 1 bit . 36
4.4.2.18 compr2 - Compression gain word, Ch2 - 8 bits. 36
4.4.2.19 langcod2e - Language code exists, Ch2 - 1 bit . 36
4.4.2.20 langcod2 - Language code, Ch2 - 8 bits . 36
4.4.2.21 audprodi2e - Audio production information exists, Ch2 - 1 bit . 36
4.4.2.22 mixlevel2 - Mixing level, Ch2 - 5 bits . 36
4.4.2.23 roomtyp2 - Room type, Ch2 - 2 bits . 37
4.4.2.24 copyrightb - Copyright bit - 1 bit . 37
ETSI
---------------------- Page: 3 ----------------------
4 ETSI TS 102 366 V1.4.1 (2017-09)
4.4.2.25 origbs - Original bit stream - 1 bit . 37
4.4.2.26 timecod1e, timecod2e - Time code (first and second) halves exists - 2 bits . 37
4.4.2.27 timecod1 - Time code first half - 14 bits . 37
4.4.2.28 timecod2 - Time code second half - 14 bits . 37
4.4.2.29 addbsie - Additional bit stream information exists - 1 bit . 37
4.4.2.30 addbsil - Additional bit stream information length - 6 bits . 37
4.4.2.31 addbsi - Additional bit stream information - ((addbsil + 1) x 8) bits . 37
4.4.3 audblk - Audio block . 38
4.4.3.1 blksw[ch] - Block switch flag - 1 bit . 38
4.4.3.2 dithflag[ch] - Dither flag - 1 bit . 38
4.4.3.3 dynrnge - Dynamic range gain word exists - 1 bit . 38
4.4.3.4 dynrng - Dynamic range gain word - 8 bits . 38
4.4.3.5 dynrng2e - Dynamic range gain word exists, Ch2 - 1 bit . 38
4.4.3.6 dynrng2 - dynamic range gain word, Ch2 - 8 bits . 38
4.4.3.7 cplstre - Coupling strategy exists - 1 bit . 38
4.4.3.8 cplinu - Coupling in use - 1 bit . 38
4.4.3.9 chincpl[ch] - Channel in coupling - 1 bit . 38
4.4.3.10 phsflginu - Phase flags in use - 1 bit . 38
4.4.3.11 cplbegf - Coupling begin frequency code - 4 bits . 39
4.4.3.12 cplendf - Coupling end frequency code - 4 bits . 39
4.4.3.13 cplbndstrc[sbnd] - Coupling band structure - 1 bit . 39
4.4.3.14 cplcoe[ch] - Coupling coordinates exist - 1 bit . 39
4.4.3.15 mstrcplco[ch] - Master coupling coordinate - 2 bits . 40
4.4.3.16 cplcoexp[ch][bnd] - Coupling coordinate exponent - 4 bits . 40
4.4.3.17 cplcomant[ch][bnd] - Coupling coordinate mantissa - 4 bits . 40
4.4.3.18 phsflg[bnd] - Phase flag - 1 bit . 40
4.4.3.19 rematstr - Rematrixing strategy - 1 bit . 40
4.4.3.20 rematflg[rbnd] - Rematrix flag - 1 bit . 40
4.4.3.21 cplexpstr - Coupling exponent strategy - 2 bits . 40
4.4.3.22 chexpstr[ch] - Channel exponent strategy - 2 bits . 41
4.4.3.23 lfeexpstr - Low frequency effects channel exponent strategy - 1 bit . 41
4.4.3.24 chbwcod[ch] - Channel bandwidth code - 6 bits . 41
4.4.3.25 cplabsexp - Coupling absolute exponent - 4 bits . 41
4.4.3.26 cplexps[grp] - Coupling exponents - 7 bits . 41
4.4.3.27 exps[ch][grp] - Channel exponents - 4 bits or 7 bits . 41
4.4.3.28 gainrng[ch] - Channel gain range code - 2 bits . 41
4.4.3.29 lfeexps[grp] - Low frequency effects channel exponents - 4 bits or 7 bits . 41
4.4.3.30 baie - Bit allocation information exists - 1 bit . 41
4.4.3.31 sdcycod - Slow decay code - 2 bits . 41
4.4.3.32 fdcycod - Fast decay code - 2 bits . 42
4.4.3.33 sgaincod - Slow gain code - 2 bits . 42
4.4.3.34 dbpbcod - dB per bit code - 2 bits . 42
4.4.3.35 floorcod - Masking floor code - 3 bits . 42
4.4.3.36 snroffste - SNR offset exists - 1 bit . 42
4.4.3.37 csnroffst - Coarse SNR offset - 6 bits . 42
4.4.3.38 cplfsnroffst - Coupling fine SNR offset - 4 bits . 42
4.4.3.39 cplfgaincod - Coupling fast gain code - 3 bits . 42
4.4.3.40 fsnroffst[ch] - Channel fine SNR offset - 4 bits . 42
4.4.3.41 fgaincod[ch] - Channel fast gain code - 3 bits . 42
4.4.3.42 lfefsnroffst - Low frequency effects channel fine SNR offset - 4 bits . 42
4.4.3.43 lfefgaincod - Low frequency effects channel fast gain code - 3 bits . 42
4.4.3.44 cplleake - Coupling leak initialization exists - 1 bit . 42
4.4.3.45 cplfleak - Coupling fast leak initialization - 3 bits . 43
4.4.3.46 cplsleak - Coupling slow leak initialization - 3 bits . 43
4.4.3.47 deltbaie - Delta bit allocation information exists - 1 bit . 43
4.4.3.48 cpldeltbae - Coupling delta bit allocation exists - 2 bits. 43
4.4.3.49 deltbae[ch] - Delta bit allocation exists - 2 bits . 43
4.4.3.50 cpldeltnseg - Coupling delta bit allocation number of segments - 3 bits . 43
4.4.3.51 cpldeltoffst[seg] - Coupling delta bit allocation offset - 5 bits . 43
4.4.3.52 cpldeltlen[seg] - Coupling delta bit allocation length - 4 bits . 43
4.4.3.53 cpldeltba[seg] - Coupling delta bit allocation - 3 bits . 43
4.4.3.54 deltnseg[ch] - Channel delta bit allocation number of segments - 3 bits . 44
ETSI
---------------------- Page: 4 ----------------------
5 ETSI TS 102 366 V1.4.1 (2017-09)
4.4.3.55 deltoffst[ch][seg] - Channel delta bit allocation offset - 5 bits . 44
4.4.3.56 deltlen[ch][seg] - Channel delta bit allocation length - 4 bits . 44
4.4.3.57 deltba[ch][seg] - Channel delta bit allocation - 3 bits . 44
4.4.3.58 skiple - Skip length exists - 1 bit . 44
4.4.3.59 skipl - Skip length - 9 bits . 44
4.4.3.60 skipfld - Skip field - (skipl x 8) bits . 44
4.4.3.61 chmant[ch][bin] - Channel mantissas - 0 bits to 16 bits . 44
4.4.3.62 cplmant[bin] - Coupling mantissas - 0 bits to 16 bits . 45
4.4.3.63 lfemant[bin] - Low frequency effects channel mantissas - 0 bits to 16 bits . 45
4.4.4 auxdata - Auxiliary data field . 45
4.4.4.0 Introduction . 45
4.4.4.1 auxbits - Auxiliary data bits - nauxbits bits . 45
4.4.4.2 auxdatal - Auxiliary data length - 14 bits . 46
4.4.4.3 auxdatae - Auxiliary data exists - 1 bit . 46
4.4.5 errorcheck - Frame error detection field . 46
4.4.5.1 crcrsv - CRC reserved bit - 1 bit . 46
4.4.5.2 crc2 - Cyclic redundancy check 2 - 16 bits . 46
4.5 Bit stream constraints . 46
5 Decoding the AC-3 bit stream . 47
5.1 Introduction . 47
5.2 Summary of the decoding process . 47
5.2.1 Input bit stream . 47
5.2.1.0 Introduction . 47
5.2.1.1 Continuous or burst input . 47
5.2.1.2 Byte or word alignment . 47
5.2.2 Synchronization and error detection . 48
5.2.3 Unpack BSI, side information. 49
5.2.4 Decode exponents . 50
5.2.5 Bit allocation . 50
5.2.6 Process mantissas . 50
5.2.7 Decoupling . 50
5.2.8 Rematrixing . 50
5.2.9 Dynamic range compression . 50
5.2.10 Inverse transform . 50
5.2.11 Window, overlap/add . 51
5.2.12 Downmixing . 51
5.2.13 PCM output buffer . 51
5.2.14 Output PCM . 51
6 Algorithmic details . 51
6.0 Introduction . 51
6.1 Exponent coding . 51
6.1.1 Overview . 51
6.1.2 Exponent strategy . 52
6.1.3 Exponent decoding . 53
6.2 Bit allocation . 55
6.2.1 Overview . 55
6.2.2 Parametric bit allocation . 56
6.2.2.0 Introduction . 56
6.2.2.1 Initialization . 56
6.2.2.2 Exponent mapping into psd . 57
6.2.2.3 psd integration . 57
6.2.2.4 Compute excitation function . 58
6.2.2.5 Compute masking curve . 59
6.2.2.6 Apply delta bit allocation . 60
6.2.2.7 Compute bit allocation . 60
6.2.3 Bit allocation tables . 61
6.3 Quantization and decoding of mantissas . 65
6.3.1 Overview . 65
6.3.2 Expansion of mantissas for asymmetric quantization (6 ≤ bap ≤ 15) . 66
6.3.3 Expansion of mantissas for symmetrical quantization (1 ≤ bap ≤ 5) . 66
ETSI
---------------------- Page: 5 ----------------------
6 ETSI TS 102 366 V1.4.1 (2017-09)
6.3.4 Dither for zero bit mantissas (bap = 0) . 66
6.3.5 Ungrouping of mantissas . 68
6.4 Channel coupling .
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.