source: multimedia/libdriv/faac.xml@ 92ada82

systemd-13485
Last change on this file since 92ada82 was 419681d6, checked in by Douglas R. Reno <renodr@…>, 8 years ago

Sync to trunk r17130
Fix FAAC compilation under GCC-6

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/branches/systemd@17323 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 8.7 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY faac-download-http "&sourceforge-repo;/faac/faac-&faac-version;.tar.bz2">
8 <!ENTITY faac-download-ftp " ">
9 <!ENTITY faac-md5sum "c5dde68840cefe46532089c9392d1df0">
10 <!ENTITY faac-size "519 KB">
11 <!ENTITY faac-buildsize "20 MB">
12 <!ENTITY faac-time "0.4 SBU">
13]>
14
15<sect1 id="faac" xreflabel="FAAC-&faac-version;">
16 <?dbhtml filename="faac.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>FAAC-&faac-version;</title>
24
25 <indexterm zone="faac">
26 <primary sortas="a-faac">faac</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to FAAC</title>
31
32 <para><application>FAAC</application> is an encoder for a lossy sound
33 compression scheme specified in MPEG-2 Part 7 and MPEG-4 Part 3 standards
34 and known as Advanced Audio Coding (AAC). This encoder is useful for
35 producing files that can be played back on iPod. Moreover, iPod does not
36 understand other sound compression schemes in video files.</para>
37
38 &lfs78_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>Download (HTTP): <ulink url="&faac-download-http;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download (FTP): <ulink url="&faac-download-ftp;"/></para>
47 </listitem>
48 <listitem>
49 <para>Download MD5 sum: &faac-md5sum;</para>
50 </listitem>
51 <listitem>
52 <para>Download size: &faac-size;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated disk space required: &faac-buildsize;</para>
56 </listitem>
57 <listitem>
58 <para>Estimated build time: &faac-time;</para>
59 </listitem>
60 </itemizedlist>
61
62 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
63 <itemizedlist spacing="compact">
64 <listitem>
65 <para>Required patch: <ulink
66 url="&patch-root;/faac-&faac-version;-glibc_fixes-1.patch"/></para>
67 </listitem>
68 </itemizedlist>
69
70 <bridgehead renderas="sect3">FAAC Dependencies</bridgehead>
71
72 <bridgehead renderas="sect4">Optional</bridgehead>
73 <para>libmp4v2 from
74 <ulink url="http://mpeg4ip.sourceforge.net/">mpeg4ip</ulink> (untested,
75 as of 2007-09-28, development of the project is stopped;
76 an internal version of the library is used if the external one
77 is not found).</para>
78
79 <para condition="html" role="usernotes">User Notes:
80 <ulink url="&blfs-wiki;/faac"/></para>
81
82 </sect2>
83
84 <sect2 role="installation">
85 <title>Installation of FAAC</title>
86
87 <para>Install <application>FAAC</application> by running the
88 following commands:</para>
89
90<screen><userinput>patch -Np1 -i ../faac-&faac-version;-glibc_fixes-1.patch &amp;&amp;
91
92sed -i -e '/obj-type/d' -e '/Long Term/d' frontend/main.c &amp;&amp;
93
94CFLAGS=-std=c99 \
95CXXFLAGS=-std=c++98 \
96./configure --prefix=/usr --disable-static &amp;&amp;
97make</userinput></screen>
98
99 <para>This package does not come with a test suite. However, basic
100 functionality can be tested by encoding a sample WAV file (the sample
101 file is installed by the <xref linkend="alsa-utils"/> package:</para>
102
103<screen><userinput>./frontend/faac -o Front_Left.mp4 /usr/share/sounds/alsa/Front_Left.wav</userinput></screen>
104
105 <para>Then, decode the result using the <command>faad</command> program
106 from the <xref linkend="faad2"/> package and play back the decoded file
107 (requires the <command>aplay</command> program from the
108 <xref linkend="alsa-utils"/> package:</para>
109
110<screen><userinput>faad Front_Left.mp4
111aplay Front_Left.wav</userinput></screen>
112
113 <para><command>aplay</command> should identify the file as
114 <quote>Signed 16 bit Little Endian, Rate 48000 Hz, Stereo</quote>, and you
115 should hear the words <quote>front left</quote>.</para>
116
117 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
118
119<screen role="root"><userinput>make install</userinput></screen>
120
121 </sect2>
122
123 <sect2 role="commands">
124 <title>Command Explanations</title>
125
126 <!-- <para><command>./bootstrap</command>: This command runs GNU Autotools
127 to create the <command>configure</command> script and other required
128 build files.</para> -->
129
130 <!-- Note to editors: remove this sed if the new release re-enables the
131 option (look for "#if 0" near "case OBJTYPE_FLAG:", this is line
132 697 in frontend/main.c as of FAAC-1.26) or fixes the documentation
133 so that it doesn't mention the disabled option. -->
134
135 <para><command>sed -i ...</command>: This command removes documentation
136 for the <option>--obj-type</option> parameter from the
137 <command>faac --long-help</command> command output. This parameter
138 is already disabled in FAAC-&faac-version; due to sound quality issues
139 with object types other than <quote>Low Complexity</quote>.</para>
140
141 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
142 href="../../xincludes/static-libraries.xml"/>
143
144 <!-- 1.28: This is still broken, it causes a segfault. -->
145
146 <para><option>--enable-drm</option>: This option is supposed to enable
147 support for encoding files for
148 <ulink url="http://www.drm.org/">Digital Radio Mondiale</ulink>, but
149 actually breaks the base functionality of the package (e.g., the resulting
150 <command>faac</command> program produces files that cannot be decoded
151 by <xref linkend="faad2"/>, even if compiled with DRM support).
152 Don't use it.</para>
153
154 </sect2>
155
156 <sect2>
157 <title>Other AAC encoders</title>
158
159 <para>The quality of <application>FAAC</application> is not up
160 to par with the best AAC encoders currently available. Also, it only
161 supports AAC and not High Efficiency AAC (also known as aacPlus), which
162 provides better quality at low bitrates by means of using the
163 <quote>spectral band replication</quote> technology. There are the
164 following alternative programs for producing AAC and HE-AAC streams:</para>
165
166 <itemizedlist>
167 <listitem>
168 <para><ulink url="http://www.nero.com/eng/nero-aac-codec.html">Nero AAC Codec</ulink>:
169 available only in the binary form, the command-line AAC and HE-AAC encoders
170 for Linux are in the same archive as the Windows application.</para>
171 </listitem>
172 <listitem>
173 <para><ulink url="http://www.3gpp.org/ftp/Specs/html-info/26410.htm">3GPP
174 Enhanced aacPlus general audio codec</ulink>:
175 available in the source form, can encode only HE-AAC up to 48 kbps
176 out of the box, but the maximum bitrate can be changed by editing
177 the tuning table in the
178 <filename>FloatFR_sbrenclib/src/sbr_main.c</filename> file.</para>
179 </listitem>
180 </itemizedlist>
181
182 <para>Note, however, that iPod supports only Low Complexity AAC profile,
183 which is the default in FAAC, but may not be the default in Nero AAC Encoder
184 and is completely unavailable in the 3GPP encoder.</para>
185
186 </sect2>
187 <sect2 role="content">
188 <title>Contents</title>
189
190 <segmentedlist>
191 <segtitle>Installed Program</segtitle>
192 <segtitle>Installed Libraries</segtitle>
193 <segtitle>Installed Directories</segtitle>
194
195 <seglistitem>
196 <seg>faac</seg>
197 <seg>libfaac.so and libmp4v2.so</seg>
198 <seg>None</seg>
199 </seglistitem>
200 </segmentedlist>
201
202 <variablelist>
203 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
204 <?dbfo list-presentation="list"?>
205 <?dbhtml list-presentation="table"?>
206
207 <varlistentry id="faac-prog">
208 <term><command>faac</command></term>
209 <listitem>
210 <para>is a command-line AAC encoder.</para>
211 <indexterm zone="faac faac-prog">
212 <primary sortas="b-faac">faac</primary>
213 </indexterm>
214 </listitem>
215 </varlistentry>
216
217 <varlistentry id="libfaac">
218 <term><filename class='libraryfile'>libfaac.so</filename></term>
219 <listitem>
220 <para>contains functions for encoding AAC streams.</para>
221 <indexterm zone="faac libfaac">
222 <primary sortas="c-libfaac">libfaac.so</primary>
223 </indexterm>
224 </listitem>
225 </varlistentry>
226
227 <varlistentry id="libmp4v2">
228 <term><filename class='libraryfile'>libmp4v2.so</filename></term>
229 <listitem>
230 <para>contains functions for creating and manipulating MP4 files.</para>
231 <indexterm zone="faac libmp4v2">
232 <primary sortas="c-libmp4v2">libmp4v2.so</primary>
233 </indexterm>
234 </listitem>
235 </varlistentry>
236
237 </variablelist>
238
239 </sect2>
240
241</sect1>
Note: See TracBrowser for help on using the repository browser.