Commit 9735cfcc authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Merge branch 'ltv_enc_crash_fix' into 'main'

LTV crash fix - 1 [allow regression]

See merge request !623
parents 7175c465 ce078ea0
Loading
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -1151,7 +1151,16 @@ static void IGF_CalculateEnvelope_ivas_fx(
                        hPrivateData->sfb_tb_e[sfb] = BASOP_Util_Add_MantExp( tmp_tb, tmp_tb_e, x1, x1_e, &hPrivateData->SFM_tb_fx[sfb] ); // hPrivateData->sfb_sb_e[sfb]
                        hPrivateData->SFM_tb_fx[sfb] = extract_l( L_min( L_shl( 22118 /*2.7f Q13*/, sub( 2, hPrivateData->sfb_tb_e[sfb] ) ), hPrivateData->SFM_tb_fx[sfb] ) );
                        hPrivateData->sfb_sb_e[sfb] = BASOP_Util_Add_MantExp( tmp_sb, tmp_sb_e, x2, x2_e, &hPrivateData->SFM_sb_fx[sfb] ); // hPrivateData->sfb_tb_e[sfb]
                        IF( LT_16( hPrivateData->sfb_sb_e[sfb], 2 ) )
                        {
                            hPrivateData->SFM_sb_fx[sfb] = extract_l( L_min( 22118 /*2.7f Q13*/, L_shr( hPrivateData->SFM_sb_fx[sfb], sub( 2, hPrivateData->sfb_sb_e[sfb] ) ) ) );
                            hPrivateData->sfb_sb_e[sfb] = 2;
                            move16();
                        }
                        ELSE
                        {
                            hPrivateData->SFM_sb_fx[sfb] = extract_l( L_min( L_shl( 22118 /*2.7f Q13*/, sub( 2, hPrivateData->sfb_sb_e[sfb] ) ), hPrivateData->SFM_sb_fx[sfb] ) );
                        }
                        move16();
                        move16();
                        move16();
+1 −1
Original line number Diff line number Diff line
@@ -687,7 +687,7 @@ ivas_error ivas_core_enc(
            {
                FOR( i = 0; i < L_FRAME32k; i++ )
                {
                    st->hTcxEnc->old_out_fx[i] = (Word16) st->hTcxEnc->old_out[i] * ( 1 << 0 );
                    st->hTcxEnc->old_out_fx[i] = float_to_fix16_thrld( st->hTcxEnc->old_out[i], 0 );
                }
            }

+1 −1
Original line number Diff line number Diff line
@@ -2489,7 +2489,7 @@ void tcx_encoder_memory_update_ivas_fx(
    {
        /* Update weighted synthesis */
        Residu3_fx( Ai + imult1616( sub( st->nb_subfr, 1 ), ( M + 1 ) ), synth + sub( L_frame_glob, 1 ), &tmp, 1, 0 );
        LPDmem->mem_w0 = sub( wsig[sub( L_frame_glob, 1 )], tmp );
        LPDmem->mem_w0 = sub_sat( wsig[sub( L_frame_glob, 1 )], tmp );
        move16();
    }