
jameslo
I'm up to the beginning of Katja V's Fourier Transform section and I've already found a few answers to my questions. I also managed to get the sum of FFT term amplitudes to match the RMS value for arbitrary input. Here's the patch:
Inside [pd computerMagnitudes]:
compareTimeFreqAmpl2.pd
All the things on the left are just tools to fill the input table, but you can also just draw. Once you have your signal, bang computeMagnitudes to measure its amplitude both ways.I made a couple of simplifications that not only got the test working but also gave me more confidence that I was comparing apples to apples:
 I'm computing RMS and the FFT from a single static 1024 vector, so I'm now comparing two views of the exact same signal and there's no need for averaging.
 I learned from Katja that if you perform a complex FFT on a real signal, you don't have to worry about which terms to double because the FFT gives you those terms's double in the upper half of the output explicitly. The real FFT skips the upper half for efficiency because it's related to the lower half.
 I also learned that even the cosine and sine components of each harmonic are uncorrelated signals, so I now sum their magnitudes individually across all harmonics. There's no need to compute the magnitude of each FFT term first.
So I think the issue I was having with noise was just an artifact of a badly programmed test, probably having to do with the way I was averaging term magnitudes, but I don't really know.

jameslo
Ugh, sinesum may not only pad your array, assuming that you want to use 4 pt interpolation, but may also reduce the array size to the next lower power of 2 + 3 pts. You have been warned; don't waste time like me wondering why your patch is a little off.
sinesum changes table size.pd 
jameslo
@whaleav sanity check please: that TipsAndTricks page only lists messages you can send to pd, not messages from pd, right?


jameslo
@RayManiac Ah, OK, the version that does not load is 8 bit @ 11025 sample rate. I don't know if [soundfiler] can load that format, but I don't see any mention of 8 bit in the help file.

jameslo
@RayManiac Both links link to the same file (which loads fine on my system)

jameslo
@RayManiac upload the file and I'll give a look. Or open with a sound editor and resave as Microsoft wav (maybe it's Broadcast Wav?)

jameslo
@RayManiac How do the headers differ (examine with a binary file viewer)? Have you tried soundfiler's raw mode to skip over the header?

jameslo
@whaleav Well, that metaphor applies only if, prior to taking his bath, Archimedes was told a hundred times to try putting the crown in a bucket of water.

jameslo
@s.elliot.perez I think it's because your feedback delay can't go below 1 block, which at the default size of 64 is the period of about 689hz. Move a subset of your patch that includes both delay objects into a subpatch and declare a smaller block size using [block~].