Loading lib_com/ivas_cnst.h +1 −1 Original line number Diff line number Diff line Loading @@ -311,7 +311,7 @@ typedef enum #define MIN_BRATE_SWB_STEREO IVAS_13k2 /* min. stereo bitrate where SWB is supported */ #define MIN_BRATE_FB_STEREO IVAS_32k /* min. SCE and stereo bitrate where FB is supported */ #ifdef ISM_FB #define MIN_BRATE_FB_STEREO_ISM 24000 /* min. SCE bitrate where FB is supported in ISM format */ #define MIN_BRATE_FB_ISM 24000 /* min. SCE bitrate where FB is supported in ISM format */ #endif #define MIN_TDM_BRATE_WB_TBE_1k05 12000 /* min. per channel bitrate where WB TBE @1.05 kbps is supported (0.35kbs at lower bitrates) */ Loading lib_com/options.h +4 −4 Original line number Diff line number Diff line Loading @@ -143,7 +143,8 @@ #define BITSTREAM_INDICES_MEMORY /* Don't count memory for bitstream Indice at the encoder - it is a temporary solution for development only */ #endif #define DISABLE_ADAP_RES_COD_TMP /* temporary fix for IVAS-403, disables adaptive residual coding */ /*#define DISABLE_ADAP_RES_COD_TMP*/ /* temporary fix for IVAS-403, disables adaptive residual coding */ #define ADAP_OPT /* Issue 69: optimized the adap algorithm */ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #ifdef IND_LIST_DYN Loading @@ -151,17 +152,16 @@ #endif #define FIX_383_CLEAN_UP /* Dlb : Clean up of unused functions */ // #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_547_NAN_IGF_DEC /* FhG: issue 547: fix possible nan in IGF decoder */ #define FIX_529_BWD_ISSUE /* VA: issue 529: fix Bandwidth Detector not working reliably for Music and Generic Audio */ #define IGF_TUNING_96 /* FhG: Issue 546: slight tuning of IGF config used in 96 kbps stereo, 128 kbps SBA and others */ #define ISM_FB /* issue 556: change SWB to FB coding in 1ISM at 24.4 kbps */ /* ################## End DEVELOPMENT switches ######################### */ /* clang-format on */ Loading lib_com/rom_com.c +8 −0 Original line number Diff line number Diff line Loading @@ -21632,14 +21632,22 @@ const int16_t igf_tile_offset_table[IGF_BITRATE_UNKNOWN][2*IGF_MAX_TILES+1] = { { 3, 1, 0, 2, 40, 3, 80 }, /* 48000 SWB (stereo TCX10) */ { 4, 2, 80, 4, 128, 6, 144, 7, 212 }, /* 64000 SWB (stereo) */ { 2, 2, 212, 4, 280 }, /* 80000 SWB (stereo) */ #ifdef IGF_TUNING_96 { 1, 3, 200}, /* 96000 SWB (stereo) */ #else { 1, 3, 320}, /* 96000 SWB (stereo) */ #endif { 9, 1, 0, 2, 32, 3, 72, 4, 120, 5, 48, 6, 112, 7, 64, 8, 0, 9, 80 }, /* 24400 FB (stereo) */ {10, 1, 0, 2, 28, 3, 64, 4, 104, 5, 32, 6, 80, 7, 136, 8, 64, 9, 0, 10, 80 }, /* 32000 FB (stereo) */ { 7, 1, 120, 2, 152, 3, 184, 4, 224, 5, 140, 6, 192, 8, 140}, /* 48000 FB (stereo) */ { 4, 1, 0, 2, 40, 3, 80, 4, 140 }, /* 48000 FB (stereo TCX10) */ { 5, 2, 80, 4, 128, 6, 144, 7, 212, 9, 160 }, /* 64000 FB (stereo) */ { 3, 2, 212, 4, 280, 6, 200 }, /* 80000 FB (stereo) */ #ifdef IGF_TUNING_96 { 2, 3, 200, 5, 240}, /* 96000 FB (stereo) */ #else { 2, 3, 320, 5, 240}, /* 96000 FB (stereo) */ #endif { 1, 2, 416} /*128000 FB (stereo) */ }; lib_dec/ivas_ism_metadata_dec.c +1 −1 Original line number Diff line number Diff line Loading @@ -542,7 +542,7 @@ ivas_error ivas_ism_metadata_dec( if ( ism_mode == ISM_MODE_DISC ) { #ifdef FIX_532_ISM_MD_INACTIVE if ( ism_imp[ch] == ISM_NO_META ) if ( ism_imp[ch] == ISM_NO_META && total_brate[ch] < ACELP_8k00 ) #else if ( hIsmMeta[ch]->ism_metadata_flag == 0 && localVAD[ch] == 0 && ism_metadata_flag_global ) #endif Loading lib_dec/ivas_sce_dec.c +2 −1 Original line number Diff line number Diff line Loading @@ -124,7 +124,8 @@ ivas_error ivas_sce_dec( st->bwidth = WB; } #ifdef ISM_FB else if ( ( hSCE->element_brate < MIN_BRATE_FB_STEREO_ISM && st_ivas->ism_mode != ISM_MODE_NONE ) || ( hSCE->element_brate < MIN_BRATE_FB_STEREO && st_ivas->ism_mode == ISM_MODE_NONE ) ) else if ( ( hSCE->element_brate < MIN_BRATE_FB_STEREO && !st->is_ism_format ) || ( hSCE->element_brate < MIN_BRATE_FB_ISM && st->is_ism_format ) ) #else else if ( hSCE->element_brate < MIN_BRATE_FB_STEREO ) #endif Loading Loading
lib_com/ivas_cnst.h +1 −1 Original line number Diff line number Diff line Loading @@ -311,7 +311,7 @@ typedef enum #define MIN_BRATE_SWB_STEREO IVAS_13k2 /* min. stereo bitrate where SWB is supported */ #define MIN_BRATE_FB_STEREO IVAS_32k /* min. SCE and stereo bitrate where FB is supported */ #ifdef ISM_FB #define MIN_BRATE_FB_STEREO_ISM 24000 /* min. SCE bitrate where FB is supported in ISM format */ #define MIN_BRATE_FB_ISM 24000 /* min. SCE bitrate where FB is supported in ISM format */ #endif #define MIN_TDM_BRATE_WB_TBE_1k05 12000 /* min. per channel bitrate where WB TBE @1.05 kbps is supported (0.35kbs at lower bitrates) */ Loading
lib_com/options.h +4 −4 Original line number Diff line number Diff line Loading @@ -143,7 +143,8 @@ #define BITSTREAM_INDICES_MEMORY /* Don't count memory for bitstream Indice at the encoder - it is a temporary solution for development only */ #endif #define DISABLE_ADAP_RES_COD_TMP /* temporary fix for IVAS-403, disables adaptive residual coding */ /*#define DISABLE_ADAP_RES_COD_TMP*/ /* temporary fix for IVAS-403, disables adaptive residual coding */ #define ADAP_OPT /* Issue 69: optimized the adap algorithm */ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #ifdef IND_LIST_DYN Loading @@ -151,17 +152,16 @@ #endif #define FIX_383_CLEAN_UP /* Dlb : Clean up of unused functions */ // #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_547_NAN_IGF_DEC /* FhG: issue 547: fix possible nan in IGF decoder */ #define FIX_529_BWD_ISSUE /* VA: issue 529: fix Bandwidth Detector not working reliably for Music and Generic Audio */ #define IGF_TUNING_96 /* FhG: Issue 546: slight tuning of IGF config used in 96 kbps stereo, 128 kbps SBA and others */ #define ISM_FB /* issue 556: change SWB to FB coding in 1ISM at 24.4 kbps */ /* ################## End DEVELOPMENT switches ######################### */ /* clang-format on */ Loading
lib_com/rom_com.c +8 −0 Original line number Diff line number Diff line Loading @@ -21632,14 +21632,22 @@ const int16_t igf_tile_offset_table[IGF_BITRATE_UNKNOWN][2*IGF_MAX_TILES+1] = { { 3, 1, 0, 2, 40, 3, 80 }, /* 48000 SWB (stereo TCX10) */ { 4, 2, 80, 4, 128, 6, 144, 7, 212 }, /* 64000 SWB (stereo) */ { 2, 2, 212, 4, 280 }, /* 80000 SWB (stereo) */ #ifdef IGF_TUNING_96 { 1, 3, 200}, /* 96000 SWB (stereo) */ #else { 1, 3, 320}, /* 96000 SWB (stereo) */ #endif { 9, 1, 0, 2, 32, 3, 72, 4, 120, 5, 48, 6, 112, 7, 64, 8, 0, 9, 80 }, /* 24400 FB (stereo) */ {10, 1, 0, 2, 28, 3, 64, 4, 104, 5, 32, 6, 80, 7, 136, 8, 64, 9, 0, 10, 80 }, /* 32000 FB (stereo) */ { 7, 1, 120, 2, 152, 3, 184, 4, 224, 5, 140, 6, 192, 8, 140}, /* 48000 FB (stereo) */ { 4, 1, 0, 2, 40, 3, 80, 4, 140 }, /* 48000 FB (stereo TCX10) */ { 5, 2, 80, 4, 128, 6, 144, 7, 212, 9, 160 }, /* 64000 FB (stereo) */ { 3, 2, 212, 4, 280, 6, 200 }, /* 80000 FB (stereo) */ #ifdef IGF_TUNING_96 { 2, 3, 200, 5, 240}, /* 96000 FB (stereo) */ #else { 2, 3, 320, 5, 240}, /* 96000 FB (stereo) */ #endif { 1, 2, 416} /*128000 FB (stereo) */ };
lib_dec/ivas_ism_metadata_dec.c +1 −1 Original line number Diff line number Diff line Loading @@ -542,7 +542,7 @@ ivas_error ivas_ism_metadata_dec( if ( ism_mode == ISM_MODE_DISC ) { #ifdef FIX_532_ISM_MD_INACTIVE if ( ism_imp[ch] == ISM_NO_META ) if ( ism_imp[ch] == ISM_NO_META && total_brate[ch] < ACELP_8k00 ) #else if ( hIsmMeta[ch]->ism_metadata_flag == 0 && localVAD[ch] == 0 && ism_metadata_flag_global ) #endif Loading
lib_dec/ivas_sce_dec.c +2 −1 Original line number Diff line number Diff line Loading @@ -124,7 +124,8 @@ ivas_error ivas_sce_dec( st->bwidth = WB; } #ifdef ISM_FB else if ( ( hSCE->element_brate < MIN_BRATE_FB_STEREO_ISM && st_ivas->ism_mode != ISM_MODE_NONE ) || ( hSCE->element_brate < MIN_BRATE_FB_STEREO && st_ivas->ism_mode == ISM_MODE_NONE ) ) else if ( ( hSCE->element_brate < MIN_BRATE_FB_STEREO && !st->is_ism_format ) || ( hSCE->element_brate < MIN_BRATE_FB_ISM && st->is_ism_format ) ) #else else if ( hSCE->element_brate < MIN_BRATE_FB_STEREO ) #endif Loading