Ignore:
Timestamp:
11/02/2010 05:07:12 PM (13 years ago)
Author:
Ken Moffat <ken@…>
Branches:
10.0, 10.1, 11.0, 11.1, 11.2, 11.3, 12.0, 12.1, 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
Children:
90b1302c
Parents:
c24c91c
Message:

Update ffmpeg to current release: now two versions of libpostproc in the longindex.

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • multimedia/videoutils/ffmpeg.xml

    rc24c91c r28cd5ce  
    55  %general-entities;
    66
    7   <!ENTITY ffmpeg-download-http "&files-anduin;/sources/ffmpeg-&ffmpeg-version;.tar.bz2">
     7  <!ENTITY ffmpeg-download-http "http://ffmpeg.org/releases/ffmpeg-&ffmpeg-version;.tar.bz2">
    88  <!ENTITY ffmpeg-download-ftp  " ">
    9   <!ENTITY ffmpeg-md5sum        "abae526f04693c08684f0a18c28e3313">
    10   <!ENTITY ffmpeg-size          "2.2 MB">
    11   <!ENTITY ffmpeg-buildsize     "131 MB (built with all dependencies)">
    12   <!ENTITY ffmpeg-time          "1.8 SBU">
     9  <!ENTITY ffmpeg-md5sum        "4f5d732d25eedfb072251b5314ba2093">
     10  <!ENTITY ffmpeg-size          "3.5 MB">
     11  <!ENTITY ffmpeg-buildsize     "328 MB (built with recommended dependencies)">
     12  <!ENTITY ffmpeg-time          "2.1 SBU">
    1313]>
    1414
     
    3838    quality polyphase filter. <application>FFmpeg</application> can use a
    3939    video4linux compatible video source and any Open Sound System audio
    40     source. The developers of this package do not create or distribute package
    41     tarballs any longer. BLFS created the tarball for this package by checking
    42     out from upstream SVN the <application>FFmpeg</application> code dated
    43     June 6, 2007.</para>
     40    source.</para>
     41    <para>The developers of this package do not make releases very often, so you
     42    may wish to use a snapshot instead of this release.  If you do that, you must
     43    expect the acceptable <command>configure</command> switches, and the
     44    dependencies, to change.</para>
     45
     46    &lfs67_checked;
    4447
    4548    <bridgehead renderas="sect3">Package Information</bridgehead>
     
    7881
    7982    <bridgehead renderas="sect3">FFmpeg Dependencies</bridgehead>
     83
     84    <bridgehead renderas="sect4">Recommended</bridgehead>
     85    <para role="recommended">
     86    <xref linkend="faad2"/>,
     87    <xref linkend="lame"/>,
     88    <xref linkend="libtheora"/>,
     89    <xref linkend="libvorbis"/>,
     90    <xref linkend="libvpx"/>,
     91    <xref linkend="x-window-system"/>,
     92    <ulink url="http://www.videolan.org/developers/x264.html">x264</ulink>
     93    (tested with the 20100615-2245 snapshot),
     94    <xref linkend="xvid"/></para>
    8095
    8196    <bridgehead renderas="sect4">Optional</bridgehead>
     
    8499    <ulink url="http://www.penguin.cz/~utx/amr">AMR wideband</ulink>,
    85100    <xref linkend="faac"/>,
    86     <xref linkend="faad2"/>,
    87101    <xref linkend="freetype2"/>,
    88102    <ulink url="http://kbs.cs.tu-berlin.de/~jutta/gsm/">GSM</ulink>,
    89103    <xref linkend="imlib2"/>,
    90     <xref linkend="lame"/>,
    91104    <xref linkend="liba52"/>,
    92105    <ulink url="http://sourceforge.net/projects/libdc1394">libdc1394</ulink>,
    93106    <ulink url="http://svn.mplayerhq.hu/nut/src/trunk/">libnut</ulink> (SVN checkout),
    94     <xref linkend="libvorbis"/>,
     107    <ulink url="http://sourceforge.net/projects/librtmp">librtmp</ulink>,
     108    <ulink url="http://diracvideo.org/">libschroedinger</ulink>,
    95109    <ulink url="http://medialibrary.sourceforge.net/">MediaLibrary</ulink>,
     110    <ulink url="http://www.openjpeg.org">OpenJPEG</ulink>,
    96111    <xref linkend="sdl"/>,
    97     <xref linkend="libtheora"/>,
    98     <xref linkend="x-window-system"/>,
    99     <ulink url="http://www.videolan.org/developers/x264.html">x264</ulink>,
    100     <xref linkend="xvid"/>, and
    101     <xref linkend="tetex"/> (to build HTML documentation)</para>
     112    <xref linkend="speex"/>,
     113    <ulink url="http://www.tortall.net/projects/yasm/">yasm</ulink>, and
     114    <xref linkend="tetex"/> or
     115    <ulink url="http://www.nongnu.org/texi2html">texi2html</ulink>
     116   (to build HTML documentation)</para>
    102117
    103118    <para condition="html" role="usernotes">User Notes:
     
    109124    <title>Installation of FFmpeg</title>
    110125
    111     <para>Review the <filename>doc/optimization.txt</filename> file in the
    112     source tree for information about optimizing the build. Additionally, you
    113     may want to build the postprocessing library as other packages such as
    114     <xref linkend='mplayer'/> and <xref linkend='transcode'/> can utilize it,
    115     and <xref linkend='xine-lib'/> depends on it.  See the <quote>Command
    116     Explanations</quote> section for additional information.</para>
    117 
    118126    <para>Install <application>FFmpeg</application> by running the following
    119127    commands:</para>
    120128
    121 <screen><userinput>./configure --prefix=/usr \
    122             --enable-shared \
    123             --enable-pthreads \
    124             --disable-ffplay &amp;&amp;
    125 sed -i 's|/man|/share/man|' config.mak &amp;&amp;
    126 make &amp;&amp;
    127 texi2html --version >/dev/null 2>&amp;1 || make doc/ff{mpeg,play,server}.1</userinput></screen>
    128 
    129     <para>If you have <application>teTeX</application> installed, the HTML
     129<screen><userinput>sed -i 's/-number//' Makefile &amp;&amp;
     130./configure --prefix=/usr --enable-shared \
     131            --enable-pthreads --enable-gpl \
     132            --enable-swscale --enable-postproc \
     133            --enable-libfaad --enable-libmp3lame \
     134            --enable-libtheora --enable-libvorbis \
     135            --enable-libvpx --enable-libx264 \
     136            --enable-libxvid &amp;&amp;
     137make</userinput></screen>
     138
     139    <para>If you have <application>teTeX</application> or
     140    <application>texi2html</application> installed, the HTML
    130141    documentation was built during the <command>make</command> process. If you
    131142    wish to create additional formats of the documentation, you must have
    132     <application>teTeX</application> installed, then issue following
     143    <application>teTeX</application> installed, and issue the following
    133144    commands:</para>
    134145
    135146<screen><userinput>cd doc &amp;&amp;
    136 for DOCNAME in faq ffmpeg-doc hooks ffserver-doc ffplay-doc; do
     147for DOCNAME in faq ffmpeg-doc ffplay-doc ffprobe-doc ffserver-doc general libavfilter; do
    137148    texi2dvi -b -p $DOCNAME.texi
    138149    texi2dvi -b    $DOCNAME.texi
    139150    dvips -o $DOCNAME.ps $DOCNAME.dvi
    140     if [ $DOCNAME = ffserver-doc ] || [ $DOCNAME = ffplay-doc ]; then \
     151    if [ $DOCNAME = ffserver-doc ] || [ $DOCNAME = ffplay-doc ] || [ $DOCNAME = ffprobe-doc ]; then \
    141152        continue
    142153    fi
     
    147158
    148159    <para>If you have <xref linkend="doxygen"/> installed and wish to create
    149     the API documentation (takes about 100 MB of space), issue
     160    the API documentation (takes about 150 MB of space), issue
    150161    <command>doxygen</command>.</para>
    151162
    152     <para>This package does not come with a test suite that works.</para>
     163    <para>If you wish to run the tests, issue: <command>make check</command> -
     164    that will take about 0.9 SBU and use another 365 MB of space.</para>
    153165
    154166    <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
     
    178190    <title>Command Explanations</title>
    179191
     192    <para><parameter>sed -i 's/-number//' Makefile</parameter>: Recent versions
     193    of gnu <command>texi2html</command> error out because
     194    <command>-number</command> is now ambiguous (for number-footnote or
     195    number-sections).  Neither choice makes any difference to what is created
     196    here, and the same is true with older versions of
     197    <command>texi2html</command>, e.g. from application
     198    <application>teTeX</application>.</para>
     199
    180200    <para><parameter>--enable-shared</parameter>: This switch is needed to
    181201    build the shared libraries, otherwise only static libraries are built
     
    185205    build to link against the Posix threads library.</para>
    186206
    187     <para><parameter>--disable-ffplay</parameter>: Only installs the server part.
    188     <command>ffplay</command> requires <application>X</application> for
    189     building. Remove this option if <application>X</application> is
    190     installed.</para>
     207    <para><parameter>--enable-gpl</parameter>: This switch enables the
     208    use of GPL code and permits support for postprocessing, swscale, liba54,
     209    xvid, x264, libfaad2 and x11grab to be selected.</para>
     210
     211    <para><parameter>--enable-swscale</parameter>: This switch causes libswscale
     212    to be built.</para>
     213
     214    <para><parameter>--enable-postprocessing</parameter>: This switch causes
     215    libpostproc to be built.</para>
    191216
    192217    <para><option>--enable-<replaceable>&lt;codec&gt;</replaceable></option>: Review
    193218    the available options and codecs using the
    194219    <command>./configure --help</command> command. You must explicitly enable
    195     each optional codec. Note that if you wish to build support for
    196     postprocessing, liba52, xvid, x264, libfaad2, x11grab or swscaler, you
    197     must pass <option>--enable-gpl</option> to the
    198     <command>configure</command> script.</para>
    199 
    200     <para><parameter>--enable-pp</parameter>: This switch enables
    201     postprocessing support.</para>
    202 
    203     <para><parameter>--enable-gpl</parameter>: This switch enables the
    204     use of GPL code for postprocessing support.</para>
    205 
    206     <para><command>texi2html --version ...</command>: These commands are used
    207     to check the presence of the <application>teTeX</application> package, and
    208     builds/installs the man pages if it is not found.</para>
     220    each optional codec. If you have not installed some of the recommended
     221    dependencies, do not enable those you have omitted.</para>
     222
     223    <para><option>--disable-ffplay</option>: Only installs the server part.
     224    Use this option if <application>X</application> is not installed.</para>
     225
     226    <para><option>--disable-static</option>: This switch prevents the static
     227    libraries from being built.</para>
     228
     229    <para><command>if [ $DOCNAME = ffserver-doc ] ...</command> These three
     230    .texi files are rejected by <command>makeinfo</command> because of syntax
     231    errors.</para>
    209232
    210233  </sect2>
     
    244267
    245268      <seglistitem>
    246         <seg>ffmpeg, ffserver, and optionally, ffplay</seg>
    247         <seg>libavcodec.{so,a}, libavformat.{so,a}, libavutil.{so,a},
    248         video hook modules and optionally, libpostproc.{so,a}</seg>
    249         <seg>/usr/include/ffmpeg, /usr/include/postproc, /usr/lib/vhook, and
     269        <seg>ffmpeg, ffplay, ffprobe, and ffserver</seg>
     270        <seg>libavcodec.{so,a}, libavdevice.{so,a}, libavformat.{so,a},
     271        libavutil.{so,a}, libpostproc.{so,a}, and libswscale.{so,a}</seg>
     272        <seg>/usr/include/libavcodec, /usr/include/libavdevice,
     273        /usr/include/libavformat, /usr/include/libavutil, /usr/include/postproc,
     274        /usr/include/libswscale, /usr/share/ffmpeg, and
    250275        /usr/share/doc/ffmpeg-&ffmpeg-version;</seg>
    251276      </seglistitem>
     
    291316
    292317      <varlistentry id="libavcodec">
    293         <term><filename class='libraryfile'>libavcodec.so</filename></term>
     318        <term><filename class='libraryfile'>libavcodec.{so,a}</filename></term>
    294319        <listitem>
    295320          <para>is a library containing the <application>FFmpeg</application>
    296321          codecs (both encoding and decoding).</para>
    297322          <indexterm zone="ffmpeg libavcodec">
    298             <primary sortas="c-libavcodec">libavcodec.so</primary>
     323            <primary sortas="c-libavcodec">libavcodec.{so,a}</primary>
     324          </indexterm>
     325        </listitem>
     326      </varlistentry>
     327
     328      <varlistentry id="libavdevice">
     329        <term><filename class='libraryfile'>libavdevice.{so,a}</filename></term>
     330        <listitem>
     331          <para>is the <application>FFmpeg</application> device handling
     332          library.</para>
     333          <indexterm zone="ffmpeg libavdevice">
     334            <primary sortas="c-libavdevice">libavdevice.{so,a}</primary>
    299335          </indexterm>
    300336        </listitem>
     
    302338
    303339      <varlistentry id="libavformat">
    304         <term><filename class='libraryfile'>libavformat.so</filename></term>
     340        <term><filename class='libraryfile'>libavformat.{so,a}</filename></term>
    305341        <listitem>
    306342          <para>is a library containing the file formats handling (mux and demux code
     
    308344          allowing the generation of  audio or video streams.</para>
    309345          <indexterm zone="ffmpeg libavformat">
    310             <primary sortas="c-libavformat">libavformat.so</primary>
     346            <primary sortas="c-libavformat">libavformat.{so,a}</primary>
     347          </indexterm>
     348        </listitem>
     349      </varlistentry>
     350
     351      <varlistentry id="libavutil">
     352        <term><filename class='libraryfile'>libavutil.{so,a}</filename></term>
     353        <listitem>
     354          <para>is the <application>FFmpeg</application> utility library.</para>
     355          <indexterm zone="ffmpeg libavutil">
     356            <primary sortas="c-libavutil">libavutil.{so,a}</primary>
     357          </indexterm>
     358        </listitem>
     359      </varlistentry>
     360
     361      <!-- Both mplayer and ffmpeg now create libpostproc.  The validation
     362      for the book is not impressed by that, and it falls apart without giving
     363      any useful information if the id is changed to "libpostproc (from ffmpeg)"
     364      or any other variant using spaces or parenthesis or square brackets, so
     365      try this variant : mmm, bizarrely, it accepts this but drops everything from
     366      the first hyphen, so that in longindex.html it looks just right (one library,
     367      two packages)  -->
     368      <varlistentry id="libpostproc-from-ffmpeg">
     369        <term><filename class='libraryfile'>libpostproc.{so,a}</filename></term>
     370        <listitem>
     371          <para>is the <application>FFmpeg</application> post processing
     372          library.</para>
     373          <indexterm zone="ffmpeg libpostproc">
     374            <primary sortas="c-libpostproc">libpostproc.{so,a}</primary>
     375          </indexterm>
     376        </listitem>
     377      </varlistentry>
     378
     379      <varlistentry id="libswscale">
     380        <term><filename class='libraryfile'>libswscale.{so,a}</filename></term>
     381        <listitem>
     382          <para>is the <application>FFmpeg</application> image rescaling
     383          library.</para>
     384          <indexterm zone="ffmpeg libswscale">
     385            <primary sortas="c-libswscale">libswscale.{so,a}</primary>
    311386          </indexterm>
    312387        </listitem>
Note: See TracChangeset for help on using the changeset viewer.