Loading apps/decoder.c +18 −16 Original line number Diff line number Diff line Loading @@ -2371,6 +2371,10 @@ static ivas_error decodeG192( goto cleanup; } #ifdef OBJ_EDITING_INTERFACE #ifdef DEBUGGING if ( arg.objEditEnabled ) { /* Do object info editing here */ /* get object parameters */ if ( ( error = IVAS_DEC_GetEditableParameters( hIvasDec, &editableParameters ) ) != IVAS_ERR_OK ) Loading @@ -2380,9 +2384,7 @@ static ivas_error decodeG192( } /* edit object parameters...*/ #ifdef DEBUGGING if ( arg.objEditEnabled ) { /* put the objects equally spaced at the horizontal plane */ /* and play a little bit with the gains... */ int16_t obj_idx, non_diegetic_obj_idx; Loading Loading @@ -2415,6 +2417,7 @@ static ivas_error decodeG192( } } } /* 2 second AM of the object gains. */ gain_mean = 1.0f; gain_amplitude = 0.7f; gain_freq = ( 2.0f * 3.1415f ) / 100.0f; Loading @@ -2423,15 +2426,14 @@ static ivas_error decodeG192( { editableParameters.ism_metadata[obj_idx].gain = gain_mean + gain_amplitude * sinf( (float) frame * gain_freq + gain_freq_offset * (float) obj_idx ); } } #endif /* set new object parameters*/ if ( ( error = IVAS_DEC_SetEditableParameters( hIvasDec, editableParameters ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError: could not set the editable parameters: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } #endif /* Do the final preparations needed for rendering */ if ( ( error = IVAS_DEC_PrepareRenderer( hIvasDec ) ) != IVAS_ERR_OK ) { Loading lib_dec/ivas_jbm_dec.c +10 −3 Original line number Diff line number Diff line Loading @@ -191,7 +191,10 @@ ivas_error ivas_jbm_dec_tc( } #ifdef OBJ_EDITING_INTERFACE if ( st_ivas->ism_mode != ISM_MODE_PARAM && ( st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->renderer_type != RENDERER_MONO_DOWNMIX ) ) { ivas_ism_renderer_update_md( st_ivas ); } #endif if ( st_ivas->renderer_type == RENDERER_MONO_DOWNMIX ) Loading Loading @@ -965,7 +968,11 @@ void ivas_jbm_dec_feed_tc_to_renderer( } else #endif if ( st_ivas->mc_mode == MC_MODE_PARAMMC ) if ( st_ivas->mc_mode == MC_MODE_PARAMMC #ifdef OBJ_EDITING_INTERFACE && st_ivas->hTcBuffer->tc_buffer_mode == TC_BUFFER_MODE_RENDERER #endif ) { ivas_param_mc_dec_digest_tc( st_ivas, (uint8_t) n_render_timeslots, p_data_f ); } Loading Loading @@ -1011,7 +1018,7 @@ void ivas_jbm_dec_prepare_renderer( { ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas ); } if ( st_ivas->ivas_format == ISM_FORMAT ) else if ( st_ivas->ivas_format == ISM_FORMAT ) { /* Rendering */ if ( st_ivas->ism_mode == ISM_MODE_PARAM ) Loading lib_dec/ivas_objectRenderer_internal.c +29 −18 Original line number Diff line number Diff line Loading @@ -174,6 +174,8 @@ ivas_error ivas_td_binaural_renderer_sf( if ( subframe_idx == ism_md_subframe_update_jbm ) { #ifdef OBJ_EDITING_INTERFACE if ( st_ivas->ivas_format == ISM_FORMAT ) { ISM_METADATA_FRAME ismMetaData[MAX_NUM_OBJECTS]; ISM_METADATA_HANDLE hIsmMetaData[MAX_NUM_OBJECTS]; int16_t s_idx; Loading @@ -189,13 +191,22 @@ ivas_error ivas_td_binaural_renderer_sf( ismMetaData[nS].gain = st_ivas->hIsmRendererData->edited_gains[nS]; hIsmMetaData[nS] = &ismMetaData[nS]; } if ( ( error = TDREND_Update_object_positions( st_ivas->hBinRendererTd, nchan_ism, st_ivas->ivas_format, hIsmMetaData ) ) != IVAS_ERR_OK ) #else if ( ( error = TDREND_Update_object_positions( st_ivas->hBinRendererTd, nchan_ism, st_ivas->ivas_format, st_ivas->hIsmMetaData ) ) != IVAS_ERR_OK ) { return error; } } else { #endif if ( ( error = TDREND_Update_object_positions( st_ivas->hBinRendererTd, nchan_ism, st_ivas->ivas_format, st_ivas->hIsmMetaData ) ) != IVAS_ERR_OK ) { return error; } #ifdef OBJ_EDITING_INTERFACE } #endif } /* Update the listener's location/orientation */ Loading Loading
apps/decoder.c +18 −16 Original line number Diff line number Diff line Loading @@ -2371,6 +2371,10 @@ static ivas_error decodeG192( goto cleanup; } #ifdef OBJ_EDITING_INTERFACE #ifdef DEBUGGING if ( arg.objEditEnabled ) { /* Do object info editing here */ /* get object parameters */ if ( ( error = IVAS_DEC_GetEditableParameters( hIvasDec, &editableParameters ) ) != IVAS_ERR_OK ) Loading @@ -2380,9 +2384,7 @@ static ivas_error decodeG192( } /* edit object parameters...*/ #ifdef DEBUGGING if ( arg.objEditEnabled ) { /* put the objects equally spaced at the horizontal plane */ /* and play a little bit with the gains... */ int16_t obj_idx, non_diegetic_obj_idx; Loading Loading @@ -2415,6 +2417,7 @@ static ivas_error decodeG192( } } } /* 2 second AM of the object gains. */ gain_mean = 1.0f; gain_amplitude = 0.7f; gain_freq = ( 2.0f * 3.1415f ) / 100.0f; Loading @@ -2423,15 +2426,14 @@ static ivas_error decodeG192( { editableParameters.ism_metadata[obj_idx].gain = gain_mean + gain_amplitude * sinf( (float) frame * gain_freq + gain_freq_offset * (float) obj_idx ); } } #endif /* set new object parameters*/ if ( ( error = IVAS_DEC_SetEditableParameters( hIvasDec, editableParameters ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError: could not set the editable parameters: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } #endif /* Do the final preparations needed for rendering */ if ( ( error = IVAS_DEC_PrepareRenderer( hIvasDec ) ) != IVAS_ERR_OK ) { Loading
lib_dec/ivas_jbm_dec.c +10 −3 Original line number Diff line number Diff line Loading @@ -191,7 +191,10 @@ ivas_error ivas_jbm_dec_tc( } #ifdef OBJ_EDITING_INTERFACE if ( st_ivas->ism_mode != ISM_MODE_PARAM && ( st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->renderer_type != RENDERER_MONO_DOWNMIX ) ) { ivas_ism_renderer_update_md( st_ivas ); } #endif if ( st_ivas->renderer_type == RENDERER_MONO_DOWNMIX ) Loading Loading @@ -965,7 +968,11 @@ void ivas_jbm_dec_feed_tc_to_renderer( } else #endif if ( st_ivas->mc_mode == MC_MODE_PARAMMC ) if ( st_ivas->mc_mode == MC_MODE_PARAMMC #ifdef OBJ_EDITING_INTERFACE && st_ivas->hTcBuffer->tc_buffer_mode == TC_BUFFER_MODE_RENDERER #endif ) { ivas_param_mc_dec_digest_tc( st_ivas, (uint8_t) n_render_timeslots, p_data_f ); } Loading Loading @@ -1011,7 +1018,7 @@ void ivas_jbm_dec_prepare_renderer( { ivas_jbm_dec_td_renderers_adapt_subframes( st_ivas ); } if ( st_ivas->ivas_format == ISM_FORMAT ) else if ( st_ivas->ivas_format == ISM_FORMAT ) { /* Rendering */ if ( st_ivas->ism_mode == ISM_MODE_PARAM ) Loading
lib_dec/ivas_objectRenderer_internal.c +29 −18 Original line number Diff line number Diff line Loading @@ -174,6 +174,8 @@ ivas_error ivas_td_binaural_renderer_sf( if ( subframe_idx == ism_md_subframe_update_jbm ) { #ifdef OBJ_EDITING_INTERFACE if ( st_ivas->ivas_format == ISM_FORMAT ) { ISM_METADATA_FRAME ismMetaData[MAX_NUM_OBJECTS]; ISM_METADATA_HANDLE hIsmMetaData[MAX_NUM_OBJECTS]; int16_t s_idx; Loading @@ -189,13 +191,22 @@ ivas_error ivas_td_binaural_renderer_sf( ismMetaData[nS].gain = st_ivas->hIsmRendererData->edited_gains[nS]; hIsmMetaData[nS] = &ismMetaData[nS]; } if ( ( error = TDREND_Update_object_positions( st_ivas->hBinRendererTd, nchan_ism, st_ivas->ivas_format, hIsmMetaData ) ) != IVAS_ERR_OK ) #else if ( ( error = TDREND_Update_object_positions( st_ivas->hBinRendererTd, nchan_ism, st_ivas->ivas_format, st_ivas->hIsmMetaData ) ) != IVAS_ERR_OK ) { return error; } } else { #endif if ( ( error = TDREND_Update_object_positions( st_ivas->hBinRendererTd, nchan_ism, st_ivas->ivas_format, st_ivas->hIsmMetaData ) ) != IVAS_ERR_OK ) { return error; } #ifdef OBJ_EDITING_INTERFACE } #endif } /* Update the listener's location/orientation */ Loading