You don't want fft~/ rifft~ for that. It's a mapping between large structures on blocks and single-samples (and vice-versa).
To get a single sinusoid from a path-defined circle, you just project onto a single dimension. For example, (x,y)->x or (x,y)->y or (x,y)-> (sqrt(3)/2*x+1/2*y). In the case of a circle, all the axes you would draw through the circle work equally well. Chuck On Wed, Jan 29, 2014 at 2:44 PM, Alexandros Drymonitis <[email protected]>wrote: > Yeah, well I'm trying to create shapes in Gem (say a circle) and create > the sound they make. So, to make a circle, I'm making a ramp from 0 to 1, > multiply it by 2pi and send it to [cos] and [sin] and store these values in > two tables, which I then read for every instance of a [circle] (using > [repeat] and [separator]). So, since for any shape, you need two > coordinates, x and y, my thought was to use these two coordinates as the > real and imaginary part of an FFT, merging the two dimensions in one. > After the sinusoid, I'll try to make other shapes too, but I wanted to > start from that to make sure that I hear exactly what I see. > > > On Wed, Jan 29, 2014 at 10:30 PM, Charles Z Henry <[email protected]>wrote: > >> What you seem to be doing is creating a spectrum which has magnitude 1 >> everywhere, and the phase is varying at a constant rate vs frequency. That >> means it has a constant group delay. >> >> So... my guess is that you'd get an impulse in each block, whose timing >> depends on the rate of the phasor. When you vary the phasor frequency, it >> will coincide with the peak of the hann window at some point and be its >> loudest. >> >> Should be a periodic complex tone. I don't understand your goal: you've >> got sinusoids in the patch... to generate sinusoids? >> >> Chuck >> >> >> On Wed, Jan 29, 2014 at 9:12 AM, Alexandros Drymonitis >> <[email protected]>wrote: >> >>> Say I have a full sine and a full cosine cycle stored in two tables. I'm >>> trying the following to get a sinusoid from [rifft~] but it doesn't work. >>> >>> [phasor~] >>> | >>> [*~ sizeOfTable - 3] >>> | >>> [+~ 1] >>> |\ >>> | \ >>> | [tabread4~ sine] >>> | \ >>> [tabread4~ cosine] >>> | \ >>> [rifft~] >>> | >>> | [tabreceive~ hann] >>> | | >>> [*~ ] >>> | >>> [/~ 1536] >>> >>> I've set the block size to 1024 in this subpatch, and there's a hann >>> window in the parent patch as well. The tables have three guard points, >>> that's why I'm multiplying [phasor~] by the size of the table minus three >>> and then add one. >>> The output of this is a waveform with very low amplitude that kind of >>> bounces up and down within a sine like mask. Don't know if I'm making my >>> self clear. My main question is, how do you get a sinusoid out of a sine >>> and a cosine? Also, what's wrong in my approach? >>> >>> _______________________________________________ >>> [email protected] mailing list >>> UNSUBSCRIBE and account-management -> >>> http://lists.puredata.info/listinfo/pd-list >>> >>> >> >> _______________________________________________ >> [email protected] mailing list >> UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list >> >> >
_______________________________________________ [email protected] mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
