amidi - read from and write to ALSA RawMIDI ports
amidi [-p port] [-s file | -S data]
[-r file] [-d] [-t seconds] [-a]
amidi is a command-line utility which allows one to receive
and send SysEx (system exclusive) data from/to external MIDI devices. It can
also send any other MIDI commands.
amidi handles only files containing raw MIDI commands,
without timing information. amidi does not support Standard MIDI
(.mid) files, but aplaymidi(1) and arecordmidi(1) do.
Use the -h, -V, -l, or -L options to
display information; or use at least one of the -s, -r,
-S, or -d options to specify what data to send or receive.
- -h, --help
- Help: prints a list of options.
- -V, --version
- Prints the current version.
- -l, --list-devices
- Prints a list of all hardware MIDI ports.
- -L,
--list-rawmidis
- Prints all RawMIDI definitions. (used when debugging configuration files)
- -p, --port=name
- Sets the name of the ALSA RawMIDI port to use. If this is not specified,
amidi uses the default port defined in the configuration file (the
default for this is port 0 on card 0, which may not exist).
- -s,
--send=filename
- Sends the contents of the specified file to the MIDI port. The file must
contain raw MIDI commands (e.g. a .syx file); for Standard MIDI (.mid)
files, use aplaymidi(1).
- -r,
--receive=filename
- Writes data received from the MIDI port into the specified file. The file
will contain raw MIDI commands (such as in a .syx file); to record a
Standard MIDI (.mid) file, use arecordmidi(1).
amidi will filter out any Active Sensing and Clock
bytes (FEh, F8h), unless the -a or -c options have been
given.
- -S,
--send-hex="..."
- Sends the bytes specified as hexadecimal numbers to the MIDI port.
- -d, --dump
- Prints data received from the MIDI port as hexadecimal bytes. Active
Sensing and Clock bytes (FEh, F8h) will not be shown, unless the -a
or -c options have been given.
This option is useful for debugging.
- -t,
--timeout=seconds
- Stops receiving data when no data has been received for the specified
amount of time.
If this option has not been given, you must press Ctrl+C (or
kill amidi) to stop receiving data.
- -a,
--active-sensing
- Does not ignore Active Sensing bytes (FEh) when saving or printing
received MIDI commands.
- -c, --clock
- Does not ignore Clock bytes (F8h) when saving or printing received MIDI
commands.
- -i,
--sysex-interval=mseconds
- Adds a delay in between each SysEx message sent to a device. It is useful
when sending firmware updates via SysEx messages to a remote device.
/usr/share/alsa/alsa.conf default rawmidi definitions
/etc/asound.conf system-wide rawmidi definitions
~/.asoundrc user specific rawmidi definitions
Clemens Ladisch <clemens@ladisch.de>