LAME VBR Bitrate Curve Study

Three albums · five VBR settings · nine encoder builds

A generational shift in the LAME VBR bitrate curve

This study compares LAME 3.95.1 through 3.101 beta 3 across three complete albums using -V0 through -V4. The result is not just a size test: it shows how the bitrate allocation curve changed between LAME generations.

The short version

3.99.5, 3.100 and 3.101b3 form a modern VBR-output family. They are effectively identical in average size across the tested VBR levels.

The curve changed after 3.98.4. The 3.99.5+ family spends more bits at -V0 and -V1, but is smaller than 3.98.4 at -V2.

Older encoders often make smaller files. That should be read as different tuning, not automatic proof of better quality.

What was tested

SourcesThree complete albums, used as varied real-world material rather than short synthetic samples.
Settings-V0, -V1, -V2, -V3 and -V4.
Build controlAll non-VS binaries were compiled with MinGW on the same day and on the same machine, to keep their compiled characteristics as closely matched as practical. The Optimized builds were built separately in Visual Studio 2026 and are intentionally performance-enhanced using runtime SIMD path selection for SSE, AVX2 and AVX-512 capable CPUs, plus OpenMP multi-thread support.
MeasuredFinal output size, elapsed encode time, and MiB per second from the benchmark batch output.
InterpretationFile size is treated as evidence of bitrate allocation behaviour, not as proof of audible quality.

Build methodology note

The MinGW results are intended to compare LAME source generations under a controlled plain-build baseline: the non-VS versions were compiled on the same day, on the same machine, using MinGW, to minimise differences caused by environment drift.

The Optimized Visual Studio 2026 results should be read differently. They are not a neutral compiler comparison against MinGW; they are enhanced target builds designed to test whether the 3.101b3 codebase can retain the 3.99.5-style VBR output profile while recovering throughput. The enhancements include runtime SIMD path selection for SSE, AVX2 and AVX-512 capable CPUs, together with OpenMP multi-thread support.

Average output size across three albums

Lower numbers mean smaller files. The chart gives the clearest visual overview of the curve, while the table below remains available for the exact MiB values. All non-Optimized rows are MinGW plain builds; Optimized rows are Visual Studio 2026 builds.

Line chart showing average output size across VBR settings for selected LAME versions
Average output size across the three-album test set. This is the headline curve view for the page. It shows file-size behaviour only and does not claim audible quality differences.

The chart is intentionally focused on a smaller set of representative versions so the curve remains easy to read. The full table below still includes every tested build.

Version / buildToolchain-V0-V1-V2-V3-V4
3.95.1 MinGW plain 98.762 MiB 87.863 MiB 76.955 MiB 68.604 MiB 65.042 MiB
3.96.1 MinGW plain 97.670 MiB 87.109 MiB 76.444 MiB 68.190 MiB 64.901 MiB
3.97 MinGW plain 99.607 MiB 89.670 MiB 79.064 MiB 65.345 MiB 59.101 MiB
3.98.4 MinGW plain 100.899 MiB 89.409 MiB 81.553 MiB 67.781 MiB 62.179 MiB
3.99.5 MinGW plain 107.213 MiB 93.076 MiB 79.242 MiB 70.475 MiB 62.539 MiB
3.100 MinGW plain 107.213 MiB 93.076 MiB 79.242 MiB 70.475 MiB 62.539 MiB
3.101b3 cVBR MinGW plain 107.195 MiB 93.055 MiB 79.219 MiB 70.477 MiB 62.543 MiB
3.101b3 cVBR Optimized Visual Studio 2026 107.195 MiB 93.055 MiB 79.219 MiB 70.477 MiB 62.543 MiB
3.101b3 cVBRb Optimized Visual Studio 2026 107.195 MiB 93.055 MiB 79.219 MiB 70.477 MiB 62.543 MiB

3.99.5 versus 3.98.4: the curve shift

The 3.99.5 family is not simply larger or smaller. It redistributes bits across the quality scale, which is why a shift chart can be more revealing than the raw numbers alone.

Horizontal bar chart showing output size percentage difference from LAME 3.98.4 to LAME 3.99.5 by VBR setting
Output-size change from 3.98.4 to 3.99.5 at each VBR setting. Positive values mean 3.99.5 produced larger files; negative values mean it produced smaller files.
Setting3.98.4 avg size3.99.5 avg sizeSize differenceSpeed difference
-V0 100.899 MiB 107.213 MiB +6.26% +0.49%
-V1 89.409 MiB 93.076 MiB +4.10% +1.80%
-V2 81.553 MiB 79.242 MiB -2.83% +1.90%
-V3 67.781 MiB 70.475 MiB +3.97% +1.22%
-V4 62.179 MiB 62.539 MiB +0.58% +2.47%

Centered curve summary

Smaller files do not automatically mean better quality, so this summary chart avoids a simple “winner” view. Instead, each version is mapped around a centered reference line. Negative values mean it tended to sit on the smaller-file side of the tested group, while positive values mean it tended to sit on the larger-file side.

Horizontal bar chart showing peak-mapped median offset across VBR settings for tested LAME versions
Peak-mapped median offset across the tested VBR settings. This keeps every version represented while reflecting the general direction and magnitude of its file-size tendency. It is a comparative summary, not a quality verdict, and should be read as a companion to the actual curve graph rather than a replacement for it.

What this suggests

1. -V0 and -V1 became more conservative

The 3.99.5+ family spends noticeably more bits than 3.98.4 at the top of the VBR scale.

2. -V2 is the crossover point

At -V2, 3.99.5 becomes smaller than 3.98.4 on average while remaining slightly faster.

3. Older encoders use a different curve

3.96.1 and 3.97 often sit toward the smaller-file end of the group, especially on albums two and three, but that should be interpreted as different tuning rather than an automatic quality win.

4. 3.101b3 tracks the 3.99.5 curve

That makes 3.101b3 a plausible forward base if 3.99.5 is the preferred sound-quality target.

External context

LAME describes -V n as a VBR quality setting where 0 is highest quality and 9 is lowest. It also notes that VBR mode already uses the highest quality option internally, so extra -h or -v switches are not needed when using -V.

Hydrogenaudio's LAME knowledgebase frames LAME as a high-quality MP3 encoder at mid and high bitrates, with VBR settings such as -V0, -V1, -V2 and -V3 commonly used for high-quality encoding. These pages are included as background, not as a substitute for listening tests.