JMS MIDI Player Wiki
Download
Contents

JMS MIDI PlayerComing soon

Pick a SoundFont, pick your files, press play. Then watch every channel of it.

Note

JMS MIDI Player is coming soon to the Google Play Store. There is no download yet, and when the store page opens this wiki will link to it. Everything here describes the app as it stands today, so do read on. See What's New.

Three phones side by side running JMS MIDI Player. On the left the library page, with a RECENTLY ADDED ALBUMS row of cover tiles and coloured tiles counting the General MIDI, GS and XG files found. In the middle the player, with the album tile above the track name, the SoundFont and the file's details, a seek bar and the transport. On the right the keys page, an 88-key piano for each of the sixteen channels with the notes currently sounding lit in blue.

JMS MIDI Player is a free Android player for Standard MIDI Files. It plays your .mid, .midi and .kar files through its own SoundFont engine, so there is no hardware to buy: give it a .sf2 file and it sounds like whatever that font is.

It is powered by the same SoundFont engine as PXR MIDI Player on the Mac. That engine is written from the SoundFont 2.04 specification rather than built to approximate it, and it is checked against the SoundFont Spec Implementation Test: a public set of thirty-two tests across three suites, exercising the parts of the format you actually hear. How notes swell and fade, how filters open and close, vibrato, panning, reverb and chorus, and how samples are stretched to play at pitches they were never recorded at.

It passes every one, confirmed by that suite's author. Every channel also gets its own reverb and chorus levels, exactly as real hardware does, instead of one effect stretched across the whole song.

It also means your music sounds the same wherever you take it. A phone's own synthesiser is fixed and varies between handsets; this one plays the SoundFont you gave it, note for note the same as the desktop app, on every device you install it on.

It is free, and it stays free. No ads, no accounts, no trial, and nothing to unlock. There is no INTERNET permission in the app at all. Made by James Woodcock of Pixel Refresh, in his spare time, for the love of MIDI.

New here? Start with these#

What it does#

Any SoundFont you like, played properly#

Swap the font and the whole track changes: the same file through a bright GM font and through a dark orchestral one is two different pieces of music. Variation banks, the ones many players quietly skip, are played. Drum kits follow the GS and XG rules rather than a guess. See SoundFonts.

Keeps playing when you leave#

Playback lives in a service, not in the screen, so it carries on when you switch apps or lock the phone. The notification and the lock screen carry the controls, and it appears in Android Auto with your queue.

Your whole folder, grouped by what MIDI files actually carry#

Point it at the folder your files live in and it catalogues everything: by format, by tempo, by time signature, by whether there are words to sing, by the drum kit on channel 10, and by folder-with-a-cover-in-it, which is the closest thing a MIDI file has to an album. Nothing to tag, nothing to import. See The Library.

Playlists and favourites you can keep#

Both are saved as ordinary files in your own music folder, so they are backed up with the music and readable by other players. Restore your folder onto a new phone and they come back with it. See The Library.

Seven slots, one tap apart#

A bar across the bottom holds the sixteen channels with their meters and controllers, a piano roll, eighty-eight keys per channel, your library in the middle, the queue, a full mixing desk, and the words for a karaoke file. What is playing sits on a strip just above the bar on every page, so the player is always one tap away. Two more pages, the played keyboard and the SysEx log, open from Settings. See The Pages.

A mixer, and every control on it is live#

Sixteen strips and a master, with volume, pan, the three sends, brightness, mute and solo on each. Move a fader and the channel gets quieter as you move it. It turns your phone sideways for itself. See The Mixer.

The mixing desk with the phone turned sideways: sixteen vertical strips side by side plus a master, each with its number, voice name and instrument icon, a level meter, a volume fader and mute and solo buttons.

Sing it yourself#

A karaoke file's words appear three lines at a time, the line being sung filling syllable by syllable. Change the key to suit your voice, and mute the melody so the tune is yours. See Karaoke.

The lyrics page, showing three lines at a time: the line just sung and the line coming next in dim text, with the current line larger and colouring in word by word as it is reached. Steppers for key and tempo sit across the top, and a button to mute the melody along the bottom.

Play the font#

Pick a bank, pick a voice by the name the font itself gives it, and play the keys. It is the only real way to judge a SoundFont: not by reading its preset list but by hearing what preset 41 actually sounds like. See Playing the SoundFont.

Reads the file properly, and shows its working#

GM, GM2, GS and XG files are recognised and the format is shown. Bank selects, SysEx, tempo changes and drum-channel rules are followed rather than approximated, so a file written for a Roland or a Yamaha module shows what its author asked for. The SysEx page, in Settings, decodes messages a file sends, which is where those decisions live.

Yours, on your phone#

Files are read through Android's own picker, so the app needs no storage permission. Cover art comes from the folder your music sits in.

Requirements#

Android 9 (Pie) or newer
Phone 64-bit ARM, which is every phone from roughly 2016 onwards
Storage About 90 MB installed, plus a copy of each file you load
A SoundFont An .sf2 file of your own. See SoundFonts

This wiki is the user guide. Use the navigation on the left, or the search box at the top.

Last updated: 2026-08-27