We DO NOT offer end-user support for what's described here.
The forthcoming Unify Pro will include a full graphical user interface (GUI) for importing and mapping your own samples. What's described here is the complex, manual process we use now, in all its nasty glory.
If you want to try this, do so at your own risk!
Guru Sampler uses a VERY LIMITED variant of the "SFZ" format. In fact, it's better to say that Guru Sampler's format is “inspired by” the SFZ format, because our .sfz files aren't even recognized by standard SFZ players like Sforzando.
Each Guru Sampler .sfz file is a simple text file consisting of a sequence of Groups, each of which defines a region of the keyboard. Each Group contains a <group> header line, followed by one or more <region> lines, each of which maps one sample file to a specific velocity range within the key group.
Click on these links to download two SFZ examples:
In each case, the zip archive expands to a single SFZ file and a folder called samples containing WAV files.
The following describes the basic SFZ format recognized by Guru Sampler. Make sure to read the Changes in Unify v1.3.2 section below, for some useful variations.
Let's look at the first four lines of mda-ePiano.sfz:
<group> lokey=0 hikey=39 pitch_keycenter=36 <region> lovel = 0 hivel = 47 loop_mode=loop_sustain loop_start=4076 sample=samples/ePiano01.wav <region> lovel = 48 hivel = 79 loop_mode=loop_sustain loop_start=2868 sample=samples/ePiano02.wav <region> lovel = 80 hivel = 127 loop_mode=loop_sustain loop_start=11918 sample=samples/ePiano03.wav
The <group> line says we are mapping a group of samples to the MIDI note-number range 0 through 39 (inclusive), and that the pitch of each sample is that of MIDI note-number 36.
The three <region> lines define how three separate samples (ePiano01.wav, ePiano02.wav, ePiano03.wav) are assigned to three MIDI velocity-ranges.
Some things to note:
Each <group> line may contain the following tags (default values in parentheses):
Each <region> line may contain the following tags (default values in parentheses):
Note you do NOT have to put new sample-sets into Samples folders under Unify's Libraries folder. You can add a folder called Samples directly in the main PlugInGuru/Unify folder, (sibling to the Libraries folder) and create sub-folders in there, containing your SFZ files (more than one if you wish) To open them in Guru Sampler, choose “<Samples Folder>” in the leftmost menu, then the name of your sub-folder in the middle menu, and finally the name of the SFZ file you want in the rightmost menu.
When all you need to do is map one sample across the entire keyboard, the SFZ is much simpler, requiring only one
<group> line and one
<region> line. Here is PAD-Sonitarium E4.sfz in its entirety:
<group> lokey=0 hikey=127 pitch_keycenter=76 <region> end=1066811 loop_mode=loop_continuous loop_start=241735 loop_end=1066810 lovel=0 hivel=127 tune=0 sample=samples/PAD-Sonitarium E4.wav
<group> line has
lokey=0 hikey=127, meaning the entire MIDI key-number range. (You could actually omit these entries entirely, since these are the default values for
pitch_keycenter=76. This is the really important part, which indicates that the associated sample will sound at its natural pitch (not sped up or slowed down) at MIDI note number 76 (aka E4).
<region> line has
end=1066811indicating the sample-index of the last sample. (This could have been omitted, because the sample file is exactly 1,066,812 samples long, and
enddefaults to the index of the last sample.)
=loop_continuouscould actually be anything; all that matters is that the
loop_modepart is there.)
loop_enditems are the important part. They indicate the sample-indices of the first and last sample of the segment which loops indefinitely while a key is held down.
lovel=0 hivel=127indicates that this sample is played for the entire MIDI note-velocity range. These items could be omitted, as 0 and 127 are the defaults, but we include them here to indicate that you could also set e.g.
hivel=80to respond only to velocities 0–80.
tune=0means the pitch of this sample is not adjusted up or down. To tune the sample UP by 10 cents, for example, you would say
tune=-10. (Negative values push the pitch UP, positive values push it DOWN; don't ask why.)
sample=samples/PAD-Sonitarium E4.wavidentifies the sample file. It must always be the last item on the line.
In Unify v1.3.2, the SFZ format rules are relaxed slightly, allowing the option to omit
<group> lines entirely, and simply put all tags (
hikey, etc.) onto the
Furthermore, Guru Sampler is able to read loop endpoints encoded in WAV files (if present), as follows:
loop_end) are present in the SFZ file, these take precedence.
loop_starttags are not present in the SFZ file
trigger=attackare present in the SFZ file.
trigger=attack tag has no meaning for Guru Sampler, but is found in all the Zampler Bundle SFZs, so we have co-opted it to trigger Guru Sampler to read loop endpoints, which are present in nearly all of the Zampler WAVs.
It would be wonderful if you could get a program which would magically convert key-mapped sample sets for other samplers (like ESX24 or Kontakt) to the SFZ format used by Guru Sampler. Unfortunately, there is no such thing.
The best available option is Translator by Chicken Systems. The full version costs $149, but you're only interested in converting to SFZ, you can buy the “Special Edition” for $79. It can indeed convert almost any sampler format to what it calls “Cakewalk SFZ”, BUT
Translator is no magic bullet. It's an exceptionally quirky and confusing program. If you use it, steel yourself for frustration, confusion, and regret about how much you paid for it. Its user-interface is not at all intuitive, especially the “bulk conversion” features (which can easily leave you wondering why you suddenly have multiple copies of many large WAV files on your disk).
Seriously, unless you're a bit of a masochist, save yourself the money, time, and trouble, and just wait for Unify Pro. It will have all the easy, drag-and-drop, graphical-editing loveliness Unify users have asked for.
And remember what we said at the start: WE DO NOT PROVIDE SUPPORT FOR THESE PROCEDURES. You're on your own.