Loading lib_rend/ivas_omasa_ana_fx.c +38 −1 Original line number Diff line number Diff line Loading @@ -674,7 +674,11 @@ static void ivas_omasa_dmx_fx( #ifdef NONBE_1362_FIX_OMASA_TO_MASA1_RENDERING IF( EQ_16( nchan_transport, 1 ) ) { v_add_32( data_out_f_fx[0], data_in_f_fx[i], data_out_f_fx[0], input_frame ); FOR( j = 0; j < input_frame; j++ ) { data_out_f_fx[0][j] = L_add_sat( data_out_f_fx[0][j], data_in_f_fx[i][j] ); move32(); } } ELSE { Loading Loading @@ -793,6 +797,9 @@ static void ivas_omasa_dmx_fx( #endif } #ifdef NONBE_1362_FIX_OMASA_TO_MASA1_RENDERING IF( NE_16( nchan_transport, 1 ) ) { max_e = data_e[0]; move16(); FOR( i = 1; i < nchan_transport; i++ ) Loading @@ -812,12 +819,42 @@ static void ivas_omasa_dmx_fx( move32(); } } } #else max_e = data_e[0]; move16(); FOR( i = 1; i < nchan_transport; i++ ) { IF( LT_16( max_e, data_e[i] ) ) { max_e = data_e[i]; move16(); } } FOR( i = 0; i < nchan_transport; i++ ) { FOR( j = 0; j < input_frame; j++ ) { data_out_f_fx[i][j] = L_shr( data_out_f_fx[i][j], sub( max_e, data_e[i] ) ); // exponent: max_e, Q: ( 15 - max_e ) move32(); } } #endif FOR( i = 0; i < nchan_transport; i++ ) { Copy32( data_out_f_fx[i], data_in_f_fx[i], input_frame ); #ifdef NONBE_1362_FIX_OMASA_TO_MASA1_RENDERING IF( NE_16( nchan_transport, 1 ) ) { *data_in_q = sub( 31, max_e ); move16(); } #else *data_in_q = sub( 31, max_e ); move16(); #endif } return; Loading Loading
lib_rend/ivas_omasa_ana_fx.c +38 −1 Original line number Diff line number Diff line Loading @@ -674,7 +674,11 @@ static void ivas_omasa_dmx_fx( #ifdef NONBE_1362_FIX_OMASA_TO_MASA1_RENDERING IF( EQ_16( nchan_transport, 1 ) ) { v_add_32( data_out_f_fx[0], data_in_f_fx[i], data_out_f_fx[0], input_frame ); FOR( j = 0; j < input_frame; j++ ) { data_out_f_fx[0][j] = L_add_sat( data_out_f_fx[0][j], data_in_f_fx[i][j] ); move32(); } } ELSE { Loading Loading @@ -793,6 +797,9 @@ static void ivas_omasa_dmx_fx( #endif } #ifdef NONBE_1362_FIX_OMASA_TO_MASA1_RENDERING IF( NE_16( nchan_transport, 1 ) ) { max_e = data_e[0]; move16(); FOR( i = 1; i < nchan_transport; i++ ) Loading @@ -812,12 +819,42 @@ static void ivas_omasa_dmx_fx( move32(); } } } #else max_e = data_e[0]; move16(); FOR( i = 1; i < nchan_transport; i++ ) { IF( LT_16( max_e, data_e[i] ) ) { max_e = data_e[i]; move16(); } } FOR( i = 0; i < nchan_transport; i++ ) { FOR( j = 0; j < input_frame; j++ ) { data_out_f_fx[i][j] = L_shr( data_out_f_fx[i][j], sub( max_e, data_e[i] ) ); // exponent: max_e, Q: ( 15 - max_e ) move32(); } } #endif FOR( i = 0; i < nchan_transport; i++ ) { Copy32( data_out_f_fx[i], data_in_f_fx[i], input_frame ); #ifdef NONBE_1362_FIX_OMASA_TO_MASA1_RENDERING IF( NE_16( nchan_transport, 1 ) ) { *data_in_q = sub( 31, max_e ); move16(); } #else *data_in_q = sub( 31, max_e ); move16(); #endif } return; Loading