FAAC
Encyclopedia
FAAC or Freeware Advanced Audio Coder is a software project which includes the AAC
Advanced Audio Coding
Advanced Audio Coding is a standardized, lossy compression and encoding scheme for digital audio. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at similar bit rates....

 encoder
Encoder
An encoder is a device, circuit, transducer, software program, algorithm or person that converts information from one format or code to another, for the purposes of standardization, speed, secrecy, security, or saving space by shrinking size.-Media:...

 FAAC and decoder
Decoder
A decoder is a device which does the reverse operation of an encoder, undoing the encoding so that the original information can be retrieved. The same method used to encode is usually just reversed in order to decode...

 FAAD2. It supports MPEG-2
MPEG-2
MPEG-2 is a standard for "the generic coding of moving pictures and associated audio information". It describes a combination of lossy video compression and lossy audio data compression methods which permit storage and transmission of movies using currently available storage media and transmission...

 AAC as well as MPEG-4
MPEG-4
MPEG-4 is a method of defining compression of audio and visual digital data. It was introduced in late 1998 and designated a standard for a group of audio and video coding formats and related technology agreed upon by the ISO/IEC Moving Picture Experts Group under the formal standard ISO/IEC...

 AAC. It supports several MPEG-4 Audio object types (LC, Main, LTP for encoding and SBR
Spectral band replication
Spectral band replication is a technology to enhance audio or speech codecs, especially at low bit rates and is based on harmonic redundancy in the frequency domain....

, PS
Parametric Stereo
Parametric Stereo is a feature and an Audio Object Type defined and used in MPEG-4 Part 3 to further enhance efficiency in low bandwidth stereo media. Advanced Audio Coding Low Complexity combined with Spectral band replication and Parametric Stereo was defined as HE-AAC v2...

, ER, LD for decoding), file formats (ADTS AAC, raw AAC, MP4), multichannel and gapless encoding/decoding and MP4 metadata tags. The encoder and decoder is compatible with standard-compliant audio applications using one or more of these object types and facilities. It also supports Digital Radio Mondiale
Digital Radio Mondiale
Digital Radio Mondiale is a set of digital audio broadcasting technologies designed to work over the bands currently used for AM broadcasting, particularly shortwave...

.

FAAC and FAAD2, being distributed in C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 form, can be compiled on various platforms and are distributed free of charge. FAAD2 is free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

. FAAC contains some code which is published as Free Software, but as a whole it is only distributed under a proprietary license.

FAAC encoder

FAAC stands for Freeware Advanced Audio Coder. The FAAC encoder is an audio compression computer program that creates AAC (MPEG-2 AAC/MPEG-4 AAC) sound files from other formats (usually, audio files taken from audio CDs). It contains a library (libfaac) that can be used by other programs. AAC files are commonly used in computer programs and portable music players, being Apple Inc.'s recommended format for the company's iPod
IPod
iPod is a line of portable media players created and marketed by Apple Inc. The product line-up currently consists of the hard drive-based iPod Classic, the touchscreen iPod Touch, the compact iPod Nano, and the ultra-compact iPod Shuffle...

 music player.

FAAC is one of three alternatives that Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

/Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 users have for creating AAC files. The second is Nero's
Nero AG
Nero is a global computer software company headquartered in Karlsbad, Germany. It is perhaps most well-known for its burning software, Nero Burning ROM.-History:The company was founded as Ahead Software GmbH in 1995 by Richard Lesser....

 neroAACenc program, which has a proprietary license, and is not available for the entire range of hardware architectures
Computer architecture
In computer science and engineering, computer architecture is the practical art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals and the formal modelling of those systems....

 that these operating systems are able to run. The third is FFmpeg's
FFmpeg
FFmpeg is a free software project that produces libraries and programs for handling multimedia data. The most notable parts of FFmpeg are libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line...

 native AAC encoder (considered experimental by the developers as of December 2010) (part of libavcodec
Libavcodec
libavcodec is a free software/open source LGPL-licensed library of codecs for encoding and decoding video and audio data. Same name but incompatible libraries are provided from both FFmpeg project and Libav project....

), written by Konstantin Shishkov, and released under version 2.1 of the LGPL.

Some of the features that FAAC has are: cross-platform support, "reasonably" fast encoding, support for more than one "object type" of the AAC format, multi-channel encoding, and support for Digital Radio Mondiale
Digital Radio Mondiale
Digital Radio Mondiale is a set of digital audio broadcasting technologies designed to work over the bands currently used for AM broadcasting, particularly shortwave...

 streams. The MPEG-4 object types of the AAC format supported by FAAC are the "Low Complexity" (LC), "Main", and "Long Term Prediction" (LTP). The MPEG-2 AAC profiles supported by FAAC are LC and Main. The SBR and PS object types are not supported, so the HE-AAC
HE-AAC
High-Efficiency Advanced Audio Coding is a lossy data compression scheme for digital audio defined as a MPEG-4 Audio profile in ISO/IEC 14496-3. It is an extension of Low Complexity AAC optimized for low-bitrate applications such as streaming audio...

 and HE-AACv2 profiles are also not supported. The object type "Low Complexity" is the default and also happens to be used in videos meant to be playable for portable players (like Apple's iPod) and used by video-hosting sites (like Youtube
YouTube
YouTube is a video-sharing website, created by three former PayPal employees in February 2005, on which users can upload, view and share videos....

).

FAAC was originally written by Menno Bakker.

FAAD2 decoder

FAAD2 is Freeware Advanced Audio (AAC) Decoder including SBR decoding. It is MPEG-2 and MPEG-4 AAC decoder and supports MPEG-4 audio object types LC, Main, LTP, LD, ER, SBR and PS, which can be combined also to HE-AAC and HE-AACv2 Profile (AAC LC+SBR+PS). It contains a library (libfaad) that can be used by other programs.

FAAD and FAAD2 were originally written by Menno Bakker from Nero AG
Nero AG
Nero is a global computer software company headquartered in Karlsbad, Germany. It is perhaps most well-known for its burning software, Nero Burning ROM.-History:The company was founded as Ahead Software GmbH in 1995 by Richard Lesser....

. FAAD2 is the successor to FAAD1, which was deprecated.

FAAD is Freeware Advanced Audio Decoder. It was first released in 2000 and it did not support SBR and PS audio object types. The last version of FAAD1 was 2002-01-04. All development later focused in FAAD2. The SBR decoding support (HE-AAC) was added in the version release on 25 July 2003. FAAD2 version 2.0 was released on 6 February 2004.

Licensing

FAAC contains code based on the ISO MPEG-4 reference code, whose license is not compatible with the LGPL
GNU Lesser General Public License
The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT License...

 license. Only the FAAC changes to this ISO MPEG-4 reference code are licensed under the LGPL license. The ISO MPEG-4 reference software was published as ISO/IEC 14496-5 (MPEG-4 Part 5: Reference software) and it is freely available for download from ISO website. ISO/IEC gives users of the MPEG-2 NBC/MPEG-4 Audio standards free license to this software module or modifications thereof for use in hardware or software products claiming conformance to the MPEG-2 NBC/MPEG-4 Audio standards. Those intending to use this software module in hardware or software products are advised that this use may infringe existing patents.

FAAD2 is licensed under the GPL v2 (and later GPL versions). Code from FAAD2 is copyright
Copyright
Copyright is a legal concept, enacted by most governments, giving the creator of an original work exclusive rights to it, usually for a limited time...

 of Nero AG (the "appropriate copyright message" mentioned in section 2c of the GPLv2). The source code contains a note that the use of this software may require the payment of patent
Patent
A patent is a form of intellectual property. It consists of a set of exclusive rights granted by a sovereign state to an inventor or their assignee for a limited period of time in exchange for the public disclosure of an invention....

 royalties. Commercial non-GPL licensing of this software is also possible.

FAAD (FAAD1) modifications to the ISO MPEG-4 AAC reference code were distributed under the GPL.

Other software

FAAC and FAAD2 is used in the following software products and libraries:
  • Avidemux
    Avidemux
    Avidemux is a free and open-source video editing program designed for video editing and video processing. It is written in C++, and uses either the GTK+ or Qt.- Features :...

     and HandBrake
    HandBrake
    HandBrake is a general-purpose, open-source, cross-platform, multithreaded video transcoder software application. HandBrake was originally developed by titer in 2003 as a general-purpose video transcoder to make ripping a film from a DVD to a data storage device easier...

     video editing software.
  • CDex
    CDex
    CDex is a CD ripper for Microsoft Windows. It convert tracks on a CD to standard computer sound files, such as WAV, MP3, or Ogg Vorbis. Released under the GNU General Public License, CDex is free software. , it is the 14th most popular download on SourceForge.net, with over 41 million downloads. It...

     uses FAAC encoder.
  • FFmpeg
    FFmpeg
    FFmpeg is a free software project that produces libraries and programs for handling multimedia data. The most notable parts of FFmpeg are libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line...

     supports AAC encoding through external library libfaac, and using its experimental native encoder.
  • GStreamer
    GStreamer
    GStreamer is a pipeline-based multimedia framework written in the C programming language with the type system based on GObject.GStreamer allows a programmer to create a variety of media-handling components, including simple audio playback, audio and video playback, recording, streaming and editing...

     multimedia framework uses FAAC and FAAD.
  • MPlayer
    MPlayer
    MPlayer is a free and open source media player. The program is available for all major operating systems, including Linux and other Unix-like systems, Microsoft Windows and Mac OS X. Versions for OS/2, Syllable, AmigaOS and MorphOS are also available. The Windows version works, with some minor...

     uses FAAD2.
  • VLC media player
    VLC media player
    VLC media player is a free and open source media player and multimedia framework written by the VideoLAN project.VLC is a portable multimedia player, encoder, and streamer supporting many audio and video codecs and file formats as well as DVDs, VCDs, and various streaming protocols. It is able to...

     uses the FAAC (encoder) and FAAD (decoder) to provide support for AAC audio.
  • Music Player Daemon
    Music Player Daemon
    Music Player Daemon is a music player server.- Design :MPD simply runs in the background playing music from its playlist. Client programs communicate with MPD to manipulate playback, the playlist, and the database...

     uses FAAD2


There is also other software that uses FAAC libraries.

See also

  • List of codecs
  • List of open source codecs
  • Lossy data compression
    Lossy data compression
    In information technology, "lossy" compression is a data encoding method that compresses data by discarding some of it. The procedure aims to minimize the amount of data that need to be held, handled, and/or transmitted by a computer...

  • LAME
    LAME
    LAME is a free software codec used to encode/compress audio into the lossy MP3 file format.-History:The name LAME is a recursive acronym for "LAME Ain't an MP3 Encoder". Around mid-1998, Mike Cheng created LAME 1.0 as a set of modifications against the "8Hz-MP3" encoder source code...

  • TooLame
    TooLAME
    TooLAME is a free software MPEG-1 Layer II audio encoder written primarily by Mike Cheng. While there are innumerable MP2 encoders, TooLAME is well-known and widely used for its particularly high audio quality. It has been unmaintained since 2003, but is directly succeeded by the TwoLAME code fork...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK