Commit af08b53c authored by multrus's avatar multrus
Browse files

[cleanup] accept NONBE_FIX_539_MASA_384K_CHIRP

parent fbb553b1
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -151,7 +151,6 @@
/*#define FIX_I4_OL_PITCH*/                             /* fix open-loop pitch used for EVS core switching */


#define NONBE_FIX_539_MASA_384K_CHIRP                   /* Nokia: issue 539, puts the normalization of the energy ratios at the correct place, affect MASA 384k only */
#define FIX_635_UBSAN_UNDEFINED_BEHAVIOUR_QMETA         /* Nokia: issue 635 adding cast to uint16_t in q_metadata_enc */

/* Fixes for bugs found during split rendering contribution development */
+0 −37
Original line number Diff line number Diff line
@@ -915,7 +915,6 @@ int16_t ivas_qmetadata_dec_decode_hr_384_512(
    }
    if ( hQMetaData->no_directions == 2 )
    {
#ifdef NONBE_FIX_539_MASA_384K_CHIRP
        float ratioSum;
        if ( bits_sph_idx == 16 )
        {
@@ -968,25 +967,6 @@ int16_t ivas_qmetadata_dec_decode_hr_384_512(
                }
            }
        }
#else
        float ratioSum;
        for ( b = hQMetaData->q_direction[1].cfg.start_band; b < hQMetaData->q_direction[1].cfg.nbands; b++ )
        {
            for ( m = 0; m < hQMetaData->q_direction[1].cfg.nblocks; m++ )
            {
                hQMetaData->q_direction[1].band_data[b].energy_ratio[m] = 1.0f - diffuseness_reconstructions_hr[hQMetaData->q_direction[1].band_data[b].energy_ratio_index[m]];

                /* Scale energy ratios that sum to over one */
                ratioSum = hQMetaData->q_direction[0].band_data[b].energy_ratio[m] + hQMetaData->q_direction[1].band_data[b].energy_ratio[m];

                if ( ratioSum > 1.0f )
                {
                    hQMetaData->q_direction[0].band_data[b].energy_ratio[m] /= ratioSum;
                    hQMetaData->q_direction[1].band_data[b].energy_ratio[m] /= ratioSum;
                }
            }
        }
#endif
    }

    if ( hQMetaData->no_directions == 2 )
@@ -1133,23 +1113,6 @@ int16_t ivas_qmetadata_dec_decode_hr_384_512(
                }
            }
        }
#ifndef NONBE_FIX_539_MASA_384K_CHIRP
        /* Scale energy ratios that sum to over one */
        for ( b = 0; b < hQMetaData->q_direction[0].cfg.nbands; b++ )
        {
            float ratioSum;
            for ( m = 0; m < hQMetaData->q_direction[0].cfg.nblocks; m++ )
            {
                ratioSum = hQMetaData->q_direction[0].band_data[b].energy_ratio[m] + hQMetaData->q_direction[1].band_data[b].energy_ratio[m];

                if ( ratioSum > 1.0f )
                {
                    hQMetaData->q_direction[0].band_data[b].energy_ratio[m] = hQMetaData->q_direction[0].band_data[b].energy_ratio[m] / ratioSum;
                    hQMetaData->q_direction[1].band_data[b].energy_ratio[m] = hQMetaData->q_direction[1].band_data[b].energy_ratio[m] / ratioSum;
                }
            }
        }
#endif
    }

#ifdef DEBUG_MODE_QMETADATA
+0 −22
Original line number Diff line number Diff line
@@ -1549,7 +1549,6 @@ static void ivas_qmetadata_quantize_diffuseness_nrg_ratios_hr_512(

    if ( hQMetaData->no_directions == 2 )
    {
#ifdef NONBE_FIX_539_MASA_384K_CHIRP
        float ratioSum;
        if ( bits_dir_hr == 16 )
        {
@@ -1612,27 +1611,6 @@ static void ivas_qmetadata_quantize_diffuseness_nrg_ratios_hr_512(
                }
            }
        }
#else
        float ratioSum;
        for ( j = hQMetaData->q_direction[1].cfg.start_band; j < hQMetaData->q_direction[1].cfg.nbands; ++j )
        {
            for ( k = 0; k < hQMetaData->q_direction[1].cfg.nblocks; k++ )
            {
                index = masa_sq( 1.0f - hQMetaData->q_direction[1].band_data[j].energy_ratio[k], diffuseness_thresholds_hr, HR_MASA_ER_LEVELS );
                push_next_indice( hMetaData, index, MASA_BITS_ER_HR );
                hQMetaData->q_direction[1].band_data[j].energy_ratio_index[k] = index;
                hQMetaData->q_direction[1].band_data[j].energy_ratio[k] = 1.0f - diffuseness_reconstructions_hr[index];
                ratioSum = hQMetaData->q_direction[0].band_data[j].energy_ratio[k] + hQMetaData->q_direction[1].band_data[j].energy_ratio[k];
                if ( ratioSum > 1.0f )
                {
                    hQMetaData->q_direction[0].band_data[j].energy_ratio[k] /= ratioSum;
                    hQMetaData->q_direction[1].band_data[j].energy_ratio[k] /= ratioSum;
                }
                needed_bits[1] += MASA_BITS_ER_HR;
                hQMetaData->q_direction[1].band_data[j].bits_sph_idx[k] = bits_dir_hr;
            }
        }
#endif
    }

    return;