kabelsalat: a live coding version of noisecraft #109
Replies: 1 comment
-
Hi felix! It's cool to see that you've built something with the noisecraft audio engine. Yes it's OK to reuse the code. However, in theory you should be including the original open source license for the files/code that you are using. It would also be nice to include a note in the readme to say that you based your audio synthesis engine on noisecraft and/or that the project was inspired by noisecraft, if you don't mind. That being said, I am very glad to see you found the code useful and that it is working well for you :)
I just can't stand codebases with lots of dependencies 😅
Are you saying that web audio noses perform less well than noisecraft's audio synthesis engine? If so, that is very surprising considering that noisecraft's audio rendering loop is single threaded and relies on compilation to JavaScript. I wouldn't know though because I never used anything except's web audio's script and output nodes. I originally created this audio synthesis engine because I felt like the web audio API was just too big/bloated. IMO it's just unlikely that different browser implementations are going to sound exactly the same... I also felt like there was no reason that API needed to be so complex, all we really need is audio input and output! |
Beta Was this translation helpful? Give feedback.
-
Hello there, I thought I'd share my tool kabelsalat (think cable salad), which is very much based on the noisecraft audio engine. Instead of a patching UI, it uses code as input, here's a simple example:
That code will generate these nodes:
listen to it here or, for a more involved example check out the acid machine example with drums
here's an overview of what I've used and adapted:
My goal with this is to implement a new audio engine for my other project strudel, which currently uses regular web audio nodes, which is kind of limiting and also less performant.
I hope it is ok that I took a lot from this project and repurposed it, but I think this is what free software is about?
Thank you so much @maximecb for creating noisecraft and also making sure the codebase is so elegant and non-bloated!
The mechanism of transforming a graph data structure into a super efficient piece of jit optimizable code blows my mind.
Have a nice day,
Felix
Beta Was this translation helpful? Give feedback.
All reactions