Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -181,6 +181,7 @@ #define FIX_796_MCT_MODE_DIFF_JBM /* FhG: Issue 796: fix differences between JBM and non-JBM fOR MC */ #define LIB_REND_FIX_HRTFPARAMBIN_MEMLEAK /* fix 755 */ #define FIX_803_SCE_MD_HANDLE /* VA: issue 803: Resolve "MD handle needed only for one SCE" */ #define FIX_812_DOUBLE_PREC_MCT /* FhG: Issue 812: Avoid double precision in MCT */ /* #################### End BE switches ################################## */ Loading lib_dec/ivas_mct_dec.c 100644 → 100755 +8 −0 Original line number Diff line number Diff line Loading @@ -432,7 +432,11 @@ ivas_error create_mct_dec( hMCT->currBlockDataCnt = 0; /*Initialize bits required to signal channel-pair index*/ #ifdef FIX_812_DOUBLE_PREC_MCT hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floorf( ( logf( (float) hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) * INV_LOG_2 ) ) + 1 ) ); #else hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floor( ( log( hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) / log( 2. ) ) ) + 1 ) ); #endif set_s( hMCT->chBitRatios, 0, MCT_MAX_CHANNELS ); set_s( hMCT->lowE_ch, 0, MCT_MAX_CHANNELS ); Loading Loading @@ -593,7 +597,11 @@ ivas_error mct_dec_reconfigure( hMCT->currBlockDataCnt = 0; /*Initialize bits required to signal channel-pair index*/ #ifdef FIX_812_DOUBLE_PREC_MCT hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floorf( ( logf( (float) hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) * INV_LOG_2 ) ) + 1 ) ); #else hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floor( ( log( hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) / log( 2. ) ) ) + 1 ) ); #endif set_s( hMCT->chBitRatios, 0, MCT_MAX_CHANNELS ); set_s( hMCT->lowE_ch, 0, MCT_MAX_CHANNELS ); Loading lib_enc/ivas_mct_enc.c 100644 → 100755 +4 −0 Original line number Diff line number Diff line Loading @@ -71,7 +71,11 @@ static void set_mct_enc_params( hMCT->currBlockDataCnt = 0; /*Initialize bits required to signal channel-pair index*/ #ifdef FIX_812_DOUBLE_PREC_MCT hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floorf( ( logf( (float) hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) * INV_LOG_2 ) ) + 1 ) ); #else hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floor( ( log( hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) / log( 2. ) ) ) + 1 ) ); #endif set_s( hMCT->lowE_ch, 0, MCT_MAX_CHANNELS ); Loading Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -181,6 +181,7 @@ #define FIX_796_MCT_MODE_DIFF_JBM /* FhG: Issue 796: fix differences between JBM and non-JBM fOR MC */ #define LIB_REND_FIX_HRTFPARAMBIN_MEMLEAK /* fix 755 */ #define FIX_803_SCE_MD_HANDLE /* VA: issue 803: Resolve "MD handle needed only for one SCE" */ #define FIX_812_DOUBLE_PREC_MCT /* FhG: Issue 812: Avoid double precision in MCT */ /* #################### End BE switches ################################## */ Loading
lib_dec/ivas_mct_dec.c 100644 → 100755 +8 −0 Original line number Diff line number Diff line Loading @@ -432,7 +432,11 @@ ivas_error create_mct_dec( hMCT->currBlockDataCnt = 0; /*Initialize bits required to signal channel-pair index*/ #ifdef FIX_812_DOUBLE_PREC_MCT hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floorf( ( logf( (float) hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) * INV_LOG_2 ) ) + 1 ) ); #else hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floor( ( log( hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) / log( 2. ) ) ) + 1 ) ); #endif set_s( hMCT->chBitRatios, 0, MCT_MAX_CHANNELS ); set_s( hMCT->lowE_ch, 0, MCT_MAX_CHANNELS ); Loading Loading @@ -593,7 +597,11 @@ ivas_error mct_dec_reconfigure( hMCT->currBlockDataCnt = 0; /*Initialize bits required to signal channel-pair index*/ #ifdef FIX_812_DOUBLE_PREC_MCT hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floorf( ( logf( (float) hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) * INV_LOG_2 ) ) + 1 ) ); #else hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floor( ( log( hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) / log( 2. ) ) ) + 1 ) ); #endif set_s( hMCT->chBitRatios, 0, MCT_MAX_CHANNELS ); set_s( hMCT->lowE_ch, 0, MCT_MAX_CHANNELS ); Loading
lib_enc/ivas_mct_enc.c 100644 → 100755 +4 −0 Original line number Diff line number Diff line Loading @@ -71,7 +71,11 @@ static void set_mct_enc_params( hMCT->currBlockDataCnt = 0; /*Initialize bits required to signal channel-pair index*/ #ifdef FIX_812_DOUBLE_PREC_MCT hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floorf( ( logf( (float) hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) * INV_LOG_2 ) ) + 1 ) ); #else hMCT->bitsChannelPairIndex = max( 1, (int16_t) ( floor( ( log( hMCT->nchan_out_woLFE * ( hMCT->nchan_out_woLFE - 1 ) / 2 - 1 ) / log( 2. ) ) ) + 1 ) ); #endif set_s( hMCT->lowE_ch, 0, MCT_MAX_CHANNELS ); Loading