home
# THIS IS A WIP :)
buffer-gen is a sort of long-term project of mine. Previous to this i haven't ever really tried to program anything from scratch. I've done a little bit of coding in the past but it was mostly very small scripts for larger projects, usually in max.
for this, I'm using Rust, which i am learning allong side my progress on this project. I am also a beinner coder so my code will by no means be good. I'm using the scope of this project as a tool for myself to be motivated to learn something challenging, which is the Rust programming language, as well as just coding concepts in general.
my aim is to create some software that can process and synthesize audio using non-realtime methods by freely passing buffers between modules. Ideally, the interface would present some sort of module node-based workflow, which would then be converted (somehow... havent figured that much out yet) into a network of modules passing buffers between each other, which would then synthesize/process audio according to the indicated signal flow. The important bit is that it's non-realtime.
an example use case would be to like... idk. generate a bunch of kick samples in bulk. You could establish some network of modules that generates a kick sample, and attach that network to a module that renders whatever network is above it in the chain multiple times. if you included a random source in that repeated network, you could generatively synthesize a bunch of kick samples in bulk.
or maybe you wanna normalize a bunch of samples at the same time, or do some wild convolution or feedback shit that isn't feasable with realtime audio.. idk. that's the goal. as i'm writing this i have the structure for the way modules interact with eachother to allow for (within reason) infinite inputs, outputs, and instances of modules, although i haven't gotten much past that. I'm uploading devlogs to an alternate youtube channel, here' sthe url to that channel:
alt youtube channel w/ devlogs
oh also here's a github repository if this ever gets to a point where it's actually usable (or if you just wanna look at my bad code)