Loading lib_com/common_api_types.h +4 −0 Original line number Diff line number Diff line Loading @@ -343,6 +343,10 @@ typedef struct _IVAS_RENDER_CONFIG Word16 directivity_fx[IVAS_MAX_NUM_OBJECTS * 3]; // has the following q-factor pattern: {6, 6, 15, 6, 6, 15, 6, 6, 15, 6, 6, 15} float distAtt[3]; Word32 distAtt_fx[3]; /* {Q27, Q30, Q30} */ #ifdef NONBE_1377_REND_DIRATT_CONF Word16 object_id[IVAS_MAX_NUM_OBJECTS]; Word16 number_of_objects; #endif } IVAS_RENDER_CONFIG_DATA, *IVAS_RENDER_CONFIG_HANDLE; Loading lib_rend/ivas_objectRenderer_fx.c +1 −5 Original line number Diff line number Diff line Loading @@ -795,7 +795,7 @@ ivas_error ivas_td_binaural_open_ext_fx( LSSETUP_CUSTOM_STRUCT *customLsInput, const Word32 outFs, #ifdef NONBE_1377_REND_DIRATT_CONF const IVAS_REND_InputId id, /* i: ISM ID */ Word16 ism_number, /* i: ISM number */ #endif Word16 *SrcInd, Word16 *num_src ) Loading @@ -805,9 +805,6 @@ ivas_error ivas_td_binaural_open_ext_fx( IVAS_FORMAT ivas_format; IVAS_OUTPUT_SETUP hTransSetup; ivas_error error; #ifdef NONBE_1377_REND_DIRATT_CONF Word16 ism_number; #endif Word32 *distAtt_fx = NULL; Word16 *directivity_fx = NULL; Loading Loading @@ -850,7 +847,6 @@ ivas_error ivas_td_binaural_open_ext_fx( if ( NULL != hRendCfg ) { #ifdef NONBE_1377_REND_DIRATT_CONF ism_number = sub( s_and( (Word16) 0xFF, id ), 1 ); /* Extract ISM number from ID */ directivity_fx = hRendCfg->directivity_fx + 3 * ism_number; /* Address calculation -- no BASOPs */ #else directivity_fx = hRendCfg->directivity_fx; Loading lib_rend/ivas_prot_rend_fx.h +1 −1 Original line number Diff line number Diff line Loading @@ -688,7 +688,7 @@ ivas_error ivas_td_binaural_open_ext_fx( LSSETUP_CUSTOM_STRUCT *customLsInput, const Word32 output_Fs, #ifdef NONBE_1377_REND_DIRATT_CONF const IVAS_REND_InputId id, /* i : ISM ID */ const Word16 ism_number, /* i : ISM number */ #endif Word16 *SrcInd, Word16 *num_src Loading lib_rend/ivas_render_config_fx.c +4 −0 Original line number Diff line number Diff line Loading @@ -140,6 +140,10 @@ ivas_error ivas_render_config_init_from_rom_fx( move32(); ( *hRenderConfig )->distAtt_fx[2] = ONE_IN_Q30; // Q30 /* Default rolloff factor */ move32(); #ifdef NONBE_1377_REND_DIRATT_CONF ( *hRenderConfig )->number_of_objects = 0; move16(); #endif ( *hRenderConfig )->split_rend_config.splitRendBitRate = ISAR_MAX_SPLIT_REND_BITRATE; move32(); ( *hRenderConfig )->split_rend_config.dof = 3; Loading lib_rend/lib_rend_fx.c +16 −3 Original line number Diff line number Diff line Loading @@ -1430,6 +1430,9 @@ static ivas_error setRendInputActiveIsm( Word16 num_src; Word16 ivas_format; Word16 num_poses; #ifdef NONBE_1377_REND_DIRATT_CONF Word16 ism_number; #endif IF( EQ_32( getAudioConfigType( inConfig ), IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED ) ) { Loading Loading @@ -1494,7 +1497,12 @@ static ivas_error setRendInputActiveIsm( IF( EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) { #ifdef NONBE_1377_REND_DIRATT_CONF IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, id, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) ism_number = hRendCfg->number_of_objects; move16(); hRendCfg->object_id[ism_number] = id; hRendCfg->number_of_objects = add( hRendCfg->number_of_objects, 1 ); IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, ism_number, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #else IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #endif Loading Loading @@ -1531,7 +1539,7 @@ static ivas_error setRendInputActiveIsm( FOR( i = 0; i < MAX_HEAD_ROT_POSES - 1; ++i ) { #ifdef NONBE_1377_REND_DIRATT_CONF IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->splitTdRendWrappers[i], inConfig, hRendCfg, NULL, *inputIsm->base.ctx.pOutSampleRate, id, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->splitTdRendWrappers[i], inConfig, hRendCfg, NULL, *inputIsm->base.ctx.pOutSampleRate, ism_number, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #else IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->splitTdRendWrappers[i], inConfig, hRendCfg, NULL, *inputIsm->base.ctx.pOutSampleRate, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #endif Loading Loading @@ -1569,7 +1577,12 @@ static ivas_error setRendInputActiveIsm( ELSE { #ifdef NONBE_1377_REND_DIRATT_CONF IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, id, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) ism_number = hRendCfg->number_of_objects; move16(); hRendCfg->object_id[ism_number] = id; hRendCfg->number_of_objects = add( hRendCfg->number_of_objects, 1 ); IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, ism_number, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #else IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #endif Loading Loading
lib_com/common_api_types.h +4 −0 Original line number Diff line number Diff line Loading @@ -343,6 +343,10 @@ typedef struct _IVAS_RENDER_CONFIG Word16 directivity_fx[IVAS_MAX_NUM_OBJECTS * 3]; // has the following q-factor pattern: {6, 6, 15, 6, 6, 15, 6, 6, 15, 6, 6, 15} float distAtt[3]; Word32 distAtt_fx[3]; /* {Q27, Q30, Q30} */ #ifdef NONBE_1377_REND_DIRATT_CONF Word16 object_id[IVAS_MAX_NUM_OBJECTS]; Word16 number_of_objects; #endif } IVAS_RENDER_CONFIG_DATA, *IVAS_RENDER_CONFIG_HANDLE; Loading
lib_rend/ivas_objectRenderer_fx.c +1 −5 Original line number Diff line number Diff line Loading @@ -795,7 +795,7 @@ ivas_error ivas_td_binaural_open_ext_fx( LSSETUP_CUSTOM_STRUCT *customLsInput, const Word32 outFs, #ifdef NONBE_1377_REND_DIRATT_CONF const IVAS_REND_InputId id, /* i: ISM ID */ Word16 ism_number, /* i: ISM number */ #endif Word16 *SrcInd, Word16 *num_src ) Loading @@ -805,9 +805,6 @@ ivas_error ivas_td_binaural_open_ext_fx( IVAS_FORMAT ivas_format; IVAS_OUTPUT_SETUP hTransSetup; ivas_error error; #ifdef NONBE_1377_REND_DIRATT_CONF Word16 ism_number; #endif Word32 *distAtt_fx = NULL; Word16 *directivity_fx = NULL; Loading Loading @@ -850,7 +847,6 @@ ivas_error ivas_td_binaural_open_ext_fx( if ( NULL != hRendCfg ) { #ifdef NONBE_1377_REND_DIRATT_CONF ism_number = sub( s_and( (Word16) 0xFF, id ), 1 ); /* Extract ISM number from ID */ directivity_fx = hRendCfg->directivity_fx + 3 * ism_number; /* Address calculation -- no BASOPs */ #else directivity_fx = hRendCfg->directivity_fx; Loading
lib_rend/ivas_prot_rend_fx.h +1 −1 Original line number Diff line number Diff line Loading @@ -688,7 +688,7 @@ ivas_error ivas_td_binaural_open_ext_fx( LSSETUP_CUSTOM_STRUCT *customLsInput, const Word32 output_Fs, #ifdef NONBE_1377_REND_DIRATT_CONF const IVAS_REND_InputId id, /* i : ISM ID */ const Word16 ism_number, /* i : ISM number */ #endif Word16 *SrcInd, Word16 *num_src Loading
lib_rend/ivas_render_config_fx.c +4 −0 Original line number Diff line number Diff line Loading @@ -140,6 +140,10 @@ ivas_error ivas_render_config_init_from_rom_fx( move32(); ( *hRenderConfig )->distAtt_fx[2] = ONE_IN_Q30; // Q30 /* Default rolloff factor */ move32(); #ifdef NONBE_1377_REND_DIRATT_CONF ( *hRenderConfig )->number_of_objects = 0; move16(); #endif ( *hRenderConfig )->split_rend_config.splitRendBitRate = ISAR_MAX_SPLIT_REND_BITRATE; move32(); ( *hRenderConfig )->split_rend_config.dof = 3; Loading
lib_rend/lib_rend_fx.c +16 −3 Original line number Diff line number Diff line Loading @@ -1430,6 +1430,9 @@ static ivas_error setRendInputActiveIsm( Word16 num_src; Word16 ivas_format; Word16 num_poses; #ifdef NONBE_1377_REND_DIRATT_CONF Word16 ism_number; #endif IF( EQ_32( getAudioConfigType( inConfig ), IVAS_REND_AUDIO_CONFIG_TYPE_CHANNEL_BASED ) ) { Loading Loading @@ -1494,7 +1497,12 @@ static ivas_error setRendInputActiveIsm( IF( EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) { #ifdef NONBE_1377_REND_DIRATT_CONF IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, id, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) ism_number = hRendCfg->number_of_objects; move16(); hRendCfg->object_id[ism_number] = id; hRendCfg->number_of_objects = add( hRendCfg->number_of_objects, 1 ); IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, ism_number, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #else IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #endif Loading Loading @@ -1531,7 +1539,7 @@ static ivas_error setRendInputActiveIsm( FOR( i = 0; i < MAX_HEAD_ROT_POSES - 1; ++i ) { #ifdef NONBE_1377_REND_DIRATT_CONF IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->splitTdRendWrappers[i], inConfig, hRendCfg, NULL, *inputIsm->base.ctx.pOutSampleRate, id, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->splitTdRendWrappers[i], inConfig, hRendCfg, NULL, *inputIsm->base.ctx.pOutSampleRate, ism_number, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #else IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->splitTdRendWrappers[i], inConfig, hRendCfg, NULL, *inputIsm->base.ctx.pOutSampleRate, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #endif Loading Loading @@ -1569,7 +1577,12 @@ static ivas_error setRendInputActiveIsm( ELSE { #ifdef NONBE_1377_REND_DIRATT_CONF IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, id, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) ism_number = hRendCfg->number_of_objects; move16(); hRendCfg->object_id[ism_number] = id; hRendCfg->number_of_objects = add( hRendCfg->number_of_objects, 1 ); IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, ism_number, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #else IF( NE_32( ( error = ivas_td_binaural_open_ext_fx( &inputIsm->tdRendWrapper, inConfig, hRendCfg, NULL, *rendCtx.pOutSampleRate, SrcInd, &num_src ) ), IVAS_ERR_OK ) ) #endif Loading