Splitting FFT spectrum into octave bands? how? worth it?
Posted: Mon Aug 12, 2019 11:24 pm
Hello ALL !!!
I'm just building a simple vertical bar graph display that shows (with fantastic accuracy hopefully) the volume of 10 or 12 different octaves (1 octave per bar, 0-1/-inf - unitydb) .
~~~
I'm currently utilizing bw bandsplitters, and envelope followers to get my signal (saw a few others implement this approach, made my own from scratch. cpu heavy but It works great... proud ) but >>>>
I thought hey maybe I could increase accuracy and reduce cpu usage by analyzing to get a fft spectrum, divide the bins/array sections(?) into groups of octaves (how? math?) getting the magnitude into a 0-1 scale, adding the bins in each octave group together and rescaling the mag to get average of the octave, and using this as my amplitude to drive my bar graph... I would love the ability to change/choose the (f*2^n) band /octave splitter points with ease... I'm just not super hip to manipulating these fft arrays... I'm smart, yet not smart !
~~~
I know it sounds like I'm making a request for a schematic (not opposed to getting one ) but I'm more so wondering on the math/logic of getting my magnitudes, and dividing these bins into octave groups...
(would the octave splitter cutoffs be too steep to illustrate average amplitude? If that assumption holds weight.. is there a work around to simulate cutoff slopes?? is that thought relevant whatsoever??)
AND more importantly fft wisdom in general,, ? (samples? mag accuracy? bin vs freq? speed, responsive enough for multiband modulation? HELL... phase? pitch correlation/detection??)
prolly easier than I think. I'm thinking about just sweeping with sin waves and figuring it out (please save me...)
PS: also could I further this to semitone accuracy ( 10 octaves * 12 semitones = 120 band bar graph ..genius? dumb? needed? UNWARRANTED?? )
~~~
~~~
TLDR:
Ultimately the question is, will this yield me a result that is less CPU intensive and more accurate (speed/sync, freq, volume) ?
FFT Spectrum OCTAVES AMP BAR GRAPH
To whatever brave soul that has read this, I hope I have inspired you and we can exchange more ideas.. AND HOPEFULLY you can EDUCATE your friend here....
~That Guy
I'm just building a simple vertical bar graph display that shows (with fantastic accuracy hopefully) the volume of 10 or 12 different octaves (1 octave per bar, 0-1/-inf - unitydb) .
~~~
I'm currently utilizing bw bandsplitters, and envelope followers to get my signal (saw a few others implement this approach, made my own from scratch. cpu heavy but It works great... proud ) but >>>>
I thought hey maybe I could increase accuracy and reduce cpu usage by analyzing to get a fft spectrum, divide the bins/array sections(?) into groups of octaves (how? math?) getting the magnitude into a 0-1 scale, adding the bins in each octave group together and rescaling the mag to get average of the octave, and using this as my amplitude to drive my bar graph... I would love the ability to change/choose the (f*2^n) band /octave splitter points with ease... I'm just not super hip to manipulating these fft arrays... I'm smart, yet not smart !
~~~
I know it sounds like I'm making a request for a schematic (not opposed to getting one ) but I'm more so wondering on the math/logic of getting my magnitudes, and dividing these bins into octave groups...
(would the octave splitter cutoffs be too steep to illustrate average amplitude? If that assumption holds weight.. is there a work around to simulate cutoff slopes?? is that thought relevant whatsoever??)
AND more importantly fft wisdom in general,, ? (samples? mag accuracy? bin vs freq? speed, responsive enough for multiband modulation? HELL... phase? pitch correlation/detection??)
prolly easier than I think. I'm thinking about just sweeping with sin waves and figuring it out (please save me...)
PS: also could I further this to semitone accuracy ( 10 octaves * 12 semitones = 120 band bar graph ..genius? dumb? needed? UNWARRANTED?? )
~~~
~~~
TLDR:
Ultimately the question is, will this yield me a result that is less CPU intensive and more accurate (speed/sync, freq, volume) ?
FFT Spectrum OCTAVES AMP BAR GRAPH
To whatever brave soul that has read this, I hope I have inspired you and we can exchange more ideas.. AND HOPEFULLY you can EDUCATE your friend here....
~That Guy