4:3

 
 bpm    :
 bpm    :
 bpm
Time

      Extra info    Add total beats Background image
url position  size 
Background video Muted Volume
 


Simple time:               

Compound time:
  Odd time:     

Polyrhythms: Never repeat:

Measure is secs, Rhythm to play: : :

Phased by : : measure

Increase tempo (EXPERIMENTAL) for part by bpm every measures

Play then silent

Play Silent measures
(can be fractional).
Go silent for parts 2 and 3 independently of part 1
Part 2 play Silent
Part 3 play Silent

Decreasing click then silent
How fast to decrease volume (default 2, inverse square, use 1 for linear, 3 for inverse cube etc)

Stereo pan adjustments  
Pan depth and height
Pan depth
Pan height

Play samples
Play drum kit Drum kit adjustments Simple audio for drum kit (older browsers, less precise) Add reverb and pitch changes.
Drum kit volume

Instruments:
 
:
Kick
:
Snare

Hi hat
Range 1 to 6:
 


WebAudio Drum Machine 1.0
Tom 1
Tom 2
Tom 3
Hi-Hat
Snare
Kick
Kit
    Effect
      Tempo
       bpm
      Swing
      Effect Level
      Kick Pitch
      [1]
      Snare Pitch
      [2]
      Hi-Hat Pitch
      [3]
      Tom 1 Pitch
      [4]
      Tom 2 Pitch
      [5]
      Tom 3 Pitch
      [6]
      Beat Demo

      Save a Beat

      For security reasons, web browsers don't make it easy to save files directly to your hard drive. But to save your beat just copy and paste the data block below into a text file. To load the beat later click the Load button then paste the data block from your text file into the blank window.

      Load a Beat

      Paste the beat data into the blank window below and click OK.

      Input: Output:

      When adjusting the sliders you need to click on the thumb and drag for a short distance to pick it up. It will then move up or down following the mouse. Click on it a second time to put it down.

      Show Chris Rogers and Ken Moore's drum_machine (see code notes)

      Play beeps Beep adjustments

      Beep volumes, waveform and pitch



      Auto set the other parts to this waveform




      1/1 : (for notes as ratios or cents)

      You can use any of these notations for the pitches of the notes:

      • Hertz, e.g.. 261.625565 for middle C,
      • Note names in scientific pitch notation eg. C4 for middle C etc (use 'b' for flats, # for sharps)
      • Cents with an apostrophey: 350.0'. There 100 cents = one semitone.
      • Frequency ratios use e.g. 5/4 for the interval from the from the foruth to the fifth harmonic - a pure major third.

      Cents or ratios give musical interval from specified 1/1.

      Beep attack and duration Attack (ms)   Duration (secs)

      Skip simultaneous notes - play left-most ball only
      Delay clicks
      by ms - like following a conductor who beats ahead of the music (1000 ms = 1 second)

      Use css Schedule notes in advance for sample-precise timing of audio

      By measures and by notes (default: 0 measures and 1 note)

      NOTE: this method leads to exceptionally precise timing of the sounds. Select this for the highest precision audio. However, depending on your browser and hardware, it may cause the bounce animations to drift relative to the clicks over periods of minutes. This option is not available for "simple audio".

      More details:

      Though this option lets the clicks be scheduled with exceptional precision, exact to the audio sample, the bounce animations may use a different clock. If so, the sounds and the bounce may drift out of sync over long periods of minutes. They may be using a physically different clock on your hardware. If I understand this discussion right, there is no way to fix this.

      In tests on my development computer, then Firefox doesn't seem to drift but Edge and Chrome do. So, it depends on which browser you use as well as your hardware. The drift is not necessarily constant but varies slightly. On my development machine then you can play for several minutes with no drift at all, or you may get noticeable drift within a few minutes. When it happens, it is only a drift of a small fraction of a bpm, but enough to go out of sync if you play for several minutes.

      Techy details: when this is selected, it uses the sample precise timing of the new AudioContext interface, which is based on scheduling streaming audio with the notes at the correct position in the audio stream - while the css animations use whatever clock the browser uses for them, most likely the system clock.

      When this option is unselected the notes are played right away in response to a callback from the bounce animations which then means the sound and animation are running on the same clock - whatever clock is used for the css. When the option is selected the notes are scheduled in advance at precise moments in a continuous audio stream.

      You can use the following debug info checkbox to check up on the amount of the drift, if you are affected by this.

      Add debug info to extra info

      The numbers displayed are:

      css elapsed time [audio context time, system time]

      The drift is the drift of the css elapsed time relative to the audiocontext time. Displayed as a percentage as: 100 * (css time - audio context time).

      I've got a question about this on StackExchange here


      Fully supported in Chrome or Firefox.
      Edge does just about everything else but can't play the drum kit sounds with reverb or vary the pitch of the instruments yet.
      In Internet Explorer 11, you can't do anything except show / hide elements - it plays 4/4, 4:3 and 1/4, and you can do a 3/4 by selecting 4:3 and setting the first number to 0, ignores the displayed tempi.

      This page last updated 28th March 2019

      Code credits and sources

      The drum kit uses the free source code for the Midi drums Github project by Chris Rogers and Ken Moore to which I've added a few extra sounds such as cowbell, claves and frog block. Included as a way to add sounds to the metronome. The drum machine is not connected with the metronome. You can try the original here and get the source code for your own projects here. I haven't changed anything except to add those extra sounds.

      If you unselect "Add reverb and pitch changes" then the code uses the Sounds.js library to play the sounds instead (playing the same samples in a different way).

      The Simple audio check box when selected uses a much simpler approach compatible with earlier browsers. It creates audio elements using

      audio=new Audio(source);
      audio.volume=volume;
      audio.play();

      if already playing it uses

      audio.pause();

      and it alternates between two duplicate audio elements for each ballin order to have no delay between pausing and playing the next sound.

      The bounce animation is based on this tutorial and this code example. It is animated entirely in css. This means that it is browser optimized more than is usually possible in javascript. The browser handles skipping frames without impacting on the clock. The notes are played in response to event listeners - this means that it doesn't use the Javascript scheduling, which is not a very robust way of timing notes. Instead it uses whatever clock the browser is using in its source code. If there is too much load on the computer for some reason, then it skips beats but the notes it does play continue to be reasonably in time in my testing - preferred behaviour for a metronome rather than delaying notes.

      You can enter expressions such as ratios, powers etc into most of the text fields. To parse these the code uses Peter Olsen's code example How to write a simple interpreter in JavaScript to which I just added support for the golden ratio as an extra constant ϕ in evaluator.js. I needed to use a custom expression evaluator becuase the Javascript eval() routine is considered unsafe, and could potentlially make this website vulnerable to hackers.

      The

      Media credits and sources

      (mid edit)

      The backgrounds are

      I have duplicated them with their mirror images to make a seamless background if the user has a very wide screen or spread over two monitors etc.

      The sounds are the ones included with the Midi drums github project to which I've added:

      • Abbey Drums, Session kit, Tabla, African percussion are all samples made with Kontakt instruments in the factory presets
      • Cymatics snare from their free and royalty free snare samples
      • Sonic bloom's metronome sounds are from the 3 Free Sets of Metronome Sounds by Madeleine Bloom.
      • Mechanical Clock, Claps and Sploshes are from Nikolay Georgiev's free downloads page.
      • Philharmonia - from the Philharmonia orchestra sound samples download page.
      • Most of Clicks and clocks, as well as Tennis come from FreeSound - where I know there can be issues of people uploading things they are not copyright owners of but from the descriptions these seemed pretty clear were just ones they made themselves.s
      • The reverbs include ones that come with the Midi Drums GitHub project, ogether with two of Nikolay Georgiev's sploshes and his clap in a wooden floored room used as impulse response, and many impulse responses from the collections Air Windows by Chris Johnson, and EchoThief.

       


      You can also use this as a web page for free here.


      Get Bounce Metronome Pro

      You can get the desktop app Bounce Metronome Pro for Windows (desktop) and Linux to play these and many more rhythms and with many more options and features

      Rhythms

      Set almost any rhythm - simple, compound and odd time, subdivisions, swing, drum rudiments, polyrhythms, additive,...

      Find out more about its Rhythms »

      Tempo

      Easy to set, with unlimited range, accelerating tempo, tap at tempo, speed drills & auto switching time signatures ...

      Find out more about its Tempo features »

      Sounds

      Hear the rhythm clearly, with accents, on any midi instruments or as beeps, beat boxing support, chords,, ...

      Find out more about its Sounds and accents »

      Bounce

      Bounce visual effects, bouncing in conducting patterns, beat and sub-beat counts, also can use as a silent metronome ...

      Find out more about its Bounce visuals »


      “There's something about the bounce that keeps the practicing vibrant. It's a great and fun tool.”, Dan Axelrod - more testimonials and reviews »

      The first animation in this video shows the sprite bouncing in a conducting pattern. Note: the sprites are just for fun, you can set it to any image, any background, also white 3D baton, drum stick etc. The article mentioned at the end of the animation is: Pure Tones For Healing - Harmonious Lissajous Knots - Pendulum Waves - Sloth Canon Music From Numbers

      Professional musicians are amazed by its advanced rhythm capabilities and advanced tempo features. These include speed drills, tempo and rhythm sequences, and almost any rhythm you can imagine.

      Beginners find the bounce wonderfully easy to work with. The beginner's metronome is yours to keep whether or not you try or buy the lite or pro versions. All versions of Bounce Metronome are accessible for deaf, visually impaired, and blind musicians


      Home page - Merging with metronome clicks for timing senstivity - Review by Martin Walker - Video resources - Review by Gary Eskow - Review by Aaron Wolf - Walkthrough videos of Bounce - Choose your version - Buy now

      (screenshot of this page for social media sharing preview)