Commit 4bcb3a77 authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch 'main' into ci/fix-job-dependencies

parents afce099d b100fb1b
Loading
Loading
Loading
Loading
Loading
+17 −7
Original line number Diff line number Diff line
@@ -2166,15 +2166,25 @@ void ivas_dirac_dec_output_synthesis_process_subframe_psd_ls_fx(
        move32();

        W_temp = W_add( W_mult0_32_32( a, subtract_power_y ), W_mult0_32_32( b, masa_stereo_type_detect->subtract_power_y_smooth_fx ) ); // Q31 + masa_stereo_type_detect->q_subtract_power_y_smooth
        IF( W_temp )
        {
            exp = W_norm( W_temp );
            masa_stereo_type_detect->subtract_power_y_smooth_fx = W_extract_h( W_shl( W_temp, exp ) ); // Q31 + masa_stereo_type_detect->q_subtract_power_y_smooth + exp - 32
            move32();
            masa_stereo_type_detect->q_subtract_power_y_smooth = sub( add( masa_stereo_type_detect->q_subtract_power_y_smooth, exp ), 1 );
            move16();

        }
        ELSE
        {
            masa_stereo_type_detect->subtract_power_y_smooth_fx = 0; // Q31
            move32();
            masa_stereo_type_detect->q_subtract_power_y_smooth = Q31;
            move16();
        }
        exp = 0;
        move16();
        IF( masa_stereo_type_detect->target_power_y_smooth_fx != 0 )
        test();
        IF( masa_stereo_type_detect->target_power_y_smooth_fx && masa_stereo_type_detect->subtract_power_y_smooth_fx )
        {
            subtract_target_ratio = L_sub( BASOP_Util_Log2( masa_stereo_type_detect->subtract_power_y_smooth_fx ),
                                           BASOP_Util_Log2( masa_stereo_type_detect->target_power_y_smooth_fx ) ); // Q25