35 { 0, 1, 2, 3, 4, 5, 6, 7 }
43 for (i = 0; i < 13; i++) {
51 return (a * b + (1 << 14)) >> 15;
57 const int16_t *
src = dst - lag;
59 for (i = 0; i < 40; i++)
72 int abs =
FFABS(filtered);
73 if (abs < 11059) abs <<= 1;
74 else if (abs < 20070) abs += 11059;
75 else abs = (abs >> 2) + 26112;
76 return filtered < 0 ? -abs : abs;
82 for (i = 7; i >= 0; i--) {
84 v[i + 1] = v[i] +
gsm_mult(rrp[i], in);
96 for (i = 0; i < 8; i++)
97 rrp[i] =
get_rrp((lar_prev[i] >> 2) + (lar_prev[i] >> 1) + (lar[i] >> 2));
98 for (i = 0; i < 13; i++)
101 for (i = 0; i < 8; i++)
102 rrp[i] =
get_rrp((lar_prev[i] >> 1) + (lar [i] >> 1));
103 for (i = 13; i < 27; i++)
106 for (i = 0; i < 8; i++)
107 rrp[i] =
get_rrp((lar_prev[i] >> 2) + (lar [i] >> 1) + (lar[i] >> 2));
108 for (i = 27; i < 40; i++)
111 for (i = 0; i < 8; i++)
113 for (i = 40; i < 160; i++)
122 for (i = 0; i < 160; i++) {
123 msr = av_clip_int16(data[i] +
gsm_mult(msr, 28180));
124 data[i] = av_clip_int16(msr << 1) & ~7;
134 int16_t *ref_dst = ctx->
ref_buf + 120;
145 for (i = 0; i < 4; i++) {
149 lag = av_clip(lag, 40, 120);