definition.txt for drum and synth
Started by Erich




3 posts in this topic
Erich

7 posts 4 threads Joined: Mar 2021
12-03-21, 21:57 -
#1
Hi all,
I have some problems with the definitionfile.
I am using the Ssamplerbox-Image from 2020 and an older Novation Launchkey Mini MK2.
The keys are sending on MIDI Channel 1 and the Pads at Channel 10.

I would like to add only one sample for the keys.
But different samples for the Drumpads.

How could this look alike?

// Drumpad1
809kick.wav, %midinote=DP01, %voice=2, %fillnote=N
// or ??
809kick.wav, %midinote=1, %voice=2, %fillnote=N
// chromatic Sound:
stringpad_%notename.wav, %voice=1


How does the samplerbox know that the sample "stringpad_C3.wav" has to be stretched accross the keys and the 809kick.wav is only responding for Drumpad DP01 or the mapped midinote 1??

I had tested it with the Version from 2019 and had no success.
Is %voice and %fillnote implemented in Samplerbox from 2020?

Is it possible to trigger a sample via a GPIO-Pin by only changing the configuration-files?

Best Regards
Erich

Best regards
Erich
noek

37 posts 0 threads Joined: Jan 2021
13-03-21, 00:38 -
#2
Hi Erich,
This depends on how you map the drumpad.
If you remap the kick to note=1 (you don't have to remap if the the drumpad sends note=1), it's in fact quite easy:
Filling notes ("stretching") is restricted to the keyboard area, default being 88-keyboard = midi 21-108).
When not using voices, everything defaults to voice=1.
If you want to use the drumpad sounds on all voices you want switch to (which I do), you can use voice=0 (the FX-track) for these notes.
When you do that, drumpad will become an effect meaning it overrides the notes in your selected voice for that note=pad only, the FX track never fills notes but can override particular notes/keys in voices.
I'm pretty sure it worked that way even before 2019, anyway the FX channel (voice=0) was working already like this when the drumpad option was introduced - I used to reprogram my drumpad to channel=1.
The way you define it makes you have to switch voices to hear sounds either from pads or keys, which I don't think is your intention :-)
..and yes, I got this working from digging the docs but it's complicated because of the many options / variations ..
Hope this helps you going..., Noek.
hansehv

168 posts 17 threads Joined: Dec 2020
13-03-21, 01:09 -
#3
Thanks Noek, you save me typing  Big Grin
For the GPIO question:
In my expercience, direct GPIO communication causes undesired artifacts in the sound generation.
In plain English: using a GPIO button results in distortion.
To be complete: using a webgui trigger can also cause distortion (be it less than the GPIO) and will also cause delays because of the "web"protocol).
I will not implement any of these two without a remediation for mentioned side effects. As there are several other ways to trigger notes, these ways are at the bottom my wishlist. I do however always welcome suggestions.
In layman's  terms: samplerbox is designed for note triggering via MIDI input. Triggering via other input has go in parallel which makes it's not synced. Being in sync is a musical prereq.
Erich

7 posts 4 threads Joined: Mar 2021
13-03-21, 22:08 -
#4
Hi Noek,
I added this to the keynotes.csv which was part of the samplerbox-distribution and was stored as keynotes.csv.
And now it works fine:

THX!!


#------------------------------------,,
# Remapped drumpads,,Drumpadchannel notes are mapped to active channel
#------------------------------------,,
DP01,1,36
DP02,2,37
DP03,3,38
DP04,4,39
DP05,5,40
DP06,6,41
DP07,7,42
DP08,8,43
...
DP16,51



Then the definition.txt: ( the loops are not loops, they are long oneshots which cover 4 or 8 beats. )

%%gain=0.7
%%velmode=accurate
* %notename.wav, %voice=1,%mode=keyb


Kick.wav, %midinote=7, %voice=1, %mode=once
Snare.wav, %midinote=8, %voice=1, %mode=once

loop_01, %voice=1, %mode=once, %mutegroup=1
loop_02, %voice=1, %mode=once, %mutegroup=1
loop_03, %voice=1, %mode=once, %mutegroup=1
loop_04, %voice=1, %mode=once, %mutegroup=1
loop_05, %voice=1, %mode=once, %mutegroup=1
loop_07, %voice=1, %mode=once, %mutegroup=2
loop_08, %voice=1, %mode=once, %mutegroup=2
efx_%midinote.wav, %voice=1, %mode=once


THX!! and best  regards
Erich