Sample Scrubber


Version 1.2

  • Added input jacks to control scrubbing range. Input overrides knob value and maps 0 to 5 Volts from sample start to sample end. Uses absolute value of input voltage. Caps value at 5.

  • Added the option to save sample data with the module instead of just the sample path. (Right-click the sample window to access.)

  • Added sample convenience functions (like those in JK's Random Sampler).

    • Left-click + Ctrl: load next sample in current directory

    • Left-click + Ctrl + Shift: load previous sample in current directory

    • Left-click + Alt: load a random sample from the current directory


JK's Sample Scrubber lets you load a sample and control its playback position with CV input. Send any signal to the input, then use the various toggles and knobs to adjust how the signal is processed. No start, no stop, no pitch control, just you, a sample, and some CV input.

A readthrough of the controls and signal path should give a good overview of how this functions. Also, of the three bits of example audio, only the first ("ambient example") is really intended to demonstrate potential in a musical context, the other two are more intended to showcase more unique possibilities.

Demo video


CV Input: Send your control signal in here.

Basic Signal Settings

  • Invert ("-"): Invert the control signal.

  • Bi: Set the module to work with bipolar input, with a minimum of -5 V and maximum of 5 V.

  • Uni: Set the module to work with unipolar input, with a minimum of 0 V and maximum of 5 V.

Signal Adjustments

  • Mult: Multiply the input signal to increase or decrease its range, from 0% up to 200%.

  • Bias: Shift the input signal up or down by as much as 5 V. NOTE: Even without CV input the bias knob still works, allowing for use as a manual sample scrubber/scratcher.

  • Lag: Slow the rate of change of the signal, with a smoothing time from 0 to 500 ms.

Signal Boundaries

  • Clip: Clip the play position at the ends of the range.

  • Wrap: Wrap the play position back to the opposite end when reaching either end of the range (i.e. loop).

  • Fold: Change the direction of the play position when going beyond the end of the range (i.e. ping-pong loop).

  • Range: Set the points to use as the start and end position of the sample. The end can move before the start and will simply reverse playback. The provided input jacks can be used as well. Any input will override the knob settings. Expected input is 0 to 5 volts (absolute value), which maps from the beginning to end of the sample.

Sample Window: Displays the name of the currently loaded sample, the start and end points, and the current play position. Click this window to open a file picker for loading a new sample. Alternately, drag and drop an audio file onto the module to load it.

HP: Four-pole highpass filter frequency.

LP: Four-pole lowpass filter frequency.

Vol: Output volume.

Outputs: Left/Mono and Right jacks for standard audio output.

Additional Sample Window Functionality

  • Right-click: Choose the module's save mode. Path mode (default) only saves the name and location of the loaded sample. Data mode saves the sound data itself with the module.

  • Left-click + Ctrl: Load next sample in current directory

  • Left-click + Ctrl + Shift: Load previous sample in current directory

  • Left-click + Alt: Load a random sample from the current directory

Signal Path

While the signal mostly travels from top to bottom, the specific flow is as follows:

Input -> Invert* -> Mult -> Bias -> Clip/Wrap/Fold* -> Scale to Range* -> Lag -> Play Position

* denotes a step affected by the Bi/Uni setting.

Post any comments, questions, concerns, feature requests, or bug reports on the forum or send an email here. And finally, have fun with it!