What's new

The EXS Dynamic X-Fade thread...

Thank you for the extensive answer Charlie!

EXS is since this thread has come into being now much more on my screen as a potential program.
I have been fairly ignorant to this piece of software as I deemed it , dare I say it, limited.
Untill now that has changed, and I sm going to experiment with a few libs that are in kontakt and have a fairly small footprint, but seem to spike up cpu a lot.
F.e. Jasper's fluid shorts, I will try and see what it will be like in EXS.

Thanks again for your elaborate answer!

You're welcome. For many sounds, the additional features of Kontakt are just not needed. Simple sustained or staccato strings, brass, etc. with a single mic position do just fine in EXS, and in many cases the additional control and convenience of the EXS front panel make it actually a better choice than Kontakt. But, with any instrument that has elaborate scripting like a true-legato patch it is impossible to accurately convert it to EXS, and for even simple instruments that have multiple mic positions routed to separate outputs it's just not worth the hassle to convert. I still never use multiple outputs on EXS as it's just too fiddly with Logic creating extra Aux objects, etc. But for simple, single-output stereo patches EXS is my jam!
 
Great thread.

Never looked into using EXS to be honest however, with the great information in this thread and @christianhenson 's recent felt piano freebie (thanks!) I think now might be the time. I work off a 2014 MacBook Pro fairly often, so if EXS is a bit less of a resource hog, then it may prove useful!
 
(I copied and edited this post from where it was buried in another thread)

The great thing about this is that you can set up all your EXS Instrument sample mapping (inside the Editor) as though you were only going to use Note Velocity to select dynamic layers, and then decide on a per-use basis to substitute Ctrl #1 (or whatever) for Velocity in the mod matrix, and fine-tune the Xfade amount and curve type to suit the situation as you go. If you reduce the amount of that slider in mod matrix slot #1 to less than maximum, you'll never hear the loudest layers (whether you're using Velocity or Mod Wheel), so this is a great way to force EXS to "never get to" the loudest dynamic layers.

exs-crossfade-png.9115


Brilliant THANK YOU
 
This was VERY helpful, just build my first proper sample library of scary viola sounds. @charlieclouser quick question: If I have a bunch of dynamic layers that I want to fade in one by one, but maintain full volume in all layers after fade in, so by the end I have all layers playing at once at full tilt - all I have to do is set the upper velocity range value to 127 for all, and the lower value according to where I want the layer to start fading in, correct?
 
Last edited:
This was VERY helpful, just build my first proper sample library of scary viola sounds. @charlieclouser quick question: If I have a bunch of dynamic layers that I want to fade in one by one, but maintain full volume in all layers after fade in, so by the end I have all layers playing at once at full tilt - all I have to do is set the upper velocity range value to 127 for all, and the lower value according to where I want the layer to start fading in, correct?

That would appear to be correct, although I've never tried actually doing that. But logically (heh) this should be the case.

Actually I have sort of done this, like when a multi-velocity drum sample set has a FFF layer that has too much crack and not enough tone, I'll have the next lowest layer go all the way to 127 instead of stopping at 119 so that at max velocity you hear both samples layered instead of switching to just the FFF one.

But I never tried it with smooth crossfades of floaty sounds. Should work that way though.
 
That would appear to be correct, although I've never tried actually doing that. But logically (heh) this should be the case.

Actually I have sort of done this, like when a multi-velocity drum sample set has a FFF layer that has too much crack and not enough tone, I'll have the next lowest layer go all the way to 127 instead of stopping at 119 so that at max velocity you hear both samples layered instead of switching to just the FFF one.

But I never tried it with smooth crossfades of floaty sounds. Should work that way though.

It worked! Still some things to tweak, but I have proof of concept at least. Thanks Charlie, this thread was vital in taking my EXS virginity. Wait, that sounded wrong...

 
(I copied and edited this post from where it was buried in another thread)

So, we all love how many Kontakt orchestral libraries use the mod wheel to smoothly crossfade through the various dynamic layers of samples, instead of using note velocity to do this. Although it's not immediately obvious, it's very easy to do this in EXS-24.

The key is in the easily-overlooked "Xfade" parameter box in the upper left of the EXS front panel, and the first (left-most) mod routing in the matrix just below.

The Xfade parameters controls how the transitions from one velocity zone to another are handled. Even if you program all of your velocity ranges to NOT overlap (which is what I do), entering any value above zero for Xfade Amount will create overlaps. The numbers in this field correspond to the range of 0-127 of note velocities, or MIDI CC that can be substituted via the mod matrix. Here's how they work:

Let's say you have a very simple sample map - just one soft sample (assigned to Vel Range 0-63) and one loud sample (assigned to Vel Range 64-127). If you enter a value of +/- 64 for Xfade Amount, then the overlap range will be +32 and -32, centered around the split point you set up in the Editor - meaning that for velocities between 0-32, only the soft sample will sound. Starting at velocity 33, the loud sample will start to fade in, until at velocity 64 both the soft and loud samples are played at equal volumes. From velocity 65 through 96, the soft sample will fade out, and from 97 through 127 only the loud sample will play. So the Xfade Amount value determines the width of the velocity range over which the overlap / crossfade will occur. The Type parameter just controls the shape of the crossfade - db Linear, Linear, or Equal Power. Your ears will tell you which to use.

So, that's part A of the equation - creating velocity crossfades. Part B of the equation is performing this crossfade from an incoming MIDI CC instead of note velocity. This part is super-simple, but not immediately obvious. Basically, that left-most (first) slot in the mod matrix usually defaults to Src (Source) = Velocity, Via = n/a, Dest (Destination) = S. Select - indicating that incoming note velocity will "select" the sample. If you change the Src from Velocity to Ctrl #1 - boom. Instead of changing between Velocity Ranges of samples that you've set up inside the EXS Editor, now Ctrl #1 (mod wheel) will perform that function. Of course, any of the choices in the pop-up menu under Src can be used - any MIDI CC#, LFOs, etc.

Note that note velocity may still be affecting the Amp Volume (via the split Level slider in the upper right of the front panel), both ADSR Attack times (via their split sliders), as well as other parameters via the mod matrix.

The great thing about this is that you can set up all your EXS Instrument sample mapping (inside the Editor) as though you were only going to use Note Velocity to select dynamic layers, and then decide on a per-use basis to substitute Ctrl #1 (or whatever) for Velocity in the mod matrix, and fine-tune the Xfade amount and curve type to suit the situation as you go. If you reduce the amount of that slider in mod matrix slot #1 to less than maximum, you'll never hear the loudest layers (whether you're using Velocity or Mod Wheel), so this is a great way to force EXS to "never get to" the loudest dynamic layers.

exs-crossfade-png.9115

Hi there Sir,
I just been learn about Logic Pro X EXS24
And Yiu seem to know a lot about it
May I ask for question if You do not mind
 
The Xfade parameters controls how the transitions from one velocity zone to another are handled. Even if you program all of your velocity ranges to NOT overlap snaptube https://wordtopdf.ltd/ (<span style="color: #D8D8D8">word to pdf</span>) vidmate (which is what I do), entering any value above zero for Xfade Amount will create overlaps. The numbers in this field correspond to the range of 0-127 of note velocities, or MIDI CC that can be substituted via the mod matrix. Here's how they work:
 
Last edited:
Hey guys, I’m having a panic attack as I am just now checking out the new “Sampler” replacement for EXS24, and quickly noticing that the “Xfade” parameter seems to be gone - and worse, many of my custom EXS instruments seem to have flipped that parameter value to something other than zero under the hood, which sounds awful on certain types of content - phase issues, etc.

@charlieclouser or anyone else - please tell me I’m not mistaken and that the Xfade parameter is still under the hood somewhere? I looked for quite a while yesterday and couldn’t find it anywhere!
 
Last edited:
Whew - I think I found it. In the Groups pane of the Sampler, the Xfade parameter defaults (in some cases) to a number other than zero. This seems to be the old EXS24 “Xfade” parameter...
A300CC9F-BA1C-4112-AF41-DD6C40DEA73F.jpeg
 
@whinecellar - The Xfade is still there, but it's no longer a global, front-panel control. A lot has changed with Sampler:

1 - Xfade is still there, but it's now a per-Group parameter. This allows more flexibility, but might take a moment to wrap your brain around.

2 - Zones within a single Group can no longer be assigned to overlapping velocity ranges (!!!). This is kind of shocking, and means that you often will wind up using more Groups to do what you need, but provides a less confusing UI for newbies, and should not reduce the capabilities in the long run.

3 - If an EXS Instrument that has Zones within a single Group assigned to overlapping velocity ranges, they will be "unwound" upon import. The new Sampler Instrument will have new Groups automatically added to hold the Zones that formerly overlapped.

4 - If an EXS Instrument has Settings stored to it (front-panel parameters embedded within the Instrument file, as is usually the case), and those Settings have Xfade values, those Xfade parameter values will automatically be copied to the corresponding per-Group parameters.

5 - If an EXS Instrument has a Mod Matrix assignment that changes the default "Velocity > Sample Select" routing to "Mod Wheel > Sample Select", that assignment will be copied to the new Mod Matrix.

So, to replicate the old behavior, you might have to do a little fix-up operation in the Groups view and the Mod Matrix.

I'm still finishing off a project in v10.4.8, but in my panicked but cursory testing of v10.5.0 I found that for the most part my EXS Mod Wheel Xfade Instruments DID import correctly and sound as intended. In fact, I didn't find any that were broken upon initial import. I was a little alarmed that my nice, tidy, minimal Groups lists were now "unwound" to accommodate overlapping Zone velocity ranges, but the sound did not change.

And I was quite surprised to find that both Instruments that were created from scratch in Sampler, and EXS Instruments that were imported into Sampler and then saved, would load in EXS in Logic v10.4.8. Apparently Sampler Instruments ARE backwards-compatible with EXS Instruments, at least at first glance. I don't know if I fully trust it yet, but I am optimistic.
 
Thanks @charlieclouser - always appreciate your super-informative posts. Yeah, I discovered this stuff too after giving up in frustration last night. I just hadn’t checked deep enough in the editor yet - I was looking higher up in the architecture and assumed that a global parameter like that would still be, um, global.

Man, other than getting used to things moving around, I’m loving Sampler - the graphic looping editor alone is a huge boost!
 
@whinecellar

And I was quite surprised to find that both Instruments that were created from scratch in Sampler, and EXS Instruments that were imported into Sampler and then saved, would load in EXS in Logic v10.4.8. Apparently Sampler Instruments ARE backwards-compatible with EXS Instruments, at least at first glance. I don't know if I fully trust it yet, but I am optimistic.


TRULY XLNT
 
Top Bottom