OrDrumbox v2 User Manual
Table of Contents
1. Getting Started
OrDrumbox v2 is a browser-based drum machine and pattern sequencer. When you open the application, you see:
- Toolbar at the top — main controls
- Pattern Panel — the step sequencer grid
Basic Workflow
- Select a Pattern from the Pattern dropdown
- Click Start to begin playback
- Click on the grid to add/remove notes
- Click a track name to open the Track Editor
- Click a note cell to open the Note Editor
- Use Auto Gen to enable automatic pattern regeneration (toggle)
2. Toolbar
The toolbar is the fixed control bar at the top of the screen.
Controls
| Button / Control | Description |
|---|---|
| Start / Stop | Toggles playback. Red background when running. |
| BPM | Click to open the tempo slider (range: 20–250 BPM). |
| Pattern | Dropdown to switch between patterns. |
| Kit | Dropdown to switch drumkits (samples load on first use). Only tracks with auto enabled are re-assigned; manually assigned samples keep their sound, even when it belongs to another drumkit — it is loaded on demand, also after a restart. |
| Auto Gen | Toggle button. When active (green), the pattern is automatically regenerated on section boundaries using genre-based song structure. Click again to disable. |
| Clear | Removes all notes from the current pattern (asks for confirmation). |
| Tools | Opens the Tools panel (export/import, pattern name). |
| Output | Opens the Output panel (master mixer, spectrum analyzer). |
3. Pattern Panel
The Pattern Panel displays all tracks as horizontal step grids below the toolbar.
Display
- Pattern name (red), BPM, beat count, and track count are shown in the header.
- Each track row shows: track name + step grid.
- Playhead — vertical line moving across the grid during playback.
- Waveform overlay — real-time waveform display over the grid (toggle with V key).
- VU meters — real-time level bars on each track row.
Header Action Buttons
| Button | Description |
|---|---|
| ✕ Delete | Delete the current pattern (with confirmation) |
| ⌫ Clean | Clear all notes from the current pattern (with confirmation) |
| ⧉ Duplicate | Duplicate the current pattern |
| ✎ Rename | Rename the current pattern |
| ↓ Save | Export pattern as JSON file |
| ↑ Replace | Load/replace pattern from JSON file |
Per-Track Controls
| Control | Description |
|---|---|
| Track name | Click to open Track Editor for that track |
| Volume slider | Per-track volume (range 0–1) |
| Mute divider | Click to toggle mute for the track |
| Solo button | Click to solo the track (only this track plays) |
Bottom Row
| Control | Description |
|---|---|
| Master | Master volume slider (range 0–2) |
| + new track | Add a new empty track to the pattern |
Cell Colors
| Appearance | Meaning |
|---|---|
| Dark cell | Empty step |
| Red cell (varying opacity) | Note present — opacity proportional to velocity |
| White outline | Selected note or track |
| Left border | Start of a beat |
| Right white border | Loop point |
| Pitch indicator (small bar inside cell) | Shows pitch offset direction |
| Semi-transparent red (with number) | Note with trigger frequency > 1 |
| Orange (with number) | Note with probability < 1 |
| Blue rectangle (half-height, semi-transparent) | Retrigger sub-hit |
| Yellow rectangle (half-height, semi-transparent) | Euclidean fill sub-hit |
Interactions
| Action | Result |
|---|---|
| Click empty cell | Creates a note and opens Note Editor |
| Click a note | Selects it and opens Note Editor |
| Click a selected note | Deletes it |
| Click track name | Opens Track Editor for that track |
| Right-click cell | Cell menu: Copy notes, Paste notes (enabled when the clipboard holds notes), Delete note, Add rnd note |
| Right-click track row | Track menu: Copy track, Paste tracks, Duplicate track, Delete track, Randomize, Clear notes |
Editing a note's velocity & pitch
A note can be tuned straight from the grid, without opening the Note Editor. Two gestures do the job, and they work the same way in the Piano Roll.
| Action | Result |
|---|---|
| Drag a filled cell up / down | Velocity (0–1), +0.005 per pixel — a full sweep is ~200 px |
| Drag a filled cell left / right | Pitch, one semitone per 12 px |
| Shift + ↑ / ↓ (note picked with the mouse) | Velocity ±0.05 |
| Shift + ← / → (note picked with the mouse) | Pitch ±1 semitone |
- Axis lock: the gesture commits to one axis after 3 px of movement, so a sloppy diagonal never changes both velocity and pitch at once.
- Chords: in a cell holding several notes, the slice under the pointer is the note edited — one voice per slice.
- Audible: the note is re-played as it changes (a few times per second at most), so an edit is never silent.
- Safe: a drag never deletes the note — the click the browser sends at the end of the gesture is swallowed. A plain click still selects the note, and a second plain click still deletes it.
- Undo: a whole drag (or a held key) is one history step — Ctrl/Cmd + Z restores the original value in one go.
Shift + Arrow has two meanings in the grid. It edits the note only when that note was picked with the mouse (a click or a drag); when the note was merely reached by walking the cursor with the arrows, Shift + Arrow keeps extending the multi-step selection used for a range delete. A plain arrow always hands Shift + Arrow back to range selection.
Editing gauge
While a velocity or pitch is being edited, a gauge pops up over the note:
- a knob-style arc that fills with the value — velocity directly (0.8 fills 80 % of the sweep), and for pitch the place the note occupies on the keyboard, so the arc moves as you transpose;
- the note name and its MIDI number, then the new value with a ▴ / ▾ arrow;
- a coloured ring around the edited cell.
The gauge stays up while you drag or hold the key, then fades out about 700 ms after the last change. The note's own tooltip is hidden while the gauge is displayed, so the two never overlap, and comes back afterwards. The pattern grid has no pitch axis, so this gauge is the only place a transposed note can be read.
4. Track Editor
The Track Editor opens when you click a track name. It contains all track-level parameters organized in groups.
Basic / Transport
| Control | Range | Default | Description |
|---|---|---|---|
| Mute | — | off | Mutes the entire track |
| Mono | on/off | off | Forces monophonic playback |
| Auto | on/off | off | When enabled, this track is automatically regenerated at each loop boundary using the pattern generator |
| Variation | 0–100% | 0 | Automatic beat randomization intensity. Each loop iteration gets a fresh budget of operations (100% = 16 pts). Operations are applied greedily until the budget is exhausted. |
| Var Prop | 0–100% | 0 | Variation probability — controls how likely each variation operation is to trigger within its budget. |
| Prob | 0–1 | 1 | Track-level note probability. All notes on this track have this base probability of triggering (independent of per-note probability). |
Variation
The Variation slider (0–100%) controls the intensity of automatic beat randomization applied on each loop iteration. At 0%, the pattern plays as-is. As you increase the value, the sequencer randomly adds anticipation notes, doubles, ghost notes, silences, and tweaks velocity or pitch — making the beat evolve over time without manual editing. Each loop gets a fresh set of variations, so the pattern never repeats exactly the same way.
Levels / Pitch
| Control | Range | Default | Description |
|---|---|---|---|
| Velo | 0–1 | 1.0 | Track volume multiplier |
| Pan | -1 to 1 | 0 | Stereo panning (left/right) |
| Pitch | -24 to 24 | 0 | Pitch offset in semitones |
| Decay | 0–5000 ms | sample default | Sample decay time in milliseconds (from drumkit). Controls how long the sound fades out after the attack phase. Editable in the Track Editor and Drumkit Manager. |
All four parameters support LFO modulation (click the row to open LFO settings).
Filters
| Control | Range | Default | Description |
|---|---|---|---|
| Type | lowpass, highpass, bandpass, peaking, lowshelf, highshelf, notch, allpass | allpass | Biquad filter type |
| Freq | 0–1 | 20 | Cutoff frequency (normalized, maps to 20Hz–20kHz) |
| Q | 0–1 | 0.707 | Filter resonance |
The Freq and Q parameters support LFO modulation.
Effects
Each effect has an LED toggle (green = active). Tabs 1/2/3 are on the same line as the "Effects" title.
Reverb
| Control | Options | Default | Description |
|---|---|---|---|
| LED | on/off | on | Enable/disable reverb (green = active) |
| RevT | none, room, hall, plate, spring, gated | none | Reverb preset |
| RevV | 0–1 | 0 | Wet/dry mix |
Reverb Presets:
- room — Small room (0.8s decay)
- hall — Large hall (2.4s decay)
- plate — Plate reverb (1.6s decay)
- spring — Spring with ripple (1.2s decay)
- gated — Gated reverb (0.7s, cuts off at 65%)
Delay
| Control | Options/Range | Default | Description |
|---|---|---|---|
| LED | on/off | on | Enable/disable delay (green = active) |
| DelTy | none, slap, tape, pingpong | tape | Delay algorithm |
| DelT | 0.0625, 0.125, 0.25, 0.5, 1, 2, 4 | 1 | Delay time (beat multiplier) |
| DelV | 0–1 | 0 | Wet mix |
Delay Types:
- slap — Single echo, short feedback
- tape — Tape delay with filter, warm feedback
- pingpong — Stereo ping-pong between left and right
Saturation (Sat)
| Control | Options/Range | Default | Description |
|---|---|---|---|
| LED | on/off | on | Enable/disable saturation (green = active) |
| SatT | soft, hard, tape | soft | Saturation algorithm |
| SatV | 0–1 | 0 | Drive amount |
Saturation Types:
- soft — Smooth tanh-based clipping
- hard — Hard clipping
- tape — Analog tape warmth
LFO Sub-Panel
Click any LFO-capable row (Velo, Pan, Pitch, Freq, Q) to open the LFO editor.
| Control | Range | Default | Description |
|---|---|---|---|
| LED | on/off | off | Enable/disable LFO |
| Type | sine, triangle, sawtooth, square | sine | LFO waveform shape |
| Freq | 0.1–2 | 1 | LFO rate (cycles per 4 beats) |
| Min | varies | parent min | LFO sweep minimum |
| Max | varies | parent max | LFO sweep maximum |
| Phas | 0–1 | 0 | Phase offset |
Sound Sub-Panel
| Control | Description |
|---|---|
| autoassign | LED toggle (green = active). When on, automatically assigns the best sample from the selected drumkit based on the track name. When off, the assignment stays manual (the sample can belong to any drumkit). |
| Instr | Instrument type selector. Picking an instrument renames the track and assigns the preferred sample for it (from the selected drumkit when available, from another kit otherwise). |
| Sample | Sample file selector — lists the samples of the current instrument across all drumkits, selected kit first. A sample from another kit is loaded the moment it is selected, and again automatically after a restart. |
| Synth | Soft-synth generated sound selection |
| Edit | Opens the Synth Editor for the selected generated sound |
| ↑ Load | Import an audio file (WAV/FLAC/MP3) to replace the current track's sample |
| Waveform | Sample waveform display with decay marker (yellow vertical line) |
Loop / Pattern Sub-Panel
| Control | Range | Default | Description |
|---|---|---|---|
| Steps/Beat | 1–8 | 4 | Number of steps per beat |
| Beats | 1–16 | 4 | Number of beats in the pattern |
| Loop Point | 1–(beats×steps/beat) | end | Step where the track loops back |
| Swing | 0–1 | 0 | Shuffle amount for odd-numbered steps |
5. Note Editor
The Note Editor opens when you click a note in the Pattern Panel. It shows per-note parameters.
Header
- Track name, position (beat X step Y), and close button.
Vel / Pitch / Pan
Velocity and pitch can also be edited directly in the grid: drag a note up/down or left/right, or use Shift + ↑/↓ and Shift + ←/→ on a note picked with the mouse (see Pattern Panel → Editing a note's velocity & pitch).
| Control | Range | Default | Description |
|---|---|---|---|
| Vel | 0–1 | 0.8 | Note velocity (volume) |
| Pitch | -24 to 24 | 0 | Semitone offset from C3 |
| Pan | -1 to 1 | 0 | Per-note panning |
Triggers
| Control | Range | Default | Description |
|---|---|---|---|
| Every | 1–16 | 1 | Play every N-th loop (1 = every loop) |
| Pos | 0–15 | 0 | Phase offset for trigger frequency |
| Prob | 0–1 | 1 | Probability of triggering (1 = 100%) |
How triggers work:
A note triggers when: (currentLoop + pos) % every === 0
Retrig
| Control | Range | Default | Description |
|---|---|---|---|
| Retrig | 1–16 | 1 | Number of retrigger sub-hits |
| Rate | 1–16 | 1 | Spacing between retrigger hits |
| Eucl | 0–16 | 0 | Euclidean fill: adds N evenly-spaced sub-hits between this note and the next |
| Prob | 0–1 | 1 | Probability for retrig, euclidean, and arp sub-notes (1 = 100%) |
Euclidean fill: Adds N evenly-spaced notes between this note and the next note in the track, creating complex rhythmic patterns.
Retrig Prob: This probability controls whether retrig sub-hits, euclidean fill sub-hits, and arp sub-notes are actually played. The base note (first hit) is always played.
Arpeggiator
| Control | Options/Range | Default | Description |
|---|---|---|---|
| Scale | major, minor, pentatonic, etc. | major | Musical scale for arp intervals |
| Dir | up, down, updown | up | Arpeggio direction |
| Range | 0–12 | 0 | Number of arp notes (0 = disabled) |
How arpeggiator works:
- When
Range > 0, generates pitch offsets from the selected scale - Arp sub-notes use the Retrig Prob probability
6. Tools Panel
The Tools Panel opens when clicking the "Tools" button in the toolbar. It has three tabs: Pattern, Export, and Import.
Pattern Tab
| Button | Description |
|---|---|
| Compact | Detects repeating note patterns across tracks and adds loop points to minimize the number of notes |
| Rnd | Writes random notes into each track of the current pattern using the pattern generator |
Export Tab
| Button | Format | Description |
|---|---|---|
| Export PATTERN | .json |
Exports pattern data (strips defaults, keeps only changed values) |
| Export MIDI | .mid |
Exports as Standard MIDI File (SMF Type 1, multi-track) |
| Export WAV | .wav |
Renders audio using OfflineAudioContext |
| Control | Range | Default | Description |
|---|---|---|---|
| Loops | 1–32 | 1 | Number of times pattern loops in WAV/MIDI export |
Exports apply to the selected pattern. Filenames:
ordrumbox-{patternName}.{ext}
Which tracks are exported: the same rule as playback — if at least one track is soloed, only the soloed tracks are exported, otherwise every track that is not muted.
MIDI Export details:
- Standard MIDI File, Type 1, resolution 96 PPQN (1 engine tick = 3 MIDI ticks)
-
Track 0 (conductor): track name
orDrumbox Pattern, 4/4 time signature and the tempo of the pattern - Track 1+: one MIDI track per exported track, named after the track (a track without notes is omitted)
- Drum instruments → MIDI channel 10; melodic instruments get their own channel plus a Program Change
- Base note = the instrument's GM key, otherwise C3 (48); melodic samples with a root note use it as base. Pitch = track pitch + note pitch (+ pitch LFO)
- Velocity (0–127) is the note velocity × 127; a velocity LFO replaces it
- Every note is written as a fixed 16th-note (24 MIDI ticks) note on/off pair
- Not exported: pan, filter LFOs and other parameters without a MIDI equivalent
- Loops repeats the pattern in the file (each loop offset by the pattern length)
WAV Export details:
- Rendered offline (OfflineAudioContext) with the same engine and mixer as playback, including track effects
- Format: 16-bit PCM, stereo, 44.1 kHz
- Length =
beats × 60 / BPM × loops(8 beats at 120 BPM = 4 s per loop) - The button label changes to Exporting... until the file download starts
- The sounds of the exported tracks must be loaded — samples belonging to another drumkit are loaded on demand (see Track Editor → Sound)
Import Tab
| Button | Description |
|---|---|
| Import PATTERN | Opens file picker for .json files, imports as a new pattern |
| Import MIDI |
Opens file picker for .mid / .midi files, imports MIDI into new
pattern(s)
|
| Import Directory |
Opens folder picker for audio files (.wav, .flac), imports folder
contents as a new drumkit
|
7. Output Panel
The Output Panel opens when clicking the "Output" button in the toolbar. It provides master mixing controls and a real-time spectrum analyzer.
Master
The Volume tab features a rotary knob for master output volume, displayed above the real-time spectrum analyzer.
| Control | Range | Default | Description |
|---|---|---|---|
| Volume | 0–2 | 1.0 | Master output volume (rotary knob). Vertical drag or arrow keys to adjust. |
Filters (Master)
The filters section is part of the master bus signal chain, applied after the compressor.
| Control | Range | Default | Description |
|---|---|---|---|
| Low Cut | 10–500 Hz | 35 Hz | High-pass filter (removes low frequencies) |
| High Cut | 1000–20000 Hz | 18500 Hz | Low-pass filter (removes high frequencies) |
Compressor
The compressor section uses a VST-style rotary knob layout with a power button toggle. The signal chain
is: Pre-Gain → Compressor → Low-cut → High-cut → Master Gain.
The power button (⚡ icon, top-right) toggles the compressor on/off. Green glow = active, dimmed = bypassed.
| Control | Range | Default | Unit | Description |
|---|---|---|---|---|
| Pre-Gain | -20 to +20 | 0 | dB | Input gain before the compressor (rotary knob, separated below the other knobs) |
| Threshold | -40–0 | -18 | dB | Compression threshold (rotary knob) |
| Ratio | 1–20 | 8 | — | Compression ratio (rotary knob) |
| Attack | 0–1 | 0.002 | s | Response speed (rotary knob) |
| Release | 0–1 | 0.08 | s | Recovery speed (rotary knob) |
| Knee | 0–40 | 3 | dB | Curve softness (rotary knob) |
| Makeup | 0–24 | 8 | dB | Output gain to compensate for compression (rotary knob) |
Knob interaction: Vertical drag to change value. Arrow keys for precision (±step). Shift+drag or Shift+arrows for fine mode (±0.1 step). Double-click to reset to default. Right-click opens a numeric input to type an exact value (clamped to min/max and snapped to step). The same applies to the sliders (Loops, BPM, pattern settings).
Spectrum Analyzer
A real-time frequency spectrum display updated via requestAnimationFrame. Beats are colored
from dark (low amplitude) to red (high amplitude).
8. Synth Editor
The Synth Editor is a full-screen overlay for editing soft synthesizer parameters. It opens from the Track Editor's "Edit" button when a generated sound is selected.
Header: OK (saves changes) / Cancel (reverts) buttons.
Preset Management
The footer bar provides preset management controls:
| Control | Description |
|---|---|
| Preset selector | Dropdown to load a built-in or user preset |
| Save | Save current settings to the selected preset |
| Revert | Revert to the last saved state |
| + (New) | Create a new user preset |
| ⧉ (Duplicate) | Duplicate the current preset |
| ✕ (Delete) | Delete the current user preset |
Group Controls
Each parameter group (Oscillators, Filter, LFO, etc.) has a bypass/power button (LED toggle). When dimmed, the group is bypassed and its processing is skipped.
Visual Displays
- Waveform preview — Shows the oscillator output waveform (updated in real-time when playing)
- ADSR envelope canvas — Visual display of the attack/decay/sustain/release envelope shape
Master Volume
| Parameter | Range | Default | Description |
|---|---|---|---|
| masterVolume | 0–1 | 0.8 | Synth output volume |
| slide | 0–500 ms | 0 | Portamento/glide time between consecutive notes. When > 0, pitch slides smoothly from the previous note to the new one. |
Oscillators (VCO1, VCO2, VCO3)
Three independent oscillators with PolyBLEP anti-aliasing. Each oscillator has:
| Parameter | Range | Default | Description |
|---|---|---|---|
| gain | 0–1 | vco1:1, others:0 | Oscillator volume |
| octave | -4 to 4 | 0 | Octave offset |
| detune | -100 to 100 | 0 | Fine detuning in cents |
| wave | sine, triangle, sawtooth, square | sine | Waveform |
FM (Frequency Modulation)
| Parameter | Range | Default | Description |
|---|---|---|---|
| amount | 0–1 | 0 | FM depth. When > 0, modulators affect carrier frequency. The modulation amount scales the modulator output by ×1000 Hz. |
| algo | 0–4 | 0 | FM routing algorithm (see below) |
FM Algorithms:
| Algo | Routing | Description |
|---|---|---|
| 0 | 2 → 1 | VCO2 modulates VCO1 frequency |
| 1 | 3 → 1 | VCO3 modulates VCO1 frequency |
| 2 | 3 → 2 → 1 | Serial chain: VCO3 modulates VCO2, VCO2 modulates VCO1 |
| 3 | 2+3 → 1 | VCO2 and VCO3 both modulate VCO1 (parallel) |
| 4 | 2 ↔ 1 | Cross-modulation: VCO2 modulates VCO1 and VCO1 modulates VCO2 |
How FM works:
- At
amount = 0, oscillators run independently (standard subtractive mode). -
At
amount = 1, maximum frequency modulation is applied, creating complex sidebands. - Use the Algo selector to choose different modulation routings.
Filter
| Parameter | Range | Default | Description |
|---|---|---|---|
| type | lowpass, highpass, bandpass, notch | lowpass | Filter type (TPT SVF topology) |
| freq | 20–20000 Hz | 400 Hz | Cutoff frequency |
| Q | 0.1–24 | 1 | Resonance (higher = narrower peak at cutoff) |
| Env | 0–1 | 0 | Filter envelope modulation depth. When > 0, sweeps the cutoff frequency upward during the attack phase and back during the decay phase. |
Filter envelope behavior: When Env > 0, the cutoff frequency sweeps
from its base value toward 20 kHz during the attack time, then returns to the base value during the
decay time. At Env = 1, the sweep reaches the full 20 kHz range.
LFO
There are two independent LFOs (LFO and LFO2) with the same parameters:
| Parameter | Options/Range | Default | Description |
|---|---|---|---|
| target | see target list below | NOT (disabled) | Modulation target |
| wave | sine, triangle, sawtooth, square | sine | LFO waveform |
| freq | 0–20 | 0 | LFO rate in cycles per 4 beats |
| depth | 0–1 | 0 | Modulation depth |
| sync | off, 1/1, 1/2, 1/4, 1/8, 1/16, 1/8T, 1/16T | off | Tempo sync. When set to a note value, the LFO rate locks to the pattern BPM instead of the free-running freq. T = triplet. |
LFO Targets:
| Target | Description | Scale |
|---|---|---|
| NOT | LFO disabled | — |
| FLT | Filter cutoff frequency | ×1000 Hz |
| VCO1 | VCO1 coarse frequency modulation | ×1000 Hz |
| VCO2 | VCO2 coarse frequency modulation | ×1000 Hz |
| VCO3 | VCO3 coarse frequency modulation | ×1000 Hz |
| masterVolume | Master volume tremolo | ×1 |
| vco1.gain | VCO1 amplitude | ×1 |
| vco1.detune | VCO1 fine detune | ×100 cents |
| vco1.octave | VCO1 octave offset | ×1200 cents |
| vco2.gain | VCO2 amplitude | ×1 |
| vco2.detune | VCO2 fine detune | ×100 cents |
| vco2.octave | VCO2 octave offset | ×1200 cents |
| vco3.gain | VCO3 amplitude | ×1 |
| vco3.detune | VCO3 fine detune | ×100 cents |
| vco3.octave | VCO3 octave offset | ×1200 cents |
| filter.freq | Filter cutoff frequency (same as FLT) | ×1000 Hz |
| filter.filterEnvelopeAmount | Filter envelope depth | ×1000 |
| filter.Q | Filter resonance | ×24 |
| noise.mix | Noise generator level | ×1 |
Noise
| Parameter | Range | Default | Description |
|---|---|---|---|
| mix | 0–1 | 0 | White noise level (xorshift32 PRNG). Mixed with oscillator output. |
| filterType | lowpass, highpass, bandpass, notch | highpass | Noise filter type |
| filterFreq | 20–20000 | 1000 Hz | Noise filter cutoff |
| filterQ | 0.1–24 | 1 | Noise filter resonance |
Envelope (ADSR)
| Parameter | Range | Default | Description |
|---|---|---|---|
| attack | 0–0.5 s | 0 | Attack time (quadratic ease-in curve) |
| decay | 0–1 s | 0.12 | Decay time (cubic ease-out curve) |
| sustain | 0–1 | 1 | Sustain level |
| release | 0–0.5 s | 0.05 | Release time (cubic ease-out curve) |
9. Piano Roll
The Piano Roll is an alternative view to the Pattern Panel step grid. It displays notes on a vertical pitch axis (MIDI-style) with time on the horizontal axis. Open it from the toolbar or view switcher.
Layout
- Keys column (left): piano keyboard showing MIDI note names (C3, C#3, D3, etc.)
- Grid: time flows left-to-right, pitch flows bottom-to-top
- Note bars: horizontal rectangles — length = duration, vertical position = pitch
Interactions
| Action | Result |
|---|---|
| Click on empty grid | Creates a note at that pitch and time |
| Click on a note | Selects it, opens Note Editor |
| Click on selected note | Deletes it |
| Arrow keys | Move cursor (pitch up/down, time left/right) |
| Drag a note up / down | Velocity, +0.005 per pixel |
| Drag a note left / right | Pitch, one semitone per 12 px (the note moves to the new row) |
| Shift + ↑ / ↓ (note selected) | Velocity ±0.05 on the selected note |
| Shift + ← / → (note selected) | Pitch ±1 semitone on the selected note |
| Enter | Create or toggle note at cursor position |
| Right-click grid | Note menu: Add note, Delete note, Add minor chord, Add major chord (chord uses the clicked pitch as root) |
| Right-click keyboard | Keys menu: Clear all (wipes track notes), Add sequence (replaces notes with one chord per 4-beat measure from the standard progression library — clicked key is the tonic; sequences cycle on each use) |
Editing velocity & pitch: dragging a note and Shift + Arrow on the selected note edit its velocity (up/down) and pitch (left/right), with the same editing gauge as the pattern grid: arc, note name, new value, and a ring on the note. The note is previewed while it changes, a drag never deletes it, and the whole gesture undoes as one step. The pitch is kept inside the visible keyboard (MIDI 12–108, shifted by the track pitch), so a note can never be transposed off the grid.
Page navigation: The piano roll displays one page of beats at a time (default: 4 beats). Use the page buttons in the toolbar to navigate between pages.
10. Patterns Panel
The Patterns Panel manages all patterns in the current song. Open it from the toolbar pattern selector.
Pattern List
- Shows all patterns in the current song
- Click a pattern to select it and load it into the sequencer
- Double-click a pattern name to rename it
Actions
| Button | Description |
|---|---|
| + Pattern | Adds a new empty pattern to the song |
| Rename | Rename the selected pattern |
| Delete | Delete the selected pattern (with confirmation) |
| Save Song | Save the entire song (all patterns) to IndexedDB |
| Load Song | Load a previously saved song from IndexedDB |
Song Name
Double-click the song name at the top to rename it. Default: "Untitled".
11. Pattern Settings
The Pattern Settings panel provides quick access to pattern-level parameters. On mobile, it opens from the toolbar gear icon. On desktop, it's accessible from the toolbar.
| Control | Range | Description |
|---|---|---|
| Page | P1, P2, ... | Navigate between pages of the pattern (each page = 4 beats by default) |
| Beats | 1–16 | Number of beats in the pattern |
| Drumkit | all kits | Switch drumkit — same rule as the toolbar Kit control (only tracks with auto enabled are re-assigned) |
| Pattern | all patterns | Switch to a different pattern |
| Generation | Drum / Bass / Chords | Auto-generate notes for the selected category using the pattern generator |
12. Drumkit Manager
The Drumkit Manager lets you inspect and edit individual samples in a drumkit. Open it from the toolbar or Track Editor.
Header Actions
| Button | Description |
|---|---|
| ↓ Save | Export current drumkit as a .json file |
| ↑ Load | Import a drumkit from a .json file |
Sound List
- Lists all samples in the currently loaded drumkit
- Click a sample to select it and view details
- Each sample row has a ▶ play button to audition the sound
Sample Details
| Control | Range | Description |
|---|---|---|
| ▶ Play | — | Audition the selected sample |
| Waveform | — | Visual display of the sample waveform |
| Info | — | Peak dB, RMS dB, duration, detected note |
| Tune | -12 to +12 st | Coarse pitch tuning in semitones |
| Decay | 0–5000 ms | Decay time in milliseconds (used by Track Editor decay knob) |
| Gain | -24 to +6 dB | Output gain trim |
| Replace | — | Replace sample with another audio file |
| Remove | — | Remove sample from the kit |
| Kit | all kits | Move sample to a different drumkit |
| Instrument | all instruments | Change instrument assignment (KICK, SNARE, etc.) |
Footer Actions
| Button | Description |
|---|---|
| + Add | Add a WAV/FLAC/MP3/AAC audio file to the current kit |
| Auto-detect | Auto-detect and assign instruments for all tracks in the kit |
| Normalize | Normalize all samples to 0 dB peak |
13. About Panel
The About Panel displays application information and PWA installation options. Open it from the toolbar.
Info Tab
| Field | Value |
|---|---|
| Name | OrDrumbox |
| Version | 2.0.0 |
| License | GPL-3.0-only |
PWA Tab
- Install App — Button to install orDrumbox as a Progressive Web App (appears when supported by the browser)
- Website — Link to ordrumbox.com
- Source — Link to the GitHub repository
14. Mobile Tab Bar
On mobile viewports (width ≤ 768px), a bottom tab bar replaces the toolbar for navigation between views.
Tabs
| Tab | View | Description |
|---|---|---|
| Sequencer | Pattern grid | Step sequencer view (default on mobile) |
| Track | Track Editor | Opens the Track Editor for the selected track |
| Synth | Synth Editor | Opens the Synth Editor (if a synth sound is selected) |
| Tools | Tools Panel | Opens the Tools panel (export/import, settings) |
The active tab is highlighted. Tapping the same tab again does nothing. Switching views dispatches the corresponding event and updates the main display.
15. Keyboard Shortcuts
| Key | Action |
|---|---|
| Space | Start/Stop playback |
| B | Auto-generate a new pattern |
| F | Switch to a random pattern |
| G | Switch to a random drumkit |
| H | Convert all tracks to soft-synth sounds |
| J | Auto-assign sounds to all tracks |
| K | Assign a random sample to each track |
| V | Toggle VU meters and waveform overlay |
| 1–9 | Toggle mute for tracks 1–9 |
| Q, W, E, R, T, Y, U, I, O, P | Preview (audition) tracks 1–10 |
| Ctrl/Cmd + S | Export the current pattern as a JSON file |
| Ctrl/Cmd + N | Add a new pattern |
| Ctrl/Cmd + D | Duplicate the current pattern |
| Ctrl/Cmd + Z | Undo |
| Ctrl/Cmd + Y | Redo |
| Arrow | Adjust focused slider by one step · move pattern-grid cursor |
| Shift + Arrow | Adjust focused slider by 10 steps · extend multi-step selection in the pattern grid · edit the selected note (↑/↓ velocity, ←/→ pitch) in the pattern grid (note picked with the mouse) and in the piano roll |
| Drag a note (grid cell / piano roll) | Up/down = velocity, left/right = pitch · the editing gauge appears · one undo step per gesture |
| Alt/Option + Arrow | Adjust focused slider by 0.1 step (fine) |
| Delete / Backspace | Delete selected note(s) in the pattern grid |
| Escape | Clear pattern-grid cursor / selection |
| Ctrl/Cmd + C | Copy notes at the cursor step (or the track when no cursor) |
| Ctrl/Cmd + Shift + C | Copy the whole track |
| Ctrl/Cmd + V | Paste clipboard (step notes, or track when clipboard holds a track) |
| Right-click track row | Track menu: Copy track, Paste tracks, Duplicate track, Delete track, Randomize, Clear notes |
| Right-click cell | Cell menu: Copy notes, Paste notes, Delete note, Add rnd note |
| Right-click knob / slider | Numeric input: type an exact value instead of dragging |
Context menus (pattern grid, piano roll) show their target in the header — track name, step or key. Entries that do not apply (empty clipboard, no note under the cursor) are greyed out. A menu closes on outside click, on another right-click or on Escape.
16. Audio Signal Flow
Per-Track Signal Chain
Sample/Synth → Filter → Saturation → Dry Gain → Reverb → Delay → Stereo Panner → Mixer Bus
Master Bus Signal Chain
Mixer Bus → Pre-Gain → Compressor → Low-cut Filter (35 Hz) → High-cut Filter (18.5 kHz) → Master Gain → Analyser → Speakers
All tracks feed into a shared mixer bus. The master bus applies pre-gain, then compression, then filters and final gain before reaching the output.
17. Installation & Offline Use
orDrumbox v2 can be used in three different ways:
1. Web Application
Simply visit the website in any modern browser. Note that an internet connection is required for the initial load.
2. Progressive Web App (PWA)
You can install orDrumbox directly from your browser:
- Desktop (Chrome/Edge): Click the "Install" icon in the address bar.
- Mobile (iOS/Android): Use "Add to Home Screen" from the browser menu.
Once installed, the application will have its own icon and window, and can function offline thanks to the integrated Service Worker.
3. Desktop Application
orDrumbox will be available soon