Skip to main content

A command line utility for routing and monitoring MIDI ports.

Project description

MIDI Message Routing Tool

Build Status Code style: black PyPI

midiroute is a command line utility for routing MIDI streams between input and output ports on your computer. midiroute can route an incoming MIDI stream to multiple output ports. The stream can also be monitored in the terminal.

Installation and usage


midiroute can be installed by running pip install midiroute. It requires Python 3.7.0+ to run.


To list the available input and output ports on your system:

midiroute list-ports

Route messages from an input to an output port with monitoring enabled:

midiroute run -i "Oxygen 61 0" -o "Microsoft GS Wavetable Synth 0" -m

Command line options

You can list the command line options by running midiroute --help:

Usage: midiroute [OPTIONS] COMMAND [ARGS]...

  CLI entry-point.

  --help  Show this message and exit.

  list-ports  List available input and output ports.
  run         Run the MIDI router.

To get help on a specific command run midiroute <command> --help:

$ midiroute run --help
Usage: midiroute run [OPTIONS]

  Run the MIDI router.

  -i, --input-port PORT_NAME    Select the input port.
  -o, --output-ports PORT_NAME  Select one or more output ports in a comma
                                separated list.
  -m, --monitor                 Enable monitoring of MIDI activity on the
                                selected ports.
  --help                        Show this message and exit.



Contributing to midiroute

Contributions to this project are more than welcome!

More details can be found in CONTRIBUTING.


Rob Walton

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for midiroute, version 1.0.0b1
Filename, size File type Python version Upload date Hashes
Filename, size midiroute-1.0.0b1-py3-none-any.whl (5.9 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size midiroute-1.0.0b1.tar.gz (9.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page