I have directories full of samples arranged like this:
Code: Select all
alpha/
0.wav 1.wav 2.wav 3.wav 4.wav 5.wav 6.wav 7.wav 8.wav 9.wav 10.wav 11.wav 12.wav 13.wav 14.wav 15.wav
beta/
0.wav 1.wav 2.wav 3.wav 4.wav 5.wav 6.wav 7.wav 8.wav 9.wav 10.wav 11.wav 12.wav 13.wav 14.wav 15.wav
delta/
0.wav 1.wav 2.wav 3.wav 4.wav 5.wav 6.wav 7.wav 8.wav 9.wav 10.wav 11.wav 12.wav 13.wav 14.wav 15.wav
...
...
zeta/
0.wav 1.wav 2.wav 3.wav 4.wav 5.wav 6.wav 7.wav 8.wav 9.wav 10.wav 11.wav 12.wav 13.wav 14.wav 15.wav
1. Open gigedit.
2. Create a new group for alpha.
3. Load the samples into alpha.
4. Select key C3.
5. Create a new dimension dividing C3 into 16 regions based on velocity.
6. For each sample n in alpha:
---1. Select region n.
---2. Drag sample n into the region.
---3. Set the unity note to C3.
7. Set the ADSR envelope "release" value to 0 (so that notes cut off immediately when a key is released).
I then have to repeat steps 4..7 for each group (beta, delta, etc), incrementing the key each time (C#3, D3, D#3, etc).
This is an enormous amount of manual labour given that all I'm doing is dumping each group of samples onto their own key, organized by velocity.
Is there some way I can automate the creation of patches like this? I'd really prefer to avoid having to drop down to libgig to write a program to do this. I don't care if I use the Gigasampler format or not; I'm happy to use any format supported by Linuxsampler. Computers are good at repetition, but there doesn't appear to be a higher level tool than the raw C++ interfaces to automate this stuff. I'd happily write a script to do this, but I'd be less happy to have to write what would amount to a rather large amount of C++.