Created on July 4th, 2008 by Andrew Robertson

Please submit any questions back to andrew.robertson@eecs.qmul.ac.uk

System requirements: Mac OS X

  • You already have Ableton Live.
  • Download Max6, including MaxForLive demo, or have a working version of MaxForLive installed.
  • download B-Keeper - there's a link here on the main page. It's located at Github.com/Venetian. You'll be able to click "download as zip" there. This contains a READ_ME to explain things.
  • It also contains "externals" - these are code objects that Max For Live needs to find to get this working. These are bonk.mxo, BKeeper.mxo, BKStarter.mxo. Move these to:


    If Live is open, quit, and now re-open Live.

    Run Live in 32 bit mode
    Plugins will be compiled for 64 bit, but at the moment, they are 32 bit mode. Look in Live preferences to check. Setting up
    Open B-KeeperAudioProject (a Live set). This should have a stereo track for the drums with the B-Keeper max for live device (BKeeper4Live_VersionX.amxd). If you route a kick (left) and snare (right) to this track, you should see a level (in green).

    If the orange lights do not light up, then bonk is not registering the drum events. Check that bonk is installed okay.

    Supposing that's okay, let's test this with a recorded file first before trying live input. Download Simple rock beat test files here. These are a good example of a fairly steady simple beat but simulate the kind of input the plugin expects.

    Testing with recorded files
    To use recorded files, click on "expert" and this opens a panel. This should have decent values for things like 'response' and the setting should automatically be saved. If these are all at zero for any reason, make response something like 0.6, this will adjust the rest. Then click on "Recorded Files". This opens another small window to open a Kick and Snare track. Open the example ones. Then click on "Play". You'll hear the snare click in. Check on B-Keeper that this lights up the orange light. The intro setting is used as a threshold here. B-Keeper can either start Live using this "count in" or respond when Live is started independently (e.g. TAP button, or pressing play). So if the count in is set to 4, it looks for 4 regular clicks of a drum stick to then start.

    So one main check point - is the Orange Light flashing when you play the file? If not, something is up with the bonk detection process - have the externals been loaded okay? Try lowering the threshold for 'intro'. Does it register a level in the number box?

    If this process successfully starts Live, does the tempo respond to the drums so the Live set stays in time? IF so, B-Keeper is working.

    max window
    One really useful way to see what's happening and troubleshoot is to open the Max Window. Do this by right-clicking on the B-Keeper device and select open max window from the menu. If one of the externals hasn't loaded, it should be highlighted in red at the beginning.

    B-Keeper knows where Live is using a click track, similar to the one sent out the cue. It is set to use the "internal" click, but this is instant so there may be a timing difference due to the time it takes for a kick event to come through the audio buffer. This can be set in Ableton, and is typically something like 128 samples, i.e. 2.5msec. Then there is the latency from the time is takes for the kick to be detected as an "event". To compensate automatically for this, you could use the external click. This is a seperate max device. Send the cue out of an audio channel (eg channel 5). Now connect a jack lead to channel-5 out and send it back in say channel 3. On the extClick track, monitor channel 3 in. This should now flash an orange light when the click is received. Then on B-Keeper device, you can set it to "external" click. It is possible to measure the latency this way and to compensate for it when using the internal one.

    Other example drum files: speedupdrums