29 unsigned long buflen,
unsigned long * pos) {
33 outsample = buffer[*pos];
34 buffer[(*pos)++] = insample;
52 unsigned long pos,
unsigned long n) {
54 while (
n + pos >= buflen)
56 return buffer[
n + pos];
69 unsigned long pos,
unsigned long n) {
71 while (
n + pos >= buflen)
73 buffer[
n + pos] = insample;
86#define db2lin(x) ((x) > -90.0f ? powf(10.0f, (x) * 0.05f) : 0.0f)
88#define ABS(x) (x)>0.0f?(x):-1.0f*(x)
91#define LN_2_2 0.34657359f
92#define LIMIT(v,l,u) ((v)<(l)?(l):((v)>(u)?(u):(v)))
94#define BIQUAD_TYPE float
132 bq_t J = pow(10.0f, gain * 0.025f);
134 bq_t a0r = 1.0f / (1.0f + (
g / J));
136 f->b0 = (1.0f + (
g * J)) * a0r;
137 f->b1 = (-2.0f * cw) * a0r;
138 f->b2 = (1.0f - (
g * J)) * a0r;
140 f->a2 = ((
g / J) - 1.0f) * a0r;
146 bq_t sn = sin(omega);
147 bq_t cs = cos(omega);
148 bq_t alpha = sn * sinh(
M_LN2 / 2.0 * bw * omega / sn);
150 const float a0r = 1.0 / (1.0 + alpha);
159 f->b0 = a0r * (1.0 - cs) * 0.5;
160 f->b1 = a0r * (1.0 - cs);
161 f->b2 = a0r * (1.0 - cs) * 0.5;
162 f->a1 = a0r * (2.0 * cs);
163 f->a2 = a0r * (alpha - 1.0);
172 bq_t sn = sin(omega);
173 bq_t cs = cos(omega);
174 bq_t alpha = sn * sinh(
M_LN2 / 2.0 * bw * omega / sn);
176 const float a0r = 1.0 / (1.0 + alpha);
186 f->b0 = a0r * (1.0 + cs) * 0.5;
187 f->b1 = a0r * -(1.0 + cs);
188 f->b2 = a0r * (1.0 + cs) * 0.5;
189 f->a1 = a0r * (2.0 * cs);
190 f->a2 = a0r * (alpha - 1.0);
202 bq_t A = powf(10.0f, gain * 0.025f);
203 bq_t b = sqrt(((1.0f +
A *
A) /
LIMIT(slope, 0.0001f, 1.0f)) - ((
A -
205 bq_t apc = cw * (
A + 1.0f);
206 bq_t amc = cw * (
A - 1.0f);
208 bq_t a0r = 1.0f / (
A + 1.0f + amc + bs);
210 f->b0 = a0r *
A * (
A + 1.0f - amc + bs);
211 f->b1 = a0r * 2.0f *
A * (
A - 1.0f - apc);
212 f->b2 = a0r *
A * (
A + 1.0f - amc - bs);
213 f->a1 = a0r * 2.0f * (
A - 1.0f + apc);
214 f->a2 = a0r * (-
A - 1.0f - amc + bs);
225 bq_t A = powf(10.0f, gain * 0.025f);
226 bq_t b = sqrt(((1.0f +
A *
A) /
LIMIT(slope, 0.0001f, 1.0f)) - ((
A -
227 1.0f) * (
A - 1.0f)));
228 bq_t apc = cw * (
A + 1.0f);
229 bq_t amc = cw * (
A - 1.0f);
231 bq_t a0r = 1.0f / (
A + 1.0f - amc + bs);
233 f->b0 = a0r *
A * (
A + 1.0f + amc + bs);
234 f->b1 = a0r * -2.0f *
A * (
A - 1.0f + apc);
235 f->b2 = a0r *
A * (
A + 1.0f + amc - bs);
236 f->a1 = a0r * -2.0f * (
A - 1.0f - apc);
237 f->a2 = a0r * (-
A - 1.0f + amc + bs);
250 u.y =
f->b0 *
x +
f->b1 *
f->x1 +
f->b2 *
f->x2
251 +
f->a1 *
f->y1 +
f->a2 *
f->y2;
252 if ((
u.y_int & 0x7f800000) == 0)
#define M_LN2
Definition compat.h:146
#define M_PI
Definition compat.h:149
UINT_D64 w
Definition inflate.c:942
int y
Definition inflate.c:1588
int g
Definition inflate.c:1573
struct huft * u[BMAX]
Definition inflate.c:1583
unsigned x[BMAX+1]
Definition inflate.c:1586
unsigned f
Definition inflate.c:1572
float LADSPA_Data
Definition ladspa.h:84
#define A(x)
Definition lice_arc.cpp:13
unsigned int uint32_t
Definition mid.cpp:100
#define BIQUAD_TYPE
Definition biquad.h:13
#define LN_2_2
Definition biquad.h:4
BIQUAD_TYPE bq_t
Definition biquad.h:16
static void biquad_init(biquad *f)
Definition tap_utils.h:116
static LADSPA_Data read_buffer(LADSPA_Data *buffer, unsigned long buflen, unsigned long pos, unsigned long n)
Definition tap_utils.h:51
static void hs_set_params(biquad *f, bq_t fc, bq_t gain, bq_t slope, bq_t fs)
Definition tap_utils.h:220
static void write_buffer(LADSPA_Data insample, LADSPA_Data *buffer, unsigned long buflen, unsigned long pos, unsigned long n)
Definition tap_utils.h:68
static void eq_set_params(biquad *f, bq_t fc, bq_t gain, bq_t bw, bq_t fs)
Definition tap_utils.h:127
static void lp_set_params(biquad *f, bq_t fc, bq_t bw, bq_t fs)
Definition tap_utils.h:144
static void hp_set_params(biquad *f, bq_t fc, bq_t bw, bq_t fs)
Definition tap_utils.h:169
static void ls_set_params(biquad *f, bq_t fc, bq_t gain, bq_t slope, bq_t fs)
Definition tap_utils.h:196
static bq_t biquad_run(biquad *f, bq_t x)
Definition tap_utils.h:243
#define LIMIT(v, l, u)
Definition tap_utils.h:92
static LADSPA_Data push_buffer(LADSPA_Data insample, LADSPA_Data *buffer, unsigned long buflen, unsigned long *pos)
Definition tap_utils.h:28
int n
Definition crypt.c:458