BSD-3-Clause licensed and maintained by Mark Karpov
This version can be pinned in stack with:lame-0.2.2@sha256:be9c6b10bca79ea6501817deeb1fe665d7fc1bb512e67ec2a7b83f723a4702ef,2229

Module documentation for 0.2.2

LAME for Haskell

License BSD3 Hackage Stackage Nightly Stackage LTS CI

This is a high-level Haskell binding to the LAME encoder.

Provided functionality

  • Fast MP3 encoder working in different modes.
  • Setting of all common tags, including pictures.


  • No decoding. It is done with a separate library in LAME.
  • Relatively limited (compared to ID3 specs) number of tag fields available for setting.
  • Some sample widths are not supported: less than or equal to 8 bit and greater than 16 bits (for integer samples, floats work fine).
  • Some psycho-acoustic and noise-shaping settings are not available for tweaking.


Please direct all issues, bugs, and questions to the GitHub issue tracker for this project.

Pull requests are also welcome.


Copyright © 2017–present Mark Karpov

Distributed under BSD 3 clause license.


LAME 0.2.2

  • Maintenance release with more modern and minimal dependencies.

LAME 0.2.1

  • Works with text-2.0 and older.
  • Dropped support for GHC 8.x.

LAME 0.2.0

  • Got rid of data-default-class. Instead of making EncoderSettings an instance of Default we export defaultEncoderSettings.

LAME 0.1.1

  • Improved documentation and metadata.

LAME 0.1.0

  • Initial release.