glfs/multimedia/videoutils/vlc.xml
Bruce Dubbs 1613ba564d Update to lxml-4.2.5 (Python module).
Update to mesa-18.2.0. 
Update to vlc-3.0.4. 



git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@20488 af4574ff-66df-0310-9fd7-8a98e5e911e0
2018-09-10 21:19:32 +00:00

444 lines
15 KiB
XML

<?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 vlc-download-http "https://download.videolan.org/vlc/&vlc-version;/vlc-&vlc-version;.tar.xz">
<!ENTITY vlc-download-ftp " ">
<!ENTITY vlc-md5sum "f5e49a0fb9594ab8debf934a710e92f1">
<!ENTITY vlc-size "24 MB">
<!ENTITY vlc-buildsize "711 MB (add 14 MB for tests)">
<!ENTITY vlc-time "2.0 SBU (using parallelism=4; add 0.2 SBU for tests)">
]>
<sect1 id="vlc" xreflabel="VLC-&vlc-version;">
<?dbhtml filename="vlc.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>VLC-&vlc-version;</title>
<indexterm zone="vlc">
<primary sortas="a-VLC">VLC</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to VLC</title>
<para>
<application>VLC</application> is a media player, streamer, and encoder.
It can play from many inputs, such as files, network streams, capture
devices, desktops, or DVD, SVCD, VCD, and audio CD. It can use most audio
and video codecs (MPEG 1/2/4, H264, VC-1, DivX, WMV, Vorbis, AC3, AAC,
etc.), and it can also convert to different formats and/or send streams
through the network.
</para>
&lfs83_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&vlc-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&vlc-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &vlc-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &vlc-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &vlc-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &vlc-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">VLC Dependencies</bridgehead>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="alsa-lib"/>,
<xref linkend="ffmpeg"/>,
<xref linkend="liba52"/>,
<xref linkend="libgcrypt"/>
<xref linkend="libmad"/>,
<xref linkend="lua"/>, and
<xref linkend="x-window-system"/>,
</para>
<bridgehead renderas="sect4">Optional features and packages</bridgehead>
<para role="optional">
<xref linkend="dbus"/>
</para>
<bridgehead renderas="sect4">Optional input plugins</bridgehead>
<para role="optional">
<xref linkend="libcddb"/>,
<xref linkend="libdv"/>,
<xref linkend="libdvdcss"/>,
<xref linkend="libdvdread"/>,
<xref linkend="libdvdnav"/>,
<xref linkend="opencv"/> (currently broken),
<xref linkend="samba"/>,
<xref linkend="v4l-utils"/>,
<ulink url="http://www.videolan.org/developers/libbluray.html">libbluray</ulink>,
<ulink url="http://sourceforge.net/projects/libdc1394/">libdc1394</ulink>,
<ulink url="https://github.com/libproxy/libproxy">libproxy</ulink>,
<ulink url="http://www.live555.com/">Live555</ulink>, and
<ulink url="http://www.gnu.org/software/vcdimager/">VCDImager</ulink>
(requires <xref linkend="libcdio"/>)
</para>
<bridgehead renderas="sect4">Optional mux/demux plugins</bridgehead>
<para role="optional">
<xref linkend="libogg"/>,
<ulink url="https://github.com/kode54/Game_Music_Emu">Game Music Emu</ulink>,
<ulink url="http://www.videolan.org/developers/libdvbpsi.html">libdvbpsi</ulink>,
<ulink url="http://downloads.xiph.org/releases/libshout/">libshout</ulink>,
<ulink url="http://dl.matroska.org/downloads/libmatroska/">libmatroska</ulink>
(requires <ulink url="http://dl.matroska.org/downloads/libebml/">libebml</ulink>),
<ulink url="http://sourceforge.net/projects/modplug-xmms/">libmodplug</ulink>,
<ulink url="http://www.musepack.net/">Musepack</ulink>, and
<ulink url="http://sourceforge.net/projects/sidplay2/">sidplay-libs</ulink>
</para>
<bridgehead renderas="sect4">Optional codec plugins</bridgehead>
<para role="optional">
<xref linkend="faad2"/>,
<xref linkend="flac"/>,
<xref linkend="libass"/>,
<xref linkend="libmpeg2"/>,
<xref linkend="libpng"/>,
<xref linkend="libtheora"/>,
<xref linkend="libva"/>,
<xref linkend="libvorbis"/>,
<xref linkend="opus"/>,
<xref linkend="speex"/>,
<xref linkend="x264"/>,
<ulink url="http://sourceforge.net/projects/dirac/">Dirac</ulink>,
<ulink url="http://sourceforge.net/projects/fluidsynth/">FluidSynth</ulink>,
<ulink url="http://www.videolan.org/developers/libdca.html">libdca</ulink>,
<ulink url="http://code.google.com/p/libkate/">libkate</ulink>,
<ulink url="http://www.khronos.org/openmax/">OpenMAX</ulink>,
<ulink url="http://sourceforge.net/projects/schrodinger/">Schroedinger</ulink>,
<ulink url="http://wiki.xiph.org/Tremor">Tremor</ulink>,
<ulink url="http://www.twolame.org/">Twolame</ulink>, and
<ulink url="http://sourceforge.net/projects/zapping/">Zapping VBI</ulink>
</para>
<bridgehead renderas="sect4">Optional video plugins</bridgehead>
<para role="optional">
<xref linkend="aalib"/>,
<xref linkend="fontconfig"/>,
<xref linkend="freetype2"/>,
<xref linkend="fribidi"/>,
<xref linkend="librsvg"/>,
<xref linkend="libvdpau"/>,
<xref linkend="sdl"/>
(with <ulink url="http://www.libsdl.org/projects/SDL_image/">SDL_image</ulink>), and
<ulink url="http://caca.zoy.org/">libcaca</ulink>
</para>
<bridgehead renderas="sect4">Optional audio plugins</bridgehead>
<para role="optional">
<xref linkend="pulseaudio"/>,
<xref linkend="libsamplerate"/>, and
<ulink url="http://jackaudio.org/">JACK</ulink>
</para>
<bridgehead renderas="sect4">Optional interface plugins</bridgehead>
<para role="optional">
<xref linkend="qt5"/> (required for the graphical user interface),
<ulink url="http://pkgbuild.com/~giovanni/libtar/">libtar</ulink>, and
<ulink url="http://www.lirc.org/">LIRC</ulink>
</para>
<bridgehead renderas="sect4">Optional visualisations and video filter plugins</bridgehead>
<para role="optional">
<ulink url="http://sourceforge.net/projects/goom/">Goom</ulink> and
<ulink url="http://sourceforge.net/projects/projectm/">projectM</ulink>
</para>
<bridgehead renderas="sect4">Optional service discovery plugins</bridgehead>
<para role="optional">
<xref linkend="avahi"/>,
<ulink url="http://sourceforge.net/projects/libmtp/">libmtp</ulink> and
<ulink url="http://sourceforge.net/projects/pupnp/">libupnp</ulink>
</para>
<bridgehead renderas="sect4">Miscellaneous options</bridgehead>
<para role="optional">
<xref linkend="gnutls"/>,
<xref linkend="libnotify"/>,
<xref linkend="libxml2"/>,
<xref linkend="taglib"/>,
<xref role="runtime" linkend="xdg-utils"/> (runtime), and
<ulink url="http://www.ambilight4pc.com/atmolight.html">AtmoLight</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/vlc"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of VLC</title>
<para>
Install <application>VLC</application> by running the following commands:
</para>
<screen><userinput>sed -i '/vlc_demux.h/a #define LUA_COMPAT_APIINTCASTS' modules/lua/vlc.h &amp;&amp;
sed -i '/DEPRECATED/s:^://:' modules/text_renderer/freetype/text_layout.c &amp;&amp;
sed -i '/118/s/$/\&amp;\&amp; X264_BUILD &lt; 153/' modules/codec/x264.c &amp;&amp;
BUILDCC=gcc ./configure --prefix=/usr --disable-opencv &amp;&amp;
make</userinput></screen>
<!-- No longer needed
sed -i '/#include &lt;QString&gt;/i#include &lt;QButtonGroup&gt;' \
modules/gui/qt/components/simple_preferences.cpp &amp;&amp;
-->
<para>
To test the results, issue: <command>make check</command>.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<!--
<note>
<para>
If the XORG_PREFIX is not /usr, make sure the LIBRARY_PATH
environment variable is set properly for the root user when
doing the install, For example:
<command>sudo make LIBRARY_PATH=$XORG_PREFIX/lib ... install</command>.
</para>
</note>
-->
<screen role="root"><userinput>make docdir=/usr/share/doc/vlc-&vlc-version; install</userinput></screen>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/update-icons-and-desktop.xml"/>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<command>sed ... modules/lua/...</command>: This command allows
building with the current version of <xref linkend="lua"/>.
</para>
<para>
<command>sed ... text_layout.c</command>: This command allows
building with the current version of <xref linkend="freetype2"/>.
</para>
<para>
<command>sed ... modules/codec/x264.c</command> This command allows
building with the current version of <xref linkend="x264"/>.
</para>
<!--
<para>
<command>sed -i '/#include &lt;QString&gt;/ ...</command> This
command allows building with the current version of
<xref linkend="qt5"/>.
</para>
-->
<para>
<option>--disable-opencv</option>: This switch is required to disable
<application>opencv</application> which is not compatible with this
version of <application>vlc</application>.
</para>
<para>
<option>--disable-lua</option>: Use this switch if you don't have
<application>Lua</application> installed.
</para>
<para>
<option>--disable-mad</option>: Use this switch if you don't
have <application>libmad</application> installed.
</para>
<para>
<option>--disable-avcodec --disable-swscale</option>: Use these switches
if you don't have <application>FFmpeg</application> installed.
</para>
<para>
<option>--disable-a52</option>: Use this switch if you don't have
<application>liba52</application> installed.
</para>
<para>
<option>--disable-xcb</option>: Use this switch if you don't have
<application>X Window System</application> installed.
</para>
<para>
<option>--disable-alsa</option>: Use this switch if you don't have
<application>ALSA</application> installed.
</para>
<para>
<option>--disable-libgcrypt</option>: Use this switch if you don't
have <application>libgcrypt</application> installed.
</para>
<note>
<para>
There are many options to <application>VLC</application>'s
<command>configure</command> command. Check the
<command>configure --help</command> output for a complete list.
</para>
</note>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
cvlc, nvlc, qvlc, rvlc, svlc, vlc and vlc-wrapper
</seg>
<seg>
libvlccore.so, libvlc.so, and many plugins in
/usr/lib/vlc/plugins
</seg>
<seg>
/usr/{include,lib,share}/vlc and
/usr/share/doc/vlc-&vlc-version;
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="cvlc">
<term><command>cvlc</command></term>
<listitem>
<para>
is a script to run VLC with the dummy interface.
</para>
<indexterm zone="vlc cvlc">
<primary sortas="b-cvlc">cvlc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="nvlc">
<term><command>nvlc</command></term>
<listitem>
<para>
is a script to run VLC with the ncurses interface.
</para>
<indexterm zone="vlc nvlc">
<primary sortas="b-nvlc">nvlc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qvlc">
<term><command>qvlc</command></term>
<listitem>
<para>
is a script to run <application>VLC</application> with the
<application>Qt</application> interface.
</para>
<indexterm zone="vlc qvlc">
<primary sortas="b-qvlc">qvlc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="rvlc">
<term><command>rvlc</command></term>
<listitem>
<para>
is a script to run <application>VLC</application> with a command
line interface.
</para>
<indexterm zone="vlc rvlc">
<primary sortas="b-rvlc">rvlc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="svlc">
<term><command>svlc</command></term>
<listitem>
<para>
is a script to run <application>VLC</application> with the skins
interface.
</para>
<indexterm zone="vlc svlc">
<primary sortas="b-svlc">svlc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="vlc-prog">
<term><command>vlc</command></term>
<listitem>
<para>
is the <application>VLC</application> media player.
</para>
<indexterm zone="vlc vlc-prog">
<primary sortas="b-vlc">vlc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="vlc-wrapper">
<term><command>vlc-wrapper</command></term>
<listitem>
<para>
is a wrapper to drop privileges with <application>VLC</application>.
</para>
<indexterm zone="vlc vlc-wrapper">
<primary sortas="b-vlc-wrapper">vlc-wrapper</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>