Sample Oscillator Section

This section is available for sample zones. It contains various playback and loop parameters.

Load/Replace Sample

This button on the right side of the section header allows you to load an initial sample or to replace the current sample. In the dialog, you can listen to the samples, to select the best match for your working situation.

Playback Mode
  • Normal – The sample is played back from beginning to end. If loops are defined, they are played back according to their loop settings.

  • Reverse – The sample is played from end to beginning If loops are defined, they are played back according to their loop settings.

  • One-Shot – The sample is played back from beginning to end, regardless of any loop settings.

  • Reverse One-Shot – The sample is played back from end to beginning, regardless of any loop settings.

In One-Shot and Reverse One-Shot mode, the zones ignore any MIDI note-off messages. All envelopes and LFOs play until their sustain is reached and then remain on this level for as long as the sample plays back. Any release segments of the envelopes and LFOs are not played. However, if you activate One-Shot mode in the Envelope section, the release nodes of the envelopes are included in the playback.

Fixed Pitch

If a sample zone is triggered by a MIDI note other than the one defined by the Root Key setting, the sample is normally pitched accordingly. If Fixed Pitch is activated, the relation between played note and root key is disregarded and all keys play the sample just as it was recorded.


You can still apply the usual pitch modulations in the Pitch section and set the sample to follow the keyboard according to the Pitch Key Follow setting.


A sample can either be loaded completely into RAM or it can be streamed from the hard disk. If samples are streamed, HALion needs to preload a portion of these samples to be able to play a voice without having to search for the sample data first. The size of this preload buffer can be set in the Options Editor. The Preload setting allows you to adapt this buffer size for individual sample zones by setting a multiplier from 1 to 16. Increasing the buffer size can be useful if a sample can be transposed in a wide range and HALion needs to read out the sample data faster, for example.

If you set Preload to its maximum, the entire sample is preloaded. This is useful for smaller samples.


If samples are not played with their original pitch or tempo, HALion calculates the transposed versions in real time using algorithms that require different CPU performance depending on the Quality setting.

Changing the quality setting is particularly noticeable in the high frequencies. The higher the setting, the better the suppression of artifacts. For samples with little high-frequency content, you can use the Standard option. For programs that use different samples for every key, you can use the Standard option to save computing power.

If Quality is set to Vintage, you can make the following settings:

  • Rate Reduction allows you to specify a sample frequency, to simulate the lower sample rates of early samplers.

  • Bit Reduction allows you to select the bit depth that was used by early samplers.

  • Turntable emulates the memory-optimized workflow of the past, where turntables were sampled at a speed of 45 RPM to record shorter samples, and then tuned down again to correct for the change in pitch.

    If you set this parameter to 78 RPM, you can increase the vintage artifacts that are produced.

Sample Start

The start marker of the sample.

Start Range

Determines the range for sample start offset modulation. If Sample Start is selected as a modulation destination in the modulation matrix, the Start Range parameter controls the sample portion that is affected by the start offset modulation. If this parameter is set to zero, no sample start modulation is performed.

For example, if Note-on Velocity is used to modulate the Sample Start parameter, a high key velocity starts playback later in the sample, and the range of this modulation is determined by the Start Range parameter.

Link Loop Start and End

Links the loop start and end positions. If you edit one of the values, the other is automatically modified.

Sample End

The end marker of the sample.

Release Start

Determines the position to which the cursor jumps when you release a key.

For example, if you are playing back a sample in a loop, but you want it to play its original release phase, set the Release Start parameter to this position.

Release Offset

Allows you to fine-tune the release start for each sample.

This allows you to offset the release start for several zones at the same time without losing the original release settings, for example.

Crossfade/Fade In/Fade Out

Allow you to set the curve and the length of the fade in, the fade out, and the crossfade.

Loop Sets A and B

Allow you to set up two different sets of loops for the same sample. This is useful to compare different versions of the same loop, for example.

Loop Mode

Allows you to select a mode for the sustain loop and the release loop.

  • If this is set to No Loop, the sample is played without loop.

  • If this is set to Continuous, the loop is played continuously until the end of the amplitude envelope.

  • If this is set to Alternate, the loop alternates forward and backward even if you release the key.

  • If this is set to Once, the loop is repeated once.

  • If this is set to Until Release (sustain loop only), the loop is repeated until you release the key on the keyboard.

  • If this is set to Alternate Until Release (sustain loop only), the loop alternates forward and backward for as long as the key is held and then continues to the end of the sample.


If Loop Mode is set to Alternate or Alternate Until Release, the loop crossfade is applied to the loop start and the loop end. All other modes on the Loop Mode pop-up menu apply the loop crossfade only to the loop end.

Loop Start

The loop start for the sustain loop and for the release loop.

Loop End

The loop end for the sustain loop and for the release loop.


Sets the tuning of the loop. This is useful to adjust the frequency of the loop.