source: multimedia/videoutils/ffmpeg.xml@ 140a5c55

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 140a5c55 was 520f6b4f, checked in by Randy McMurchy <randy@…>, 18 years ago

Renamed the TeX package to its proper name - teTeX

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@6042 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 11.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!-- Inserted as a reminder to do this. The mention of a test suite
8 is usually right before the root user installation commands. Please
9 delete these 12 (including one blank) lines after you are done.-->
10
11 <!-- Use one of the two mentions below about a test suite,
12 delete the line that is not applicable. Of course, if the
13 test suite uses syntax other than "make check", revise the
14 line to reflect the actual syntax to run the test suite -->
15
16 <!-- <para>This package does not come with a test suite.</para> -->
17 <!-- <para>To test the results, issue: <command>make check</command>.</para> -->
18
19 <!ENTITY ffmpeg-download-http "http://prdownloads.sourceforge.net/ffmpeg/ffmpeg-&ffmpeg-version;.tar.gz">
20 <!ENTITY ffmpeg-download-ftp " ">
21 <!ENTITY ffmpeg-md5sum "ea5587e3c66d50b1503b82ac4179c303">
22 <!ENTITY ffmpeg-size "1.6 MB">
23 <!ENTITY ffmpeg-buildsize "62.9 MB (built with all dependencies)">
24 <!ENTITY ffmpeg-time "1.0 SBU">
25]>
26
27<sect1 id="ffmpeg" xreflabel="FFmpeg-&ffmpeg-version;">
28 <?dbhtml filename="ffmpeg.html"?>
29
30 <sect1info>
31 <othername>$LastChangedBy$</othername>
32 <date>$Date$</date>
33 <keywordset>
34 <keyword role="package">ffmpeg-&ffmpeg-version;.tar</keyword>
35 <keyword role="ftpdir">ffmpeg</keyword>
36 </keywordset>
37 </sect1info>
38
39 <title>FFmpeg-&ffmpeg-version;</title>
40
41 <indexterm zone="ffmpeg">
42 <primary sortas="a-FFmpeg">FFmpeg</primary>
43 </indexterm>
44
45 <sect2 role="package">
46 <title>Introduction to FFmpeg</title>
47
48 <para><application>FFmpeg</application> is a solution to record, convert and
49 stream audio and video. It is a very fast video and audio converter and it can
50 also acquire from a live audio/video source. Designed to be intuitive, the
51 command-line interface (<command>ffmpeg</command>) tries to figure out all the
52 parameters, when possible. <application>FFmpeg</application> can also convert
53 from any sample rate to any other, and resize video on the fly with a high
54 quality polyphase filter. <application>FFmpeg</application> can use a
55 video4linux compatible video source and any Open Sound System audio
56 source.</para>
57
58 <bridgehead renderas="sect3">Package Information</bridgehead>
59 <itemizedlist spacing="compact">
60 <listitem>
61 <para>Download (HTTP): <ulink url="&ffmpeg-download-http;"/></para>
62 </listitem>
63 <listitem>
64 <para>Download (FTP): <ulink url="&ffmpeg-download-ftp;"/></para>
65 </listitem>
66 <listitem>
67 <para>Download MD5 sum: &ffmpeg-md5sum;</para>
68 </listitem>
69 <listitem>
70 <para>Download size: &ffmpeg-size;</para>
71 </listitem>
72 <listitem>
73 <para>Estimated disk space required: &ffmpeg-buildsize;</para>
74 </listitem>
75 <listitem>
76 <para>Estimated build time: &ffmpeg-time;</para>
77 </listitem>
78 </itemizedlist>
79
80 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
81 <itemizedlist spacing="compact">
82 <listitem>
83 <para>Required patch: <ulink
84 url="&patch-root;/ffmpeg-&ffmpeg-version;-gcc4-1.patch"/></para>
85 </listitem>
86 <listitem>
87 <para>Required patch: <ulink
88 url="&patch-root;/ffmpeg-&ffmpeg-version;-amr_fixes-1.patch"/></para>
89 </listitem>
90 </itemizedlist>
91
92 <bridgehead renderas="sect3">FFmpeg Dependencies</bridgehead>
93
94 <bridgehead renderas="sect4">Optional</bridgehead>
95 <para role="optional"><xref linkend="libvorbis"/>,
96 <xref linkend="lame"/>,
97 <xref linkend="imlib2"/>,
98 <xref linkend="x-window-system"/>,
99 <xref linkend="sdl"/>,
100 <xref linkend="freetype2"/>,
101 <xref linkend="mplayer"/> (for the shared post-processing library),
102 <ulink url="http://sourceforge.net/projects/faac">FAAC</ulink>,
103 <ulink url="http://sourceforge.net/projects/faac">FAAD2</ulink>,
104 <ulink url="http://www.3gpp.org/ftp/Specs/latest/Rel-5/26_series/26104-540.zip">
105 AMR narrowband (floating point)</ulink> or
106 <ulink url="http://www.3gpp.org/ftp/Specs/latest/Rel-5/26_series/26073-530.zip">
107 AMR naarrowband (fixed point)</ulink>,
108 <ulink url="http://www.3gpp.org/ftp/Specs/latest/Rel-5/26_series/26204-530.zip">
109 AMR wideband</ulink>, and
110 <xref linkend="tetex"/> (to build HTML documentation)</para>
111
112 <para condition="html" role="usernotes">User Notes:
113 <ulink url="&blfs-wiki;/ffmpeg"/></para>
114
115 </sect2>
116
117 <sect2 role="installation">
118 <title>Installation of FFmpeg</title>
119
120 <para>Install <application>FFmpeg</application> by running the following
121 commands:</para>
122
123 <note>
124 <para>Review the <filename>doc/optimization.txt</filename> file in the
125 source tree for information about optimizing the build.</para>
126 </note>
127
128<screen><userinput>patch -Np1 -i ../ffmpeg-&ffmpeg-version;-gcc4-1.patch &amp;&amp;
129patch -Np1 -i ../ffmpeg-&ffmpeg-version;-amr_fixes-1.patch &amp;&amp;
130sed -i "s/static uint64/const uint64/" \
131 libavcodec/liba52/resample_mmx.c &amp;&amp;
132./configure --prefix=/usr --enable-shared \
133 --enable-pthreads --disable-ffplay &amp;&amp;
134make</userinput></screen>
135
136 <para>If you have <application>teTeX</application> installed, the man pages
137 and HTML documentation were built during the <command>make</command>
138 process. Skip to the <systemitem class="username">root</systemitem> user
139 installation steps if you don't need other formats of the documentation, or
140 issue any or all of the following commands to create the additional
141 formats.</para>
142
143<screen><userinput>for DOCFILE in faq ffmpeg-doc ffplay-doc ffserver-doc hooks
144do
145 texi2pdf -b $DOCFILE.texi
146 texi2dvi -b $DOCFILE.texi
147 dvips -o $DOCFILE.ps $DOCFILE.dvi
148 makeinfo --plaintext --force -o $DOCFILE.txt $DOCFILE.texi
149done</userinput></screen>
150
151 <para>If you do not have <application>teTeX</application> installed, use the
152 following command to build the man pages:</para>
153
154<screen><userinput>make -C doc ff{mpeg,play,server}.1</userinput></screen>
155
156 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
157
158<screen role="root"><userinput>make install</userinput></screen>
159
160 <para>If you have <application>teTeX</application> installed on your system,
161 install the documentation by issuing the following commands as the
162 <systemitem class="username">root</systemitem> user (modify the command
163 appropriately to reflect the documentation formats you've created):</para>
164
165<screen role="root"><userinput>install -v -m755 -d /usr/share/doc/ffmpeg-&ffmpeg-version; &amp;&amp;
166install -v -m644 doc/*.{html,dvi,pdf,ps,txt}
167 /usr/share/doc/ffmpeg-&ffmpeg-version;</userinput></screen>
168
169 </sect2>
170
171 <sect2 role="commands">
172 <title>Command Explanations</title>
173
174 <para><command>sed -i -e "s/static uint64/const uint64/"
175 libavcodec/liba52/resample_mmx.c</command>: This command fixes an issue
176 on machines with MMX capability and use <application>GCC</application> >=
177 3.4.x to compile in A52 support using the <option>--enable-a52</option>
178 parameter passed to the <command>configure</command> script.</para>
179
180 <para><parameter>--enable-shared</parameter>: This switch is needed to
181 build the <filename class="libraryfile">libavcodec</filename> and
182 <filename class="libraryfile">libavformat</filename> shared
183 libraries.</para>
184
185 <para><parameter>--enable-pthreads</parameter>: This switch enables the
186 build to link against the Posix threads library.</para>
187
188 <para><parameter>--disable-ffplay</parameter>: Only installs the server part.
189 <command>ffplay</command> requires <application>X</application> for
190 building. Remove this option if <application>X</application> is
191 installed.</para>
192
193 <para><option>--enable-<replaceable>&lt;codec&gt;</replaceable></option>: Review
194 the available options and codecs using the
195 <command>./configure --help</command> command. Also review the information
196 at the end of the configure script (<command>cat</command> the file or view
197 it using a text editor) for information about building support for the AMR
198 codecs.</para>
199
200 </sect2>
201
202 <sect2 role="configuration">
203 <title>Configuring FFmpeg</title>
204
205 <sect3 id="ffmpeg-config">
206 <title>Config Files</title>
207
208 <para><filename>/etc/ffserver.conf</filename> and
209 <filename>~/.ffmpeg/ffserver-config</filename></para>
210
211 <indexterm zone="ffmpeg ffmpeg-config">
212 <primary sortas="e-AA.ffmpeg-ffserver-config">~/.ffmpeg/ffserver-config</primary>
213 </indexterm>
214
215 <indexterm zone="ffmpeg ffmpeg-config">
216 <primary sortas="e-etc-ffserver.conf">/etc/ffserver.conf</primary>
217 </indexterm>
218
219 <para>You'll find a sample ffserver configuration file at
220 <ulink url="http://ffmpeg.sourceforge.net/sample.html"/> (also
221 <filename>doc/ffserver.conf</filename> in the source tree).</para>
222
223 </sect3>
224
225 </sect2>
226
227 <sect2 role="content">
228 <title>Contents</title>
229
230 <segmentedlist>
231 <segtitle>Installed Programs</segtitle>
232 <segtitle>Installed Libraries</segtitle>
233 <segtitle>Installed Directories</segtitle>
234
235 <seglistitem>
236 <seg>ffmpeg, ffserver, and optionally, ffplay</seg>
237 <seg>libavcodec.so, libavformat.so, and video hook modules</seg>
238 <seg>/usr/include/ffmpeg, /usr/lib/vhook, and
239 /usr/share/doc/ffmpeg-&ffmpeg-version;</seg>
240 </seglistitem>
241 </segmentedlist>
242
243 <variablelist>
244 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
245 <?dbfo list-presentation="list"?>
246 <?dbhtml list-presentation="table"?>
247
248 <varlistentry id="ffmpeg-prog">
249 <term><command>ffmpeg</command></term>
250 <listitem>
251 <para>is a command-line tool to convert video files, network streams
252 and input from a TV card to several video formats.</para>
253 <indexterm zone="ffmpeg ffmpeg-prog">
254 <primary sortas="b-ffmpeg">ffmpeg</primary>
255 </indexterm>
256 </listitem>
257 </varlistentry>
258
259 <varlistentry id="ffplay">
260 <term><command>ffplay</command></term>
261 <listitem>
262 <para>is a very simple and portable media player using the
263 <filename>ffmpeg</filename> libraries and the SDL library.</para>
264 <indexterm zone="ffmpeg ffplay">
265 <primary sortas="b-ffplay">ffplay</primary>
266 </indexterm>
267 </listitem>
268 </varlistentry>
269
270 <varlistentry id="ffserver">
271 <term><command>ffserver</command></term>
272 <listitem>
273 <para>is a streaming server for everything that <command>ffmpeg</command>
274 could use as input (files, streams, TV card input, webcam, etc.).</para>
275 <indexterm zone="ffmpeg ffserver">
276 <primary sortas="b-ffserver">ffserver</primary>
277 </indexterm>
278 </listitem>
279 </varlistentry>
280
281 <varlistentry id="libavcodec">
282 <term><filename class='libraryfile'>libavcodec.so</filename></term>
283 <listitem>
284 <para>is a library containing the <application>FFmpeg</application>
285 codecs (both encoding and decoding).</para>
286 <indexterm zone="ffmpeg libavcodec">
287 <primary sortas="c-libavcodec">libavcodec.so</primary>
288 </indexterm>
289 </listitem>
290 </varlistentry>
291
292 <varlistentry id="libavformat">
293 <term><filename class='libraryfile'>libavformat.so</filename></term>
294 <listitem>
295 <para>is a library containing the file formats handling (mux and demux code
296 for several formats) used by <command>ffplay</command> as well as
297 allowing the generation of audio or video streams.</para>
298 <indexterm zone="ffmpeg libavformat">
299 <primary sortas="c-libavformat">libavformat.so</primary>
300 </indexterm>
301 </listitem>
302 </varlistentry>
303
304 </variablelist>
305
306 </sect2>
307
308</sect1>
Note: See TracBrowser for help on using the repository browser.