Loading lib_com/options.h +1 −1 Original line number Diff line number Diff line Loading @@ -54,7 +54,7 @@ /*#define WMOPS_PER_FRAME*/ /* Output per-frame complexity (writes one float value per frame to the file "wmops_analysis") */ /*#define WMOPS_DETAIL*/ /* Output detailed complexity printout for every function. Increases runtime overhead */ /*#define WMOPS_WC_FRAME_ANALYSIS*/ /* Output detailed complexity analysis for the worst-case frame */ /*define MEM_COUNT_DETAILS*/ /* Output detailed memory analysis for the worst-case frame (writes to the file "mem_analysis.csv") */ /*#define MEM_COUNT_DETAILS*/ /* Output detailed memory analysis for the worst-case frame (writes to the file "mem_analysis.csv") */ #ifdef DEBUGGING /*#define DBG_BITSTREAM_ANALYSIS*/ /* Write bitstream with annotations to a text file */ Loading lib_dec/jbm_pcmdsp_apa_fx.c +20 −26 Original line number Diff line number Diff line Loading @@ -161,9 +161,9 @@ static bool extend_frm_ivas_fx( apa_state_t *ps, const Word16 frm_in[], Word16 f #else static bool shrink_frm_fx( apa_state_t *ps, const Word16 frm_in[], UWord16 maxScaling, Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ); static bool shrink_frm_fx( apa_state_t *ps, const Word16 frm_in[], UWord16 maxScaling, Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, bool bIsEVS ); static bool extend_frm_fx( apa_state_t *ps, const Word16 frm_in[], Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ); static bool extend_frm_fx( apa_state_t *ps, const Word16 frm_in[], Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, bool bIsEVS ); #endif // !HARMONIZE_2481_EXTEND_SHRINK Loading Loading @@ -706,9 +706,6 @@ UWord8 apa_exec_fx( Word32 dl_scaled, dl_copied, l_frm_out_target; Word32 expScaling, actScaling; UWord32 statsResetThreshold, statsResetShift; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 isEVS = 1; #endif // HARMONIZE_2481_EXTEND_SHRINK statsResetThreshold = 1637; move32(); Loading Loading @@ -807,7 +804,7 @@ UWord8 apa_exec_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK shrink_frm_fx( ps, frm_in, maxScaling, a_out, &l_frm_out ); #else shrink_frm_fx( ps, frm_in, maxScaling, a_out, 0, &l_frm_out, isEVS ); shrink_frm_fx( ps, frm_in, maxScaling, a_out, 0, &l_frm_out, true ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* extend */ Loading @@ -816,7 +813,7 @@ UWord8 apa_exec_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK extend_frm_fx( ps, frm_in, a_out, &l_frm_out ); #else extend_frm_fx( ps, frm_in, a_out, 0, &l_frm_out, isEVS ); extend_frm_fx( ps, frm_in, a_out, 0, &l_frm_out, true ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* control the amount/frequency of scaling */ Loading Loading @@ -936,9 +933,6 @@ UWord8 apa_exec_ivas_fx( UWord32 statsResetThreshold, statsResetShift; Word16 Q_a_out; Word16 Q_a_out_init_old; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 isEVS = 0; #endif // HARMONIZE_2481_EXTEND_SHRINK Q_a_out = add( getScaleFactor32_copy( a_in, l_in ), Q11 - Q16 - Q1 ); Q_a_out_init_old = Q_a_out; /* store the possible scaling of a_in, to be re-used in the next frame */ Loading Loading @@ -1053,7 +1047,7 @@ UWord8 apa_exec_ivas_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK shrink_frm_ivas_fx( ps, frm_in, maxScaling, a_tmp, Q_a_out, &l_frm_out ); #else shrink_frm_fx( ps, frm_in, maxScaling, a_tmp, Q_a_out, &l_frm_out, isEVS ); shrink_frm_fx( ps, frm_in, maxScaling, a_tmp, Q_a_out, &l_frm_out, false ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* extend */ Loading @@ -1062,7 +1056,7 @@ UWord8 apa_exec_ivas_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK extend_frm_ivas_fx( ps, frm_in, a_tmp, Q_a_out, &l_frm_out ); #else extend_frm_fx( ps, frm_in, a_tmp, Q_a_out, &l_frm_out, isEVS ); extend_frm_fx( ps, frm_in, a_tmp, Q_a_out, &l_frm_out, false ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* control the amount/frequency of scaling */ Loading Loading @@ -1811,7 +1805,7 @@ static bool shrink_frm_fx( Word16 frm_out_fx[], // Qx Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ) bool bIsEVS ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { bool findSynchResult = 0; Loading @@ -1824,7 +1818,7 @@ static bool shrink_frm_fx( UWord16 l_frm; UWord16 l_seg; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 Silence; bool bIsSilence; #endif // HARMONIZE_2481_EXTEND_SHRINK move16(); move32(); Loading Loading @@ -1854,15 +1848,15 @@ static bool shrink_frm_fx( IF( isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ) ) #else IF( isEVS ) IF( bIsEVS ) { Silence = isSilence_fx( frm_in_fx, l_seg, 10 ); bIsSilence = isSilence_fx( frm_in_fx, l_seg, 10 ); } ELSE { Silence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); bIsSilence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); } IF( Silence ) IF( bIsSilence ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { /* maximum scaling */ Loading Loading @@ -1911,7 +1905,7 @@ static bool shrink_frm_fx( ps->signalScaleForCorrelation = add( ps->signalScaleForCorrelation, Q_frm_in ); move16(); #else IF( isEVS ) IF( bIsEVS ) { findSynchResult = find_synch_fx( ps, ps->frmInScaled, l_frm, s_start, (UWord16) ( sub( s_end, s_start ) ), 0, l_seg, 0, &energy_fx, &quality_fx, &xtract ); } Loading Loading @@ -2306,7 +2300,7 @@ static bool extend_frm_fx( Word16 frm_out_fx[], // Qx Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ) bool bIsEVS ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { bool findSynchResult = 0; Loading @@ -2325,7 +2319,7 @@ static bool extend_frm_fx( move32(); UWord16 l_frm, l_seg; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 Silence; bool bIsSilence; #endif // HARMONIZE_2481_EXTEND_SHRINK const Word16 *fadeOut_fx, *fadeIn_fx; Loading Loading @@ -2436,15 +2430,15 @@ static bool extend_frm_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK IF( isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ) ) #else IF( isEVS ) IF( bIsEVS ) { Silence = isSilence_fx( frm_in_fx, l_seg, 10 ); bIsSilence = isSilence_fx( frm_in_fx, l_seg, 10 ); } ELSE { Silence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); bIsSilence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); } IF( Silence ) IF( bIsSilence ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { /* maximum scaling */ Loading Loading @@ -2478,7 +2472,7 @@ static bool extend_frm_fx( findSynchResult = find_synch_fx( ps, frmInScaled, extract_l( L_shl( l_frm, 1 ) ), s_start, sub( s_end, s_start ), sync_start, l_seg, l_frm, &energy_fx, &quality_fx, &xtract[n] ); ps->signalScaleForCorrelation = add( ps->signalScaleForCorrelation, Q_frm_in ); #else IF( isEVS ) IF( bIsEVS ) { findSynchResult = find_synch_fx( ps, frmInScaled, extract_l( L_shl( l_frm, 1 ) ), s_start, sub( s_end, s_start ), sync_start, l_seg, l_frm, &energy_fx, &quality_fx, &xtract[n] ); } Loading lib_dec/jbm_pcmdsp_similarityestimation.h +5 −1 Original line number Diff line number Diff line Loading @@ -64,8 +64,12 @@ Word32 cross_correlation_self_fx( const Word16 *signal, Word16 y, Word16 corr_len ); #ifdef HARMONIZE_2481_EXTEND_SHRINK bool isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ); bool isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ); #else Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ); Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ); #endif #endif /* JBM_PCMDSP_SIMILARITYESTIMATION_H */ lib_dec/jbm_pcmdsp_similarityestimation_fx.c +33 −0 Original line number Diff line number Diff line Loading @@ -190,11 +190,19 @@ Word32 cross_correlation_self_fx( const Word16 *signal, return sum; } #ifdef HARMONIZE_2481_EXTEND_SHRINK bool isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) #else Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) #endif { Word16 i, j, samplesPerSegment; Word32 energy, maxEnergy; #ifdef HARMONIZE_2481_EXTEND_SHRINK bool ret; #else Word8 ret; #endif assert( len > 0 ); assert( segments > 0 ); Loading @@ -205,7 +213,11 @@ Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) * 20 * log10(sum_i(abs(signal[i]))) > -65 */ #ifdef HARMONIZE_2481_EXTEND_SHRINK ret = true; #else ret = 1; #endif move16(); energy = 0; move32(); Loading @@ -227,7 +239,11 @@ Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) * => energy > samplesPerSegment * 10 ^ (-65 / 20) * 32768 */ IF( GT_32( energy, maxEnergy ) ) { #ifdef HARMONIZE_2481_EXTEND_SHRINK ret = false; #else ret = 0; #endif move16(); BREAK; } Loading @@ -239,13 +255,22 @@ Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) /* check last segment */ if ( GT_32( energy, maxEnergy ) ) { #ifdef HARMONIZE_2481_EXTEND_SHRINK ret = false; #else ret = 0; #endif move16(); } return ret; } #ifdef HARMONIZE_2481_EXTEND_SHRINK bool isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ) #else Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ) #endif { Word16 i, j, samplesPerSegment; Word64 energy, maxEnergy; Loading Loading @@ -276,7 +301,11 @@ Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 * => energy > samplesPerSegment * 10 ^ (-65 / 10) * 32768 * 32768.0*/ IF( GT_64( energy, maxEnergy ) ) { #ifdef HARMONIZE_2481_EXTEND_SHRINK return false; #else return 0; #endif } IF( EQ_16( i, j ) ) { Loading @@ -286,5 +315,9 @@ Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 } } #ifdef HARMONIZE_2481_EXTEND_SHRINK return true; #else return 1; #endif } Loading
lib_com/options.h +1 −1 Original line number Diff line number Diff line Loading @@ -54,7 +54,7 @@ /*#define WMOPS_PER_FRAME*/ /* Output per-frame complexity (writes one float value per frame to the file "wmops_analysis") */ /*#define WMOPS_DETAIL*/ /* Output detailed complexity printout for every function. Increases runtime overhead */ /*#define WMOPS_WC_FRAME_ANALYSIS*/ /* Output detailed complexity analysis for the worst-case frame */ /*define MEM_COUNT_DETAILS*/ /* Output detailed memory analysis for the worst-case frame (writes to the file "mem_analysis.csv") */ /*#define MEM_COUNT_DETAILS*/ /* Output detailed memory analysis for the worst-case frame (writes to the file "mem_analysis.csv") */ #ifdef DEBUGGING /*#define DBG_BITSTREAM_ANALYSIS*/ /* Write bitstream with annotations to a text file */ Loading
lib_dec/jbm_pcmdsp_apa_fx.c +20 −26 Original line number Diff line number Diff line Loading @@ -161,9 +161,9 @@ static bool extend_frm_ivas_fx( apa_state_t *ps, const Word16 frm_in[], Word16 f #else static bool shrink_frm_fx( apa_state_t *ps, const Word16 frm_in[], UWord16 maxScaling, Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ); static bool shrink_frm_fx( apa_state_t *ps, const Word16 frm_in[], UWord16 maxScaling, Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, bool bIsEVS ); static bool extend_frm_fx( apa_state_t *ps, const Word16 frm_in[], Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ); static bool extend_frm_fx( apa_state_t *ps, const Word16 frm_in[], Word16 frm_out[], Word16 Q_frm_in, UWord16 *l_frm_out, bool bIsEVS ); #endif // !HARMONIZE_2481_EXTEND_SHRINK Loading Loading @@ -706,9 +706,6 @@ UWord8 apa_exec_fx( Word32 dl_scaled, dl_copied, l_frm_out_target; Word32 expScaling, actScaling; UWord32 statsResetThreshold, statsResetShift; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 isEVS = 1; #endif // HARMONIZE_2481_EXTEND_SHRINK statsResetThreshold = 1637; move32(); Loading Loading @@ -807,7 +804,7 @@ UWord8 apa_exec_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK shrink_frm_fx( ps, frm_in, maxScaling, a_out, &l_frm_out ); #else shrink_frm_fx( ps, frm_in, maxScaling, a_out, 0, &l_frm_out, isEVS ); shrink_frm_fx( ps, frm_in, maxScaling, a_out, 0, &l_frm_out, true ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* extend */ Loading @@ -816,7 +813,7 @@ UWord8 apa_exec_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK extend_frm_fx( ps, frm_in, a_out, &l_frm_out ); #else extend_frm_fx( ps, frm_in, a_out, 0, &l_frm_out, isEVS ); extend_frm_fx( ps, frm_in, a_out, 0, &l_frm_out, true ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* control the amount/frequency of scaling */ Loading Loading @@ -936,9 +933,6 @@ UWord8 apa_exec_ivas_fx( UWord32 statsResetThreshold, statsResetShift; Word16 Q_a_out; Word16 Q_a_out_init_old; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 isEVS = 0; #endif // HARMONIZE_2481_EXTEND_SHRINK Q_a_out = add( getScaleFactor32_copy( a_in, l_in ), Q11 - Q16 - Q1 ); Q_a_out_init_old = Q_a_out; /* store the possible scaling of a_in, to be re-used in the next frame */ Loading Loading @@ -1053,7 +1047,7 @@ UWord8 apa_exec_ivas_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK shrink_frm_ivas_fx( ps, frm_in, maxScaling, a_tmp, Q_a_out, &l_frm_out ); #else shrink_frm_fx( ps, frm_in, maxScaling, a_tmp, Q_a_out, &l_frm_out, isEVS ); shrink_frm_fx( ps, frm_in, maxScaling, a_tmp, Q_a_out, &l_frm_out, false ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* extend */ Loading @@ -1062,7 +1056,7 @@ UWord8 apa_exec_ivas_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK extend_frm_ivas_fx( ps, frm_in, a_tmp, Q_a_out, &l_frm_out ); #else extend_frm_fx( ps, frm_in, a_tmp, Q_a_out, &l_frm_out, isEVS ); extend_frm_fx( ps, frm_in, a_tmp, Q_a_out, &l_frm_out, false ); #endif // !HARMONIZE_2481_EXTEND_SHRINK } /* control the amount/frequency of scaling */ Loading Loading @@ -1811,7 +1805,7 @@ static bool shrink_frm_fx( Word16 frm_out_fx[], // Qx Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ) bool bIsEVS ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { bool findSynchResult = 0; Loading @@ -1824,7 +1818,7 @@ static bool shrink_frm_fx( UWord16 l_frm; UWord16 l_seg; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 Silence; bool bIsSilence; #endif // HARMONIZE_2481_EXTEND_SHRINK move16(); move32(); Loading Loading @@ -1854,15 +1848,15 @@ static bool shrink_frm_fx( IF( isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ) ) #else IF( isEVS ) IF( bIsEVS ) { Silence = isSilence_fx( frm_in_fx, l_seg, 10 ); bIsSilence = isSilence_fx( frm_in_fx, l_seg, 10 ); } ELSE { Silence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); bIsSilence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); } IF( Silence ) IF( bIsSilence ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { /* maximum scaling */ Loading Loading @@ -1911,7 +1905,7 @@ static bool shrink_frm_fx( ps->signalScaleForCorrelation = add( ps->signalScaleForCorrelation, Q_frm_in ); move16(); #else IF( isEVS ) IF( bIsEVS ) { findSynchResult = find_synch_fx( ps, ps->frmInScaled, l_frm, s_start, (UWord16) ( sub( s_end, s_start ) ), 0, l_seg, 0, &energy_fx, &quality_fx, &xtract ); } Loading Loading @@ -2306,7 +2300,7 @@ static bool extend_frm_fx( Word16 frm_out_fx[], // Qx Word16 Q_frm_in, UWord16 *l_frm_out, Word16 isEVS ) bool bIsEVS ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { bool findSynchResult = 0; Loading @@ -2325,7 +2319,7 @@ static bool extend_frm_fx( move32(); UWord16 l_frm, l_seg; #ifdef HARMONIZE_2481_EXTEND_SHRINK Word16 Silence; bool bIsSilence; #endif // HARMONIZE_2481_EXTEND_SHRINK const Word16 *fadeOut_fx, *fadeIn_fx; Loading Loading @@ -2436,15 +2430,15 @@ static bool extend_frm_fx( #ifndef HARMONIZE_2481_EXTEND_SHRINK IF( isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ) ) #else IF( isEVS ) IF( bIsEVS ) { Silence = isSilence_fx( frm_in_fx, l_seg, 10 ); bIsSilence = isSilence_fx( frm_in_fx, l_seg, 10 ); } ELSE { Silence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); bIsSilence = isSilence_ivas_fx( frm_in_fx, Q_frm_in, l_seg, 10 ); } IF( Silence ) IF( bIsSilence ) #endif // !HARMONIZE_2481_EXTEND_SHRINK { /* maximum scaling */ Loading Loading @@ -2478,7 +2472,7 @@ static bool extend_frm_fx( findSynchResult = find_synch_fx( ps, frmInScaled, extract_l( L_shl( l_frm, 1 ) ), s_start, sub( s_end, s_start ), sync_start, l_seg, l_frm, &energy_fx, &quality_fx, &xtract[n] ); ps->signalScaleForCorrelation = add( ps->signalScaleForCorrelation, Q_frm_in ); #else IF( isEVS ) IF( bIsEVS ) { findSynchResult = find_synch_fx( ps, frmInScaled, extract_l( L_shl( l_frm, 1 ) ), s_start, sub( s_end, s_start ), sync_start, l_seg, l_frm, &energy_fx, &quality_fx, &xtract[n] ); } Loading
lib_dec/jbm_pcmdsp_similarityestimation.h +5 −1 Original line number Diff line number Diff line Loading @@ -64,8 +64,12 @@ Word32 cross_correlation_self_fx( const Word16 *signal, Word16 y, Word16 corr_len ); #ifdef HARMONIZE_2481_EXTEND_SHRINK bool isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ); bool isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ); #else Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ); Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ); #endif #endif /* JBM_PCMDSP_SIMILARITYESTIMATION_H */
lib_dec/jbm_pcmdsp_similarityestimation_fx.c +33 −0 Original line number Diff line number Diff line Loading @@ -190,11 +190,19 @@ Word32 cross_correlation_self_fx( const Word16 *signal, return sum; } #ifdef HARMONIZE_2481_EXTEND_SHRINK bool isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) #else Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) #endif { Word16 i, j, samplesPerSegment; Word32 energy, maxEnergy; #ifdef HARMONIZE_2481_EXTEND_SHRINK bool ret; #else Word8 ret; #endif assert( len > 0 ); assert( segments > 0 ); Loading @@ -205,7 +213,11 @@ Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) * 20 * log10(sum_i(abs(signal[i]))) > -65 */ #ifdef HARMONIZE_2481_EXTEND_SHRINK ret = true; #else ret = 1; #endif move16(); energy = 0; move32(); Loading @@ -227,7 +239,11 @@ Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) * => energy > samplesPerSegment * 10 ^ (-65 / 20) * 32768 */ IF( GT_32( energy, maxEnergy ) ) { #ifdef HARMONIZE_2481_EXTEND_SHRINK ret = false; #else ret = 0; #endif move16(); BREAK; } Loading @@ -239,13 +255,22 @@ Word8 isSilence_fx( const Word16 *signal, Word16 len, Word16 segments ) /* check last segment */ if ( GT_32( energy, maxEnergy ) ) { #ifdef HARMONIZE_2481_EXTEND_SHRINK ret = false; #else ret = 0; #endif move16(); } return ret; } #ifdef HARMONIZE_2481_EXTEND_SHRINK bool isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ) #else Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 segments ) #endif { Word16 i, j, samplesPerSegment; Word64 energy, maxEnergy; Loading Loading @@ -276,7 +301,11 @@ Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 * => energy > samplesPerSegment * 10 ^ (-65 / 10) * 32768 * 32768.0*/ IF( GT_64( energy, maxEnergy ) ) { #ifdef HARMONIZE_2481_EXTEND_SHRINK return false; #else return 0; #endif } IF( EQ_16( i, j ) ) { Loading @@ -286,5 +315,9 @@ Word8 isSilence_ivas_fx( const Word16 *signal, Word16 q_sig, Word16 len, Word16 } } #ifdef HARMONIZE_2481_EXTEND_SHRINK return true; #else return 1; #endif }