This repository contains the LAME 4.0 cVBRb source tree maintained by Cole Williams, based on the LAME MP3 encoder source.
The cVBRb work extends the encoder with constrained-VBR behaviour and bitrate-boost controls while retaining the wider LAME source tree and its existing Windows components.
Project website: https://www.lamemp3.co.uk/
The cVBRb branch adds encoder-side controls including:
- strict VBR minimum bitrate handling (
--vbr-min-strict) - bitrate boost levels (
--bitrate-boost) - cVBR/cVBRb status reporting in the command-line encoder
- corresponding libmp3lame API support
- Media Foundation encoder support for CBR, normal VBR and cVBRb
The implementation is primarily in the main encoder/frontend and libmp3lame code. The Media Foundation Transform under MFT/ also exposes cVBRb-specific configuration.
Several Windows codec interfaces are included in the source tree, but they are not all cVBRb-enabled.
| Component | Location | cVBRb status |
|---|---|---|
| Command-line LAME encoder | frontend/ |
cVBRb-enabled |
| libmp3lame | libmp3lame/ |
cVBRb-enabled |
| Media Foundation encoder | MFT/ |
cVBRb-enabled |
| DirectShow MP3 encoder | dshow/ |
Not patched to expose/use cVBRb-specific controls |
| DirectShow MP3 decoder | DShowDecoder/ |
Decoder only; no cVBRb encoder controls |
| ACM codec | ACM/ |
Legacy CBR/ABR compatibility interface; cVBRb intentionally not exposed |
The DirectShow and ACM sources are therefore included as separate LAME components and should not be described as cVBRb implementations in this repository. The ACM interface is intentionally kept conservative for compatibility with older Windows applications; cVBRb, strict minimum bitrate and bitrate boost belong to the main encoder/libmp3lame and MFT paths.
The tree contains the original LAME build system together with Windows/Visual Studio project files under vc_solution/. Historical build files that are part of the LAME source distribution are retained, while local development-only build experiments and generated build products are not included.
For the newer Windows components, see:
MFT/README.md— Media Foundation encoderdshow/README.md— DirectShow encoderDShowDecoder/README.md— DirectShow decoderACM/README.md— ACM codecvc_solution/README.vs2019.txt— existing Visual Studio notes
Build products are intentionally not included in the GitHub source archive.
frontend/— LAME command-line frontendlibmp3lame/— MP3 encoding library and cVBRb implementationinclude/— public LAME API headersMFT/— Windows Media Foundation MP3 encoderdshow/— DirectShow MP3 encoderDShowDecoder/— DirectShow MP3 decoderACM/— Windows ACM codecdirectshow-baseclasses/— DirectShow BaseClasses used by the filter projectsvc_solution/— Visual Studio projectsmpglib/— MPEG audio decoding code from the LAME treeDll/— legacy LAME encoder DLL interface
The existing LAME licensing in this source tree remains in place. No new licence terms are introduced by this README.
See:
COPYINGfor the GNU Library General Public License version 2 text supplied with the sourceLICENSEfor the existing LAME licensing guidance- individual source files for their respective copyright and licence notices
Third-party code included in the tree may carry its own notices and terms. Those notices remain authoritative for the relevant files.
LAME is the work of the LAME Project and its contributors. cVBRb modifications in this branch are by Cole Williams.
LAME project: https://lame.sourceforge.io/
cVBRb builds and project information: https://www.lamemp3.co.uk/