LAME: Difference between revisions
(major merging proposed) |
|||
Line 1: | Line 1: | ||
[[Image:Lamelogo.png|right|280px|LAME official logo]] | [[Image:Lamelogo.png|right|280px|LAME official logo]] | ||
LAME (Lame Ain't an MP3 Encoder) is the recommended encoder. It has been developed by the open-source community since 1998, and has become the highest quality [[MP3]] encoder for most purposes. | '''LAME''' (Lame Ain't an MP3 Encoder) is the recommended [[MP3]] encoder. It has been developed by the open-source community since 1998, and has become the highest quality [[MP3]] encoder for most purposes. | ||
Some benefits for using LAME: | Some benefits for using LAME: | ||
Line 11: | Line 11: | ||
=History= | ==History== | ||
LAME development began around mid-1998. Mike Cheng started it as a patch against the 8hz-MP3 encoder sources. After some quality concerns raised by others, he decided to start from scratch based on the dist10 sources. That branch (a patch against the reference sources) became LAME 2.0, and only on LAME 3.81 they got rid of all dist10 code, making LAME a completely new program-not a mere patch of an existing encoder. | LAME development began around mid-1998. Mike Cheng started it as a patch against the 8hz-MP3 encoder sources. After some quality concerns raised by others, he decided to start from scratch based on the dist10 sources. That branch (a patch against the reference sources) became LAME 2.0, and only on LAME 3.81 they got rid of all dist10 code, making LAME a completely new program-not a mere patch of an existing encoder. | ||
Line 19: | Line 18: | ||
Nowadays LAME is considered the best MP3 encoder at mid-high bitrates and features the best VBR model among MP3 implementations, mostly thanks to the dedicated work of talented developers like Takehiro Tominaga, Naoki Shibata, Darin Morrison, Gabriel Bouvigne, Robert Hegemann, etc. And development is still going on... | Nowadays LAME is considered the best MP3 encoder at mid-high bitrates and features the best VBR model among MP3 implementations, mostly thanks to the dedicated work of talented developers like Takehiro Tominaga, Naoki Shibata, Darin Morrison, Gabriel Bouvigne, Robert Hegemann, etc. And development is still going on... | ||
=Recommended Encoder Settings= | ==Recommended Encoder Settings== | ||
{{merge-from|Recommended LAME}} | |||
==Introduction== | |||
This article describes the [[Hydrogenaudio]] recommended settings to be used with [[LAME]] for highest quality [[MP3]] encoding. | |||
These settings require LAME 3.94 or later. LAME 3.97beta2 is the recommended version ([[Lame Compiles|click here to download]]). | |||
Avoid using alpha (a) versions of LAME. More often than not those are exclusively for testing purposes. Use them only if you want to help developers with feedback. | |||
Note: The rule of thumb when considering encoding options: at a given bitrate, VBR is higher quality than ABR, which is higher quality than CBR (VBR > ABR > CBR in terms of quality). The exception to this is when you choose the highest possible CBR bitrate, which is 320 kbps (-b 320 = --alt-preset insane), but this produces very large filesizes for very little audible benefit. | |||
''Note: all modes and settings mentioned in this topic belong to the specifications of the MP3 standard, and the resulting MP3s should be playable by every MP3 decoder that conforms with the standard. If your decoder or device does not play MP3s produced by LAME, blame the manufacturer or developer, and not LAME.'' | |||
==VBR (Variable bitrate) settings== | |||
'''[[VBR]]:''' ''variable bitrate mode. Use variable bitrate modes when the goal is to achieve a fixed level of quality using the lowest possible bitrate.'' | |||
[[VBR]] is best used to target a specific quality level, instead of a specific bitrate. The final file size of a VBR encode is less predictable than with [[ABR]], but the quality is usually better. | |||
-V(number) where number is 0-9, 0 being highest quality, 9 being the lowest. | |||
{| align=center border="1" cellpadding="4" cellspacing="0" | |||
|+'''List of recommended settings''' | |||
| '''Switch''' || '''Preset''' || '''Target Kbit/s''' || '''Bitrate range kbit/s''' | |||
|- | |||
| -b 320 || --preset insane || 320 || 320 CBR | |||
|- | |||
| -V 0 --vbr-new || --preset fast extreme || 245 || 220...260 | |||
|- | |||
| -V 0 || --preset extreme || 245 || 220...260 | |||
|- | |||
| -V 1 --vbr-new || || 225 || 200...250 | |||
|- | |||
| -V 1 || || 225 || 200...250 | |||
|- | |||
| -V 2 --vbr-new || --preset fast standard || 190 || 170...210 | |||
|- | |||
| -V 2 || --preset standard || 190 || 170...210 | |||
|- | |||
| -V 3 --vbr-new || || 175 || 155...195 | |||
|- | |||
| -V 3 || || 175 || 155...195 | |||
|- | |||
| -V 4 --vbr-new || --preset fast medium || 165 || 145...185 | |||
|- | |||
| -V 4 || --preset medium || 165 || 145...185 | |||
|- | |||
| -V 5 --vbr-new || || 130 || 110...150 | |||
|- | |||
| -V 5 || || 130 || 110...150 | |||
|- | |||
| -V 6 --vbr-new || || 115 || 95...135 | |||
|- | |||
| -V 6 || || 115 || 95...135 | |||
|- | |||
| -V 7 --vbr-new || || 100 || 80...120 | |||
|- | |||
| -V 7 || || 100 || 80...120 | |||
|- | |||
| -V 8 --vbr-new || || 85 || 65...105 | |||
|- | |||
| -V 8 || || 85 || 65...105 | |||
|- | |||
| -V 9 --vbr-new || || 65 || 45...85 | |||
|- | |||
| -V 9 || || 65 || 45...85 | |||
|} | |||
See also [[Technical data for recommended LAME settings]] | |||
If you need a predictable bitrate (in a streaming application, for example), use ABR or CBR modes, described below. | |||
==ABR (average bitrate) settings== | |||
'''[[ABR]]:''' ''average bitrate mode. A compromise between VBR and CBR modes, ABR encoding varies bits around a specified target bitrate. Use ABR when you need to know the final size of the file but still want to allow the encoder some flexibility to decide which passages need more bits.'' | |||
''(128 kbit/s ABR: roughly the same filesize as 128 kbit/s CBR)'' | |||
* '''[[ABR]] Setting tuned from 320 kbit/s down to 80 kbit/s''' | |||
** --preset <bitrate> | |||
<bitrate> (desired averaged bitrate in kbit/s) can be any value between 8 - 320 , like eg. 9, 17, 80, 128, 133, 200 etc. | |||
:: Example: --preset 200 | |||
==CBR (constant bitrate) settings== | |||
'''[[CBR]]:''' ''constant bitrate mode. CBR encoding is not efficient. Whereas VBR and ABR modes can supply more bits to complex music passages and save bits on simpler ones, CBR encodes every frame at the same bitrate. CBR is only recommended for usage in streaming situations where the upper bitrate must be strictly enforced.'' | |||
*'''[[CBR]] Setting tuned from 320 kbit/s down to 80 kbit/s''' | |||
** -b <bitrate> | |||
<bitrate> (bitrate in kbit/s) must be chosen from the following values: 8, 16, 24, 32, 40, 48, 64, 80, 96, 112, 128, 160, 192, 224, 256, or 320. | |||
==Remarks== | |||
The ""--vbr-new"" switch enables the new VBR mode. Lame will encode much faster than the old/default VBR mode. In terms of quality, --vbr-new appears to be better than the old model, but reports of artifacts when using the new model do exist. Despite these possible issues, --vbr-new is currently recommended over the default VBR mode due to both the speed and quality increases afforded by the new algorithm. | |||
===Quick Start=== | |||
'''Best Quality : 'archiving'''' | |||
<font style="color:red">-b 320</font>. This is the strongest setting for MP3, with the lowest risk of [[artifact]]s. | |||
With the exception of a few situations, quality is rarely better than the highest [[VBR]] profiles described below. However, 'archiving' music using a lossy format like MP3 is never recommended – no matter how transparent the resulting files might be. | |||
Alternative: [[Lossless]] formats like [[WavPack]], [[FLAC]] etc. allow true archiving bit for bit like on original CD. | |||
'''High Quality : HiFi, home or quiet listening''' | |||
<font style="color:green">-V3 --vbr-new</font> (~175 kbps), <font style="color:green">-V2 --vbr-new</font> (~190 kbps), <font style="color:green">-V1 --vbr-new</font> (~210 kbps) or <font style="color:green">-V0 --vbr-new</font> (~230 kbps) are recommended. | |||
These settings will produce [[transparent]] encoding (transparent = most people cannot distinguish the mp3 from the original in an ABX blind test). | |||
Audible differences between these presets exist, but are extremely marginal. | |||
'''Portable : background noise and low bitrate requirement, small sizes''' | |||
<font style="color:purple">-V6 --vbr-new</font> (~115 kbps), <font style="color:purple">-V5 --vbr-new</font> (~130 kbps) or <font style="color:purple">-V4 --vbr-new</font> (~160 kbps) are recommended for this use. | |||
-V6 --vbr-new produces an acceptable quality, while -V4--vbr-new should be close to perceptual [[transparency]]. | |||
'''Very low bitrate, small sizes:''' eg. for voice, radio, [[mono]] encoding etc. | |||
For very low bitrates, up to 100kbps, [[ABR]] is most often the best solution. | |||
Use '''--abr xx''' (e.g. --abr 80). | |||
[[Image:lame-chart-2.png|frame|center|Here a trial to get a view, how the <font style="color:red">perceived listening quality</font> improves with settings/<font style="color:blue">averaged filesize</font>]] | |||
'''Hey! What happened to "--alt-preset"?''' | |||
The revolutionary --alt-preset system was introduced in LAME 3.90; it was replaced by the --preset flags in later versions. Starting with version 3.94, the -V x quality system was introduced, which allows finer control over the desired bitrate; the --preset switches were made into aliases to the corresponding -V flags for the sake of backwards compatibility. '''There is no difference between the output you get if you use "-V2" or "--alt-preset standard".''' (Although adding "--vbr-new" is recommended for now, see above for details.) | |||
More encoding options are available under the new system, such as -V1, which provides a level of quality between the old "standard" and "extreme" presets, or -V3, which is between the old "medium" and "standard". | |||
LAME 3.97 features more streamlined command line options, and it's recommended to stick to one of the values described in the text or shown in the tables above. <font style="color:blue">You don't need to worry</font> anymore about quality, settings, arcane combinations of switches, or presets. | |||
For example, the following command lines will all produce the same output: | |||
--alt-preset insane = --preset insane = -b 320 = --preset 320 = --preset cbr 320 | |||
(--preset cbr 320 is the exact same thing as --alt-preset insane, etc.) | |||
==Setting up EAC for LAME.exe with tagging== | |||
Please check [[EAC and Lame|this page]] to see how to configure [[EAC]] to use LAME.exe as its encoder. | |||
==Additional reading== | |||
* [[LAME|More information on LAME]] | |||
* [http://www.hydrogenaudio.org/forums/index.php?act=ST&f=16&t=32288 Forum discussion of the recommended settings] | |||
* [http://www.hydrogenaudio.org/forums/index.php?act=ST&f=15&t=203 Forum discussion of the recommended settings (older)] | |||
* [[Recommended LAME credits|Credits for the recommended settings]] | |||
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=32288&view=findpost&p=327262 Previous recommendations (outdated)] | |||
* [[MP3]] | |||
* [[Exact_Audio_Copy|Exact Audio Copy]] | |||
---- | |||
[[Recommended LAME credits|Credits]] | |||
==Further reading | |||
* [[EAC_and_Lame | Configuring EAC and LAME]] | |||
==External links== | |||
* [http://lame.sourceforge.net LAME official homepage] | * [http://lame.sourceforge.net LAME official homepage] | ||
* [http://www.rjamorim.com/rrw/lame.html Historical versions of LAME] at ReallyRareWares | * [http://www.rjamorim.com/rrw/lame.html Historical versions of LAME] at ReallyRareWares | ||
* [http://www.rjamorim.com/test/ Several multiformat listening tests] featuring LAME and other encoders. | * [http://www.rjamorim.com/test/ Several multiformat listening tests] featuring LAME and other encoders. | ||
{{merge-from|Recommended LAME credits}} | |||
[[Category:Software]] | [[Category:Software]] | ||
[[Category:Encoder/Decoder]] | [[Category:Encoder/Decoder]] |
Revision as of 20:48, 13 September 2006
LAME (Lame Ain't an MP3 Encoder) is the recommended MP3 encoder. It has been developed by the open-source community since 1998, and has become the highest quality MP3 encoder for most purposes.
Some benefits for using LAME:
- Highly optimised presets
- Fast encoding
- CBR, ABR and VBR encoding methods
- Gapless playback with LAME-header compliant decoders
- Exact Audio Copy and CDex support
History
LAME development began around mid-1998. Mike Cheng started it as a patch against the 8hz-MP3 encoder sources. After some quality concerns raised by others, he decided to start from scratch based on the dist10 sources. That branch (a patch against the reference sources) became LAME 2.0, and only on LAME 3.81 they got rid of all dist10 code, making LAME a completely new program-not a mere patch of an existing encoder.
The project quickly became a team effort. Mike Cheng eventually left leadership and started working on tooLAME, an MP2 encoder. Mark Taylor became leader and released version 3.0 featuring gpsycho, a new psychoacoustic model developed by him.
Nowadays LAME is considered the best MP3 encoder at mid-high bitrates and features the best VBR model among MP3 implementations, mostly thanks to the dedicated work of talented developers like Takehiro Tominaga, Naoki Shibata, Darin Morrison, Gabriel Bouvigne, Robert Hegemann, etc. And development is still going on...
Recommended Encoder Settings
Introduction
This article describes the Hydrogenaudio recommended settings to be used with LAME for highest quality MP3 encoding.
These settings require LAME 3.94 or later. LAME 3.97beta2 is the recommended version (click here to download).
Avoid using alpha (a) versions of LAME. More often than not those are exclusively for testing purposes. Use them only if you want to help developers with feedback.
Note: The rule of thumb when considering encoding options: at a given bitrate, VBR is higher quality than ABR, which is higher quality than CBR (VBR > ABR > CBR in terms of quality). The exception to this is when you choose the highest possible CBR bitrate, which is 320 kbps (-b 320 = --alt-preset insane), but this produces very large filesizes for very little audible benefit.
Note: all modes and settings mentioned in this topic belong to the specifications of the MP3 standard, and the resulting MP3s should be playable by every MP3 decoder that conforms with the standard. If your decoder or device does not play MP3s produced by LAME, blame the manufacturer or developer, and not LAME.
VBR (Variable bitrate) settings
VBR: variable bitrate mode. Use variable bitrate modes when the goal is to achieve a fixed level of quality using the lowest possible bitrate.
VBR is best used to target a specific quality level, instead of a specific bitrate. The final file size of a VBR encode is less predictable than with ABR, but the quality is usually better.
-V(number) where number is 0-9, 0 being highest quality, 9 being the lowest.
Switch | Preset | Target Kbit/s | Bitrate range kbit/s |
-b 320 | --preset insane | 320 | 320 CBR |
-V 0 --vbr-new | --preset fast extreme | 245 | 220...260 |
-V 0 | --preset extreme | 245 | 220...260 |
-V 1 --vbr-new | 225 | 200...250 | |
-V 1 | 225 | 200...250 | |
-V 2 --vbr-new | --preset fast standard | 190 | 170...210 |
-V 2 | --preset standard | 190 | 170...210 |
-V 3 --vbr-new | 175 | 155...195 | |
-V 3 | 175 | 155...195 | |
-V 4 --vbr-new | --preset fast medium | 165 | 145...185 |
-V 4 | --preset medium | 165 | 145...185 |
-V 5 --vbr-new | 130 | 110...150 | |
-V 5 | 130 | 110...150 | |
-V 6 --vbr-new | 115 | 95...135 | |
-V 6 | 115 | 95...135 | |
-V 7 --vbr-new | 100 | 80...120 | |
-V 7 | 100 | 80...120 | |
-V 8 --vbr-new | 85 | 65...105 | |
-V 8 | 85 | 65...105 | |
-V 9 --vbr-new | 65 | 45...85 | |
-V 9 | 65 | 45...85 |
See also Technical data for recommended LAME settings
If you need a predictable bitrate (in a streaming application, for example), use ABR or CBR modes, described below.
ABR (average bitrate) settings
ABR: average bitrate mode. A compromise between VBR and CBR modes, ABR encoding varies bits around a specified target bitrate. Use ABR when you need to know the final size of the file but still want to allow the encoder some flexibility to decide which passages need more bits.
(128 kbit/s ABR: roughly the same filesize as 128 kbit/s CBR)
- ABR Setting tuned from 320 kbit/s down to 80 kbit/s
- --preset <bitrate>
<bitrate> (desired averaged bitrate in kbit/s) can be any value between 8 - 320 , like eg. 9, 17, 80, 128, 133, 200 etc.
- Example: --preset 200
CBR (constant bitrate) settings
CBR: constant bitrate mode. CBR encoding is not efficient. Whereas VBR and ABR modes can supply more bits to complex music passages and save bits on simpler ones, CBR encodes every frame at the same bitrate. CBR is only recommended for usage in streaming situations where the upper bitrate must be strictly enforced.
- CBR Setting tuned from 320 kbit/s down to 80 kbit/s
- -b <bitrate>
<bitrate> (bitrate in kbit/s) must be chosen from the following values: 8, 16, 24, 32, 40, 48, 64, 80, 96, 112, 128, 160, 192, 224, 256, or 320.
Remarks
The ""--vbr-new"" switch enables the new VBR mode. Lame will encode much faster than the old/default VBR mode. In terms of quality, --vbr-new appears to be better than the old model, but reports of artifacts when using the new model do exist. Despite these possible issues, --vbr-new is currently recommended over the default VBR mode due to both the speed and quality increases afforded by the new algorithm.
Quick Start
Best Quality : 'archiving'
-b 320. This is the strongest setting for MP3, with the lowest risk of artifacts. With the exception of a few situations, quality is rarely better than the highest VBR profiles described below. However, 'archiving' music using a lossy format like MP3 is never recommended – no matter how transparent the resulting files might be. Alternative: Lossless formats like WavPack, FLAC etc. allow true archiving bit for bit like on original CD.
High Quality : HiFi, home or quiet listening
-V3 --vbr-new (~175 kbps), -V2 --vbr-new (~190 kbps), -V1 --vbr-new (~210 kbps) or -V0 --vbr-new (~230 kbps) are recommended. These settings will produce transparent encoding (transparent = most people cannot distinguish the mp3 from the original in an ABX blind test). Audible differences between these presets exist, but are extremely marginal.
Portable : background noise and low bitrate requirement, small sizes
-V6 --vbr-new (~115 kbps), -V5 --vbr-new (~130 kbps) or -V4 --vbr-new (~160 kbps) are recommended for this use. -V6 --vbr-new produces an acceptable quality, while -V4--vbr-new should be close to perceptual transparency.
Very low bitrate, small sizes: eg. for voice, radio, mono encoding etc.
For very low bitrates, up to 100kbps, ABR is most often the best solution.
Use --abr xx (e.g. --abr 80).
Hey! What happened to "--alt-preset"?
The revolutionary --alt-preset system was introduced in LAME 3.90; it was replaced by the --preset flags in later versions. Starting with version 3.94, the -V x quality system was introduced, which allows finer control over the desired bitrate; the --preset switches were made into aliases to the corresponding -V flags for the sake of backwards compatibility. There is no difference between the output you get if you use "-V2" or "--alt-preset standard". (Although adding "--vbr-new" is recommended for now, see above for details.)
More encoding options are available under the new system, such as -V1, which provides a level of quality between the old "standard" and "extreme" presets, or -V3, which is between the old "medium" and "standard".
LAME 3.97 features more streamlined command line options, and it's recommended to stick to one of the values described in the text or shown in the tables above. You don't need to worry anymore about quality, settings, arcane combinations of switches, or presets.
For example, the following command lines will all produce the same output:
--alt-preset insane = --preset insane = -b 320 = --preset 320 = --preset cbr 320
(--preset cbr 320 is the exact same thing as --alt-preset insane, etc.)
Setting up EAC for LAME.exe with tagging
Please check this page to see how to configure EAC to use LAME.exe as its encoder.
Additional reading
- More information on LAME
- Forum discussion of the recommended settings
- Forum discussion of the recommended settings (older)
- Credits for the recommended settings
- Previous recommendations (outdated)
- MP3
- Exact Audio Copy
==Further reading
External links
- LAME official homepage
- Historical versions of LAME at ReallyRareWares
- Several multiformat listening tests featuring LAME and other encoders.