logarithmic filter sweep?
I’d like to tie an LFO to a reson~ for a slow, even filter sweep.
What do I need to do mathematically in order to smooth out the range of the sweep?
I would assume something logarithmic.
i.e. the difference between 200-300hz is perceptively much larger than from 7000-7100hz
I’m unfamiliar with the physics at work here.
I am not sure I understand what you want to do.
Do you want the LFO to drive the filter cutoff?
The easy way to do it would be to take the output
of an oscil object, whose range is -1 to 1, and remap
that to your frequency range. Basically the cutoff
freq will go back and forth.
I am not sure why logarithmic anything has to be
brought in to things.
Take a look at the [mtof~] object (note – that’s the msp version) – you’ll need to work in midi note values, but that shouldn’t be too hard – if you need exact frequency conversions you can use [ftom]….
That will give you a logarithmic sweep from a linear input..
@ Anthony Palomba – I think the idea here is to make the sweep sound more linear from the point of view of perception. As pitch / frequency perception is (very roughly) logarithmic it makes sense to do this. Otherwise, for a slow LFO over a wide range the sweep will appear to spend a lot more time in the high frequecny area than the low frequency area….
Exactly what Alex said.
I’ll give that a try. Thanks!
Check out [lh.mtoaf] in this collection. Either that or [expr pow(2,$f1/12)] which does the conversion that you can then scale.
----------begin_max5_patcher---------- 528.3ocuVFriaCBDF9r8SAhSsUYiLDyljdqW5oJ0GfpUUDLIgU1fqA2jzUad 1qAbZRSytwoK1WP1Cvv+7wv.OEGAWn1x0PvGAeCDE8TbTjyj0PT6+QvB5VVN U6FFbYtRVW.G46ZoRZzhewscgviSZM2LBgLmabSA0ZrjZXqExUeuhyL9kDO4 9l4.vyrsjD22MsfGN5GUs4fivsV8lL6J4duX0D0.GAfKnxUv+LaQlSwpEOdG N8TEKoEtoB+TkflCsc7bbrsYTGo.SUTvklCN0v25hH3W97WCDZPy8PI01NI8 JnI4BgLNrgrjuows+SD+g8fjw2RLiuZ5vLjsEkPtRPido7AsXkrIHuXhPxfP E1NVNeeXwhOUHsOnBZ9fPkJtVIuIpj9JTAicoIS8mSlOlDdrPFlpFKnZNXYE +G0bIaGXmpFrgdbbu0hrybINnTGnPj+iZIyGFNTnxpyoFgRBx3kl0f2oXF5O 452GHTLYZ5wSRn6w2NIlNTEUIgtpZ69eJtGpeD3yIA8MFS70I76484aLdsmX z1SihEEMQlM2ZbR3xWJUa1CvANeokaI8wsvcKewMUXtPd9STcp1Z+uQkVUWw Nr7GtWCbT3YbsQHcEXNYP1mDbxfVKxx3xSO9WHxJUBooUDfGt3FWW0zYK2Kn oAURockRngiRcQSms812ZhzEIQFVL0AIQdCPp4mmi+MpuXzL -----------end_max5_patcher-----------