Buffer Override

With Buffer Override, you can overcome your host application's audio processing buffer size and then (unsuccessfully) override that new buffer size to be a smaller buffer size. You can think of these as the "super-buffer" and then its "sub-buffer." Listen to what it does and you'll understand more what I'm talking about and what the point of it is.

Additionally, Buffer Override's buffer divisor value can be optionally controlled by MIDI notes and pitch bend messages (optionally because the value can still also be controlled by the parameter slider; and pitch bend messages are always interpreted relative to whatever the current state of things is, regardless of whether you are playing notes or not).


Buffer Override's controls are organized into sections:

The center is the most important part. That is where the big box is, which is the crux of Buffer Override. That box is a two-parameter "XY" control. Left-right movements control the buffer divisor parameter. Up-down movements control the forced buffer size parameter. The buffer tempo sync button to the right of the box toggles the behavior of forced buffer size.

The lower left corner has controls for an LFO that can modulate the buffer divisor. The lower right corner has controls for an LFO that can modulate the forced buffer size.

The lower middle section has stuff relating to MIDI.

The upper right corner has mix-related stuff.

The upper left corner provides a visualization of the effect.


forced buffer size:

This is the duration of Buffer Override's own buffer. It is thrust upon the host with little regard for the real audio buffer size. You can control it by dragging up and down in the XY box.

If buffer tempo sync is turned on, then the forced buffer size is adapted to the tempo of your song. The values are in buffers per beat (note: I mean per single beat, not per measure, so this is time signature independent). Otherwise the forced buffer size is in milliseconds.


buffer tempo sync:

This switches between "free" and tempo-synced forced buffer size control.


buffer divisor:

This number is divided into the forced buffer size, resulting in the mini-buffer size. It determines how many times you hear the audio repeat within a forced buffer. You can control it by dragging left and right in the XY box.


buffer interrupt:

When buffer interrupt is turned on, you can adjust the buffer divisor while in the midst of a forced buffer and the changes will kick in immediately. If buffer interrupt is turned off, then changes to the buffer divisor only affect things after the current forced buffer has finished, meaning that the mini-buffer size is "stuck" during each forced buffer. This is how Buffer Override version 1.x worked.

If you are using an LFO to modulate the buffer divisor, you probably won't be very pleased if you have buffer interrupt turned off.


LFOs:

Both LFOs allow you to choose the modulating waveform shape. The options are sine, triangle, square, sawtooth, reverse sawtooth, thorn (sort of like an exponential triangle waveform), random sample & hold (chunky style), and random interpolating (smooth style).

The LFO speeds are controlled by the rate sliders below the shape buttons. They can be synced to tempo using the tempo sync buttons for each LFO.

The amount of LFO modulation can be controlled by the LFO depth sliders. At 0%, the LFOs are inactive.


tempo:

This parameter is used to tell Buffer Override what the tempo of your song is.


sync to host tempo:

When this parameter is turned on, Buffer Override tries to get the tempo and beat position from the host application (and ignores the value manually selected by the tempo parameter).

"Host tempo" only works if the host application supports sending tempo information to plugins. If tempo is unavailable from the host, then Buffer Override falls back to using the value set with the tempo parameter.


smoothing:

This parameter lets you decide how much of each mini-buffer is spent crossfading from the end of the previous mini-buffer to the beginning of the new one.


dry/wet mix:

This lets you adjust the balance of the input audio (unprocessed) and the output audio (processed). 100% is all processed.


pitch bend range:

This lets you adjust MIDI pitch bend's range in semitones.


MIDI mode:

Buffer Override has two modes for MIDI note control: nudge and trigger. In nudge mode, Buffer Override only pays attention to note-on messages. Whenever you play a note, the buffer divisor jumps to the value that results in the mini-buffer frequency matching that of the note. When you release the note, nothing changes.

In trigger mode, Buffer Override pays attention to note-off as well as note-on messages. When you stop playing notes, the buffer divisor parameter drops down to 1, which basically turns the effect off. Buffer Override also stops responding to pitch bend messages in trigger mode when no notes are being played. You can still change the buffer divisor by adjusting the slider with your mouse, host automation, etc.



parameter adjustment tricks:   You can lock the forced buffer size value in the XY box by holding the control key and you can lock the buffer divisor value by holding the option key (alt on Windows). You can make fine adjustments by holding the shift key while adjusting a parameter with your mouse. You can also reset a parameter to its default value by holding the command ⌘ key (control on Windows) when clicking on it.