LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

pw-midiplay

Play MIDI files through PipeWire

TLDR

Play a MIDI file
$ pw-midiplay [path/to/file.mid]
copy
Play with a specific volume
$ pw-midiplay --volume [0.5] [path/to/file.mid]
copy
Play to a specific target node
$ pw-midiplay --target [node_id] [path/to/file.mid]
copy
Play with verbose output
$ pw-midiplay -v [path/to/file.mid]
copy

SYNOPSIS

pw-midiplay [options] [FILE | -]

DESCRIPTION

pw-midiplay plays MIDI files through a PipeWire server. It is a convenience wrapper for pw-cat --playback --midi, making MIDI events available to the PipeWire audio graph.The tool does not render MIDI into audible audio by itself. It sends MIDI events into the PipeWire graph where they must be routed to a MIDI synthesizer (such as qsynth, fluidsynth, or timidity) or hardware MIDI device to produce sound.When - is given as the file, data is read from stdin.

PARAMETERS

--volume level

Stream volume (default 1.0).
--rate hz
Sample rate in Hz (default 48000).
--channels num
Number of audio channels (default 2).
--channel-map map
Channel layout (e.g. stereo, surround-51, or custom FL,FR mapping).
--format fmt
Sample format: u8, s8, s16, s24, s32, f32, f64 (default s16).
--target value
Target node: auto, 0, or a specific node ID.
--latency value
Node latency (default 100ms).
-q, --quality level
Resampler quality (0-15, default 4).
-R, --remote name
Connect to a specific PipeWire instance.
-P, --properties json
Extra stream properties as a JSON object.
-v, --verbose
Enable verbose output.
-h, --help
Display help information.
--version
Show version details.

CAVEATS

Does not produce audible output on its own. A separate MIDI synthesizer or compatible hardware must be connected in the PipeWire graph to render MIDI events into audio. Standard MIDI File format (.mid) is supported.

HISTORY

Part of PipeWire, the modern multimedia framework for Linux created by Wim Taymans at Red Hat. PipeWire was first released in 2017 and has become the default audio and video server in major Linux distributions, replacing both PulseAudio and JACK. The pw-cat family of tools provides simple command-line media playback and capture.

SEE ALSO

Copied to clipboard
Kai