How was it done?

In case it's not obvious, I did not use an actual piano or orchestra to produce the three MP3 music files. Here is what I did to go from the score of the piano concerto to those MP3 files.

I began with MIDI files for each of the three movements of the concerto, which fortunately were available online. There are a whopping 39,810 notes in the score, and the MIDI files have these notes divided into tracks. There is a track for each part: the solo piano (including pedals), as well the violins, violas, celli, basses, clarinets, oboes, bassoons, flutes, French horns, trumpets, trombones, tubas, tympani, cymbals, and bass drum. The MIDI file indicates for each track what notes should be played when (that is, in what bar, in what fraction of what beat) and for how long. It also indicates the loudness (from piano to forte, as well as any crescendo or diminuendo). The MIDI file also has tempo information (from lento to presto, as well as any accelerando or ritardando). So overall, a MIDI file is like a computer-readable version of the printed score.

Apart from the score, MIDI files end up specifying detailed information more concerned with the interpretation of the piece, such as the moment-by-moment speed of the playing (allowing for small fluctuations like rubato), the length of a note to be played (allowing for staccato and legato), and the loudness of a note (allowing for the emphasis or deemphasis of individual notes). In my case, I mostly ignored the values given in the original MIDI file and made my own choices.

In the end, all my musical efforts went into producing a new MIDI file with the same notes as the original, but with many, many detailed variations in timing and loudness---an interpretation, in other words. Sitting at a computer and editing a MIDI file is a strange and painstaking way of performing a piece of music, I admit, somewhat like pointilist painting. (But 39,810 notes is still small potatoes compared to the estimated 220,000 dots in Seurat's La Grande Jatte.)

What a MIDI file does not contain is any information about what the individual notes on a track are supposed to sound like. There is a computer program that takes a MIDI file as input and produces as output a stream of data over time that says (effectively) "start playing note 95 on track 8 at loudness 76 now" or "stop playing note 95 on track 8 now". There is a separate computer program that receives these instructions and produces the actual audio in real time by playing previously recorded audio files stored on the computer. This program is called a sample player, or sampler.

In the simplest case, for something like a piano say, there would be audio files for each of the 88 piano notes, and a sampler would start or stop playing one of these 88 files on cue. But this is not quite right. For one thing, there can be multiples files for a single note. A quiet note on a piano does not sound like a loud one with the volume turned down; it has a different timbre. On the other hand, it is not necessary to have different files for each of the 88 notes either, since notes that are close together can be simulated by playing the audio file at a slightly higher or lower pitch. (Too much of this pitch-shifting can change the timbre.)

This is for an instrument like a piano. The case of a sampled violin (or one of the other orchestral instruments) is more complex. For a given note and loudness, there will be separate audio files for what the note sounds like when played with a bow vs. pizzicato, as well as for playing tremelo, or with varying attacks (hard to soft) and varying amounts of vibrato.

Each audio file a sampler uses is created in a studio somewhere by recording an actual instrument playing the note in the designated way. (The single note may by played by a group of instruments, an entire violin section, for example.) In the most realistic cases, a sampler will have access to hundreds of prerecorded audio files for each note of an instrument or section, and a MIDI file has to specify which ones to use and when. In my case, I used a fairly basic assortment of audio files for the orchestral instruments, which again were freely available online. (The piano sound was produced in a different way.)

So the output of a sampler is essentially the result of playing a barrage of audio files at different points in time, positioning them somewhere in the stereo field, and adding effects like reverb. But instead of sending all this audio to headphones or speakers to listen to, the data is instead sent to yet another computer program that mixes all the data into one big audio file, which can then be saved as an MP3 file. Done.

Return to the main text.