Commit e8872709 authored by Jan Kiene's avatar Jan Kiene
Browse files

add missing part of fix + some missing move16's

parent c627de43
Loading
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -1033,16 +1033,25 @@ ivas_error ivas_cpe_enc_fx(
            test();
            test();
            test();
            IF( ( NE_32( hCPE->last_element_brate, hCPE->element_brate ) || NE_16( hCPE->element_mode, hCPE->last_element_mode ) || ( EQ_16( hCPE->element_mode, IVAS_CPE_TD ) && NE_16( sts[0]->bits_frame_nominal, last_bits_frame_nominal ) ) || NE_16( sts[n]->last_bwidth, sts[n]->bwidth ) ) && ( n == 0 || EQ_16( hCPE->element_mode, IVAS_CPE_MDCT ) ) )
            test();
            test();
            IF( ( NE_32( hCPE->last_element_brate, hCPE->element_brate ) || NE_16( hCPE->element_mode, hCPE->last_element_mode ) || ( EQ_16( hCPE->element_mode, IVAS_CPE_TD ) && NE_16( sts[0]->bits_frame_nominal, last_bits_frame_nominal ) ) || NE_16( sts[n]->last_bwidth, sts[n]->bwidth )
#ifdef FIX_1411_IGF_CRASH_BW_SWITCHING
                   || EQ_16( sts[n]->last_core_brate, SID_2k40) || EQ_16(sts[n]->last_core_brate, FRAME_NO_DATA) )
#endif
               ) &&
               ( EQ_16(n, 0) || EQ_16( hCPE->element_mode, IVAS_CPE_MDCT ) ) )
            {
                Word16 igf;
                Word16 bw;

                /* float uses ternary operator for this: bw = ( hCPE->element_mode == IVAS_CPE_MDCT ) ? sts[n]->bwidth : sts[n]->max_bwidth; */
                bw = max_bwidth;
                move16();
                IF( EQ_16( hCPE->element_mode, IVAS_CPE_MDCT ) )
                {
                    bw = sts[n]->bwidth;
                    move16();
                }
                igf = getIgfPresent_fx( sts[n]->element_mode, L_mult0( sts[n]->bits_frame_nominal, FRAMES_PER_SEC ), bw, sts[n]->rf_mode ); /* Q0 */
#ifdef FIX_1413_IGF_INIT_PRINTOUT