I did this with a whole lot of harmonics before.
For some reason this patch doesn't work as expected. It gives a flat line for "1". As near as I can tell it shouldn't. A few envelope objects to check give really strange results... nothing until I add something, then it starts working.
Try about 100. sine.pd is the abstraction, sines.pd is the patch.
On 9/4/06, mami music mami.music@gmail.com wrote:
Hey guys thanks for the explanation!. goin further in the study of fft and applications, iam designing an oscilator that is capable to go from pure sine tone (fundamental harmonic) to a saw (all harmonics)... 1.I have had trouble finding the amplitudes of the harmonics and relating them to a specific function. 2.Theoretically for it to work propperly i should include infinite harmonics, i am using
[; table sinesum $f1 $f2 $f3 $f4... $f12] to generate the 12 harmonics with different amplitudes in an array and then read it with tabosc4~ but i still don get enough saw sound.
Is it a game of try/error or have any of you guys done it with a larger amount of harmonics.???
- What i wanted in the beginning was to use the object FFT~ but didn´t get
along quite well... can anyine pinpoint how to create a list that IFFT~ could interpret as a couple of sinewaves?
thankz a lot!!!!
2006/9/4, Kyle Klipowicz kyleklip@gmail.com:
This is a good explanation.
~Kyle
On 9/4/06, Chuckk Hubbard badmuthahubbard@gmail.com wrote:
If you did a FFT with a block size larger than an entire audio file, as I understand it, you wouldn't need a window. Looping Martin Luther King's "I Have a Dream" speech (or the audio from the second season of CHIPS, or a recording of penguins in their natural habitat) over and over with a 30-minute pause between each round would technically be a "periodic function", so analyzing it this way would create an accurate representation; unfortunately, you would have exactly one value for each frequency, which tells you nothing about the frequency content at any point. To analyze changing frequency content, you have to take smaller blocks. Repeating these to make them "periodic functions" means the beginning and end of any one block of sound will run together. If this happens to create a continuous function, great, but the chances of that happening with every block are pretty low (if a block is 64 samples, at 44100 samples per second, and the second season of CHIPS is 23 episodes, that's a lot of blocks). Windowing the input simply forces that part of the function to be continuous, by forcing beginning and end to the same value and direction. To prevent the data from that part of the function from being completely lost, alternating FFTs can be taken with windows in opposite phase.
I don't exactly understand what happens with the result, though. Whether the frequency values are averaged, or whether resynthesis is done with the same overlapping. I also don't understand upsampling/downsampling with the block~ object, but I'm not sure that's related.
-Chuckk
Glad this came up!! Kevin
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
-- "Far and away the best prize that life has to offer is the chance to work hard at work worth doing." -Theodore Roosevelt
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list
--
http://theradioproject.com http://perhapsidid.blogspot.com
(((())))(()()((((((((()())))()(((((((())()()())()))) (())))))(()))))))))))))(((((((((((()()))))))))((()))) ))(((((((((((())))())))))))))))))))__________ _____())))))(((((((((((((()))))))))))_______ ((((((())))))))))))((((((((000)))oOOOOOO
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list