gstreamer/docs/libs/gst-plugins-base-libs-docs.sgml
Stian Selnes f766b85b96 rtpbasepayload: rtpbasedepayload: Add source-info property
Add a source-info property that will read/write meta to the buffers
about RTP source information. The GstRTPSourceMeta can be used to
transport information about the origin of a buffer, e.g. the sources
that is included in a mixed audio buffer.

A new function gst_rtp_base_payload_allocate_output_buffer() is added
for payloaders to use to allocate the output RTP buffer with the correct
number of CSRCs according to the meta and fill it.

RTPSourceMeta does not make sense on RTP buffers since the information
is in the RTP header. So the payloader will strip the meta from the
output buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=761947
2018-10-10 14:38:01 -04:00

340 lines
14 KiB
XML

<?xml version="1.0"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY % version-entities SYSTEM "version.entities">
%version-entities;
]>
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
<bookinfo>
<title>GStreamer Base Plugins &GST_API_VERSION; Library Reference Manual</title>
<releaseinfo>
for GStreamer Base Library &GST_API_VERSION; (&GST_VERSION;)
<ulink role="online-location" url="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/</ulink>.
</releaseinfo>
</bookinfo>
<part id="gstreamer-plugins-base">
<title>GStreamer Base Plugins Libraries</title>
<para>
This manual describes the libraries provided by the GStreamer Base Plugins
package.
</para>
<xi:include href="compiling.sgml" />
<chapter id="gstreamer-allocators">
<title>Allocators Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstallocators-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstdmabuf.xml" />
<xi:include href="xml/gstfdmemory.xml" />
<xi:include href="xml/gstphysmemoryallocator.xml" />
</chapter>
<chapter id="gstreamer-app">
<title>App Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstapp-&GST_API_VERSION;</filename> to the library flags.
</para>
<para>
To use it the functionality, insert an appsrc or appsink element into a pipeline and call the appropriate functions on the element.
</para>
<xi:include href="xml/gstappsrc.xml" />
<xi:include href="xml/gstappsink.xml" />
</chapter>
<chapter id="gstreamer-audio">
<title>Audio Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstaudio-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstaudio.xml" />
<xi:include href="xml/gstaudiometa.xml" />
<xi:include href="xml/gstaudioaggregator.xml" />
<xi:include href="xml/gstaudiocdsrc.xml" />
<xi:include href="xml/gstaudioclock.xml" />
<xi:include href="xml/gstaudiodecoder.xml" />
<xi:include href="xml/gstaudioencoder.xml" />
<xi:include href="xml/gstaudiofilter.xml" />
<xi:include href="xml/gstaudiosink.xml" />
<xi:include href="xml/gstaudiosrc.xml" />
<xi:include href="xml/gstaudiobasesink.xml" />
<xi:include href="xml/gstaudiobasesrc.xml" />
<xi:include href="xml/gstaudiochannels.xml" />
<xi:include href="xml/gstaudioconverter.xml" />
<xi:include href="xml/gstaudioquantize.xml" />
<xi:include href="xml/gstaudioringbuffer.xml" />
<xi:include href="xml/gstaudioiec61937.xml" />
<xi:include href="xml/gststreamvolume.xml" />
</chapter>
<chapter id="gstreamer-ffft">
<title>FFT Library</title>
<para>
The gstfft library is based on
<ulink role="online-location" url="http://sourceforge.net/projects/kissfft">kissfft</ulink>
by Mark Borgerding.
</para>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstfft-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstfft.xml" />
<xi:include href="xml/gstffts16.xml" />
<xi:include href="xml/gstffts32.xml" />
<xi:include href="xml/gstfftf32.xml" />
<xi:include href="xml/gstfftf64.xml" />
</chapter>
<chapter id="gstreamer-riff">
<title>Riff Media Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstriff-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstriff.xml" />
</chapter>
<chapter id="gstreamer-rtp">
<title>RTP Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstrtp-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstrtpmeta.xml" />
<xi:include href="xml/gstrtpbaseaudiopayload.xml" />
<xi:include href="xml/gstrtpbasedepayload.xml" />
<xi:include href="xml/gstrtpbasepayload.xml" />
<xi:include href="xml/gstrtpbuffer.xml" />
<xi:include href="xml/gstrtcpbuffer.xml" />
<xi:include href="xml/gstrtppayloads.xml" />
<xi:include href="xml/gstrtphdrext.xml" />
<xi:include href="xml/gstrtpdefs.xml" />
</chapter>
<chapter id="gstreamer-rtsp">
<title>RTSP Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstrtsp-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstrtspconnection.xml" />
<xi:include href="xml/gstrtspdefs.xml" />
<xi:include href="xml/gstrtspextension.xml" />
<xi:include href="xml/gstrtspmessage.xml" />
<xi:include href="xml/gstrtsprange.xml" />
<xi:include href="xml/gstrtsptransport.xml" />
<xi:include href="xml/gstrtspurl.xml" />
</chapter>
<chapter id="gstreamer-sdp">
<title>SDP Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstsdp-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstsdpmessage.xml" />
</chapter>
<chapter id="gstreamer-mikey">
<title>MIKEY Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstsdp-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstmikey.xml" />
</chapter>
<chapter id="gstreamer-tag">
<title>Tag Support Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgsttag-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gsttag.xml" />
<xi:include href="xml/gsttagvorbis.xml" />
<xi:include href="xml/gsttagid3.xml" />
<xi:include href="xml/gsttagexif.xml" />
<xi:include href="xml/gsttagxmp.xml" />
<xi:include href="xml/gsttagxmpwriter.xml" />
<xi:include href="xml/gsttagdemux.xml" />
<xi:include href="xml/gsttagmux.xml" />
<xi:include href="xml/gsttaglanguagecodes.xml" />
<xi:include href="xml/gsttaglicenses.xml" />
</chapter>
<chapter id="gstreamer-base-utils">
<title>Base Utils Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstpbutils-&GST_API_VERSION;</filename> to the library
flags.
</para>
<xi:include href="xml/gstpbutils.xml" />
<xi:include href="xml/gstpluginsbaseversion.xml" />
<xi:include href="xml/gstpbutilscodecutils.xml" />
<xi:include href="xml/gstpbutilsdescriptions.xml" />
<xi:include href="xml/gstpbutilsmissingplugins.xml" />
<xi:include href="xml/gstpbutilsinstallplugins.xml" />
<xi:include href="xml/gstdiscoverer.xml" />
<xi:include href="xml/encoding-profile.xml" />
<xi:include href="xml/gstaudiovisualizer.xml" />
</chapter>
<chapter id="gstreamer-video">
<title>Video Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-plugins-base-&GST_API_VERSION;.pc</filename> and adding
<filename>-lgstvideo-&GST_API_VERSION;</filename> to the library flags.
</para>
<xi:include href="xml/gstvideo.xml" />
<xi:include href="xml/gstvideometa.xml" />
<xi:include href="xml/gstvideoaffinetransformationmeta.xml" />
<xi:include href="xml/gstvideooverlaycomposition.xml" />
<xi:include href="xml/gstvideofilter.xml" />
<xi:include href="xml/gstvideodither.xml" />
<xi:include href="xml/gstvideochroma.xml" />
<xi:include href="xml/gstvideoresampler.xml" />
<xi:include href="xml/gstvideoscaler.xml" />
<xi:include href="xml/gstvideosink.xml" />
<xi:include href="xml/gstcolorbalance.xml" />
<xi:include href="xml/gstcolorbalancechannel.xml" />
<xi:include href="xml/gstvideodirection.xml" />
<xi:include href="xml/gstvideoorientation.xml" />
<xi:include href="xml/gstvideooverlay.xml" />
<xi:include href="xml/gstvideodecoder.xml" />
<xi:include href="xml/gstvideoencoder.xml" />
<xi:include href="xml/gstvideopool.xml" />
<xi:include href="xml/gstvideoutils.xml" />
<xi:include href="xml/gstnavigation.xml" />
<xi:include href="xml/gstvideoanc.xml" />
</chapter>
<chapter id="gl">
<title>OpenGL Integration Library</title>
<para>
This library should be linked to by getting cflags and libs from
<filename>gstreamer-gl-&GST_API_VERSION;.pc</filename>
</para>
<xi:include href="xml/gstglapi.xml"/>
<xi:include href="xml/gstglbasefilter.xml"/>
<xi:include href="xml/gstglbasememory.xml"/>
<xi:include href="xml/gstglbuffer.xml"/>
<xi:include href="xml/gstglbufferpool.xml"/>
<xi:include href="xml/gstglcolorconvert.xml"/>
<xi:include href="xml/gstglcontext.xml"/>
<!-- Not exposed as public API
<xi:include href="xml/gstglcontextegl.xml"/>
-->
<xi:include href="xml/gstgldisplay.xml"/>
<xi:include href="xml/gstgldisplaycocoa.xml"/>
<xi:include href="xml/gstgldisplayegl.xml"/>
<xi:include href="xml/gstgldisplaywayland.xml"/>
<xi:include href="xml/gstgldisplayx11.xml"/>
<xi:include href="xml/gsteglimage.xml"/>
<xi:include href="xml/gstglfilter.xml"/>
<xi:include href="xml/gstglframebuffer.xml"/>
<xi:include href="xml/gstglmemory.xml"/>
<xi:include href="xml/gstglmemoryegl.xml"/>
<xi:include href="xml/gstglmemorypbo.xml"/>
<xi:include href="xml/gstgloverlaycompositor.xml"/>
<xi:include href="xml/gstglquery.xml"/>
<xi:include href="xml/gstglrenderbuffer.xml"/>
<xi:include href="xml/gstglshader.xml"/>
<xi:include href="xml/gstglsl.xml"/>
<xi:include href="xml/gstglslstage.xml"/>
<xi:include href="xml/gstglsyncmeta.xml"/>
<xi:include href="xml/gstglupload.xml"/>
<xi:include href="xml/gstglviewconvert.xml"/>
<xi:include href="xml/gstglwindow.xml"/>
<!-- Some utilities -->
<xi:include href="xml/gstgldebug.xml"/>
<xi:include href="xml/gstglformat.xml"/>
<xi:include href="xml/gstglutils.xml"/>
</chapter>
</part>
<part id="gstreamer-libs-hierarchy">
<title>Object Hierarchy</title>
<xi:include href="xml/tree_index.sgml" />
</part>
<index id="api-index-full">
<title>Index</title>
<xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
</index>
<index id="api-index-deprecated" role="deprecated">
<title>Index of deprecated API</title>
<xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.16</title>
<xi:include href="xml/api-index-1.16.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.14</title>
<xi:include href="xml/api-index-1.14.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.12</title>
<xi:include href="xml/api-index-1.12.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.10</title>
<xi:include href="xml/api-index-1.10.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.8.1</title>
<xi:include href="xml/api-index-1.8.1.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.8</title>
<xi:include href="xml/api-index-1.8.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.6.1</title>
<xi:include href="xml/api-index-1.6.1.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.6</title>
<xi:include href="xml/api-index-1.6.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.4</title>
<xi:include href="xml/api-index-1.4.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.2.2</title>
<xi:include href="xml/api-index-1.2.2.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.2.1</title>
<xi:include href="xml/api-index-1.2.1.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.2</title>
<xi:include href="xml/api-index-1.2.xml"><xi:fallback /></xi:include>
</index>
<index>
<title>Index of new API in 1.0.3</title>
<xi:include href="xml/api-index-1.0.3.xml"><xi:fallback /></xi:include>
</index>
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
</book>