Frequency analysis

keefbaker's icon

Hi guys,

I'm still pretty new at MAX/MSP and I was wanting to make something that would detect the peak frequency of incoming audio and feed that into a biquad so you can simply get rid of crazy resonances with just a detect button and a dial in Live.

Only hurdle I have is the detecting peak frequency. I believe I could probably pull this off using some fft stuff in pfft~ but sadly every time I've tried to read into it my brain shuts down and I have to rewatch an entire season of Airwolf to reboot my brain.

Does anyone have any ideas on how to do this or has done something similar with frequency detection and would be happy to share?

It would be immensely appreciated.

Thanks

Keef

mzed's icon
Max Patch
Copy patch and select New From Clipboard in Max.

I feel like I posted this for somebody else in the last month or so:

That finds the hottest bin using fft~ and gen. For many cases, the hottest bin will be near the fundamental. fzero~ might also be a good object to look at.

vichug's icon

the popular, Miller Puckettet's object fiddle~'s first purpose is to detect the fundamental frequency, did you have a look at it ?
@mzed : is the first outlet of the gen~ the subpatch the main frequency output ? in that case it seems to work not very well, it cycles through 150 and 250 approximately...

mzed's icon
Max Patch
Copy patch and select New From Clipboard in Max.

It's the bin number. Here's a better example:

PS Try fzero~

vichug's icon

thanks a lot.

keefbaker's icon

Chaps, you are legends for this! Thanks very much!

yilinyilin's icon

Hi,MZED,
Why use 4096 after dspstate~?
Looking forward to your reply,
Thanks,

michelez's icon

Have you looked into the zsa.descriptors library?