969 lines
37 KiB
Plaintext
969 lines
37 KiB
Plaintext
|
|
% lame [options] inputfile [outputfile]
|
|
inputfile and/or outputfile can be "-", which means stdin/stdout.
|
|
|
|
For more options, just type:
|
|
% lame --help or lame --longhelp
|
|
|
|
Note: The HTML documentation is more complete than this text file.
|
|
|
|
|
|
=======================================================================
|
|
Constant Bitrate Examples:
|
|
=======================================================================
|
|
fixed bit rate jstereo 128 kbps encoding:
|
|
% lame -b128 sample.wav sample.mp3
|
|
|
|
Use highest quality mode, slowest:
|
|
% lame -q0 -b128 sample.wav sample.mp3
|
|
|
|
Use fast encode, low quality (no noise shaping)
|
|
% lame -f -b128 sample.wav sample.mp3
|
|
|
|
|
|
=======================================================================
|
|
Variable Bitrate Examples:
|
|
=======================================================================
|
|
LAME has two types of variable bitrate: ABR and VBR.
|
|
|
|
ABR is the type of variable bitrate encoding usually found in other
|
|
MP3 encoders, Vorbis and AAC. The number of bits is determined by
|
|
some metric (like perceptual entropy, or just the number of bits
|
|
needed for a certain set of encoding tables), and it is not based on
|
|
computing the actual encoding/quantization error. ABR should always
|
|
give results equal or better than CBR:
|
|
|
|
ABR: (--abr <x> means encode with an average bitrate of around x kbps)
|
|
% lame --abr 128 sample.wav sample.mp3
|
|
|
|
Another way to enable abr is:
|
|
% lame --preset 128 sample.wav sample.mp3
|
|
|
|
|
|
VBR is a true variable bitrate mode which bases the number of bits for
|
|
each frame on the measured quantization error relative to the
|
|
estimated allowed masking. The value 0 is the highest quality, which
|
|
creates bigger files, and the lowest is 9.999, which creates the smallest
|
|
files. Decimal values can be specified, like: 4.51.
|
|
The resulting filesizes depend on the input material. On typical music
|
|
you can expect -V5 resulting in files averaging 132 kbps, -V2 averaging
|
|
200 kbps.
|
|
|
|
Variable Bitrate (VBR): (use -V n to adjust quality/filesize)
|
|
% lame -V2 sample.wav sample.mp3
|
|
|
|
|
|
=======================================================================
|
|
Low Bitrates
|
|
=======================================================================
|
|
At lower bitrates, (like 24 kbps per channel), it is recommended that
|
|
you use a 16 kHz sampling rate combined with lowpass filtering. LAME,
|
|
as well as commercial encoders (FhG, Xing) will do this automatically.
|
|
However, if you feel there is too much (or not enough) lowpass
|
|
filtering, you may need to try different values of the lowpass cutoff
|
|
and passband width (--resample, --lowpass and --lowpass-width options).
|
|
|
|
|
|
=======================================================================
|
|
Streaming Example
|
|
=======================================================================
|
|
|
|
% cat inputfile | lame [options] - - > output
|
|
|
|
|
|
=======================================================================
|
|
Scripts are included (in the 'misc' subdirectory)
|
|
to run lame on multiple files:
|
|
|
|
bash script: mlame Run "mlame -?" for instructions.
|
|
sh script: auenc Run auenc for instructions
|
|
sh script: mugeco.sh
|
|
|
|
Perl script which will re-encode mp3 files and preserve id3 tags:
|
|
lameid3.pl
|
|
|
|
Windows scripts:
|
|
lame4dos.bat
|
|
Lame.vbs (and an HTML frontend: LameGUI.html)
|
|
|
|
|
|
=======================================================================
|
|
options guide:
|
|
=======================================================================
|
|
These options are explained in detail below.
|
|
|
|
By default, LAME accepts a PCM audio sample inside a .WAV container as the
|
|
input file, in 8, 16, 24 and 32 bits integer and in IEEE FLOAT.
|
|
If it is compiled with libsndfile, then it also supports the extra formats
|
|
that the library supports.
|
|
There is also support for raw PCM data and piped input
|
|
|
|
|
|
Input options:
|
|
--scale <arg> multiply PCM input by <arg>
|
|
--scale-l <arg> scale channel 0 (left) input (multiply PCM data) by <arg>
|
|
--scale-r <arg> scale channel 1 (right) input (multiply PCM data) by <arg>
|
|
--gain number apply Gain adjustment in decibels, range -20.0 to +12.0.
|
|
--swap-channel Swap Left and Right input channels
|
|
--mp1input input file is an MPEG 1 Layer I file. decode on the fly
|
|
--mp2input input file is an MPEG 1 Layer II file. decode on the fly
|
|
--mp3input input file is an MPEG 1 Layer III file. decode on the fly
|
|
--nogap <file1> <file2> <...>
|
|
gapless encoding for a set of contiguous files
|
|
--nogapout <dir>
|
|
output dir for gapless encoding (must precede --nogap)
|
|
--nogaptags allow the use of VBR tags in gapless encoding
|
|
--out-dir path If no explicit output file is specified, a file will be
|
|
written at given path. Ignored when using piped/streamed input
|
|
|
|
|
|
Input options for raw PCM:
|
|
-r read the input file as a raw (headerless) PCM stream
|
|
-s n input sampling frequency in kHz (Default 44.1Khz)
|
|
--signed input is signed (default)
|
|
--unsigned input is unsigned
|
|
--bitwidth w input bit width is w (default 16)
|
|
-x swap bytes of input file
|
|
--little-endian input is little-endian (default)
|
|
--big-endian input is big-endian
|
|
-a downmix stereo file to mono file for mono encoding.
|
|
Needed with raw input for the -mm mode to do the downmix.
|
|
|
|
Resampling and filtering:
|
|
--lowpass Frequency(kHz), lowpass filter cutoff above freq.
|
|
Range [0.001..50]kHz or [50..50000]Hz
|
|
--lowpass-width
|
|
Frequency(kHz), lowpass window width.
|
|
Range [0.001..16]kHz or [16..50000]Hz
|
|
(See further restriction in the detailed explanation)
|
|
--highpass Frequency(kHz), highpass filter cutoff below freq.
|
|
Range [0.001..16]kHz or [16..50000]Hz
|
|
(See further restriction in the detailed explanation)
|
|
--highpass-width
|
|
Frequency(kHz), highpass window width
|
|
(See further restriction in the detailed explanation)
|
|
--resample n Sampling frequency of output file(kHz)
|
|
Default=automatic depending on settings like bitrate.
|
|
|
|
Operational:
|
|
--preset type Enables some preconfigured settings. Check below for each
|
|
of the valid values
|
|
--decode assume input file is an mp3 file, and decode to wav.
|
|
--decode-mp3delay samples
|
|
Set the encoder delay to use to decode the input .mp3 file
|
|
-t disable writing of WAV header when using --decode
|
|
(decode to raw pcm, native endian format (use -x to swap))
|
|
|
|
-m m/s/j/f/a mode selection
|
|
-q n Internal algorithm quality setting 0..9.
|
|
0 = slowest algorithms, but potentially highest quality
|
|
9 = faster algorithms, very poor quality
|
|
Default is 3. Read the differences between VBR and CBR below.
|
|
-h same as -q2
|
|
-f same as -q7
|
|
|
|
--priority <type>
|
|
sets the process priority (Windows and OS/2-specific):
|
|
0,1 = Low priority (IDLE_PRIORITY_CLASS)
|
|
2 = normal priority (NORMAL_PRIORITY_CLASS, defaul
|
|
3,4 = High priority (HIGH_PRIORITY_CLASS))
|
|
Note: Calling '--priority' without a parameter will set it to 0.
|
|
|
|
|
|
|
|
Constant Bit Rate (CBR)
|
|
-b n set bitrate (8, 16, 24, ..., 320)
|
|
--freeformat produce a free format bitstream. User must also specify
|
|
a bitrate with -b, between 8 and 640 kbps.
|
|
|
|
Variable Bit Rate (VBR)
|
|
-v VBR ( alias of -V 4 )
|
|
--vbr-old use old variable bitrate (VBR) routine
|
|
--vbr-new use new variable bitrate (VBR) routine (default)
|
|
-V n VBR quality setting (0=highest quality, 9.999=lowest)
|
|
-b n specify a minimum allowed bitrate (8,16,24,...,320)
|
|
-B n specify a maximum allowed bitrate (8,16,24,...,320)
|
|
-F strictly enforce minimum bitrate
|
|
-t disable VBR informational tag
|
|
--nohist disable display of VBR bitrate histogram
|
|
|
|
--abr n specify average bitrate desired
|
|
|
|
|
|
|
|
MP3 header/stream options:
|
|
-e n/5/c de-emphasis
|
|
-p add CRC error protection
|
|
-c mark the encoded file as copyrighted
|
|
-o mark the encoded file as a copy
|
|
-S don't print progress report, VBR histogram
|
|
--strictly-enforce-ISO comply as much as possible to ISO MPEG spec
|
|
--replaygain-fast compute RG fast but slightly inaccurately (default)
|
|
--replaygain-accurate compute RG more accurately and find the peak sample
|
|
--noreplaygain disable ReplayGain analysis
|
|
--clipdetect enable --replaygain-accurate and print a message whether
|
|
clipping occurs and how far the waveform is from full scale
|
|
|
|
|
|
ID3 tagging:
|
|
|
|
--tt <title> audio/song title (max 30 chars for version 1 tag)
|
|
--ta <artist> audio/song artist (max 30 chars for version 1 tag)
|
|
--tl <album> audio/song album (max 30 chars for version 1 tag)
|
|
--ty <year> audio/song year of issue (1 to 9999)
|
|
--tc <comment> user-defined text (max 30 chars for v1 tag, 28 for v1.1)
|
|
--tn <track[/total]>
|
|
audio/song track number (1 to 255, creates v1.1 tag.
|
|
adding a total force a version 2 tag)
|
|
--tg <genre> audio/song genre (name or number in list)
|
|
--ti <file> audio/song albumArt (jpeg/png/gif file, v2.3 tag)
|
|
--tv <id=value> user-defined frame specified by id and value (v2.3 tag)
|
|
--add-id3v2 force addition of version 2 tag
|
|
--id3v1-only add only a version 1 tag
|
|
--id3v2-only add only a version 2 tag
|
|
--id3v2-utf16 add following options in unicode text encoding
|
|
--id3v2-latin1 add following options in latin-1 text encoding
|
|
--space-id3v1 pad version 1 tag with spaces instead of nulls
|
|
--pad-id3v2 same as '--pad-id3v2-size 128'
|
|
--pad-id3v2-size <num>
|
|
adds version 2 tag, pad with extra <num> bytes
|
|
--genre-list print alphabetically sorted ID3 genre list and exit
|
|
--ignore-tag-errors
|
|
ignore errors in values passed for tags
|
|
|
|
Note: A version 2 tag will NOT be added unless one of the input fields
|
|
won't fit in a version 1 tag (e.g. the title string is longer than 30
|
|
characters), or the '--add-id3v2' or '--id3v2-only' options are used,
|
|
or output is redirected to stdout.
|
|
|
|
|
|
Verbosity:
|
|
--disptime secs Print progress report every secs seconds
|
|
--nohist Disable VBR histogram display
|
|
--silent Don't print anything on screen
|
|
--quiet Don't print anything on screen
|
|
--verbose Print a lot of useful information
|
|
--version Print License information
|
|
--license Print License information
|
|
--help Shows the common list of switches.
|
|
Add id3 or dev to get help for a specified topic
|
|
--usage Shows the common list of switches.
|
|
Add id3 or dev to get help for a specified topic
|
|
--longhelp Shows the complete list of switches
|
|
|
|
|
|
|
|
=======================================================================
|
|
Detailed description of all options in alphabetical order
|
|
=======================================================================
|
|
|
|
|
|
=======================================================================
|
|
Downmix
|
|
=======================================================================
|
|
-a
|
|
|
|
mix the stereo input file to mono and encode as mono.
|
|
|
|
This option is only needed in the case of raw PCM stereo input
|
|
(because LAME cannot determine the number of channels in the input file).
|
|
To encode a stereo (RAW) PCM input file as mono, use "lame -m m -a"
|
|
|
|
For WAV and AIFF input files, using "-m m" will always produce a
|
|
mono .mp3 file from both mono and stereo input.
|
|
|
|
|
|
=======================================================================
|
|
Average bitrate encoding (aka Safe VBR)
|
|
=======================================================================
|
|
--abr n
|
|
|
|
turns on encoding with a targeted average bitrate of n kbps, allowing
|
|
to use frames of different sizes. The allowed range of n is 8...320
|
|
kbps, you can use any integer value within that range.
|
|
|
|
|
|
=======================================================================
|
|
Use version 2 of the ID3 tag standard
|
|
=======================================================================
|
|
--add-id3v2 Force addition of version 2 tag
|
|
|
|
Tells LAME to add the tag information as id3v2. This implies adding both,
|
|
a version 1 and a version 2 tag, if the values fit on a version 1 tag.
|
|
See --id3v1-only and --id3v2-only if you want a more fine-grained control.
|
|
|
|
|
|
=======================================================================
|
|
Bitrate
|
|
=======================================================================
|
|
-b n
|
|
|
|
MPEG-1 layer III sample frequencies (kHz): 32 48 44.1
|
|
bitrates (kbps): 32 40 48 56 64 80 96 112 128 160 192 224 256 320
|
|
|
|
MPEG-2 layer III sample frequencies (kHz): 16 24 22.05
|
|
bitrates (kbps): 8 16 24 32 40 48 56 64 80 96 112 128 144 160
|
|
|
|
MPEG-2.5 layer III sample frequencies (kHz): 8 12 11.025
|
|
bitrates (kbps): 8 16 24 32 40 48 56 64
|
|
|
|
The bitrate to be used. Default is 128kbps in MPEG1 (64 for mono),
|
|
64kbps in MPEG2 (32 for mono) and 32kbps in MPEG2.5 (16 for mono).
|
|
|
|
When used with variable bitrate encodings (VBR), -b specifies the
|
|
minimum bitrate to use. This is useful only if you need to circumvent
|
|
a buggy hardware device with strange bitrate constrains.
|
|
|
|
|
|
=======================================================================
|
|
Max bitrate
|
|
=======================================================================
|
|
-B n
|
|
|
|
see also option "-b" for allowed bitrates.
|
|
|
|
Maximum allowed bitrate when using VBR/ABR.
|
|
|
|
Using -B is NOT RECOMMENDED. A 128 kbps CBR bitstream, because of the
|
|
bit reservoir, can actually have frames which use as many bits as a
|
|
320 kbps frame. ABR/VBR modes minimize the use of the bit reservoir, and
|
|
thus need to allow 320 kbps frames to get the same flexability as CBR
|
|
streams. This is useful only if you need to circumvent a buggy hardware
|
|
device with strange bitrate constrains.
|
|
|
|
|
|
=======================================================================
|
|
Endianess, big.
|
|
=======================================================================
|
|
--big-endian Set the byte order to big-endian.
|
|
|
|
This switch tells LAME that the RAW pcm input is encoded in big-endian
|
|
instead of little-endian.
|
|
|
|
|
|
=======================================================================
|
|
Sample bit with
|
|
=======================================================================
|
|
--bitwidth Sets the bitwidth value
|
|
|
|
With RAW pcm input, this switch lets you specify the bitwidth of the same
|
|
(8 bits, 16 bits...)
|
|
|
|
|
|
=======================================================================
|
|
Copyright
|
|
=======================================================================
|
|
-c
|
|
|
|
flag the encoded file as copyrighted
|
|
|
|
|
|
=======================================================================
|
|
Clipping detection
|
|
=======================================================================
|
|
--clipdetect
|
|
|
|
Enable --replaygain-accurate and print a message whether clipping
|
|
occurs and how far in dB the waveform is from full scale.
|
|
|
|
This option is not usable if the MP3 decoder was _explicitly_ disabled
|
|
in the build of LAME.
|
|
|
|
See also: --replaygain-accurate
|
|
|
|
|
|
=======================================================================
|
|
MPEG audio decode capability
|
|
=======================================================================
|
|
--decode
|
|
|
|
This uses LAME's HIP decoder to decode an MP3 file (layers 1, 2 and 3) to
|
|
a wav file.
|
|
|
|
If -t is used (disable wav header), LAME will output
|
|
raw pcm in native endian format (use -x to swap bytes).
|
|
|
|
This option is not usable if the MP3 decoder was _explicitly_ disabled
|
|
in the build of LAME.
|
|
|
|
HIP stands for Hip Isn't a Player and is based off of Michael Hipp's mpglib 0.2a
|
|
|
|
|
|
=======================================================================
|
|
MPEG audio decode capability
|
|
=======================================================================
|
|
--decode-mp3delay x Indicate a different encoder delay for decoding
|
|
|
|
When decoding an mp3 file, LAME automatically corrects for the start delay
|
|
that the encoder had to put into it. This setting lets you specify a different
|
|
delay than LAME's own one, so that it is possible to compensate for the delay
|
|
of mp3's generated with other encoders.
|
|
|
|
|
|
=======================================================================
|
|
De-emphasis
|
|
=======================================================================
|
|
-e n/5/c
|
|
|
|
n = (none, default)
|
|
5 = 0/15 microseconds
|
|
c = CCITT j.17
|
|
|
|
All this does is set a flag in the bitstream. If you have a PCM
|
|
input file where one of the above types of (obsolete) emphasis has
|
|
been applied, you can set this flag in LAME. Then the mp3 decoder
|
|
should de-emphasize the output during playback, although most
|
|
decoders ignore this flag.
|
|
|
|
A better solution would be to apply the de-emphasis with a standalone
|
|
utility before encoding, and then encode without -e.
|
|
|
|
|
|
=======================================================================
|
|
Strictly enforce VBR minimum bitrate
|
|
=======================================================================
|
|
-F
|
|
|
|
strictly enforce VBR minimum bitrate. Without this option, passages of
|
|
analog silence will be encoded at the minimum bitrate possible (32 or 8,
|
|
depending on MPEG version).
|
|
|
|
|
|
=======================================================================
|
|
Free format bitstreams
|
|
=======================================================================
|
|
--freeformat
|
|
|
|
LAME will produce a fixed bitrate, free format bitstream. User must
|
|
specify the desired bitrate in kbps, which can be any integer between
|
|
8 and 640.
|
|
|
|
Not supported by most decoders. Complient decoders (of which there
|
|
are few) are only required to support up to 320 kbps.
|
|
|
|
Decoders known to handle free format:
|
|
|
|
supports up to
|
|
mpg123 640 kbps
|
|
MAD 640 kbps
|
|
"lame --decode" 640 kbps
|
|
l3dec 310 kbps
|
|
|
|
|
|
=======================================================================
|
|
Gain
|
|
=======================================================================
|
|
--gain Apply gain in decibels.
|
|
|
|
Apply Gain adjustment in decibels, range -20.0 to +12.0. 0dBFS means no
|
|
amplification.
|
|
|
|
|
|
=======================================================================
|
|
High pass filter
|
|
=======================================================================
|
|
--highpass number Use a highpass filter when encoding
|
|
|
|
Enables a highpass filter of the specified frequency when encoding the source.
|
|
Range [0.001..50]kHz or [50..50000]Hz.
|
|
This is usually not required, and the gains are usually minimal. May be useful
|
|
to remove an interference signal on 50Hz or 60Hz, or a DC offset.
|
|
(default: disabled)
|
|
Note: The current implementation has a minimum highpass frequency of
|
|
(67.5/62)% of the sample rate (I.e. 481Hz at 44Khz).
|
|
|
|
|
|
=======================================================================
|
|
High pass filter
|
|
=======================================================================
|
|
--highpass-width width Set the width of the decaying curve.
|
|
|
|
Specify the width in Hz of the decaying curve of the highpass.
|
|
Range [16..50000]Hz
|
|
The minimum (and default) width is 75% of a band's width (which is 1/64th of
|
|
the sample rate).
|
|
Note: See the remark in the --highpass command above.
|
|
|
|
|
|
=======================================================================
|
|
ID3 tag modes
|
|
=======================================================================
|
|
--id3v1-only Disable the use of id3v2.
|
|
|
|
Put it before any tag setting.
|
|
This setting tells LAME to use ID3 v1 tag only, and not create an ID3v2
|
|
even if it thinks it should.
|
|
|
|
--id3v2-only Disable the user ov id3v1.
|
|
|
|
Put it before any tag setting.
|
|
This setting tells LAME to use ID3 v2 tag only. An ID3 v1 tag would not
|
|
be written.
|
|
|
|
--ignore-tag-errors Ignore tag information errors
|
|
|
|
Put it before any tag setting.
|
|
This tells lame to ignore the tag information it sees as erroneous and
|
|
continue encoding without those. Without this setting, errors are reported
|
|
and encoding does not start.
|
|
|
|
|
|
=======================================================================
|
|
Endianess. little
|
|
=======================================================================
|
|
--little-endian Set the byte order to little-endian.
|
|
|
|
This switch tells LAME that the RAW pcm input is encoded in little-endian.
|
|
It is the default setting.
|
|
|
|
|
|
=======================================================================
|
|
Low pass filter
|
|
=======================================================================
|
|
--lowpass number Use a lowpass filter when encoding
|
|
|
|
Enables a lowpass filter of the specified frequency when encoding the source.
|
|
Range [0.001..50]kHz or [50..50000]Hz
|
|
|
|
Using a lowpass filter helps reducing the amount of data to encode. This is
|
|
important in MP3 due to a limitation in very high frequencies (>16Khz).
|
|
The default value depends on the target bitrate/quality. It is not recommended
|
|
to change it as a general basis.
|
|
|
|
--lowpass-width width Set the width of the decaying curve.
|
|
|
|
Specify the width in Hz of the decaying curve of the lowpass.
|
|
Range [0.001..16]kHz or [16..50000]Hz
|
|
The lowpass is in the center of this curve. The minimum (and default) width
|
|
is 75% of a band's width (which is 1/64th of the sample rate).
|
|
|
|
|
|
=======================================================================
|
|
Modes:
|
|
=======================================================================
|
|
-m m mono
|
|
-m l get only the left channel of a stereo signal for a mono output
|
|
-m r get only the right channel of a stereo signal for a mono output
|
|
-m s (forced) L/R stereo
|
|
-m j joint stereo
|
|
-m f forced mid/side stereo
|
|
-m d dual (independent) channels. Its purpose was meant for dual language
|
|
streams where only one of them should be decoded.
|
|
Most decoders just decode them as a stereo stream.
|
|
-m a Currently, a synonym of m j. (In older releases it selected
|
|
different modes depending on the bitrate)
|
|
|
|
MONO is the default mode for mono input files. If "-m m" is specified
|
|
for a stereo input file, the two channels will be averaged into a mono
|
|
signal. (Note: See comments about the -a switch for RAW PCM streams)
|
|
|
|
(FORCED) L/R STEREO encodes the left and the right signals independently,
|
|
and gives more or less bits to each, depending on the currently available.
|
|
|
|
JOINT STEREO is the default mode of encoding.
|
|
jstereo means the encoder can use (on a frame by frame basis) either
|
|
L/R stereo or mid/side stereo. In mid/side stereo, the mid(L+R) and side(L-R)
|
|
channels are encoded, and more bits are allocated to the mid channel
|
|
than the side channel. When there isn't too much stereo separation, this
|
|
effectively increases the bandwidth, so having higher quality with the same
|
|
amount of bits.
|
|
|
|
Using mid/side stereo inappropriately can result in audible
|
|
compression artifacts. Too much switching between mid/side and L/R
|
|
stereo can also sound bad. To determine when to switch to mid/side
|
|
stereo, LAME uses a much more sophisticated algorithm than that
|
|
described in the ISO documentation.
|
|
|
|
FORCED MID/SIDE STEREO forces all frames to be encoded mid/side stereo. It
|
|
should only be used if you are sure every frame of the input file
|
|
has very little stereo seperation.
|
|
|
|
DUAL CHANNEL mode is similar to encode the left and right as two mono signals.
|
|
Its purpose was meant for Dual language streams where only one of them should
|
|
be decoded. Most decoders just decode them as a stereo stream
|
|
|
|
INTENSITY STEREO
|
|
Not supported.
|
|
|
|
|
|
=======================================================================
|
|
MP3 input file
|
|
=======================================================================
|
|
--mp1input --mp2input --mp3input MPEG layer I, II or III input file
|
|
|
|
Assume the input file is a MP1/2/3 file. LAME will decode the input file
|
|
before re-encoding it. Since MP3 is a lossy format, this is not recommended
|
|
in general. But it is useful for creating low bitrate mp3s from high bitrate
|
|
mp3s. If the filename ends in ".mp3" LAME will assume it is an MP3. For
|
|
stdin or MP3 files which dont end in .mp3 you need to use this switch.
|
|
|
|
|
|
=======================================================================
|
|
No Gap (continuous audio) encoding of multiple files
|
|
=======================================================================
|
|
--nogap file1 file2 [...] Encodes multiple continuous files.
|
|
|
|
Encodes multiple files (ordered by position) which are meant to be played
|
|
gaplessly.
|
|
|
|
By default, LAME will encode the files with accurate length, but the first
|
|
and last frame may contain a few erroneous samples for signals that don't
|
|
fade-in/out (as is the case of continuous playback).
|
|
|
|
This setting solves that by using the samples from the next/previous file to
|
|
compute the encoding.
|
|
|
|
--nogapout dir Specify a directory for the output of the files encoded
|
|
with --nogap
|
|
|
|
This setting should precede --nogap, and is used to specify the alternate
|
|
directory where to store the encoded files. The default one is the input file
|
|
directory.
|
|
|
|
--nogaptags Enables the use of VBR tags with files encoded with --nogap
|
|
|
|
Tells LAME to put VBR tags to encoded files if they are encoded in VBR or ABR
|
|
modes. Else, using the --nogap option doesn't generate it.
|
|
|
|
|
|
=======================================================================
|
|
Disable historgram display
|
|
=======================================================================
|
|
--nohist
|
|
|
|
By default, LAME will display a bitrate histogram while producing
|
|
VBR mp3 files. This will disable that feature.
|
|
|
|
|
|
=======================================================================
|
|
Disable ReplayGain analysis
|
|
=======================================================================
|
|
--noreplaygain
|
|
|
|
By default ReplayGain analysis is enabled. This switch disables it.
|
|
|
|
See also: --replaygain-accurate, --replaygain-fast
|
|
|
|
|
|
=======================================================================
|
|
Non-original
|
|
=======================================================================
|
|
-o
|
|
|
|
mark the encoded file as a copy
|
|
|
|
|
|
=======================================================================
|
|
CRC error protection
|
|
=======================================================================
|
|
-p
|
|
|
|
Turn on CRC error protection.
|
|
It will add a cyclic redundancy check (CRC) code in each frame, allowing
|
|
to detect transmission errors that could occur on the MP3 stream. However,
|
|
it takes 16 bits per frame that would otherwise be used for encoding, and
|
|
therefore will slightly reduce the sound quality.
|
|
|
|
|
|
=======================================================================
|
|
ID3 V2 padding
|
|
=======================================================================
|
|
--pad-id3v2 Pad ID3v2 tag.
|
|
|
|
Pads the ID3v2 tag with extra 128bytes to allow it to expand.
|
|
|
|
|
|
=======================================================================
|
|
Preset system.
|
|
=======================================================================
|
|
--preset x Enable one of the presets
|
|
|
|
Setting Meaning
|
|
--preset medium -V 5
|
|
--preset standard -V 2
|
|
--preset extreme -V 0
|
|
--preset insane -b 320
|
|
--preset fast xxx In versions older than LAME 3.98, "fast" was needed to
|
|
enable the vbr-new routine. It is no longer needed.
|
|
--preset number --abr number
|
|
--preset cbr number -b number
|
|
|
|
Old compatibility settings. Meaningless
|
|
--preset phone -b 16 -m m
|
|
--preset phon+ /
|
|
lw / mw-eu -b 24 -m m
|
|
--preset mw-us -b 40 -m m
|
|
--preset voice -b 56 -m m
|
|
--preset fm / radio -b 112
|
|
--preset hifi -b 160
|
|
--preset cd -b 192
|
|
--preset studio -b 256
|
|
|
|
|
|
=======================================================================
|
|
Windows and OS/2 process priority control
|
|
=======================================================================
|
|
--priority <type>
|
|
|
|
(Windows and OS/2 only)
|
|
|
|
Sets the process priority for LAME while running under Windows or IBM OS/2.
|
|
This can be very useful to avoid the system becoming slow and/or unresponsive.
|
|
By setting LAME to run in a lower priority, you leave more time for the system
|
|
to update basic processing (drawing windows, polling keyboard/mouse, etc). The
|
|
impact in LAME's performance is minimal if you use priority 0 to 2.
|
|
|
|
The valid parameters are:
|
|
|
|
0 = Low priority (IDLE, delta = 0)
|
|
1 = Medium priority (IDLE, delta = +31)
|
|
2 = Regular priority (REGULAR, delta = -31)
|
|
3 = High priority (REGULAR, delta = 0)
|
|
4 = Maximum priority (REGULAR, delta = +31)
|
|
|
|
Note that if you call '--priority' without a parameter, priority 0 will be
|
|
assumed.
|
|
|
|
|
|
=======================================================================
|
|
Algorithm quality selection
|
|
=======================================================================
|
|
-q n
|
|
|
|
Bitrate is of course the main influence on quality. The higher the bitrate,
|
|
the higher the quality. But for a given bitrate, we have a choice of algorithms
|
|
to determine the best scalefactors and Huffman coding (noise shaping).
|
|
|
|
For CBR, ABR and --vbr-old modes, the following table applies
|
|
|
|
-q 0 Use the best algorithms (Best Huffman coding search, full outer
|
|
loop, and the highest precision of several parameters).
|
|
-q 1 to -q 4 Similar to -q 0 without the full outer loop and decreasing
|
|
precision of parameters the further from q0. -q 3 is the default
|
|
-q 5 and -q 6 Same as -q 7, but enables noise shaping and increases subblock
|
|
gain
|
|
-q 7 to -q 9 Same as -f. Very fast, OK quality. Psychoacoustics are used for
|
|
pre-echo and mid/side stereo, but no noise-shaping is done.
|
|
|
|
For the default VBR mode since LAME 3.98, the following table applies
|
|
|
|
-q 0 to -q 4 include all features of the other modes and additionally use
|
|
the best search when applying Huffman coding.
|
|
-q 5 and -q 6 include all features of -q7, calculate and consider actual
|
|
quantisation noise, and additionally enable subblock gain.
|
|
-q 7 to -q 9 This level uses a psymodel but does not calculate quantisation
|
|
noise when encoding: it takes a quick guess.
|
|
|
|
|
|
=======================================================================
|
|
Input file is raw pcm
|
|
=======================================================================
|
|
-r
|
|
|
|
Assume the input file is raw pcm. Sampling rate and mono/stereo/jstereo
|
|
must be specified on the command line. Without -r, LAME will perform
|
|
several fseek()'s on the input file looking for WAV and AIFF headers.
|
|
|
|
Not supported if LAME is compiled to use LIBSNDFILE.
|
|
|
|
|
|
=======================================================================
|
|
Slightly more accurate ReplayGain analysis and finding the peak sample
|
|
=======================================================================
|
|
--replaygain-accurate
|
|
|
|
Compute "Radio" ReplayGain on the decoded data stream. Find the peak sample
|
|
by decoding on the fly the encoded data stream and store it in the file.
|
|
|
|
|
|
ReplayGain analysis does _not_ affect the content of a compressed data
|
|
stream itself, it is a value stored in the header of a sound file.
|
|
Information on the purpose of ReplayGain and the algorithms used is
|
|
available from http://www.replaygain.org/
|
|
|
|
By default, LAME performs ReplayGain analysis on the input data (after
|
|
the user-specified volume scaling). This behaviour might give slightly
|
|
inaccurate results because the data on the output of a lossy
|
|
compression/decompression sequence differs from the initial input data.
|
|
When --replaygain-accurate is specified the mp3 stream gets decoded on
|
|
the fly and the analysis is performed on the decoded data stream.
|
|
Although theoretically this method gives more accurate results, it has
|
|
several disadvantages:
|
|
* tests have shown that the difference between the ReplayGain values
|
|
computed on the input data and decoded data is usually no greater
|
|
than 0.5dB, although the minimum volume difference the human ear
|
|
can perceive is about 1.0dB
|
|
* decoding on the fly significantly slows down the encoding process
|
|
The apparent advantage is that:
|
|
* with --replaygain-accurate the peak sample is determined and
|
|
stored in the file. The knowledge of the peak sample can be useful
|
|
to decoders (players) to prevent a negative effect called 'clipping'
|
|
that introduces distortion into sound.
|
|
|
|
|
|
Only the "Radio" ReplayGain value is computed. It is stored in the LAME tag.
|
|
The analysis is performed with the reference volume equal to 89dB.
|
|
Note: the reference volume has been changed from 83dB on transition from
|
|
version 3.95 to 3.95.1.
|
|
|
|
This option is not usable if the MP3 decoder was _explicitly_ disabled
|
|
in the build of LAME. (Note: if LAME is compiled without the MP3 decoder,
|
|
ReplayGain analysis is performed on the input data after user-specified
|
|
volume scaling).
|
|
|
|
See also: --replaygain-fast, --noreplaygain, --clipdetect
|
|
|
|
|
|
=======================================================================
|
|
Fast ReplayGain analysis
|
|
=======================================================================
|
|
--replaygain-fast
|
|
|
|
Compute "Radio" ReplayGain of the input data stream after user-specified
|
|
volume scaling and/or resampling.
|
|
|
|
ReplayGain analysis does _not_ affect the content of a compressed data
|
|
stream itself, it is a value stored in the header of a sound file.
|
|
Information on the purpose of ReplayGain and the algorithms used is
|
|
available from http://www.replaygain.org/
|
|
|
|
Only the "Radio" ReplayGain value is computed. It is stored in the LAME tag.
|
|
The analysis is performed with the reference volume equal to 89dB.
|
|
Note: the reference volume has been changed from 83dB on transition
|
|
from version 3.95 to 3.95.1.
|
|
|
|
This switch is enabled by default.
|
|
|
|
See also: --replaygain-accurate, --noreplaygain
|
|
|
|
|
|
=======================================================================
|
|
Output sampling frequency in kHz
|
|
=======================================================================
|
|
--resample n
|
|
|
|
where n = 8, 11.025, 12, 16, 22.05, 24, 32, 44.1, 48. The values as Hz
|
|
instead of Khz are also supported. Else, the value will be ignored.
|
|
|
|
Output sampling frequency. Resample the input if necessary.
|
|
|
|
If not specified, LAME may sometimes resample automatically
|
|
when faced with extreme compression conditions (like encoding
|
|
a 44.1 kHz input file at 32 kbps). To disable this automatic
|
|
resampling, you have to use --resamle to set the output samplerate
|
|
equal to the input samplerate. In that case, LAME will not
|
|
perform any extra computations.
|
|
|
|
|
|
=======================================================================
|
|
Sampling frequency in kHz (for input RAW PCM)
|
|
=======================================================================
|
|
-s n
|
|
|
|
where n = sampling rate in kHz.
|
|
|
|
Required for raw PCM input files. Otherwise it will be determined
|
|
from the header information in the input file.
|
|
|
|
LAME will automatically resample the input file to one of the
|
|
supported MP3 samplerates if necessary.
|
|
|
|
|
|
=======================================================================
|
|
Silent operation
|
|
=======================================================================
|
|
-S
|
|
|
|
don't print progress report
|
|
|
|
|
|
=======================================================================
|
|
Scale
|
|
=======================================================================
|
|
--scale <arg>
|
|
|
|
Scales input by <arg>. This just multiplies the PCM data
|
|
(after it has been converted to floating point) by <arg>.
|
|
|
|
<arg> > 1: increase volume
|
|
<arg> = 1: no effect
|
|
<arg> < 1: reduce volume
|
|
|
|
Use with care, since most MP3 decoders will truncate data
|
|
which decodes to values greater than 32768.
|
|
|
|
|
|
=======================================================================
|
|
Strict ISO complience
|
|
=======================================================================
|
|
--strictly-enforce-ISO
|
|
|
|
With this option, LAME will enforce the 7680 bit limitation on
|
|
total frame size. This results in many wasted bits for
|
|
high bitrate encodings.
|
|
|
|
|
|
=======================================================================
|
|
Disable VBR tag/WAV header
|
|
=======================================================================
|
|
-t
|
|
This setting has two different uses:
|
|
|
|
When encoding to VBR, this setting disables writing the VBR Tag (also
|
|
known as XING tag). This tag is embedded by default in the frame 0 of
|
|
MP3 file. It allows VBR aware players to accurately seek and compute playing
|
|
times in such files.
|
|
|
|
When decoding MP3 to WAV using --decode, this flag will disable writing the
|
|
WAV header. The output will be raw pcm, native endian format. Use -x to swap
|
|
bytes.
|
|
|
|
|
|
=======================================================================
|
|
VBR quality setting
|
|
=======================================================================
|
|
-V n Enable VBR encoding
|
|
|
|
Encodes using the VBR algorithm, at the indicated quality.
|
|
0=highest quality, bigger files. 9.999=lowest quality, smaller files.
|
|
Decimal values can be specified, like: 4.51
|
|
|
|
On average, the resulting bitrates are as follows:
|
|
Setting Average bitrate (kbps)
|
|
0 245
|
|
2 190
|
|
3 175
|
|
4 165
|
|
5 130
|
|
|
|
Using -V 7 or higher (lower quality) is not recommended.
|
|
ABR usually produces better results.
|
|
|
|
|
|
=======================================================================
|
|
Swap bytes
|
|
=======================================================================
|
|
-x
|
|
|
|
swap bytes in the input file (and output file when using --decode).
|
|
For sorting out little endian/big endian type problems. If your encodings
|
|
sound like static, try this first.
|
|
|
|
|
|
=======================================================================
|
|
Ignore scalefactor band 21
|
|
=======================================================================
|
|
-Y Ignore noise in sbf21, like CBR mode does
|
|
|
|
Allows -V2, -V1 and -V0 to not encode the highest frequencies accurately,
|
|
if doing so causes disproportional increases in bitrate.
|
|
This is the same that CBR and ABR modes do.
|
|
|
|
Due to the design of the MP3 format, to keep precision in the last scalefactor
|
|
band, an encoder needs to increase the precision in all the bands (not only in
|
|
this one).
|
|
The consequence is an increase of bitrate (+60kbps in some cases) compared to
|
|
not keeping that precision. Generally, this band should allow for distortions,
|
|
so using this switch shouldn't cause harm.
|
|
|