Open cybpun opened 5 years ago
this would be lovely to have for sure. a+ stuff
baconpaul [3:50 PM] Thinking about a patch randomizer some. That’s a tricky feature with surge I think. Not impossible but subtle. There’s an old ticket from feb with someone suggesting it.
Like: Do we randomize routings? Do we randomize both scenes? I think you want some settings, not just a “mash stuff” button
kzantow [3:51 PM] the tricks are a) dependent values & ranges b) modulations in order to get somethin useful
baconpaul [3:52 PM] Ranges are pretty easy since parameters know their range
kzantow [3:52 PM] i would not randomize routings all in all, maybe 1 or 2
baconpaul [3:52 PM] Dependent values are one of the things I’m thinking of yeah. Like “if I tweak osc3 and it isn’t on does anyone care” You sort of want like levels. Like “Randomize OSCs; Randomize Mixing; Randomize Filters; Randomize Effects” And “Add Random Modulations” And then “All the Hippos Go Beserk” Which is of course what I would call the “go crazy” randomizer
kzantow [3:53 PM] i mean... ranges -- in some cases may only make sense between smaller ranges i guess all really just the dependencies
baconpaul [3:54 PM] Right The user has some discretion also. Imagine a menu like “Randomize > A little > OSC|Mix|Filter|FX|Modulation|Everything” And “Randomize > A Lot > OSC|MIX|Filter|Mod|Everything” And “Randomize > All the Hippos Go Beserk” The we just use some good taste for what “a little” or “a lot” is
kzantow [3:56 PM] seems like a rational approach i'd think 'a little' might us the current values as starting points
baconpaul [3:57 PM] Oh yeah totally. “A little” means “tweak +/- 10%” and “a lot” means “set to whatever I want” Or in modulation “a little” means “modulate something unmodulated a bit” or some such Interesting problem
kzantow [3:57 PM] patch morph might be another nice thing. alchemy got a lot of mileage out of that
baconpaul [3:58 PM] I’ve played with alchemy quite a lot but haven’t used patch morph. How’s it work? I mostly just set to init and patch with alchemy
kzantow [3:58 PM] mod/routings and such are a bit of an issue tho oh, i dunno about current alchemy, but 5 years ago when it was camel audio
baconpaul [3:58 PM] Oh gotcha
kzantow [3:58 PM] you basically had 8 different patches all similar, and then a way to interpolate between all 8
baconpaul [3:59 PM] Is it basically “make this patch 0.7 my patch + 0.3 that patch over there” type thing?
kzantow [3:59 PM] yeah
baconpaul [3:59 PM] Oh right. They still have that And you can use continuous controls to move between the different states
kzantow [3:59 PM] right, exactly
baconpaul [3:59 PM] So in surge we could pretty easily add “randomly apply features from > (patch list)” And then grab that patch and you know. Randomly apply features from it. As another form of randomizer
kzantow [4:00 PM] right
baconpaul [4:00 PM] That could give some crazy results too
kzantow [4:00 PM] might almost be the most fun like have a pad, apply some bass features who knows what odd things would result
baconpaul [4:00 PM] Yeah but if the pad is poly and the bass is mono you end up having one or the other Or if one uses FM routing and the other doesn’t, the randomizer picks. And who knows what happens. That’s a good idea
wow, troubled story had this one so far… :( please guys make it happen… it'd be huge!
I'd still +1 this, if it were to start happening. @baconpaul is this something that could happen at some point in time? Can we make some sense of the longer chat conversation in the comments?
mutation button with % mutation that could be automated would be aaawwweesssoommee, endless 'real' variation
I wouldn’t say it’s “troubled” as much as “no one has done it” 😀
the old chat with kzantow was just copied here to be replaced by a proper design when someone does!
the thing that’s hard is a randomizer is Easy, a useful randomizer is hard. So lots of choices and design to be done
also definitely not in the next release - already too much queued up for that - unless we get a volunteer with both design and dev skills joining in
@baconpaul I understand your points and I fully agree but I think that as we wait for a decent implementation it would be great to just have a simple dumb randomizer thing that we could play with... It would be so much better than nothing!
I understand that something like that could produce a useful sound only once out of 100 runs, but that's part of the fun ;)
I'm using a lot of randomization functions, then I tweak. Would be very nice to have this function on Surge. Just to continue the message of @kzantow, here are two ideas of powerful randomization from Korg (modwave and opsix, in this order):
EDIT: I would be happy to help.
If you are happy to sling some code, I have a pretty good idea how I would implement a basics randomizer in xt and would be happy to write up some more detailed notes as a gist. Most of it is some juce ui interactions which trigger scoped model updates and a generic-ish way to express constraints on randomization - but also a way to localize it to params so we can use it for rack also.
I’m on vaca for a few days but if that’s interesting let me know and I’ll spend an hour and write some notes. We welcome devs and most of the big 1.3 features were new devs who offered to help :)
from discord user jamescorley
On the topic of randomisation, anyone ever used the randomiser in the Nord G2 modular? this might be interesting to note: "The G2 Patch Mutator is based on the work of Palle Dahlstedt, Swedish composer and researcher. His research interest has primarily been in the application of evolutionary algorithms as creative tools, aiding the search of novel musical expressions. This has resulted in a series of tools for evolving electronic sounds and musical scores, and also in programs that compose music by themselves using evolutionary techniques." If anyones looking into implementing a randomisation feature into Surge, Dahlstadt's work and the Nord G2 are probably the best places to look 🙂
preset randomizer with mutation like Oatmeal VSTi or Tobybear MiniHost