diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2011-09-29 21:21:26 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2011-09-29 21:44:03 +0200 |
commit | 11512367d3c6f67b093b54c532328763c9b815e2 (patch) | |
tree | ee8c5e1e0d293a8c4f2917c1aecc85466c2accfe /libavcodec/g723_1.c | |
parent | 84f8aef40c7091274ed399a8aeaa933ea76d9476 (diff) | |
download | ffmpeg-11512367d3c6f67b093b54c532328763c9b815e2.tar.gz |
celp_math: cleanup ff_dot_product()
based on code & idea by vitor
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/g723_1.c')
-rw-r--r-- | libavcodec/g723_1.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/libavcodec/g723_1.c b/libavcodec/g723_1.c index da4f0d2a04..e0e866e640 100644 --- a/libavcodec/g723_1.c +++ b/libavcodec/g723_1.c @@ -553,7 +553,7 @@ static void gen_acb_excitation(int16_t *vector, int16_t *prev_excitation, /* Calculate adaptive vector */ cb_ptr += subfrm.ad_cb_gain * 20; for (i = 0; i < SUBFRAME_LEN; i++) { - sum = ff_dot_product(residual + i, cb_ptr, PITCH_ORDER, 1); + sum = ff_dot_product(residual + i, cb_ptr, PITCH_ORDER)<<1; vector[i] = av_clipl_int32((sum << 1) + (1 << 15)) >> 16; } } @@ -579,7 +579,7 @@ static int autocorr_max(G723_1_Context *p, int offset, int *ccr_max, limit = FFMIN(FRAME_LEN + PITCH_MAX - offset - length, pitch_lag + 3); for (i = pitch_lag - 3; i <= limit; i++) { - ccr = ff_dot_product(buf, buf + dir * i, length, 1); + ccr = ff_dot_product(buf, buf + dir * i, length)<<1; if (ccr > *ccr_max) { *ccr_max = ccr; @@ -678,17 +678,17 @@ static void comp_ppf_coeff(G723_1_Context *p, int offset, int pitch_lag, return; /* Compute target energy */ - energy[0] = ff_dot_product(buf, buf, SUBFRAME_LEN, 1); + energy[0] = ff_dot_product(buf, buf, SUBFRAME_LEN)<<1; /* Compute forward residual energy */ if (fwd_lag) energy[2] = ff_dot_product(buf + fwd_lag, buf + fwd_lag, - SUBFRAME_LEN, 1); + SUBFRAME_LEN)<<1; /* Compute backward residual energy */ if (back_lag) energy[4] = ff_dot_product(buf - back_lag, buf - back_lag, - SUBFRAME_LEN, 1); + SUBFRAME_LEN)<<1; /* Normalize and shorten */ temp1 = 0; @@ -749,7 +749,7 @@ static int comp_interp_index(G723_1_Context *p, int pitch_lag, ccr = av_clipl_int32((int64_t)ccr + (1 << 15)) >> 16; /* Compute target energy */ - tgt_eng = ff_dot_product(buf, buf, SUBFRAME_LEN * 2, 1); + tgt_eng = ff_dot_product(buf, buf, SUBFRAME_LEN * 2)<<1; *exc_eng = av_clipl_int32(tgt_eng + (1 << 15)) >> 16; if (ccr <= 0) @@ -757,7 +757,7 @@ static int comp_interp_index(G723_1_Context *p, int pitch_lag, /* Compute best energy */ best_eng = ff_dot_product(buf - index, buf - index, - SUBFRAME_LEN * 2, 1); + SUBFRAME_LEN * 2)<<1; best_eng = av_clipl_int32((int64_t)best_eng + (1 << 15)) >> 16; temp = best_eng * *exc_eng >> 3; @@ -911,9 +911,9 @@ static void formant_postfilter(G723_1_Context *p, int16_t *lpc, int16_t *buf) /* Compute auto correlation coefficients */ auto_corr[0] = ff_dot_product(temp_vector, temp_vector + 1, - SUBFRAME_LEN - 1, 1); + SUBFRAME_LEN - 1)<<1; auto_corr[1] = ff_dot_product(temp_vector, temp_vector, - SUBFRAME_LEN, 1); + SUBFRAME_LEN)<<1; /* Compute reflection coefficient */ temp = auto_corr[1] >> 16; |