Remove unused code under G729_BITEXACT #ifdef.

G729_BITEXACT is never set, so the code is all dead code.
pull/2/head
Diego Biurrun 14 years ago
parent 80469eafb7
commit a005174b25
  1. 11
      libavcodec/acelp_pitch_delay.c
  2. 85
      libavcodec/celp_math.c
  3. 4
      libavcodec/lsp.c

@ -105,20 +105,9 @@ int16_t ff_acelp_decode_gain_code(
for(i=0; i<ma_pred_order; i++) for(i=0; i<ma_pred_order; i++)
mr_energy += quant_energy[i] * ma_prediction_coeff[i]; mr_energy += quant_energy[i] * ma_prediction_coeff[i];
#ifdef G729_BITEXACT
mr_energy += (((-6165LL * ff_log2(dsp->scalarproduct_int16(fc_v, fc_v, subframe_size, 0))) >> 3) & ~0x3ff);
mr_energy = (5439 * (mr_energy >> 15)) >> 8; // (0.15) = (0.15) * (7.23)
return bidir_sal(
((ff_exp2(mr_energy & 0x7fff) + 16) >> 5) * (gain_corr_factor >> 1),
(mr_energy >> 15) - 25
);
#else
mr_energy = gain_corr_factor * exp(M_LN10 / (20 << 23) * mr_energy) / mr_energy = gain_corr_factor * exp(M_LN10 / (20 << 23) * mr_energy) /
sqrt(dsp->scalarproduct_int16(fc_v, fc_v, subframe_size, 0)); sqrt(dsp->scalarproduct_int16(fc_v, fc_v, subframe_size, 0));
return mr_energy >> 12; return mr_energy >> 12;
#endif
} }
float ff_amr_set_fixed_gain(float fixed_gain_factor, float fixed_mean_energy, float ff_amr_set_fixed_gain(float fixed_gain_factor, float fixed_mean_energy,

@ -27,82 +27,6 @@
#include "avcodec.h" #include "avcodec.h"
#include "celp_math.h" #include "celp_math.h"
#ifdef G729_BITEXACT
/**
* Cosine table: base_cos[i] = (1<<15) * cos(i*PI/64)
*/
static const int16_t base_cos[64] =
{
32767, 32729, 32610, 32413, 32138, 31786, 31357, 30853,
30274, 29622, 28899, 28106, 27246, 26320, 25330, 24279,
23170, 22006, 20788, 19520, 18205, 16846, 15447, 14010,
12540, 11039, 9512, 7962, 6393, 4808, 3212, 1608,
0, -1608, -3212, -4808, -6393, -7962, -9512, -11039,
-12540, -14010, -15447, -16846, -18205, -19520, -20788, -22006,
-23170, -24279, -25330, -26320, -27246, -28106, -28899, -29622,
-30274, -30853, -31357, -31786, -32138, -32413, -32610, -32729
};
/**
* Slope used to compute cos(x)
*
* cos(ind*64+offset) = base_cos[ind]+offset*slope_cos[ind]
* values multiplied by 1<<19
*/
static const int16_t slope_cos[64] =
{
-632, -1893, -3150, -4399, -5638, -6863, -8072, -9261,
-10428, -11570, -12684, -13767, -14817, -15832, -16808, -17744,
-18637, -19486, -20287, -21039, -21741, -22390, -22986, -23526,
-24009, -24435, -24801, -25108, -25354, -25540, -25664, -25726,
-25726, -25664, -25540, -25354, -25108, -24801, -24435, -24009,
-23526, -22986, -22390, -21741, -21039, -20287, -19486, -18637,
-17744, -16808, -15832, -14817, -13767, -12684, -11570, -10428,
-9261, -8072, -6863, -5638, -4399, -3150, -1893, -632
};
/**
* Table used to compute exp2(x)
*
* tab_exp2[i] = (1<<14) * exp2(i/32) = 2^(i/32) i=0..32
*/
static const uint16_t tab_exp2[33] =
{
16384, 16743, 17109, 17484, 17867, 18258, 18658, 19066, 19484, 19911,
20347, 20792, 21247, 21713, 22188, 22674, 23170, 23678, 24196, 24726,
25268, 25821, 26386, 26964, 27554, 28158, 28774, 29405, 30048, 30706,
31379, 32066, 32767
};
int16_t ff_cos(uint16_t arg)
{
uint8_t offset= arg;
uint8_t ind = arg >> 8;
assert(arg < 0x4000);
return FFMAX(base_cos[ind] + ((slope_cos[ind] * offset) >> 12), -0x8000);
}
int ff_exp2(uint16_t power)
{
uint16_t frac_x0;
uint16_t frac_dx;
int result;
assert(power <= 0x7fff);
frac_x0 = power >> 10;
frac_dx = (power & 0x03ff) << 5;
result = tab_exp2[frac_x0] << 15;
result += frac_dx * (tab_exp2[frac_x0+1] - tab_exp2[frac_x0]);
return result >> 10;
}
#else // G729_BITEXACT
/** /**
* Cosine table: base_cos[i] = (1<<15) * cos(i*PI/64) * Cosine table: base_cos[i] = (1<<15) * cos(i*PI/64)
*/ */
@ -154,8 +78,6 @@ int ff_exp2(uint16_t power)
return result + ((result*(power&31)*89)>>22); return result + ((result*(power&31)*89)>>22);
} }
#endif // else G729_BITEXACT
/** /**
* Table used to compute log2(x) * Table used to compute log2(x)
* *
@ -163,17 +85,10 @@ int ff_exp2(uint16_t power)
*/ */
static const uint16_t tab_log2[33] = static const uint16_t tab_log2[33] =
{ {
#ifdef G729_BITEXACT
0, 1455, 2866, 4236, 5568, 6863, 8124, 9352,
10549, 11716, 12855, 13967, 15054, 16117, 17156, 18172,
19167, 20142, 21097, 22033, 22951, 23852, 24735, 25603,
26455, 27291, 28113, 28922, 29716, 30497, 31266, 32023, 32767,
#else
4, 1459, 2870, 4240, 5572, 6867, 8127, 9355, 4, 1459, 2870, 4240, 5572, 6867, 8127, 9355,
10552, 11719, 12858, 13971, 15057, 16120, 17158, 18175, 10552, 11719, 12858, 13971, 15057, 16120, 17158, 18175,
19170, 20145, 21100, 22036, 22954, 23854, 24738, 25605, 19170, 20145, 21100, 22036, 22954, 23854, 24738, 25605,
26457, 27294, 28116, 28924, 29719, 30500, 31269, 32025, 32769, 26457, 27294, 28116, 28924, 29719, 30500, 31269, 32025, 32769,
#endif
}; };
int ff_log2(uint32_t value) int ff_log2(uint32_t value)

@ -150,11 +150,7 @@ void ff_acelp_lp_decode(int16_t* lp_1st, int16_t* lp_2nd, const int16_t* lsp_2nd
/* LSP values for first subframe (3.2.5 of G.729, Equation 24)*/ /* LSP values for first subframe (3.2.5 of G.729, Equation 24)*/
for(i=0; i<lp_order; i++) for(i=0; i<lp_order; i++)
#ifdef G729_BITEXACT
lsp_1st[i] = (lsp_2nd[i] >> 1) + (lsp_prev[i] >> 1);
#else
lsp_1st[i] = (lsp_2nd[i] + lsp_prev[i]) >> 1; lsp_1st[i] = (lsp_2nd[i] + lsp_prev[i]) >> 1;
#endif
ff_acelp_lsp2lpc(lp_1st, lsp_1st, lp_order >> 1); ff_acelp_lsp2lpc(lp_1st, lsp_1st, lp_order >> 1);

Loading…
Cancel
Save