Thanks, Julius. So that I understand what you mean: what form does the out stream take? Are you suggesting that the ffunction does all frequency-domain processing and returns a time-domain signal, or that it puts out the STFT frames back-to-back (not sure how it would work)?
I guess a pv analysis in an ffunction could produce amp and freq streams (for each bin). Just how to manage so many streams may be a challenge. If there was some sort of a container format that bundled several streams together, I think it would work. Then functions to pack/unpack. A ffunction pair for analysis/synthesis, a library function for additive synthesis. Library functions for common processes, and there you go, a spectral processing system within Faust. Prof. Victor Lazzarini Maynooth University Ireland On May 6, 2021, at 9:26 PM, Julius Smith <julius.sm...@gmail.com> wrote: Hi Victor and Dario, In the current Faust, I would put the FFT in a ffunction which hops internally. From the Faust perspective, it would accept a signal stream and return an FFT-processed stream. Cheers, Julius On Thu, May 6, 2021 at 9:30 AM Victor Lazzarini <victor.lazzar...@mu.ie<mailto:victor.lazzar...@mu.ie>> wrote: yes, I wonder. The Hann window would of course be a raised scaled cosine (it could reside in a library of course). Hopping and overlapp-add may be important beyond the STFT, for other types of processing. As I said, maybe it just can't be done within the constraints set by the language. It's been quite a while since I remember chatting about this with Yann. best Prof. Victor Lazzarini Maynooth University Ireland On May 6, 2021, at 2:41 PM, Dario Sanfilippo <sanfilippo.da...@gmail.com<mailto:sanfilippo.da...@gmail.com>> wrote: *Warning* This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe. Hi, Victor. I literally never work with FFT and all I know dates back to a decade or so ago when I studied it for my master: I don't remember much. Sorry in advance for clueless questions. If we had primitives performing FFT and IFFT, would it be possible to do the overlapping stages in Faust with delayed signals? Something like this, for example? import("stdfaust.lib"); hann(size) = sin((ba.period(size) / size) * ma.PI) ^ 2.0; hann_overlap(size, factor) = sum(i, factor, hann(size) @ ((size * i) / factor)) / (factor / 2); process = hann_overlap(1024, 8); Ciao, Dario On Sun, 2 May 2021 at 14:52, Victor Lazzarini <victor.lazzar...@mu.ie<mailto:victor.lazzar...@mu.ie>> wrote: Because it's been so many years since I remember discussing this, and because there's so many clever and knowledgeable people working on the Faust sources, I am supposing the hopping issue has no solution. Is that right? I was reminded of it by an user asking about the question here last week. My answer, which went directly to him, is that as far as I knew hopping was out of question, but that Julius had written an FFT, but to apply it to a stream, it had to be done on sample-by-sample basis. Julius then confirmed it here. Just curious to know the status of this. Prof. Victor Lazzarini Maynooth University Ireland _______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net<mailto:Faudiostream-users@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/faudiostream-users<https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.sourceforge.net%2Flists%2Flistinfo%2Ffaudiostream-users&data=04%7C01%7CVictor.Lazzarini%40mu.ie%7C5b8d7bb7ec524ff0687908d910cd3b47%7C1454f5ccbb354685bbd98621fd8055c9%7C1%7C0%7C637559295915558171%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=db92KsX9f5SGsCzMpBs0TSmt5idNkbVYG1l8KN1%2BY%2BI%3D&reserved=0> _______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net<mailto:Faudiostream-users@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/faudiostream-users<https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.sourceforge.net%2Flists%2Flistinfo%2Ffaudiostream-users&data=04%7C01%7CVictor.Lazzarini%40mu.ie%7C5b8d7bb7ec524ff0687908d910cd3b47%7C1454f5ccbb354685bbd98621fd8055c9%7C1%7C0%7C637559295915568162%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=AZD4Uf7DewTWHQs3DUX5zJCyG791WKyC40xLJG0taq4%3D&reserved=0> -- "Anybody who knows all about nothing knows everything" -- Leonard Susskind
_______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users