Introduction to FAAC

FAAC is an encoder for a lossy sound compression scheme specified in MPEG-2 Part 7 and MPEG-4 Part 3 standards and known as Advanced Audio Coding (AAC). This encoder is useful for producing files that can be played back on iPod. Moreover, iPod does not understand other sound compression schemes in video files.



Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.

Package Information

Installation of FAAC

Install FAAC by running the following commands:

./bootstrap                                &&
./configure --prefix=/usr --disable-static &&

This package does not come with a test suite. However, basic functionality can be tested by encoding a sample WAV file (the sample file is installed by the alsa-utils-1.2.12 package:

./frontend/faac -o Front_Left.mp4 /usr/share/sounds/alsa/Front_Left.wav

Then, decode the result using the faad program from the FAAD2-2.11.1 package and play back the decoded file (requires the aplay program from the alsa-utils-1.2.12 package:

faad Front_Left.mp4
aplay Front_Left.wav

aplay should identify the file as Signed 16 bit Little Endian, Rate 48000 Hz, Stereo, and you should hear the words front left.

Now, as the root user:

make install

Command Explanations

--disable-static: This switch prevents installation of static versions of the libraries.

Other AAC encoders

The quality of FAAC is not up to par with the best AAC encoders currently available. Also, it only supports AAC and not High Efficiency AAC (also known as aacPlus), which provides better quality at low bitrates by means of using the spectral band replication technology. There are the following alternative programs for producing AAC and HE-AAC streams:

  • Nero AAC Codec: available only in the binary form, the command-line AAC and HE-AAC encoders for Linux are in the same archive as the Windows application.

  • 3GPP Enhanced aacPlus general audio codec: available in the source form, can encode only HE-AAC up to 48 kbps out of the box, but the maximum bitrate can be changed by editing the tuning table in the FloatFR_sbrenclib/src/sbr_main.c file.

Note, however, that iPod supports only Low Complexity AAC profile, which is the default in FAAC, but may not be the default in Nero AAC Encoder and is completely unavailable in the 3GPP encoder.


Installed Program: faac
Installed Libraries: libfaac.so and libmp4v2.so
Installed Directories: None

Short Descriptions


is a command-line AAC encoder


contains functions for encoding AAC streams


contains functions for creating and manipulating MP4 files