1. IMPORTANT:
    We launched a new online community and this space is now closed. This community will be available as a read-only resources until further notice.
    JOIN US HERE

Varying 2 parameters in one movement?

Discussion in 'Building With Reaktor' started by mylkoa, Dec 13, 2006.

Thread Status:
Not open for further replies.
  1. mylkoa

    mylkoa NI Product Owner

    Messages:
    194
    Sometimes I have a patch that sounds good when the Q on the filter is high, but at certain cutoff frequencies, the sound is piercingly loud or high Q sounds good at some freq. but not others... so far I have been using eq to even out sounds, but I'm wondering if I can desigh a filter and cutoff control where the filter will have high Q at some parts, but lower Q at others. Can anyone give advice or point me in a direction?

    Thanks,
    Andy
     
  2. Robin Davies

    Robin Davies Forum Member

    Messages:
    280
    Short answer: try more moderate Q. You can do a lot without pushing the filters deep into resonance.

    Long answer:

    I haven't really dug into the available filters in Reaktor yet, so I can't really speculate as to which filters do what. I do know that a lot of the basic filters seem to have quite wild behaviour with high Q, and many of them don't seem to be normalized.

    Also a disclaimer: I am not a digital filter expert. I've made a few and survived.

    I'm kind of hoping that a reaktor expert can give some guidance as to which filters behave better than others. I've been meaning to ask.

    My unconfirmed impression of the reaktor filters I've played with (briefly) is that the filters are not normalized, and Q controls the size of the peak above unity gain: a Q that corresponds to a 30db resonant peak boosts the output of a signal at the cutoff frequency by 30db!

    My favorite approach in non-reaktor designs is to use normalized Chebyshev filters, because the amplitude of the resonant peak(s) of Chebyshev filters is quite predictable: the equiriple parameter basically gives the size of the resonant peak, in dB. I run them with a "normalized" resonant peak: i.e. the ratio of the amplitude of a sine wave at the peak frequency to the amplitude of the output is 1:1. The advantage of this is that you always know what the *loudest* possible output is, even if you don't know how loud overall result will be. I like normalized filters: they're fairly predictable, and the results are consistently musical.

    The psychoaccoustics of perceived loudness are complicated; normalizing is a bit arbitrary. But being too quiet by a few db is better than being too loud by 30db.

    If you were to cut the overall amplitude of the output of that reaktor filter by 30db, you'd probably get something that's easier to deal with.

    Unfortunately the relationship of Q to dB gain at the peak frequency is not straightforward, even if you do know the internal implementation of the filter (we don't). So it won't be easy to normalize the existing filters after the fact.

    One very good strategy is to try to have the Q knob reduce overall amplitude, as it increases the resonance, trying to keep the magnitude of the peak resonant frequency roughly constant. (not easy).

    Another strategy is to keep the Q to fairly reasonble limits. I think you might find that some of the reaktor filters behave more reasonably if Q is reasonable. It's difficult to implement digital filters that behave well with more than 20db or 30db resonant peaks. If you really crank up the resonance, then behaviour may be less predictable than if you crank up the resonance to a more modest level. You can do lots of interesting stuff with a Q that gives a resonant peak of ~20db. If you drive any of the available filters into really deep resonance, I would be surprised if you will get great results.

    It might be worthwhile to examine the frequency response of some of the stock filters to see if you can figure out how they behave. I've been meaning to do this myself. Knowing in advance how your filters behave is way better than not knowing.

    A way to do this: generate a signal that consists of a single impulse response every 2048 samples (the lenght of the FFT used in the spectroscope); feed that through your filter,; and then feed the filtered signal to the spectroscope that I posted in the user library. This will plot a fairly reasonable approximation of the frequency response of the filter on the oscilloscope. Knowing how the filters actually behave may help you make better use of them.
     
Thread Status:
Not open for further replies.