xmp - Man Page
Extended Module Player
Synopsis
xmp [-a, --amplify factor] [-A, --amiga] [-b, --bits bits] [-C, --show-comments] [-c, --stdout] [-D device-specific parameters] [-d, --driver driver] [-e, --player-mode mode] [-F, --nofilter] [-f, --frequency rate] [--fix-sample-loop] [-h, --help] [-I, --instrument-path] [-i, --interpolation type] [--load-only] [-L, --list-formats] [-l, --loop] [--loop-all] [-M, --mute channel-list] [-m, --mono] [--mixer_voices num] [-N, --null] [--nocmd] [-o, --output-file filename] [-P, --pan num] [-p, --default-pan num] [--probe-only] [-q, --quiet] [-R, --random] [-S, --solo channel-list] [-s, --start pos] [-t, --time time] [-u, --unsigned] [--vblank] [-V, --version] [-v, --verbose] [-Z, --all-sequences] [-z, --sequence num] modules
Description
xmp is a tracked music module player. It plays many module formats including Fasttracker II (XM), Noise/Fast/Protracker (MOD), Scream Tracker 3 (S3M) and Impulse Tracker (IT). Run xmp --list-formats
for a complete list of supported formats.
Options
- -a, --amplify factor
Amplification factor for the software mixer. Valid amplification factors range from 0 to 3. Default is 1. . Warning: higher amplification factors may cause distorted or noisy output.
- -A, --amiga
Use a mixer which models the sound of an Amiga 500, with or without the led filter.
- -b, --bits bits
Set the software mixer resolution (8 or 16 bits). If omitted, The audio device will be opened at the highest resolution available.
- -C, --show-comments
Display module comment text, if any.
- -c, --stdout
Mix the module to stdout.
- -D device-specific parameter
Pass a configuration parameter to the device driver. See the Device Driver Parameters section below for a list of known parameters.
- -d, --driver driver
Select the output driver. If not specified, xmp will try to probe each available driver.
- -e, --player-mode mode
Force play mode or emulation of a specific tracker. Valid player modes are: auto (autodetection), mod (generic mod player mode), noisetracker, protracker (Protracker 1/2), s3m (generic S3M player mode), st3 (Scream Tracker 3), st3gus (Scream Tracker 3 with GUS card), xm (generic XM player mode), ft2 (Fasttracker II), it (Impulse Tracker), or itsmp (Impulse Tracker in sample mode). When a specific tracker is specified, xmp will try to emulate quirks and bugs for accurate replay. Default is autodetection.
- -F, --nofilter
Disable IT lowpass filter effect and envelopes.
- -f, --frequency rate
Set the software mixer sampling rate in hertz.
- --fix-sample-loop
Halve sample loop start values. Use it to work around bad conversions from 15-instrument modules and to correctly play NoisePacker v2 and certain UNIC files.
- -h, --help
Show a short summary of command-line options.
- -I, --instrument-path path
Set the pathname to the directory containing external samples.
- -i, --interpolation type
Select interpolation type. Available types are nearest for nearest-neighbor interpolation, linear for linear interpolation, and spline for cubic spline interpolation. Default is cubic spline.
- --load-only
Load module and exit.
- -L, --list-formats
List supported module formats.
- -l, --loop
Enable module looping.
- --loop-all
Loop over the entire module list.
- -M, --mute channel-list
Mute the specified channels. channel-list is a comma-separated list of decimal channel ranges. Example: 0,2-4,8-16.
- -m, --mono
Force mono output (default is stereo in stereo-capable devices).
- --mixer-voices num
Set the maximum number of virtual channels (default is 128).
- -N, --null
Load and mix module, but discard output data (same as --device=null).
- --nocmd
Disable interactive commands.
- -o, --output-file filename
Set the output file name when mixing to raw or WAV files. If '-' is given as the file name, the output will be sent to stdout.
- -P, --pan num
Set the percentual panning amplitude.
- -P, --default-pan num
Set the percentual default pan setting for modules that don't set their own pan values. Useful to reduce LRRL pan separation on headphones. This parameter does not affect the Amiga 500 classic mixer.
- --probe-only
Exit after probing the audio device.
- -R, --random
Play modules in random order.
- -r, --reverse
Reverse left/right stereo channels.
- -S, --solo channel-list
Play only the specified channels. channel-list is a comma-separated list of decimal channel ranges. Example: 0,2-4,8-16.
- -s, --start pos
Start playing the module from the position pos.
- -t, --time time
Specifies the maximum playing time to time seconds.
- -u, --unsigned
Tell the software mixer to use unsigned samples when mixing to a file (default is signed).
- --vblank
Force Amiga vblank-based timing (no CIA tempo setting).
- -V, --version
Print version information.
- -v, --verbose
Verbose mode (incremental). If specified more than once, the verbosity level will be increased (no messages will be displayed when the player runs in background).
- -Z, --all-sequences
Play all hidden or alternative pattern sequences (subsongs) in module.
- -z, --sequence num
Play hidden or alternative pattern sequence num (0 is the main sequence).
Device Driver Parameters
Use the option -D to send parameters directly to the device drivers. Multiple -D options can be specified in the command line.
File output options:
- -D endian=big
Generate big-endian 16-bit samples (default is the machine byte ordering).
- -D endian=little
Generate little-endian 16-bit samples (default is the machine byte ordering).
ALSA driver options:
- -D buffer=value
Set buffer size in ms. Default value is 250.
- -D period=value
Set period time in ms. Default value is 50.
- -D card=name
Choose the ALSA device to use. Default value is "default".
OSS driver options:
- -D frag=num,size
Set the maximum number of fragments to num and the size of each fragment to size bytes (must be a power of two). The number and size of fragments set a tradeoff between the buffering latency and sensibility to system load. To get better synchronization, reduce the values. To avoid gaps in the sound playback, increase the values.
- -D dev=device_name
Set the audio device to open. Default is /dev/dsp.
- -D nosync
Don't sync the OSS audio device between modules.
BSD driver options:
- -D gain=value
Set the audio gain. Valid values range from 0 to 255. The default is 128.
- -D buffer=size
Set the size in bytes of the audio buffer. Default value is 32 Kb.
CoreAudio driver options:
- -D buffer=value
Set buffer size in ms. Default value is 250.
HP-UX and Solaris driver options:
- -D gain=value
Set the audio gain. Valid values range from 0 to 255. The default is 128.
- -D port={s|h|l}
Set the audio port. Valid arguments are s for the internal speaker, h for headphones and l for line out. The default is the internal speaker.
- -D buffer=size
Set the size in bytes of the audio buffer. The default value is 32 Kb.
Interactive Commands
The following single key commands can be used when playing modules:
- q, Esc
Stop the currently playing module and quit the player.
- f, Right
Jump to the next pattern.
- b, Left
Jump to the previous pattern.
- n, Up
Jump to the next module.
- p, Down
Jump to the previous module.
- Space
Pause or unpause module replay.
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 0
Mute/unmute channels 1 to 10.
- !
Unmute all channels.
- h, ?
Display available commands.
- X
Display current mixer type.
- Z
Display current sequence.
- z
Toggle subsong explorer mode.
- l
Toggle module/sequence looping.
- m
Display module information.
- i
Display combined instrument/sample list.
- I
Display instrument list.
- S
Display sample list.
- c
Display comment, if any.
- <
Change to previous sequence (subsong).
- >
Change to next sequence (subsong).
Interactive mode can be disabled using the --nocmd command line option.
Examples
Play module and save output in a .wav file:
xmp -ofilename.wav module.mod
Play module muting channels 0 to 3 and 6:
xmp --mute=0-3,6 module.mod.gz
Play modules in /dev/dsp using the default device settings (unsigned 8bit, 8 kHz mono):
xmp -o/dev/dsp -f8000 -m -b8 -u module.lha
Play all XM modules in the /mod directory and all subdirectories in random order, ignoring any configuration set in the xmp.conf file:
xmp --norc -R `find /mod -name "*.xm" -print`
Files
/etc/xmp/xmp.conf, $HOME/.xmp/xmp.conf, /etc/xmp/modules.conf, $HOME/.xmp/modules.conf
Authors
Claudio Matsuoka and Hipolito Carraro Jr.