<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../../general.ent">
  %general-entities;

  <!ENTITY libvpx-download-http "https://github.com/webmproject/libvpx/archive/v&libvpx-version;/libvpx-&libvpx-version;.tar.gz">
  <!ENTITY libvpx-download-ftp  " ">
  <!ENTITY libvpx-md5sum        "6dbccca688886c66a216d7e445525bce">
  <!ENTITY libvpx-size          "5.1 MB">
  <!ENTITY libvpx-buildsize     "56 MB">
  <!ENTITY libvpx-time          "0.5 SBU (using parallelism=4)">
]>

<sect1 id="libvpx" xreflabel="libvpx-&libvpx-version;">
  <?dbhtml filename="libvpx.html"?>

  <sect1info>
    <othername>$LastChangedBy$</othername>
    <date>$Date$</date>
  </sect1info>

  <title>libvpx-&libvpx-version;</title>

  <indexterm zone="libvpx">
    <primary sortas="a-libvpx">libvpx</primary>
  </indexterm>

  <sect2 role="package">
    <title>Introduction to libvpx</title>

    <para>This package, from the WebM project, provides the reference
    implementations of the VP8 Codec, used in most current html5 video,
    and of the next-generation VP9 Codec.</para>

    &lfs90_checked;

    <bridgehead renderas="sect3">Package Information</bridgehead>
    <itemizedlist spacing="compact">
      <listitem>
        <para>Download (HTTP): <ulink url="&libvpx-download-http;"/></para>
      </listitem>
      <listitem>
        <para>Download (FTP): <ulink url="&libvpx-download-ftp;"/></para>
      </listitem>
      <listitem>
        <para>Download MD5 sum: &libvpx-md5sum;</para>
      </listitem>
      <listitem>
        <para>Download size: &libvpx-size;</para>
      </listitem>
      <listitem>
        <para>Estimated disk space required: &libvpx-buildsize;</para>
      </listitem>
      <listitem>
        <para>Estimated build time: &libvpx-time;</para>
      </listitem>
    </itemizedlist>

    <bridgehead renderas="sect3">libvpx Dependencies</bridgehead>

    <bridgehead renderas="sect4">Required</bridgehead>
    <para role="required">
      <xref linkend="yasm"/> or <xref role="nodep" linkend="nasm"/>, and 
<!-- see
http://lists.linuxfromscratch.org/pipermail/blfs-book/2019-August/083164.html
and references therein -->
      <xref linkend="which"/> (so <command>configure</command> can find yasm)
    </para>

    <bridgehead renderas="sect4">Optional</bridgehead>
    <para role="optional">
      <xref linkend="doxygen"/> and <xref linkend="php"/>
      (to build the documentation)
    </para>

    <para condition="html" role="usernotes">User Notes:
    <ulink url="&blfs-wiki;/libvpx"/></para>

  </sect2>

  <sect2 role="installation">
    <title>Installation of libvpx</title>

    <para>Install <application>libvpx</application> by running the
    following commands:</para>

<screen><userinput>sed -i 's/cp -p/cp/' build/make/Makefile &amp;&amp;

mkdir libvpx-build            &amp;&amp;
cd    libvpx-build            &amp;&amp;

../configure --prefix=/usr    \
             --enable-shared  \
             --disable-static &amp;&amp;
make</userinput></screen>

    <para>This package does not come with a test suite.</para>

    <para>Now, as the <systemitem class="username">root</systemitem>
    user:</para>

<screen role="root"><userinput>make install</userinput></screen>

  </sect2>

  <sect2 role="commands">
    <title>Command Explanations</title>

    <para><command>sed ... </command>: This command
    corrects ownership and permissions of installed files.</para>

    <para><command>mkdir libvpx-build &amp;&amp; cd
    libvpx-build</command>: The <application>libvpx</application> developers
    recommend building in a dedicated build directory.</para>

    <para><option>--disable-vp8</option>: This switch prevents building of VP8
    codec support.</para>

    <para><option>--disable-vp9</option>: This switch prevents building of VP9
    codec support.</para>

    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
      href="../../xincludes/static-libraries.xml"/>

  </sect2>

  <sect2 role="content">
    <title>Contents</title>

    <segmentedlist>
      <segtitle>Installed Programs</segtitle>
      <segtitle>Installed Libraries</segtitle>
      <segtitle>Installed Directories</segtitle>

      <seglistitem>
        <seg>vpxdec and vpxenc</seg>
        <seg>libvpx.so</seg>
        <seg>/usr/include/vpx</seg>
      </seglistitem>
    </segmentedlist>

    <variablelist>
      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
      <?dbfo list-presentation="list"?>
      <?dbhtml list-presentation="table"?>

      <varlistentry id="vpxdec">
        <term><command>vpxdec</command></term>
        <listitem>
          <para>is the WebM Project VP8 and VP9 decoder.</para>
          <indexterm zone="libvpx vpxdec">
            <primary sortas="b-vpxdec">vpxdec</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="vpxenc">
        <term><command>vpxenc</command></term>
        <listitem>
          <para>is the WebM project VP8 and VP9 encoder.</para>
          <indexterm zone="libvpx vpxenc">
            <primary sortas="b-vpxenc">vpxenc</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="libvpx-lib">
        <term><filename class='libraryfile'>libvpx.so</filename></term>
        <listitem>
          <para>provides functions to use the VP8 and VP9 video codecs.</para>
          <indexterm zone="libvpx libvpx-lib">
            <primary sortas="c-libvpx">libvpx.so</primary>
          </indexterm>
        </listitem>
      </varlistentry>

    </variablelist>

  </sect2>

</sect1>