24

I'd like to do something like

$ play filename.mid

and hear the midi file played without opening up a graphical program. Is there a package for Ubuntu that can do this?

6 Answers6

27

There are many different packages/commands you can try:

  1. wildmidi (as used by gstreamer)
  2. timidity (found this very CPU intensive)
  3. playmidi (never tried personally)
8128
  • 28,868
9

You'll likely want the playmidi package (sudo apt-get install playmidi) which will allow you to play midi files from the command line.

playmidi filename.mid

Marco Ceppi
  • 48,827
7

I know this thread is old, but I was looking for answers for a Raspberry Pi but didn't find any. After more work I came up with the following, it may work in Ubuntu too. The output is through a cheap USB to midi interface.

On Raspbian Jessie Lite with no extra installs:

pi@pizerow:~$ aconnect -l  
client 0: 'System' [type=kernel]  
0 'Timer           '  
1 'Announce        '  
client 14: 'Midi Through' [type=kernel]  
0 'Midi Through Port-0'  
client 20: 'CH345' [type=kernel]  
0 'CH345 MIDI 1    '  
pi@pizerow:~$ aplaymidi --port=20:0 myfile.mid  
karel
  • 122,292
  • 133
  • 301
  • 332
Lee Sanders
  • 171
  • 1
  • 2
4

fluidsynth from http://www.fluidsynth.org/.

Use it like this:
fluidsynth /some/dir/with/sundfonts/some_soundfont.sf2 some.mid

You can find soundfonts here: https://musescore.org/de/handbuch/soundfont

And quite a nice collection of MIDI files to try this out here: http://garyrog.50megs.com/midi1.html

I especially like the soundfont "Timbres of Heaven" from http://midkar.com/soundfonts/.

Christian
  • 141
2

Another alternative besides Fluidsynth nowadays is Timidity. Install the packages timidity, timidity-interfaces-extra and freepats (the latter is about 30MB, but smaller than the sf2 files in fluid-soundfont-gm). Then the following should work:

timidity -Os midi.mid
1

If you have fluidsynth installed, you can also play Midi files with VLC by installing the vlc-plugin-fluidsynth package.