In Alpha Forever the smallest delay time is a sample. The easiest way to insert a sample delay into the patch is by using the previous node.go_fig wrote: ↑Fri Aug 12, 2022 7:34 pm Yes, but IIRC there is no way to define a feedback loop involving delays on the order of a few samples (at 44.1 or whatever sample rate). There are filters and other effects that can only be implemented with access to such fine-grained micro delays. Users have access to such effects only insofar as they are embedded into the modules you provide.
The technical issues around this are interesting to me, but I was primarily asking whether you as a sound-designer can feel limited by this aspect, or whether the existing modules already tend to capture what you would want to do at the micro level.
This is the previous (delays the signal by 1 sample) node:
(the NTrg output remembers its last stored value even when a polyphonic voice is initialized - can be used for glissando-like effects)
When using feedback, 1 sample delay is automatically generated and is indicated by a spot on the wire with a 'z' character.
Here you can see the delay caused by feedback:
Our delay node is using a millisecond as a unit. This is handy, because a millisecond means the same amount of time, no matter what sample rate the user is working on. The delay is interpolated and is also capable of handling values that represent a fraction of a sample, but this can cost high-frequency loss in feedback. However, you can get the exact length of a sample in millisecond units from the sample rate node and can achieve sample exact delay times by multiplication.
Here you have a delay time of 5 samples:
If you put this delay into feedback, you'll have a delay time of 6 samples. You just have to keep in mind, that each time you create feedback, you add a sample to your delay time. This can easily be compensated and is a must to do when building physical modeling patches (or things get out of tune easily).
So really: in this plugin, every signal is being processed at the sample rate, and every value is represented with 32bit floating point numbers (there are no integers or bools).
Every node added to Alpha Forever in the last 2 years was built in Alpha Forever first (even the filters) and was prototyped there (I used these nodes in my music, and replaced them when they got compiled). The only difference to the compiled version is CPU usage (this makes a huge difference).
And yes, I'd feel limited when modulation would be on a slower sample rate. I'd feel limited if I was not able to set values to exactly the point I want to, and I'd feel limited if I was not allowed to create feedback loops.