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>