<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GstStream: GStreamer 1.0 Core Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
<link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
<link rel="prev" href="GstSegment.html" title="GstSegment">
<link rel="next" href="gstreamer-GstStreamCollection.html" title="GstStreamCollection">
<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#gstreamer-GstStream.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="GstSegment.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gstreamer-GstStreamCollection.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gstreamer-GstStream"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gstreamer-GstStream.top_of_page"></a>GstStream</span></h2>
<p>GstStream — Base class for stream objects</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="gstreamer-GstStream.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="returnvalue">GstStream</span></a> *
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-new" title="gst_stream_new ()">gst_stream_new</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-get-caps" title="gst_stream_get_caps ()">gst_stream_get_caps</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="returnvalue">GstStreamFlags</span></a>
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-get-stream-flags" title="gst_stream_get_stream_flags ()">gst_stream_get_stream_flags</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-get-stream-id" title="gst_stream_get_stream_id ()">gst_stream_get_stream_id</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="returnvalue">GstStreamType</span></a>
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-get-stream-type" title="gst_stream_get_stream_type ()">gst_stream_get_stream_type</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GstTagList.html" title="GstTagList"><span class="returnvalue">GstTagList</span></a> *
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-get-tags" title="gst_stream_get_tags ()">gst_stream_get_tags</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-set-caps" title="gst_stream_set_caps ()">gst_stream_set_caps</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-set-stream-flags" title="gst_stream_set_stream_flags ()">gst_stream_set_stream_flags</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-set-stream-type" title="gst_stream_set_stream_type ()">gst_stream_set_stream_type</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-set-tags" title="gst_stream_set_tags ()">gst_stream_set_tags</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="gstreamer-GstStream.html#gst-stream-type-get-name" title="gst_stream_type_get_name ()">gst_stream_type_get_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gstreamer-GstStream.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream">GstStream</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gstreamer-GstStream.html#GstStreamClass" title="struct GstStreamClass">GstStreamClass</a></td>
</tr>
<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType">GstStreamType</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gstreamer-GstStream.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;gst/gst.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="gstreamer-GstStream.description"></a><h2>Description</h2>
<p>A <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> is a high-level object defining a stream of data which is, or
can be, present in a <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a>.</p>
<p>It is defined by a unique identifier, a "Stream ID". A <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> does not
automatically imply the stream is present within a pipeline or element.</p>
<p>Any element that can introduce new streams in a pipeline should create the
appropriate <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> object, and can convey that object via the
<a class="link" href="GstEvent.html#GST-EVENT-STREAM-START:CAPS"><code class="literal">GST_EVENT_STREAM_START</code></a> event and/or the <a class="link" href="gstreamer-GstStreamCollection.html#GstStreamCollection" title="struct GstStreamCollection"><span class="type">GstStreamCollection</span></a>.</p>
<p>Elements that do not modify the nature of the stream can add extra information
on it (such as enrich the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>, or <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a>). This is typically done
by parsing elements.</p>
</div>
<div class="refsect1">
<a name="gstreamer-GstStream.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gst-stream-new"></a><h3>gst_stream_new ()</h3>
<pre class="programlisting"><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="returnvalue">GstStream</span></a> *
gst_stream_new (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>,
                <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>,
                <em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a> type</code></em>,
                <em class="parameter"><code><a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="type">GstStreamFlags</span></a> flags</code></em>);</pre>
<p>Create a new <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> for the given <em class="parameter"><code>stream_id</code></em>
, <em class="parameter"><code>caps</code></em>
, <em class="parameter"><code>type</code></em>

and <em class="parameter"><code>flags</code></em>
</p>
<div class="refsect3">
<a name="gst-stream-new.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>stream_id</p></td>
<td class="parameter_description"><p> the id for the new stream. If <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>,
a new one will be automatically generated. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>caps</p></td>
<td class="parameter_description"><p> the <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> of the stream. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>type</p></td>
<td class="parameter_description"><p>the <a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a> of the stream</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>the <a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="type">GstStreamFlags</span></a> of the stream</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-stream-new.returns"></a><h4>Returns</h4>
<p> The new <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-get-caps"></a><h3>gst_stream_get_caps ()</h3>
<pre class="programlisting"><a class="link" href="GstCaps.html" title="GstCaps"><span class="returnvalue">GstCaps</span></a> *
gst_stream_get_caps (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>);</pre>
<p>Retrieve the caps for <em class="parameter"><code>stream</code></em>
, if any</p>
<div class="refsect3">
<a name="gst-stream-get-caps.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-stream-get-caps.returns"></a><h4>Returns</h4>
<p> The <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> for <em class="parameter"><code>stream</code></em>
. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-get-stream-flags"></a><h3>gst_stream_get_stream_flags ()</h3>
<pre class="programlisting"><a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="returnvalue">GstStreamFlags</span></a>
gst_stream_get_stream_flags (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>);</pre>
<p>Retrieve the current stream flags for <em class="parameter"><code>stream</code></em>
</p>
<div class="refsect3">
<a name="gst-stream-get-stream-flags.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-stream-get-stream-flags.returns"></a><h4>Returns</h4>
<p> The <a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="type">GstStreamFlags</span></a> for <em class="parameter"><code>stream</code></em>
</p>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-get-stream-id"></a><h3>gst_stream_get_stream_id ()</h3>
<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
gst_stream_get_stream_id (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>);</pre>
<p>Returns the stream ID of <em class="parameter"><code>stream</code></em>
.</p>
<div class="refsect3">
<a name="gst-stream-get-stream-id.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-stream-get-stream-id.returns"></a><h4>Returns</h4>
<p> the stream ID of <em class="parameter"><code>stream</code></em>
. Only valid
during the lifetime of <em class="parameter"><code>stream</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-get-stream-type"></a><h3>gst_stream_get_stream_type ()</h3>
<pre class="programlisting"><a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="returnvalue">GstStreamType</span></a>
gst_stream_get_stream_type (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>);</pre>
<p>Retrieve the stream type for <em class="parameter"><code>stream</code></em>
</p>
<div class="refsect3">
<a name="gst-stream-get-stream-type.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-stream-get-stream-type.returns"></a><h4>Returns</h4>
<p> The <a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a> for <em class="parameter"><code>stream</code></em>
</p>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-get-tags"></a><h3>gst_stream_get_tags ()</h3>
<pre class="programlisting"><a class="link" href="GstTagList.html" title="GstTagList"><span class="returnvalue">GstTagList</span></a> *
gst_stream_get_tags (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>);</pre>
<p>Retrieve the tags for <em class="parameter"><code>stream</code></em>
, if any</p>
<div class="refsect3">
<a name="gst-stream-get-tags.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-stream-get-tags.returns"></a><h4>Returns</h4>
<p> The <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> for <em class="parameter"><code>stream</code></em>
. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-set-caps"></a><h3>gst_stream_set_caps ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gst_stream_set_caps (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>,
                     <em class="parameter"><code><a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
<p>Set the caps for the <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p>
<div class="refsect3">
<a name="gst-stream-set-caps.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>caps</p></td>
<td class="parameter_description"><p> a <a class="link" href="GstCaps.html" title="GstCaps"><span class="type">GstCaps</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-set-stream-flags"></a><h3>gst_stream_set_stream_flags ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gst_stream_set_stream_flags (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>,
                             <em class="parameter"><code><a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="type">GstStreamFlags</span></a> flags</code></em>);</pre>
<p>Set the <em class="parameter"><code>flags</code></em>
 for the <em class="parameter"><code>stream</code></em>
.</p>
<div class="refsect3">
<a name="gst-stream-set-stream-flags.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>the flags to set on <em class="parameter"><code>stream</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-set-stream-type"></a><h3>gst_stream_set_stream_type ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gst_stream_set_stream_type (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>,
                            <em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a> stream_type</code></em>);</pre>
<p>Set the stream type of <em class="parameter"><code>stream</code></em>
</p>
<div class="refsect3">
<a name="gst-stream-set-stream-type.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream_type</p></td>
<td class="parameter_description"><p>the type to set on <em class="parameter"><code>stream</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-set-tags"></a><h3>gst_stream_set_tags ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gst_stream_set_tags (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> *stream</code></em>,
                     <em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *tags</code></em>);</pre>
<p>Set the tags for the <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p>
<div class="refsect3">
<a name="gst-stream-set-tags.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>tags</p></td>
<td class="parameter_description"><p> a <a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-stream-type-get-name"></a><h3>gst_stream_type_get_name ()</h3>
<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
gst_stream_type_get_name (<em class="parameter"><code><a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a> stype</code></em>);</pre>
<p>Get a descriptive string for a given <a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a></p>
<div class="refsect3">
<a name="gst-stream-type-get-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>stype</p></td>
<td class="parameter_description"><p>a <a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-stream-type-get-name.returns"></a><h4>Returns</h4>
<p> A string describing the stream type</p>
</div>
<p class="since">Since: <a class="link" href="ix03.html#api-index-1.10">1.10</a></p>
</div>
</div>
<div class="refsect1">
<a name="gstreamer-GstStream.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GstStream"></a><h3>struct GstStream</h3>
<pre class="programlisting">struct GstStream {
  GstObject object;

  const gchar *stream_id;
};
</pre>
<p>A high-level object representing a single stream. It might be backed, or
not, by an actual flow of data in a pipeline (<a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>).</p>
<p>A <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> does not care about data changes (such as decoding, encoding,
parsing,...) as long as the underlying data flow corresponds to the same
high-level flow (ex: a certain audio track).</p>
<p>A <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> contains all the information pertinent to a stream, such as
stream-id, tags, caps, type, ...</p>
<p>Elements can subclass a <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> for internal usage (to contain information
pertinent to streams of data).</p>
<div class="refsect3">
<a name="GstStream.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> <em class="structfield"><code><a name="GstStream.object"></a>object</code></em>;</p></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td class="struct_member_name"><p>const <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstStream.stream-id"></a>stream_id</code></em>;</p></td>
<td class="struct_member_description"><p>The Stream Identifier for this <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GstStreamClass"></a><h3>struct GstStreamClass</h3>
<pre class="programlisting">struct GstStreamClass {
  GstObjectClass parent_class;
};
</pre>
<p>GstStream class structure</p>
<div class="refsect3">
<a name="GstStreamClass.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GstStreamType"></a><h3>enum GstStreamType</h3>
<p><a class="link" href="gstreamer-GstStream.html#GstStreamType" title="enum GstStreamType"><span class="type">GstStreamType</span></a> describes a high level classification set for
flows of data in <a class="link" href="gstreamer-GstStream.html#GstStream" title="struct GstStream"><span class="type">GstStream</span></a> objects.</p>
<p>Note that this is a flag, and therefore users should not assume it
will be a single value. Do not use the equality operator for checking
whether a stream is of a certain type.</p>
<div class="refsect3">
<a name="GstStreamType.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
<col class="enum_members_description">
<col width="200px" class="enum_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="GST-STREAM-TYPE-UNKNOWN:CAPS"></a>GST_STREAM_TYPE_UNKNOWN</p></td>
<td class="enum_member_description">
<p>The stream is of unknown (unclassified) type.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-STREAM-TYPE-AUDIO:CAPS"></a>GST_STREAM_TYPE_AUDIO</p></td>
<td class="enum_member_description">
<p>The stream is of audio data</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-STREAM-TYPE-VIDEO:CAPS"></a>GST_STREAM_TYPE_VIDEO</p></td>
<td class="enum_member_description">
<p>The stream carries video data</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-STREAM-TYPE-CONTAINER:CAPS"></a>GST_STREAM_TYPE_CONTAINER</p></td>
<td class="enum_member_description">
<p>The stream is a muxed container type</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-STREAM-TYPE-TEXT:CAPS"></a>GST_STREAM_TYPE_TEXT</p></td>
<td class="enum_member_description">
<p>The stream contains subtitle / subpicture data.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.25</div>
</body>
</html>