Here we have a run-of-the-mill [line~] based sampler;
Pretty basic. One "limitation" about this design, however, is that whenever you hit the play button, the current sound stops and [tabread4~] jumps back to the beginning and begins playing again. Of course, this is expected and is what we want most of the time.
But what would I need to do if, when I hit the play button, I didn't want the sound to cut-off and start over, but continue? In other words, if you depress the sustain pedal on a piano and play multiple notes, you hear each note play out its full length, but you also hear all other notes enter as well.
I envision I would need a bunch of **[tabread4]**s to accomplish this. Would they all be able to read from the same buffer? Or would I have to copy the sample into multiple arrays?
How would I handle the triggering mechanism for this? I want this to sound like a piano in my example above. Each note is triggered individually, but the onset of each note doesn't affect any others.
Let me know if I am not explaining this well.