SynthMaker

RBJ Peaking hi frecuency Problem

Archive · 2010 7 old posts

From the original SynthMaker forum (2004–2014), with its members’ names and dates.

JuzamDJ ·

RBJ Peaking hi frecuency Problem Hello, I am developing an equalizer in SM with RBJ Peaking module (16 KHz for the Top), if compared this with Sonnox ÉQ (vstpluganalizer), I've found a fall in the top area ( 16 kHz, see de photo), I try to solve using 2x upsampling, but I can´t fix it.

Would greatly appreciate your help. ,thx

Sorry for my inglish

tor ·

Do you use the OS-kit? [old link]

tor ·

I was wondering if the same thing is possible without over sampling. David W. Gunnes, Ojas S. Chauhan and Sophocles J. Orfanidis has written about the subject. But I have yet to wrap my head around it properly. I am not a educated person so I lack some mathematical skills. But it is really only a matter at 44100 sample rate. At higher samplerates the warping is above the audible range. For critical recordings I asume most people operate at higest possible SR. So I went for a double precision floating solution in my EQ instead. I have shared my EQ here:

RBJ Filters ported UPDATED...

Dell ·

Hi.

The lift is based on having two frequencies working together.

One is tuned higher than the other with each one having it's own Q and, dB settings.

This is why the lift resembles so.

It was more than likely designed that way to give the 20 kHz a bit of an accent in the sound. I would estimate the first frequency is around 22 kHz.

Cheers!

datsound ·

It would be interesting to see how the peak profile develops through 14, 16 and 18 KHz, else it difficult to see what it's designed to do, maybe it's because frequencies over 16 are much less important to human ears, in fact many audio producers can't hear much over that level from using loudspeakers a lot.

So probably the filter is not designed for an equaliser or it is in oversight imported from the lowpass etc, you should try some other filters there are quite a lot of peak ones to see if you can get a better match, you can also try and see the code is there is a reference to frequencies above 16 and a formula next to it, and you can try a forum with people that do more filter programming. If the equaliser has fixed sliders, you can just use a different notch for the higher frequencies.

Disco_Steve ·

its mainly just Nyquist showing his head. the filter tends to zero as you approach infinite frequency but for sampled audio infinite frequency is brought right down to the finite Nyquist rate. so the filter must fall to zero. all digital filters which peek and then tend to zero do this. the two main ways to overcome it is to, add another peeking filter (but will still be wrong at very high frequencies, or add a high shelf filter so that at the Nyquist frequency the gain is as it would be if an infinite sample rate were used.

or use over sampling to move the Nyquist frequency out of the important range.

I personalty use , well that's a secret 😉

datsound ·

the code is pretty straightforwards, there should be a line in there where you can make a fast roll off over say 30khz.

sin = sin1(0.49*freq); cos = cos1(0.49*freq);

in this line you could be able to edit the freq value so that the formula thinks that freq is rolled offf when it is near infinity ... well i dont know but if you keep an eye on your specroscope and edit all the parameters in the rbj code, say devide each by 2, one at a time, well at least you would know what it is doing.

// Ins and Outs... polyin in; polyin freq; polyin q; polyin A; polyout out;

// Previous ins/outs storage and filter coefs... float in1,in2,out1,out2; float a0,a1,a2,b0,b1,b2;

// Get sin and cos values... float sin,cos,alpha; sin = sin1(0.49*freq); cos = cos1(0.49*freq); alpha = sin/(2*q);

// Calculate filter coefs... a0 = 1.0 + alpha/A; a1 = -2.0*cos; a2 = 1.0 - alpha/A; b0 = 1.0 + alpha*A; b1 = -2.0*cos; b2 = 1.0 - alpha*A;

//Scale filter coefs... a1 = a1/a0; a2 = a2/a0; b0 = b0/a0; b1 = b1/a0; b2 = b2/a0;

// Get our output... out = in*b0 + in1*b1 + in2*b2 - out1*a1 - out2*a2;

// Store old values... out2 = out1; out1 = out; in2 = in1; in1 = in;

edit... http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt

Wrote something here? To have a post removed or your name hidden, write to [email protected].

Before your first post

A few rules keep this a friendly place. You agree to them once.

Shown next to what you post, here and in the app. It doesn’t have to be your real name: 3–24 lower-case letters, digits or _ (capitals become lower case, spaces become _).

    Then your post goes up straight away.

    Delete this reply?

    Open it in SynthMaker?

    It goes on the track you’re editing there, in place of that track’s sound, and into My sounds. Your other tracks stay as they are.

    Want to keep that track’s sound? Start a new song in SynthMaker first (Song › New song), then open this.

    Report this reply?

    Only the developer reads reports. The person isn’t told who reported them.

    What’s wrong with it?

    Block this person?

    You won’t see their posts and replies here any more. They aren’t told, and you can unblock them at any time.

    People you’ve blocked

    Their posts and replies are hidden from you. Unblock someone to see them again.

    The community rules

    A few rules keep this a friendly place. Everyone agrees to them once, before their first post.