MIDI_JamSession is a LabVIEW application VI that reads a standard MIDI file (.mid format) and renders it to a audio using "instrument" subVIs of your own design. Following are the key features of MIDI_JamSession:
- Reads standard MIDI files (.mid)
- Renders note events to stereo audio using user-defined subVIs called "virtual musical instruments" (VMIs) or built-in preview instruments
- Displays relevant MIDI file information to help determine how to assign instruments to MIDI channels
- Includes basic "mixing board" with controls for instrument type, mute, and stereo pan
- Creates files for rendered audio (.wav format) and note events (.csv spreadsheet format)
A MIDI file contains note and timing information (see MIDI Messages and Standard MIDI Files for full details). Notes are associated with channels (up to 16 channels possible). A single channel is almost always associated with a single instrument sound. MIDI_JamSession.vi uses all of this information to repeatedly call your virtual musical instrument (VMI) which creates a single note (an audio fragment) according to the requested duration, frequency, and amplitude; the audio fragment is then superimposed on the output audio stream at the correct time.
The following screencast video demonstrates how to use MIDI_JamSession to render MIDI files using the default preview instruments, and how to get started creating subVIs to render audio according to your own algorithms.







MIDI Messages


"A multimedia educational resource for signal processing students and faculty."