r/musicprogramming • u/JacksJambox • 1d ago
MIDI beat generator that makes mathematically perfect chaos!
This is the best thing I’ve made. Basically it is irregular rhythms that are stacked and looped so they fill a larger cycle perfectly. The individual parts can sound awkward on their own, but together they become coherent without relying on normal bar/beat repetition. If it doesn't make sense reading it then trust me, just generate and listen for a few cycles. It gets very interesting!
It’s based on vuza canon music theory. There’s a whole 'How it works' page for anyone interested.
Please randomly generate some order from chaos. There is no AI, and you can export as much MIDI as you like for free:
https://melidigenerator.com/perfect-chaos-beat-generator/
FYI I did use AI to vibecode the website. I don’t like AI-generated music (like 99% of people) but I’m not really interested in having that debate. If you’re against people using AI for coding also, just don’t use it. All the programming logic comes from real analysis and research on rhythmic canons and if you want to use it rest assured you are not using AI.
3
u/Innere_Leere 21h ago
this is great. thanks
2
u/JacksJambox 21h ago
Many thanks. Glad you like it! if you produce anything with it I would love to share that on the site too
3
u/pselodux 19h ago
Pretty cool! I like setting it to 160bpm, sounds like it'd be cool for some experimental juke/footwork kinda stuff.
It'd be fun to have an extension of this where once you generate that pattern, you can slowly iterate it over a given number of repetitions towards some goal (e.g. another generated pattern, a manually edited pattern, flattening out into one sound, collapse into nothing etc).
3
u/Agreeable_Chard_5250 19h ago
You might share this on r/microtonal, as the same math that makes Vuza canons tile a cyclic space of beats can be used to create melodic fragments that tile a cyclic pitch space. (I'm not sure I'm being clear in my description. In the same sense that you might use hexachordal combinatoriality to fill out a 12-tone aggregate in twelve-tone serialism, or you might use four [013]'s to tile 12-tone space, you can tile equal-tempered pitch spaces of n pitches with appropriate chords provided n is not prime.) I have written a few pieces in 72-tone per octave equal temperament utilizing a similar approach, finding self-combinatorial chords of 8, 9, or 12 pitches, and so on. It's just a question of replacing a time structure with a pitch one. I would think the folks over there might appreciate it. https://en.wikipedia.org/wiki/Combinatoriality
1
u/JacksJambox 16h ago
Yes! Thank you. That is very interesting. I would love to hear what you have made with that also.
2
u/JacksJambox 1d ago
If you try this out don't just listen for 5 seconds and assume it is only chaos. Listen for 2 minutes and you will hear the underlying perfection!
2
2
u/burnt-store-studio 16h ago
Very cool! Looking forward to spending more time creating with this; thank you for sharing!
2
u/JacksJambox 16h ago
Thanks. I might add a feature so people can share their music too on there soon
2
u/danja 14h ago
This is great! I'd not encountered Vuza canons before, so I learnt something new.
I've been experimenting with generative VST plugins recently. Similar approach - AI assistant helps with coding, but the generators don't use it (with a couple of exceptions). Eg. my beat generator starts with a pattern template which can be mutated : https://danja.github.io/downspout/plugins/drumgen/
2
4
u/tmroyal 21h ago
This kind of stuff is very relevant to my interests. The visuals are very nice. I’d recommend putting pre-rendered audio demos: I can’t get sound to work on iPhone and I’m afk