@sean_ae Hey Sean, I was wondering.. did you ever try setting up your poly~ by loading them up with patches/voices beforehand and just muting/unmuting them as you switch? I've been testing two setups for the past days and I managed to get my stuff reasonably stable when loading patches, but I still notice that when using the setup that has patches preloaded as voices works way faster and allows me to switch a ton of patches without any lag. Likely a skill issue on my end tho

@Kama11 well no, but mainly cos i have tons of them, huge folders now

(it's just an a/b switcher thing, but i think we talked about that)

@sean_ae But to follow up, it was prob dumb of me to assume you didn't try this method and a million others before arriving at this setup haha
But was genuinly curious :D

@Kama11 well good luck

i found that some loadbanged operations (eg a really bad one is populating a umenu with too many entries) should always be deferred, even when you assume it's low priority already

i don't usually get much lag when actually switching though, it's mostly at loading stage

there's often not a whole lot of rhyme or reason to what will cause a lag so i just have to keep testing diff scenarios

but in general finding bottlenecks and deferring them can help, sometimes a lot

@sean_ae @Kama11 so if you’ve got a patch with some autopopulated umenu’s, you wanna avoid letting the umenu populate itself via its attributes and instead just populate manually on load via messages and loadbangs etc? so as to be able to get a defer/deferlow in there
@bobbyrethwish @Kama11 yeah i'm mainly using prefix for that so i'm deferring the prefix messages
@sean_ae @Kama11 OH also, kinda related- I’ve been curious if you have changemode enabled on your global pattrstorage. the way I have mine set up now, all the patchers need to get reloaded in the next branch even when the patches don’t change, which feels pretty unnecessary. seems like for changemode 1 to be possible, each A/B slot pair needs to work independently rather than a strict A branch / B branch kinda thing. seems like a PITA though so was curious if you’ve explored this!

@bobbyrethwish @Kama11 short answer no

long answer: there is a [zl change] in every slot checking whether the module name changed and a [change] for each module's preset number (which is available at slot level), and then the pattrstorages in the modules sometimes have changemode enabled, depending on what works

basically some stuff needs to always go through - eg stuff that sets a module's params from global level which are not stored in its own pattrstorage (for reasons)

(there are prob a lot of different ways of arranging all of that as well so don't take this as advice)

@sean_ae @bobbyrethwish @Kama11

what r u populating menus with? sample library etc? i just use native finder stuff and then a textedit connected to the pattr system....

@trainvids @bobbyrethwish @Kama11 when u say native finder stuff do you mean dialogs?

@sean_ae @bobbyrethwish @Kama11

yeah correct. was just chatting with bobby about this.

@trainvids @bobbyrethwish @Kama11 right i see yeah so pattrstorage is just storing textedit contents

makes previewing a bit slow though right?

i did that stuff long ago - and back then whenever i used dialogs things would be hanging, but i should prob try again, maybe it improved

cheers for that, nice and simple

@sean_ae @bobbyrethwish @Kama11

u mean previewing a sample or something? i just use finder for that too, just spacebar in the finder dialog window. so obvs not gonna go through the patch / mix busses etc. but for some reason this has never bothered me lol

@trainvids @bobbyrethwish @Kama11 it would bother me :D

but yeah

it might be a bit tricky to switch to doing that here cos i have a whole buffer management thing going on as well, but i'll look at it for sure cos i like the lack of umenus and it would make it a bit easier to use subfolders

@sean_ae @bobbyrethwish @Kama11

yeah right on - funny, i had never even considered that, i just hear a sound out of processing context and go "wonder what does" and then load it. would be slick AF to get this method to play through the processing. let us know if u come up with a solution... i can't think of one off top of head bc you're going through finder's core audio setting not whatever max is doing....

@trainvids @sean_ae @bobbyrethwish @Kama11 I’ve had some luck building browsers with [chooser]. It has preview kind of already built in. It’s just a play button that dumps the path out a separate output but still.

@chrisorstedt @trainvids @bobbyrethwish @Kama11 oh wow you can do filtering with that thing

that's so cool, never realised, nice one

@sean_ae @chrisorstedt @bobbyrethwish @Kama11

yeah this looks cool, didn't know about this object, thanks christopher!

@sean_ae @chrisorstedt @bobbyrethwish @Kama11

yeah this actually is sick, might work way more for my brain. one chooser with folders, one that spills out with the contents, scroll up and down with arrows, save into pattr via textedit...

would be a cool way to select patchers in a dynamic loading situation too. probably not enough room in your current main UI, sean, but for a setup with less channels / different layout, would be slick...

@trainvids @chrisorstedt @bobbyrethwish @Kama11 it's not bad - i would def miss just knowing where things are cos i'm way better spatially than remembering strings - and idk if the filtering can be *not* case sensitive cos that was messing me up as well

but i could prob use it in some situs

the size isn't a problem, just shove it in a window and open with a bang - it would prob be on top of what i have anyway

def seemed ideal for you though looking at it, i reckon rob would like it too

@sean_ae @chrisorstedt @bobbyrethwish @Kama11

yeah i know what you mean about the spatialization. will just need to use it in context and see which gels more.

@sean_ae @trainvids @bobbyrethwish @Kama11 Yeah I just encapsulate it and have it as a popup. I have some [live.arrows] and regexp in there so I can navigate it like finder but with integrated playback.