glfs/multimedia/libdriv/gst10-plugins-base.xml
Douglas R. Reno 4ef9eb3bce Minor tweaks to the gstreamer section:
gst-plugins-good: Remove the libtool caution, we're using meson/ninja now so it no longer applies
gst-plugins-*: Convert the 'dependency for a given plugin needs to be installed first' into an XInclude
gst-*: With the move to Meson, the developers put in a sanity check to ensure that there is an ObjC compiler on the system. This was originally intended for macOS, and the build continues normally without it. I've added an XInclude containing a note to all pages affected to document this, since it describes itself as a 'fatal error'

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@21627 af4574ff-66df-0310-9fd7-8a98e5e911e0
2019-05-26 20:07:26 +00:00

241 lines
8.1 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 gst10-plugins-base-download-http
"&gstreamer-dl;/gst-plugins-base/gst-plugins-base-&gst10-plugins-base-version;.tar.xz">
<!ENTITY gst10-plugins-base-download-ftp " ">
<!ENTITY gst10-plugins-base-md5sum "41dde92930710c75cdb49169c5cc6dfc">
<!ENTITY gst10-plugins-base-size "3.7 MB">
<!ENTITY gst10-plugins-base-buildsize "92 MB (with tests; without docs)">
<!ENTITY gst10-plugins-base-time "0.8 SBU (Using parallelism=4; with tests; without docs)">
]>
<sect1 id="gst10-plugins-base" xreflabel="gst-plugins-base-&gst10-plugins-base-version;">
<?dbhtml filename="gst10-plugins-base.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>gst-plugins-base-&gst10-plugins-base-version;</title>
<indexterm zone="gst10-plugins-base">
<primary sortas="a-gst-plugins-base">gst-plugins-base</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to GStreamer Base Plug-ins</title>
<para>
The <application>GStreamer Base Plug-ins</application> is a well-groomed and
well-maintained collection of <application>GStreamer</application> plug-ins
and elements, spanning the range of possible types of elements one would want
to write for <application>GStreamer</application>. You will need at least one
of Good, Bad, Ugly or Libav plugins for <application>GStreamer</application>
applications to function properly.
</para>
&lfs84_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&gst10-plugins-base-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&gst10-plugins-base-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &gst10-plugins-base-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &gst10-plugins-base-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &gst10-plugins-base-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &gst10-plugins-base-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">GStreamer Base Plug-ins Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="gstreamer10"/>
</para>
<!-- Common formats, output and input codecs and requirements
for GNOME apps. What's a multimedia framework useful if it
can't be used to play anything (common)? -->
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="alsa-lib"/>,
<xref linkend="cdparanoia"/> (for building the CDDA plugin),
<xref linkend="gobject-introspection"/>,
<xref linkend="iso-codes"/>,
<xref linkend="libogg"/>,
<xref linkend="libtheora"/>,
<xref linkend="libvorbis"/>, and
<xref linkend="xorg7-lib"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="gtk3"/> (for examples),
<xref linkend="gtk-doc"/>,
<xref linkend="opus"/>,
<xref linkend="qt5"/> (for examples),
<xref linkend="sdl"/>,
<xref linkend="valgrind"/>,
<ulink url="http://libvisual.org/">libvisual</ulink>,
<ulink url="http://gstreamer.freedesktop.org/src/orc/">Orc</ulink>, and
<ulink url="http://wiki.xiph.org/Tremor">Tremor</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/gst10-plugins-base"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of GStreamer Base Plug-ins</title>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gst10-objc-error.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gst10-plugins.xml"/>
<para>
Install <application>GStreamer Base Plug-ins</application> by running the
following commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson --prefix=/usr \
-Dbuildtype=release \
-Dgtk_doc=disabled \
-Dpackage-origin=http://www.linuxfromscratch.org/blfs/view/svn/ \
-Dpackage-name="GStreamer &gst10-plugins-base-version; BLFS" &amp;&amp;
ninja</userinput></screen>
<para>
To test the results, issue: <command>ninja test</command>. The tests
require an X terminal running, or all of the GL tests will fail.
</para>
<note>
<para>
When installing, the Makefile does some additional
linking. If you do not have Xorg in /usr, the LIBRARY_PATH
variable needs to be defined for the root user. If
using sudo to assume root, use the -E option to pass
your current environment variables for the install process.
</para>
</note>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>ninja install</userinput></screen>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
gst-device-monitor-1.0, gst-discoverer-1.0, and gst-play-1.0
</seg>
<seg>
libgstallocators-1.0.so, libgstapp-1.0.so, libgstaudio-1.0.so,
libgstfft-1.0.so, libgstgl-1.0.so, libgstpbutils-1.0.so,
libgstriff-1.0.so, libgstrtp-1.0.so, libgstrtsp-1.0.so,
libgstsdp-1.0.so, libgsttag-1.0.so, libgstvideo-1.0.so
and several plugins under /usr/lib/gstreamer-1.0
</seg>
<seg>
/usr/include/gstreamer-1.0/gst/{allocators,app,audio,fft,gl,pbutils},
/usr/include/gstreamer-1.0/gst/{riff,rtp,rtsp,sdp,tag,video},
/usr/share/gst-plugins-base, and
/usr/share/gtk-doc/html/gst-plugins-base-{libs,plugins}-1.0
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="gst-device-monitor-1.0">
<term><command>gst-device-monitor-1.0</command></term>
<listitem>
<para>
is a command line tool that can be used to test
GStreamer's device monitoring functionality
</para>
<indexterm zone="gst10-plugins-base gst-device-monitor-1.0">
<primary sortas="b-gst-device-monitor-1.0">gst-device-monitor-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gst-discoverer-1.0">
<term><command>gst-discoverer-1.0</command></term>
<listitem>
<para>
is a tool that can be used to print basic metadata and
stream information about a media file.
</para>
<indexterm zone="gst10-plugins-base gst-discoverer-1.0">
<primary sortas="b-gst-discoverer-1.0">gst-discoverer-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gst-play-1.0">
<term><command>gst-play-1.0</command></term>
<listitem>
<para>
is a command line tool that can be used to test basic
playback using the playbin element.
</para>
<indexterm zone="gst10-plugins-base gst-play-1.0">
<primary sortas="b-gst-play-1.0">gst-play-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>