From 68adb68e96e6ec9003e0601251b8103624088174 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Sat, 28 Nov 2020 14:37:06 +0100 Subject: avfilter/af_acrossover: really fix single-pole allpass coefficients Now LR2, LR6, LR10, LR14 and LR18 have really flat sum. --- libavfilter/af_acrossover.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'libavfilter/af_acrossover.c') diff --git a/libavfilter/af_acrossover.c b/libavfilter/af_acrossover.c index f989ac81d9..33a0812c9f 100644 --- a/libavfilter/af_acrossover.c +++ b/libavfilter/af_acrossover.c @@ -211,11 +211,9 @@ static void set_ap(BiquadContext *b, double fc, double q, double sr) static void set_ap1(BiquadContext *b, double fc, double sr) { - double omega = 0.5 * M_PI * fc / sr + M_PI_4; - double cosine = cos(omega); - double sine = sin(omega); + double omega = M_PI * fc / sr; - b->a1 = -cosine / sine; + b->a1 = exp(-omega); b->a2 = 0.; b->b0 = -b->a1; b->b1 = 1.; -- cgit v1.2.3