What it is

MidiDrums is a software MIDI drum machine. I developed it because I wanted to drive my Yamaha Motif Rack ES (so I didn't need a sample-based application), I didn't like any of the free MIDI-only drum machines I found on the Internet and I wanted something simpler and more targeted than my Sonar home studio 4.
MidiDrums Version 1.0

Windows screenshot

Features

"Drum maps" describe the relationship between MIDI notes and percussive sounds generated by the output device. You can use one of the default maps or define your own, using XML. The XML format I use should be self-explaining for anyone who knows what we are talking about here. MidiDrums comes with "General MIDI", "Roland GS", "Yamaha XG" and "Yamaha Motif Rack ES" maps. As is the case with the Motif, a map can also define a MIDI initialization sequence for the target device.

Each document can contain up to 40 patterns, each made of 1-8 quarter notes, each divided in 1-24 beats. A document can also define a single song, assembled with the available patterns. Documents are archived as XML files. Each document can refer to different devices and to a different drum map.

Beats can have some "swing", i.e. a randomly applied time variation within a given percentage range. Each "event" has user defined probability and velocity ranges.

MIDI files can be imported with reasonably successful results.

Playback start, stop and pause, as well as the current mode, pattern and tempo can be controlled via MIDI control change messages.

MidiDrums can act as a MIDI clock sync master.

The Windows version runs on XP, Vista and 7 and is distributed as shareware. This means that if you use this software, you are required to make a donation through the PayPal button below.

Click here to see the terms of the license agreement under which the Windows version of the software is distributed.

Get it from CNET Download.com!  
 

How it works

While I like to write software, I hate writing manuals, so this page is all the help you will get... But MidiDrums should be rather easy to use. Remember that you need to select a MIDI output device to hear something: click on the "File..." button and choose the "MIDI devices..." command to do this. Enjoy!

1

Each row represents an "instrument", that is, a MIDI note that, when sent to the output device, is expected to produce the corresponding instrument sound. Instruments are shown according to the current drum map 27, bank 32 and patch 33 settings. Every instrument belongs to a category between "Bass drums", "Snare drums", "Brushes", "Hi-hats", "Tom toms", "Cymbals", "Percussions", "Effects" and "Undefined". Left-click the instrument's image to hear its sound. Right-click to open menu B, to apply standard editing commands to the instrument's events as a whole or to control instruments visibility or ordering.

2

This is the individual "solo" switch for the instrument. You can also switch "solo" for all instruments at once using 18.

3

This is the individual "mute" switch for the instrument. You can also switch "mute" for all instruments at once using 17.

4

Left-click this button to switch on and off the corresponding beat for the instrument, or "event". Right-click to open menu E, to apply standard editing commands to the event, to open the event's properties dialog or to assign a "swing" percentage to the whole beat. Warning: when you switch off the event, you lose its properties.

5

This slider controls the probability that this beat will be played, its range is 0-100%. You can use it to add some random variations to a pattern.

6

This slider defines the velocity range for the beat. The actual velocity will be randomly calculated within this range each time the beat is played. Click and drag within the slider to adjust the minimum and maximum velocity, that of course can coincide, thus producing each time the same output.

7

Left-click this button to open the main menu A. When the current document has been modified, this button is lighted with red.

8

Use this button to decrease tempo by 10 beats per minute.

9

Use this button to increase tempo by 10 beats per minute.

10

This displays the current tempo in quarter notes per minute. Click it to enter a specific value between 8 and 1000 beats per minute. You can also set tempo using a MIDI control change message. MSB: Controller: 0x10, LSB: Controller: 0x30, value 0x0008-0x03E8.

11

This button stops playback. You can also stop playback using a MIDI control change message. Controller: 0x0F, value 0x00.

12

This button pauses playback. You can also stop playback using a MIDI control change message. Controller: 0x0F, value 0x02.

13

This button starts playback of the current pattern, when in pattern mode, or of the song. You can also stop playback using a MIDI control change message. Controller: 0x0F, value 0x01.

14

Each button appearing in this space represents an existing pattern. The current pattern, that whose events structure is visible and whose name appears in 15, is shown in green. At most 40 patterns can be defined for a document. Left-click to select the current pattern, right-click to open menu D, to duplicate or delete the pattern, or to remove all of its events. Right-clicking in the empty space will open menu C, to create a new empty pattern. See also d, m and s. You can also select a pattern using a MIDI control change message. Controller: 0x20, value 0x00-0x27.

15

This is the name of the current pattern. Left-click it to change it.

16

This selects "pattern" mode. When in this mode, 34 is hidden and, if 13 is pushed, the current pattern is repeated time after time, altough you can select another pattern, which will start playing as soon as the current repetition ends. This switch is disabled during playback. You can also select pattern mode using a MIDI control change message. Controller: 0x0E, value 0x00-0x3F.

17

This switches all instruments mute switches 3 on or off at once. It is lighted when at least one individual mute switch is on.

18

This switches all instruments solo switches 2 on or off at once. It is lighted when at least one individual solo switch is on.

19

This is the number of beats per quarter note of the current pattern. Left-click to input a new value, which must be between 1 and 24.

20

This is the number of quarter notes per pattern of the current pattern. Left-click to input a new value, which must be between 1 and 8.

21

Use this switch to disable the effect of the current solo switches 2 settings without changing them. It is available when at least one individual solo switch is on.

22

Use this switch to disable the effect of the current mute switches 3 settings without changing them. It is available when at least one individual mute switch is on.

23

This selects "song" mode, showing 34. You can also select song mode using a MIDI control change message. Controller: 0x0E, value 0x40-0x7F.

24

This shows the current MIDI device used to receive control messages. You can change it clicking on 7, then selecting "MIDI devices...".

25

This shows the current MIDI device used for notes output. You can change it clicking on 7, then selecting "MIDI devices...".

26

This shows the current MIDI device used for sync messages output. You can change it clicking on 7, then selecting "MIDI devices...".

27

This shows the current drum map. You can change it clicking on 7, then selecting "Drum map...".

28

Click this button to select one of the patches defined within the current drum map, using menu H.

29

Click this button to select the MIDI channel for notes output, using menu G.

30

Click this button to select one of the banks defined within the current drum map, using menu F.

31

This is the current MIDI channel for notes output.

32

This is the current drum map bank.

33

This is the current drum map patch.

34

This space shows the current song structure and is only visible when 23 is on. A song is a sequence of steps, represented as buttons, each defined by a pattern and a number of repetitions. To add a step just drag here a pattern. Right-click upon the step button to open a menu to assign its repetitions or to delete it. During song playback, the current step is lighted with green.

35

This is a song step. Right-click to open menu I, to delete the step or to change the number of its repetitions.
  1. You can drag and drop a pattern inside this area to duplicate it.
  2. You can drag and drop a pattern upon another to merge them.
  3. You can drag and drop a pattern here to add a step to the song.
  4. You can drag and drop a step to change its position within the song.