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.
This package is known to build and work properly using an LFS-8.0 platform.
Download (HTTP): http://downloads.sourceforge.net/faac/faac-1.28.tar.bz2
Download MD5 sum: c5dde68840cefe46532089c9392d1df0
Download size: 519 KB
Estimated disk space required: 20 MB
Estimated build time: 0.4 SBU
libmp4v2 from mpeg4ip (untested, as of 2007-09-28, development of the project is stopped; an internal version of the library is used if the external one is not found).
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/faac
Install FAAC by running the following commands:
patch -Np1 -i ../faac-1.28-glibc_fixes-1.patch && sed -i -e '/obj-type/d' -e '/Long Term/d' frontend/main.c && CFLAGS=-std=c99 CXXFLAGS=-std=c++98 \ ./configure --prefix=/usr --disable-static && make
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.1.3 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.7 package and play back the decoded file (requires the aplay program from the alsa-utils-1.1.3 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
CFLAGS=... CXXFLAGS=...
: These
environment variables fix a problem with compiling under GCC-6.x.
sed -i ...: This
command removes documentation for the --obj-type
parameter from the faac --long-help command output.
This parameter is already disabled in FAAC-1.28 due to sound
quality issues with object types other than “Low Complexity”.
--disable-static
: This
switch prevents installation of static versions of the libraries.
--enable-drm
: This option is supposed
to enable support for encoding files for Digital Radio Mondiale, but actually
breaks the base functionality of the package (e.g., the resulting
faac program produces
files that cannot be decoded by FAAD2-2.7, even if compiled with DRM
support). Don't use it.
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.
Last updated on 2017-02-17 16:10:58 -0800