From 78bc37751ff2c7f8a96d769b317a9ec979926f59 Mon Sep 17 00:00:00 2001 From: Eric Wasylishen Date: Mon, 4 Aug 2014 01:38:25 -0600 Subject: [PATCH] fix filter glitchy output. add more quality levels --- .../UserInterfaceState.xcuserstate | Bin 37356 -> 37863 bytes Quake/snd_mix.c | 47 +++++++++--------- 2 files changed, 23 insertions(+), 24 deletions(-) diff --git a/MacOSX/QuakeSpasm.xcodeproj/project.xcworkspace/xcuserdata/ericwa.xcuserdatad/UserInterfaceState.xcuserstate b/MacOSX/QuakeSpasm.xcodeproj/project.xcworkspace/xcuserdata/ericwa.xcuserdatad/UserInterfaceState.xcuserstate index 44cf0ab373511155a9e206afdec956ef102d1f7d..6fff5e96503b600a73bbc2d7208ad3374356c6aa 100644 GIT binary patch delta 15278 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 EA0%KzPyhe` delta 14779 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 = f_c; filter->parity = 0; - if ((M + 1) % 16 == 0) - filter->kernelsize = (M + 1); - else - filter->kernelsize = (M + 1) + 16 - ((M + 1) % 16); + // M + 1 rounded up to the next multiple of 16 + filter->kernelsize = (M + 1) + 16 - ((M + 1) % 16); filter->memory = calloc(filter->kernelsize, sizeof(float)); filter->kernel = calloc(filter->kernelsize, sizeof(float)); @@ -230,7 +228,7 @@ static void S_ApplyFilter(filter_t *filter, int *data, int stride, int count) float *input; const int kernelsize = filter->kernelsize; const float *kernel = filter->kernel; - int parity = 0; + int parity; input = malloc(sizeof(float) * (filter->kernelsize + count)); @@ -250,25 +248,22 @@ static void S_ApplyFilter(filter_t *filter, int *data, int stride, int count) // apply the filter + parity = filter->parity; + for (i=0; iparity = parity; @@ -290,15 +285,19 @@ static void S_LowpassFilter(int *data, int stride, int count, int M; float bw; - if (snd_filterquality.value == 0) + switch ((int)snd_filterquality.value) { - M = 126; - bw = 0.90; - } - else - { - M = 222; - bw = 0.96; + case 1: + M = 126; bw = 0.900; break; + case 2: + M = 150; bw = 0.915; break; + case 3: + M = 174; bw = 0.930; break; + case 4: + M = 198; bw = 0.945; break; + case 5: + default: + M = 222; bw = 0.960; break; } float f_c = (bw * 11025 / 2.0) / 44100.0;