These days I’ve been working on something I first proposed a year ago for an exam at the conservatory. It’s about achieving asynchronous granular synthesis by means of recursive processes, instead of random/stochastic ones. Consider a basic design for a granulator. You have a pointer going through the indexing of a buffer, and readers playing back grains from the area of the buffer indexed by the pointer. Some of the parameters you can work with are the grain window (spectral spread), pointer’s speed (time stretching), readers’ speed (pitch shifting), and the time interval between grains (horizontal and vertical density, if overlap takes place). In my implementation, I have experimented by mapping such parameters to the characteristics of the output sound itself, thus creating a control feedback. Namely, in my first tests I have injected perturbation by mapping the RMS output over the index of the buffer, and adding that value to the current readers’ position each time a grain is played back. It is interesting because it is possible to establish different relations between sound and perturbation, thus realising positive and/or negative feedback. For example, if the RMS is proportional to the readers’ position shift, the greater the RMS, the greater the shift, resulting in a behaviour where the louder the sound is, the more the next grains will be “escaping” from the loud area of the buffer and eventually focus in areas with less intensity. Of course the other parameters can be mapped in a similar way, and it is also possible to use other characteristics of the sound related to the parameters of the granulator: centroid-pitch shift; RMS-interval between grains; spectral noisiness-grain size; etc…