glfs/multimedia/libdriv/gstreamer10.xml
Bruce Dubbs d78e102e14 Update gstreamer stack to version 1.20.5.
gstreamer
gst-plugins-base
gst-plugins-good
gst-plugins-bad
gst-plugins-ugly
gst-libav
gstreamer-vaapi
2022-12-29 10:41:40 -06:00

332 lines
11 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 gstreamer10-download-http "&gstreamer-dl;/gstreamer/gstreamer-&gstreamer10-version;.tar.xz">
<!ENTITY gstreamer10-download-ftp " ">
<!ENTITY gstreamer10-md5sum "5e7669974dabe5e2481a8a37256b573e">
<!ENTITY gstreamer10-size "2.6 MB">
<!ENTITY gstreamer10-buildsize "51 MB (with tests)">
<!ENTITY gstreamer10-time "0.3 SBU (Using parallelism=4; with tests)">
]>
<sect1 id="gstreamer10" xreflabel="gstreamer-&gstreamer10-version;">
<?dbhtml filename="gstreamer10.html"?>
<title>gstreamer-&gstreamer10-version;</title>
<indexterm zone="gstreamer10">
<primary sortas="a-gstreamer">gstreamer</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to gstreamer</title>
<para>
<application>gstreamer</application> is a streaming media framework that
enables applications to share a common set of plugins for tasks such as
video encoding and decoding, audio encoding and decoding, audio and video
filters, audio visualisation, web streaming and anything else that
streams in real-time or otherwise. This package only provides base
functionality and libraries. You may need at least <xref
linkend="gst10-plugins-base"/> and one of Good, Bad, Ugly or Libav
plugins.
</para>
&lfs112_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&gstreamer10-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&gstreamer10-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &gstreamer10-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &gstreamer10-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &gstreamer10-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &gstreamer10-time;
</para>
</listitem>
</itemizedlist>
<!--
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch: <ulink
url="&patch-root;/gstreamer-&gstreamer10-version;-buffer_size_reset_fix-1.patch"/>
</para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">gstreamer Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="glib2"/>
</para>
<!-- Required for GNOME -->
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="gobject-introspection"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="gtk3"/> (for examples),
<xref linkend="gsl"/> (used by one test if installed),
<xref linkend="libunwind"/>,
<xref linkend="valgrind"/>,
<ulink url="https://github.com/scop/bash-completion/">bash-completion</ulink>,
<ulink url="https://pypi.org/project/hotdoc/">hotdoc</ulink>, and
<ulink url="https://sourceware.org/elfutils/">libdw</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/gstreamer10"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of gstreamer</title>
<!--
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gst10-objc-error.xml"/>
-->
<para>
Install <application>gstreamer</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson --prefix=/usr \
--buildtype=release \
-Dgst_debug=false \
-Dpackage-origin=https://www.linuxfromscratch.org/blfs/view/&blfs-version;/ \
-Dpackage-name="GStreamer &gstreamer10-version; BLFS" &amp;&amp;
ninja</userinput></screen>
<para>
To test the results, issue: <command>ninja test</command>.
</para>
<caution>
<para>
If you are reinstalling <application>gstreamer</application> from a
previous version, it is best if you remove the prior version, including
plugins, before installing the new version. If there is a mixture of
versions installed, using processes may hang or not work properly. As
the <systemitem class="username">root</systemitem> user:
</para>
<screen role="nodump"><userinput>rm -rf /usr/bin/gst-* /usr/{lib,libexec}/gstreamer-1.0</userinput></screen>
</caution>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>ninja install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/meson-buildtype-release.xml"/>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
gst-inspect-1.0, gst-launch-1.0, gst-stats-1.0, gst-tester-1.0,
and gst-typefind-1.0
</seg>
<seg>
libgstbase-1.0.so, libgstcheck-1.0.so, libgstcontroller-1.0.so,
libgstnet-1.0.so, and libgstreamer-1.0.so
</seg>
<seg>
/usr/{include,lib,libexec,share}/gstreamer-1.0
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="gst-inspect-1.0">
<term><command>gst-inspect-1.0</command></term>
<listitem>
<para>
is a tool that prints out information on available
<application>gstreamer</application> plugins,
information about a particular plugin, or information
about a particular element
</para>
<indexterm zone="gstreamer10 gst-inspect-1.0">
<primary sortas="b-gst-inspect-1.0">gst-inspect-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gst-launch-1.0">
<term><command>gst-launch-1.0</command></term>
<listitem>
<para>
is a tool that builds and runs basic
<application>gstreamer</application> pipelines
</para>
<indexterm zone="gstreamer10 gst-launch-1.0">
<primary sortas="b-gst-launch-1.0">gst-launch-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gst-stats-1.0">
<term><command>gst-stats-1.0</command></term>
<listitem>
<para>
is a tool used to gather statistics about
<application>gstreamer</application> operations
</para>
<indexterm zone="gstreamer10 gst-stats-1.0">
<primary sortas="b-gst-stats-1.0">gst-stats-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gst-tester-1.0">
<term><command>gst-tester-1.0</command></term>
<listitem>
<para>
runs a test plan in TAP compatible format while integrating with
the meson test harness
</para>
<indexterm zone="gstreamer10 gst-tester-1.0">
<primary sortas="b-gst-tester-1.0">gst-tester-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gst-typefind-1.0">
<term><command>gst-typefind-1.0</command></term>
<listitem>
<para>
uses the <application>gstreamer</application> type finding system
to determine the relevant <application>gstreamer</application>
plugin to parse or decode files, and the corresponding MIME type
</para>
<indexterm zone="gstreamer10 gst-typefind-1.0">
<primary sortas="b-gst-typefind-1.0">gst-typefind-1.0</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgstbase-1.0">
<term><filename class="libraryfile">libgstbase-1.0.so</filename></term>
<listitem>
<para>
provides some base classes to be extended by elements and utility
classes that are most useful for plugin developers
</para>
<indexterm zone="gstreamer10 libgstbase-1.0">
<primary sortas="c-libgstbase-1.0">libgstbase-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgstcheck-1.0">
<term><filename class="libraryfile">libgstcheck-1.0.so</filename></term>
<listitem>
<para>
provides functionality for writing unit tests that use the check
framework
</para>
<indexterm zone="gstreamer10 libgstcheck-1.0">
<primary sortas="c-libgstcheck-1.0">libgstcheck-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgstcontroller-1.0">
<term><filename class="libraryfile">libgstcontroller-1.0.so</filename></term>
<listitem>
<para>
provides functionality to animate element properties over time
</para>
<indexterm zone="gstreamer10 libgstcontroller-1.0">
<primary sortas="c-libgstcontroller-1.0">libgstcontroller-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgstnet-1.0">
<term><filename class="libraryfile">libgstnet-1.0.so</filename></term>
<listitem>
<para>
provides network elements and objects
</para>
<indexterm zone="gstreamer10 libgstnet-1.0">
<primary sortas="c-libgstnet-1.0">libgstnet-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgstreamer-1.0">
<term><filename class="libraryfile">libgstreamer-1.0.so</filename></term>
<listitem>
<para>
provides all of the core <application>gstreamer</application>
services, including initialization, plugin management and types,
as well as the object hierarchy that defines elements and bins,
along with some more specialized elements
</para>
<indexterm zone="gstreamer10 libgstreamer-1.0">
<primary sortas="c-libgstreamer-1.0">libgstreamer-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>