MIDI - A Comprehensive Guide | Part 1 - MIDI for Learning

In this post, I'll talk about MIDI. What it is and -more beneficially- how we can use it to our advantage.
To create, but in this post mainly - to learn.

Hi Everybody! What's up?

Have you ever heard of MIDI? Experienced its wonderful benefits?
Yes? Great! Let's see if I can show you something cool which you didn't know yet.
No? You're going to love this post. I hope 🙂

So what exactly is MIDI and what can we do with it?

Definition (courtesy of Wikipedia)

MIDI (/ˈmɪdi/; short for Musical Instrument Digital Interface) is a technical standard that describes a protocol, digital interface and connectors and allows a wide variety of electronic musical instruments, computers and other related devices to connect and communicate with one another. A single MIDI link can carry up to sixteen channels of information, each of which can be routed to a separate device.

MIDI carries event messages that specify notation, pitch and velocity, control signals for parameters such as volume, vibrato, audio panning, cues, and clock signals that set and synchronize tempo between multiple devices. These messages are sent via a MIDI cable to other devices where they control sound generation and other features. A simple example of a MIDI setup is the use of a MIDI controller such as an electronic musical keyboard to trigger sounds created by a sound module. This MIDI data can also be recorded into a hardware or software device called a sequencer, which can be used to edit the data and to play it back at a later time.

Advantages of MIDI include compactness (an entire song can be coded in a few hundred lines, i.e. in a few kilobytes), ease of modification and manipulation and a wide choice of electronic instruments and synthesizer or digitally-sampled sounds.

In English

So much for Wiki's definition, which I can tell you, is quite bullet-proof. Hence the citation.

However, for those of you that are not computer-wizards nor professional musicians, let me try and explain this in plain English and expound upon the usefulness of this wonderful "protocol."

Upfront warning: as you're used from me, I'm going to try and make this clear - not re-invent the explanatory-wheel or write a scientific paper on this (or re-write even Wiki's "paper").
This means I'll leave stuff out (which for now is irrelevant and might be confusing) and simplify. Will it be 100% technically "correct." No. Will I give you incorrect info and/or tell you bullshit. No. Will you understand how MIDI works and how you can use it to your great advantage? Definitely.

If you do want to get technical and know everything there is to know about this subject, I can highly recommend midi.org or Wikipedia's full MIDI page. If you want to know how awesome MIDI is, how it works and how to use it in the real world - keep reading.

Protocol - Digital Interface - (Connectors)

So basically "MIDI" is a term that's used for some variety of things it represents.

The protocol (think of this as a set of rules with specific and unique values, or simpler: a language), digital interface (basically: where, or "by what" the language is being spoken - where the commands it gives are being given, heard and executed) and connectors (the guys that invented MIDI also gave it it's very own plug - just like some phones have special chargers - Apple is quite infamous for having its own, ridiculously overpriced 16-pin connectors and now the lightning adaptors - and for instance USB is a connector. USB is one that is universal and since it can now also transmit MIDI - as can for instance Bluetooth - I'm going to neglect the MIDI connector here. If you're not a gigging musician you won't need it. If you are, you already know about it.)

In this article I'm going to focus on MIDI as a language, since this is from where we can reap the greatest benefits.

Just like any computer / programming language, MIDI can tell various systems - software programs, computers and other types of hardware - particularly interesting in our field: keyboards - what to play.

"What to play?"

The information MIDI can "speak" includes: which note, how loud, how long, various types of controls (like sustain pedal down/up) and more general "song" things like the tempo, time signature etc. Oh and of course: which "voice" or instrument should play each (set of) note(s)
To make this a little less abstract, some visuals, taken from Logic Pro X - which I will get into in a second since it's one of the programs that's capable of working with (recording & editing) MIDI and my own number one choice.

MIDI logic edit

That's how MIDI looks. Each of those colored, protracted blocks is a MIDI "command" or note.

To the left of the grid you see a keyboard. Each note has its own "row" - if a colored MIDI block is on its row, it means that note will be triggered by the MIDI block.
At the top of the grid, you'll see numbers, which indicate the beats in a song. Each round number is a quarter beat.

So where the MIDI block starts, indicates when the MIDI command - playing the note it is on (and how - for instance how hard the note should be struck) - is triggered.
Its length (the "out" point - where the note ends) also indicates when that note will be released and thus stops / starts to fade out.

The color of the MIDI blocks, indicate the so called velocity that the note has (this correlates with how hard you jam your finger on the note on a piano) - the higher the velocity (the harder the note is struck) the more reddish the note will be. Blue notes are the softest.

Not your regular audio recording.

The most important and main reason why MIDI is so beneficial, is that MIDI is not the same as audio. Although it is a recording, it is the recording of the action, not of the product.

Let me explain.

"Audio" (better said - an audio recording) is frequencies that are captured - the result of someone producing these frequencies. It can therefore be re-played only in the form it was recorded (unless you start destructively editing, something that I won't get into in this post).

MIDI triggers audio, or better yet, triggers any given instrument it controls ("speaks to") to produce audio.

In other words: it tells an instrument (whether this is a hardware keyboard or software on a computer) what to play, only then resulting in actual audio.

Think of it as telling a robot that can play piano what exactly he should play - MIDI is the language that the robot understands. The robot is either the hardware (for instance a keyboard) or the software program (for instance Logic). It will play what MIDI tells him on the instrument you tell him to use (this can either be a software instrument called a VST - like a piano sample, or a specific voice -sound- on a hardware keyboard). MIDI gives the robot exactly all the info he needs to precisely (re-)produce as would the one that created the MIDI play it himself - which notes to play when to play 'em, how hard, how long, with which voice, in what tempo etc.

So a MIDI file holds the set of instructions that tell the robot what and how to play, but it is in fact not a recording of the actual sound that results from playing yet (this is important).

An audio file of a song on the other hand is a recorded version of music as it was already played.

Since MIDI is not a recording of the actual audio as it's heard when played - but a recording of what should happen to play it and make it sound (resulting in the audio) it leaves all the room we'd want for both adapting (editing) and playback.

In a next post, I'll get more in-depth into the editing part and all the (ok, many of the) wonders you'll be able to pull off by knowing how to do that.
For now, let's focus on learning from a MIDI file and see some examples of what we can do with a given MIDI file of a song.

MIDI Playback - Digital Signals getting interpreted.

Since each MIDI note is basically a command, holding different values (as per mentioned, which note, the velocity, length etc.) which still needs to be processed by some form of computer; apart from telling the computer to play the sound it should in the way it should, the beauty of computing and programming has now also evolved MIDI "playback" - what exactly it triggers - to more than just sound.

Particularly valuable for learning is the possibility from some programs to interpret MIDI and show it in a visual way.

Learning from a MIDI file

So skipping the part of the "how" in regard to the actual creation of the MIDI file here, let's say we have a MIDI file (a recording of the actions that make up the playing) of your favorite song as per played on piano by .. me! 🙂

Synthesia - Visualize & adapt tempo

*UPDATE* August 15th - 2017: I've created a quick video to show what's explained in the text below. Find it below the text.

There are tons of different apps and programs out there that can do similar, or exactly the same things that I'll show you here - being some form of animating the MIDI playback - but since Synthesia is the one that I mostly prefer and use myself, I'll also use it for demonstrating using MIDI for playback and "visualisation" practically.

Synthesia is an App that works both on iPad and laptop/desktop. It's one of the many wonderful apps that show MIDI (for instance logic, as we've just seen, is also capable of making MIDI visual). Synthesia however, does this in a clear, convenient and engaging way unmatched by any other program.

"Dripping down" each note in a guitar-hero-style way to the animated keyboard, it hits the each correct key, when it should be hit, producing the entire piece of music by making each key light-up as soon as the "drop" hits it. Watching this is somewhat similar to watching one of those "play by itself" pianos that you've undoubtedly seen - only because of the light-up colors, it's much clearer to see which notes are played.

Synthesia Screenflow 2

Just that final bit - the lighting up of all the keys as they were played by the recorder of the MIDI file, for me personally is already enough value - so clearly laying out which keys should be played all in the correct order and flow, but I haven't even gotten to the bests part yet.
Slowing down (or speeding up) the MIDI recording.

This is where the advantage of MIDI over audio really shines. Since - as per mentioned - MIDI is not real audio yet, we also don't have to "stretch" it to slow it down.

Real quickly for the geeks amongst us: Audio - frequencies, or in other words, wave forms - when slowed down get stretched out. This results in unwanted transformation, distortion that just sounds awful. The further the tempo is adapted from its original tempo, the worse this gets.

When we slow MIDI down however, we just put more time in between each command. It's basically actually like we''re telling the Robot to read and play slower.
So when you look at the top of the screen, you see a percentage number with "bpm" (beats per minute) below it, which indicates and controls the tempo the song is played in.
Clicking the "+" or "-" makes Synthesia play the MIDI file either faster or slower.

Synthesia Screenflow 3

My enthusiasm would allow me to write a whole other post about the awesomeness of being able to slow down an animated version of the {song, riff, lick, exercise, pattern} you want to learn, but I think you catch the drift here, right?

Apart from just watching how something is played in your desired tempo (watch and listen only mode) Synthesia also has the option to listen to you via your direct MIDI input (see how this language just gets better and better?) - meaning that if you'd hook up your MIDI keyboard (most digital pianos/keyboards have MIDI out, just hook it up to your computer / iPad via USB or Bluetooth) and go to one of the "play along modes" (options to either let the song wait for you, or let it play in constant speed) it's your play along companion / teacher, telling you which notes are correct and which are not.


Concluding, a step-by-step how-to on making the most of those MIDI files with Synthesia.

Working with Synthesia.

  • Put the MIDI file that you wish to study in the designated folder (I use my desktop - you can define this in settings)
  • When you open up Synthesia, the all MIDI recordings that are in the designated folder will show up in the list of songs on the main screen (you have to restart Synthesia if you've put your file in the folder while Synthesia was already open).
  • Double click your tune to open it.
  • When you open a MIDI file with Synthesia it first let's you select a voice (instrument) and the color that you would like the part(s) to have. If a MIDI recording for instance has multiple instruments - or, if the right- and left-hand parts are split, something that I'll explain in the next MIDI post about
    recording, creating and editing MIDI - you're able to show each of these parts with different colors. Handy for keeping 'em apart 😉
  • Select what you wish to do - Watch and listen to how something is played only, or play along and practice.
  • Next, when you click continue, the actual "game" starts.
  • Select your desired tempo and GO!


Synthesia is a free app, which is perfectly usable (really) in its free version. Upgrading to the paid version (a one time fee of 9,99) unlocks the full app with extra features like showing the names of the keys, extra ways of playing along and more. For that money, it's really a steal and highly recommended.

As a side note to teachers / aspiring youtube and/or Piano Couture instructors - Synthesia's animated keyboard is what I use for the light up keys in my own tutorial videos.

If you're interested in a full tutorial post on how I accomplish that, please let me know in the comments!

I hope this post helped and you now see more of the value of learning with MIDI files.

If you wish to get your hands on MIDI files of my lessons so you can animate, slow down and play along to each of the songs, concepts, licks and ideas I've taught and am going to teach in the future, Premium Couturians get access to all complementary MIDI files for all my tutorials.

Any questions / remarks - please leave a comment below!




Like this? Please share!

About Coen

Founder of Piano Couture and creator of the Hack the Piano method. Coen is a musician, reader, writer, web-designer, eater and traveler. Find him at CoenModder.com

Leave a Comment

Subscribe to Get Free Updates

Stay up to date & receive free exclusive tips, tricks, lessons and offers.

Item added to cart.
0 items - 0.00

want to finally learn how to actually play like Elton, Billy, Jamie etc... ?

Get Started Free

the Hack the Piano


Get this 5-part video class for FREE.
Learn the proprietary "musical language" framework that allows pro-pop-piano singers/songwriters to play and sound like they do - without sheets.

Subscribe To Our Newsletter

the Couturian

The Couturian is a free email newsletter with tips, tricks and lessons for playing modern piano without sheets.

Play It For Me

Get a custom-arranged piano recording
professionally played & recorded by Coen

Teach Me

If you want to learn how to play Chord Piano yourself,
this free workshop is the quickest way to learn how

Let's find what's right for you

How would you like your arrangement?