Loading lib_com/prot_fx2.h +11 −1 Original line number Diff line number Diff line Loading @@ -7340,7 +7340,6 @@ void tcx_hm_modify_envelope( ); //tns_base_dec_fx.c #define IVAS_CODE #ifdef IVAS_CODE void #else Loading @@ -7351,6 +7350,17 @@ ReadTnsData(STnsConfig const * pTnsConfig, Word16 * pnBits, Word16 * stream, Word16 * pnSize); #define IVAS_CODE #ifdef IVAS_CODE void #else Word16 #endif ReadTnsData_ivas_fx(STnsConfig const * pTnsConfig, Decoder_State *st, Word16 * pnBits, Word16 * stream, Word16 * pnSize); #undef IVAS_CODE Word16 DecodeTnsData(STnsConfig const * pTnsConfig, Loading lib_dec/dec_prm_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -327,7 +327,7 @@ void getTCXparam( } ELSE { ReadTnsData( st->hTcxCfg->pCurrentTnsConfig, st0, &nTnsBits, prm + j, &nTnsParams ); ReadTnsData_ivas_fx( st->hTcxCfg->pCurrentTnsConfig, st0, &nTnsBits, prm + j, &nTnsParams ); } hTcxDec->tnsActive[k] = 0; IF( prm[j] != 0 ) Loading lib_dec/tns_base_dec_fx.c +61 −1 Original line number Diff line number Diff line Loading @@ -27,14 +27,74 @@ typedef Word32 (* TLinearPredictionFilter)(Word16 order, Word16 const parCoeff[] * * *---------------------------------------------------------------------*/ #ifdef IVAS_CODE void #else Word16 #endif ReadTnsData( STnsConfig const *pTnsConfig, Decoder_State *st, Word16 *pnBits, Word16 *stream, Word16 *pnSize ) { Word16 start_bit_pos; move16(); start_bit_pos = st->next_bit_pos; IF( GT_16( pTnsConfig->nMaxFilters, 1 ) ) { #ifdef IVAS_CODE IF( pTnsConfig->allowTnsOnWhite ) { IF( LT_16( pTnsConfig->iFilterBorders[0], 512 ) ) { ReadFromBitstream( &tnsEnabledOnWhiteSWBTCX10BitMap, 1, st, &stream, pnSize ); } ELSE { ReadFromBitstream( &tnsEnabledOnWhiteSWBTCX20BitMap, 1, st, &stream, pnSize ); } } ELSE #endif { IF( LT_16( pTnsConfig->iFilterBorders[0], 512 ) ) { ReadFromBitstream( &tnsEnabledSWBTCX10BitMap, 1, st, &stream, pnSize ); } ELSE { ReadFromBitstream( &tnsEnabledSWBTCX20BitMap, 1, st, &stream, pnSize ); } } } ELSE { ReadFromBitstream( &tnsEnabledWBTCX20BitMap, 1, st, &stream, pnSize ); } move16(); *pnBits = sub( st->next_bit_pos, start_bit_pos ); #ifdef IVAS_CODE return; #else return TNS_NO_ERROR; #endif } #define IVAS_CODE #ifdef IVAS_CODE void #else Word16 #endif ReadTnsData( ReadTnsData_ivas_fx( STnsConfig const * pTnsConfig, Decoder_State *st, Word16 * pnBits, Loading Loading
lib_com/prot_fx2.h +11 −1 Original line number Diff line number Diff line Loading @@ -7340,7 +7340,6 @@ void tcx_hm_modify_envelope( ); //tns_base_dec_fx.c #define IVAS_CODE #ifdef IVAS_CODE void #else Loading @@ -7351,6 +7350,17 @@ ReadTnsData(STnsConfig const * pTnsConfig, Word16 * pnBits, Word16 * stream, Word16 * pnSize); #define IVAS_CODE #ifdef IVAS_CODE void #else Word16 #endif ReadTnsData_ivas_fx(STnsConfig const * pTnsConfig, Decoder_State *st, Word16 * pnBits, Word16 * stream, Word16 * pnSize); #undef IVAS_CODE Word16 DecodeTnsData(STnsConfig const * pTnsConfig, Loading
lib_dec/dec_prm_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -327,7 +327,7 @@ void getTCXparam( } ELSE { ReadTnsData( st->hTcxCfg->pCurrentTnsConfig, st0, &nTnsBits, prm + j, &nTnsParams ); ReadTnsData_ivas_fx( st->hTcxCfg->pCurrentTnsConfig, st0, &nTnsBits, prm + j, &nTnsParams ); } hTcxDec->tnsActive[k] = 0; IF( prm[j] != 0 ) Loading
lib_dec/tns_base_dec_fx.c +61 −1 Original line number Diff line number Diff line Loading @@ -27,14 +27,74 @@ typedef Word32 (* TLinearPredictionFilter)(Word16 order, Word16 const parCoeff[] * * *---------------------------------------------------------------------*/ #ifdef IVAS_CODE void #else Word16 #endif ReadTnsData( STnsConfig const *pTnsConfig, Decoder_State *st, Word16 *pnBits, Word16 *stream, Word16 *pnSize ) { Word16 start_bit_pos; move16(); start_bit_pos = st->next_bit_pos; IF( GT_16( pTnsConfig->nMaxFilters, 1 ) ) { #ifdef IVAS_CODE IF( pTnsConfig->allowTnsOnWhite ) { IF( LT_16( pTnsConfig->iFilterBorders[0], 512 ) ) { ReadFromBitstream( &tnsEnabledOnWhiteSWBTCX10BitMap, 1, st, &stream, pnSize ); } ELSE { ReadFromBitstream( &tnsEnabledOnWhiteSWBTCX20BitMap, 1, st, &stream, pnSize ); } } ELSE #endif { IF( LT_16( pTnsConfig->iFilterBorders[0], 512 ) ) { ReadFromBitstream( &tnsEnabledSWBTCX10BitMap, 1, st, &stream, pnSize ); } ELSE { ReadFromBitstream( &tnsEnabledSWBTCX20BitMap, 1, st, &stream, pnSize ); } } } ELSE { ReadFromBitstream( &tnsEnabledWBTCX20BitMap, 1, st, &stream, pnSize ); } move16(); *pnBits = sub( st->next_bit_pos, start_bit_pos ); #ifdef IVAS_CODE return; #else return TNS_NO_ERROR; #endif } #define IVAS_CODE #ifdef IVAS_CODE void #else Word16 #endif ReadTnsData( ReadTnsData_ivas_fx( STnsConfig const * pTnsConfig, Decoder_State *st, Word16 * pnBits, Loading