> On Feb 22, 2018, at 10:23 AM, Oleg Nesterov <o...@redhat.com> wrote: > > On 02/22, Mykle Hansen wrote: >> >> My latest problem: my Faust program seems to hang the compiler, >> locking up one CPU on my system until I terminate it. > ... > >> betanoise(beta) = real, imag : an.ifft(N) : select2(0) >> with { >> N=8192; // 2^13 > > Well, an.ifft(8192) needs some time to compile ;)
Aha. Or rather, d’oh. > but it seems that you do not really understand what it does. You can't use N > > 1, > inputs(an.ifft(N)) == 2 * N and it must be equal to 2 == outputs(real, imag). You’re right, I sure don’t. =) I thought N was an evaluation window size, or something. I was just experimenting with Bourke’s approach, which I get in theory but not in practice. The signal his code is feeding to fft(-1) is a complex waveform with exponentially decreasing magnitude over time (dithered with noise) & random phase. He runs it through IFFT to convert that into 1/f noise, with exponentially decreasing power over frequency. Peering at analyzers.lib a little deeper now … am I right that N is the number of evaluation bins, i.e. as would be produced by a forward FFT analysis of a signal? (So 32 would be plenty for audio, and that compiles quickly enough.) If so, I guess my whole approach is 90 degrees off — the magnitudes need to be fed in parallel to ifft(), not in series. Does that seem right? I admit I’ve never done an IFFT before. =) -mykle- ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users