MIDI Software
- Sequencers
- Anthem advanced MIDI sequencer from Pete Goodliffe [2002]
- BINARS "an open-source sequencer for Linux, ALSA, and GNOME", from Michael Ashton [2001]
- CuSE the Cursed Sequencer, a console-based MIDI sequencer from Thomas Haenselmann [2007]
- Dino neat MIDI sequencer using the latest JACK (development version with MIDI capability), from Lars Luthman [2007]
- JAZZ++ first integrated audio/MIDI sequencer for Linux [current]
- Melys MIDI sequencer for ALSA [2000]
- MusE excellent Qt-based audio/MIDI sequencer from Werner Schweer and friends [2007]
- Non Sequencer new sequencer from Jonathan Moore Liles, requires JackMIDI capability [current]
- Rosegarden audio/MIDI sequencer, notation editor, Csound-score producer, and more... [current]
- SoftWerk a MIDI sequencer from Paul Davis, based on the design of the Doepfer Schaltwerk [2000]
- TekTracker MIDI sequencer with tracker-style interface [2004]
- TISM is the "Temporal Information Sequencing Machine", Samuel Dufour-Kowalski's realtime MIDI sequencer [2004]
- Tutka a MIDI tracker/sequencer from Vesa Halttunen [2006]
- b-tektracker MIDI step-sequencer based on TekTracker [2006]
- cantor MIDI sequencer/editor project [1999]
- midish command-line MIDI sequencer/filter for *BSD and Linux [2007]
- seq24 realtime MIDI sequencer with a simple interface for editing and playing MIDI loops [2006]
- Players
- Musica MIDI player with GTK interface
- TiMidity
- Widi MIDI player for external MIDI devices only, from Isaku Yamahata
- WildMidi MIDI player utilizing GUS-format patches
- Xpmidi nice GUI for pmidi from Bob van der Poel, requires Python 2.2 and Tkinter
- midiplay/midirec excellent Python-based MIDI tools from Aaron Krister Johnson
- playmidi
- eplaymidi an enhanced version of playmidi from Satoshi Kuramochi
- playmidi the original, a command-line MIDIfile player with optional X, Gtk, or ncurses interface
- pmidi a MIDIfile player for ALSA
- srgplay MIDI file player supporting a variety of formats, from K. Sakai
- Utilities
- Alpha Juno editor/librarian for Roland Alpha Juno 1/2 and MKS50 synthesizers, from Chris Wareham
- ALSA MIDI Kommander "a DCOP interface exposing many ALSA sequencer features for shell scripts, Kommander scripts, or KDE programs requiring MIDI sequencer services", from Pedro Lopez-Cabanillas
- ALSA Patch Bay "a graphical patch bay for the ALSA sequencer API" (requires FLTK or GTKmm), from Bob Ham
- AutoTrack is a "...tool for creating practizing and demo tracks from chord charts", creating MIDI files with bass and drum tracks
- Div's MIDI Utilities for Unix excellent collection of command-line MIDI tools
- FANR free audio note recognition (WAV to MIDI) software from Gilles Degottex
- GMIDImon a nice GTK-based MIDI monitor from Nedko Arnaudov
- JSynthLib universal synth editor/librarian project, requires Java
- KCompact/K25Strip Linux utilities for the Kurzweil K2x00 samplers
- KMidimon MIDI data monitor from Pedro Lopez-Cabanillas
- Kontroll MIDI utility to generate controller messages from the mouse position, more software from Florian Schmidt
- MC303 Bulk Dump a new utility from Olivier Delhaye
- Midge is a text-to-MIDI program from David Riley
- MIDI Controller GUI to connect sliders and spinbuttons to MIDI continuous controllers (CCs), from Lars Luthman
- MIDI Data Miner "... uses a neural network to learn correlations between notes and control changes in a MIDI file", neat software from Ollie Glass [2006]
- MIDI Splitter neat Perl script to split MIDI files into separate tracks/channels
- MidiChat send/receive MIDI in realtime over the Internet
- MidiComp reads and writes Type 0/1 MIDI files in SMF and plain text format
- MidiKinesis "MIDI controllers for (almost) any purpose", a cool tool from Peter Brinkmann
- MidiMutator performs various cross-mutations on a pair of MIDI files
- Midingsolo Gille Degottex's realtime audio-to-pitch recognition software for monophonic signals, with MIDI output
- MidiShare is a "... real-time operating system for musical applications" from the great crew at GRAME
- Miditoys turns a Playstation2 into a MIDI control surface
- Nomad patch editor/librarian for the Nord Modular synthesizer
- OplEdit interactive editor for Yamaha OPL2/3 soundchips, from John Meacham
- QMidi* arpeggiator, controller box, event filter/router, all that and more from Matthias Nagorni
- Random Phase Generator Reichian fun from Tak-Shing Chan [2001]
- Ratón "... translates mouse movements into MIDI controller messages", thanks to programmer Doug Garmon
- RawMIDI2SMF Ken Ellinwood's command-line utility for converting ALSA'a amidi to a standard MIDI file (requires Java)
- Shelljam play softsynths and other MIDI instruments from the command shell
- Simple Sysexxer new MIDI sys-ex utility from Christoph Eckert
- SMDITools a set of command-line utilities for exchanging samples with an SMDI-compatible sampler, from Olivier Doaré
- SynthEd new project for creating a universal patch editor/librarian for MIDI synthesizers
- SysExxer utility for receiving, saving, and sending raw sys-ex messages, from Christian Nitschkowski
- UMP UNIX MIDI plug-in for Netscape
- WaoN is a WAV-to-MID converter from Kengo Ichiki
- X MIDI software a suite of programs utilizing the Direct MIDI interface of the 4Front commercial OSS driver
- ace command-line MIDI splitter/processor, performance software from Atte André Jensen
- aconnectgui Maarten de Boer's FLTK-based GUI for ALSA's aconnect utility
- amidmap reads, processes, and transmits MIDI events
- aseqjoy Alexander König's cool joystick-to-MIDI converter
- bcx2000edit editor for the Behringer BCR2000/BCF2000 MIDI control surfaces, from Pieter Palmers
- clavier from Simon Kågedal, a software MIDI keyboard for controlling external synths (requires GTK)
- dx7bag "a collection of utilities for the Yamaha DX7 and... the DX1, DX5, DX7s, DX7II, DX7IIFD, TX7, TX802 and TX816"
- gdigi nice GUI to edit patches for the Digitech RP250 guitar effects processor pedal
- glib generic editor/librarian for synthesizer patches
- icube an editor/controller for the ICubeX sensor/digitizer, from Paul Davis
- kbdz transforms USB PC keyboards/mice into MIDI controllers
- mcontrol is an ALSA sequencer client that can assign up to twelve MIDI control messages for the controllers on your MIDI keyboard
- midi2gmn "...converts gmn (GUIDO Music Notation) files into MIDI files..."
- mididings MIDI router/processor from Dominic Sacré [current]
- midikb uses QWERTY keyboard for testing Csound instruments or for output to /dev/midi
- midillo "... a library and set of tools for MIDI files manipulation" [2006]
- midirgui simple MIDI router/channelizer with FLTK GUI, more fine software from Josep Andreu a.k.a. Holborn
- multimidicast MIDI over a network, cool software from Dirk Jagdmann
- naconnect an ncurses-based ALSA MIDI sequencer connection manager
- sc88sysex command-line utility to send/receive data to & from the Roland SC88 sound module (direct link)
- sxpress Sampo Savolainen's software "... for controlling MMC compatible software & hardware with USB DAW controllers"
- wave2mid audio to MIDI conversion from Pablo Busto
- xphat user-configurable software MIDI fader box from Paul Davis
- Environments
- Bol Processor sources are now open, good news from Bernard Bel and Anthony Kozar
- CMT Carnegie-Mellon MIDI Toolkit (includes the adagio language)
- Elody "...a music composition environment based on a visual functional language, a direct manipulation user interface and Internet facilities", requires Java and MidiShare
- Grammidity "...uses a kind of genetic algorithm based on user feedback to generate 'music'...in the form of a MIDI file", requires Java
- Improv "...a C++ environment for writing programs that enable musician/computer interaction using MIDI instruments", from Craig Stuart Sapp
- KeyKit
- KeyKit excellent experimental MIDI composition environment
- GeoMaestro very cool extension to KeyKit
- KyCE II is the Kymatica Compositional Environment II, cool graphic MIDI composition utility with realtime output, from Jonatan Liljedahl
- STed2 MIDI music composition environment from Daisuke Nagano
- UltiMusE-LX music composition via standard notation and MIDI
- gmc Guenther Sohler's GNU MIDI compiler translates text to a MIDIfile
- xgmc more than just a front-end for gmc, it's a "...simple hierarchical MIDI sequencer player and editor..." that can create MIDI files from MP3s
- MIDI Programming Resources
- IEEE P1639 Phil Kerr's "... Ethernet based protocol wrapper allowing the transmission and reception of MIDI data within a LAN environment" (this project was formerly known as DMIDI)
- Input Maps "... provides user-customizeable mappings for controlling realtime objects with event streams"
- MIDI Modules for the Python programming language
- MIDI Wire Packetization Protocol brought to you by SAOL guru John Lazzaro
- MIDI-Perl "...a suite of Perl modules that allows you to read, compose, modify, and write MIDI files"
- MidiIO more excellent C++ MIDI code from Craig Stuart Sapp
- MidiShare is "a real-time operating system for musical applications"
- Midithing MIDI library in Python for an eventual sequencer from Tim Goetze
- MMidi describes tools for MIDI over the MBONE multicast network
- Q-Midi a MidiShare interface for the Q programming language
- TSE3 Library open-source MIDI sequencer engine in C++
- UNIX MIDI libraries useful code from John Stone
- jMusic is a Java class of functions for generating and manipulating MIDI musical data
- pyalsa MIDI wrappers for Python, from Phil Frost