aboutsummaryrefslogtreecommitdiff
path: root/docs/gst/html/gstreamer-GstQuery.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/gst/html/gstreamer-GstQuery.html')
-rw-r--r--docs/gst/html/gstreamer-GstQuery.html1396
1 files changed, 1015 insertions, 381 deletions
diff --git a/docs/gst/html/gstreamer-GstQuery.html b/docs/gst/html/gstreamer-GstQuery.html
index 5d06b4f..9d9b816 100644
--- a/docs/gst/html/gstreamer-GstQuery.html
+++ b/docs/gst/html/gstreamer-GstQuery.html
@@ -3,8 +3,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GstQuery</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
-<link rel="home" href="index.html" title="GStreamer 0.11 Core Reference Manual">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.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="GstPreset.html" title="GstPreset">
<link rel="next" href="GstRegistry.html" title="GstRegistry">
@@ -17,7 +17,7 @@
<td><a accesskey="p" href="GstPreset.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="libgstreamer.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 0.11 Core Reference Manual</th>
+<th width="100%" align="center">GStreamer 1.0 Core Reference Manual</th>
<td><a accesskey="n" href="GstRegistry.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
@@ -31,8 +31,8 @@
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gstreamer-GstQuery.top_of_page"></a>GstQuery</span></h2>
-<p>GstQuery — Dynamically register new query types. Provide functions
- to create queries, and to set and parse values in them.</p>
+<p>GstQuery — Provide functions to create queries, and to set and parse
+ values in them.</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
@@ -42,57 +42,57 @@
#include &lt;gst/gst.h&gt;
struct <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery">GstQuery</a>;
+enum <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeFlags" title="enum GstQueryTypeFlags">GstQueryTypeFlags</a>;
+#define <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-TYPE-BOTH:CAPS" title="GST_QUERY_TYPE_BOTH">GST_QUERY_TYPE_BOTH</a>
+#define <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-MAKE-TYPE:CAPS" title="GST_QUERY_MAKE_TYPE()">GST_QUERY_MAKE_TYPE</a> (num,
+ flags)
enum <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType">GstQueryType</a>;
+#define <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-TYPE:CAPS" title="GST_QUERY_TYPE()">GST_QUERY_TYPE</a> (query)
#define <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-TYPE-NAME:CAPS" title="GST_QUERY_TYPE_NAME()">GST_QUERY_TYPE_NAME</a> (query)
-struct <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeDefinition" title="struct GstQueryTypeDefinition">GstQueryTypeDefinition</a>;
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-type-get-name" title="gst_query_type_get_name ()">gst_query_type_get_name</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> query</code></em>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-type-to-quark" title="gst_query_type_to_quark ()">gst_query_type_to_quark</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> query</code></em>);
-<a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="returnvalue">GstQueryType</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-type-register" title="gst_query_type_register ()">gst_query_type_register</a> (<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> *nick</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> *description</code></em>);
-<a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="returnvalue">GstQueryType</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-type-get-by-nick" title="gst_query_type_get_by_nick ()">gst_query_type_get_by_nick</a> (<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> *nick</code></em>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-types-contains" title="gst_query_types_contains ()">gst_query_types_contains</a> (<em class="parameter"><code>const <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> *types</code></em>,
- <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);
-const <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeDefinition" title="struct GstQueryTypeDefinition"><span class="returnvalue">GstQueryTypeDefinition</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-type-get-details" title="gst_query_type_get_details ()">gst_query_type_get_details</a>
- (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);
-<a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-type-iterate-definitions" title="gst_query_type_iterate_definitions ()">gst_query_type_iterate_definitions</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
+#define <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-IS-UPSTREAM:CAPS" title="GST_QUERY_IS_UPSTREAM()">GST_QUERY_IS_UPSTREAM</a> (ev)
+#define <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-IS-DOWNSTREAM:CAPS" title="GST_QUERY_IS_DOWNSTREAM()">GST_QUERY_IS_DOWNSTREAM</a> (ev)
+#define <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-IS-SERIALIZED:CAPS" title="GST_QUERY_IS_SERIALIZED()">GST_QUERY_IS_SERIALIZED</a> (ev)
+<a class="link" href="gstreamer-GstQuery.html#GstQueryTypeFlags" title="enum GstQueryTypeFlags"><span class="returnvalue">GstQueryTypeFlags</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-type-get-flags" title="gst_query_type_get_flags ()">gst_query_type_get_flags</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);
+const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-type-get-name" title="gst_query_type_get_name ()">gst_query_type_get_name</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-type-to-quark" title="gst_query_type_to_quark ()">gst_query_type_to_quark</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-ref" title="gst_query_ref ()">gst_query_ref</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *q</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-unref" title="gst_query_unref ()">gst_query_unref</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *q</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-copy" title="gst_query_copy ()">gst_query_copy</a> (<em class="parameter"><code>const <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *q</code></em>);
#define <a class="link" href="gstreamer-GstQuery.html#gst-query-make-writable" title="gst_query_make_writable()">gst_query_make_writable</a> (q)
#define <a class="link" href="gstreamer-GstQuery.html#gst-query-is-writable" title="gst_query_is_writable()">gst_query_is_writable</a> (q)
-#define <a class="link" href="gstreamer-GstQuery.html#gst-query-replace" title="gst_query_replace()">gst_query_replace</a> (old_query,
- new_query)
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-replace" title="gst_query_replace ()">gst_query_replace</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> **old_query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *new_query</code></em>);
<a class="link" href="gstreamer-GstStructure.html#GstStructure" title="struct GstStructure"><span class="returnvalue">GstStructure</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-writable-structure" title="gst_query_writable_structure ()">gst_query_writable_structure</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-custom" title="gst_query_new_custom ()">gst_query_new_custom</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstStructure.html#GstStructure" title="struct GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);
const <a class="link" href="gstreamer-GstStructure.html#GstStructure" title="struct GstStructure"><span class="returnvalue">GstStructure</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-get-structure" title="gst_query_get_structure ()">gst_query_get_structure</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-convert" title="gst_query_new_convert ()">gst_query_new_convert</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> value</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> dest_format</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-convert" title="gst_query_set_convert ()">gst_query_set_convert</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> src_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> src_value</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> dest_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> dest_value</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> dest_value</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-convert" title="gst_query_parse_convert ()">gst_query_parse_convert</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *src_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *src_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *src_value</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *dest_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *dest_value</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *dest_value</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-position" title="gst_query_new_position ()">gst_query_new_position</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-position" title="gst_query_set_position ()">gst_query_set_position</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> cur</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> cur</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-position" title="gst_query_parse_position ()">gst_query_parse_position</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *cur</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *cur</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-duration" title="gst_query_new_duration ()">gst_query_new_duration</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-duration" title="gst_query_set_duration ()">gst_query_set_duration</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> duration</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> duration</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-duration" title="gst_query_parse_duration ()">gst_query_parse_duration</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *duration</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *duration</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-latency" title="gst_query_new_latency ()">gst_query_new_latency</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-latency" title="gst_query_parse_latency ()">gst_query_parse_latency</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>,
@@ -106,13 +106,13 @@ const <a class="link" href="gstreamer-GstStructure.html#GstStructure" title="str
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-seeking" title="gst_query_set_seeking ()">gst_query_set_seeking</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> seekable</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> segment_start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> segment_end</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> segment_start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> segment_end</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-seeking" title="gst_query_parse_seeking ()">gst_query_parse_seeking</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *seekable</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *segment_start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *segment_end</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *segment_start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *segment_end</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-formats" title="gst_query_new_formats ()">gst_query_new_formats</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-formats" title="gst_query_set_formats ()">gst_query_set_formats</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n_formats</code></em>,
@@ -129,13 +129,30 @@ const <a class="link" href="gstreamer-GstStructure.html#GstStructure" title="str
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-segment" title="gst_query_set_segment ()">gst_query_set_segment</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> start_value</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> stop_value</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> start_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> stop_value</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-segment" title="gst_query_parse_segment ()">gst_query_parse_segment</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *start_value</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *stop_value</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *start_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *stop_value</code></em>);
+<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-caps" title="gst_query_new_caps ()">gst_query_new_caps</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-caps" title="gst_query_parse_caps ()">gst_query_parse_caps</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **filter</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-caps-result" title="gst_query_set_caps_result ()">gst_query_set_caps_result</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-caps-result" title="gst_query_parse_caps_result ()">gst_query_parse_caps_result</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-intersect-caps-result" title="gst_query_intersect_caps_result ()">gst_query_intersect_caps_result</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCapsIntersectMode" title="enum GstCapsIntersectMode"><span class="type">GstCapsIntersectMode</span></a> mode</code></em>);
+<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-accept-caps" title="gst_query_new_accept_caps ()">gst_query_new_accept_caps</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-accept-caps" title="gst_query_parse_accept_caps ()">gst_query_parse_accept_caps</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-accept-caps-result" title="gst_query_set_accept_caps_result ()">gst_query_set_accept_caps_result</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> result</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-accept-caps-result" title="gst_query_parse_accept_caps_result ()">gst_query_parse_accept_caps_result</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *result</code></em>);
enum <a class="link" href="gstreamer-GstQuery.html#GstBufferingMode" title="enum GstBufferingMode">GstBufferingMode</a>;
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-buffering" title="gst_query_new_buffering ()">gst_query_new_buffering</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-buffering-percent" title="gst_query_set_buffering_percent ()">gst_query_set_buffering_percent</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
@@ -148,30 +165,30 @@ enum <a class="link" href="gstreamer-GstQuery.html#GstBufferingMo
<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> mode</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_in</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_out</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> buffering_left</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> buffering_left</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-buffering-stats" title="gst_query_parse_buffering_stats ()">gst_query_parse_buffering_stats</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> *mode</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_in</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_out</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *buffering_left</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *buffering_left</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-buffering-range" title="gst_query_set_buffering_range ()">gst_query_set_buffering_range</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> stop</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> estimated_total</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> stop</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> estimated_total</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-buffering-range" title="gst_query_parse_buffering_range ()">gst_query_parse_buffering_range</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *stop</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *estimated_total</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *stop</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *estimated_total</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-add-buffering-range" title="gst_query_add_buffering_range ()">gst_query_add_buffering_range</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> stop</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> stop</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-get-n-buffering-ranges" title="gst_query_get_n_buffering_ranges ()">gst_query_get_n_buffering_ranges</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-nth-buffering-range" title="gst_query_parse_nth_buffering_range ()">gst_query_parse_nth_buffering_range</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *stop</code></em>);
+ <em class="parameter"><code><span class="type">gint64</span> *start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *stop</code></em>);
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-uri" title="gst_query_new_uri ()">gst_query_new_uri</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-uri" title="gst_query_parse_uri ()">gst_query_parse_uri</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **uri</code></em>);
@@ -182,55 +199,79 @@ enum <a class="link" href="gstreamer-GstQuery.html#GstBufferingMo
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-allocation" title="gst_query_parse_allocation ()">gst_query_parse_allocation</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *need_pool</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-allocation-params" title="gst_query_parse_allocation_params ()">gst_query_parse_allocation_params</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-add-allocation-pool" title="gst_query_add_allocation_pool ()">gst_query_add_allocation_pool</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</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> size</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> min_buffers</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> max_buffers</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-get-n-allocation-pools" title="gst_query_get_n_allocation_pools ()">gst_query_get_n_allocation_pools</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-nth-allocation-pool" title="gst_query_parse_nth_allocation_pool ()">gst_query_parse_nth_allocation_pool</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> **pool</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> *size</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> *min_buffers</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> *max_buffers</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> *prefix</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> *alignment</code></em>,
- <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> **pool</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-nth-allocation-memory" title="gst_query_parse_nth_allocation_memory ()">gst_query_parse_nth_allocation_memory</a>
- (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-nth-allocation-meta" title="gst_query_parse_nth_allocation_meta ()">gst_query_parse_nth_allocation_meta</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-allocation-params" title="gst_query_set_allocation_params ()">gst_query_set_allocation_params</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *max_buffers</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-nth-allocation-pool" title="gst_query_set_nth_allocation_pool ()">gst_query_set_nth_allocation_pool</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</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> size</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> min_buffers</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> max_buffers</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> prefix</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> alignment</code></em>,
- <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-add-allocation-memory" title="gst_query_add_allocation_memory ()">gst_query_add_allocation_memory</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *alloc</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> max_buffers</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-add-allocation-param" title="gst_query_add_allocation_param ()">gst_query_add_allocation_param</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocator" title="GstAllocator"><span class="type">GstAllocator</span></a> *allocator</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gstreamer-GstMemory.html#GstAllocationParams" title="struct GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-get-n-allocation-params" title="gst_query_get_n_allocation_params ()">gst_query_get_n_allocation_params</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-nth-allocation-param" title="gst_query_parse_nth_allocation_param ()">gst_query_parse_nth_allocation_param</a>
+ (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocator" title="GstAllocator"><span class="type">GstAllocator</span></a> **allocator</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocationParams" title="struct GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-nth-allocation-param" title="gst_query_set_nth_allocation_param ()">gst_query_set_nth_allocation_param</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocator" title="GstAllocator"><span class="type">GstAllocator</span></a> *allocator</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gstreamer-GstMemory.html#GstAllocationParams" title="struct GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-add-allocation-meta" title="gst_query_add_allocation_meta ()">gst_query_add_allocation_meta</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *api</code></em>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-has-allocation-meta" title="gst_query_has_allocation_meta ()">gst_query_has_allocation_meta</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *api</code></em>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-get-n-allocation-memories" title="gst_query_get_n_allocation_memories ()">gst_query_get_n_allocation_memories</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-get-n-allocation-metas" title="gst_query_get_n_allocation_metas ()">gst_query_get_n_allocation_metas</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
+<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-nth-allocation-meta" title="gst_query_parse_nth_allocation_meta ()">gst_query_parse_nth_allocation_meta</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-remove-nth-allocation-meta" title="gst_query_remove_nth_allocation_meta ()">gst_query_remove_nth_allocation_meta</a>
+ (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-has-allocation-meta" title="gst_query_has_allocation_meta ()">gst_query_has_allocation_meta</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);
+enum <a class="link" href="gstreamer-GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags">GstSchedulingFlags</a>;
<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-scheduling" title="gst_query_new_scheduling ()">gst_query_new_scheduling</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-scheduling" title="gst_query_parse_scheduling ()">gst_query_parse_scheduling</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *pull_mode</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *random_access</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *sequential</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a> *flags</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *minsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *maxsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *align</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-scheduling" title="gst_query_set_scheduling ()">gst_query_set_scheduling</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> pull_mode</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> random_access</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> sequential</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a> flags</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> maxsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> align</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-add-scheduling-mode" title="gst_query_add_scheduling_mode ()">gst_query_add_scheduling_mode</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-get-n-scheduling-modes" title="gst_query_get_n_scheduling_modes ()">gst_query_get_n_scheduling_modes</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);
+<a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="returnvalue">GstPadMode</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-nth-scheduling-mode" title="gst_query_parse_nth_scheduling_mode ()">gst_query_parse_nth_scheduling_mode</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstQuery.html#gst-query-has-scheduling-mode" title="gst_query_has_scheduling_mode ()">gst_query_has_scheduling_mode</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>);
+<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-drain" title="gst_query_new_drain ()">gst_query_new_drain</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
+<a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * <a class="link" href="gstreamer-GstQuery.html#gst-query-new-toc" title="gst_query_new_toc ()">gst_query_new_toc</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-parse-toc" title="gst_query_parse_toc ()">gst_query_parse_toc</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstToc.html#GstToc" title="struct GstToc"><span class="type">GstToc</span></a> **toc</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **extend_uid</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstQuery.html#gst-query-set-toc" title="gst_query_set_toc ()">gst_query_set_toc</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstToc.html#GstToc" title="struct GstToc"><span class="type">GstToc</span></a> *toc</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> *extend_uid</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="gstreamer-GstQuery.description"></a><h2>Description</h2>
<p>
-GstQuery functions are used to register new query types to the gstreamer
-core and use them.
Queries can be performed on pads (<a class="link" href="GstPad.html#gst-pad-query" title="gst_pad_query ()"><code class="function">gst_pad_query()</code></a>) and elements
(<a class="link" href="GstElement.html#gst-element-query" title="gst_element_query ()"><code class="function">gst_element_query()</code></a>). Please note that some queries might need a running
pipeline to work.
@@ -246,27 +287,47 @@ The following example shows how to query the duration of a pipeline:
<p>
</p>
<div class="example">
-<a name="id639451"></a><p class="title"><b>Example 13. Query duration on a pipeline</b></p>
-<div class="example-contents"><pre class="programlisting">
- GstQuery *query;
- gboolean res;
- query = gst_query_new_duration (GST_FORMAT_TIME);
- res = gst_element_query (pipeline, query);
- if (res) {
- gint64 duration;
- gst_query_parse_duration (query, NULL, &amp;duration);
- g_print ("duration = %"GST_TIME_FORMAT, GST_TIME_ARGS (duration));
- }
- else {
- g_print ("duration query failed...");
- }
- gst_query_unref (query);
- </pre></div>
+<a name="idp37816176"></a><p class="title"><b>Example 12. Query duration on a pipeline</b></p>
+<div class="example-contents">
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
+ <tbody>
+ <tr>
+ <td class="listing_lines" align="right"><pre>1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13</pre></td>
+ <td class="listing_code"><pre class="programlisting">GstQuery <span class="gtkdoc opt">*</span>query<span class="gtkdoc opt">;</span>
+gboolean res<span class="gtkdoc opt">;</span>
+query <span class="gtkdoc opt">=</span> <span class="function"><a href="../gstreamer-1.0/gstreamer-GstQuery.html#gst-query-new-duration">gst_query_new_duration</a></span> <span class="gtkdoc opt">(</span>GST_FORMAT_TIME<span class="gtkdoc opt">);</span>
+res <span class="gtkdoc opt">=</span> <span class="function"><a href="../gstreamer-1.0/GstElement.html#gst-element-query">gst_element_query</a></span> <span class="gtkdoc opt">(</span>pipeline<span class="gtkdoc opt">,</span> query<span class="gtkdoc opt">);</span>
+<span class="keyword">if</span> <span class="gtkdoc opt">(</span>res<span class="gtkdoc opt">) {</span>
+ gint64 duration<span class="gtkdoc opt">;</span>
+ <span class="function"><a href="../gstreamer-1.0/gstreamer-GstQuery.html#gst-query-parse-duration">gst_query_parse_duration</a></span> <span class="gtkdoc opt">(</span>query<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">, &amp;</span>duration<span class="gtkdoc opt">);</span>
+ <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;duration = %&quot;</span>GST_TIME_FORMAT<span class="gtkdoc opt">,</span> <span class="function"><a href="../gstreamer-1.0/gstreamer-GstInfo.html#GST-TIME-ARGS:CAPS">GST_TIME_ARGS</a></span> <span class="gtkdoc opt">(</span>duration<span class="gtkdoc opt">));</span>
+<span class="gtkdoc opt">}</span>
+<span class="keyword">else</span> <span class="gtkdoc opt">{</span>
+ <span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;duration query failed...&quot;</span><span class="gtkdoc opt">);</span>
+<span class="gtkdoc opt">}</span>
+<span class="function"><a href="../gstreamer-1.0/gstreamer-GstQuery.html#gst-query-unref">gst_query_unref</a></span> <span class="gtkdoc opt">(</span>query<span class="gtkdoc opt">);</span></pre></td>
+ </tr>
+ </tbody>
+ </table>
+</div>
+
</div>
<p><br class="example-break">
</p>
<p>
-Last reviewed on 2006-02-14 (0.10.4)
+Last reviewed on 2012-03-29 (0.11.3)
</p>
</div>
<div class="refsect1">
@@ -299,23 +360,93 @@ The <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQue
</div>
<hr>
<div class="refsect2">
+<a name="GstQueryTypeFlags"></a><h3>enum GstQueryTypeFlags</h3>
+<pre class="programlisting">typedef enum {
+ GST_QUERY_TYPE_UPSTREAM = 1 &lt;&lt; 0,
+ GST_QUERY_TYPE_DOWNSTREAM = 1 &lt;&lt; 1,
+ GST_QUERY_TYPE_SERIALIZED = 1 &lt;&lt; 2
+} GstQueryTypeFlags;
+</pre>
+<p>
+<a class="link" href="gstreamer-GstQuery.html#GstQueryTypeFlags" title="enum GstQueryTypeFlags"><span class="type">GstQueryTypeFlags</span></a> indicate the aspects of the different <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a>
+values. You can get the type flags of a <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> with the
+<a class="link" href="gstreamer-GstQuery.html#gst-query-type-get-flags" title="gst_query_type_get_flags ()"><code class="function">gst_query_type_get_flags()</code></a> function.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><a name="GST-QUERY-TYPE-UPSTREAM:CAPS"></a><span class="term"><code class="literal">GST_QUERY_TYPE_UPSTREAM</code></span></p></td>
+<td>Set if the query can travel upstream.
+</td>
+</tr>
+<tr>
+<td><p><a name="GST-QUERY-TYPE-DOWNSTREAM:CAPS"></a><span class="term"><code class="literal">GST_QUERY_TYPE_DOWNSTREAM</code></span></p></td>
+<td>Set if the query can travel downstream.
+</td>
+</tr>
+<tr>
+<td><p><a name="GST-QUERY-TYPE-SERIALIZED:CAPS"></a><span class="term"><code class="literal">GST_QUERY_TYPE_SERIALIZED</code></span></p></td>
+<td>Set if the query should be serialized with data
+ flow.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-QUERY-TYPE-BOTH:CAPS"></a><h3>GST_QUERY_TYPE_BOTH</h3>
+<pre class="programlisting">#define GST_QUERY_TYPE_BOTH</pre>
+<p>
+The same thing as <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-TYPE-UPSTREAM:CAPS"><span class="type">GST_QUERY_TYPE_UPSTREAM</span></a> | <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-TYPE-DOWNSTREAM:CAPS"><span class="type">GST_QUERY_TYPE_DOWNSTREAM</span></a>.
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GST-QUERY-MAKE-TYPE:CAPS"></a><h3>GST_QUERY_MAKE_TYPE()</h3>
+<pre class="programlisting">#define GST_QUERY_MAKE_TYPE(num,flags)</pre>
+<p>
+when making custom query types, use this macro with the num and
+the given flags
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>num</code></em> :</span></p></td>
+<td>the query number to create</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
+<td>the query flags</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
<a name="GstQueryType"></a><h3>enum GstQueryType</h3>
<pre class="programlisting">typedef enum {
- GST_QUERY_NONE = 0,
- GST_QUERY_POSITION,
- GST_QUERY_DURATION,
- GST_QUERY_LATENCY,
- GST_QUERY_JITTER, /* not in draft-query, necessary? */
- GST_QUERY_RATE,
- GST_QUERY_SEEKING,
- GST_QUERY_SEGMENT,
- GST_QUERY_CONVERT,
- GST_QUERY_FORMATS,
- GST_QUERY_BUFFERING,
- GST_QUERY_CUSTOM,
- GST_QUERY_URI,
- GST_QUERY_ALLOCATION,
- GST_QUERY_SCHEDULING
+ GST_QUERY_UNKNOWN = GST_QUERY_MAKE_TYPE (0, 0),
+ GST_QUERY_POSITION = GST_QUERY_MAKE_TYPE (10, FLAG(BOTH)),
+ GST_QUERY_DURATION = GST_QUERY_MAKE_TYPE (20, FLAG(BOTH)),
+ GST_QUERY_LATENCY = GST_QUERY_MAKE_TYPE (30, FLAG(BOTH)),
+ GST_QUERY_JITTER = GST_QUERY_MAKE_TYPE (40, FLAG(BOTH)),
+ GST_QUERY_RATE = GST_QUERY_MAKE_TYPE (50, FLAG(BOTH)),
+ GST_QUERY_SEEKING = GST_QUERY_MAKE_TYPE (60, FLAG(BOTH)),
+ GST_QUERY_SEGMENT = GST_QUERY_MAKE_TYPE (70, FLAG(BOTH)),
+ GST_QUERY_CONVERT = GST_QUERY_MAKE_TYPE (80, FLAG(BOTH)),
+ GST_QUERY_FORMATS = GST_QUERY_MAKE_TYPE (90, FLAG(BOTH)),
+ GST_QUERY_BUFFERING = GST_QUERY_MAKE_TYPE (110, FLAG(BOTH)),
+ GST_QUERY_CUSTOM = GST_QUERY_MAKE_TYPE (120, FLAG(BOTH)),
+ GST_QUERY_URI = GST_QUERY_MAKE_TYPE (130, FLAG(BOTH)),
+ GST_QUERY_ALLOCATION = GST_QUERY_MAKE_TYPE (140, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
+ GST_QUERY_SCHEDULING = GST_QUERY_MAKE_TYPE (150, FLAG(UPSTREAM)),
+ GST_QUERY_ACCEPT_CAPS = GST_QUERY_MAKE_TYPE (160, FLAG(BOTH)),
+ GST_QUERY_CAPS = GST_QUERY_MAKE_TYPE (170, FLAG(BOTH)),
+ GST_QUERY_DRAIN = GST_QUERY_MAKE_TYPE (180, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
+ GST_QUERY_TOC = GST_QUERY_MAKE_TYPE (190, FLAG(BOTH))
} GstQueryType;
</pre>
<p>
@@ -325,8 +456,8 @@ Standard predefined Query types
<col align="left" valign="top">
<tbody>
<tr>
-<td><p><a name="GST-QUERY-NONE:CAPS"></a><span class="term"><code class="literal">GST_QUERY_NONE</code></span></p></td>
-<td>invalid query type
+<td><p><a name="GST-QUERY-UNKNOWN:CAPS"></a><span class="term"><code class="literal">GST_QUERY_UNKNOWN</code></span></p></td>
+<td>unknown query type
</td>
</tr>
<tr>
@@ -401,16 +532,37 @@ Standard predefined Query types
<td>the scheduling properties
</td>
</tr>
+<tr>
+<td><p><a name="GST-QUERY-ACCEPT-CAPS"></a><span class="term"><code class="literal">GST_QUERY_ACCEPT_CAPS</code></span></p></td>
+<td>the accept caps query
+</td>
+</tr>
+<tr>
+<td><p><a name="GST-QUERY-CAPS"></a><span class="term"><code class="literal">GST_QUERY_CAPS</code></span></p></td>
+<td>the caps query
+</td>
+</tr>
+<tr>
+<td><p><a name="GST-QUERY-DRAIN:CAPS"></a><span class="term"><code class="literal">GST_QUERY_DRAIN</code></span></p></td>
+<td>wait till all serialized data is consumed downstream
+</td>
+</tr>
+<tr>
+<td><p><a name="GST-QUERY-TOC:CAPS"></a><span class="term"><code class="literal">GST_QUERY_TOC</code></span></p></td>
+<td>query the full table of contents (TOC) with the marker
+for an entry which can be used to extend received TOC. Since 0.10.37.
+</td>
+</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="GST-QUERY-TYPE-NAME:CAPS"></a><h3>GST_QUERY_TYPE_NAME()</h3>
-<pre class="programlisting">#define GST_QUERY_TYPE_NAME(query) (gst_query_type_get_name(GST_QUERY_TYPE(query)))
+<a name="GST-QUERY-TYPE:CAPS"></a><h3>GST_QUERY_TYPE()</h3>
+<pre class="programlisting">#define GST_QUERY_TYPE(query) (((GstQuery*)(query))-&gt;type)
</pre>
<p>
-Get a constant string representation of the <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> of the query.
+Get the <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> of the query.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -419,206 +571,138 @@ Get a constant string representation of the <a class="link" href="gstreamer-GstQ
<td>the query to query</td>
</tr></tbody>
</table></div>
-<p class="since">Since 0.10.4</p>
</div>
<hr>
<div class="refsect2">
-<a name="GstQueryTypeDefinition"></a><h3>struct GstQueryTypeDefinition</h3>
-<pre class="programlisting">struct GstQueryTypeDefinition {
- GstQueryType value;
- const gchar *nick;
- const gchar *description;
- GQuark quark;
-};
+<a name="GST-QUERY-TYPE-NAME:CAPS"></a><h3>GST_QUERY_TYPE_NAME()</h3>
+<pre class="programlisting">#define GST_QUERY_TYPE_NAME(query) (gst_query_type_get_name(GST_QUERY_TYPE(query)))
</pre>
<p>
-A Query Type definition
+Get a constant string representation of the <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> of the query.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> <em class="structfield"><code><a name="GstQueryTypeDefinition.value"></a>value</code></em>;</span></p></td>
-<td>the unique id of the Query type</td>
-</tr>
-<tr>
-<td><p><span class="term">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstQueryTypeDefinition.nick"></a>nick</code></em>;</span></p></td>
-<td>a short nick</td>
-</tr>
-<tr>
-<td><p><span class="term">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GstQueryTypeDefinition.description"></a>description</code></em>;</span></p></td>
-<td>a longer description of the query type</td>
-</tr>
-<tr>
-<td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> <em class="structfield"><code><a name="GstQueryTypeDefinition.quark"></a>quark</code></em>;</span></p></td>
-<td>the quark for the nick</td>
-</tr>
-</tbody>
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>the query to query</td>
+</tr></tbody>
</table></div>
+<p class="since">Since 0.10.4</p>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-type-get-name"></a><h3>gst_query_type_get_name ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * gst_query_type_get_name (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> query</code></em>);</pre>
+<a name="GST-QUERY-IS-UPSTREAM:CAPS"></a><h3>GST_QUERY_IS_UPSTREAM()</h3>
+<pre class="programlisting">#define GST_QUERY_IS_UPSTREAM(ev) !!(GST_QUERY_TYPE (ev) &amp; GST_QUERY_TYPE_UPSTREAM)
+</pre>
<p>
-Get a printable name for the given query type. Do not modify or free.
+Check if an query can travel upstream.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
-<td>the query type</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a reference to the static name of the query.</td>
-</tr>
-</tbody>
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>ev</code></em> :</span></p></td>
+<td>the query to query</td>
+</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-type-to-quark"></a><h3>gst_query_type_to_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> gst_query_type_to_quark (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> query</code></em>);</pre>
+<a name="GST-QUERY-IS-DOWNSTREAM:CAPS"></a><h3>GST_QUERY_IS_DOWNSTREAM()</h3>
+<pre class="programlisting">#define GST_QUERY_IS_DOWNSTREAM(ev) !!(GST_QUERY_TYPE (ev) &amp; GST_QUERY_TYPE_DOWNSTREAM)
+</pre>
<p>
-Get the unique quark for the given query type.
+Check if an query can travel downstream.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
-<td>the query type</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the quark associated with the query type</td>
-</tr>
-</tbody>
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>ev</code></em> :</span></p></td>
+<td>the query to query</td>
+</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-type-register"></a><h3>gst_query_type_register ()</h3>
-<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="returnvalue">GstQueryType</span></a> gst_query_type_register (<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> *nick</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> *description</code></em>);</pre>
+<a name="GST-QUERY-IS-SERIALIZED:CAPS"></a><h3>GST_QUERY_IS_SERIALIZED()</h3>
+<pre class="programlisting">#define GST_QUERY_IS_SERIALIZED(ev) !!(GST_QUERY_TYPE (ev) &amp; GST_QUERY_TYPE_SERIALIZED)
+</pre>
<p>
-Create a new GstQueryType based on the nick or return an
-already registered query with that nick
+Check if an query is serialized with the data stream.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>nick</code></em> :</span></p></td>
-<td>The nick of the new query</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>description</code></em> :</span></p></td>
-<td>The description of the new query</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>A new GstQueryType or an already registered query
-with the same nick.</td>
-</tr>
-</tbody>
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>ev</code></em> :</span></p></td>
+<td>the query to query</td>
+</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-type-get-by-nick"></a><h3>gst_query_type_get_by_nick ()</h3>
-<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="returnvalue">GstQueryType</span></a> gst_query_type_get_by_nick (<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> *nick</code></em>);</pre>
+<a name="gst-query-type-get-flags"></a><h3>gst_query_type_get_flags ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQueryTypeFlags" title="enum GstQueryTypeFlags"><span class="returnvalue">GstQueryTypeFlags</span></a> gst_query_type_get_flags (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);</pre>
<p>
-Get the query type registered with <em class="parameter"><code>nick</code></em>.
+Gets the <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeFlags" title="enum GstQueryTypeFlags"><span class="type">GstQueryTypeFlags</span></a> associated with <em class="parameter"><code>type</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>nick</code></em> :</span></p></td>
-<td>The nick of the query</td>
+<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
+<td>a <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a>
+</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>The query registered with <em class="parameter"><code>nick</code></em> or <a class="link" href="gstreamer-GstQuery.html#GST-QUERY-NONE:CAPS"><span class="type">GST_QUERY_NONE</span></a>
-if the query was not registered.</td>
+<td>a <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeFlags" title="enum GstQueryTypeFlags"><span class="type">GstQueryTypeFlags</span></a>.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-types-contains"></a><h3>gst_query_types_contains ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_query_types_contains (<em class="parameter"><code>const <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> *types</code></em>,
- <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);</pre>
+<a name="gst-query-type-get-name"></a><h3>gst_query_type_get_name ()</h3>
+<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * gst_query_type_get_name (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);</pre>
<p>
-See if the given <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> is inside the <em class="parameter"><code>types</code></em> query types array.
+Get a printable name for the given query type. Do not modify or free.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>types</code></em> :</span></p></td>
-<td>The query array to search</td>
-</tr>
-<tr>
<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
-<td>the <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> to find</td>
+<td>the query type</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>TRUE if the type is found inside the array</td>
+<td>a reference to the static name of the query.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-type-get-details"></a><h3>gst_query_type_get_details ()</h3>
-<pre class="programlisting">const <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeDefinition" title="struct GstQueryTypeDefinition"><span class="returnvalue">GstQueryTypeDefinition</span></a> * gst_query_type_get_details
- (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);</pre>
+<a name="gst-query-type-to-quark"></a><h3>gst_query_type_to_quark ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> gst_query_type_to_quark (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a> type</code></em>);</pre>
<p>
-Get details about the given <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a>.
+Get the unique quark for the given query type.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
-<td>a <a class="link" href="gstreamer-GstQuery.html#GstQueryType" title="enum GstQueryType"><span class="type">GstQueryType</span></a>
-</td>
+<td>the query type</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>The <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeDefinition" title="struct GstQueryTypeDefinition"><span class="type">GstQueryTypeDefinition</span></a> for <em class="parameter"><code>type</code></em> or NULL on failure.</td>
+<td>the quark associated with the query type</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-type-iterate-definitions"></a><h3>gst_query_type_iterate_definitions ()</h3>
-<pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * gst_query_type_iterate_definitions (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Get a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of all the registered query types. The definitions
-iterated over are read only.
-</p>
-<p>
-Free-function: gst_iterator_free
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="gstreamer-GstQuery.html#GstQueryTypeDefinition" title="struct GstQueryTypeDefinition"><span class="type">GstQueryTypeDefinition</span></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-query-ref"></a><h3>gst_query_ref ()</h3>
<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * gst_query_ref (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *q</code></em>);</pre>
<p>
@@ -722,8 +806,9 @@ Tests if you can safely write data into a query's structure.
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-replace"></a><h3>gst_query_replace()</h3>
-<pre class="programlisting">#define gst_query_replace(old_query,new_query)</pre>
+<a name="gst-query-replace"></a><h3>gst_query_replace ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_query_replace (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> **old_query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *new_query</code></em>);</pre>
<p>
Modifies a pointer to a <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> to point to a different <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>. The
modification is done atomically (so this is useful for ensuring thread safety
@@ -748,6 +833,11 @@ to be replaced. <span class="annotation">[<acronym title="Parameter for input an
replace the query pointed to by <em class="parameter"><code>old_query</code></em>. <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><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TRUE if <em class="parameter"><code>new_query</code></em> was different from <em class="parameter"><code>old_query</code></em>
+</td>
+</tr>
</tbody>
</table></div>
</div>
@@ -756,7 +846,8 @@ replace the query pointed to by <em class="parameter"><code>old_query</code></em
<a name="gst-query-writable-structure"></a><h3>gst_query_writable_structure ()</h3>
<pre class="programlisting"><a class="link" href="gstreamer-GstStructure.html#GstStructure" title="struct GstStructure"><span class="returnvalue">GstStructure</span></a> * gst_query_writable_structure (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
<p>
-Get the structure of a query.
+Get the structure of a query. This method should be called with a writable
+<em class="parameter"><code>query</code></em> so that the returned structure is guranteed to be writable.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -836,7 +927,7 @@ is unreffed. <span class="annotation">[<acronym title="Don't free data after the
<div class="refsect2">
<a name="gst-query-new-convert"></a><h3>gst_query_new_convert ()</h3>
<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * gst_query_new_convert (<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> value</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> dest_format</code></em>);</pre>
<p>
Constructs a new convert query object. Use <a class="link" href="gstreamer-GstQuery.html#gst-query-unref" title="gst_query_unref ()"><code class="function">gst_query_unref()</code></a>
@@ -875,9 +966,9 @@ Free-function: gst_query_unref
<a name="gst-query-set-convert"></a><h3>gst_query_set_convert ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_convert (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> src_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> src_value</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> dest_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> dest_value</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> dest_value</code></em>);</pre>
<p>
Answer a convert query by setting the requested values.
</p>
@@ -915,9 +1006,9 @@ Answer a convert query by setting the requested values.
<a name="gst-query-parse-convert"></a><h3>gst_query_parse_convert ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_convert (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *src_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *src_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *src_value</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *dest_format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *dest_value</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *dest_value</code></em>);</pre>
<p>
Parse a convert query answer. Any of <em class="parameter"><code>src_format</code></em>, <em class="parameter"><code>src_value</code></em>, <em class="parameter"><code>dest_format</code></em>,
and <em class="parameter"><code>dest_value</code></em> may be NULL, in which case that value is omitted.
@@ -988,7 +1079,7 @@ Free-function: gst_query_unref
<a name="gst-query-set-position"></a><h3>gst_query_set_position ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_position (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> cur</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> cur</code></em>);</pre>
<p>
Answer a position query by setting the requested value in the given format.
</p>
@@ -1016,7 +1107,7 @@ Answer a position query by setting the requested value in the given format.
<a name="gst-query-parse-position"></a><h3>gst_query_parse_position ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_position (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *cur</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *cur</code></em>);</pre>
<p>
Parse a position query, writing the format into <em class="parameter"><code>format</code></em>, and the position
into <em class="parameter"><code>cur</code></em>, if the respective parameters are non-NULL.
@@ -1075,7 +1166,7 @@ Free-function: gst_query_unref
<a name="gst-query-set-duration"></a><h3>gst_query_set_duration ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_duration (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> duration</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> duration</code></em>);</pre>
<p>
Answer a duration query by setting the requested value in the given format.
</p>
@@ -1103,7 +1194,7 @@ Answer a duration query by setting the requested value in the given format.
<a name="gst-query-parse-duration"></a><h3>gst_query_parse_duration ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_duration (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *duration</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *duration</code></em>);</pre>
<p>
Parse a duration query answer. Write the format of the duration into <em class="parameter"><code>format</code></em>,
and the value into <em class="parameter"><code>duration</code></em>, if the respective variables are non-NULL.
@@ -1214,11 +1305,11 @@ Answer a latency query by setting the requested values in the given format.
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>min_latency</code></em> :</span></p></td>
-<td>the minimal latency of the live element</td>
+<td>the minimal latency of the upstream elements</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>max_latency</code></em> :</span></p></td>
-<td>the maximal latency of the live element</td>
+<td>the maximal latency of the upstream elements</td>
</tr>
</tbody>
</table></div>
@@ -1256,8 +1347,8 @@ Free-function: gst_query_unref
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_seeking (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> seekable</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> segment_start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> segment_end</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> segment_start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> segment_end</code></em>);</pre>
<p>
Set the seeking query result fields in <em class="parameter"><code>query</code></em>.
</p>
@@ -1294,8 +1385,8 @@ Set the seeking query result fields in <em class="parameter"><code>query</code><
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_seeking (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *seekable</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *segment_start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *segment_end</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *segment_start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *segment_end</code></em>);</pre>
<p>
Parse a seeking query, writing the format into <em class="parameter"><code>format</code></em>, and
other results into the passed parameters, if the respective parameters
@@ -1433,7 +1524,7 @@ Parse the number of formats in the formats <em class="parameter"><code>query</co
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>n_formats</code></em> :</span></p></td>
-<td>the number of formats in this query. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+<td>the number of formats in this query. <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>
</tbody>
@@ -1466,7 +1557,7 @@ set to GST_FORMAT_UNDEFINED.
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
-<td>a pointer to store the nth format. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+<td>a pointer to store the nth format. <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>
</tbody>
@@ -1505,8 +1596,8 @@ Free-function: gst_query_unref
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_segment (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> start_value</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> stop_value</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> start_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> stop_value</code></em>);</pre>
<p>
Answer a segment query by setting the requested values. The normal
playback segment of a pipeline is 0 to duration at the default rate of
@@ -1554,8 +1645,8 @@ negative rates, playback will actually happen from <em class="parameter"><code>s
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_segment (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *rate</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *start_value</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *stop_value</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *start_value</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *stop_value</code></em>);</pre>
<p>
Parse a segment query answer. Any of <em class="parameter"><code>rate</code></em>, <em class="parameter"><code>format</code></em>, <em class="parameter"><code>start_value</code></em>, and
<em class="parameter"><code>stop_value</code></em> may be NULL, which will cause this value to be omitted.
@@ -1597,6 +1688,186 @@ or NULL. <span class="annotation">[<acronym title="Parameter for returning resul
</div>
<hr>
<div class="refsect2">
+<a name="gst-query-new-caps"></a><h3>gst_query_new_caps ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * gst_query_new_caps (<em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>);</pre>
+<p>
+Constructs a new query object for querying the caps.
+</p>
+<p>
+The CAPS query should return the* allowable caps for a pad in the context
+of the element's state, its link to other elements, and the devices or files
+it has opened. These caps must be a subset of the pad template caps. In the
+NULL state with no links, the CAPS query should ideally return the same caps
+as the pad template. In rare circumstances, an object property can affect
+the caps returned by the CAPS query, but this is discouraged.
+</p>
+<p>
+For most filters, the caps returned by CAPS query is directly affected by the
+allowed caps on other pads. For demuxers and decoders, the caps returned by
+the srcpad's getcaps function is directly related to the stream data. Again,
+the CAPS query should return the most specific caps it reasonably can, since this
+helps with autoplugging.
+</p>
+<p>
+Free-function: gst_query_unref
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>filter</code></em> :</span></p></td>
+<td>a filter</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a new <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></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-query-parse-caps"></a><h3>gst_query_parse_caps ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_caps (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **filter</code></em>);</pre>
+<p>
+Get the filter from the caps <em class="parameter"><code>query</code></em>. The caps remains valid as long as
+<em class="parameter"><code>query</code></em> remains valid.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>The query to parse</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>filter</code></em> :</span></p></td>
+<td>A pointer to the caps filter. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-set-caps-result"></a><h3>gst_query_set_caps_result ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_caps_result (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
+<p>
+Set the <em class="parameter"><code>caps</code></em> result in <em class="parameter"><code>query</code></em>.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>The query to use</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
+<td>A pointer to the caps. <span class="annotation">[<acronym title="Parameter for input. Default is transfer none."><span class="acronym">in</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-parse-caps-result"></a><h3>gst_query_parse_caps_result ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_caps_result (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>);</pre>
+<p>
+Get the caps result from <em class="parameter"><code>query</code></em>. The caps remains valid as long as
+<em class="parameter"><code>query</code></em> remains valid.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>The query to parse</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
+<td>A pointer to the caps. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-intersect-caps-result"></a><h3>gst_query_intersect_caps_result ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_intersect_caps_result (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCapsIntersectMode" title="enum GstCapsIntersectMode"><span class="type">GstCapsIntersectMode</span></a> mode</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-new-accept-caps"></a><h3>gst_query_new_accept_caps ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * gst_query_new_accept_caps (<em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre>
+<p>
+Constructs a new query object for querying if <em class="parameter"><code>caps</code></em> are accepted.
+</p>
+<p>
+Free-function: gst_query_unref
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
+<td>a fixed <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a new <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></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-query-parse-accept-caps"></a><h3>gst_query_parse_accept_caps ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_accept_caps (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>);</pre>
+<p>
+Get the caps from <em class="parameter"><code>query</code></em>. The caps remains valid as long as <em class="parameter"><code>query</code></em> remains
+valid.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>The query to parse</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
+<td>A pointer to the caps. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-set-accept-caps-result"></a><h3>gst_query_set_accept_caps_result ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_accept_caps_result (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> result</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-parse-accept-caps-result"></a><h3>gst_query_parse_accept_caps_result ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_accept_caps_result (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *result</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
<a name="GstBufferingMode"></a><h3>enum GstBufferingMode</h3>
<pre class="programlisting">typedef enum {
GST_BUFFERING_STREAM,
@@ -1728,7 +1999,7 @@ The <em class="parameter"><code>busy</code></em> indicator is <a href="http://li
<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> mode</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_in</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> avg_out</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> buffering_left</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> buffering_left</code></em>);</pre>
<p>
Configures the buffering stats values in <em class="parameter"><code>query</code></em>.
</p>
@@ -1766,7 +2037,7 @@ Configures the buffering stats values in <em class="parameter"><code>query</code
<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstBufferingMode" title="enum GstBufferingMode"><span class="type">GstBufferingMode</span></a> *mode</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_in</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *avg_out</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *buffering_left</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *buffering_left</code></em>);</pre>
<p>
Extracts the buffering stats values from <em class="parameter"><code>query</code></em>.
</p>
@@ -1806,9 +2077,9 @@ Extracts the buffering stats values from <em class="parameter"><code>query</code
<a name="gst-query-set-buffering-range"></a><h3>gst_query_set_buffering_range ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_buffering_range (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> stop</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> estimated_total</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> stop</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> estimated_total</code></em>);</pre>
<p>
Set the available query result fields in <em class="parameter"><code>query</code></em>.
</p>
@@ -1845,9 +2116,9 @@ Set the available query result fields in <em class="parameter"><code>query</code
<a name="gst-query-parse-buffering-range"></a><h3>gst_query_parse_buffering_range ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_buffering_range (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> *format</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *stop</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *estimated_total</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *stop</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *estimated_total</code></em>);</pre>
<p>
Parse an available query, writing the format into <em class="parameter"><code>format</code></em>, and
other results into the passed parameters, if the respective parameters
@@ -1891,8 +2162,8 @@ time, or NULL. <span class="annotation">[<acronym title="Parameter for returning
<div class="refsect2">
<a name="gst-query-add-buffering-range"></a><h3>gst_query_add_buffering_range ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_query_add_buffering_range (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> stop</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> stop</code></em>);</pre>
<p>
Set the buffering-ranges array field in <em class="parameter"><code>query</code></em>. The current last
start position of the array should be inferior to <em class="parameter"><code>start</code></em>.
@@ -1950,8 +2221,8 @@ buffered-ranges array of the query's structure.
<a name="gst-query-parse-nth-buffering-range"></a><h3>gst_query_parse_nth_buffering_range ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_query_parse_nth_buffering_range (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *start</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> *stop</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gint64</span> *start</code></em>,
+ <em class="parameter"><code><span class="type">gint64</span> *stop</code></em>);</pre>
<p>
Parse an available query and get the start and stop values stored
at the <em class="parameter"><code>index</code></em> of the buffered ranges array.
@@ -2095,19 +2366,42 @@ Free-function: gst_query_unref
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_allocation (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
<em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> **caps</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *need_pool</code></em>);</pre>
+<p>
+Parse an allocation query, writing the requested caps in <em class="parameter"><code>caps</code></em> and
+whether a pool is needed in <em class="parameter"><code>need_pool</code></em>, if the respective parameters
+are non-NULL.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
+<td>The <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<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>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>need_pool</code></em> :</span></p></td>
+<td>Whether a <a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> is needed. <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>
+</tbody>
+</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-parse-allocation-params"></a><h3>gst_query_parse_allocation_params ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_allocation_params (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *size</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> *min_buffers</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> *max_buffers</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> *prefix</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> *alignment</code></em>,
- <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> **pool</code></em>);</pre>
+<a name="gst-query-add-allocation-pool"></a><h3>gst_query_add_allocation_pool ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_add_allocation_pool (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</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> size</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> min_buffers</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> max_buffers</code></em>);</pre>
<p>
-Get the allocation parameters in <em class="parameter"><code>query</code></em>.
+Set the pool parameters in <em class="parameter"><code>query</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -2117,6 +2411,11 @@ Get the allocation parameters in <em class="parameter"><code>query</code></em>.
<td>A valid <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> of type GST_QUERY_ALLOCATION.</td>
</tr>
<tr>
+<td><p><span class="term"><em class="parameter"><code>pool</code></em> :</span></p></td>
+<td>the <a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a>
+</td>
+</tr>
+<tr>
<td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
<td>the size</td>
</tr>
@@ -2128,31 +2427,16 @@ Get the allocation parameters in <em class="parameter"><code>query</code></em>.
<td><p><span class="term"><em class="parameter"><code>max_buffers</code></em> :</span></p></td>
<td>the max buffers</td>
</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>prefix</code></em> :</span></p></td>
-<td>the prefix</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>alignment</code></em> :</span></p></td>
-<td>the alignment</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>pool</code></em> :</span></p></td>
-<td>the <a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a>
-</td>
-</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-parse-nth-allocation-memory"></a><h3>gst_query_parse_nth_allocation_memory ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * gst_query_parse_nth_allocation_memory
- (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);</pre>
+<a name="gst-query-get-n-allocation-pools"></a><h3>gst_query_get_n_allocation_pools ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> gst_query_get_n_allocation_pools (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
<p>
-Parse an available query and get the alloctor
-at <em class="parameter"><code>index</code></em> of the allocator array.
+Retrieve the number of values currently stored in the
+pool array of the query's structure.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -2163,65 +2447,87 @@ at <em class="parameter"><code>index</code></em> of the allocator array.
</td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
-<td>position in the allocator array to read</td>
-</tr>
-<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the name of the allocator at <em class="parameter"><code>index</code></em>.</td>
+<td>the pool array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-parse-nth-allocation-meta"></a><h3>gst_query_parse_nth_allocation_meta ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * gst_query_parse_nth_allocation_meta (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);</pre>
+<a name="gst-query-parse-nth-allocation-pool"></a><h3>gst_query_parse_nth_allocation_pool ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_nth_allocation_pool (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> **pool</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> *size</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> *min_buffers</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> *max_buffers</code></em>);</pre>
<p>
-Parse an available query and get the metadata API
-at <em class="parameter"><code>index</code></em> of the metadata API array.
+Get the pool parameters in <em class="parameter"><code>query</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
-<td>a GST_QUERY_ALLOCATION type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
-</td>
+<td>A valid <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> of type GST_QUERY_ALLOCATION.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
-<td>position in the metadata API array to read</td>
+<td>index to parse</td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> of the metadata API at <em class="parameter"><code>index</code></em>.</td>
+<td><p><span class="term"><em class="parameter"><code>pool</code></em> :</span></p></td>
+<td>the <a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</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>][<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. <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"><em class="parameter"><code>min_buffers</code></em> :</span></p></td>
+<td>the min buffers. <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"><em class="parameter"><code>max_buffers</code></em> :</span></p></td>
+<td>the max buffers. <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>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-set-allocation-params"></a><h3>gst_query_set_allocation_params ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_allocation_params (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+<a name="gst-query-set-nth-allocation-pool"></a><h3>gst_query_set_nth_allocation_pool ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_nth_allocation_pool (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</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> size</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> min_buffers</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> max_buffers</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> prefix</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> alignment</code></em>,
- <em class="parameter"><code><a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a> *pool</code></em>);</pre>
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> max_buffers</code></em>);</pre>
<p>
-Set the allocation parameters in <em class="parameter"><code>query</code></em>.
+Set the pool parameters in <em class="parameter"><code>query</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>index to modify</td>
+</tr>
+<tr>
<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
<td>A valid <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> of type GST_QUERY_ALLOCATION.</td>
</tr>
<tr>
+<td><p><span class="term"><em class="parameter"><code>pool</code></em> :</span></p></td>
+<td>the <a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a>
+</td>
+</tr>
+<tr>
<td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
<td>the size</td>
</tr>
@@ -2233,17 +2539,33 @@ Set the allocation parameters in <em class="parameter"><code>query</code></em>.
<td><p><span class="term"><em class="parameter"><code>max_buffers</code></em> :</span></p></td>
<td>the max buffers</td>
</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-add-allocation-param"></a><h3>gst_query_add_allocation_param ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_add_allocation_param (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocator" title="GstAllocator"><span class="type">GstAllocator</span></a> *allocator</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gstreamer-GstMemory.html#GstAllocationParams" title="struct GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);</pre>
+<p>
+Add <em class="parameter"><code>allocator</code></em> and its <em class="parameter"><code>params</code></em> as a supported memory allocator.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>prefix</code></em> :</span></p></td>
-<td>the prefix</td>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_ALLOCATION type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>alignment</code></em> :</span></p></td>
-<td>the alignment</td>
+<td><p><span class="term"><em class="parameter"><code>allocator</code></em> :</span></p></td>
+<td>the memory allocator</td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>pool</code></em> :</span></p></td>
-<td>the <a class="link" href="gstreamer-GstBufferPool.html#GstBufferPool" title="GstBufferPool"><span class="type">GstBufferPool</span></a>
+<td><p><span class="term"><em class="parameter"><code>params</code></em> :</span></p></td>
+<td>a <a class="link" href="gstreamer-GstMemory.html#GstAllocationParams" title="struct GstAllocationParams"><span class="type">GstAllocationParams</span></a>
</td>
</tr>
</tbody>
@@ -2251,11 +2573,15 @@ Set the allocation parameters in <em class="parameter"><code>query</code></em>.
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-add-allocation-memory"></a><h3>gst_query_add_allocation_memory ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> gst_query_add_allocation_memory (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *alloc</code></em>);</pre>
+<a name="gst-query-get-n-allocation-params"></a><h3>gst_query_get_n_allocation_params ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> gst_query_get_n_allocation_params (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
<p>
-Add <em class="parameter"><code>alloc</code></em> as a supported memory allocator.
+Retrieve the number of values currently stored in the
+allocator params array of the query's structure.
+</p>
+<p>
+If no memory allocator is specified, the downstream element can handle
+the default memory allocator.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -2266,8 +2592,79 @@ Add <em class="parameter"><code>alloc</code></em> as a supported memory allocato
</td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>alloc</code></em> :</span></p></td>
-<td>the memory allocator</td>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the allocator array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-parse-nth-allocation-param"></a><h3>gst_query_parse_nth_allocation_param ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_nth_allocation_param
+ (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocator" title="GstAllocator"><span class="type">GstAllocator</span></a> **allocator</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocationParams" title="struct GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);</pre>
+<p>
+Parse an available query and get the alloctor and its params
+at <em class="parameter"><code>index</code></em> of the allocator array.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_ALLOCATION type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>position in the allocator array to read</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>allocator</code></em> :</span></p></td>
+<td>variable to hold the result. <span class="annotation">[<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>params</code></em> :</span></p></td>
+<td>parameters for the allocator</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-set-nth-allocation-param"></a><h3>gst_query_set_nth_allocation_param ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_nth_allocation_param (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstMemory.html#GstAllocator" title="GstAllocator"><span class="type">GstAllocator</span></a> *allocator</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gstreamer-GstMemory.html#GstAllocationParams" title="struct GstAllocationParams"><span class="type">GstAllocationParams</span></a> *params</code></em>);</pre>
+<p>
+Parse an available query and get the alloctor and its params
+at <em class="parameter"><code>index</code></em> of the allocator array.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_ALLOCATION type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>position in the allocator array to set</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>allocator</code></em> :</span></p></td>
+<td>new allocator to set. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>params</code></em> :</span></p></td>
+<td>parameters for the allocator</td>
</tr>
</tbody>
</table></div>
@@ -2276,7 +2673,7 @@ Add <em class="parameter"><code>alloc</code></em> as a supported memory allocato
<div class="refsect2">
<a name="gst-query-add-allocation-meta"></a><h3>gst_query_add_allocation_meta ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_add_allocation_meta (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *api</code></em>);</pre>
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);</pre>
<p>
Add <em class="parameter"><code>api</code></em> as aone of the supported metadata API to <em class="parameter"><code>query</code></em>.
</p>
@@ -2297,11 +2694,11 @@ Add <em class="parameter"><code>api</code></em> as aone of the supported metadat
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-has-allocation-meta"></a><h3>gst_query_has_allocation_meta ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_query_has_allocation_meta (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> *api</code></em>);</pre>
+<a name="gst-query-get-n-allocation-metas"></a><h3>gst_query_get_n_allocation_metas ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> gst_query_get_n_allocation_metas (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
<p>
-Check if <em class="parameter"><code>query</code></em> has metadata <em class="parameter"><code>api</code></em> set.
+Retrieve the number of values currently stored in the
+meta API array of the query's structure.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -2312,27 +2709,48 @@ Check if <em class="parameter"><code>query</code></em> has metadata <em class="p
</td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>api</code></em> :</span></p></td>
-<td>the metadata API</td>
-</tr>
-<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>TRUE when <em class="parameter"><code>api</code></em> is in the list of metadata.</td>
+<td>the metadata API array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-get-n-allocation-memories"></a><h3>gst_query_get_n_allocation_memories ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> gst_query_get_n_allocation_memories (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
+<a name="gst-query-parse-nth-allocation-meta"></a><h3>gst_query_parse_nth_allocation_meta ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a> gst_query_parse_nth_allocation_meta (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);</pre>
<p>
-Retrieve the number of values currently stored in the
-allocator array of the query's structure.
+Parse an available query and get the metadata API
+at <em class="parameter"><code>index</code></em> of the metadata API array.
</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_ALLOCATION type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>position in the metadata API array to read</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of the metadata API at <em class="parameter"><code>index</code></em>.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-remove-nth-allocation-meta"></a><h3>gst_query_remove_nth_allocation_meta ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_remove_nth_allocation_meta
+ (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);</pre>
<p>
-If no memory allocator is specified, the downstream element can handle
-the default memory allocator.
+Remove the metadata API at <em class="parameter"><code>index</code></em> of the metadata API array.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -2343,19 +2761,19 @@ the default memory allocator.
</td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the allocator array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</td>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>position in the metadata API array to remove</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
-<a name="gst-query-get-n-allocation-metas"></a><h3>gst_query_get_n_allocation_metas ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> gst_query_get_n_allocation_metas (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
+<a name="gst-query-has-allocation-meta"></a><h3>gst_query_has_allocation_meta ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_query_has_allocation_meta (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> api</code></em>);</pre>
<p>
-Retrieve the number of values currently stored in the
-meta API array of the query's structure.
+Check if <em class="parameter"><code>query</code></em> has metadata <em class="parameter"><code>api</code></em> set.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
@@ -2366,8 +2784,39 @@ meta API array of the query's structure.
</td>
</tr>
<tr>
+<td><p><span class="term"><em class="parameter"><code>api</code></em> :</span></p></td>
+<td>the metadata API</td>
+</tr>
+<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the metadata API array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</td>
+<td>TRUE when <em class="parameter"><code>api</code></em> is in the list of metadata.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GstSchedulingFlags"></a><h3>enum GstSchedulingFlags</h3>
+<pre class="programlisting">typedef enum {
+ GST_SCHEDULING_FLAG_SEEKABLE = (1 &lt;&lt; 0),
+ GST_SCHEDULING_FLAG_SEQUENTIAL = (1 &lt;&lt; 1)
+} GstSchedulingFlags;
+</pre>
+<p>
+The different scheduling flags.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><a name="GST-SCHEDULING-FLAG-SEEKABLE:CAPS"></a><span class="term"><code class="literal">GST_SCHEDULING_FLAG_SEEKABLE</code></span></p></td>
+<td>if seeking is possible
+</td>
+</tr>
+<tr>
+<td><p><a name="GST-SCHEDULING-FLAG-SEQUENTIAL:CAPS"></a><span class="term"><code class="literal">GST_SCHEDULING_FLAG_SEQUENTIAL</code></span></p></td>
+<td>if sequential access is recommended
+</td>
</tr>
</tbody>
</table></div>
@@ -2395,9 +2844,7 @@ Free-function: gst_query_unref
<div class="refsect2">
<a name="gst-query-parse-scheduling"></a><h3>gst_query_parse_scheduling ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_scheduling (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *pull_mode</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *random_access</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *sequential</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a> *flags</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *minsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *maxsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *align</code></em>);</pre>
@@ -2412,28 +2859,25 @@ Set the scheduling properties.
<td>A valid <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> of type GST_QUERY_SCHEDULING.</td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>pull_mode</code></em> :</span></p></td>
-<td>if pull mode scheduling is supported</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>random_access</code></em> :</span></p></td>
-<td>if random access is possible</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>sequential</code></em> :</span></p></td>
-<td>if sequential access is recommended</td>
+<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
+<td>
+<a class="link" href="gstreamer-GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</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"><em class="parameter"><code>minsize</code></em> :</span></p></td>
-<td>the suggested minimum size of pull requests</td>
+<td>the suggested minimum size of pull requests. <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"><em class="parameter"><code>maxsize</code></em> :</span></p></td>
-<td>the suggested maximum size of pull requests:</td>
+<td>the suggested maximum size of pull requests:. <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"><em class="parameter"><code>align</code></em> :</span></p></td>
-<td>the suggested alignment of pull requests</td>
+<td>the suggested alignment of pull requests. <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>
</tbody>
</table></div>
@@ -2442,9 +2886,7 @@ Set the scheduling properties.
<div class="refsect2">
<a name="gst-query-set-scheduling"></a><h3>gst_query_set_scheduling ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_scheduling (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> pull_mode</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> random_access</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> sequential</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a> flags</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> minsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> maxsize</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> align</code></em>);</pre>
@@ -2459,16 +2901,8 @@ Set the scheduling properties.
<td>A valid <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> of type GST_QUERY_SCHEDULING.</td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>pull_mode</code></em> :</span></p></td>
-<td>if pull mode scheduling is supported</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>random_access</code></em> :</span></p></td>
-<td>if random access is possible</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>sequential</code></em> :</span></p></td>
-<td>if sequential access is recommended</td>
+<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
+<td><a class="link" href="gstreamer-GstQuery.html#GstSchedulingFlags" title="enum GstSchedulingFlags"><span class="type">GstSchedulingFlags</span></a></td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>minsize</code></em> :</span></p></td>
@@ -2476,7 +2910,7 @@ Set the scheduling properties.
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>maxsize</code></em> :</span></p></td>
-<td>the suggested maximum size of pull requests:</td>
+<td>the suggested maximum size of pull requests</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>align</code></em> :</span></p></td>
@@ -2485,6 +2919,206 @@ Set the scheduling properties.
</tbody>
</table></div>
</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-add-scheduling-mode"></a><h3>gst_query_add_scheduling_mode ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_add_scheduling_mode (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>);</pre>
+<p>
+Add <em class="parameter"><code>mode</code></em> as aone of the supported scheduling modes to <em class="parameter"><code>query</code></em>.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_SCHEDULING type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mode</code></em> :</span></p></td>
+<td>a <a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-get-n-scheduling-modes"></a><h3>gst_query_get_n_scheduling_modes ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> gst_query_get_n_scheduling_modes (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre>
+<p>
+Retrieve the number of values currently stored in the
+scheduling mode array of the query's structure.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_SCHEDULING type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>the scheduling mode array size as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-parse-nth-scheduling-mode"></a><h3>gst_query_parse_nth_scheduling_mode ()</h3>
+<pre class="programlisting"><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="returnvalue">GstPadMode</span></a> gst_query_parse_nth_scheduling_mode (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</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> index</code></em>);</pre>
+<p>
+Parse an available query and get the scheduling mode
+at <em class="parameter"><code>index</code></em> of the scheduling modes array.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_SCHEDULING type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>position in the scheduling modes array to read</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a <a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> of the scheduling mode at <em class="parameter"><code>index</code></em>.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-has-scheduling-mode"></a><h3>gst_query_has_scheduling_mode ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_query_has_scheduling_mode (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="GstPad.html#GstPadMode" title="enum GstPadMode"><span class="type">GstPadMode</span></a> mode</code></em>);</pre>
+<p>
+Check if <em class="parameter"><code>query</code></em> has scheduling mode set.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a GST_QUERY_SCHEDULING type query <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mode</code></em> :</span></p></td>
+<td>the scheduling mode</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>TRUE when <em class="parameter"><code>mode</code></em> is in the list of scheduling modes.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-new-drain"></a><h3>gst_query_new_drain ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * gst_query_new_drain (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+Constructs a new query object for querying the drain state.
+</p>
+<p>
+Free-function: gst_query_unref
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a new <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></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-query-new-toc"></a><h3>gst_query_new_toc ()</h3>
+<pre class="programlisting"><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="returnvalue">GstQuery</span></a> * gst_query_new_toc (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+Constructs a new query TOC query object. Use <a class="link" href="gstreamer-GstQuery.html#gst-query-unref" title="gst_query_unref ()"><code class="function">gst_query_unref()</code></a>
+when done with it. A TOC query is used to query the full TOC with
+the UID marker for TOC extending (to insert some new entries).
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>A <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>.</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-parse-toc"></a><h3>gst_query_parse_toc ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_parse_toc (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstToc.html#GstToc" title="struct GstToc"><span class="type">GstToc</span></a> **toc</code></em>,
+ <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **extend_uid</code></em>);</pre>
+<p>
+Parse a TOC query, writing the TOC into <em class="parameter"><code>toc</code></em> as a newly
+allocated <a class="link" href="gstreamer-GstToc.html#GstToc" title="struct GstToc"><span class="type">GstToc</span></a> and extend UID into <em class="parameter"><code>extend_uid</code></em>, if the respective parameters
+are non-NULL. Use <em class="parameter"><code>extend_uid</code></em> value to insert new entries into the TOC (<em class="parameter"><code>extend_uid</code></em> will
+act as root entry for newly inserted entries).
+Free <em class="parameter"><code>toc</code></em> with <a class="link" href="gstreamer-GstToc.html#gst-toc-free" title="gst_toc_free ()"><code class="function">gst_toc_free()</code></a> and <em class="parameter"><code>extend_uid</code></em> with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>toc</code></em> :</span></p></td>
+<td>the storage for the received TOC (may be NULL). <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>extend_uid</code></em> :</span></p></td>
+<td>the storage for the received extend UID marker (may be NULL),
+0 means root TOC level. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gst-query-set-toc"></a><h3>gst_query_set_toc ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gst_query_set_toc (<em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>,
+ <em class="parameter"><code><a class="link" href="gstreamer-GstToc.html#GstToc" title="struct GstToc"><span class="type">GstToc</span></a> *toc</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> *extend_uid</code></em>);</pre>
+<p>
+Answer a TOC query by setting appropriate <a class="link" href="gstreamer-GstToc.html#GstToc" title="struct GstToc"><span class="type">GstToc</span></a> structure.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td>
+<td>a <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> with query type GST_QUERY_TOC.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>toc</code></em> :</span></p></td>
+<td>the GstToc to set.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>extend_uid</code></em> :</span></p></td>
+<td>UID which can be used for TOC extending (may be NULL),
+0 means root TOC level.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
</div>
<div class="refsect1">
<a name="gstreamer-GstQuery.see-also"></a><h2>See Also</h2>