Advanced Max: FFTs, Part 3
In the third in our series on using the FFT in Max, spend 45 minutes learning how to visualize the FFT processing you're working with, and further explore the use of various window types in ways that you can see and hear.
- Download the patches used in this tutorial.
- Jean-Francois CharlesMar 14 2017 | 9:31 pmNice tutorial, thanks for that. I thought you would demonstrate using windowing in the [jit.fft] patch... Would still like to see examples of that.
- Timothy PlaceMar 15 2017 | 3:27 pmThanks, Jean-Francois! Great idea to apply windowing to the frames sent to jit.fft.
- brendan mccloskeyMar 15 2017 | 5:11 pmGosh, I miss MaxMSP :(
- brendan mccloskeyMar 15 2017 | 5:16 pm(I've taken a vow to execrate all vernacular pseudo-religious exclamations from my vocabulary; it's just a thing)Gosh. (and then I did a google research, sigh)
- bsutherlandMar 17 2017 | 8:40 pmGreat series! I've been looking for engaging and accessible ways to explain FFTs to students in my audio processing/design course (which is all Max, all the time, I might add), and these tutorials and patchers are very useful. Thanks!
- FPMar 24 2017 | 1:38 pmthx. that's great.
- Alvin RaatApr 12 2017 | 4:26 pmThanks for a really useful tutorial!Maybe I just missed it, but what was that little detail you were about to deal with in 42:15?
- Timothy PlaceApr 12 2017 | 5:03 pmHa! Great observation @Alvin!I was originally planning to come back and introduce the vectral~ object. The benefit is that it would make the drawing of the spectrum less jumpy. I ran out of time and skipped that addition to the patcher.Cheers!
- hz37May 07 2017 | 10:12 amThanks, this is one of the best things I've been following along this year!
- raslMar 16 2018 | 8:24 amHi Tim. Thank you for some great and really informative tutorials, there is so much to be learned here! I have a question, in this tutorial there is something I can´t comprehend: In the last part of the tutorial - where you copy/paste parts of your overlapped fft-patch from Tutorial 2, you leave the numbers from that tutorial - that had fft-sizes of 512 samples. So the count-up for the window-indexing is still 512 samples with an overlap/delay of 256 samples (and the window-buffer is set to 512 samples), eventhough the fft-size is 1024 samples big with an overlap of 512 samples. The spectrum looks neat (with a dc-offset/noisefloor around -70 dB). -Is match between window-indexing and fft-sizes not that important, or how is it? I tried to dial in numbers according to your Tutorial 2 setup, so the fft- and window-sizes match with corresponding overlaps etc. The result is a noise floor around -96 dB, but also with quit a lot of unaccounted for noise down there - eventhough for practical applications this would probably be acceptable. What is the correct way to do this?