I was very impressed when I saw that you can implement real time applications with pure Python - I would have never considered that possible ...

Mplay is a MIDI player written in pure Python. It runs on OSX, Windows and Linux. Apart from an OpenGL wrapper (for the GUI part), there are no dependencies on other packages. Mplay has been tested with Python 2.7.10, 3.4.3 and PyOpenGL 3.1.1a1 (e.g. with ContinuumIO's Anaconda v.2.2.0 Python distribution).

In this video, you can see (and hear) Mplay in action.


  • Full functional MIDI player
  • Mixer with mute and solo options
  • Ability to change channel parameters (delay, chorus, reverb, pan)
  • Volume sliders
  • Pulldown menus for GM instrument sounds
  • MIDI VU meter
  • Show note, chord and lyrics information
  • Change key, tempo
  • Transport controls
  • Keyboard shortcuts


Lightning Talk at PythonCamp Cologne 2013, May 4-5 2013, GFU Cyrus


Mplay binary for OS X (DMG)

Lightning Talk at EuroPython 2014, Jul 21-27 2014, BCC Berlin

© Josef Heinen 2013 - 2017