Decent Sampler is slightly more than just a sample player. There are hidden depths if you go looking, and regular readers will know that I love deep products! So here are some hints, tips and ideas for getting the most out of the Translation Tables!

### Translation Tables

Yes, I know, they aren't exactly going to be headline news, but there'a a lot that you can do with them.

#### The Power_Curve Spreadsheet

First off, I'm going to mention my newly updated spreadsheet (.xlsx and .ods versions are available) for creating exponential / power law curves instead of the default linear mapping that Decent Sampler uses:

The default settings are aimed at one of the first things that you will probably want to 'fix' with a translation table: the mapping between the control (slider, rotary...) and the values! At the low end, the control of cut-off frequency for the low-pass filter is a little bit abrupt - you can suddenly get loud sounds when you were not expecting them, especially when the Q control is set high. So the default curve takes about half of the travel of the control (slider, rotary) to get from 10 Hertz to 635 Hertz, which is a lot of low-end precision. The other half then goes from 635 Hz to 22kHz, which feels okay to my fingers.

The spreadsheet doesn't have any instructions, so here's a quick explanation of one way of working with it.

The Power_curve spreadsheet |

Start by setting the limits.

Set 'Top' to the highest value you want to control - for the low-pass filter this will be 22kHz, so put '22000' into the 'Top' box.

Then set 'Bottom' to the lowest value you want to control - for the low-pass filter this is 20Hz, so put '20' into the 'Bottom' box.

You now need to choose the 'Power/Base' setting - putting '1' into the 'Power/Base' box will give a straight line, which is the default in Decent Sampler. Putting higher values into the 'Power/Base' box will make the curve more and more 'boomerang shaped (the bend in the curve will get more and more extreme!). The default value of '5' may be too much for you - I actually think that '3' is a good starting point for you to find what suits your fingers and your UI (rotary and slider controls feel different with different 'Power/Base' settings...).

Note that a Power curve puts more detail at the lower end of the control's range, whilst a Log curve puts more detail at the higher end.

The extreme values of 'Power/Base'... |

Here are the limits to the curves: Power/Base set to 1 gives a straight line, whilst 25 gives a very abrupt corner! You can really see the piecewise linear approximations (straight lines) for the log curve.

Once you have a curve that seems right, just copy and paste the long string of numbers above the graph and paste it into the translation table definition:

#### Controlling Volume

Changing the 'feel' of rotary or slider controls isn't the only thing you can use Translation Tables for... Because you can put more than one <binding> element inside a <control> element, then you can make controls that do more than one thing at once!The 'Second Volume Curve' is a straight line, but think of it as a curve that is straight rather than curvy... and it looks just like the linear table shown above. You can specify a table like this with just two points: one at the beginning and one at the end. This 'curve' starts out at zero (silence) and goes up to 1 (full volume) as the input controller moves from 0 to 127 (on a MIDI Mod Wheel, but it could also be 1 for a rotary or slider control...or any other value you define in the table...).

**In the diagrams, I have shown a Mod Wheel as the controller, so the minimum and maximum values are 0 and 127, but in the text I have used 0 and 1 as the controller values, because this is a more generic example. **

The 'First Volume Curve' is another straight line, but going the opposite way. So the volume starts out at maximum and ends up at silence as the input controller moves from 0 to 1 (or 127, or...). So one volume does the opposite of the other. In Decent Sampler, this is just two <binding> elements inside a <control>:

In this example, the two 'TAG-VOLUME's will affect the volume of the '0' and the '1' tagged groups in the Decent Sampler XML file... But you could also use tags and AMP_VOLUME if you prefer:

The two important bits here are the two Translation Tables:

translationTable="0,1;0.5,0.5;1,0"

translationTable="0,0;0.5,0.5;1,1"

The top table starts at 1 and drops to 0, whilst the bottom table starts at 0 and rises to 1. The middle position is 0.5, and this is where things get a little bit tricky. As you move the input control, the 'volume' that you hear might not stay constant, and it might sound like it gets quieter, or louder, in the middle. It depends on how the volume is controlled (linear, logarithmic or other), and sometimes even the samples themselves - in the example I mentioned at the beginning, then the percussive sample is probably going to sound quieter than the sustained sample, and so even if the volume that you might see in a DAW or audio editor says that they have the same peak volume, when you mix between them it could sound strange. But this is why you have detailed control over the translation tables!

The general case is probably going to be that you will need two curves instead of straight lines, perhaps something like the ones shown above. The easiest way to do this is to use those straight line approximations again:

translationTable="0,1;0.5,0.66;1,0"

translationTable="0,0;0.5,0.66;1,1"

So now the half-way setting of the input is going to output 2/3rds of the percussive and the sustained samples, instead of half volume. As I said, the exact value will depend on the samples and your preferences - Virtual Instruments are very context-sensitive!

**The 'Arbitrary_curve' spreadsheet is another utility that helps to design volume curves...**

You may have realised that there's a potential problem with the mix control - it always makes a sound! What might be lots more useful (and interesting) would be a mix control that starts out at zero volume, then raises the volume of the sustained sample, and then mixes in the percussive sample whilst dropping the sustained sample, so half way would be a mix of the two sounds, and ending up with just the percussive sample at the end of the mix control's movement. This time, the curves are very different in the zero position (and I have deliberately renamed them to second and third):

At the zero position, the volume for both samples needs to be zero. As the input value rises, the sustained sample gets louder and louder, and at half way it is at full volume. Notice that the percussive (third volume curve) doesn't start until slightly later, so that there is a 'dead zone' around the half-way point where you hear just the sustained sample. From half way to just below the maximum input control position, the sustained sample fades out as the percussive sample fade up. There is another 'dead zone' at maximum input where just the percussive sample is heard.

And the curvy version is shown above - just more pairs of values in the translation table.

**(I leave it as an exercise to see if you can figure out a way to provide a fade between 1 and 3... It isn't pretty, but it is possible...)**### Further extensions

### The Arbitrary Curve spreadsheet

The 'Arbitrary_curve' spreadsheet... |

**1**

**0.96**

**0.84**

**0.6**

**0**

**0**

**0**

**0**

**0**

**0**

One of the three 'Arbitrary' tables... |

## Utilities

### The 'Power_curve' spreadsheet - download

### The 'Arbitrary_curve' spreadsheet - download

---

If you find my writing helpful, informative or entertaining, then please consider visiting this link:

## No comments:

## Post a Comment