XMP(1)

NAME
xmp - 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, 16, 24, or 32 bits). If omitted, the audio device will be opened at 16-bit resolution.

-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.