Loading lib_com/bitstream.c +50 −1 Original line number Diff line number Diff line Loading @@ -1571,6 +1571,8 @@ ivas_error push_indice( /* updates */ hBstr->nb_ind_tot = add( hBstr->nb_ind_tot, 1 ); hBstr->nb_bits_tot = add( hBstr->nb_bits_tot, nb_bits ); move16(); move16(); return error; } Loading Loading @@ -1632,7 +1634,54 @@ ivas_error push_indice( * * Push a new indice into the buffer at the next position *-------------------------------------------------------------------*/ #ifdef IVAS_FLOAT_FIXED ivas_error push_next_indice( BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */ UWord16 value, /* i : value of the quantized indice */ Word16 nb_bits /* i : number of bits used to quantize the indice */ ) { Word16 prev_id; ivas_error error; error = IVAS_ERR_OK; move32(); /* check the limits of the list of indices */ IF( ( error = check_ind_list_limits( hBstr ) ) != IVAS_ERR_OK ) { return error; } /* get the id of the previous indice -> it will be re-used */ IF( hBstr->nb_ind_tot > 0 ) { prev_id = hBstr->ind_list[hBstr->nb_ind_tot - 1].id; } ELSE { prev_id = 0; } move16(); /* store the values in the list */ hBstr->ind_list[hBstr->nb_ind_tot].id = prev_id; hBstr->ind_list[hBstr->nb_ind_tot].value = value; hBstr->ind_list[hBstr->nb_ind_tot].nb_bits = nb_bits; move16(); move16(); move16(); /* updates */ hBstr->nb_ind_tot = add( hBstr->nb_ind_tot, 1 ); hBstr->nb_bits_tot = add( hBstr->nb_bits_tot, nb_bits ); move16(); move16(); return error; } #else ivas_error push_next_indice( BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */ uint16_t value, /* i : value of the quantized indice */ Loading Loading @@ -1672,7 +1721,7 @@ ivas_error push_next_indice( return error; } #endif /*-------------------------------------------------------------------* * push_next_bits() Loading lib_com/cnst.h +2 −0 Original line number Diff line number Diff line Loading @@ -156,6 +156,8 @@ #define RANDOM_INITSEED 21845 /* Seed for random generators */ #ifndef FLT_MIN #define FLT_MIN ( 1.175494351e-38F ) #define FLT_MIN_10_EXP (-37) // min decimal exponent #define FLT_MIN_EXP (-125) // min binary exponent #endif #ifndef FLT_MAX #define FLT_MAX ( 3.402823466e+38F ) Loading lib_com/codec_tcx_common_flt.c +1 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ void tcxInvertWindowGrouping_flt( float xn_buf[], float spectrum[], const int16_t L_frame, const int16_t fUseTns, const int8_t fUseTns, const int16_t last_core, const int16_t index, const int16_t frame_cnt, Loading lib_com/enh64.c +1 −0 Original line number Diff line number Diff line Loading @@ -1112,6 +1112,7 @@ Word64 W_mac_32_32( Word64 L64_var1, Word32 L_var2, Word32 L_var3 ) return L64_var_out; } /*___________________________________________________________________________ | | | Function Name : W_shl_sat_l | Loading lib_com/enh64.h +0 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,6 @@ Word64 W_msu0_16_16( Word64 L64_acc, Word16 var1, Word16 var2 ); Word64 W_mult_16_16( Word16 var1, Word16 var2 ); Word64 W_mac_16_16( Word64 L64_acc, Word16 var1, Word16 var2 ); Word64 W_msu_16_16( Word64 L64_acc, Word16 var1, Word16 var2 ); /* BASOP W_mac_32_32 is not part of STL 2023 library, might be proposed in next update */ Word64 W_mac_32_32( Word64 L64_acc, Word32 var1, Word32 var2 ); Loading Loading
lib_com/bitstream.c +50 −1 Original line number Diff line number Diff line Loading @@ -1571,6 +1571,8 @@ ivas_error push_indice( /* updates */ hBstr->nb_ind_tot = add( hBstr->nb_ind_tot, 1 ); hBstr->nb_bits_tot = add( hBstr->nb_bits_tot, nb_bits ); move16(); move16(); return error; } Loading Loading @@ -1632,7 +1634,54 @@ ivas_error push_indice( * * Push a new indice into the buffer at the next position *-------------------------------------------------------------------*/ #ifdef IVAS_FLOAT_FIXED ivas_error push_next_indice( BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */ UWord16 value, /* i : value of the quantized indice */ Word16 nb_bits /* i : number of bits used to quantize the indice */ ) { Word16 prev_id; ivas_error error; error = IVAS_ERR_OK; move32(); /* check the limits of the list of indices */ IF( ( error = check_ind_list_limits( hBstr ) ) != IVAS_ERR_OK ) { return error; } /* get the id of the previous indice -> it will be re-used */ IF( hBstr->nb_ind_tot > 0 ) { prev_id = hBstr->ind_list[hBstr->nb_ind_tot - 1].id; } ELSE { prev_id = 0; } move16(); /* store the values in the list */ hBstr->ind_list[hBstr->nb_ind_tot].id = prev_id; hBstr->ind_list[hBstr->nb_ind_tot].value = value; hBstr->ind_list[hBstr->nb_ind_tot].nb_bits = nb_bits; move16(); move16(); move16(); /* updates */ hBstr->nb_ind_tot = add( hBstr->nb_ind_tot, 1 ); hBstr->nb_bits_tot = add( hBstr->nb_bits_tot, nb_bits ); move16(); move16(); return error; } #else ivas_error push_next_indice( BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */ uint16_t value, /* i : value of the quantized indice */ Loading Loading @@ -1672,7 +1721,7 @@ ivas_error push_next_indice( return error; } #endif /*-------------------------------------------------------------------* * push_next_bits() Loading
lib_com/cnst.h +2 −0 Original line number Diff line number Diff line Loading @@ -156,6 +156,8 @@ #define RANDOM_INITSEED 21845 /* Seed for random generators */ #ifndef FLT_MIN #define FLT_MIN ( 1.175494351e-38F ) #define FLT_MIN_10_EXP (-37) // min decimal exponent #define FLT_MIN_EXP (-125) // min binary exponent #endif #ifndef FLT_MAX #define FLT_MAX ( 3.402823466e+38F ) Loading
lib_com/codec_tcx_common_flt.c +1 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ void tcxInvertWindowGrouping_flt( float xn_buf[], float spectrum[], const int16_t L_frame, const int16_t fUseTns, const int8_t fUseTns, const int16_t last_core, const int16_t index, const int16_t frame_cnt, Loading
lib_com/enh64.c +1 −0 Original line number Diff line number Diff line Loading @@ -1112,6 +1112,7 @@ Word64 W_mac_32_32( Word64 L64_var1, Word32 L_var2, Word32 L_var3 ) return L64_var_out; } /*___________________________________________________________________________ | | | Function Name : W_shl_sat_l | Loading
lib_com/enh64.h +0 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,6 @@ Word64 W_msu0_16_16( Word64 L64_acc, Word16 var1, Word16 var2 ); Word64 W_mult_16_16( Word16 var1, Word16 var2 ); Word64 W_mac_16_16( Word64 L64_acc, Word16 var1, Word16 var2 ); Word64 W_msu_16_16( Word64 L64_acc, Word16 var1, Word16 var2 ); /* BASOP W_mac_32_32 is not part of STL 2023 library, might be proposed in next update */ Word64 W_mac_32_32( Word64 L64_acc, Word32 var1, Word32 var2 ); Loading