NAME¶
clamz - download MP3 music files from Amazon.com
SYNOPSIS¶
clamz [
options ]
amz-file ...
DESCRIPTION¶
clamz is a little command-line program to download MP3 files from
Amazon.com's music store. It is intended to serve as a substitute for Amazon's
official MP3 Downloader, which is not free software (and therefore is only
available in binary form for a limited set of platforms.)
clamz can be
used to download either individual songs or complete albums that you have
purchased from Amazon.
In order to use
clamz, you must first enable the ``MP3 dowloader mode''
by visiting the following URL:
- http://www.amazon.com/gp/dmusic/after_download_manager_install.html?AMDVersion=1.0.9
If you are outside the US, replace `amazon.com' with the corresponding domain
for your country (e.g., amazon.co.uk for the UK, or amazon.fr for France.)
Amazon does not allow anyone to purchase MP3 files from outside their country
of residence.
To download the contents of an AMZ file into the current directory, just run
- clamz some-file-name.amz
More advanced options are listed below.
OPTIONS¶
- -o name-format,
--output=name-format
- Set the name of the downloaded file(s). This may contain
any of several variables which are derived from the input AMZ file; see
FORMAT VARIABLES below. Note that the format string should be
enclosed in single quotes, to stop the shell from expanding variables
itself.
- -d directory-format,
--output-dir=directory-format
- Set the directory where the downloaded files should be
placed. (If this directory does not exist, it will be created.) This may
also contain format variables.
- -r, --resume
- Resume downloading a partially-downloaded album. (By
default, if you are downloading a file named foo.mp3, and the file foo.mp3
already exists in the destination directory, clamz will rename the
new file to foo.mp3.1 to avoid overwriting the old file. If the -r
option is used, clamz will instead assume that the first part of
the file has already been downloaded, and will resume downloading from
where it left off.)
- -i, --info
- Rather than downloading anything, just display detailed
information about the given AMZ file(s) to standard output.
- -x, --xml
- Rather than downloading anything, print the raw, decrypted
XML data from the AMZ file to standard output.
- -v, --verbose
- Display detailed information while downloading.
- -q, --quiet
- Turn off the normal progress display; display only error
messages.
- --forbid-chars=characters
- Do not allow the given characters to be used in
output filenames. Note that control characters and slashes may never be
used in filenames.
- --allow-chars=characters
- Opposite of the above; remove the given characters
from the set of disallowed characters.
- --allow-uppercase
- Allow uppercase letters in filenames.
- --forbid-uppercase
- Do not allow uppercase letters in filenames.
- --utf8-filenames
- Use UTF-8 when writing filenames (the default behavior is
to use UTF-8 if the system locale says so, otherwise ASCII.)
- --ascii-filenames
- Use only ASCII characters in filenames.
- --help
- Print out a summary of options.
- --version
- Print out version information.
As part of a
name-format or
directory-format option, you may
include references to environment variables (e.g.,
$HOME) or to the
`xdg-user-dirs' configuration variables (e.g.,
$XDG_MUSIC_DIR or
$XDG_DESKTOP_DIR.)
In addition, the following special variables are defined for each track, based
on the information provided in the AMZ file, and subject to the above
configuration options (
--forbid-chars,
--forbid-uppercase,
etc.)
- ${title}, ${creator}, ${tracknum},
${discnum}, ${genre}, ${asin}
- Title, creator, track number, disc number, genre, and ASIN
(Amazon Standard Identification Number) of each individual track.
- ${album}, ${album_artist},
${album_asin}
- Title, primary artist, and ASIN of the album the track
comes from. (This information is available both for single-track and
full-album downloads.)
- ${suffix}
- Suffix of the output file (currently only `mp3'.)
- ${amz_title}, ${amz_creator},
${amz_genre}, ${amz_asin}
- These variables formerly contained metadata for the AMZ
file as a whole; current AMZ files do not contain this information. Using
these variables is not recommended.
Similar to shell variable expansion, you can also use the following conditional
expressions:
- ${var:-string}
- Expands to the value of variable var if it is
defined and non-empty; otherwise, expands to string (which may
itself contain variable references.)
- ${var:+string}
- Expands to string if the variable var is
defined and non-empty; otherwise, expands to an empty string.
Note that when you include format variables in a command-line argument, you will
usually need to enclose the argument in single quotes ('...'), or insert a
backslash before the `$', to prevent the shell from trying to expand the
variables itself.
FILES¶
- $HOME/.clamz/config
- General configuration file, providing default settings for
the --output, --forbid-chars, --allow-uppercase and
--utf8-filenames options.
- $HOME/.clamz/amzfiles/
- Directory containing backup copies of AMZ files.
- $HOME/.clamz/logs/
- Directory containing log files.
ENVIRONMENT¶
- http_proxy
- HTTP proxy to use for downloading files; use `server:port'
to specify a port number.
AUTHOR¶
Benjamin Moody <floppusmaximus@users.sf.net>