Commit 6cf3b7ff authored by Jan Kiene's avatar Jan Kiene
Browse files

accept FIX_566_2DIR_MASA_384K

parent 4cd5b646
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -155,7 +155,6 @@
#define FIX_137_SID_MD_BITS                             /* Dlb: Fix issue #137 , SID bitrate mismatch correction */
#define FIX_470_MASA_JBM_EXT                            /* Nokia: Issue 470, fix MASA EXT output with JBM */
#define FIX_564                                         /* Nokia: Issue 564: Fix gains in JBM path for SBA with parametric binaural renderer */
#define FIX_566_2DIR_MASA_384K                          /* Nokia: Issued 566:  Bugfix in 384k MASA metadata encoding of second direction */
#define FIX_568_ISM_BITRATE_SWITCHING                   /* Philips: Issue 568: Bugfix for renderer re-initialization by ISM and bitrate switching */
#define FIX_565_SBA_BURST_IN_FEC                        /* VA: Issue 565: Fix noise burst during FEC, due to wrong total_brate initialization */
#define FIX_562_ISM2_64KBPS                             /* VA: issue 562: fix ISM2 at 64kbps issue */
+0 −14
Original line number Diff line number Diff line
@@ -962,7 +962,6 @@ int16_t ivas_qmetadata_dec_decode_hr_384_512(
            }
        }
#else
#ifdef FIX_566_2DIR_MASA_384K
        float ratioSum;
        for ( b = hQMetaData->q_direction[1].cfg.start_band; b < hQMetaData->q_direction[1].cfg.nbands; b++ )
        {
@@ -980,19 +979,6 @@ int16_t ivas_qmetadata_dec_decode_hr_384_512(
                }
            }
        }
#else
        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]];
                if ( hQMetaData->q_direction[1].band_data[b].energy_ratio[m] > 1.0f - hQMetaData->q_direction[0].band_data[b].energy_ratio[m] )
                {
                    hQMetaData->q_direction[1].band_data[b].energy_ratio[m] = 1.0f - hQMetaData->q_direction[0].band_data[b].energy_ratio[m];
                }
            }
        }
#endif
#endif
    }

+0 −11
Original line number Diff line number Diff line
@@ -759,7 +759,6 @@ ivas_error ivas_qmetadata_enc_encode_hr_384_512(
        bits_no_dirs_coh +=
#endif
            write_2dir_info( hMetaData, hQMetaData->twoDirBands, hQMetaData->q_direction[0].cfg.nbands, hQMetaData->numTwoDirBands );
#ifdef FIX_566_2DIR_MASA_384K
        d = 0;
        for ( i = hQMetaData->q_direction[1].cfg.start_band; i < hQMetaData->q_direction[1].cfg.nbands; i++ )
        {
@@ -776,7 +775,6 @@ ivas_error ivas_qmetadata_enc_encode_hr_384_512(
                d++;
            }
        }
#endif
        for ( i = hQMetaData->numTwoDirBands; i < hQMetaData->q_direction[0].cfg.nbands; i++ )
        {
            set_f( hQMetaData->q_direction[1].band_data[i].energy_ratio, 0.0f, hQMetaData->q_direction[1].cfg.nblocks );
@@ -1622,9 +1620,7 @@ static void ivas_qmetadata_quantize_diffuseness_nrg_ratios_hr_512(
            }
        }
#else
#ifdef FIX_566_2DIR_MASA_384K
        float ratioSum;
#endif
        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++ )
@@ -1633,19 +1629,12 @@ static void ivas_qmetadata_quantize_diffuseness_nrg_ratios_hr_512(
                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];
#ifdef FIX_566_2DIR_MASA_384K
                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;
                }
#else
                if ( hQMetaData->q_direction[1].band_data[j].energy_ratio[k] > 1.0f - hQMetaData->q_direction[0].band_data[j].energy_ratio[k] )
                {
                    hQMetaData->q_direction[1].band_data[j].energy_ratio[k] = 1.0f - hQMetaData->q_direction[0].band_data[j].energy_ratio[k];
                }
#endif
                needed_bits[1] += MASA_BITS_ER_HR;
                hQMetaData->q_direction[1].band_data[j].bits_sph_idx[k] = bits_dir_hr;
            }