LAME: Difference between revisions
imported>Sbmeirow →History: add quotes to make it more obvious, since this is a joke |
imported>Xose.vazquez |
||
| Line 3: | Line 3: | ||
{{Use dmy dates|date=February 2021}} | {{Use dmy dates|date=February 2021}} | ||
{{Infobox software | {{Infobox software | ||
|name = LAME | | name = LAME | ||
|logo = Lamelogo.svg | | logo = Lamelogo.svg | ||
|logo size = 200px | | logo size = 200px | ||
|logo caption = LAME official logo | | logo caption = LAME official logo | ||
|screenshot = LAME | | screenshot = LAME.PNG | ||
|caption = LAME v3. | | caption = LAME v3.97 encoding a VBR file | ||
|developer = [https://lame.sourceforge.io/developers.php LAME Developers] | | developer = [https://lame.sourceforge.io/developers.php LAME Developers] | ||
|released = {{Start date and age|1998}} | | released = {{Start date and age|1998}} | ||
| latest release version = {{wikidata|property|reference|P348}} | | latest release version = {{wikidata|property|reference|P348}} | ||
| latest release date = {{start date and age|{{wikidata|qualifier|P348|P577}}}} | | latest release date = {{start date and age|{{wikidata|qualifier|P348|P577}}}} | ||
| operating_system = [[Cross-platform]] | |||
|operating_system = [[Cross-platform]] | | genre = [[Codec]] | ||
|genre = [[Codec]] | | license = [[GNU Lesser General Public License]]<ref>{{Cite web|url=https://lame.cvs.sourceforge.net/viewvc/lame/lame/COPYING?revision=1.2&view=markup|title=CVS Info for project lame}}</ref> | ||
|license = [[GNU Lesser General Public License]]<ref>{{Cite web|url=https://lame.cvs.sourceforge.net/viewvc/lame/lame/COPYING?revision=1.2&view=markup|title=CVS Info for project lame}}</ref> | |||
}} | }} | ||
'''LAME''' is a software [[data compression|encoder]] that converts digital audio into the [[MP3|MP3 audio coding format]]. LAME is a [[free software]] project that was first released in 1998 and has incorporated many improvements since then, including an improved [[psychoacoustic]] model. The LAME encoder outperforms early encoders like [[L3enc]]<ref>{{cite web|quote=This is what made it possible for modern MP3 encoders (e.g. LAME) to improve far beyond the original L3enc and dist10 reference implementations.|url=https://wiki.xiph.org/OpusFAQ|title=Opus FAQ}}</ref> and possibly the "gold standard encoder" MP3enc, both marketed by Fraunhofer.<ref name="rl">{{cite web|title=LAME MP3 Encoder :: Related Links|url= | '''LAME''' is a software [[data compression|encoder]] that converts digital audio into the [[MP3|MP3 audio coding format]]. LAME is a [[free software]] project that was first released in 1998 and has incorporated many improvements since then, including an improved [[psychoacoustic]] model. The LAME encoder outperforms early encoders like [[L3enc]]<ref>{{cite web|quote=This is what made it possible for modern MP3 encoders (e.g. LAME) to improve far beyond the original L3enc and dist10 reference implementations.|url=https://wiki.xiph.org/OpusFAQ|title=Opus FAQ}}</ref><ref>{{Cite web |title=Results of the public MP3 listening test @ 128 kbps (October 2008) |url=https://listening-tests.hydrogenaudio.org/sebastian/mp3-128-1/results.htm |access-date=2025-08-21 |website=listening-tests.hydrogenaudio.org}}</ref> and possibly the "gold standard encoder" MP3enc, both marketed by Fraunhofer.<ref name="rl">{{cite web|title=LAME MP3 Encoder :: Related Links|url=https://lame.sourceforge.net/links.php#Alternatives|publisher=LAME Team|accessdate=19 March 2013}}</ref> | ||
LAME was required by some programs released as free software in which LAME was linked for MP3 support. This avoided including LAME itself, which used patented techniques | LAME was required by some programs released as free software, in which LAME was linked for MP3 support. This avoided including LAME itself, which used patented techniques and so required patent licenses in some countries. All relevant patents have since expired, and LAME is now bundled with [[Audacity (audio editor)|Audacity]].<ref>{{citation|title=Audacity Review|first=Jamie|last=Lendino|date=27 September 2019|journal= PC Magazine|url= https://www.pcmag.com/reviews/audacity|ref=none}}</ref> | ||
== History == | == History == | ||
Around mid-1998, Mike Cheng created LAME 1.0 as a set of modifications against the | === Earliest versions === | ||
Around mid-1998, Mike Cheng created LAME 1.0 as a set of modifications against the 8 Hz-MP3 encoder<ref>{{Cite web |title=8Hz Productions, MPEG Audio Layer III Encoder |url=http://www.8hz.com/mp3/ |access-date=2025-08-20 |website=www.8hz.com}}</ref> source code, and named the resulting encoder '''LAME''', as a [[recursive acronym]] for "'''L'''AME '''A'''in't an '''M'''P3 '''E'''ncoder", as initial releases of the software lacked the ability to produce encoded MP3 streams without third-party code.<ref>{{Cite web |title=LAME MP3 Encoder :: Rationale for LAME Development |url=https://lame.sourceforge.io/rationale.php |access-date=2025-08-20 |website=lame.sourceforge.io}}</ref> ''(Later releases allowed LAME to function as a standalone MP3 encoder.)'' | |||
Mark Taylor then started pursuing increased quality in addition to better speed, and released version 3.0 featuring gpsycho, a new [[psychoacoustic model]] he developed. A | After some quality concerns were raised by others, he decided to start again from scratch based on the dist10 MPEG reference software sources. His goal was only to speed up the dist10 sources, and leave its quality untouched. That branch (a patch against the reference sources) became Lame 2.0 in October 1998.<ref name=":0">{{Cite web |title=LAME Changelog |url=https://svn.code.sf.net/p/lame/svn/trunk/lame/doc/html/history.html |access-date=2025-08-20 |website=svn.code.sf.net}}</ref> The project started to attract other contributors. Mike Cheng eventually left leadership and started working on [[tooLAME]] (an [[MPEG-1 Audio Layer II|MP2]] encoder).<ref name=":0" /> | ||
=== Modern versions === | |||
Mark Taylor then started pursuing increased quality in addition to better speed, and released in May 1999 version 3.0 featuring gpsycho, a new [[psychoacoustic model]] he developed, along with a GTK-based graphical frame analyser, MP3x,<ref>{{Cite web |title=LAME MP3 Encoder :: MP3x Screenshots |url=https://lame.sourceforge.io/screenshots.php |access-date=2025-08-20 |website=lame.sourceforge.io}}</ref> providing a tool which would significantly help developers to work on the encoder.<ref>{{Cite web |title=LAME MP3 Encoder :: A Good Example For Tuning Pre-Echo Detection Criterion |url=https://lame.sourceforge.io/preecho.php |access-date=2025-08-20 |website=lame.sourceforge.io}}</ref> | |||
[[File:MP3x frame analyser.gif|thumb|MP3x analysing MP3 encoding done through LAME]] | |||
* May | This initial focus on quality by Mark Taylor quickly gathered interest from other people, who also started to bring quality and speed improvements. Within the most notable contributors are (in alphabetical order): Gabriel Bouvigne, Mike Cheng, Robert Hegemann, Frank Klemm, Alexander Leidinger, Naoki Shibata, Mark Taylor, Takehiro Tominaga.<ref>{{Cite web |title=LAME - Hydrogenaudio Knowledgebase |url=https://wiki.hydrogenaudio.org/index.php?title=LAME |access-date=2025-08-20 |website=wiki.hydrogenaudio.org}}</ref><ref>{{Cite web |title=LAME MP3 Encoder :: Developers |url=https://lame.sourceforge.io/developers.php |access-date=2025-08-20 |website=lame.sourceforge.io}}</ref> | ||
Over time, LAME evolved on the [[SourceForge]] website until it became the de facto CBR MP3 encoder. Later an ABR mode was added. Work progressed on true [[variable bit rate]] using a quality goal between 0 and 10. Eventually, numbers (such as -V 9.600) could generate excellent quality low bit rate voice encoding at only {{nowrap|41 kbit/s}} using the MPEG-2.5 extensions. | |||
A few key improvements since LAME 3.x, in chronological order:<ref name=":0" /> | |||
{| class="wikitable" | |||
|+ | |||
!Version | |||
!Date | |||
!Improvement | |||
|- | |||
|3.0 | |||
|May 1999 | |||
|A new psychoacoustic model (GPSYCHO) is released, featuring [[Joint encoding|joint-stereo]] encoding. | |||
|- | |||
|3.11 | |||
|June 1999 | |||
|The first [[variable bitrate]] (VBR) implementation is released. | |||
|- | |||
|3.12 | |||
|June 1999 | |||
|LAME is able to target lower sampling frequencies from MPEG-2. | |||
|- | |||
|3.52 | |||
|November 1999 | |||
|LAME switches from a [[GNU General Public License|GPL]] license to an [[GNU Lesser General Public License|LGPL]] license, which allows using it with closed-source applications. | |||
|- | |||
|3.81 | |||
|May 2000 | |||
|The last pieces of the original ISO demonstration code are removed. | |||
|- | |||
|3.90 | |||
|December 2001 | |||
|LAME became able to encode successive tracks without audible gaps by adding metadata in the INFO tag. | |||
|- | |||
|3.94 | |||
|December 2003 | |||
|Substantial improvement to default settings. LAME no longer requires users to enter complicated parameters to produce good results. | |||
|- | |||
|3.98 | |||
|May 2007 | |||
|Default variable bitrate encoding speed is vastly improved. | |||
|} | |||
== Audio quality == | |||
Audio quality is usually assessed through double blind [[Codec listening test|listening tests]], over a group of participants testing multiple samples. Lame has been tested in several such tests. | |||
At around {{nowrap|128k bit/s}}, it proved to be quite competitive, outperforming several other encoders: | |||
* In July 2003, at around {{nowrap|128k bit/s}} (ABR), LAME 3.90.3 has been demonstrated to outperform the Blade MP3 encoder (which produces identical results to the dist10 reference software), but has been demonstrated to be of lower quality than the [[Advanced Audio Coding|AAC]] encoder from [[QuickTime|Quicktime]], [[Musepack]], [[Ogg]] [[Vorbis]] and the [[Windows Media Audio|WMA]]9 Pro encoders.<ref>{{Cite web |title=Results of 128kbit/s Extension Listening Test |url=https://listening-tests.freetzi.com/html/128kbps_Extension_public_listening_test_results.htm |access-date=2025-08-21 |website=listening-tests.freetzi.com}}</ref> | |||
* In January 2004, at around {{nowrap|128k bit/s}} (ABR), LAME 3.95 has been demonstrated to be tied to the Audioactive MP3 encoder, and better than the MP3 encoder from Xing, [[Fraunhofer Society|FHG]], GoGo and [[iTunes]]. The test organizer latter added a clarification about the fact that the Xing and FhG encoders might have produced better results using different parameters.<ref>{{Cite web |title=Results of MP3 at 128kbit/s Listening Test |url=https://listening-tests.freetzi.com/html/MP3_128kbps_public_listening_test_results.htm |access-date=2025-08-21 |website=listening-tests.freetzi.com}}</ref> | |||
* In May 2004, at around {{nowrap|128k bit/s}} (VBR), LAME 3.96 has been demonstrated to outperform the WMA9 and [[ATRAC|Atrac3]] encoders, to be tied to the iTunes AAC encoder, and to be surpassed by the Vorbis aoTuV and [[Musepack|MPC]] encoders.<ref>{{Cite web |title=Results of Multiformat at 128kbit/s Listening Test |url=https://listening-tests.freetzi.com/html/Multiformat_128kbps_public_listening_test_results.htm |access-date=2025-08-21 |website=listening-tests.freetzi.com}}</ref> | |||
* In December 2005, at around {{nowrap|128k bit/s}} (VBR), LAME 3.97b2 has been demonstrated to be tied to the Nero and iTunes AAC-LC, Vorbis and WMA9 Pro encoders. All the tested encoders significantly outperformed the Shine MP3 encoder.<ref>{{Cite web |title=Results of the public multiformat listening test @ 128 kbps (December 2005) |url=https://listening-tests.hydrogenaudio.org/sebastian/mf-128-1/results.htm |access-date=2025-08-21 |website=listening-tests.hydrogenaudio.org}}</ref> | |||
At low bitrates, LAME is of significantly lower quality than encoders using other formats: | |||
* In June 2004, at {{nowrap|32k bit/s}} (CBR), LAME 3.96 has been outperformed by Vorbis, WMA9, [[Nero Burning ROM|Nero]] HE-AACv2, [[Mp3PRO|MP3Pro]], [[RealAudio]] and [[QDesign]] encoders (all of them using other formats than MP3).<ref>{{Cite web |title=Results of Dial-up bitrate (32kbit/s) Listening Test |url=https://listening-tests.freetzi.com/html/32kbps_public_listening_test_results.htm |access-date=2025-08-21 |website=listening-tests.freetzi.com}}</ref> | |||
=== Voice coding === | |||
For the general field of human speech reproduction, a bandwidth of 5,512 Hz is sufficient to produce excellent results (for voice) using the sampling rate of 11,025 and VBR encoding from 44,100 (standard) WAV file. English speakers average 41–{{nowrap|42 kbit/s}} with -V 9.6 setting but this may vary with the amount of silence recorded or the rate of delivery (wpm). Resampling to 12,000 (6K bandwidth) is selected by the LAME parameter -V 9.4. Likewise -V 9.2 selects a 16,000 sample rate and a resultant 8K lowpass filtering. Older versions of LAME and FFmpeg only support integer arguments for the variable bit rate quality selection parameter. The n.nnn quality parameter (-V) is documented at lame.sourceforge.net but is only supported in LAME with the new style VBR variable bit rate quality selector—not average bit rate (ABR). | |||
== Patents and legal issues == | == Patents and legal issues == | ||
Like all MP3 encoders, LAME implemented techniques covered by [[patent]]s owned by the [[Fraunhofer Society]] and others. The developers of LAME did not license the technology described by these patents. Distributing compiled binaries of LAME, its libraries, or programs that derive from LAME in countries where those patents have been granted may have constituted [[Patent infringement|infringement]], but since 23 April 2017, all of these patents have expired.<ref>{{cite web|url=https://www.iis.fraunhofer.de/en/ff/amm/prod/audiocodec/audiocodecs/mp3.html|title=mp3|access-date=2017-05-02|website=Fraunhofer IIS}}</ref><ref>{{cite web| | Like all MP3 encoders, LAME implemented techniques covered by [[patent]]s owned by the [[Fraunhofer Society]] and others. The developers of LAME did not license the technology described by these patents. Distributing compiled binaries of LAME, its libraries, or programs that derive from LAME in countries where those patents have been granted may have constituted [[Patent infringement|infringement]], but since 23 April 2017, all of these patents have expired.<ref>{{cite web|url=https://www.iis.fraunhofer.de/en/ff/amm/prod/audiocodec/audiocodecs/mp3.html|title=mp3|access-date=2017-05-02|website=Fraunhofer IIS}}</ref><ref>{{cite web |date=2017-05-18 |title=Alive and Kicking: MP3 software, patents and licenses (Fraunhofer Audio Blog) |url=http://www.audioblog.iis.fraunhofer.com/mp3-software-patents-licenses/ |access-date=2017-05-19 |website=Fraunhofer Audio Blog |publisher=Fraunhofer IIS |quote=}}</ref> | ||
The LAME developers stated that, since their code was only released in source code form, it should only be considered as an educational description of an MP3 encoder, and thus did not infringe any patent in itself. They also advised users to obtain relevant patent licenses before including a compiled version of the encoder in a product.<ref>{{Cite web |url=https://lame.sourceforge.net/tech-FAQ.txt |title=LAME Technical FAQ |last=Taylor |first=Mark |date=June 2000 |access-date=21 February 2008 |archive-date=8 February 2012 |archive-url=https://web.archive.org/web/20120208083016/http://lame.sourceforge.net/tech-FAQ.txt |url-status=dead }}</ref> Some software was released using this strategy: companies used the LAME library, but obtained patent licenses. | |||
==See also== | ==See also== | ||
| Line 53: | Line 106: | ||
==External links== | ==External links== | ||
* {{ | * {{sourceforge|lame}} | ||
* [http://www.rarewares.org/mp3-lame-bundle.php LAME binaries] - RareWares | * [http://www.rarewares.org/mp3-lame-bundle.php LAME binaries] - RareWares | ||
* [http://lame.buanzo.org/ LAME binaries for Audacity] - recommended for the [[Audacity (audio editor)|Audacity]] free and [[GPL]] audio editor | * [http://lame.buanzo.org/ LAME binaries for Audacity] - recommended for the [[Audacity (audio editor)|Audacity]] free and [[GPL]] audio editor | ||
Latest revision as of 23:24, 9 November 2025
Template:Short description Script error: No such module "about". Template:Use dmy dates Script error: No such module "Infobox".Template:Template otherScript error: No such module "Check for unknown parameters".Template:Main other
LAME is a software encoder that converts digital audio into the MP3 audio coding format. LAME is a free software project that was first released in 1998 and has incorporated many improvements since then, including an improved psychoacoustic model. The LAME encoder outperforms early encoders like L3enc[1][2] and possibly the "gold standard encoder" MP3enc, both marketed by Fraunhofer.[3]
LAME was required by some programs released as free software, in which LAME was linked for MP3 support. This avoided including LAME itself, which used patented techniques and so required patent licenses in some countries. All relevant patents have since expired, and LAME is now bundled with Audacity.[4]
History
Earliest versions
Around mid-1998, Mike Cheng created LAME 1.0 as a set of modifications against the 8 Hz-MP3 encoder[5] source code, and named the resulting encoder LAME, as a recursive acronym for "LAME Ain't an MP3 Encoder", as initial releases of the software lacked the ability to produce encoded MP3 streams without third-party code.[6] (Later releases allowed LAME to function as a standalone MP3 encoder.)
After some quality concerns were raised by others, he decided to start again from scratch based on the dist10 MPEG reference software sources. His goal was only to speed up the dist10 sources, and leave its quality untouched. That branch (a patch against the reference sources) became Lame 2.0 in October 1998.[7] The project started to attract other contributors. Mike Cheng eventually left leadership and started working on tooLAME (an MP2 encoder).[7]
Modern versions
Mark Taylor then started pursuing increased quality in addition to better speed, and released in May 1999 version 3.0 featuring gpsycho, a new psychoacoustic model he developed, along with a GTK-based graphical frame analyser, MP3x,[8] providing a tool which would significantly help developers to work on the encoder.[9]
This initial focus on quality by Mark Taylor quickly gathered interest from other people, who also started to bring quality and speed improvements. Within the most notable contributors are (in alphabetical order): Gabriel Bouvigne, Mike Cheng, Robert Hegemann, Frank Klemm, Alexander Leidinger, Naoki Shibata, Mark Taylor, Takehiro Tominaga.[10][11]
Over time, LAME evolved on the SourceForge website until it became the de facto CBR MP3 encoder. Later an ABR mode was added. Work progressed on true variable bit rate using a quality goal between 0 and 10. Eventually, numbers (such as -V 9.600) could generate excellent quality low bit rate voice encoding at only 41 kbit/s using the MPEG-2.5 extensions.
A few key improvements since LAME 3.x, in chronological order:[7]
| Version | Date | Improvement |
|---|---|---|
| 3.0 | May 1999 | A new psychoacoustic model (GPSYCHO) is released, featuring joint-stereo encoding. |
| 3.11 | June 1999 | The first variable bitrate (VBR) implementation is released. |
| 3.12 | June 1999 | LAME is able to target lower sampling frequencies from MPEG-2. |
| 3.52 | November 1999 | LAME switches from a GPL license to an LGPL license, which allows using it with closed-source applications. |
| 3.81 | May 2000 | The last pieces of the original ISO demonstration code are removed. |
| 3.90 | December 2001 | LAME became able to encode successive tracks without audible gaps by adding metadata in the INFO tag. |
| 3.94 | December 2003 | Substantial improvement to default settings. LAME no longer requires users to enter complicated parameters to produce good results. |
| 3.98 | May 2007 | Default variable bitrate encoding speed is vastly improved. |
Audio quality
Audio quality is usually assessed through double blind listening tests, over a group of participants testing multiple samples. Lame has been tested in several such tests.
At around 128k bit/s, it proved to be quite competitive, outperforming several other encoders:
- In July 2003, at around 128k bit/s (ABR), LAME 3.90.3 has been demonstrated to outperform the Blade MP3 encoder (which produces identical results to the dist10 reference software), but has been demonstrated to be of lower quality than the AAC encoder from Quicktime, Musepack, Ogg Vorbis and the WMA9 Pro encoders.[12]
- In January 2004, at around 128k bit/s (ABR), LAME 3.95 has been demonstrated to be tied to the Audioactive MP3 encoder, and better than the MP3 encoder from Xing, FHG, GoGo and iTunes. The test organizer latter added a clarification about the fact that the Xing and FhG encoders might have produced better results using different parameters.[13]
- In May 2004, at around 128k bit/s (VBR), LAME 3.96 has been demonstrated to outperform the WMA9 and Atrac3 encoders, to be tied to the iTunes AAC encoder, and to be surpassed by the Vorbis aoTuV and MPC encoders.[14]
- In December 2005, at around 128k bit/s (VBR), LAME 3.97b2 has been demonstrated to be tied to the Nero and iTunes AAC-LC, Vorbis and WMA9 Pro encoders. All the tested encoders significantly outperformed the Shine MP3 encoder.[15]
At low bitrates, LAME is of significantly lower quality than encoders using other formats:
- In June 2004, at 32k bit/s (CBR), LAME 3.96 has been outperformed by Vorbis, WMA9, Nero HE-AACv2, MP3Pro, RealAudio and QDesign encoders (all of them using other formats than MP3).[16]
Voice coding
For the general field of human speech reproduction, a bandwidth of 5,512 Hz is sufficient to produce excellent results (for voice) using the sampling rate of 11,025 and VBR encoding from 44,100 (standard) WAV file. English speakers average 41–42 kbit/s with -V 9.6 setting but this may vary with the amount of silence recorded or the rate of delivery (wpm). Resampling to 12,000 (6K bandwidth) is selected by the LAME parameter -V 9.4. Likewise -V 9.2 selects a 16,000 sample rate and a resultant 8K lowpass filtering. Older versions of LAME and FFmpeg only support integer arguments for the variable bit rate quality selection parameter. The n.nnn quality parameter (-V) is documented at lame.sourceforge.net but is only supported in LAME with the new style VBR variable bit rate quality selector—not average bit rate (ABR).
Patents and legal issues
Like all MP3 encoders, LAME implemented techniques covered by patents owned by the Fraunhofer Society and others. The developers of LAME did not license the technology described by these patents. Distributing compiled binaries of LAME, its libraries, or programs that derive from LAME in countries where those patents have been granted may have constituted infringement, but since 23 April 2017, all of these patents have expired.[17][18]
The LAME developers stated that, since their code was only released in source code form, it should only be considered as an educational description of an MP3 encoder, and thus did not infringe any patent in itself. They also advised users to obtain relevant patent licenses before including a compiled version of the encoder in a product.[19] Some software was released using this strategy: companies used the LAME library, but obtained patent licenses.
See also
Script error: No such module "Portal".
References
External links
- Template:Sourceforge
- LAME binaries - RareWares
- LAME binaries for Audacity - recommended for the Audacity free and GPL audio editor
- LAME Wiki - HydrogenAudio (audiophile information)
- LAME Mp3 Info Tag revision 1 Specifications
Template:Compression software implementations
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ a b c Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".