midi-file-parser - parse midi (.mid) files

  •        128

Special thanks to the authors. Its just a function that takes a binary string.

https://github.com/NHQ/midi-file-parser

Tags
Implementation
License
Platform

   




Related Projects

MIDI Pilot

  •    C

A MIDI-file player for the Palm. Convert .mid-files to .pdb-files on your PC and download to your Palm. Useful for learning new songs on the go. (Ideas and help are welcome.)

MIDI File Splitter

  •    CSharp

MIDI File Splitter is a simple utility designed to split a MIDI file up into multiple sections based on its markers. It was originally designed to be used for splitting up the Session Drummer and Pattern Brush MIDI files included with Cakewalk's SONAR into individual patterns ...

Simple JACK MIDI player and recorder

  •    C

Jack-smf-utils is a set of two utilities - jack-smf-player and jack-smf-recorder - whose purpose is to play and record MIDI streams from/to Standard MIDI Files (i.e. the files with .mid extension) using JACK MIDI. It uses libsmf as a backend.

MIDI File Mapper

  •    DotNet

MIDI File Mapper is a utility that is designed to batch convert MIDI files from one note mapping to another. This is particularly useful when using libraries of drum patterns mapped for a particular drum sampler with a different sampler.

scribbletune - Create music with JavaScript and Node.js!

  •    Javascript

You can get started by requiring the scribbletune module and create a clip that contains just the middle C note. A clip is like a 16 beat bar.Save this file as c.js and run it from the terminal with node c.js. This will create a file called music.mid at the same location as the c.js file. If you import the MIDI file into your favorite MIDI music editing software (Garage Band / Cubase / Ableton Live / Reason etc), you'll hear the beautiful middle C played across a single bar.


No-Hardware MIDI Recorder

  •    C

Record a melody as a MIDI file, right from the computer keyboard with no special hardware required. Current work on the project is aimed at music analysis. Rhythm and harmony have completed subroutines. A future version of the program will analyze MIDI files, rate their musical value, and recombine them to produce tunes.

Midi2Scilab

  •    

Converts Midi files notes for each channel to Scilab/Octave code. This is useful for instruments simulations and analysis. Using this filter you can test your instrument model on the existing Midi file.

Bol Processor

  •    C

Bol Processor is a program for music composition and improvisation with real-time MIDI, MIDI file, and Csound output. It produces music from a set of rules (a compositional grammar) or from text scores which may be typed or captured from a MIDI instrument.

MidiQuickFix - Midi editor and player

  •    Java

MidiQuickFix allows you to directly edit the events in a Midi file. It is intended to make it easy to find and fix problems, such as setting volume and pan values for a track, without the need for a complex Midi sequencing program.

gmorgan

  •    C

Gmorgan is a midi processor. It can be voiced using Linux synths, midi connected equipment, or a soundcard. It is best to use a velocity sensing midi keyboard so that the first 4 voices can be layered. Demo at Youtube: http://youtu.be/3uIRq6M1tCs For GNU/Linux users, the latest file is .58. Try the play along of .58 at http://www.seconnecticut.com/GmorganPlayalong.htm Updated April 15, 2013

webaudiofont - Use full GM set of musical instruments to play MIDI and single sounds or effects

  •    Javascript

WebAudioFont is a set of resources and associated technology that uses sample-based synthesis to play musical instruments in the browser. You can choose from thousands of instrument, see Catalog. Add a link to WebAudioFontPlayer.js and the instrument file. Invoke queueWaveTable.

giada - Your Hardcore Loop Machine.

  •    C++

Giada is a free, minimal, hardcore audio tool for DJs, live performers and electronic musicians. How does it work? Just pick up your channel, fill it with samples or MIDI events and start the show by using this tiny piece of software as a loop machine, drum machine, sequencer, live sampler or yet as a plugin/effect host. Giada aims to be a compact and portable virtual device for Linux, Mac OS X and Windows for production use and live sets. Giada is available under the terms of the GNU General Public License. Take a look at the COPYING file for further informations.

MidiMix

  •    

MidiMix is small app to play back a MIDI file via a simple mixer. It visualizes the notes played on a piano keyboard and provides control over the playback speed. The primary purpose of the app is to help choir members learn their parts from a single MIDI file with all parts.

jasmid - A MIDI file reader and synthesiser in Javascript

  •    Javascript

A MIDI file reader and synthesiser in Javascript

jasmid - UNMAINTAINED. A MIDI file reader and synthesiser in Javascript

  •    Javascript

UNMAINTAINED. A MIDI file reader and synthesiser in Javascript

midifile - C++ classes for reading/writing Standard MIDI Files

  •    C++

The MidiFile class contains a vector of tracks stored in MidiEventList objects. The MidiEventList is itself a vector of MidiEvents, which stores each MIDI event in the track. MidiEvents contain a timestamp and a MidiMessage which is a vector of unsigned char values, storing the raw bytes of a MIDI message (or meta-message). Documentation is under construction at http://midifile.sapp.org. Essential examples for reading and writing MIDI files are given below.

ztracker

  •    C++

A win32 MIDI tracker being developed in C++ (MSVC6) using SDL. Interface is almost 1:1 clone of the popular Impulse Tracker DOS tracking software. Multiple out-devices, 64 midi tracks (expandable to 256), .mid export, parameter drawing, 96ppqn, and muc

ESP8266Audio - Arduino library to play MOD, WAV, FLAC, MIDI, RTTTL, MP3, and AAC files on I2S DACs or with a software emulated delta-sigma DAC on the ESP8266 and ESP32

  •    C

Arduino library for parsing and decoding MOD, WAV, MP3, FLAC, MIDI, AAC, and RTTL files and playing them on an I2S DAC or even using a software-simulated delta-sigma DAC with dynamic 32x-128x oversampling. ESP8266 is fully supported and most mature, but ESP32 is also mostly there with built-in DAC as well as external ones.

Playmidi

  •    C

Playmidi is a curses and X11-based MIDI file player for Linux. It supports playback to any OSS-supported synth device including external MIDI.

MidiVolumizer

  •    Java

Java application that puts up a dialog and allows one to modify the overall volume levels of a MIDI file. Also trims leading and trailing silent regions. Volume can be adjusted while the MIDI sequence is playing.