wildmidi1
Example player for libwildmidi
Usage
wildmidi [-0abehlnstvO]
[-c
config-file]
[-d
audiodev]
[-m
volume-level]
[-P
playback-output]
[-o
file]
[-f
frequency-Hz(MUS)]
[-r
sample-rate]
[-g
convert-xmi-type]
[-x
file]
[-i
seconds]
[-j
seconds]
midifile ...
Library
libWildMidi
Files
/etc/wildmidi/wildmidi.cfg
Overview
This is a demonstration program to show the capabilities of libWildMidi.
midifile can be a MIDI type file in the HMI, HMP, MIDI, MUS or XMI formats and is processed by libWildMidi and the resulting audio is output by the player.
You can have more than one midifile on the command line and wildmidi will pass them to libWildMidi for processing, one after the other. You can also use wildcards, for example: wildmidi *.mid
Options
-
-0 -
When converting with
-x, save files detected as type 2 MIDI compatible as type 0 files.
-
-a | --textaslyric -
Some files store their lyrics in text meta events. Read lyrics from there instead of lyric meta events.
-
-b | --reverb -
Turns on an 8 point reverb engine that adds depth to the final mix.
-cconfig-file |--configconfig-file-
Uses the configuration file stated by config-file instead of /etc/wildmidi/wildmidi.cfg. config-file may also be a SoundFont2 (.sf2) file, or a timidity.cfg style file using the
soundfontdirective; the file type is detected by content, not extension.
-daudiodev |--device=audiodev-
Send audio to audiodev instead of the default device.
alsa : defaults to the system "default"
oss : defaults to "/dev/dsp"
netbsd : defaults to "/dev/audio"
Other environments do not support this option.
-
-e | --enhanced -
Use enhanced (Gauss) resampling for a richer sound at the cost of extra CPU usage.
-
-h | --help -
Displays command line options.
-
-f | --frequency -
Use frequency F Hz for playback (MUS).
-
-g | --convert -
Convert XMI: 0 - No Conversion (default)
1 - MT32 to GM
2 - MT32 to GS
|
Begin playback at seconds (fractions allowed) into the file. |
|---|---|
|
Stop playback at seconds (fractions allowed) into the file. |
-
-l | --log_vol -
Some MIDI files have been recorded on hardware that uses a volume curve, making them sound really badly mixed on other MIDI devices. Use this option to use volume curves.
-mvolume-level |--mastervol=volume-level-
Set the overall volume level to volume-level. The minimum is 0 and the maximum is 127, with the default being 100.
-Pplayback-output |--playback=playback-output-
Set playback-output as playback output. See
--helpoutput for available playbacks.
-ofile |--wavout=file-
Records output to a signed 16 bit stereo format wav file. Implies: -P wave
-
-O | --opl3 -
Use the built-in OPL3 FM synthesizer. No configuration file, GUS patch set or SoundFont is needed.
-rsndrate |--rate=sndrate-
Set the audio output rate to sndrate. The default rate is 32072.
-
-n | --roundtempo -
Round tempo to nearest whole number.
-
-s | --skipsilentstart -
Skips any silence at the start of playback.
-
-v | --version -
Display version and copyright information.
-xfile |--tomidi=file-
Convert a MUS, XMI, HMP or HMI file to midi and save it as file.
Options
These options are not designed for general use. Instead these options are designed to make it easier to listen to specific sound samples.
Note: These options are not displayed by -h | --help
|
Set the test bank to N. Range is 0 to 127. |
|---|---|
|
Set the test patch to N. Range is 0 to 127. |
-
-t | --test_midi -
Plays the built in test midi which plays all 127 notes.
User interface
The player accepts limited user input that allows some interaction while playing midi files.
- +
-
Turns the master volume up.
--
Turns the master volume down.
e-
Turns enhanced resampling on and off.
l-
Turns volume curves on and off.
r-
Turns the final mix reverb on and off.
n-
Play the next midi on the command line.
m-
Save the currently playing file to a midi file. NOTE: This saves to the current directory.
p-
Pause the playback. Note: since the audio is buffered it will stop when the audio buffer is empty.
- .
-
Seek forward 1 second. Note: Clears active midi events and will only play midi events from after the new position.
- ,
-
Seek backwards 1 second. Note: Clears active midi events and will only play midi events from after the new position.
q-
Quit wildmidi.
Releases
10 releases since Debian 5.0 (Lenny); the text changed 4 times.
--convert since Debian 9 (Stretch);
--enhanced since Arch Linux 2026-11-01;
--frequency since Debian 9 (Stretch);
--log_vol since Debian 6.0 (Squeeze);
--opl3 since Arch Linux 2026-11-01;
--reverb since Debian 6.0 (Squeeze);
--roundtempo since Debian 8 (Jessie);
--skipsilentstart since Debian 9 (Stretch);
--test_midi since Debian 6.0 (Squeeze);
--textaslyric since Arch Linux 2026-11-01;
-0 since Arch Linux 2026-11-01;
-O since Arch Linux 2026-11-01;
-a since Arch Linux 2026-11-01;
-b since Debian 6.0 (Squeeze);
-e since Arch Linux 2026-11-01;
-f since Debian 9 (Stretch);
-g since Debian 9 (Stretch);
-n since Debian 8 (Jessie);
-s since Debian 9 (Stretch);
-t since Debian 6.0 (Squeeze).
--enhanced_resample until Debian 7 (Wheezy);
--linear_vol until Debian 5.0 (Lenny);
--tomidi until Debian 13 (Trixie);
--wholetempo until Debian 8 (Jessie);
-w until Debian 8 (Jessie);
-x until Debian 13 (Trixie).