1、 ETSI TS 126 304 V14.0.0 (2017-04) Digital cellular telecommunications system (Phase 2+) (GSM); Universal Mobile Telecommunications System (UMTS); LTE; Extended Adaptive Multi-Rate - Wideband (AMR-WB+) codec; Floating-point ANSI-C code (3GPP TS 26.304 version 14.0.0 Release 14) floppy3TECHNICAL SPEC
2、IFICATION ETSI ETSI TS 126 304 V14.0.0 (2017-04)13GPP TS 26.304 version 14.0.0 Release 14Reference RTS/TSGS-0426304ve00 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 00017 - NAF 742 C Assoc
3、iation 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 electronic and/or prin
4、t 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
5、 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 I
6、f 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
7、 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. European Telecommunications Standards Institute 2017. All ri
8、ghts reserved. DECTTM, PLUGTESTSTM, UMTSTMand the ETSI logo are Trade Marks of ETSI registered for the benefit of its Members. 3GPPTM and LTE are Trade Marks of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners. GSM and the GSM logo are Trade Marks registered and
9、 owned by the GSM Association. ETSI ETSI TS 126 304 V14.0.0 (2017-04)23GPP TS 26.304 version 14.0.0 Release 14Intellectual Property Rights IPRs essential or potentially essential to the present document may have been declared to ETSI. The information pertaining to these essential IPRs, if any, is pu
10、blicly 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 ETSI Secretariat. Latest updates are available on the ET
11、SI 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 updates on the ETSI Web server) which are, or may be, o
12、r may become, essential to the present document. Foreword This Technical Specification (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
13、 should be interpreted as being references to the corresponding ETSI deliverables. 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“,
14、 “may“, “need not“, “will“, “will not“, “can“ and “cannot“ are to be interpreted 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 304
15、 V14.0.0 (2017-04)33GPP TS 26.304 version 14.0.0 Release 14Contents Intellectual Property Rights 2g3Foreword . 2g3Modal verbs terminology 2g3Foreword . 4g31 Scope 5g32 References 5g33 Definitions, symbols and abbreviations . 5g33.1 Definitions 5g33.2 Abbreviations . 5g34 C code structure 6g34.1 Cont
16、ents of the C source code 6g34.2 Program execution 6g34.3 Code hierarchy . 6g34.4 Variables, constants and tables . 20g34.4.1 Description of fixed tables used in the C-code . 20g34.4.2 Static variables used in the C-code . 21g35 File formats 27g35.1 Audio file (encoder input/decoder output) . 27g35.
17、2 Parameter bitstream file (encoder output/decoder input) . 27g3Annex A (informative): AMR-WB+ user guide . 29g3A.1 Encoder usage 29g3A.1.1 Simple mode . 29g3A.1.2 Flexible mode . 30g3A.2 Decoder usage 34g3Annex B (informative): Change history . 35g3History 37g3ETSI ETSI TS 126 304 V14.0.0 (2017-04)
18、43GPP TS 26.304 version 14.0.0 Release 14Foreword This Technical Specification has been produced by the 3rdGeneration Partnership 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
19、 contents of the present document, it will be re-released by the TSG with an identifying change of release date and an increase 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 approv
20、ed document under change control. y the second digit is incremented for all changes of substance, i.e. technical enhancements, corrections, updates, etc. z the third digit is incremented when editorial only changes have been incorporated in the document. ETSI ETSI TS 126 304 V14.0.0 (2017-04)53GPP T
21、S 26.304 version 14.0.0 Release 141 Scope The present document contains an electronic copy of the ANSI-C code for the Floating-point Extended Adaptive Multi-Rate Wideband codec. Alternatively, fixed-point ANSI-C code is specified in 3GPP TS 26.273 1. The floating-point codec/encoder/decoder specifie
22、d in this document or the fixed-point codec/encoder/decoder specified in 1 may be used depending on if the implementation platform is better suited for a floating-point or a fixed-point implementation. It has been verified that the fixed-point and floating-point codecs interoperate with each other w
23、ithout any artifacts. The floating-point ANSI-C code in the present document defines, besides the fixed-point c-code specified in 1, one valid reference implementation of the Extended Adaptive Multi-Rate Wideband transcoder (3GPP TS 26.290 2). Standard conformance is enforced by meeting the conforma
24、nce criteria defined in 3. 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. For a spe
25、cific 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 the present
26、 document. 1 3GPP TS 26.273: “ANSI-C code for the Fixed-point Extended AMR Wideband codec“. 2 3GPP TS 26.290: “ Audio codec processing functions; Extended AMR Wideband codec; Transcoding functions “. 3 3GPP TS 26.274: “ Audio codec processing functions; Extended Adaptive Multi-Rate - Wideband (AMR-W
27、B+) codec; Conformance testing “. 4 3GPP TS 26.244: “Transparent end-to-end packet switched streaming service (PSS); 3GPP file format (3GP)“ 3 Definitions, symbols and abbreviations 3.1 Definitions For the purposes of the present document, the terms and definitions are given in TS 26.290 2. 3.2 Abbr
28、eviations For the purposes of the present document, the following abbreviations apply: AMR-WB+ Extended Adaptive Multi-Rate WideBand ANSI American National Standards Institute GSM Global System for Mobile communications I/O Input/OutputRAM Random Access Memory ROM Read Only Memory ETSI ETSI TS 126 3
29、04 V14.0.0 (2017-04)63GPP TS 26.304 version 14.0.0 Release 144 C code structure This clause gives an overview of the structure of the C code and provides an overview of the contents and organization of the C code attached to the present document. The C code has been verified on the following systems
30、: - IBM PC/AT compatible computers with Windows 2000 SP4 and Microsoft Visual C+ v.6.0 compiler. ANSI-C was selected as the programming language because portability was desirable. 4.1 Contents of the C source code The C code distribution has the files divided in five different directories, all prese
31、nt in the directory c-code. The directories are: common, decoder, encoder, lib_amr and include. The distributed files with suffix “c“ contain the source code and the files with suffix “h“ are the header files. Project and workspace files are provided in the directory MSVC. 4.2 Program execution The
32、Extended Adaptive Multi-Rate Wideband codec is implemented in two programs: - (encoder) audio encoder; - (decoder) audio decoder. The programs should be called like: - encoder encoder options if -of ; - decoder decoder options if -of . The input files contain one or two channels of 16-bit linear enc
33、oded PCM audio samples stored in the wav file format and the parameter files contain encoded audio data and some additional flags. The encoder and decoder options will be explained by running the applications without input arguments. See the file readme.txt for more information on how to run the enc
34、oder and decoder programs. 4.3 Code hierarchy Tables 1 and 2 are call graphs that show the functions used in the audio codec. Each column represents a call level and each cell a function. The functions contain calls to the functions in rightwards neighbouring cells. The time order in the call graphs
35、 is from the top downwards as the processing of a frame advances. All standard C functions: memcpy(), fwrite(), etc. have been omitted. The initialization of the static RAM (i.e. calling the _init functions) is also omitted.ETSI ETSI TS 126 304 V14.0.0 (2017-04)73GPP TS 26.304 version 14.0.0 Release
36、 14Table 1: Encoder call structure ETSI ETSI TS 126 304 V14.0.0 (2017-04)83GPP TS 26.304 version 14.0.0 Release 14coder_amrwb_plus_stereo decim_12k8 interpol hp50_12k8 mix_ch E_UTIL_f_preemph mvr2r coder_lf mvr2 E_UTIL_autocorr lag_wind E_LPClev_dur E_LPC_a_isp_conversion E_LPC_chebyshev int_lpcnl E
37、_LPC_f_isp_a_conversion E_LPC_isp_f_pol_get find_wsp E_LPC_a_weight E_UTIL_residu E_UTIL_deemph E_GAIN_lp_decim2 E_GAIN_open_loop_search E_GAIN_olag_med E_GAINsort E_LPC_isp_isf_conversion qpisf_2s_46b VQ_stage1(qpisf_2s.c) sub_VQ(qpisf_2c.c) qpisf_246b ETSI ETSI TS 126 304 V14.0.0 (2017-04)93GPP TS
38、 26.304 version 14.0.0 Release 14E_LPC_isf_reorderPlus isf2ip coder_acelp E_UTIL_residu E_LPC_a_weight E_UTIL_deemph mvr2r set_zro E_UTIL_synthesis EUTILfpemh E_GAIN_closed_loop_search E_GAIN_norm_corr EUTIL_fconvle E_GAIN_norm_corr_interpolate pred_lt4 E_UTILf_convle E_ACELP_xy1_corr E_ACELP_codebo
39、ok_target_update E_GAIN_f_pitch_sharpening E_ACELP_xh_corr E_ACELP_4t E_ACELP_h_vec_corr1 E_ACELP_h_vec_corr2 E_ACELP_2pulse_search E_ACELP_quant_4p_4N E_ACELP_quant_1p_N1 E_ACELP_quant_3p_3N1 ETSI ETSI TS 126 304 V14.0.0 (2017-04)103GPP TS 26.304 version 14.0.0 Release 14E_ACELP_quant_2p_2N2 E_ACEL
40、P_quant_1p_N1 E_ACELP_quant_4p_4N1 E_ACELP_quant_2p_2N2 E_ACELP_quant_2p_2N2 E_ACELP_xy2_corr q_gain2_plus segsnr coder_tcx cos_window E_LPC_a_weight E_UTIL_residu E_UTIL_deemph fft9 fft_rel adap_low_freq_emph AVQ_cod RE8_PPV nearst_neighbor_2D8 adap_lo_freq_deemph ifft9 ifft_rel get_gain q_gain_tcx
41、 E_UTILf_premh E_UTIL_synthesis mvi2 coder_hf E_UTIL_autocorr lag_wind E_LPClev_dur ETSI ETSI TS 126 304 V14.0.0 (2017-04)113GPP TS 26.304 version 14.0.0 Release 14E_LPC_a_isp_conversion E_LPC_chebyshev int_lpcnl E_LPC_f_isp_a_conversion E_LPC_isp_f_pol_get mvr2 E_LPC_isp_isf_conversion q_isf_hf sub
42、_VQ(q_isf_hf.c) E_LPC_isf_reorderPlus isf2ip match_gain_6k4 set_zro E_UTIL_residu E_UTIL_synthesisPlus int_gai EUTILresdu E_UTIL_synthesisPlus E_LPC_a_weight E_UTIL_residuPlus q_gn_hf band_split_taligned_2k interpol coder_stereo_x cod_hi_stereo mvr2r residu cholc smooth_ener_filter quant_filt pmsvq
43、msvq ETSI ETSI TS 126 304 V14.0.0 (2017-04)123GPP TS 26.304 version 14.0.0 Release 14m_cbod inmsvq fir_filt my_max quant_gain pmsvq msvq m_cbod cod_tcx_stereo set_zro mvr2r ctcx_stereo cos_windo get_gain q_gain_pan fft3 fft_rel adap_low_freq_emph AVQ_cod RE8_PPV nearest_neighbor_2D8 adap_lo_freq_dee
44、mph ifft3 ifft_rel q_gain_tcx segnr mvi2 int2bin ec_prm AVQ_encmux split_idx_noovf sort(avq_cod.c) RE8d RE8_vor re8_identify_absolute Leader re8_cord ETSI ETSI TS 126 304 V14.0.0 (2017-04)133GPP TS 26.304 version 14.0.0 Release 14re8_k2y RE8_PPV nearest_neighbor_2D8 re8_compute_base_index re8_comput
45、e_rank_of_permutation_and_s calc_bits writ_all_nq writ_all_i init_pos_i_ovf chk_ovf chk_ov writI _ovf int2bi unpack4bits int2bin enc_prm_stereo_x int2bi AVQ_encmux split_idx_noovf sort(avq_cod.c) RE8d RE8_vor re8_identify_absolute Leader re8_cord k2y RE8_PPV nearest_neighbor_2D8 re8_compute_base_ind
46、ex re8_compute_rank_of_permutation_and_s ETSI ETSI TS 126 304 V14.0.0 (2017-04)143GPP TS 26.304 version 14.0.0 Release 14calc_bits writ_all_nq writ_all_i init_pos_i_ovf chk_ovf chk_ov writI f _k unpack4bits_d int2bin enc_prm_hf int2bi Table 2: Decoder call structure ETSI ETSI TS 126 304 V14.0.0 (201
47、7-04)153GPP TS 26.304 version 14.0.0 Release 14decoder_amrwb_plus bin2t dec_prm bin2tpack4bits(dec_prm.c) bin2t dec_prm_stereo_x bin2t pack4bs_dbin2t AVQ_demuxdec read_all_nq(avq_dec.c) read_nq(avq_dec.c) read_all_i(avq_dec.c) init_pos_i_ovf(avq_dec.c) chk_ovf(avq_dec.c) split_n(avq_dec.c) chk_ovf(a
48、vq_dec.c) read_I(avq_dec.c) read_ovf(avq_dec.c) read_k(avq_dec.c) RE8_dec re8_decode_base_index re8_decode_rank_of_permutation re8_k2y RE8_PPV nearest_neighbor_2D8 dec_prmhf bin2tdecoder_amrwb_plus_1 ETSI ETSI TS 126 304 V14.0.0 (2017-04)163GPP TS 26.304 version 14.0.0 Release 14mvr2 decod_lf mvr2 qpisf_46b E_LPC_isf_reorderPlus isf2p nt_lcnlE_LPC_f_isp_a_conversion E_LPC_isp_f_pol_get decoder_tcx AVQ_demuxc read_all_nq(avq_dec.c) read_nq(avq_dec.c) read_all_i(avq_dec.c) init_posivf(aq_dec.c) chk_ovf(aq_dec.) Split_n(avq_dec.) chk_ovf(avq_dec.c) read_I(avq_dec.c) read_k(vqdec.)
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1