1、INTERNATIONAL STANDARD ISO/IEC 23003-3:2012 TECHNICAL CORRIGENDUM 3 Published 2015-04-01 INTERNATIONAL ORGANIZATION FOR STANDARDIZATION ORGANISATION INTERNATIONALE DE NORMALISATION INTERNATIONAL ELECTROTECHNICAL COMMISSION COMMISSION LECTROTECHNIQUE INTERNATIONALE Information technology MPEG audio t
2、echnologies Part 3: Unified speech and audio coding TECHNICAL CORRIGENDUM 3 Technologies de linformation Technologies audio MPEG Partie 3: Discours unifi et codage audio RECTIFICATIF TECHNIQUE 3 Technical Corrigendum 1 to ISO/IEC 23003-3:2012 was prepared by Joint Technical Committee ISO/IEC JTC 1,
3、Information technology, Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information. ICS 35.040 Ref. No. ISO/IEC 23003-3:2012/Cor.3:2015(E) ISO/IEC 2015 All rights reserved Published in SwitzerlandISO/IEC 23003-3:2012/Cor.3:2015(E) 2 ISO/IEC 2015 All rights reservedIn 5.2, Ta
4、ble 12, replace: Syntax No. of bits Mnemonic SbrDfltHeader() dflt_start_freq; 4 uimsbf dflt_stop_freq; 4 uimsbf dflt_header_extra1; 1 uimsbf dflt_header_extra2; 1 uimsbf if (dflt_header_extra1 = 1) dflt_freq_scale; 2 uimsbf dflt_alter_scale; 1 uimsbf dflt_noise_bands; 2 uimsbf if (dflt_header_extra2
5、 = 1) dflt_limiter_bands; 2 uimsbf dflt_limiter_gains; 2 uimsbf dflt_interpol_freq; 1 uimsbf dflt_smoothing_mode; 1 uimsbf with: Syntax No. of bits Mnemonic SbrDfltHeader() dflt_start_freq; 4 uimsbf dflt_stop_freq; 4 uimsbf dflt_header_extra1; 1 uimsbf dflt_header_extra2; 1 uimsbf if (dflt_header_ex
6、tra1 = 1) dflt_freq_scale; 2 uimsbf dflt_alter_scale; 1 uimsbf dflt_noise_bands; 2 uimsbf else dflt_freq_scale = 2; dflt_alter_scale = 1; dflt_noise_bands = 2; if (dflt_header_extra2 = 1) dflt_limiter_bands; 2 uimsbf dflt_limiter_gains; 2 uimsbf dflt_interpol_freq; 1 uimsbf dflt_smoothing_mode; 1 ui
7、msbf else dflt_limiter_bands = 2; dflt_limiter_gains = 2; dflt_interpol_freq = 1; dflt_smoothing_mode = 1; ISO/IEC 23003-3:2012/Cor.3:2015(E) ISO/IEC 2015 All rights reserved 3In 5.3.2 replace: Table 27 Syntax of tw_data() Syntax No. of bits Mnemonic tw_data( ) tw_data_present; 1 uimsbf if ( tw_data
8、_present = 1 ) for ( i = 1 ; i NUM_TW_NODES ; i+ ) tw_ratioi ; 3 uimsbf with Table 27 Syntax of tw_data() Syntax No. of bits Mnemonic tw_data( ) tw_data_present; 1 uimsbf if ( tw_data_present = 1 ) for ( i = 0 ; i NUM_TW_NODES ; i+ ) tw_ratio i ; 3 uimsbf In 5.3.3, Table 45 replace: sbr_grid(0, 0);
9、sbr_dtdf(0,0, indepFlag); sbr_dtdf(1,0, indepFlag); sbr_invf(0); with: sbr_grid(0, 0); NOTE 1 if(!bs_coupling) sbr_grid(1, 0); sbr_dtdf(0,0, indepFlag); sbr_dtdf(1,0, indepFlag); sbr_invf(0); if(!bs_coupling) sbr_invf(1); NOTE 1 NOTE 1: In coupling mode only the data for channel 0 is read. This data
10、 shall be copied to the same syntax element for channel 1. ISO/IEC 23003-3:2012/Cor.3:2015(E) 4 ISO/IEC 2015 All rights reservedIn 5.3.3, Table 46 replace: switch (bs_frame_class) 2 uimsbf with: switch (bs_frame_classch) 2 uimsbf In 5.3.3, Table 46, delete: if (bs_num_envch = 1) bs_amp_res = 0; In 5
11、.3.3, Table 47, replace: Syntax No. of bits Mnemonic sbr_envelope(ch, bs_coupling, bs_amp_res) if (bs_coupling) i f ( c h ) if (bs_amp_res) with: Syntax No. of bits Mnemonic sbr_envelope(ch, bs_coupling, bs_amp_res) amp_res = bs_amp_res; if (bs_frame_class ch = FIXFIX if (bs_coupling) i f ( c h ) Fu
12、rther, replace “bs_amp_res“ with “amp_res“ in the rest of the syntax element sbr_envelope(). In 7.5.5.2, add to the requirements: The largest interval from the f Master , i.e. f Master ( N Master ) - f Master ( N Master- 1) shall satisfy f Master ( N Master ) - f Master ( N Master- 1) k 0 2 In 7.13.
13、3 replace: In addition to the 1 to 4 LPC filters of the superframe, an optional LPC0 is transmitted for the first super-frame of each segment encoded using the LPD core codec. This is indicated to the LPC decoding procedure by a flag first_lpd_flag set to 1. with: In addition to the 1 to 4 LPC filte
14、rs of the superframe, an optional LPC0 is transmitted for the first super-frame of each segment encoded using the LPD core codec. This is indicated to the LPC decoding procedure by a flag first_lpd_flag set to 1. In case of first_lpd_flag=0, LPC0 shall be equal to LPC4 of the previous super frame. I
15、SO/IEC 23003-3:2012/Cor.3:2015(E) ISO/IEC 2015 All rights reserved 5In 7.14.4, replace: In case of a transition from FD to ACELP, the past excitation buffer u(n) and the buffer containing the past pre-emphasized synthesis s(n) are updated using the past FD synthesis (including FAC) and LPC0 prior to
16、 the decoding of the ACELP excitation. With: In case of a transition from FD to LPD, the past excitation buffer u(n) and the buffer containing the past pre- emphasized synthesis s(n) are updated using the past FD synthesis (including FAC or the overlapped TCX- signal) and LPC0 prior to the decoding
17、of the ACELP excitation. In 7.14.5.1, replace: When the pitch value is encoded on 6 bits, a pitch resolution of 1/4 is always used in the range T1-8, T1+7, where T1 is nearest integer to the fractional pitch lag of the previous subframe. With: When the pitch value is encoded on 6 bits, a pitch resol
18、ution of 1/4 is always used in the range T1-8, T1+7, where T1 is rounded down integer of the fractional pitch lag of the previous subframe. To be able to use as many different pitch lags as possible T1 has to be between TMIN+8 and TMAX-7. So in case T1 TMAX-7 set T1=TMAX-7. In 7.14.6.3, replace: ) 1
19、 ( ) 1 ( ( ) ( ) ( n c n c c n c n c pe() ) 1 ( ) 1 ( ( ) ( ) ( ) ( n c n c c g n c g n v g n u pe sc sc pWith: 63 if 63 0 if 0 if ) 62 ( ) 3 6 ( ) 1 ( ) 1 ( ( ) ( ) 1 ( ) 0 ( ) ( n n n c c c n c n c c n c c c c n c pe pe pe() 63 if 63 0 if 0 if ) 62 ( ) 63 ( ) 63 ( ) 1 ( ) 1 ( ( ) ( ) ( ) 1 ( ) 0 (
20、 ) 0 ( ) ( n n n c c g c g v g n c n c c g n c g n v g c c g c g v g n u pe sc sc p pe sc sc p pe sc sc pAfter the following paragraph in 7.17: After LP synthesis, the reconstructed signal can be post-processed using low-frequency pitch enhancement. The received bass-post filter control information
21、controls whether bass-post filtering which results in a pitch enhancement in the low frequency range is enabled or not. For speech signals, the post processing filter reduces inter-harmonic noise in the decoded signal, which leads to an improved quality. However, for music signals, which are commonl
22、y of multi-pitch nature, the post filtering may suppress signal components that reside below the dominating pitch frequency or between its harmonics. For the post filtering a two-band decomposition is used and adaptive filtering is applied only to the lower band. This results in a total post-process
23、ing that is mostly targeted at frequencies near the first harmonics of the synthesized signal. Add: To avoid additional delay due to bass-post filtering, bass-post filter operation is modified for high values of T. Therefore, T limis defined as follows. In case of LPD: ISO/IEC 23003-3:2012/Cor.3:201
24、5(E) 6 ISO/IEC 2015 All rights reserved For the first 64 2 Msamples of a superframe: z fac N L M T lim For the last 64 2 Msamples of a superframe: z next fac N L M T _ lim2 In case of FD (the FAC-area): z M N T 2 limWhere M=coreCoderFrameLength, L facis the length of the FAC area from the last frame
25、 of the current superframe. With L fac = 0 for ACELP and L fac = 96/128 for TCX (coreCoderFrameLength 768/1024). L fac_nextis the length of the FAC area from the last frame of the next superframe. N zis the number of samples of the superframe up to and including the sample currently being Bass Post
26、filtered.And in chapter 7.17 replace: where P LT (z) is the transfer function of the long-term predictor filter given by T T LT z z z P 5 . 0 5 . 0 1 ) ( With: where P LT (z) is the transfer function of the long-term predictor filter given by Further down in 7.17, replace: 63 0 2 63 0 i Tp i i Tp i
27、i PF x x x g With: PFmax 63 0 2 63 0 g , min i Tp i i Tp i i PF x x x g Where g PFmaxis defined as: g PFmaxis used to avoid problems on signal bursts. ISO/IEC 23003-3:2012/Cor.3:2015(E) ISO/IEC 2015 All rights reserved 7After the following paragraph in 7.17: Note that in TCX mode and during frequenc
28、y domain coding the value of is set to zero. During transitions between TCX and ACELP the FAC area (coreCoderFrameLength/8 samples) is postfiltered using the nearest decoded pitch lag (Tp) from the ACELP frame. For transitions between FD mode to and from ACELP the FAC area (either coreCoderFrameLeng
29、th/16 for transitions from and to EIGHT_SHORT_SEQUENCEs, or coreCoderFrameLength/8 for all other cases) is postfiltered using the nearest decoded pitch lag (Tp) from the ACELP frame. The bass post-filter operates on an ACELP subframe grid (blocks of 64 samples). When coreCoderFrameLength=768, the FA
30、C area is not an integer multiple of the subframe: It is equal to 48 samples (0.75 subframes) for transitions from and to EIGHT_SHORT_SEQUENCEs and equal to 96 samples (1.5 subframes) otherwise. In these cases, subframes that are only partly included in the FAC area are postfiltered in their entiret
31、y using the same filtering parameters. Therefore, when coreCoderFrameLength=768, one entire subframe is postfiltered for transitions from and to EIGHT_SHORT_SEQUENCEs and two entire subframes are postfiltered in all other cases. Add: A FAC area is postfiltered if and only if the adjacent ACELP frame
32、 is postfiltered, too. In particular, this means that the FAC area is also postfiltered if the bpf_control_info for an ACELP frame is set to 1 and the bpf_control_info for an adjacent TCX frame is set to 0 (on superframe borders). In contrast, the FAC area is never postfiltered if the bpf_control_info for the adjacent ACELP subframe is set to 0.