Loading lib_com/ivas_ism_com.c +8 −3 Original line number Diff line number Diff line Loading @@ -167,19 +167,24 @@ ivas_error ivas_ism_config( for ( ch = 0; ch < n_ISms; ch++ ) { #ifdef FIX_532_ISM_MD_INACTIVE if ( ism_imp[ch] == ISM_NO_META ) //if ( ism_imp[ch] == ISM_NO_META ) { nb_bits_metadata[0] += ISM_METADATA_MD_FLAG_BITS; if ( null_metadata_flag[ch] ) { nb_bits_metadata[0] += ISM_METADATA_MD_FLAG_BITS; nb_bits_metadata[0] += ISM_METADATA_FLAG_BITS; } else { if ( ism_imp[ch] == ISM_NO_META ) { nb_bits_metadata[0] += ISM_METADATA_MD_FLAG_BITS; nb_bits_metadata[0] += ISM_METADATA_INACTIVE_FLAG_BITS; } } } #else if ( hIsmMeta[ch]->ism_metadata_flag == 0 ) { Loading lib_dec/ivas_ism_metadata_dec.c +9 −2 Original line number Diff line number Diff line Loading @@ -241,6 +241,7 @@ ivas_error ivas_ism_metadata_dec( non_diegetic_flag_global = get_next_indice( st0, ISM_METADATA_IS_NDP_BITS ); } } /* Apply hysteresis in case rate switching causes fluctuation in presence of extended metadata */ if ( *ism_extmeta_active == -1 || *ism_extmeta_active == ism_extmeta_bitstream ) /* If first frame or bitstream matches internal state */ { Loading @@ -257,7 +258,7 @@ ivas_error ivas_ism_metadata_dec( } } /* Read ISM present flags (one per object) */ /* Read ISM metadata flags (one per object) */ for ( ch = 0; ch < *nchan_transport; ch++ ) { ism_imp[ch] = get_next_indice( st0, ISM_METADATA_FLAG_BITS ); Loading Loading @@ -290,7 +291,13 @@ ivas_error ivas_ism_metadata_dec( { /* low-rate ISM_NO_META frame */ null_metadata_flag[ch] = get_next_indice( st0, ISM_METADATA_INACTIVE_FLAG_BITS ); } } for ( ch = 0; ch < *nchan_transport; ch++ ) { if ( ism_imp[ch] == ISM_NO_META ) { if ( null_metadata_flag[ch] ) { /* read the true ISM class */ Loading lib_enc/ivas_ism_metadata_enc.c +23 −25 Original line number Diff line number Diff line Loading @@ -333,32 +333,24 @@ ivas_error ivas_ism_metadata_enc( } } /* write ISM metadata flag (one per object) */ for ( ch = 0; ch < nchan_transport; ch++ ) { push_indice( hBstr, IND_ISM_METADATA_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); } #ifdef FIX_532_ISM_MD_INACTIVE /* write ISM_NO_META class signalling */ if ( ism_mode == ISM_MODE_DISC ) { /* write ISM metadata flag (one per object) */ for ( ch = 0; ch < nchan_transport; ch++ ) { if ( ism_imp[ch] == ISM_NO_META ) { if ( null_metadata_flag[ch] ) { /* signal NULL metadata frame */ push_indice( hBstr, IND_ISM_MD_NULL_FLAG, 1, ISM_METADATA_MD_FLAG_BITS ); /* rewrite the ISM class to ISM_NO_META foloowed by the true class */ delete_indice( hBstr, IND_ISM_METADATA_FLAG ); /* write the ISM class to ISM_NO_META and again the true ISM class */ push_indice( hBstr, IND_ISM_METADATA_FLAG, ISM_NO_META, ISM_METADATA_FLAG_BITS ); push_indice( hBstr, IND_ISM_NOISY_SPEECH_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); } else { push_indice( hBstr, IND_ISM_METADATA_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); if ( ism_imp[ch] == ISM_NO_META ) { /* signal low-rate ISM_NO_META frame */ push_indice( hBstr, IND_ISM_MD_NULL_FLAG, 0, ISM_METADATA_MD_FLAG_BITS ); Loading @@ -368,8 +360,14 @@ ivas_error ivas_ism_metadata_enc( } } } } #else /* write ISM metadata flag (one per object) */ for ( ch = 0; ch < nchan_transport; ch++ ) { push_indice( hBstr, IND_ISM_METADATA_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); } if ( ism_mode == ISM_MODE_DISC ) { /* write VAD flag */ Loading Loading
lib_com/ivas_ism_com.c +8 −3 Original line number Diff line number Diff line Loading @@ -167,19 +167,24 @@ ivas_error ivas_ism_config( for ( ch = 0; ch < n_ISms; ch++ ) { #ifdef FIX_532_ISM_MD_INACTIVE if ( ism_imp[ch] == ISM_NO_META ) //if ( ism_imp[ch] == ISM_NO_META ) { nb_bits_metadata[0] += ISM_METADATA_MD_FLAG_BITS; if ( null_metadata_flag[ch] ) { nb_bits_metadata[0] += ISM_METADATA_MD_FLAG_BITS; nb_bits_metadata[0] += ISM_METADATA_FLAG_BITS; } else { if ( ism_imp[ch] == ISM_NO_META ) { nb_bits_metadata[0] += ISM_METADATA_MD_FLAG_BITS; nb_bits_metadata[0] += ISM_METADATA_INACTIVE_FLAG_BITS; } } } #else if ( hIsmMeta[ch]->ism_metadata_flag == 0 ) { Loading
lib_dec/ivas_ism_metadata_dec.c +9 −2 Original line number Diff line number Diff line Loading @@ -241,6 +241,7 @@ ivas_error ivas_ism_metadata_dec( non_diegetic_flag_global = get_next_indice( st0, ISM_METADATA_IS_NDP_BITS ); } } /* Apply hysteresis in case rate switching causes fluctuation in presence of extended metadata */ if ( *ism_extmeta_active == -1 || *ism_extmeta_active == ism_extmeta_bitstream ) /* If first frame or bitstream matches internal state */ { Loading @@ -257,7 +258,7 @@ ivas_error ivas_ism_metadata_dec( } } /* Read ISM present flags (one per object) */ /* Read ISM metadata flags (one per object) */ for ( ch = 0; ch < *nchan_transport; ch++ ) { ism_imp[ch] = get_next_indice( st0, ISM_METADATA_FLAG_BITS ); Loading Loading @@ -290,7 +291,13 @@ ivas_error ivas_ism_metadata_dec( { /* low-rate ISM_NO_META frame */ null_metadata_flag[ch] = get_next_indice( st0, ISM_METADATA_INACTIVE_FLAG_BITS ); } } for ( ch = 0; ch < *nchan_transport; ch++ ) { if ( ism_imp[ch] == ISM_NO_META ) { if ( null_metadata_flag[ch] ) { /* read the true ISM class */ Loading
lib_enc/ivas_ism_metadata_enc.c +23 −25 Original line number Diff line number Diff line Loading @@ -333,32 +333,24 @@ ivas_error ivas_ism_metadata_enc( } } /* write ISM metadata flag (one per object) */ for ( ch = 0; ch < nchan_transport; ch++ ) { push_indice( hBstr, IND_ISM_METADATA_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); } #ifdef FIX_532_ISM_MD_INACTIVE /* write ISM_NO_META class signalling */ if ( ism_mode == ISM_MODE_DISC ) { /* write ISM metadata flag (one per object) */ for ( ch = 0; ch < nchan_transport; ch++ ) { if ( ism_imp[ch] == ISM_NO_META ) { if ( null_metadata_flag[ch] ) { /* signal NULL metadata frame */ push_indice( hBstr, IND_ISM_MD_NULL_FLAG, 1, ISM_METADATA_MD_FLAG_BITS ); /* rewrite the ISM class to ISM_NO_META foloowed by the true class */ delete_indice( hBstr, IND_ISM_METADATA_FLAG ); /* write the ISM class to ISM_NO_META and again the true ISM class */ push_indice( hBstr, IND_ISM_METADATA_FLAG, ISM_NO_META, ISM_METADATA_FLAG_BITS ); push_indice( hBstr, IND_ISM_NOISY_SPEECH_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); } else { push_indice( hBstr, IND_ISM_METADATA_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); if ( ism_imp[ch] == ISM_NO_META ) { /* signal low-rate ISM_NO_META frame */ push_indice( hBstr, IND_ISM_MD_NULL_FLAG, 0, ISM_METADATA_MD_FLAG_BITS ); Loading @@ -368,8 +360,14 @@ ivas_error ivas_ism_metadata_enc( } } } } #else /* write ISM metadata flag (one per object) */ for ( ch = 0; ch < nchan_transport; ch++ ) { push_indice( hBstr, IND_ISM_METADATA_FLAG, ism_imp[ch], ISM_METADATA_FLAG_BITS ); } if ( ism_mode == ISM_MODE_DISC ) { /* write VAD flag */ Loading