Recently I’ve been doing some custom units with my ER-301 and different real instrument samples to create some kind of a “Kontakt Library” for the ER-301. My goal was to create a polyphonic instrument (at least 4 notes) with 2 different layers per note, to allow the sound of each note triggered to continue without stopping. That gave me a total of 8 samples that could be playing at the same time. Let’s say that you play a 4 note piano chord and immediately a second 4 note chord … The notes will ring without stopping. If you play a third chord it will make the samples from the first one stope, but as I’m not going to play the too fast I have enough time for the first chord to “die” by itself.
That was easy to do with the ER-301 and the Joe’s Bespoke units, but the problem I’m facing is that the samples I’m loading into the buffer are so heavy (in stereo, one single file of 88 piano notes with sustain and 24bit/48 kHz reach a total of 389 megs) so I can only load 1 single layer. On the other hand, the CPU load is bellow the 60%, so I have room for other tools, like feedback looper or whatever. The problem is the RAM memory. Of course I could use mono files instead of stereo files, but I would like to have them in stereo as to have the highest possible quality.
Probably following this “DAW less” way of thinking has lead me to a nonsense point, were I need to think if it’s reasonable to trigger library sounds from the ER-301 instead of using a computer for this. I have a Deeper A-192-2 to control a Volca FM synth externaly, but it only gives me 2 notes with CV 2 MIDI control over GATE, CV, VEL, and CC. So here comes my questions:
1- Thinking about the possible or not future updates, is the RAM memory of the ER-301 upgradable? Let’s say, to reach 2 or 3 Gigs?
2- If using the computer for this is the best option, do you know any module with up to 4 notes CV 2 MIDI converter? There are a lot of MIDI 2 CV modules (I own the POLYEND) but not so many with CV 2 MIDI. With just 3 CV’s per note will be great.
3- If not available … let’s say that I buy a second A-192-2 module … Will a Midisport 2x2 unit combine the 2 separate signals or channels from each module into one single USB cable into the computer, and trigger the notes inside the computer?
All this thing started after buying a Teletype, which has give me the ability to create scenes to generate aleatoric and random music. I’ve done similar things in MAX, but this time I would like to control everything from my modular instead of from my computer.
Have you thought about creating loop points within much shorter versions of the samples and setting the loop on gate high parameter? That could free up a ton of ram. You could still make it behave more like a non-sustaining sample by placing a VCA after the sample player, and controlling it with an AD envelope.
Just a thought. That was a pretty common technique on vintage keyboard synths with far less memory (both RAM and ROM) than the 301. Might be worth some experimenting?
I don’t have any direct experience with it but Captain MIDI in the Hemispheres Suite for Ornament and Crime looks like it supports 4 note CV->MIDI.
Yes, I’ve think about the loop option for “sustained” type of sounds (flutes, oboes, … etc) but for the piano I would like to have a single long note for each one. I will try to find a solution whether within the ER-301 or with the laptop involved.
I’ll have a look at the O&C device …
By the way … One strange thing I’ve found is that after exporting different sample files from the DAW with the same duration but with different combinations of rates and bits (48000 - 24 bit vs 48000 - 16 bit) in the computer I can see different file sizes (293,8 Mb vs 195,8 Mb), but when loaded in the sample pool of the ER301 both takes the same memory (374 MB) … How can that be possible? Sample conversion to 24 bit? Bug?
Another option: you could model the way a modern sampling workstation manages extremely large sample libraries. Direct streaming from disk.
The Card Player unit does this. It doesn’t support slices so you would have to have your 12TET samples evenly spaced, and build a control structure to modulate position with an incoming V/Oct, as well as have a VCA to stop the sound when it’s supposed to end.
I have never tried this but in my mind it could work. You asked for ideas, so just throwing a couple at you.
Great idea Joe!! That could work with longer files (more than 500MB) with less polyphony … The problem here is only one voice with a a Card Reader unit, including a bump scanner, counter, ADSR’s and VCA’s goes to 13% of CPU. If I try to use a double 4 voice polyphony, the total is going to be over 80%, I guess …
But for longer note files, let’s say 36 notes of 1 minute length per note of, for example, strings or orchestral sounds I think that’s the way to go!!
Anyway I will try to find an alternate solution for the CV 2 MIDI conversion …
Not sure exactly what you’re going for, or dynamic it has to be. You could potentially mix layers 1 & 2 down to a single buffer that contains the desired blend of both layers in each “slice” or segment.
More work on the front end, and less flexible to modify the blend, but potentially halves CPU utilization so you can increase poly.
Recently I’ve found something and I would like to share … I don’t know if anyone has tried this or has been explained before, but I’m pretty excited as for me it opens a HUGE possibilities with real instrument sounds.
Instead of using sample players to trigger different slices of samples, and then applying a counter and bump scanners to count which note is triggering to have, lets say, 4 notes sounding at the same time per voice, I thought of using a MANUAL GRAINS unit. If all the notes of, let’s say, a piano are recorded in a single file with constant distance between them, you only have to adjust the start position of each grain to match all the keys and octaves. Then you don’t have to worry about one note stop playing as the new one is triggered, as each grain is still playing so the tail of each sound is going to continue till it dies, depending on the “duration” parameter on the MANUAL GRAINS. The MANUAL GRAINS used to take a lot of CPU on my built units, but it depends of the triggering speed. As this is only going to receive a few triggers, the CPU is going to be drastically lowered and also the CPU load is not constant and depends on how many notes and the duration of each one (from my initial test, triggering 8 notes is giving me a 16% of CPU).
Oh wow! What a great idea - I like it very much - thank you for sharing
If I understand correctly then what you are saying is that even if it doesn’t track V/oct you could easily set up a ‘scale’ to bring everything into compliance on whatever sequencer you’re using, or even in the ER-301 itself.
I am impressed - going to have to try this one
By the way I did this earlier with @Joe and the 88 piano keys samples and ran into the same problem, we decided to simply limit the length of the sample, here’s the thread:
I might gave missed it, forgive me if I have, but do you know that the same sample can be used by multiple players so for example 8 note polyphony is not a problem? Using the granular sampler idea I bet you could push the polyphony even higher by combining the techniques.
Exactly! Right now I’m triggering from Teletype 12 seconds lenght piano sounds in stereo with polyphony of 8 notes with one Manual Grains for just 18% of CPU … Just loaded the full scale un one single WAV file, made some calculations to adjust the “start” gain of the MG and ready to go. And the cool things is that the 18% of CPU is only at max polyphony. If you don’t play any note It stays at 5% …
Thinking about this way of using the MG for sample playing, I would add to the wish list more options for each grain generated: ADSR, individual level … I see a huge potential …