FLAC: Difference between revisions

From XiphWiki
Jump to navigation Jump to search
No edit summary
m (Add Opus to lossy codec list)
 
(53 intermediate revisions by 28 users not shown)
Line 1: Line 1:
== About ==
[[File:FLAC Logo.svg|frameless|right]]
'''FLAC''' stands for '''Free Lossless Audio Codec'''. FLAC is an [[wikipedia:audio compression|audio compression]] [[wikipedia:codec|codec]] that is [[wikipedia:lossless data compression|lossless]].  Unlike [[wikipedia:lossy data compression|lossy]] codecs such as [[Opus]], [[Vorbis]] and [[wikipedia:MP3|MP3]], it does not remove any information from the audio stream.


'''FLAC''' stands for '''Free Lossless Audio Codec'''. FLAC is an [[audio compression]] [[codec]] that is [[lossless data compression|lossless]]. Unlike [[lossy data compression|lossy]] codecs such as [[MP3]] and [[Vorbis]], 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]].


On January 29th, 2003, Xiphophorus (now called the [[Xiph.org Foundation]]) announced the incorporation of FLAC under their xiph.org banner, to go along with [[Ogg]] Vorbis, Ogg [[Theora]], and [[Speex]].
== The Project ==
 
==The Project==


The FLAC project consists of:  
The FLAC project consists of:  
Line 13: Line 12:
* flac, a command-line wrapper around libFLAC to encode and decode .flac files  
* flac, a command-line wrapper around libFLAC to encode and decode .flac files  
* metaflac, a command-line metadata editor for .flac files  
* metaflac, a command-line metadata editor for .flac files  
* input plugins for various music players ([[Winamp]], [[XMMS]], and more in the works)  
* input plugins for various music players ([[wikipedia:Winamp|Winamp]], [[wikipedia:XMMS|XMMS]], [[wikipedia:Foobar2000|foobar2000]], and more in the works)
 
"Free" means that the specification of the stream format is in the [[wikipedia:public domain|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 [[wikipedia:GPL|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 [https://xiph.org/flac/ogg_mapping.html 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 lossless audio codecs: [http://www.wavpack.com/ WavPack] (marginally better compression, slower), [http://wiki.hydrogenaud.io/index.php?title=TAK Tom's lossless Audio Kompressor], [http://www.monkeysaudio.com/ Monkey's Audio] and [https://en.wikipedia.org/wiki/Category:Lossless_audio_codecs some others].
 
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 ==
 
* [[FLACDecoders]]: List of decoders
* [[FLACEncoders]]: List of encoders
 
== Non-PC playback support ==
 
FLAC is supported by a wide range of devices.


"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 Xiph.org's [[BSD license]] and the sources for flac, metaflac, and the plugins are available under the [[GPL]].  
The [[PortablePlayers#Portable Vorbis Native Support Table|portable players Vorbis support matrix]] also contains information about FLAC support.


==Comparisons==
Other examples of FLAC supporting devices are:


FLAC is distinguished from general lossless algorithms such as [[ZIP file format|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%.
* [[PortablePlayers/Flash#Cowon.2FiAudio_D2.2C_F2.2C_T2.2C_U3.2C_U2.2C_G3.2C_5.2C_G2.2C_U5.2C_7|iAudio]]: http://www.iaudio.com
* Kenwood Music Keg
* Naim HDX: http://www.naim-audio.com/products/hdx.html
* PhatNoise Home Media Player
* PhatNoise Phatbox
* [[PortablePlayers/Harddisk#Rio Karma|Rio Karma]]: http://www.digitalnetworksna.com/rioaudio/
* [[StaticPlayers#Slim_Devices_Squeezebox.2C_Squeezebox2.2C_Squeezebox3.2C_Transporter|SlimDevices Squeezebox]]: http://www.slimdevices.com


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 is supported by the following chips and/or chipsets:


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.
* VLSI Solution OY's [http://www.vlsi.fi/en/products/vs1053.html VS1053b] decodes FLAC


FLAC compiles on many platforms: most [[Unix|Unices]] (including [[Linux]], *[[BSD]], [[Solaris Operating Environment|Solaris]], and [[Mac OS X]]), [[Microsoft Windows|Windows]], [[BeOS]], and [[OS/2]]. There are build systems for [[autoconf]]/[[automake]], MSVC, Watcom C, and Project Builder.
== External Links ==


== External links ==
* [https://xiph.org/flac/ Project homepage]
* [http://www.danrules.com/macflac/ MacFLAC] [[GUI]] frontend to encode/decode FLAC on [[Mac OS X]]
* [[Wikipedia: FLAC]]
* [http://losslessaudio.blogspot.co.uk/ The Lossless Audio Blog]
<!-- The Lossless Audio Blog has moved to http://www.losslessaudioblog.com/; update link in, say, July 2015 -->
* [http://www.audiograaf.nl/downloads.html Lossless Codec comparison]


* [http://flac.sourceforge.net FLAC homepage]
[[Category:FLAC]]

Latest revision as of 03:20, 22 June 2016

FLAC stands for Free Lossless Audio Codec. FLAC is an audio compression codec that is lossless. Unlike lossy codecs such as Opus, 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 lossless audio codecs: WavPack (marginally better compression, slower), Tom's lossless Audio Kompressor, Monkey's Audio and some others.

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