Commit 2702bcb6 authored by reutelhuber's avatar reutelhuber
Browse files

fix more problems with calculations on uninitialized values

parent f6d3e3e6
Loading
Loading
Loading
Loading
Loading
+14 −10
Original line number Diff line number Diff line
@@ -334,8 +334,7 @@ void ivas_mct_core_enc(

    for ( ch = 0; ch < nChannels; ch++ )
    {
        if (
            sts[ch]->mct_chan_mode == MCT_CHAN_MODE_IGNORE )
        if ( sts[ch]->mct_chan_mode == MCT_CHAN_MODE_IGNORE )
        {
            continue;
        }
@@ -359,6 +358,10 @@ void ivas_mct_core_enc(
            }
            else
            {
#ifdef FIX_483b
                if ( hMCT->currBlockDataCnt > 0 )
#endif
                {
                    /* power spectrum: MDCT^2 + MDST^2 */
                    powerSpecMsInv[ch][n][0] = inv_spectrum[ch][n][0] * inv_spectrum[ch][n][0];

@@ -369,6 +372,7 @@ void ivas_mct_core_enc(
                    }

                    powerSpecMsInv[ch][n][L_subframeTCX - 1] = inv_spectrum[ch][n][L_subframeTCX - 1] * inv_spectrum[ch][n][L_subframeTCX - 1];
                }

                /* power spectrum: MDCT^2 + MDST^2 */
                powerSpec[ch][n * L_subframeTCX] = sts[ch]->hTcxEnc->spectrum[n][0] * sts[ch]->hTcxEnc->spectrum[n][0];

lib_enc/ivas_mct_enc_mct.c

100644 → 100755
+3 −0
Original line number Diff line number Diff line
@@ -700,6 +700,9 @@ void apply_MCT_enc(
                    {
                        v_multc( sts[ch]->hTcxEnc->spectrum[k], qratio, sts[ch]->hTcxEnc->spectrum[k], L_subframeTCX );
                        v_multc( mdst_spectrum[ch][k], qratio, mdst_spectrum[ch][k], L_subframeTCX );
#ifdef FIX_483b
                        set_zero( inv_spectrum[ch][k], L_subframeTCX );
#endif
                    }
                    hMCT->mc_global_ild[ch] = 0;
                }
+19 −6
Original line number Diff line number Diff line
@@ -223,6 +223,10 @@ void stereo_mdct_core_enc(
        inv_spectrum[ch][1] = quantized_spectrum[ch][1];
        mdst_spectrum[ch][0] = mdst_spectrum_long[ch];
        mdst_spectrum[ch][1] = mdst_spectrum_long[ch] + N_TCX10_MAX;
#ifdef FIX_483b
        sts[ch]->hTcxEnc->tns_ms_flag[0] = 0;
        sts[ch]->hTcxEnc->tns_ms_flag[1] = 0;
#endif
    }


@@ -275,7 +279,11 @@ void stereo_mdct_core_enc(

        for ( n = 0; n < nSubframes; n++ )
        {
#ifdef FIX_483b
            if ( sts[ch]->hTcxEnc->tns_ms_flag[n] )
#else
            if ( !sts[ch]->hTcxEnc->fUseTns[n] )
#endif
            {
                /* power spectrum: MDCT^2 + MDST^2 */
                for ( i = 0; i < L_subframeTCX; i++ )
@@ -286,6 +294,10 @@ void stereo_mdct_core_enc(
            }
            else
            {
#ifdef FIX_483b
                if ( hStereoMdct->mdct_stereo_mode[n] != SMDCT_DUAL_MONO )
#endif
                {
                    /* power spectrum: MDCT^2 + MDST^2 */
                    powerSpecMsInv[ch][n][0] = inv_spectrum[ch][n][0] * inv_spectrum[ch][n][0];
                    for ( i = 1; i < L_subframeTCX - 1; i++ )
@@ -294,6 +306,7 @@ void stereo_mdct_core_enc(
                        powerSpecMsInv[ch][n][i] = mdst * mdst + inv_spectrum[ch][n][i] * inv_spectrum[ch][n][i];
                    }
                    powerSpecMsInv[ch][n][L_subframeTCX - 1] = inv_spectrum[ch][n][L_subframeTCX - 1] * inv_spectrum[ch][n][L_subframeTCX - 1];
                }

                /* power spectrum: MDCT^2 + MDST^2 */
                powerSpec[ch][n * L_subframeTCX] = sts[ch]->hTcxEnc->spectrum[n][0] * sts[ch]->hTcxEnc->spectrum[n][0];
+0 −0

File mode changed from 100644 to 100755.