33 29443, 28346, 25207, 20449, 14701, 8693,
34 3143, -1352, -4402, -5865, -5850, -4673,
35 -2783, -672, 1211, 2536, 3130, 2991,
36 2259, 1170, 0, -1001, -1652, -1868,
37 -1666, -1147, -464, 218, 756, 1060,
38 1099, 904, 550, 135, -245, -514,
39 -634, -602, -451, -231, 0, 191,
40 308, 340, 296, 198, 78, -36,
41 -120, -163, -165, -132, -79, -19,
42 34, 73, 91, 89, 70, 38,
47 const int16_t* filter_coeffs,
int precision,
48 int frac_pos,
int filter_length,
int length)
52 av_assert1(frac_pos >= 0 && frac_pos < precision);
54 for (n = 0; n < length; n++) {
58 for (
i = 0;
i < filter_length;) {
69 v += in[n +
i] * filter_coeffs[idx + frac_pos];
72 v += in[n -
i] * filter_coeffs[idx - frac_pos];
81 const float *filter_coeffs,
int precision,
82 int frac_pos,
int filter_length,
int length)
86 for (n = 0; n < length; n++) {
90 for (
i = 0;
i < filter_length;) {
91 v += in[n +
i] * filter_coeffs[idx + frac_pos];
94 v += in[n -
i] * filter_coeffs[idx - frac_pos];
102 const int16_t* in,
int length)
107 for (
i = 0;
i < length;
i++) {
108 tmp = (hpf_f[0]* 15836LL) >> 13;
109 tmp += (hpf_f[1]* -7667LL) >> 13;
110 tmp += 7699 * (in[
i] - 2*in[
i-1] + in[
i-2]);
122 const float zero_coeffs[2],
123 const float pole_coeffs[2],
124 float gain,
float mem[2],
int n)
129 for (
i = 0;
i < n;
i++) {
130 tmp = gain * in[
i] - pole_coeffs[0] * mem[0] - pole_coeffs[1] * mem[1];
131 out[
i] =
tmp + zero_coeffs[0] * mem[0] + zero_coeffs[1] * mem[1];