I made a video about how to instantly convert audio to MIDI, which works pretty well for monophonic sources. A lot of people requested a version of this for drums!
There are two methods, a native way that you can do without installing anything else and works well, and a script way that speeds up the process significantly and gives you more accurate results.
📹 Watch the video
The example song I used in this video was made by my good friend Christian Richardson! The song's name is Hazy. Check out his album here.
✏️ Method 1: The native way
For this method, you don’t have to install anything. REAPER has its own audio to MIDI drum trigger that works pretty well, and I have used it for many years.
All you need to do is duplicate the track you want to convert to MIDI and add the FX called JS: Audio to MIDI Drum Trigger. Inside you will find different parameters to adjust how the trigger reacts to the audio that is being fed in.
Next, I suggest loading a sampler. You can load your favorite sampler or just use REAPER’s stock sampler called Reasamplomatic5000. If you use the latter, make sure you set the mode to “Sample (ignore MIDI note)”.
After loading the sampler, you can start adjusting the parameters of JS: Audio to MIDI Drum Trigger.
One trick to help you visualize the threshold is running the action called Transient detection sensitivity/threshold: Adjust… via the Actions menu (shortcut: ?). In here, you can check the box that says “display threshold” and you will start to see a yellow line that will react to you moving the threshold slider. Once you find the right threshold, you can copy over the number into JS: Audio to MIDI Drum Trigger.
Once you are happy with the settings, you are ready to convert the audio into MIDI. You can do so by right-clicking the audio item and selecting “Apply track take FX to items (MIDI output)”. This will give you your final MIDI item.
Feel free to adjust anything that sounds off. Maybe some hits are too early or too late. Or maybe you don’t need some hits. It helps a lot setting the MIDI into inline mode by pressing E.
🚀 Method 2: The script way
For this method, you need ReaPack installed. If not, I have created a tutorial on how to install it: How to install ReaPack.
The script we are going to use is called MKSlicer, it’s made by cool and it’s amazing!
To use the script, open the Actions menu (shortcut: ?) and search for "MKSlicer". I recommend setting this up in one of your toolbars! ⭐️
This script is just incredible. You have a lot more control of the outcome of your MIDI. And I absolutely love how it just has its own timeline and it synchronizes with your REAPER timeline.
A quick start on how to use this is to go from bottom left to right. Use the filter parameters and threshold parameters to get the most accurate markings. The red waveform is the filtered signal and the blue is the original signal. You can add or get rid of markings by right-clicking on it.
Once you are happy with the markings, you can set the MIDI mode to Trigger, set the MIDI note that you want and you can even include the velocity range based on Peak or RMS. Click on Create and this will create a new track below your processed track with all of the MIDI.
🔍 I suggest reading the forum thread for a very detailed explanation of how this script works and all the cool things you can do with it!
And if you love the script, I highly encourage you to support the developer! This script was very much needed in REAPER and it’s incredibly helpful.
That’s it!
I hope that’s useful. If you haven't watched my video on how to instantly convert any audio into MIDI in REAPER, check it out! It’s got a super cool custom action that converts audio to MIDI instantly.