All Projects → mido → Mido

mido / Mido

Licence: mit
MIDI Objects for Python

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Mido

Midivisualizer
A small MIDI visualizer tool, using OpenGL
Stars: ✭ 347 (-55.28%)
Mutual labels:  midi
Open Stage Control
Libre and modular OSC / MIDI controller
Stars: ✭ 436 (-43.81%)
Mutual labels:  midi
Videolab
Stars: ✭ 563 (-27.45%)
Mutual labels:  midi
Hedron
Perform live shows with your three.js creations
Stars: ✭ 372 (-52.06%)
Mutual labels:  midi
Vgmtrans
VGMTrans - Video Game Music Translator
Stars: ✭ 417 (-46.26%)
Mutual labels:  midi
Qlcplus
Q Light Controller Plus
Stars: ✭ 467 (-39.82%)
Mutual labels:  midi
Orca C
Live Programming Environment(C Port)
Stars: ✭ 328 (-57.73%)
Mutual labels:  midi
Awesome Webaudio
A curated list of awesome WebAudio packages and resources.
Stars: ✭ 685 (-11.73%)
Mutual labels:  midi
Bitmidi.com
🎹 Listen to free MIDI songs, download the best MIDI files, and share the best MIDIs on the web
Stars: ✭ 422 (-45.62%)
Mutual labels:  midi
Lmms
Cross-platform music production software
Stars: ✭ 5,450 (+602.32%)
Mutual labels:  midi
Control Surface
Arduino library for creating MIDI controllers and other MIDI devices.
Stars: ✭ 377 (-51.42%)
Mutual labels:  midi
Sendmidi
Multi-platform command-line tool to send out MIDI messages
Stars: ✭ 411 (-47.04%)
Mutual labels:  midi
Midi2lr
An application and plugin to remotely control Lightroom with a MIDI controller
Stars: ✭ 485 (-37.5%)
Mutual labels:  midi
Element
Element Audio Plugin Host
Stars: ✭ 354 (-54.38%)
Mutual labels:  midi
Webaudiofont
Use full GM set of musical instruments to play MIDI and single sounds or effects. Support for reverberation and equaliser. No plugins, no Flash. Pure HTML5 implementation compatible with desktop and mobile browser. See live examples.
Stars: ✭ 600 (-22.68%)
Mutual labels:  midi
Awesome Music Production
A curated list of software, services and resources to create and distribute music.
Stars: ✭ 340 (-56.19%)
Mutual labels:  midi
Romplayer
AudioKit Sample Player (ROM Player) - EXS24, Sound Font, Wave Player
Stars: ✭ 445 (-42.65%)
Mutual labels:  midi
Zrythm
a highly automated and intuitive digital audio workstation - official mirror
Stars: ✭ 703 (-9.41%)
Mutual labels:  midi
Hydrogen
The git repository of the advanced drum machine
Stars: ✭ 636 (-18.04%)
Mutual labels:  midi
Midiapps
MIDI apps for Mac OS X: MIDI Monitor and SysEx Librarian.
Stars: ✭ 488 (-37.11%)
Mutual labels:  midi

Mido - MIDI Objects for Python

.. image:: https://travis-ci.org/mido/mido.svg?branch=master :target: https://travis-ci.org/mido/mido .. image:: https://github.com/mido/mido/workflows/Test/badge.svg :target: https://github.com/mido/mido/actions

Mido is a library for working with MIDI messages and ports:

.. code-block:: python

import mido msg = mido.Message('note_on', note=60) msg.type 'note_on' msg.note 60 msg.bytes() [144, 60, 64] msg.copy(channel=2) Message('note_on', channel=2, note=60, velocity=64, time=0)

.. code-block:: python

port = mido.open_output('Port Name') port.send(msg)

.. code-block:: python

with mido.open_input() as inport:
    for msg in inport:
        print(msg)

.. code-block:: python

mid = mido.MidiFile('song.mid')
for msg in mid.play():
    port.send(msg)

Full documentation at https://mido.readthedocs.io/

Main Features

  • works in Python 2 and 3.

  • convenient message objects.

  • supports RtMidi, PortMidi and Pygame. New backends are easy to write.

  • full support for all 18 messages defined by the MIDI standard.

  • standard port API allows all kinds of input and output ports to be used interchangeably. New port types can be written by subclassing and overriding a few methods.

  • includes a reusable MIDI stream parser.

  • full support for MIDI files (read, write, create and play) with complete access to every message in the file, including all common meta messages.

  • can read and write SYX files (binary and plain text).

  • implements (somewhat experimental) MIDI over TCP/IP with socket ports. This allows for example wireless MIDI between two computers.

  • includes programs for playing MIDI files, listing ports and serving and forwarding ports over a network.

Status

1.2 is the third stable release.

Requirements

Mido targets Python 3.6 and 2.7.

Installing

::

pip install mido

If you want to use ports::

pip install python-rtmidi

See docs/backends/ for other backends.

Source Code

https://github.com/mido/mido/

License

Mido is released under the terms of the MIT license <http://en.wikipedia.org/wiki/MIT_License>_.

Questions and suggestions

For questions and proposals which may not fit into issues or pull requests, we recommend to ask and discuss on Discussions <https://github.com/mido/mido/discussions>_.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].