| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>GstTypeFindHelper</title> |
| <meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> |
| <link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual"> |
| <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes"> |
| <link rel="prev" href="GstCollectPads2.html" title="GstCollectPads2"> |
| <link rel="next" href="gstreamer-control.html" title="GStreamer Dynamic Parameter Control"> |
| <meta name="generator" content="GTK-Doc V1.18 (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="2"> |
| <tr valign="middle"> |
| <td><a accesskey="p" href="GstCollectPads2.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> |
| <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> |
| <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> |
| <th width="100%" align="center">GStreamer 1.0 Library Reference Manual</th> |
| <td><a accesskey="n" href="gstreamer-control.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> |
| </tr> |
| <tr><td colspan="5" class="shortcuts"> |
| <a href="#gstreamer-libs-GstTypeFindHelper.synopsis" class="shortcut">Top</a> |
| | |
| <a href="#gstreamer-libs-GstTypeFindHelper.description" class="shortcut">Description</a> |
| </td></tr> |
| </table> |
| <div class="refentry"> |
| <a name="gstreamer-libs-GstTypeFindHelper"></a><div class="titlepage"></div> |
| <div class="refnamediv"><table width="100%"><tr> |
| <td valign="top"> |
| <h2><span class="refentrytitle"><a name="gstreamer-libs-GstTypeFindHelper.top_of_page"></a>GstTypeFindHelper</span></h2> |
| <p>GstTypeFindHelper — Utility functions for typefinding</p> |
| </td> |
| <td valign="top" align="right"></td> |
| </tr></table></div> |
| <div class="refsynopsisdiv"> |
| <a name="gstreamer-libs-GstTypeFindHelper.synopsis"></a><h2>Synopsis</h2> |
| <pre class="synopsis"> |
| #include <gst/base/gsttypefindhelper.h> |
| |
| <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper" title="gst_type_find_helper ()">gst_type_find_helper</a> (<em class="parameter"><code><a href="../gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a> *src</code></em>, |
| <em class="parameter"><code><span class="type">guint64</span> size</code></em>); |
| <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-for-buffer" title="gst_type_find_helper_for_buffer ()">gst_type_find_helper_for_buffer</a> (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a> *buf</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GstTypeFindProbability"><span class="type">GstTypeFindProbability</span></a> *prob</code></em>); |
| <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-for-extension" title="gst_type_find_helper_for_extension ()">gst_type_find_helper_for_extension</a> (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>); |
| <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-for-data" title="gst_type_find_helper_for_data ()">gst_type_find_helper_for_data</a> (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>, |
| <em class="parameter"><code><span class="type">gsize</span> size</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GstTypeFindProbability"><span class="type">GstTypeFindProbability</span></a> *prob</code></em>); |
| <a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> (<a class="link" href="gstreamer-libs-GstTypeFindHelper.html#GstTypeFindHelperGetRangeFunction" title="GstTypeFindHelperGetRangeFunction ()">*GstTypeFindHelperGetRangeFunction</a>) |
| (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *parent</code></em>, |
| <em class="parameter"><code><span class="type">guint64</span> offset</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a> **buffer</code></em>); |
| <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-get-range" title="gst_type_find_helper_get_range ()">gst_type_find_helper_get_range</a> (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *parent</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-libs-GstTypeFindHelper.html#GstTypeFindHelperGetRangeFunction" title="GstTypeFindHelperGetRangeFunction ()"><span class="type">GstTypeFindHelperGetRangeFunction</span></a> func</code></em>, |
| <em class="parameter"><code><span class="type">guint64</span> size</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GstTypeFindProbability"><span class="type">GstTypeFindProbability</span></a> *prob</code></em>); |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="gstreamer-libs-GstTypeFindHelper.description"></a><h2>Description</h2> |
| <p> |
| Utility functions for elements doing typefinding: |
| <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper" title="gst_type_find_helper ()"><code class="function">gst_type_find_helper()</code></a> does typefinding in pull mode, while |
| <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-for-buffer" title="gst_type_find_helper_for_buffer ()"><code class="function">gst_type_find_helper_for_buffer()</code></a> is useful for elements needing to do |
| typefinding in push mode from a chain function. |
| </p> |
| </div> |
| <div class="refsect1"> |
| <a name="gstreamer-libs-GstTypeFindHelper.details"></a><h2>Details</h2> |
| <div class="refsect2"> |
| <a name="gst-type-find-helper"></a><h3>gst_type_find_helper ()</h3> |
| <pre class="programlisting"><a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * gst_type_find_helper (<em class="parameter"><code><a href="../gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a> *src</code></em>, |
| <em class="parameter"><code><span class="type">guint64</span> size</code></em>);</pre> |
| <p> |
| Tries to find what type of data is flowing from the given source <a href="../gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a>. |
| </p> |
| <p> |
| Free-function: gst_caps_unref |
| </p> |
| <div class="variablelist"><table border="0"> |
| <col align="left" valign="top"> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>A source <a href="../gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td> |
| <td>The length in bytes</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> corresponding to the data stream. |
| Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if no <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> matches the data stream. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-type-find-helper-for-buffer"></a><h3>gst_type_find_helper_for_buffer ()</h3> |
| <pre class="programlisting"><a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * gst_type_find_helper_for_buffer (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a> *buf</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GstTypeFindProbability"><span class="type">GstTypeFindProbability</span></a> *prob</code></em>);</pre> |
| <p> |
| Tries to find what type of data is contained in the given <a href="../gstreamer-1.0/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a>, the |
| assumption being that the buffer represents the beginning of the stream or |
| file. |
| </p> |
| <p> |
| All available typefinders will be called on the data in order of rank. If |
| a typefinding function returns a probability of <a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GST-TYPE-FIND-MAXIMUM:CAPS"><span class="type">GST_TYPE_FIND_MAXIMUM</span></a>, |
| typefinding is stopped immediately and the found caps will be returned |
| right away. Otherwise, all available typefind functions will the tried, |
| and the caps with the highest probability will be returned, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if |
| the content of the buffer could not be identified. |
| </p> |
| <p> |
| Free-function: gst_caps_unref |
| </p> |
| <div class="variablelist"><table border="0"> |
| <col align="left" valign="top"> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>obj</code></em> :</span></p></td> |
| <td>object doing the typefinding, or NULL (used for logging)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>buf</code></em> :</span></p></td> |
| <td>a <a href="../gstreamer-1.0/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a> with data to typefind. <span class="annotation">[<acronym title="Parameter for input. Default is transfer none."><span class="acronym">in</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><p><span class="term"><em class="parameter"><code>prob</code></em> :</span></p></td> |
| <td>location to store the probability of the found |
| caps, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> corresponding to the data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> |
| if no type could be found. The caller should free the caps returned |
| with <a href="../gstreamer-1.0/gstreamer-GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-type-find-helper-for-extension"></a><h3>gst_type_find_helper_for_extension ()</h3> |
| <pre class="programlisting"><a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * gst_type_find_helper_for_extension (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>);</pre> |
| <p> |
| Tries to find the best <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> associated with <em class="parameter"><code>extension</code></em>. |
| </p> |
| <p> |
| All available typefinders will be checked against the extension in order |
| of rank. The caps of the first typefinder that can handle <em class="parameter"><code>extension</code></em> will be |
| returned. |
| </p> |
| <p> |
| Free-function: gst_caps_unref |
| </p> |
| <div class="variablelist"><table border="0"> |
| <col align="left" valign="top"> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>obj</code></em> :</span></p></td> |
| <td>object doing the typefinding, or NULL (used for logging). <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><p><span class="term"><em class="parameter"><code>extension</code></em> :</span></p></td> |
| <td>an extension</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> corresponding to <em class="parameter"><code>extension</code></em>, or |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if no type could be found. The caller should free the caps |
| returned with <a href="../gstreamer-1.0/gstreamer-GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| <p class="since">Since 0.10.23</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-type-find-helper-for-data"></a><h3>gst_type_find_helper_for_data ()</h3> |
| <pre class="programlisting"><a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * gst_type_find_helper_for_data (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>, |
| <em class="parameter"><code><span class="type">gsize</span> size</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GstTypeFindProbability"><span class="type">GstTypeFindProbability</span></a> *prob</code></em>);</pre> |
| <p> |
| Tries to find what type of data is contained in the given <em class="parameter"><code>data</code></em>, the |
| assumption being that the data represents the beginning of the stream or |
| file. |
| </p> |
| <p> |
| All available typefinders will be called on the data in order of rank. If |
| a typefinding function returns a probability of <a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GST-TYPE-FIND-MAXIMUM:CAPS"><span class="type">GST_TYPE_FIND_MAXIMUM</span></a>, |
| typefinding is stopped immediately and the found caps will be returned |
| right away. Otherwise, all available typefind functions will the tried, |
| and the caps with the highest probability will be returned, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if |
| the content of <em class="parameter"><code>data</code></em> could not be identified. |
| </p> |
| <p> |
| Free-function: gst_caps_unref |
| </p> |
| <div class="variablelist"><table border="0"> |
| <col align="left" valign="top"> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>obj</code></em> :</span></p></td> |
| <td>object doing the typefinding, or NULL (used for logging)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td> |
| <td>a pointer with data to typefind. <span class="annotation">[<acronym title="Parameter for input. Default is transfer none."><span class="acronym">in</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><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td> |
| <td>the size of <em class="parameter"><code>data</code></em>. <span class="annotation">[<acronym title="Parameter for input. Default is transfer none."><span class="acronym">in</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><p><span class="term"><em class="parameter"><code>prob</code></em> :</span></p></td> |
| <td>location to store the probability of the found |
| caps, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> corresponding to the data, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> |
| if no type could be found. The caller should free the caps returned |
| with <a href="../gstreamer-1.0/gstreamer-GstCaps.html#gst-caps-unref"><code class="function">gst_caps_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstTypeFindHelperGetRangeFunction"></a><h3>GstTypeFindHelperGetRangeFunction ()</h3> |
| <pre class="programlisting"><a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> (*GstTypeFindHelperGetRangeFunction) |
| (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *parent</code></em>, |
| <em class="parameter"><code><span class="type">guint64</span> offset</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> length</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a> **buffer</code></em>);</pre> |
| <p> |
| This function will be called by <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper-get-range" title="gst_type_find_helper_get_range ()"><code class="function">gst_type_find_helper_get_range()</code></a> when |
| typefinding functions request to peek at the data of a stream at certain |
| offsets. If this function returns GST_FLOW_OK, the result buffer will be |
| stored in <em class="parameter"><code>buffer</code></em>. The contents of <em class="parameter"><code>buffer</code></em> is invalid for any other |
| return value. |
| </p> |
| <p> |
| This function is supposed to behave exactly like a <a href="../gstreamer-1.0/GstPad.html#GstPadGetRangeFunction"><span class="type">GstPadGetRangeFunction</span></a>. |
| </p> |
| <div class="variablelist"><table border="0"> |
| <col align="left" valign="top"> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>obj</code></em> :</span></p></td> |
| <td>a <a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> that will handle the getrange request</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> |
| <td>the parent of <em class="parameter"><code>obj</code></em> or NULL</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td> |
| <td>the offset of the range</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td> |
| <td>the length of the range</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td> |
| <td>a memory location to hold the result buffer</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>GST_FLOW_OK for success</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-type-find-helper-get-range"></a><h3>gst_type_find_helper_get_range ()</h3> |
| <pre class="programlisting"><a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="returnvalue">GstCaps</span></a> * gst_type_find_helper_get_range (<em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *obj</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> *parent</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-libs-GstTypeFindHelper.html#GstTypeFindHelperGetRangeFunction" title="GstTypeFindHelperGetRangeFunction ()"><span class="type">GstTypeFindHelperGetRangeFunction</span></a> func</code></em>, |
| <em class="parameter"><code><span class="type">guint64</span> size</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *extension</code></em>, |
| <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstTypeFind.html#GstTypeFindProbability"><span class="type">GstTypeFindProbability</span></a> *prob</code></em>);</pre> |
| <p> |
| Utility function to do pull-based typefinding. Unlike <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#gst-type-find-helper" title="gst_type_find_helper ()"><code class="function">gst_type_find_helper()</code></a> |
| however, this function will use the specified function <em class="parameter"><code>func</code></em> to obtain the |
| data needed by the typefind functions, rather than operating on a given |
| source pad. This is useful mostly for elements like tag demuxers which |
| strip off data at the beginning and/or end of a file and want to typefind |
| the stripped data stream before adding their own source pad (the specified |
| callback can then call the upstream peer pad with offsets adjusted for the |
| tag size, for example). |
| </p> |
| <p> |
| When <em class="parameter"><code>extension</code></em> is not NULL, this function will first try the typefind |
| functions for the given extension, which might speed up the typefinding |
| in many cases. |
| </p> |
| <p> |
| Free-function: gst_caps_unref |
| </p> |
| <div class="variablelist"><table border="0"> |
| <col align="left" valign="top"> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>obj</code></em> :</span></p></td> |
| <td>A <a href="../gstreamer-1.0/GstObject.html"><span class="type">GstObject</span></a> that will be passed as first argument to <em class="parameter"><code>func</code></em> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> |
| <td>the parent of <em class="parameter"><code>obj</code></em> or NULL</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>func</code></em> :</span></p></td> |
| <td>A generic <a class="link" href="gstreamer-libs-GstTypeFindHelper.html#GstTypeFindHelperGetRangeFunction" title="GstTypeFindHelperGetRangeFunction ()"><span class="type">GstTypeFindHelperGetRangeFunction</span></a> that will |
| be used to access data at random offsets when doing the typefinding. <span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td> |
| <td>The length in bytes</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>extension</code></em> :</span></p></td> |
| <td>extension of the media</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>prob</code></em> :</span></p></td> |
| <td>location to store the probability of the found |
| caps, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> corresponding to the data stream. |
| Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if no <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> matches the data stream. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| <p class="since">Since 0.10.26</p> |
| </div> |
| </div> |
| </div> |
| <div class="footer"> |
| <hr> |
| Generated by GTK-Doc V1.18</div> |
| </body> |
| </html> |