How to use it
Press Play or the Space bar. The first press also switches the sound on. The grid has eight drum tracks and sixteen steps, and a playhead loops through them. Tap a step once to switch it on, again to make it an accent (louder, marked with >) and a third time to switch it off.
On a phone, pick a track from the eight tabs and edit its steps on the large buttons below. The dots in each tab show that track’s pattern. Your beat is saved in this browser automatically.
Controls
- Transport: Play/Stop, tempo from 60 to 200 BPM (slider, number box or Tap), swing from 0 to 60 % and master volume.
- Tracks: M mutes a track and S solos it. Each track has a volume slider and one sound control, tune or decay.
- Patterns: A, B, C and D hold four separate bars. Copy and Paste move a bar between them, Chain plays the non-empty patterns in order, Clear empties the current one and Random fills it with a plausible beat.
- Kits and presets: three kits (Punchy, Electro, Lo-Fi) change how every drum is synthesized. Ten preset beats load a pattern with its tempo and swing.
- Pads: eight pads, or the keys 1 to 8, play the drums directly. With recording on, hits made while the pattern plays snap to the nearest step.
- Keyboard: Space plays and stops, the arrow keys move around the grid and Enter changes the focused step.
- Export and share: Export WAV renders 1, 2 or 4 bars to a sound file. Copy link stores the whole beat in the address.
How it works
A step sequencer divides a bar into equal steps and stores, for each drum, which steps are on. Here one step is a sixteenth note. BPM counts quarter notes per minute, and a quarter note holds four sixteenths, so:
At 120 BPM a step lasts 0.125 s and the 16-step bar lasts 2 s. JavaScript timers can run many milliseconds late, so the timer only wakes a scheduler about every 25 ms. The scheduler places every note due in the next 120 ms on the audio clock, which starts sounds with sample accuracy.
Swing delays every second sixteenth (steps 2, 4, 6 and so on) by the chosen percentage of one step. At about 33 % each pair of steps is split 2:1, the triplet shuffle of blues and jazz. 50 % gives a 3:1 split.
Each drum is built from oscillators and noise when it is triggered. In the Punchy kit:
- Kick: a sine wave whose pitch falls from about 180 Hz to 54 Hz in 55 ms while its volume fades, plus a short noise click.
- Snare: a short triangle-wave tone near 190 Hz for the drum head and high-passed white noise for the snare wires.
- Hats: white noise through a high-pass filter around 7 kHz. The closed hat fades in about 50 ms, the open hat in about 0.8 s, and a closed hat cuts off a ringing open hat.
- Clap: band-passed noise near 1.2 kHz in three bursts about 11 ms apart, then a longer tail, like several hands landing slightly apart.
- Tom: a sine wave with a smaller pitch drop and a longer fade.
- Rim: two very short tones, about 470 Hz and 1.7 kHz, with a noise click.
- Bell: two square waves at about 560 and 845 Hz through a band-pass filter, a cowbell-like clank.
An accent plays a step at full level. A normal step plays at 60 % of that, about 4.4 dB quieter. All tracks pass through the master volume and a limiter that keeps loud combinations from distorting.
Things to try
- Load Rock and add kicks on steps 7 and 8 to hear how a busier bass drum changes the feel.
- Load Hip-Hop and sweep the swing from 0 to 40 %. The groove goes from stiff to lazy.
- Clear a pattern, put an open hat on step 1 and a closed hat on step 5, then move the closed hat to step 2 and hear the open hat cut short.
- In the Electro kit, turn the kick decay up for a long, booming bass drum.
- Build a bar in A, copy it to B, add a tom fill on the last steps of B and switch on Chain.
Frequently asked questions
Why is there no sound until I press Play?
Browsers block audio until you interact with the page. Play, a pad, a track name or the Space bar all start it.
Why do Bossa and Shuffle show such a slow tempo?
In these two presets each step is used as an eighth note, so the sixteen steps cover two bars. The tempo you feel is twice the number shown.
What is in the exported WAV file?
The current pattern, or the chain if Chain is on, at 44.1 kHz, 16-bit, mono. The file is exactly as long as the bars you chose, and sound ringing past the end is carried into the start, so it loops without a gap.
Is my beat sent anywhere?
No. Everything runs in your browser and the beat is kept in its local storage. A share link carries the beat in its own address, so whoever opens it gets a copy.