Loading lib_com/ivas_prot.h +4 −6 Original line number Diff line number Diff line Loading @@ -778,16 +778,14 @@ float ism_dequant_meta( const int16_t cbsize /* i : codebook size */ ); ivas_error set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* i/o: ISM metadata handle */ float azimuth, /* i : azimuth */ #ifdef TD5 ivas_error ivas_set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* o : ISM metadata handle */ const float azimuth, /* i : azimuth value */ const float elevation, /* i : elevation value */ #ifdef TD5 float radius_meta, /* i : radius */ float yaw, /* i : yaw */ float pitch /* i : pitch */ #else float elevation /* i : elevation */ #endif #ifdef ISM_NO_DIEGETIC_PAN , Loading lib_com/ivas_stat_com.h +0 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,6 @@ /*----------------------------------------------------------------------------------* * Declaration of ISm common (encoder & decoder) structure *----------------------------------------------------------------------------------*/ #ifdef TD5 typedef struct { Loading lib_com/options.h +0 −1 Original line number Diff line number Diff line Loading @@ -154,7 +154,6 @@ #define NO_DIEGETIC_PAN #define FIX_CRASH_EVS_BITSTREAM_WITH_OUTPUT #define ISM_NO_DIEGETIC_PAN #define FIX_376_SBA_ROTATE /*DLB: Fix for issue 376*/ #define FIX_372_LIB_REND_VALIDATE_IO /* FhG: Issue 372: IVAS_rend segfaults with unsupported I/O configs - add validation checks of I/O config */ #define FIX_376_SBA_ROTATE /*DLB: Fix for issue 376*/ Loading lib_dec/ivas_ism_metadata_dec.c +172 −171 Original line number Diff line number Diff line Loading @@ -49,8 +49,10 @@ *-----------------------------------------------------------------------*/ static void decode_angle_indices( DEC_CORE_HANDLE st0, ISM_METADATA_ANGLE_HANDLE angle, int16_t *flag_abs_azimuth ); int16_t decode_radius( DEC_CORE_HANDLE st0, int16_t *last_radius_idx, int16_t *flag_abs_radius ); #ifdef ISM_NO_DIEGETIC_PAN int16_t decode_no_diegetic_pan( DEC_CORE_HANDLE st0, int16_t *last_ndp_idx, int16_t *flag_abs_ndp ); #endif #endif /*-------------------------------------------------------------------------* * ivas_ism_metadata_dec() Loading Loading @@ -195,8 +197,9 @@ ivas_error ivas_ism_metadata_dec( #ifndef ISM_NO_DIEGETIC_PAN ism_imp[ch] = get_next_indice( st0, ISM_METADATA_FLAG_BITS ); #endif #ifdef ISM_NO_DIEGETIC_PAN localVAD[ch] = get_next_indice( st0, ISM_METADATA_VAD_FLAG_BITS ); #endif if ( ism_imp[ch] > ISM_NO_META ) { #ifdef ISM_NO_DIEGETIC_PAN Loading Loading @@ -273,6 +276,31 @@ ivas_error ivas_ism_metadata_dec( #endif #ifdef ISM_NO_DIEGETIC_PAN flag_abs_ndp = 0; if ( hIsmMeta[ch]->ism_metadata_flag == 2 ) { /* Azimuth/Elevation dequantization */ if ( ism_mode == ISM_MODE_PARAM ) { } else /* ISM_MODE_DISC */ { if ( ism_extended_metadata_flag ) { idx_ndp = decode_no_diegetic_pan( st0, &hIsmMetaData->last_no_diegetic_pan_idx, &flag_abs_ndp ); hIsmMetaData->no_diegetic_pan = usdequant( idx_ndp, ISM_NO_DIEGETIC_PAN_MIN, ISM_NO_DIEGETIC_PAN_DELTA ); } else { hIsmMetaData->no_diegetic_pan = FLT_MAX; } } /* save number of metadata bits read */ if ( ism_mode == ISM_MODE_DISC ) { nb_bits_metadata[ch] = st0->next_bit_pos - nb_bits_start; } } if ( hIsmMeta[ch]->ism_metadata_flag == 1 ) { #else Loading Loading @@ -462,40 +490,14 @@ ivas_error ivas_ism_metadata_dec( hIsmMetaData->last_azimuth_idx = idx_azimuth; hIsmMetaData->last_elevation_idx = idx_elevation; #endif /* save number of metadata bits read */ if ( ism_mode == ISM_MODE_DISC ) { nb_bits_metadata[ch] = st0->next_bit_pos - nb_bits_start; } } #ifdef ISM_NO_DIEGETIC_PAN if ( hIsmMeta[ch]->ism_metadata_flag == 2 ) { /* Azimuth/Elevation dequantization */ if ( ism_mode == ISM_MODE_PARAM ) { } else /* ISM_MODE_DISC */ { if ( ism_extended_metadata_flag ) { idx_ndp = decode_no_diegetic_pan( st0, &hIsmMetaData->last_no_diegetic_pan_idx, &flag_abs_ndp ); hIsmMetaData->no_diegetic_pan = usdequant( idx_ndp, ISM_NO_DIEGETIC_PAN_MIN, ISM_NO_DIEGETIC_PAN_DELTA ); } else { hIsmMetaData->no_diegetic_pan = FLT_MAX; } } /* save number of metadata bits read */ if ( ism_mode == ISM_MODE_DISC ) { nb_bits_metadata[ch] = st0->next_bit_pos - nb_bits_start; } } #endif if ( ism_mode == ISM_MODE_PARAM ) { Loading Loading @@ -543,7 +545,6 @@ ivas_error ivas_ism_metadata_dec( } } } } else { set_s( nb_bits_metadata, 0, *nchan_transport ); Loading lib_enc/ivas_ism_metadata_enc.c +7 −10 Original line number Diff line number Diff line Loading @@ -93,17 +93,14 @@ static void encode_no_diegetic_pan( * Set metadata of one ISM MD handle *-------------------------------------------------------------------------*/ /*! r: 0 if success */ ivas_error set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* i/o: ISM metadata handle */ float azimuth, /* i : azimuth */ ivas_error ivas_set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* o : ISM metadata handle */ const float azimuth, /* i : azimuth value */ const float elevation, /* i : elevation */ #ifdef TD5 float elevation, /* i : elevation */ float radius_meta, /* i : radius */ float yaw, /* i : yaw */ float pitch /* i : pitch */ #else float elevation /* i : elevation */ #endif #ifdef ISM_NO_DIEGETIC_PAN , Loading Loading
lib_com/ivas_prot.h +4 −6 Original line number Diff line number Diff line Loading @@ -778,16 +778,14 @@ float ism_dequant_meta( const int16_t cbsize /* i : codebook size */ ); ivas_error set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* i/o: ISM metadata handle */ float azimuth, /* i : azimuth */ #ifdef TD5 ivas_error ivas_set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* o : ISM metadata handle */ const float azimuth, /* i : azimuth value */ const float elevation, /* i : elevation value */ #ifdef TD5 float radius_meta, /* i : radius */ float yaw, /* i : yaw */ float pitch /* i : pitch */ #else float elevation /* i : elevation */ #endif #ifdef ISM_NO_DIEGETIC_PAN , Loading
lib_com/ivas_stat_com.h +0 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,6 @@ /*----------------------------------------------------------------------------------* * Declaration of ISm common (encoder & decoder) structure *----------------------------------------------------------------------------------*/ #ifdef TD5 typedef struct { Loading
lib_com/options.h +0 −1 Original line number Diff line number Diff line Loading @@ -154,7 +154,6 @@ #define NO_DIEGETIC_PAN #define FIX_CRASH_EVS_BITSTREAM_WITH_OUTPUT #define ISM_NO_DIEGETIC_PAN #define FIX_376_SBA_ROTATE /*DLB: Fix for issue 376*/ #define FIX_372_LIB_REND_VALIDATE_IO /* FhG: Issue 372: IVAS_rend segfaults with unsupported I/O configs - add validation checks of I/O config */ #define FIX_376_SBA_ROTATE /*DLB: Fix for issue 376*/ Loading
lib_dec/ivas_ism_metadata_dec.c +172 −171 Original line number Diff line number Diff line Loading @@ -49,8 +49,10 @@ *-----------------------------------------------------------------------*/ static void decode_angle_indices( DEC_CORE_HANDLE st0, ISM_METADATA_ANGLE_HANDLE angle, int16_t *flag_abs_azimuth ); int16_t decode_radius( DEC_CORE_HANDLE st0, int16_t *last_radius_idx, int16_t *flag_abs_radius ); #ifdef ISM_NO_DIEGETIC_PAN int16_t decode_no_diegetic_pan( DEC_CORE_HANDLE st0, int16_t *last_ndp_idx, int16_t *flag_abs_ndp ); #endif #endif /*-------------------------------------------------------------------------* * ivas_ism_metadata_dec() Loading Loading @@ -195,8 +197,9 @@ ivas_error ivas_ism_metadata_dec( #ifndef ISM_NO_DIEGETIC_PAN ism_imp[ch] = get_next_indice( st0, ISM_METADATA_FLAG_BITS ); #endif #ifdef ISM_NO_DIEGETIC_PAN localVAD[ch] = get_next_indice( st0, ISM_METADATA_VAD_FLAG_BITS ); #endif if ( ism_imp[ch] > ISM_NO_META ) { #ifdef ISM_NO_DIEGETIC_PAN Loading Loading @@ -273,6 +276,31 @@ ivas_error ivas_ism_metadata_dec( #endif #ifdef ISM_NO_DIEGETIC_PAN flag_abs_ndp = 0; if ( hIsmMeta[ch]->ism_metadata_flag == 2 ) { /* Azimuth/Elevation dequantization */ if ( ism_mode == ISM_MODE_PARAM ) { } else /* ISM_MODE_DISC */ { if ( ism_extended_metadata_flag ) { idx_ndp = decode_no_diegetic_pan( st0, &hIsmMetaData->last_no_diegetic_pan_idx, &flag_abs_ndp ); hIsmMetaData->no_diegetic_pan = usdequant( idx_ndp, ISM_NO_DIEGETIC_PAN_MIN, ISM_NO_DIEGETIC_PAN_DELTA ); } else { hIsmMetaData->no_diegetic_pan = FLT_MAX; } } /* save number of metadata bits read */ if ( ism_mode == ISM_MODE_DISC ) { nb_bits_metadata[ch] = st0->next_bit_pos - nb_bits_start; } } if ( hIsmMeta[ch]->ism_metadata_flag == 1 ) { #else Loading Loading @@ -462,40 +490,14 @@ ivas_error ivas_ism_metadata_dec( hIsmMetaData->last_azimuth_idx = idx_azimuth; hIsmMetaData->last_elevation_idx = idx_elevation; #endif /* save number of metadata bits read */ if ( ism_mode == ISM_MODE_DISC ) { nb_bits_metadata[ch] = st0->next_bit_pos - nb_bits_start; } } #ifdef ISM_NO_DIEGETIC_PAN if ( hIsmMeta[ch]->ism_metadata_flag == 2 ) { /* Azimuth/Elevation dequantization */ if ( ism_mode == ISM_MODE_PARAM ) { } else /* ISM_MODE_DISC */ { if ( ism_extended_metadata_flag ) { idx_ndp = decode_no_diegetic_pan( st0, &hIsmMetaData->last_no_diegetic_pan_idx, &flag_abs_ndp ); hIsmMetaData->no_diegetic_pan = usdequant( idx_ndp, ISM_NO_DIEGETIC_PAN_MIN, ISM_NO_DIEGETIC_PAN_DELTA ); } else { hIsmMetaData->no_diegetic_pan = FLT_MAX; } } /* save number of metadata bits read */ if ( ism_mode == ISM_MODE_DISC ) { nb_bits_metadata[ch] = st0->next_bit_pos - nb_bits_start; } } #endif if ( ism_mode == ISM_MODE_PARAM ) { Loading Loading @@ -543,7 +545,6 @@ ivas_error ivas_ism_metadata_dec( } } } } else { set_s( nb_bits_metadata, 0, *nchan_transport ); Loading
lib_enc/ivas_ism_metadata_enc.c +7 −10 Original line number Diff line number Diff line Loading @@ -93,17 +93,14 @@ static void encode_no_diegetic_pan( * Set metadata of one ISM MD handle *-------------------------------------------------------------------------*/ /*! r: 0 if success */ ivas_error set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* i/o: ISM metadata handle */ float azimuth, /* i : azimuth */ ivas_error ivas_set_ism_metadata( ISM_METADATA_HANDLE hIsmMeta, /* o : ISM metadata handle */ const float azimuth, /* i : azimuth value */ const float elevation, /* i : elevation */ #ifdef TD5 float elevation, /* i : elevation */ float radius_meta, /* i : radius */ float yaw, /* i : yaw */ float pitch /* i : pitch */ #else float elevation /* i : elevation */ #endif #ifdef ISM_NO_DIEGETIC_PAN , Loading