Loading lib_dec/ivas_dirac_dec.c +138 −141 Original line number Diff line number Diff line Loading @@ -659,18 +659,15 @@ static ivas_error ivas_dirac_rend_config_fx( hDirACRend->proto_signal_decorr_on = 0; } IF( ( EQ_16( flag_config, DIRAC_OPEN ) && hDirACRend->proto_signal_decorr_on ) || ( EQ_16( flag_config, DIRAC_RECONFIGURE ) && ( hDirACRend->proto_signal_decorr_on && !proto_signal_decorr_on_old ) ) ) { IF( ( EQ_16( flag_config, DIRAC_OPEN ) && hDirACRend->proto_signal_decorr_on ) || ( EQ_16( flag_config, DIRAC_RECONFIGURE ) && ( hDirACRend->proto_signal_decorr_on && !proto_signal_decorr_on_old ) ) ){ #ifdef IVAS_FLOAT_FIXED IF( ( error = ivas_dirac_dec_decorr_open_fx( &( hDirACRend->h_freq_domain_decorr_ap_params ), &( hDirACRend->h_freq_domain_decorr_ap_state ), hSpatParamRendCom->num_freq_bands, hDirACRend->num_outputs_diff, hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis_fx, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ) { hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis_fx, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ){ return error; } #else IF( ( error = ivas_dirac_dec_decorr_open( &( hDirACRend->h_freq_domain_decorr_ap_params ), &( hDirACRend->h_freq_domain_decorr_ap_state ), hSpatParamRendCom->num_freq_bands, hDirACRend->num_outputs_diff, hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ) { hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ){ return error; } #endif Loading lib_dec/ivas_init_dec.c +58 −55 Original line number Diff line number Diff line Loading @@ -2932,18 +2932,18 @@ ivas_error ivas_init_decoder( * Set number of output channels for EXTERNAL output config. *-----------------------------------------------------------------*/ IF( output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) { IF( st_ivas->ivas_format == SBA_ISM_FORMAT ) if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) { hDecoderConfig->nchan_out = audioCfg2channels( IVAS_AUDIO_CONFIG_HOA3 ); hDecoderConfig->nchan_out += st_ivas->nchan_ism; } ELSE IF( st_ivas->ism_mode == ISM_MASA_MODE_DISC ) else if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC ) { hDecoderConfig->nchan_out = st_ivas->nchan_transport + st_ivas->nchan_ism; } ELSE IF( !( st_ivas->ism_mode == ISM_MODE_PARAM ) ) else if ( !( st_ivas->ism_mode == ISM_MODE_PARAM ) ) { hDecoderConfig->nchan_out = st_ivas->nchan_transport; } Loading @@ -2959,7 +2959,7 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hOutSetup ), output_config ); IF( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) if ( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) { st_ivas->hOutSetup.ambisonics_order = SBA_HOA3_ORDER; st_ivas->intern_config = IVAS_AUDIO_CONFIG_7_1_4; Loading @@ -2967,7 +2967,7 @@ ivas_error ivas_init_decoder( st_ivas->hOutSetup.nchan_out_woLFE = audioCfg2channels( st_ivas->intern_config ); } IF( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) if ( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) { st_ivas->hOutSetup.ambisonics_order = SBA_HOA3_ORDER; st_ivas->intern_config = IVAS_AUDIO_CONFIG_HOA3; Loading @@ -2976,12 +2976,12 @@ ivas_error ivas_init_decoder( } /* Only initialize transport setup if it is used */ IF( st_ivas->transport_config != IVAS_AUDIO_CONFIG_INVALID ) if ( st_ivas->transport_config != IVAS_AUDIO_CONFIG_INVALID ) { ivas_output_init( &( st_ivas->hTransSetup ), st_ivas->transport_config ); } IF( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) if ( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) { ivas_mcmasa_setNumTransportChannels( &( st_ivas->nchan_transport ), &( st_ivas->element_mode_init ), ivas_total_brate ); Loading @@ -2990,9 +2990,9 @@ ivas_error ivas_init_decoder( ivas_renderer_select( st_ivas ); IF( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) if ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) { IF( ( error = ivas_ls_custom_output_init( st_ivas ) ) != IVAS_ERR_OK ) if ( ( error = ivas_ls_custom_output_init( st_ivas ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3000,23 +3000,23 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hIntSetup ), st_ivas->intern_config ); IF( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) if ( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) { ivas_mcmasa_set_separate_channel_mode( &( st_ivas->hIntSetup.separateChannelEnabled ), &( st_ivas->hIntSetup.separateChannelIndex ), ivas_total_brate ); IF( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.separateChannelEnabled ) if ( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.separateChannelEnabled ) { st_ivas->hLsSetupCustom->separate_ch_found = 0; IF( st_ivas->hOutSetup.nchan_out_woLFE >= MCMASA_MIN_SPEAKERS_SEPARATE_CENTER ) if ( st_ivas->hOutSetup.nchan_out_woLFE >= MCMASA_MIN_SPEAKERS_SEPARATE_CENTER ) { /* check for a speaker at (0, 0) if minimum speaker count is available */ FOR( i = 0; i < st_ivas->hOutSetup.nchan_out_woLFE; i++ ) for ( i = 0; i < st_ivas->hOutSetup.nchan_out_woLFE; i++ ) { IF( st_ivas->hOutSetup.ls_azimuth[i] == 0.0f && st_ivas->hOutSetup.ls_elevation[i] == 0.0f ) if ( st_ivas->hOutSetup.ls_azimuth[i] == 0.0f && st_ivas->hOutSetup.ls_elevation[i] == 0.0f ) { st_ivas->hIntSetup.separateChannelIndex = i; st_ivas->hLsSetupCustom->separate_ch_found = 1; BREAK; break; } } } Loading @@ -3041,21 +3041,21 @@ ivas_error ivas_init_decoder( * Allocate and initialize SCE/CPE and other handles *-----------------------------------------------------------------*/ IF( st_ivas->ivas_format == MONO_FORMAT ) if ( st_ivas->ivas_format == MONO_FORMAT ) { st_ivas->nSCE = 1; /* in mono, there is always only one SCE */ st_ivas->nCPE = 0; st_ivas->nchan_transport = 1; sce_id = 0; IF( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate ) ) != IVAS_ERR_OK ) if ( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate ) ) != IVAS_ERR_OK ) { return error; } reset_indices_dec( st_ivas->hSCE[sce_id]->hCoreCoder[0] ); } ELSE IF( st_ivas->ivas_format == STEREO_FORMAT ) else if ( st_ivas->ivas_format == STEREO_FORMAT ) { st_ivas->nchan_transport = CPE_CHANNELS; st_ivas->intern_config = IVAS_AUDIO_CONFIG_STEREO; Loading @@ -3064,7 +3064,7 @@ ivas_error ivas_init_decoder( st_ivas->nCPE = 1; /* in stereo, there is always only one CPE */ cpe_id = 0; IF( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate ) ) != IVAS_ERR_OK ) if ( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3075,9 +3075,9 @@ ivas_error ivas_init_decoder( } /* init EFAP for custom LS output and set hTransSetup */ IF( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) if ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) { IF( ( error = efap_init_data( &( st_ivas->hEFAPdata ), st_ivas->hOutSetup.ls_azimuth, st_ivas->hOutSetup.ls_elevation, st_ivas->hOutSetup.nchan_out_woLFE, EFAP_MODE_EFAP ) ) != IVAS_ERR_OK ) if ( ( error = efap_init_data( &( st_ivas->hEFAPdata ), st_ivas->hOutSetup.ls_azimuth, st_ivas->hOutSetup.ls_elevation, st_ivas->hOutSetup.nchan_out_woLFE, EFAP_MODE_EFAP ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3085,7 +3085,7 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hTransSetup ), IVAS_AUDIO_CONFIG_STEREO ); } } ELSE IF( st_ivas->ivas_format == ISM_FORMAT ) else if ( st_ivas->ivas_format == ISM_FORMAT ) { int32_t element_brate_tmp[MAX_NUM_OBJECTS]; Loading @@ -3094,25 +3094,25 @@ ivas_error ivas_init_decoder( st_ivas->ism_extmeta_active = -1; st_ivas->ism_extmeta_cnt = 0; IF( st_ivas->ism_mode == ISM_MODE_PARAM ) if ( st_ivas->ism_mode == ISM_MODE_PARAM ) { st_ivas->nchan_transport = MAX_PARAM_ISM_WAVE; st_ivas->nSCE = MAX_PARAM_ISM_WAVE; IF( ( error = ivas_param_ism_dec_open( st_ivas ) ) != IVAS_ERR_OK ) if ( ( error = ivas_param_ism_dec_open( st_ivas ) ) != IVAS_ERR_OK ) { return error; } } IF( ( error = ivas_ism_metadata_dec_create( st_ivas, st_ivas->nSCE, element_brate_tmp ) ) != IVAS_ERR_OK ) if ( ( error = ivas_ism_metadata_dec_create( st_ivas, st_ivas->nSCE, element_brate_tmp ) ) != IVAS_ERR_OK ) { return error; } FOR( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) for ( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) { IF( ( error = create_sce_dec( st_ivas, sce_id, element_brate_tmp[sce_id] ) ) != IVAS_ERR_OK ) if ( ( error = create_sce_dec( st_ivas, sce_id, element_brate_tmp[sce_id] ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3124,7 +3124,7 @@ ivas_error ivas_init_decoder( st_ivas->hISMDTX.sce_id_dtx = 0; IF( st_ivas->ism_mode == ISM_MODE_PARAM ) if ( st_ivas->ism_mode == ISM_MODE_PARAM ) { st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->seed2 = st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->seed3; } Loading @@ -3136,21 +3136,21 @@ ivas_error ivas_init_decoder( } } } ELSE IF( st_ivas->ivas_format == SBA_FORMAT ) else if ( st_ivas->ivas_format == SBA_FORMAT ) { IF( ( error = ivas_qmetadata_open( &( st_ivas->hQMetaData ) ) ) != IVAS_ERR_OK ) if ( ( error = ivas_qmetadata_open( &( st_ivas->hQMetaData ) ) ) != IVAS_ERR_OK ) { return error; } IF( ( error = ivas_spar_dec_open( st_ivas, 0 ) ) != IVAS_ERR_OK ) if ( ( error = ivas_spar_dec_open( st_ivas, 0 ) ) != IVAS_ERR_OK ) { return error; } IF( st_ivas->renderer_type == RENDERER_SBA_LINEAR_DEC && st_ivas->hOutSetup.is_loudspeaker_setup ) if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_DEC && st_ivas->hOutSetup.is_loudspeaker_setup ) { IF( ( error = ivas_sba_get_hoa_dec_matrix( st_ivas->hOutSetup, &st_ivas->hoa_dec_mtx, st_ivas->hIntSetup.ambisonics_order ) ) != IVAS_ERR_OK ) if ( ( error = ivas_sba_get_hoa_dec_matrix( st_ivas->hOutSetup, &st_ivas->hoa_dec_mtx, st_ivas->hIntSetup.ambisonics_order ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3162,21 +3162,21 @@ ivas_error ivas_init_decoder( return error; } IF( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) { IF( ( error = ivas_dirac_dec_config( st_ivas, DIRAC_OPEN ) ) != IVAS_ERR_OK ) if ( ( error = ivas_dirac_dec_config( st_ivas, DIRAC_OPEN ) ) != IVAS_ERR_OK ) { return error; } st_ivas->hSpar->enc_param_start_band = st_ivas->hDirAC->hConfig->enc_param_start_band; } ELSE else { int16_t band_grouping[IVAS_MAX_NUM_BANDS + 1]; st_ivas->hSpar->enc_param_start_band = min( IVAS_MAX_NUM_BANDS, SPAR_DIRAC_SPLIT_START_BAND ); IF( ivas_get_hodirac_flag( ivas_total_brate, st_ivas->sba_analysis_order ) ) if ( ivas_get_hodirac_flag( ivas_total_brate, st_ivas->sba_analysis_order ) ) { st_ivas->hSpar->enc_param_start_band = 0; Loading @@ -3189,9 +3189,9 @@ ivas_error ivas_init_decoder( } st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas ); FOR( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) for ( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) { IF( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate / st_ivas->nchan_transport ) ) != IVAS_ERR_OK ) if ( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate / st_ivas->nchan_transport ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3199,23 +3199,23 @@ ivas_error ivas_init_decoder( reset_indices_dec( st_ivas->hSCE[sce_id]->hCoreCoder[0] ); } FOR( cpe_id = 0; cpe_id < st_ivas->nCPE; cpe_id++ ) for ( cpe_id = 0; cpe_id < st_ivas->nCPE; cpe_id++ ) { IF( ( error = create_cpe_dec( st_ivas, cpe_id, ( ivas_total_brate / st_ivas->nchan_transport ) * CPE_CHANNELS ) ) != IVAS_ERR_OK ) if ( ( error = create_cpe_dec( st_ivas, cpe_id, ( ivas_total_brate / st_ivas->nchan_transport ) * CPE_CHANNELS ) ) != IVAS_ERR_OK ) { return error; } FOR( n = 0; n < CPE_CHANNELS; n++ ) for ( n = 0; n < CPE_CHANNELS; n++ ) { reset_indices_dec( st_ivas->hCPE[cpe_id]->hCoreCoder[n] ); } } /* create CPE element for DFT Stereo like upmix */ IF( st_ivas->sba_dirac_stereo_flag && st_ivas->nCPE == 0 ) if ( st_ivas->sba_dirac_stereo_flag && st_ivas->nCPE == 0 ) { IF( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate / ( st_ivas->nSCE + st_ivas->nCPE ) ) ) != IVAS_ERR_OK ) if ( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate / ( st_ivas->nSCE + st_ivas->nCPE ) ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3224,9 +3224,9 @@ ivas_error ivas_init_decoder( st_ivas->hCPE[0]->hCoreCoder[1] = NULL; } IF( st_ivas->nCPE > 1 ) if ( st_ivas->nCPE > 1 ) { IF( ( error = create_mct_dec( st_ivas ) ) != IVAS_ERR_OK ) if ( ( error = create_mct_dec( st_ivas ) ) != IVAS_ERR_OK ) { return error; } Loading Loading @@ -3751,9 +3751,9 @@ ivas_error ivas_init_decoder( } #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_dirac_dec_init_binaural_data_fx( st_ivas, &( st_ivas->hHrtfParambin ) ) ) != IVAS_ERR_OK ) if( ( error = ivas_dirac_dec_init_binaural_data_fx( st_ivas, &( st_ivas->hHrtfParambin ) ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_dirac_dec_init_binaural_data( st_ivas, st_ivas->hHrtfParambin ) ) != IVAS_ERR_OK ) if ( ( error = ivas_dirac_dec_init_binaural_data( st_ivas, st_ivas->hHrtfParambin ) ) != IVAS_ERR_OK ) #endif { return error; Loading @@ -3766,12 +3766,12 @@ ivas_error ivas_init_decoder( return error; } IF( st_ivas->hIntSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) if ( st_ivas->hIntSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) { #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) if( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hDecoderConfig->output_config, NULL, st_ivas->hBinRendererTd->HrFiltSet_p->lr_energy_and_iac, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) if ( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hDecoderConfig->output_config, NULL, st_ivas->hBinRendererTd->HrFiltSet_p->lr_energy_and_iac, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #endif { return error; Loading Loading @@ -3811,10 +3811,10 @@ ivas_error ivas_init_decoder( } #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, if( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, if ( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #endif { Loading Loading @@ -4590,6 +4590,7 @@ void ivas_destroy_dec( free( st_ivas->mem_hp20_out_fx ); st_ivas->mem_hp20_out_fx = NULL; } /* ISM metadata handles */ ivas_ism_metadata_close( st_ivas->hIsmMetaData, 0 ); Loading Loading @@ -4820,6 +4821,7 @@ void ivas_destroy_dec( free( st_ivas->mem_hp20_out ); st_ivas->mem_hp20_out = NULL; } /* ISM metadata handles */ ivas_ism_metadata_close( st_ivas->hIsmMetaData, 0 ); Loading Loading @@ -4973,6 +4975,7 @@ void ivas_destroy_dec( return; } #endif Loading lib_dec/ivas_ism_param_dec.c +1 −0 Original line number Diff line number Diff line Loading @@ -2222,6 +2222,7 @@ void ivas_param_ism_dec_digest_tc_fx( set32_fx( hParamIsmDec->hParamIsmRendering->mixing_matrix_lin_fx[bin_idx], 0, nchan_transport * nchan_out_woLFE ); } #endif /* Compute mixing matrix */ ivas_param_ism_compute_mixing_matrix_fx( st_ivas->nchan_ism, hParamIsmDec, st_ivas->hISMDTX, direct_response_fx, nchan_transport, nchan_out_woLFE, cx_diag_fx, exp_cx_diag, ref_power_fx, exp_ref_power, hParamIsmDec->hParamIsmRendering->mixing_matrix_lin_fx, hParamIsmDec->hParamIsmRendering->exp_mixing_matrix_lin_fx ); Loading lib_dec/ivas_jbm_dec.c +1 −0 Original line number Diff line number Diff line Loading @@ -2264,6 +2264,7 @@ void ivas_jbm_dec_feed_tc_to_renderer( ELSE { ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas ); IF( st_ivas->hSCE[0] ) { Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN ); Loading lib_rend/ivas_crend.c +1 −5 Original line number Diff line number Diff line Loading @@ -3065,11 +3065,7 @@ ivas_error ivas_rend_initCrendWrapper( hCrend->m_fPitch = 0; hCrend->m_fRoll = 0; #ifdef SPLIT_REND_WITH_HEAD_ROT ( *pCrend )->hCrend[pos_idx] = hCrend; #else ( *pCrend )->hCrend = hCrend; #endif } return IVAS_ERR_OK; Loading Loading @@ -3114,7 +3110,7 @@ ivas_error ivas_rend_openCrend( #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hSetOfHRTF, output_Fs ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hSetOfHRTF, output_Fs ) ) != IVAS_ERR_OK ) IF( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hSetOfHRTF, output_Fs ) ) != IVAS_ERR_OK ){ #endif { return error; Loading Loading
lib_dec/ivas_dirac_dec.c +138 −141 Original line number Diff line number Diff line Loading @@ -659,18 +659,15 @@ static ivas_error ivas_dirac_rend_config_fx( hDirACRend->proto_signal_decorr_on = 0; } IF( ( EQ_16( flag_config, DIRAC_OPEN ) && hDirACRend->proto_signal_decorr_on ) || ( EQ_16( flag_config, DIRAC_RECONFIGURE ) && ( hDirACRend->proto_signal_decorr_on && !proto_signal_decorr_on_old ) ) ) { IF( ( EQ_16( flag_config, DIRAC_OPEN ) && hDirACRend->proto_signal_decorr_on ) || ( EQ_16( flag_config, DIRAC_RECONFIGURE ) && ( hDirACRend->proto_signal_decorr_on && !proto_signal_decorr_on_old ) ) ){ #ifdef IVAS_FLOAT_FIXED IF( ( error = ivas_dirac_dec_decorr_open_fx( &( hDirACRend->h_freq_domain_decorr_ap_params ), &( hDirACRend->h_freq_domain_decorr_ap_state ), hSpatParamRendCom->num_freq_bands, hDirACRend->num_outputs_diff, hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis_fx, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ) { hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis_fx, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ){ return error; } #else IF( ( error = ivas_dirac_dec_decorr_open( &( hDirACRend->h_freq_domain_decorr_ap_params ), &( hDirACRend->h_freq_domain_decorr_ap_state ), hSpatParamRendCom->num_freq_bands, hDirACRend->num_outputs_diff, hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ) { hDirACRend->num_protos_diff, hDirACRend->synthesisConf, hDirACRend->frequency_axis, nchan_transport > 2 ? 4 : nchan_transport, output_Fs ) ) != IVAS_ERR_OK ){ return error; } #endif Loading
lib_dec/ivas_init_dec.c +58 −55 Original line number Diff line number Diff line Loading @@ -2932,18 +2932,18 @@ ivas_error ivas_init_decoder( * Set number of output channels for EXTERNAL output config. *-----------------------------------------------------------------*/ IF( output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) { IF( st_ivas->ivas_format == SBA_ISM_FORMAT ) if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) { hDecoderConfig->nchan_out = audioCfg2channels( IVAS_AUDIO_CONFIG_HOA3 ); hDecoderConfig->nchan_out += st_ivas->nchan_ism; } ELSE IF( st_ivas->ism_mode == ISM_MASA_MODE_DISC ) else if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC ) { hDecoderConfig->nchan_out = st_ivas->nchan_transport + st_ivas->nchan_ism; } ELSE IF( !( st_ivas->ism_mode == ISM_MODE_PARAM ) ) else if ( !( st_ivas->ism_mode == ISM_MODE_PARAM ) ) { hDecoderConfig->nchan_out = st_ivas->nchan_transport; } Loading @@ -2959,7 +2959,7 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hOutSetup ), output_config ); IF( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) if ( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) { st_ivas->hOutSetup.ambisonics_order = SBA_HOA3_ORDER; st_ivas->intern_config = IVAS_AUDIO_CONFIG_7_1_4; Loading @@ -2967,7 +2967,7 @@ ivas_error ivas_init_decoder( st_ivas->hOutSetup.nchan_out_woLFE = audioCfg2channels( st_ivas->intern_config ); } IF( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) if ( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) { st_ivas->hOutSetup.ambisonics_order = SBA_HOA3_ORDER; st_ivas->intern_config = IVAS_AUDIO_CONFIG_HOA3; Loading @@ -2976,12 +2976,12 @@ ivas_error ivas_init_decoder( } /* Only initialize transport setup if it is used */ IF( st_ivas->transport_config != IVAS_AUDIO_CONFIG_INVALID ) if ( st_ivas->transport_config != IVAS_AUDIO_CONFIG_INVALID ) { ivas_output_init( &( st_ivas->hTransSetup ), st_ivas->transport_config ); } IF( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) if ( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) { ivas_mcmasa_setNumTransportChannels( &( st_ivas->nchan_transport ), &( st_ivas->element_mode_init ), ivas_total_brate ); Loading @@ -2990,9 +2990,9 @@ ivas_error ivas_init_decoder( ivas_renderer_select( st_ivas ); IF( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) if ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) { IF( ( error = ivas_ls_custom_output_init( st_ivas ) ) != IVAS_ERR_OK ) if ( ( error = ivas_ls_custom_output_init( st_ivas ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3000,23 +3000,23 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hIntSetup ), st_ivas->intern_config ); IF( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) if ( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) { ivas_mcmasa_set_separate_channel_mode( &( st_ivas->hIntSetup.separateChannelEnabled ), &( st_ivas->hIntSetup.separateChannelIndex ), ivas_total_brate ); IF( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.separateChannelEnabled ) if ( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.separateChannelEnabled ) { st_ivas->hLsSetupCustom->separate_ch_found = 0; IF( st_ivas->hOutSetup.nchan_out_woLFE >= MCMASA_MIN_SPEAKERS_SEPARATE_CENTER ) if ( st_ivas->hOutSetup.nchan_out_woLFE >= MCMASA_MIN_SPEAKERS_SEPARATE_CENTER ) { /* check for a speaker at (0, 0) if minimum speaker count is available */ FOR( i = 0; i < st_ivas->hOutSetup.nchan_out_woLFE; i++ ) for ( i = 0; i < st_ivas->hOutSetup.nchan_out_woLFE; i++ ) { IF( st_ivas->hOutSetup.ls_azimuth[i] == 0.0f && st_ivas->hOutSetup.ls_elevation[i] == 0.0f ) if ( st_ivas->hOutSetup.ls_azimuth[i] == 0.0f && st_ivas->hOutSetup.ls_elevation[i] == 0.0f ) { st_ivas->hIntSetup.separateChannelIndex = i; st_ivas->hLsSetupCustom->separate_ch_found = 1; BREAK; break; } } } Loading @@ -3041,21 +3041,21 @@ ivas_error ivas_init_decoder( * Allocate and initialize SCE/CPE and other handles *-----------------------------------------------------------------*/ IF( st_ivas->ivas_format == MONO_FORMAT ) if ( st_ivas->ivas_format == MONO_FORMAT ) { st_ivas->nSCE = 1; /* in mono, there is always only one SCE */ st_ivas->nCPE = 0; st_ivas->nchan_transport = 1; sce_id = 0; IF( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate ) ) != IVAS_ERR_OK ) if ( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate ) ) != IVAS_ERR_OK ) { return error; } reset_indices_dec( st_ivas->hSCE[sce_id]->hCoreCoder[0] ); } ELSE IF( st_ivas->ivas_format == STEREO_FORMAT ) else if ( st_ivas->ivas_format == STEREO_FORMAT ) { st_ivas->nchan_transport = CPE_CHANNELS; st_ivas->intern_config = IVAS_AUDIO_CONFIG_STEREO; Loading @@ -3064,7 +3064,7 @@ ivas_error ivas_init_decoder( st_ivas->nCPE = 1; /* in stereo, there is always only one CPE */ cpe_id = 0; IF( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate ) ) != IVAS_ERR_OK ) if ( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3075,9 +3075,9 @@ ivas_error ivas_init_decoder( } /* init EFAP for custom LS output and set hTransSetup */ IF( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) if ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) { IF( ( error = efap_init_data( &( st_ivas->hEFAPdata ), st_ivas->hOutSetup.ls_azimuth, st_ivas->hOutSetup.ls_elevation, st_ivas->hOutSetup.nchan_out_woLFE, EFAP_MODE_EFAP ) ) != IVAS_ERR_OK ) if ( ( error = efap_init_data( &( st_ivas->hEFAPdata ), st_ivas->hOutSetup.ls_azimuth, st_ivas->hOutSetup.ls_elevation, st_ivas->hOutSetup.nchan_out_woLFE, EFAP_MODE_EFAP ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3085,7 +3085,7 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hTransSetup ), IVAS_AUDIO_CONFIG_STEREO ); } } ELSE IF( st_ivas->ivas_format == ISM_FORMAT ) else if ( st_ivas->ivas_format == ISM_FORMAT ) { int32_t element_brate_tmp[MAX_NUM_OBJECTS]; Loading @@ -3094,25 +3094,25 @@ ivas_error ivas_init_decoder( st_ivas->ism_extmeta_active = -1; st_ivas->ism_extmeta_cnt = 0; IF( st_ivas->ism_mode == ISM_MODE_PARAM ) if ( st_ivas->ism_mode == ISM_MODE_PARAM ) { st_ivas->nchan_transport = MAX_PARAM_ISM_WAVE; st_ivas->nSCE = MAX_PARAM_ISM_WAVE; IF( ( error = ivas_param_ism_dec_open( st_ivas ) ) != IVAS_ERR_OK ) if ( ( error = ivas_param_ism_dec_open( st_ivas ) ) != IVAS_ERR_OK ) { return error; } } IF( ( error = ivas_ism_metadata_dec_create( st_ivas, st_ivas->nSCE, element_brate_tmp ) ) != IVAS_ERR_OK ) if ( ( error = ivas_ism_metadata_dec_create( st_ivas, st_ivas->nSCE, element_brate_tmp ) ) != IVAS_ERR_OK ) { return error; } FOR( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) for ( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) { IF( ( error = create_sce_dec( st_ivas, sce_id, element_brate_tmp[sce_id] ) ) != IVAS_ERR_OK ) if ( ( error = create_sce_dec( st_ivas, sce_id, element_brate_tmp[sce_id] ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3124,7 +3124,7 @@ ivas_error ivas_init_decoder( st_ivas->hISMDTX.sce_id_dtx = 0; IF( st_ivas->ism_mode == ISM_MODE_PARAM ) if ( st_ivas->ism_mode == ISM_MODE_PARAM ) { st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->seed2 = st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->seed3; } Loading @@ -3136,21 +3136,21 @@ ivas_error ivas_init_decoder( } } } ELSE IF( st_ivas->ivas_format == SBA_FORMAT ) else if ( st_ivas->ivas_format == SBA_FORMAT ) { IF( ( error = ivas_qmetadata_open( &( st_ivas->hQMetaData ) ) ) != IVAS_ERR_OK ) if ( ( error = ivas_qmetadata_open( &( st_ivas->hQMetaData ) ) ) != IVAS_ERR_OK ) { return error; } IF( ( error = ivas_spar_dec_open( st_ivas, 0 ) ) != IVAS_ERR_OK ) if ( ( error = ivas_spar_dec_open( st_ivas, 0 ) ) != IVAS_ERR_OK ) { return error; } IF( st_ivas->renderer_type == RENDERER_SBA_LINEAR_DEC && st_ivas->hOutSetup.is_loudspeaker_setup ) if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_DEC && st_ivas->hOutSetup.is_loudspeaker_setup ) { IF( ( error = ivas_sba_get_hoa_dec_matrix( st_ivas->hOutSetup, &st_ivas->hoa_dec_mtx, st_ivas->hIntSetup.ambisonics_order ) ) != IVAS_ERR_OK ) if ( ( error = ivas_sba_get_hoa_dec_matrix( st_ivas->hOutSetup, &st_ivas->hoa_dec_mtx, st_ivas->hIntSetup.ambisonics_order ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3162,21 +3162,21 @@ ivas_error ivas_init_decoder( return error; } IF( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) { IF( ( error = ivas_dirac_dec_config( st_ivas, DIRAC_OPEN ) ) != IVAS_ERR_OK ) if ( ( error = ivas_dirac_dec_config( st_ivas, DIRAC_OPEN ) ) != IVAS_ERR_OK ) { return error; } st_ivas->hSpar->enc_param_start_band = st_ivas->hDirAC->hConfig->enc_param_start_band; } ELSE else { int16_t band_grouping[IVAS_MAX_NUM_BANDS + 1]; st_ivas->hSpar->enc_param_start_band = min( IVAS_MAX_NUM_BANDS, SPAR_DIRAC_SPLIT_START_BAND ); IF( ivas_get_hodirac_flag( ivas_total_brate, st_ivas->sba_analysis_order ) ) if ( ivas_get_hodirac_flag( ivas_total_brate, st_ivas->sba_analysis_order ) ) { st_ivas->hSpar->enc_param_start_band = 0; Loading @@ -3189,9 +3189,9 @@ ivas_error ivas_init_decoder( } st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas ); FOR( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) for ( sce_id = 0; sce_id < st_ivas->nSCE; sce_id++ ) { IF( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate / st_ivas->nchan_transport ) ) != IVAS_ERR_OK ) if ( ( error = create_sce_dec( st_ivas, sce_id, ivas_total_brate / st_ivas->nchan_transport ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3199,23 +3199,23 @@ ivas_error ivas_init_decoder( reset_indices_dec( st_ivas->hSCE[sce_id]->hCoreCoder[0] ); } FOR( cpe_id = 0; cpe_id < st_ivas->nCPE; cpe_id++ ) for ( cpe_id = 0; cpe_id < st_ivas->nCPE; cpe_id++ ) { IF( ( error = create_cpe_dec( st_ivas, cpe_id, ( ivas_total_brate / st_ivas->nchan_transport ) * CPE_CHANNELS ) ) != IVAS_ERR_OK ) if ( ( error = create_cpe_dec( st_ivas, cpe_id, ( ivas_total_brate / st_ivas->nchan_transport ) * CPE_CHANNELS ) ) != IVAS_ERR_OK ) { return error; } FOR( n = 0; n < CPE_CHANNELS; n++ ) for ( n = 0; n < CPE_CHANNELS; n++ ) { reset_indices_dec( st_ivas->hCPE[cpe_id]->hCoreCoder[n] ); } } /* create CPE element for DFT Stereo like upmix */ IF( st_ivas->sba_dirac_stereo_flag && st_ivas->nCPE == 0 ) if ( st_ivas->sba_dirac_stereo_flag && st_ivas->nCPE == 0 ) { IF( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate / ( st_ivas->nSCE + st_ivas->nCPE ) ) ) != IVAS_ERR_OK ) if ( ( error = create_cpe_dec( st_ivas, cpe_id, ivas_total_brate / ( st_ivas->nSCE + st_ivas->nCPE ) ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -3224,9 +3224,9 @@ ivas_error ivas_init_decoder( st_ivas->hCPE[0]->hCoreCoder[1] = NULL; } IF( st_ivas->nCPE > 1 ) if ( st_ivas->nCPE > 1 ) { IF( ( error = create_mct_dec( st_ivas ) ) != IVAS_ERR_OK ) if ( ( error = create_mct_dec( st_ivas ) ) != IVAS_ERR_OK ) { return error; } Loading Loading @@ -3751,9 +3751,9 @@ ivas_error ivas_init_decoder( } #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_dirac_dec_init_binaural_data_fx( st_ivas, &( st_ivas->hHrtfParambin ) ) ) != IVAS_ERR_OK ) if( ( error = ivas_dirac_dec_init_binaural_data_fx( st_ivas, &( st_ivas->hHrtfParambin ) ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_dirac_dec_init_binaural_data( st_ivas, st_ivas->hHrtfParambin ) ) != IVAS_ERR_OK ) if ( ( error = ivas_dirac_dec_init_binaural_data( st_ivas, st_ivas->hHrtfParambin ) ) != IVAS_ERR_OK ) #endif { return error; Loading @@ -3766,12 +3766,12 @@ ivas_error ivas_init_decoder( return error; } IF( st_ivas->hIntSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) if ( st_ivas->hIntSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) { #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) if( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hDecoderConfig->output_config, NULL, st_ivas->hBinRendererTd->HrFiltSet_p->lr_energy_and_iac, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) if ( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hDecoderConfig->output_config, NULL, st_ivas->hBinRendererTd->HrFiltSet_p->lr_energy_and_iac, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #endif { return error; Loading Loading @@ -3811,10 +3811,10 @@ ivas_error ivas_init_decoder( } #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, if( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hHrtfStatistics, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, if ( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #endif { Loading Loading @@ -4590,6 +4590,7 @@ void ivas_destroy_dec( free( st_ivas->mem_hp20_out_fx ); st_ivas->mem_hp20_out_fx = NULL; } /* ISM metadata handles */ ivas_ism_metadata_close( st_ivas->hIsmMetaData, 0 ); Loading Loading @@ -4820,6 +4821,7 @@ void ivas_destroy_dec( free( st_ivas->mem_hp20_out ); st_ivas->mem_hp20_out = NULL; } /* ISM metadata handles */ ivas_ism_metadata_close( st_ivas->hIsmMetaData, 0 ); Loading Loading @@ -4973,6 +4975,7 @@ void ivas_destroy_dec( return; } #endif Loading
lib_dec/ivas_ism_param_dec.c +1 −0 Original line number Diff line number Diff line Loading @@ -2222,6 +2222,7 @@ void ivas_param_ism_dec_digest_tc_fx( set32_fx( hParamIsmDec->hParamIsmRendering->mixing_matrix_lin_fx[bin_idx], 0, nchan_transport * nchan_out_woLFE ); } #endif /* Compute mixing matrix */ ivas_param_ism_compute_mixing_matrix_fx( st_ivas->nchan_ism, hParamIsmDec, st_ivas->hISMDTX, direct_response_fx, nchan_transport, nchan_out_woLFE, cx_diag_fx, exp_cx_diag, ref_power_fx, exp_ref_power, hParamIsmDec->hParamIsmRendering->mixing_matrix_lin_fx, hParamIsmDec->hParamIsmRendering->exp_mixing_matrix_lin_fx ); Loading
lib_dec/ivas_jbm_dec.c +1 −0 Original line number Diff line number Diff line Loading @@ -2264,6 +2264,7 @@ void ivas_jbm_dec_feed_tc_to_renderer( ELSE { ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas ); IF( st_ivas->hSCE[0] ) { Word16 shift = getScaleFactor32( st_ivas->hSCE[0]->hCoreCoder[0]->hFdCngDec->hFdCngCom->cngNoiseLevel, FFTCLDFBLEN ); Loading
lib_rend/ivas_crend.c +1 −5 Original line number Diff line number Diff line Loading @@ -3065,11 +3065,7 @@ ivas_error ivas_rend_initCrendWrapper( hCrend->m_fPitch = 0; hCrend->m_fRoll = 0; #ifdef SPLIT_REND_WITH_HEAD_ROT ( *pCrend )->hCrend[pos_idx] = hCrend; #else ( *pCrend )->hCrend = hCrend; #endif } return IVAS_ERR_OK; Loading Loading @@ -3114,7 +3110,7 @@ ivas_error ivas_rend_openCrend( #ifdef FIX_CREND_CHANGES_AND_HRTF_FILE_FORMAT IF( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hSetOfHRTF, output_Fs ) ) != IVAS_ERR_OK ) #else IF( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hSetOfHRTF, output_Fs ) ) != IVAS_ERR_OK ) IF( ( error = ivas_rend_initCrend_fx( *pCrend, inConfig, outConfig, hSetOfHRTF, output_Fs ) ) != IVAS_ERR_OK ){ #endif { return error; Loading