Apple EXS24 Format Information See Video

History
Emagic, now owned by Apple, makes Logic, a professional sequencer and audio recorder. It is very popular among professionals. Emagic decided to make a sampler that works in conjunction with Logic, and came up with the EXS24. It is a Logic-only plugin (although long ago there was a VST Windows version sold). The last Windows version of EXS was in Logic 6.1, which of course was the last Windows Logic verison. Nowadays, EXS is completely Apple, and Mac and Intel in nature.


In 2003, prior to the total-Mac switch and the Apple purchase, Emagic released EXS-24 Mark II, which contains a nice modulation matrix and more filter types, noteably a high-pass filter. This also included the previously released trigger functions in the groups, which enabled the Giga-ubiquitous key-switching ability. Plus it streamed samples from hard disk, now a standard feature on all samplers.

After the buyout, starting with Logic 6, Apple included EXS24 for free within Logic itself - no more paying for it seperately.

Each Logic version includes a very-slightly upgraded EXS24. No serious work has been done with it for a long time. Yet, because of it's good basic feature set and nice integration with Logic, it continues to be used heavily.

Now, as of Logic X (10.5), Apple finally made a concerted effort to upgrade the EXS24 plugin, revealed a renamed plugin called "Sampler" - not to be confused with Ableton's "Sampler" (we still don't know how Apple got away with it). NOTE: We will not call this Sampler but will continue to call it EXS24 or EXS24 Mark III.

The new EXS24 still has global realtime parameters, but now includes a more modular approach with the ability to add a infinite amount of Envelopes and LFO's to serve as modulators. More than 10 modulators is now possible. The interface is totally redone and can be resized as well.

Synthesis and File Structure
The EXS24 uses a simple method of Zones which are sample references. You can have an infinite amount of these per Instrument. You can also make objects called Groups which you can sort Zones under, although a Zone isn't required to attach itself to one. Groups are where the keyswitching/controller-switching/release-trigger is programmed. You can program velocity splits in the Zones OR the Groups.

EXS files (.exs, although they in the old days were typed and didn't ahve to have the .exs extension) reference WAVE or AIFF files,a nd can reference Sound Designer files too. Starting with Logic 8, CAF files are supported. Only absolute paths are supported in locating the sample files. EXS is also unique in that a large amount of information about the sample file - even at what byte offset the sample data starts - is written in the EXS file itself. The disadvantage of this is that if your sample file changes, the EXS file is suddenly quite out of sync with the sample file and can easily play it back incorrectly.

EXS files, in order to be seen by the EXS pulldown loader, have to be in or connected to (that is, aliased to) the "Sampler Instruments" folder in the Application Support folder of the Logic folder. The samples can be anywhere on your system.

The EXS-24 is a fairly simple yet powerful sampler - using ADSR envelopes, a seemingly nice filter with resonance, two LFO’s, and the standard complement of functions. Portamento is a nice touch. One lousy thing - most of the great program parameters, such as the Filter, Envelopes, and LFO’s, are GLOBAL within the Instrument - one setting applies to all Zones. But at least, the Zones provide the basic parameters, such as tuning, velocity, and looping, while the Groups provide special adjustment parameters for the amplitude ADSR, the Filter Cutoff, and Resonance. Logic 7 introduced support for Group control of Filter Envelopes, Logic 8 allowed for CAF format support, and Logic 9 introduced support for long sample file names.

There are even EXS monolith files. We have not been able to recreate one, but they exist and have some in our possesion.

Please see the Format Preferences-EXS24 section in this document for information on the different options you can set for EXS24 import and export abilities.

Translating and Building to EXS24 Format

An EXS file is just a single Instrument, so any conversion creates a single EXS file per incoming program. The EXS24 has no concept of Banks so it's every .exs file for itself. Sample files are selectable between WAVE, AIFF, or CAF. Within CAF there are many choices, even Apple Lossless, which brings down the sample size by a significant amount with no loss in quality.

It's up to you to make sure the EXS files that created are connected to the Sampler Instruments folder. You can always move them post-conversion.

EXS24 accepts incoming Group structures and divides them up as Groups if the EXS24 Group to incoming Groups parameter is checked.

Surprisingly, the EXS24 does NOT support 32-bit float samples. So if there are any coming in, they are converted into 24-bit sample bitrate. Another restriction is the inability to use any crossfading of samples when Velocity splitting is being used. In those cases, cross-fading is turned into cross-switching.

Since the EXS24 supports keyswitching, controller-switching, release-triggering, and even round-robin, it accepts all these from incoming formats.

Translating Out of EXS24 Format

This is not a complicated procedure, although it can be if you are using Rule/Dimension-based features and the destination does not, or if your EXS file is using lots of samples and you will overrun your destination's memory capacity.

Group names are also preserved; any destination will recognize these if their Group to incoming Groups parameter is checked.

Translator assumes the links from the EXS file are correct; if it can't find the external sample file, Translator will ask you where it is, either via the File dialog or Folder dialog. Using the Folder dialog (Create Catalog), choosing a folder will provide a hint for remaining unfound samples. On the Mac, Translator will also perform a quick CatSearch to find the sample as well.

It is also possible, if the destination format permits it, to just assume the sample is where it actually isn't and the new format will just pass that path. Checking Do Not Require Samples in Preferences-Fix References allows for this; please note the extra parameters you can fill in.