Home | ER-101 | ER-102 | ER-301 | Wiki | Contact

Enable multi sample pool behaviour

Hi everyone

What I am trying to do is load multiple samples into the pool with the ‘enable multi’ function.

There are two things that have been stumping me.

Firstly this function doesn’t seem to work with samples from different folders.

Secondly I can’t seem to be able to change the order that they are loaded into the pool. (It always seems to be alphabetically)

An example of what I am trying to do is load different drum samples into a sample player from clean hits to more distorted then use the slice control to “add distortion”.

Am I completely missing something?, I’ve spent today having to edit file names in the order I want to use them which works but is a bit long-winded.

Thanks.

1 Like

Not at all. You have bumped into 2 limitations of the current implementation.

Thanks Brian,

I’ll carry on editing names then. Could these potentially be a feature request?

Certainly.

By the way have you tried saving a sample chain and then taking a look at the resulting file on your computer? It is very editable.

I mean in a text editor BTW.

I haven’t yet but will give it a go later.

My thinking behind asking this question is that I am trying to be less reliant on a computer lately and aside from little things like this the 301 has got me 95% there, amazing really.

1 Like

Does this mean that in a text editor you could just type in/replace the names of the samples that your sample chain is referencing put it back in the 301 and it would work?

That is correct. The file has the format of a Lua script but I think the formatting is likely to be obvious even to someone who knows nothing about Lua. Here is an example of a (multi) file that references 13 samples to define a sample chain with 13 slices:

-- Persistent Data
local shared = {

} -- shared
local obj1 = {
	[1] = "1:/samples/drums/Liquid Vinyl Drums/Percs/BlankPerc.wav";
	[2] = "1:/samples/drums/Liquid Vinyl Drums/Percs/BucketPerc.wav";
	[3] = "1:/samples/drums/Liquid Vinyl Drums/Percs/GeePerc.wav";
	[4] = "1:/samples/drums/Liquid Vinyl Drums/Percs/GreenPerc.wav";
	[5] = "1:/samples/drums/Liquid Vinyl Drums/Percs/GreenPerc2.wav";
	[6] = "1:/samples/drums/Liquid Vinyl Drums/Percs/GreenPerc3.wav";
	[7] = "1:/samples/drums/Liquid Vinyl Drums/Percs/GreenPerc4.wav";
	[8] = "1:/samples/drums/Liquid Vinyl Drums/Percs/Ilaperc.wav";
	[9] = "1:/samples/drums/Liquid Vinyl Drums/Percs/LipPerc.wav";
	[10] = "1:/samples/drums/Liquid Vinyl Drums/Percs/SteamrollerPerc.wav";
	[11] = "1:/samples/drums/Liquid Vinyl Drums/Percs/SweettoothPerc.wav";
	[12] = "1:/samples/drums/Liquid Vinyl Drums/Percs/Tom.wav";
	[13] = "1:/samples/drums/Liquid Vinyl Drums/Percs/ZodiacPerc.wav";
}
return obj1

1: refers to the front SD card because 0: refers to the rear SD card. You can add and delete entries as long as you also keep the indices updated.

To those curious, the ER-301 executes the script and expects to receive an array of paths to WAV files. Other than that requirement, the contents can be any valid Lua code.

4 Likes

Awesome! Thanks so much for the very informative and timely response to my question!
Much appreciated!

So we could, for example, write a script which returns a chain made of randomly selected WAVs? Oh man, that sounds fun! But when is the script evaluated? Just once upon each time loading the chain into a unit?

I have to clear up terminology so what I say next will make sense. Samples are not “loaded” into a unit. They are loaded (once) in to the Sample Pool and then assigned to units. This way multiple units that are using the same samples will share sample memory.

So back to your question: The script is only evaluated when loading the sample (chain) into the Sample Pool. If the sample (chain) is already loaded into the Sample Pool then the script will not be evaluated.

1 Like

I was about to start a new thread about this limitation and found this, so thanks all for using very searchable terms and @odevices for confirming the limitation and showing a workaround.

BTW, when is that text editor going to be added to the 301? Can’t wait to get me some emacs chords using the array of soft buttons available on the 301 :stuck_out_tongue:

This thread is about a year old and I was wondering if the latest fw still only allows Enable Multi to be limited to 1 folder or if there’s a work around?

1 Like

This is still the case. Would love to multi select samples across folders and in their selected order. I really enjoy using the single cycle unit for wavetable stuff and it makes it a bit harder to get the waves you want in the order you want them.

Alternatively it would be great to be able to do file system commands, like moving, copying, and pasting files and folders.

2 Likes

that request has already been raised with @odevices “elsewhere in this forum”.
i remember because i’d also find that enhancement to be great.
the multi feature is already quite a powerful tool. i use it all the time.
i couldn’t find that request in the feature request list in the wiki, maybe it’s implicit in some other requests?


this is a great request on its own right! (for various and obvious other reasons, too) would certainly help with the “enable multi” thingie. but having both on board would prevent us better from going back and forth to an alien computer. after all, computational self sufficiancy combined with its inputs for cv wonderland is one of the greatest features of the er301! (granted, it’s not giving back that much to cv world… which is also why so many people are phantasizing about an ER-XOX that would fill that void. or will it be even something different than “ER-”? maybe some kind of an “ICU-XOX”?)

1 Like