FLAC

From XiphWiki
Jump to navigation Jump to search

FLAC stands for Free Lossless Audio Codec. FLAC is an audio compression codec that is lossless. Unlike lossy codecs such as Vorbis and MP3, it does not remove any information from the audio stream.

On 2003 January 29th, the Xiph.Org Foundation announced the incorporation of FLAC under their flag, to go along with Vorbis, Theora, and Speex.

The Project

The FLAC project consists of:

  • the stream format
  • libFLAC, a library of reference encoders and decoders, and a metadata interface
  • libFLAC++, an object wrapper around libFLAC
  • flac, a command-line wrapper around libFLAC to encode and decode .flac files
  • metaflac, a command-line metadata editor for .flac files
  • input plugins for various music players (Winamp, XMMS, foobar2000, and more in the works)

"Free" means that the specification of the stream format is in the public domain (the FLAC project reserves the right to set the FLAC specification and certify compliance), and that neither the FLAC format nor any of the implemented encoding/decoding methods are covered by any patent. It also means that the sources for libFLAC and libFLAC++ are available under The New BSD license and the sources for flac and metaflac applications, and the plugins are available under the GPL.

OggFLAC

The FLAC codec comes with its own transport system, termed Native FLAC. A FLAC stream can also be encapsulated in an Ogg container, the result being termed OggFLAC. The details of how to do this are called ogg mapping.

Comparisons

FLAC is distinguished from general lossless algorithms such as ZIP and gzip in that it is specifically designed for the efficient packing of audio data; while ZIP may compress a CD-quality audio file 20–40%, FLAC achieves compression rates of 30–70%.

While lossy codecs can achieve ratios of 80–90+%, they do this at the expense of discarding data from the original stream. Though FLAC uses a similar technique in its encoding process, it also adds "residual" data to allow the decoder to restore the original waveform flawlessly.

FLAC has become the preferred lossless format for trading live music online. It has a smaller file size than Shorten, and unlike MP3, it's lossless, which ensures the highest fidelity to the source material, which is important to live music traders. It has recently become a favorite trading format of non-live lossless audio traders as well.

There are other lostless audio codecs: WavPack (marginally better compression, slower), Tom's lossless Audio Kompressor, Monkey's Audio and some more.

FLAC compiles on many platforms: most Unices (including Linux, *BSD, Solaris, and Mac OS X), DOS, Windows, BeOS, and OS/2. There are build systems for autoconf/automake, MSVC, Watcom C, and Project Builder.

More information

Non-PC playback support

FLAC is supported by a wide range of devices.

The portable players Vorbis support matrix also contains information about FLAC support.

Other examples of FLAC supporting devices are:

FLAC is supported by the following chips and/or chipsets:

  • VLSI Solution OY's VS1053b decodes FLAC

External Links