Forums > MaxMSP

log frequency graphing

Jan 16 2006 | 11:03 pm


I am suffering from "patcher’s block" (like writer’s block) looking
for a way to graph fft amplitude frames on a log frequency scale.
Spectrograph~ is almost, but not quite, what I need for this patch.
Using the vectral~ help file as a starting point, I thought maybe
warping the signal going from the fft ramp outlet to vectral~’s index
inlets would work, but I couldn’t find documentation about those
inlets and my experiments didn’t seem to work. There must be an
obvious approach I am missing…any ideas, examples, or other
thoughts to help get me un-stuck on this?

Thanks a lot!!


Jan 17 2006 | 12:50 am

Hi Alex,
Well, if you’re working in pfft~, and you don’t have to worry about
the mirror image at the top of your fft, just use log~, and then rescale
log~’s output to your frame size. For example, if your fft index (the
third output from fftin~) goes from 0-256, that means that log~’s output
will go from 0-8 (using the default base 2). Then multiply that signal
by 32 to get you back to your original frame size, but now you’ve
log-scaled your frequency. Use that signal as the middle input to
vectral~. The left input signal can just be your ordinary, unaltered
index output from the fftin~.
If you are using fft~ rather than pfft~, you’ll need to split up your
index signal into its two halves and do a little math on the mirror
image part.
Other tips:
filter out the zeros going to your log~ object!
experiment with different log bases

have fun,

Jan 17 2006 | 1:17 am

Jan 17 2006 | 1:29 am

What about the logarithmic option in the Spectrograph~ object’s option
dialog isn’t working for you? What else do you need it to do?


Jan 17 2006 | 2:32 am

Jan 17 2006 | 8:58 am

If you have Jitter, you can look at jit-examples/audio/audio-viz/
1.audioviz_simple_jit_fft.pat. This should do what you need. The
log display works by generating a power function in a buffer~ which
is used by lookup~ to warp the x axis of the graph.


Jan 18 2006 | 12:49 am

Thanks, this approach is working for me now!


Jan 18 2006 | 1:07 am

i needed a bipolar graph of the difference between two spectra.


Viewing 8 posts - 1 through 8 (of 8 total)

Forums > MaxMSP