1、 ETSI TS 126 410 V15.0.0 (2018-07) Digital cellular telecommunications system (Phase 2+) (GSM); Universal Mobile Telecommunications System (UMTS); LTE; General audio codec audio processing functions; Enhanced aacPlus general audio codec; Floating-point ANSI-C code (3GPP TS 26.410 version 15.0.0 Rele
2、ase 15) TECHNICAL SPECIFICATION ETSI ETSI TS 126 410 V15.0.0 (2018-07)13GPP TS 26.410 version 15.0.0 Release 15Reference RTS/TSGS-0426410vf00 Keywords GSM,LTE,UMTS 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 0
3、0017 - NAF 742 C Association but non lucratif enregistre la Sous-Prfecture 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
4、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
5、 (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/ETSIDe
6、liverableStatus.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, incl
7、uding 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 2018. All rights reserved. DECTTM
8、, PLUGTESTSTM, UMTSTMand the ETSI logo are trademarks of ETSI registered for the benefit of its Members. 3GPPTM and LTETMare 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. GSMand the GSM l
9、ogo are trademarks registered and owned by the GSM Association. ETSI ETSI TS 126 410 V15.0.0 (2018-07)23GPP TS 26.410 version 15.0.0 Release 15Intellectual Property Rights Essential patents IPRs essential or potentially essential to normative deliverables may have been declared to ETSI. The informat
10、ion pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found in ETSI SR 000 314: “Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in respect of ETSI standards“, which is available from the ETS
11、I Secretariat. Latest updates are available on the ETSI Web server (https:/ipr.etsi.org/). Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee can be given as to the existence of other IPRs not referenced in ETSI SR 000 314 (or the up
12、dates on the ETSI Web server) which are, or may be, or may become, essential to the present document. Trademarks The present document may include trademarks and/or tradenames which are asserted and/or registered by their owners. ETSI claims no ownership of these except for any which are indicated as
13、 being the property of ETSI, and conveys no right to use or reproduce any trademark and/or tradename. Mention of those trademarks in the present document does not constitute an endorsement by ETSI of products, services or organizations associated with those trademarks. Foreword This Technical Specif
14、ication (TS) has been produced by ETSI 3rd Generation Partnership Project (3GPP). The present document may refer to technical specifications or reports using their 3GPP identities, UMTS identities or GSM identities. These should be interpreted as being references to the corresponding ETSI deliverabl
15、es. The cross reference between GSM, UMTS, 3GPP and ETSI identities can be found under http:/webapp.etsi.org/key/queryform.asp. Modal verbs terminology In the present document “shall“, “shall not“, “should“, “should not“, “may“, “need not“, “will“, “will not“, “can“ and “cannot“ are to be interprete
16、d as described in clause 3.2 of the ETSI Drafting Rules (Verbal forms for the expression of provisions). “must“ and “must not“ are NOT allowed in ETSI deliverables except when used in direct citation. ETSI ETSI TS 126 410 V15.0.0 (2018-07)33GPP TS 26.410 version 15.0.0 Release 15Contents Intellectua
17、l Property Rights 2g3Foreword . 2g3Modal verbs terminology 2g3Foreword . 4g31 Scope 5g32 References 5g33 Definitions and abbreviations . 5g33.1 Definitions 5g33.2 Abbreviations . 5g34 Floating point ANSI-C code structure 6g34.1 Contents of the floating point ANSI-C source code . 6g34.2 Program execu
18、tion 8g34.3 Memory requirements 9g34.3.1 Constants and tables 9g34.3.2 Static memory . 15g34.3.3 Dynamic memory . 16g34.3.4 Maximum stack size . 17g35 File formats 23g35.1 Audio input file (encoder input/decoder output) 23g35.2 Bitstream file format (encoder output/decoder input) 23g35.3 Error patte
19、rn file (decoder input) 23g3Annex A (informative): Weighted MOPS and PROM 24g3Annex B (informative): Change history . 25g3History 28g3ETSI ETSI TS 126 410 V15.0.0 (2018-07)43GPP TS 26.410 version 15.0.0 Release 15Foreword This Technical Specification has been produced by the 3rdGeneration Partnershi
20、p Project (3GPP). The contents of the present document are subject to continuing work within the TSG and may change following formal TSG approval. Should the TSG modify the contents of the present document, it will be re-released by the TSG with an identifying change of release date and an increase
21、in version number as follows: Version x.y.z where: x the first digit: 1 presented to TSG for information; 2 presented to TSG for approval; 3 or greater indicates TSG approved document under change control. y the second digit is incremented for all changes of substance, i.e. technical enhancements, c
22、orrections, updates, etc. z the third digit is incremented when editorial only changes have been incorporated in the document. ETSI ETSI TS 126 410 V15.0.0 (2018-07)53GPP TS 26.410 version 15.0.0 Release 151 Scope The present document contains an electronic copy of the ANSI-C code for the Floating-p
23、oint Enhanced aacPlus codec 1. 2 References The following documents contain provisions which, through reference in this text, constitute provisions of the present document. - References are either specific (identified by date of publication, edition number, version number, etc.) or non-specific. - F
24、or a specific reference, subsequent revisions do not apply. - For a non-specific reference, the latest version applies. In the case of a reference to a 3GPP document (including a GSM document), a non-specific reference implicitly refers to the latest version of that document in the same Release as t
25、he present document. 1 3GPP TS 26.401: “Enhanced aacPlus general audio codec; General Description“. 2 3GPP TS 26.403: “Enhanced aacPlus general audio codec; Encoder Specification AAC part“. 3 3GPP TS 26.404: “Enhanced aacPlus general audio codec; Encoder Specification SBR part“. 4 3GPP TS 26.405: “E
26、nhanced aacPlus general audio codec; Encoder Specification Parametric Stereo part“. 5 ISO/IEC 14496-3:2001: “Information technology - Coding of audio-visual objects - Part 3: Audio“. 6 ISO/IEC 14496-3:2001/Amd.1:2003: “Bandwidth Extension“. 7 ISO/IEC 14496-3:2001/Amd.1:2003/DCOR1“. 8 ISO/IEC 14496-3
27、:2001/ Amd.2:2004: “Parametric Coding for High Quality Audio. 9 3GPP TS 26.402: Enhanced aacPlus general audio codec; Additional Decoder Tools“. 3 Definitions and abbreviations 3.1 Definitions For the purposes of the present document, the terms and definitions given in TS 26.401 1, TS 26.403 2, TS 2
28、6.404 3, TS 26.405 4 and TS 26.402 9 apply. 3.2 Abbreviations For the purposes of the present document, the following abbreviations apply: AAC Advanced Audio Coding aacPlus Combination of MPEG-4 AAC and MPEG-4 Bandwidth extension (SBR) Enhanced aacPlus Combination of MPEG-4 AAC, MPEG-4 Bandwidth ext
29、ension (SBR) and MPEG-4 Parametric Stereo MDCT Modified Discrete Cosine Transform QMF Quadrature Mirror Filter SBR Spectral Band Replication ANSI American National Standards Institute GSM Global System for Mobile communications I/O Input/OutputRAM Random Access Memory ETSI ETSI TS 126 410 V15.0.0 (2
30、018-07)63GPP TS 26.410 version 15.0.0 Release 15ROM Read Only Memory 4 Floating point ANSI-C code structure This clause gives an overview of the structure of the floating point ANSI-C code and provides an overview of the contents and organization of the C code attached to the present document. The C
31、 code has been verified on the following systems: - IBM PC/AT compatible computers with Windows XP, 2000 and Microsoft Visual C+ v.6.0 compiler. - IBM PC/AT compatible computers with Linux OS and GCC v.3.3 compiler. ANSI-C was selected as the programming language because portability was desirable. 4
32、.1 Contents of the floating point ANSI-C source code The C code distribution is organised in two directories for encoder and decoder and further into several subdirectories, reflecting the major building blocks of the Enhanced aacPlus codec. The file descriptions on root level as well as the directo
33、ry structure is given as follows: Table 1: Source code directory structure for the encoder (FloatFR_aacPlusenc) Directory Description README.txt information on how to compile Makefile UNIX style encoder Makefile FloatFR_aacPlusEnc.dsw Win32 MSVC 6.0 encoder workspace FloatFR_aacPlusEnc.dsp Win32 MSV
34、C 6.0 encoder makefile src/ directory for the encoder frontend FloatFR_fastaacenc/ AAC encoder library FloatFR_resamplib/ resampler library FloatFR_sbrenclib/ SBR encoder library Table 2: Source code directory structure for the decoder (FloatFR_aacPlusdec) Directory Description README.txt informatio
35、n on how to compile Makefile UNIX style encoder Makefile FloatFR_aacPlusdec_mpeg4.dsw Win32 MSVC 6.0 decoder workspace FloatFR_aacPlusdec_mpeg4.dsp Win32 MSVC 6.0 decodec makefile src/ directory for the decoder frontend FloatFR_aacdec AAC decoder library FloatFR_sbrdeclib/ SBR decoder library Table
36、3: Source code directory structure common for encoder and decoder Directory Description FloatFR_bitbuflib/ bitstream reading/writing library FloatFRlib/ general purpose functionalities lib/ precompiled libraries for audio and bitstream file format handling The distributed files with suffix “c“ conta
37、in the source code and the files with suffix “h“ are the header files. Within the respective libraries, the RAM data is contained in “xxx_ram“ files with suffix “c“, the ROM data is contained in “xxx_rom“ files with suffix “c“. Makefiles are provided for the platforms in which the C code has been ve
38、rified (listed above). ETSI ETSI TS 126 410 V15.0.0 (2018-07)73GPP TS 26.410 version 15.0.0 Release 15Note that the FloatFRlib/, FloatFR_bitbuflib/ and lib/ directory are identical for encoder and decoder. A list of source code files with the respective lines of code (pure C instructions) is given b
39、elow: Table 4: Encoder source code files and lines of code Directory Module Lines of code src/ main.c 332mp4file.c 255FloatFR_fastaacenclib/ qc_main.c 224 aacenc.c 136ms_stereo.c 50spreading.c 10interface.c 44 bit_cnt.c 588adj_thr.c 592quantize.c 56psy_configuration.c 175 sf_estim.c 508tns_param.c 4
40、5grp_data.c 114pre_echo_control.c 22 stprepro.c 149tns.c 358dyn_bits.c 281psy_main.c 232 channel_map.c 52block_switch.c 201band_nrg.c 34transform.c 151 bitenc.c 262line_pe.c 55stat_bits.c 107FloatFR_sbrenclib/ qmf_enc.c 565 ton_corr.c 287fram_gen.c 688env_bit.c 56env_est.c 630 mh_det.c 515hybrid.c 1
41、39bit_sbr.c 375ps_bitenc.c 225 sbr_main.c 355tran_det.c 183sbr_misc.c 49code_env.c 290 nf_est.c 195freq_sca.c 309invf_est.c 140ps_enc.c 299 FloatFR_resamplib/ iir32resample.c 71 resampler.c 68ETSI ETSI TS 126 410 V15.0.0 (2018-07)83GPP TS 26.410 version 15.0.0 Release 15Table 5: Decoder source code
42、files and lines of code Directory Module Lines of code src/ main.c 299fileifc.c 173spline_resampler.c 172 FloatFR_aacdec/ aacdecoder.c 172 streaminfo.c 10 channelinfo.c 102stereo.c 78longblock.c 234 shortblock.c 241pulsedata.c 24block.c 163 pns.c 89imdct.c 50tns.c 137 bitstream.c 15channel.c 92conce
43、al.c 245 dse.c 9 FloatFR_sbrdeclib/ env_dec.c 370FFR_aacPLUScheck.c 32 sbr_bitb.c 37env_calc.c 775lpp_tran.c 504 sbrdecoder.c 514sbr_dec.c 218sbr_crc.c 45 sbr_fft.c 615hybrid.c 140ps_bitdec.c 223 huff_dec.c 9 env_extr.c 655freq_sca.c 337 ps_dec.c 317qmf_dec.c 526Table 6: Common source code files and
44、 lines of code Directory Module Lines of code FloatFR_bitbuflib/ bitbuffer.c 111 FloatFRlib/ cfftn.c 649transcendent.c 15 4.2 Program execution The Enhanced aacPlus codec is implemented in two programs: - enhAacPlusEnc.exe - enhAacPlusDec.exe The programs should be called like: - enhAacPlusEnc.exe -
45、 enhAacPlusDec.exe error_pattern_file The audio files contain 16-bit linear encoded PCM samples with wav header, the bitstream files are of 3GPP type an the error patter file is a ASCII file, see section 5. The encoder and decoder command line handling is also explained by running the applications w
46、ithout input arguments. ETSI ETSI TS 126 410 V15.0.0 (2018-07)93GPP TS 26.410 version 15.0.0 Release 154.3 Memory requirements The data types of variables and tables used in the floating-point implementation are plain ANSI-C data types, the following types are used: - char - unsigned char - short -
47、int - unsigned int - float 4.3.1 Constants and tables This clause contains a listing of all constants and tables contributing to the ROM requirements of the encoder and decoder. ETSI ETSI TS 126 410 V15.0.0 (2018-07)103GPP TS 26.410 version 15.0.0 Release 15Table 7: Encoder constants and tables ETSI
48、 ETSI TS 126 410 V15.0.0 (2018-07)113GPP TS 26.410 version 15.0.0 Release 15Name Data type Size word Allocated in Source File Description LongWindowSine float 1024 aac_rom.c Window coefficients ShortWindowSine float 128 aac_rom.c Window coefficients LongWindowKBD float 1024 aac_rom.c Window coeffici
49、ents fftTwiddleTab float 513 aac_rom.c FFT twiddle coefficients quantTableQ float 16 aac_rom.c Quantizer table, used for efficient pow () implementation quantTableE float 17 aac_rom.c Quantizer table, used for efficient pow () implementation invQuantTableQ float 16 aac_rom.c Quantizer table, used for efficient pow () implementation invQuantTableE float 17 aac_rom.c Quantizer table, used for efficient pow () implementation pow4_3_tab float 64 aac_rom.c Quantizer table, used for efficient pow () implementation p_8000_mono_long float 4 aac_ro
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1