Setting up mplayer for transcribing music

In addition to consuming vast amounts of coffee and cigarettes, transcribing music often implies playing, pausing and replaying small fragments of music over and over again, then skipping a few seconds to the next bit, and so on. The media player you are using, should be very agile and responsive.

Also, high pitched musical activity can often be perceived more clearly/cleanly when pitched down (without losing tempo), or vice versa. The ideal player has the ability to change pitch and playback speed without affecting the quality of the audio.

On a Linux platform, using mplayer with the scaletempo filter can be quite handy for these purposes. In order to customize your mplayer for transcribing needs, I listed some important steps below.

Diminish the default skip values

A default installation will make the right and left keys skip 10 seconds forward or backward. As this is a bit to large a skip to transcribe efficiently, the value should be diminished in $HOME/.mplayer/input.conf.

Just insert the amount of seconds you’d prefer to skip forward or backward. In my case, that’s two seconds:


N.B. If you are not a member of the audio group, mplayer might throw an error upon reading the input.conf (Option RIGHT needs a parameter at line X, etc.). In this case, add your username to the audio group:

adduser jethro audio

Change playback speed without affecting pitch

To change the playing speed on the fly, the [ and { keys can be used. The square brackets increase (]) or decrease ([) the playback speed × 110. Curly brackets do the same × 12. Using Backspace resets the normal playing speed.

Unfortunately these default shortcuts do affect audio quality. In order to change the playback speed without affecting quality, launch mplayer with the audiofilter flag:

mplayer -af scaletempo=scale=0.5 file.mp3