Loading lib_dec/lib_dec.c +24 −2 Original line number Diff line number Diff line Loading @@ -1527,7 +1527,11 @@ ivas_error IVAS_DEC_GetEditableParameters( } #endif } #ifdef NONBE_1217_INIT_OBJ_EDIT else if ( st_ivas->ivas_format == MASA_ISM_FORMAT || ( st_ivas->ivas_format == MASA_FORMAT && st_ivas->nchan_ism > 0 ) ) #else else if ( st_ivas->ivas_format == MASA_ISM_FORMAT && ( st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_DISC ) ) #endif { /* object editing possible only in two highest OMASA modes */ if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC ) Loading @@ -1546,7 +1550,11 @@ ivas_error IVAS_DEC_GetEditableParameters( hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = st_ivas->hIsmMetaData[obj]->non_diegetic_flag; } } #ifdef NONBE_1217_INIT_OBJ_EDIT else if ( ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ ) #else else #endif { /* Handle MONO output */ if ( st_ivas->renderer_type != RENDERER_MONO_DOWNMIX ) Loading @@ -1573,6 +1581,18 @@ ivas_error IVAS_DEC_GetEditableParameters( hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = st_ivas->hIsmMetaData[obj]->non_diegetic_flag; } } #ifdef NONBE_1217_INIT_OBJ_EDIT else if ( ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ || ism_mode == ISM_MODE_NONE ) { hIvasEditableParameters->num_obj = 0; } #ifdef DEBUGGING else { assert( 0 && "This should never happen!" ); } #endif #endif } return IVAS_ERR_OK; Loading Loading @@ -1709,14 +1729,16 @@ ivas_error IVAS_DEC_SetEditableParameters( return IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED; } } #ifdef DEBUGGING else { assert( 0 && "This should never happen!" ); } #endif } else if ( st_ivas->ivas_format == MASA_ISM_FORMAT && ( st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_DISC ) ) { int32_t id_th; int16_t id_th; float threshold_azi, threshold_ele; #ifdef DEBUGGING Loading Loading @@ -1764,7 +1786,7 @@ ivas_error IVAS_DEC_SetEditableParameters( * which in turn depends from the object priority and importance: * importance -> priority -> number of bits -> elevation resolution -> elevation ring index -> azimuth resolution. * leading to elevation_resolution -> elevation threshold and azimuth resolution -> azimuth threshold */ id_th = (int) ( fabsf( (float) st_ivas->hMasaIsmData->elevation_ism[obj][dirac_read_idx] ) / delta_theta_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 3] + 0.5f ); id_th = (int16_t) ( fabsf( (float) st_ivas->hMasaIsmData->elevation_ism[obj][dirac_read_idx] ) / delta_theta_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 3] + 0.5f ); threshold_azi = 360.0f / (float) no_phi_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 1][id_th]; threshold_ele = delta_theta_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 3]; Loading Loading
lib_dec/lib_dec.c +24 −2 Original line number Diff line number Diff line Loading @@ -1527,7 +1527,11 @@ ivas_error IVAS_DEC_GetEditableParameters( } #endif } #ifdef NONBE_1217_INIT_OBJ_EDIT else if ( st_ivas->ivas_format == MASA_ISM_FORMAT || ( st_ivas->ivas_format == MASA_FORMAT && st_ivas->nchan_ism > 0 ) ) #else else if ( st_ivas->ivas_format == MASA_ISM_FORMAT && ( st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_DISC ) ) #endif { /* object editing possible only in two highest OMASA modes */ if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC ) Loading @@ -1546,7 +1550,11 @@ ivas_error IVAS_DEC_GetEditableParameters( hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = st_ivas->hIsmMetaData[obj]->non_diegetic_flag; } } #ifdef NONBE_1217_INIT_OBJ_EDIT else if ( ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ ) #else else #endif { /* Handle MONO output */ if ( st_ivas->renderer_type != RENDERER_MONO_DOWNMIX ) Loading @@ -1573,6 +1581,18 @@ ivas_error IVAS_DEC_GetEditableParameters( hIvasEditableParameters->ism_metadata[obj].non_diegetic_flag = st_ivas->hIsmMetaData[obj]->non_diegetic_flag; } } #ifdef NONBE_1217_INIT_OBJ_EDIT else if ( ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ || ism_mode == ISM_MODE_NONE ) { hIvasEditableParameters->num_obj = 0; } #ifdef DEBUGGING else { assert( 0 && "This should never happen!" ); } #endif #endif } return IVAS_ERR_OK; Loading Loading @@ -1709,14 +1729,16 @@ ivas_error IVAS_DEC_SetEditableParameters( return IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED; } } #ifdef DEBUGGING else { assert( 0 && "This should never happen!" ); } #endif } else if ( st_ivas->ivas_format == MASA_ISM_FORMAT && ( st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_DISC ) ) { int32_t id_th; int16_t id_th; float threshold_azi, threshold_ele; #ifdef DEBUGGING Loading Loading @@ -1764,7 +1786,7 @@ ivas_error IVAS_DEC_SetEditableParameters( * which in turn depends from the object priority and importance: * importance -> priority -> number of bits -> elevation resolution -> elevation ring index -> azimuth resolution. * leading to elevation_resolution -> elevation threshold and azimuth resolution -> azimuth threshold */ id_th = (int) ( fabsf( (float) st_ivas->hMasaIsmData->elevation_ism[obj][dirac_read_idx] ) / delta_theta_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 3] + 0.5f ); id_th = (int16_t) ( fabsf( (float) st_ivas->hMasaIsmData->elevation_ism[obj][dirac_read_idx] ) / delta_theta_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 3] + 0.5f ); threshold_azi = 360.0f / (float) no_phi_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 1][id_th]; threshold_ele = delta_theta_masa[st_ivas->hMasaIsmData->bits_ism[obj] - 3]; Loading