Loading ci/basop-pages/basop_index.html +3 −1 Original line number Diff line number Diff line Loading @@ -11,6 +11,8 @@ <li><a href="ivas-pytest-compare_ref-long-dec-index.html">ivas-pytest-compare_ref-long-dec</a></li> <li><a href="ivas-pytest-compare_ref-long-dec-lev+10-index.html">ivas-pytest-compare_ref-long-dec-lev+10</a></li> <li><a href="ivas-pytest-compare_ref-long-dec-lev-10-index.html">ivas-pytest-compare_ref-long-dec-lev-10</a></li> <li><a href="ivas-pytest-compare_ref-long-enc-index.html">ivas-pytest-compare_ref-long-enc</a></li> <li><a href="ivas-pytest-compare_ref-long-enc-lev+10-index.html">ivas-pytest-compare_ref-long-enc-lev+10</a></li> <li><a href="ivas-pytest-compare_ref-long-enc-lev-10-index.html">ivas-pytest-compare_ref-long-enc-lev-10</a></li> </ul> </body> ci/setup_pages.py +3 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,9 @@ JOBS_BASOP_REPO = [ "ivas-pytest-compare_ref-long-dec", "ivas-pytest-compare_ref-long-dec-lev+10", "ivas-pytest-compare_ref-long-dec-lev-10", "ivas-pytest-compare_ref-long-enc", "ivas-pytest-compare_ref-long-enc-lev+10", "ivas-pytest-compare_ref-long-enc-lev-10", ] JOBS_FOR_PROJECT_ID = { Loading lib_com/ivas_prot.h +12 −2 Original line number Diff line number Diff line Loading @@ -3995,12 +3995,22 @@ void ivas_dirac_dec_output_synthesis_cov_close( ); void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( #ifdef FIX_835_PARAMMC_BUFFER_VALUES float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part */ float cx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ const int16_t param_band, /* i : parameter band */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #else float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part) */ float cx[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #endif ); void ivas_dirac_dec_output_synthesis_cov_param_mc_synthesise_slot( Loading lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -174,6 +174,8 @@ #define FIX_RETURN /* VA: fix location of function returns */ #endif #define FIX_1135_EXT_RENDERER_HANDLES /* VA: issue 1135: Memory usage reduction in external renderer: Allocate only handles that are really needed. */ #define FIX_1166_TDREND_DIV0 /* FhG,Eri: issue 1166: potential divide by zero in TD Renderer */ #define FIX_835_PARAMMC_BUFFER_VALUES /* FhG: BASOP issue 835: wide range of buffer values for cx in ParamMC */ /* #################### End BE switches ################################## */ Loading lib_dec/ivas_dirac_output_synthesis_cov.c +28 −3 Original line number Diff line number Diff line Loading @@ -312,15 +312,29 @@ void ivas_dirac_dec_output_synthesis_cov_close( *-------------------------------------------------------------------*/ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( #ifdef FIX_835_PARAMMC_BUFFER_VALUES float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part */ float cx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ const int16_t param_band, /* i : parameter band */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #else float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part */ float cx[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #endif ) { #ifdef FIX_835_PARAMMC_BUFFER_VALUES int16_t band_idx, ch_idx; #else int16_t param_band, band_idx, ch_idx; #endif int16_t brange[2]; float real_in_buffer[PARAM_MC_MAX_BANDS_IN_PARAMETER_BAND * MAX_TRANSPORT_CHANNELS]; float imag_in_buffer[PARAM_MC_MAX_BANDS_IN_PARAMETER_BAND * MAX_TRANSPORT_CHANNELS]; Loading @@ -328,8 +342,10 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( float imag_buffer[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; /* estimate input covariance */ #ifndef FIX_835_PARAMMC_BUFFER_VALUES for ( param_band = 0; param_band < hParamMC->num_param_bands_synth; param_band++ ) { #endif /* Already stack here instead of in the process_subframe */ /* collect input frame */ Loading @@ -350,10 +366,19 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( cmplx_matrix_square( real_in_buffer, imag_in_buffer, num_bands, nchan_in, real_buffer, imag_buffer ); #ifdef FIX_835_PARAMMC_BUFFER_VALUES v_add( cx, real_buffer, cx, nchan_in * nchan_in ); v_add( cx_imag, imag_buffer, cx_imag, nchan_in * nchan_in ); #else v_add( cx[param_band], real_buffer, cx[param_band], nchan_in * nchan_in ); v_add( cx_imag[param_band], imag_buffer, cx_imag[param_band], nchan_in * nchan_in ); #endif #ifndef FIX_835_PARAMMC_BUFFER_VALUES } #endif return; } Loading Loading
ci/basop-pages/basop_index.html +3 −1 Original line number Diff line number Diff line Loading @@ -11,6 +11,8 @@ <li><a href="ivas-pytest-compare_ref-long-dec-index.html">ivas-pytest-compare_ref-long-dec</a></li> <li><a href="ivas-pytest-compare_ref-long-dec-lev+10-index.html">ivas-pytest-compare_ref-long-dec-lev+10</a></li> <li><a href="ivas-pytest-compare_ref-long-dec-lev-10-index.html">ivas-pytest-compare_ref-long-dec-lev-10</a></li> <li><a href="ivas-pytest-compare_ref-long-enc-index.html">ivas-pytest-compare_ref-long-enc</a></li> <li><a href="ivas-pytest-compare_ref-long-enc-lev+10-index.html">ivas-pytest-compare_ref-long-enc-lev+10</a></li> <li><a href="ivas-pytest-compare_ref-long-enc-lev-10-index.html">ivas-pytest-compare_ref-long-enc-lev-10</a></li> </ul> </body>
ci/setup_pages.py +3 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,9 @@ JOBS_BASOP_REPO = [ "ivas-pytest-compare_ref-long-dec", "ivas-pytest-compare_ref-long-dec-lev+10", "ivas-pytest-compare_ref-long-dec-lev-10", "ivas-pytest-compare_ref-long-enc", "ivas-pytest-compare_ref-long-enc-lev+10", "ivas-pytest-compare_ref-long-enc-lev-10", ] JOBS_FOR_PROJECT_ID = { Loading
lib_com/ivas_prot.h +12 −2 Original line number Diff line number Diff line Loading @@ -3995,12 +3995,22 @@ void ivas_dirac_dec_output_synthesis_cov_close( ); void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( #ifdef FIX_835_PARAMMC_BUFFER_VALUES float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part */ float cx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ const int16_t param_band, /* i : parameter band */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #else float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part) */ float cx[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #endif ); void ivas_dirac_dec_output_synthesis_cov_param_mc_synthesise_slot( Loading
lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -174,6 +174,8 @@ #define FIX_RETURN /* VA: fix location of function returns */ #endif #define FIX_1135_EXT_RENDERER_HANDLES /* VA: issue 1135: Memory usage reduction in external renderer: Allocate only handles that are really needed. */ #define FIX_1166_TDREND_DIV0 /* FhG,Eri: issue 1166: potential divide by zero in TD Renderer */ #define FIX_835_PARAMMC_BUFFER_VALUES /* FhG: BASOP issue 835: wide range of buffer values for cx in ParamMC */ /* #################### End BE switches ################################## */ Loading
lib_dec/ivas_dirac_output_synthesis_cov.c +28 −3 Original line number Diff line number Diff line Loading @@ -312,15 +312,29 @@ void ivas_dirac_dec_output_synthesis_cov_close( *-------------------------------------------------------------------*/ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( #ifdef FIX_835_PARAMMC_BUFFER_VALUES float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part */ float cx[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ const int16_t param_band, /* i : parameter band */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #else float *RealBuffer, /* i : input channel filter bank samples (real part) */ float *ImagBuffer, /* i : input channel filter bank samples (imaginary part */ float cx[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (real part) */ float cx_imag[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o : accumulated input covariance (imaginary part) */ PARAM_MC_DEC_HANDLE hParamMC, /* i : handle to Parametric MC state */ const int16_t nchan_in /* i : number of input channels */ #endif ) { #ifdef FIX_835_PARAMMC_BUFFER_VALUES int16_t band_idx, ch_idx; #else int16_t param_band, band_idx, ch_idx; #endif int16_t brange[2]; float real_in_buffer[PARAM_MC_MAX_BANDS_IN_PARAMETER_BAND * MAX_TRANSPORT_CHANNELS]; float imag_in_buffer[PARAM_MC_MAX_BANDS_IN_PARAMETER_BAND * MAX_TRANSPORT_CHANNELS]; Loading @@ -328,8 +342,10 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( float imag_buffer[PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS]; /* estimate input covariance */ #ifndef FIX_835_PARAMMC_BUFFER_VALUES for ( param_band = 0; param_band < hParamMC->num_param_bands_synth; param_band++ ) { #endif /* Already stack here instead of in the process_subframe */ /* collect input frame */ Loading @@ -350,10 +366,19 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot( cmplx_matrix_square( real_in_buffer, imag_in_buffer, num_bands, nchan_in, real_buffer, imag_buffer ); #ifdef FIX_835_PARAMMC_BUFFER_VALUES v_add( cx, real_buffer, cx, nchan_in * nchan_in ); v_add( cx_imag, imag_buffer, cx_imag, nchan_in * nchan_in ); #else v_add( cx[param_band], real_buffer, cx[param_band], nchan_in * nchan_in ); v_add( cx_imag[param_band], imag_buffer, cx_imag[param_band], nchan_in * nchan_in ); #endif #ifndef FIX_835_PARAMMC_BUFFER_VALUES } #endif return; } Loading