Skip to content

Repository files navigation

Maolan Plugins

crates.io

A collection of audio plugins written in Rust for the Maolan ecosystem. All plugins implement the CLAP plugin API and include an Iced-based GUI using the TokyoNight theme.

Plugins

PluginIDI/ODescription
Drustrs.maolan.drust8× StereoDrumGizmo-inspired drum sampler
Maolan Kickrs.maolan.kick16× MonoPercussive synthesizer with layered oscillators and noise
Maolan Compressorrs.maolan.compressorMono / Stereo4-band multiband compressor with lookahead and sidechain boost
Maolan DeEsserrs.maolan.deesserStereoSibilance reduction processor
Maolan Delayrs.maolan.delayMono / StereoDelay with ms / note-sync modes and smooth chasing
Maolan EQrs.maolan.equalizerMono / StereoParametric EQ with peaking biquad filters
Maolan Limiterrs.maolan.limiterStereoAdaptive clipper/limiter with Vintage and Modern variants
Maolan Monitoringrs.maolan.monitoringStereoMonitoring toolbox with 17 reference modes
Maolan Reverbrs.maolan.reverbMono / StereoStereo reverb
Maolan Samplerrs.maolan.samplerStereoPolyphonic sample player
Maolan Saturatorrs.maolan.saturatorStereoWaveshape saturation with sine-based distortion
Maolan Synthrs.maolan.synthStereoPolyphonic synthesizer inspired by Surge XT
Maolan Stereors.maolan.stereoStereoStereo width processor
Maolan Widenerrs.maolan.widenerStereoMultiband stereo width processor
Rural Modelerrs.maolan.ruralmodelerMonoNeural Amp Modeler with IR convolution

Drust

A drum sampler plugin based on DrumGizmo. Supports loading drum kits asynchronously, MIDI note triggering with velocity mapping, round-robin sample selection, humanization, and per-output channel balancing. Includes a built-in limiter and 16 mono outputs.

Parameters

ParameterRangeDefaultDescription
Master Gain−60.0 ... 12.0 dB0.0Output gain
Enable Resampling0 / 11Enable sample-rate conversion
Min Velocity0 ... 1270Minimum input velocity
Max Velocity0 ... 127127Maximum input velocity
Resample Quality0 ... 31Resampler quality level
Humanize Amount0.0 ... 100.08.0Timing humanization
Round Robin Mix0.0 ... 1.00.7Round-robin blend
Bleed Amount0.0 ... 100.0100.0Mic bleed level
Limiter Threshold−48.0 ... 0.0 dB−3.0Limiter threshold
Normalize Samples0 / 11Auto-normalize loaded samples
Random Seed0 ... 10000Humanization seed
Voice Limit Max1 ... 128128Max simultaneous voices
Voice Limit Rampdown0.01 ... 2.00.5Voice release rampdown
Balance 1–2 ... 15–16−1.0 ... 1.00.0Per-output stereo balance

Output channels: Kick L/R, Snare L/R, HiHat L/R, Toms L/R, Ride L/R, Crash L/R, China/Splash L/R, Ambience L/R


Maolan Compressor

A 4-band multiband compressor with LR4 crossover splits. Supports Peak/RMS sidechain detection, downward/upward/boosting modes, lookahead delay, and sidechain boost options. Based on the LSP compressor design.

Parameters

ParameterRangeDefaultDescription
Input Gain−24.0 ... 24.0 dB0.0Input gain staging
Output Gain−24.0 ... 4.0 dB−8.0Output gain staging
Dry Gain0.0 ... 1.00.0Dry mix amount
Wet Gain0.0 ... 1.01.0Wet mix amount
Sidechain Mode0=Peak, 1=RMS1Sidechain detection type
Bypass0 / 10Global bypass
Split 1 / 2 / 320 ... 18000 Hz120, 1000, 6000Crossover frequencies
Band 1–4 Threshold−60.0 ... 0.0 dB−12.0Band compression threshold
Band 1–4 Ratio1.0 ... 100.04.0Band compression ratio
Band 1–4 Attack0.0 ... 2000.0 ms20.0Band attack time
Band 1–4 Release0.0 ... 5000.0 ms100.0Band release time
Band 1–4 Knee0.0 ... 24.0 dB6.0Band knee width
Band 1–4 Makeup−24.0 ... 24.0 dB0.0Band makeup gain
Mode0=Downward, 1=Upward, 2=Boosting0Compression mode
Lookahead0.0 ... 20.0 ms0.0Lookahead delay
SC Boost0=Off, 1=BT+3dB, 2=MT+3dB, 3=BT+6dB, 4=MT+6dB0Sidechain boost option
Topology0=Classic, 1=Modern1Compressor topology

Maolan DeEsser

A sibilance reduction processor that detects ess sounds by analyzing slew-rate patterns across a configurable sample window. Uses IIR smoothing and dynamic ratio reduction to attenuate sibilance while preserving the rest of the signal. Includes a monitor mode for hearing exactly what is being removed.

Parameters

ParameterRangeDefaultDescription
Intensity0.0 ... 1.00.5Sensitivity / threshold
Sharpness0.0 ... 1.00.5Detection window size (2–40 samples)
Depth0.0 ... 1.00.5Maximum reduction amount
Filter0.0 ... 1.00.5IIR smoothing amount
Monitor0 / 10Output delta (removed signal) when enabled

Maolan Delay

A stereo delay with two time modes: fixed milliseconds or tempo-synced note divisions. Uses circular buffers with linear interpolation and smooth delay-time chasing to avoid clicks when the time changes.

Parameters

ParameterRangeDefaultDescription
Time Mode0=ms, 1=Note0Toggle between fixed ms and tempo-synced note
Time (ms)1.0 ... 5000.0 ms375.0Fixed delay time
Time (note)0.0 ... 1.00.75Maps to 16 note divisions (1/1 ... 1/8d)
Feedback0.0 ... 1.00.3Feedback amount
Dry/Wet0.0 ... 1.00.5Mix balance

Note divisions: 1/1, 1/2, 1/3, 1/4, 1/6, 1/8, 1/12, 1/16, 1/24, 1/32, 1/48, 1/64, 1/1d, 1/2d, 1/4d, 1/8d

In Note mode the plugin reads the host BPM from the CLAP transport each process call.


Maolan EQ

A Parametric equalizer using peaking biquad filters. Each band has independent frequency, gain, and Q controls.

Parameters

ParameterRangeDefaultDescription
Input Gain−24.0 ... 24.0 dB0.0Input gain staging
Output Gain−24.0 ... 24.0 dB0.0Output gain staging
Bypass0 / 10Global bypass
Freq20.0 ... 20000.0 Hz1000.0Band center frequency
Gain−24.0 ... 24.0 dB0.0Band gain
Q0.1 ... 24.01.0Band Q factor

Maolan Limiter

Adaptive clipper/limiter with two distinct variants.

Parameters

ParameterRangeDefaultDescription
Variant0=Vintage, 1=Modern0Algorithm selector
Boost0.0 ... 1.00.0Input gain boost (up to +18 dB)
Soften0.0 ... 1.00.5Vintage softness amount
Enhance0.0 ... 1.00.5Vintage highs/subs lift
Ceiling0.0 ... 1.00.5Modern output ceiling
Mode0–70Processing mode (Normal, Atten, Clips, Afterbr, Explode, Nuke, Apocaly, Apothes)

Algorithms

  • Vintage - Boost-based clipping with overshoot detection, highs/lifts enhancement, and adaptive reference clipping
  • Modern - Multi-stage clip-only processor with configurable ceiling and stage-based gain staging

Maolan Monitoring

Monitoring toolbox with 17 reference modes for checking mixes on different playback systems.

Parameters

ParameterRangeDefaultDescription
Mode0–160Monitoring mode selector

Modes: Out24, Out16, Peaks, Slew, Subs, Mono, Side, Vinyl, Aurat, MonoRat, MonoLat, Phone, Cans A, Cans B, Cans C, Cans D, VTrick


Maolan Reverb

Stereo reverb built from three allpass-like delay blocks with cross-feedback between channels, vibrato predelay, and input/output lowpass filters.

Parameters

ParameterRangeDefaultDescription
Replace0.0 ... 1.00.5Reverb density / replacement
Brightness0.0 ... 1.00.5High-frequency content
Detune0.0 ... 1.00.5Pitch modulation depth
Bigness0.0 ... 1.01.0Room size
Dry/Wet0.0 ... 1.01.0Mix balance

Maolan Sampler

A production-grade polyphonic sample player supporting SFZ (v1/v2) and SoundFont 2 (SF2.01/SF2.04) formats alongside standalone WAV/audio files. Features 32 polyphonic voices, multi-EG envelopes, auxiliary LFOs, multimode filter, modulation matrix, and non-blocking background sample parsing and resampling.

Format & Feature Highlights

  • SFZ v1/v2 Support:
    • Header scope precedence (controlglobalmastergroupregion).
    • Preprocessing with #include directives, #define macros, and #if/#else/#endif conditional blocks.
    • Core opcodes for key/velocity mapping, key fades (xf*), tuning, volume, pan, looping (continuous, sustain, one-shot, alternate), playback offset/direction, trigger modes (attack, release, first, legato), group choking, keyswitches (sw_last, sw_down, sw_up, sw_default), and round-robin / random variants (seq_length, lorand/hirand).
    • Amp/Filter envelope generators and LFO opcodes mapped directly to group DSP modules.
  • SoundFont 2 (SF2) Support:
    • RIFF sfbk structure parser supporting 16-bit PCM and 24-bit PCM (sm24 / smpl-24) audio chunks.
    • INFO chunk metadata extraction (INAM, ICRD, IENG, etc.).
    • Generator merging across preset-zone, preset-global, instrument-zone, and instrument-global scopes.
    • Supported generators: keyRange, velRange, sample start/end/loop address offsets, coarseTune, fineTune, scaleTuning, overridingRootKey, initialAttenuation (centibels), pan, exclusiveClass, sampleID, and sampleModes.
    • Default and custom imod modulator mapping to internal modulation matrix (Mod Wheel CC1, Channel Volume CC7, Pan CC10, Expression CC11, Velocity, and Key tracking).
    • Multi-preset selection: Exposes all (bank, preset) pairs in loaded SF2 files via the GUI preset dropdown selector.
  • Background Loading & Engine Isolation:
    • File parsing, sample decoding, and sample-rate conversion occur on a background worker thread.
    • Audio thread stays click-free by atomically swapping loaded patches via AtomicArc<Patch>.
    • Active voices maintain Arc references to previous samples to gracefully finish playback when reloads occur.
    • Integrated LRU caching based on path and file modification timestamp (mtime).
  • GUI Features:
    • Drag-and-drop file loading for .sfz and .sf2 files.
    • Preset picker dropdown for multi-preset SoundFont files.
    • Real-time progress bar for sample loading and resampling.
    • Reload button for quick iteration when editing .sfz files on disk.
    • Scrollable load status and error log view.

Parameters

ParameterRangeDefaultDescription
Gain0.0 ... 2.01.0Master output gain
Pan−1.0 ... 1.00.0Master pan
Amp EG Attack0.0 ... 10.0 s0.01Amplitude envelope attack
Amp EG Decay0.0 ... 10.0 s0.2Amplitude envelope decay
Amp EG Sustain0.0 ... 1.01.0Amplitude envelope sustain
Amp EG Release0.0 ... 1.00.3Amplitude envelope release
Bend Up0 ... 24 semitones2Pitch-bend up range
Bend Down0 ... 24 semitones2Pitch-bend down range
Filter Type0 ... 481Multimode filter type
Filter Cutoff20.0 ... 20000.0 Hz20000.0Filter cutoff
Filter Resonance0.01 ... 10.00.7Filter resonance
Filter EG Amount−1.0 ... 1.00.0Filter envelope modulation
Filter Enabled0 / 10Enable filter
Filter EG Attack0.0 ... 10.0 s0.01Filter envelope attack
Filter EG Decay0.0 ... 10.0 s0.2Filter envelope decay
Filter EG Sustain0.0 ... 1.00.0Filter envelope sustain
Filter EG Release0.0 ... 10.0 s0.3Filter envelope release
EG2–EG5 Attack0.0 ... 10.0 s0.01Auxiliary envelope attack
EG2–EG5 Decay0.0 ... 10.0 s0.2Auxiliary envelope decay
EG2–EG5 Sustain0.0 ... 1.01.0Auxiliary envelope sustain
EG2–EG5 Release0.0 ... 10.0 s0.3Auxiliary envelope release
LFO1/2 Rate0.01 ... 20.0 Hz1.0LFO rate
LFO1/2 Amount0.0 ... 1.00.0LFO depth
LFO1/2 Shape0 ... 90LFO waveform
LFO1/2 Enabled0 / 10Enable LFO

Maolan Saturator

Simple but effective stereo saturator using sine-wave distortion with an intensity-dependent blend.

Parameters

ParameterRangeDefaultDescription
Drive0.0 ... 1.00.0Saturation amount

Maolan Synth

A polyphonic synthesizer inspired by Surge XT. Features three oscillators with multiple synthesis modes (including wavetable, FM, and physical-modeling flavors), two multimode filters with configurable routing, three envelopes, six LFOs, a 12-slot modulation matrix, an MSEG, a step sequencer, noise and waveshaper sections, and microtonal tuning support.

Parameter groups

GroupDescription
Osc1–Osc3Type, octave, semitone, fine, shape, skew, formant, level, unison, sync, sub, routing, solo/mute
Filter1–Filter2Type, subtype, cutoff, resonance, EG amount, key tracking, drive, feedback, enable
FilterFilter routing and balance
AmpEG / FilterEG / PitchEGAttack, decay, sustain, release, mode, shapes, retrigger, tempo sync, uber release
LFO1–LFO6Rate, shape, amount, deform, trigger, sync mode/division, envelope, phase, unipolar
ModFixed mod depths (velocity/key/LFO to filter, mod wheel/aftertouch to filter)
ModRoute1–12Source, target, depth, curve
NoiseType, level, color, filter, stereo, enabled
WaveshaperShape, drive, mix, enable
FlavorAdditional filter-like flavor stage
Step Seq16 step values, loop start/end, shuffle, trigger targets
MSEG128 nodes, 127 segment curves, loop, retrigger targets
MacrosMacro1–8 modulation sources
MasterVolume, pan, width, polyphony, portamento, pitch-bend range, play mode, voice priority
TuningScale, root, SCL index
FM / Twist / String / AliasOscillator-specific parameters for FM, twist, string, and alias engines

Note: The synth exposes a large parameter set (712 parameters). The exact ranges and defaults are defined in the plugin parameter list; the table above summarizes the available groups.


Maolan Stereo

Stereo width processor.

Parameters

ParameterRangeDefaultDescription
Width0.0 ... 1.00.5Stereo width
Focus0.0 ... 1.00.5Focus / center control
Amount0.0 ... 1.01.0Effect amount

Mid/side processing with density controls and delay-based focus.


Maolan Widener

A multiband stereo width processor with independent Low, Mid, and High band controls. Uses LR4 crossover filters and mid/side processing per band.

Parameters

ParameterRangeDefaultDescription
Output Gain−24.0 ... 24.0 dB0.0Output gain staging
Boost0.0 ... 4.0x1.0Global side boost
Low0.0 ... 200.0 %100.0Low-band width
Mid0.0 ... 200.0 %100.0Mid-band width
High0.0 ... 200.0 %100.0High-band width
Solo Low0 / 10Solo low band
Solo Mid0 / 10Solo mid band
Solo High0 / 10Solo high band
X140.0 ... 1000.0 Hz400.0Low/mid crossover
X21000.0 ... 18000.0 Hz4000.0Mid/high crossover
Strength1.0 ... 20.0 ms5.0Width strength
Monitor Mode0=Stereo, 1=Mono, 2=Side0Output monitor mode

Rural Modeler

A Neural Amp Modeler (NAM) plugin that loads neural network amp models and impulse responses (IRs). Features a noise gate, tone stack (Bass/Mid/Treble), input/output calibration, and DC blocking.

Parameters

ParameterRangeDefaultDescription
Input−20.0 ... 20.0 dB0.0Input gain
Threshold−100.0 ... 0.0 dB−80.0Noise-gate threshold
Bass0.0 ... 10.05.0Tone-stack bass
Middle0.0 ... 10.05.0Tone-stack mid
Treble0.0 ... 10.05.0Tone-stack treble
Output−40.0 ... 40.0 dB0.0Output gain
Noise Gate Active0 / 11Enable noise gate
Tone Stack0 / 11Enable tone stack
IR Toggle0 / 11Enable impulse response
Calibrate Input0 / 10Enable input calibration
Input Calibration Level−60.0 ... 60.0 dB12.0Calibration reference
Output Mode0=Raw, 1=Normalized, 2=Calibrated1Output loudness mode

Model/IR loading: Via GUI file picker, or set the environment variables RURAL_MODELER_MODEL and RURAL_MODELER_IR before starting the host.


Build

Unix

cargo build --release

Windows

In the Windows environment execute the following: powershell -ExecutionPolicy Bypass -File "\\172.16.0.254\repos\maolan\plugins\build.ps1"

Platform Support

Linux, FreeBSD, and Windows are supported.


Only CLAP support

As only CLAP supports changing number of channels while plugin instance is loaded, the decision is to support only that plugin format. With other formats one has to implement mono and stereo plugin and those can not be swapped easily. On top of that, once there's an option for mono, stereo, 2.1, 5.1 and 7.1 the number of plugins becomes huge. Just imagine having 10 plugins with all channel variations: that makes 50 plugins to choose from in a plugin browser. That being said, if LV2 gets support for changing channel number, it will be implemented, but only then.

About

Maolan plugins

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages