| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>GstEvent: GStreamer 1.0 Core Reference Manual</title> |
| <meta name="generator" content="DocBook XSL Stylesheets V1.78.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="gstreamer-GstGError.html" title="GstGError"> |
| <link rel="next" href="gstreamer-GstFormat.html" title="GstFormat"> |
| <meta name="generator" content="GTK-Doc V1.24 (XML mode)"> |
| <link rel="stylesheet" href="style.css" type="text/css"> |
| </head> |
| <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> |
| <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> |
| <td width="100%" align="left" class="shortcuts"> |
| <a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> |
| <a href="#GstEvent.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> |
| <a href="#GstEvent.object-hierarchy" class="shortcut">Object Hierarchy</a></span> |
| </td> |
| <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> |
| <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> |
| <td><a accesskey="p" href="gstreamer-GstGError.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> |
| <td><a accesskey="n" href="gstreamer-GstFormat.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> |
| </tr></table> |
| <div class="refentry"> |
| <a name="GstEvent"></a><div class="titlepage"></div> |
| <div class="refnamediv"><table width="100%"><tr> |
| <td valign="top"> |
| <h2><span class="refentrytitle"><a name="GstEvent.top_of_page"></a>GstEvent</span></h2> |
| <p>GstEvent — Structure describing events that are passed up and down |
| a pipeline</p> |
| </td> |
| <td class="gallery_image" valign="top" align="right"></td> |
| </tr></table></div> |
| <div class="refsect1"> |
| <a name="GstEvent.functions"></a><h2>Functions</h2> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="functions_return"> |
| <col class="functions_name"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-MAKE-TYPE:CAPS" title="GST_EVENT_MAKE_TYPE()">GST_EVENT_MAKE_TYPE</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-TYPE:CAPS" title="GST_EVENT_TYPE()">GST_EVENT_TYPE</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-TYPE-NAME:CAPS" title="GST_EVENT_TYPE_NAME()">GST_EVENT_TYPE_NAME</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-TIMESTAMP:CAPS" title="GST_EVENT_TIMESTAMP()">GST_EVENT_TIMESTAMP</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-SEQNUM:CAPS" title="GST_EVENT_SEQNUM()">GST_EVENT_SEQNUM</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-IS-UPSTREAM:CAPS" title="GST_EVENT_IS_UPSTREAM()">GST_EVENT_IS_UPSTREAM</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-IS-DOWNSTREAM:CAPS" title="GST_EVENT_IS_DOWNSTREAM()">GST_EVENT_IS_DOWNSTREAM</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-IS-SERIALIZED:CAPS" title="GST_EVENT_IS_SERIALIZED()">GST_EVENT_IS_SERIALIZED</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#GST-EVENT-IS-STICKY:CAPS" title="GST_EVENT_IS_STICKY()">GST_EVENT_IS_STICKY</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html#GstEventTypeFlags" title="enum GstEventTypeFlags"><span class="returnvalue">GstEventTypeFlags</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-type-get-flags" title="gst_event_type_get_flags ()">gst_event_type_get_flags</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-type-get-name" title="gst_event_type_get_name ()">gst_event_type_get_name</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-type-to-quark" title="gst_event_type_to_quark ()">gst_event_type_to_quark</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-ref" title="gst_event_ref ()">gst_event_ref</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-unref" title="gst_event_unref ()">gst_event_unref</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-replace" title="gst_event_replace ()">gst_event_replace</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-copy" title="gst_event_copy ()">gst_event_copy</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-steal" title="gst_event_steal ()">gst_event_steal</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-take" title="gst_event_take ()">gst_event_take</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-is-writable" title="gst_event_is_writable()">gst_event_is_writable</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-make-writable" title="gst_event_make_writable()">gst_event_make_writable</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-writable-structure" title="gst_event_writable_structure ()">gst_event_writable_structure</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-custom" title="gst_event_new_custom ()">gst_event_new_custom</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type">const <a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-get-structure" title="gst_event_get_structure ()">gst_event_get_structure</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-has-name" title="gst_event_has_name ()">gst_event_has_name</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">guint32</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-get-seqnum" title="gst_event_get_seqnum ()">gst_event_get_seqnum</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-set-seqnum" title="gst_event_set_seqnum ()">gst_event_set_seqnum</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">gint64</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-get-running-time-offset" title="gst_event_get_running_time_offset ()">gst_event_get_running_time_offset</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-set-running-time-offset" title="gst_event_set_running_time_offset ()">gst_event_set_running_time_offset</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-flush-start" title="gst_event_new_flush_start ()">gst_event_new_flush_start</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-flush-stop" title="gst_event_new_flush_stop ()">gst_event_new_flush_stop</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-flush-stop" title="gst_event_parse_flush_stop ()">gst_event_parse_flush_stop</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-eos" title="gst_event_new_eos ()">gst_event_new_eos</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-gap" title="gst_event_new_gap ()">gst_event_new_gap</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-gap" title="gst_event_parse_gap ()">gst_event_parse_gap</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-stream-start" title="gst_event_new_stream_start ()">gst_event_new_stream_start</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-stream-start" title="gst_event_parse_stream_start ()">gst_event_parse_stream_start</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-set-stream-flags" title="gst_event_set_stream_flags ()">gst_event_set_stream_flags</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-stream-flags" title="gst_event_parse_stream_flags ()">gst_event_parse_stream_flags</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-set-group-id" title="gst_event_set_group_id ()">gst_event_set_group_id</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-group-id" title="gst_event_parse_group_id ()">gst_event_parse_group_id</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-segment" title="gst_event_new_segment ()">gst_event_new_segment</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-segment" title="gst_event_parse_segment ()">gst_event_parse_segment</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-copy-segment" title="gst_event_copy_segment ()">gst_event_copy_segment</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-tag" title="gst_event_new_tag ()">gst_event_new_tag</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-tag" title="gst_event_parse_tag ()">gst_event_parse_tag</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-buffer-size" title="gst_event_new_buffer_size ()">gst_event_new_buffer_size</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-buffer-size" title="gst_event_parse_buffer_size ()">gst_event_parse_buffer_size</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-qos" title="gst_event_new_qos ()">gst_event_new_qos</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-qos" title="gst_event_parse_qos ()">gst_event_parse_qos</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-seek" title="gst_event_new_seek ()">gst_event_new_seek</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-seek" title="gst_event_parse_seek ()">gst_event_parse_seek</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-navigation" title="gst_event_new_navigation ()">gst_event_new_navigation</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-latency" title="gst_event_new_latency ()">gst_event_new_latency</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-latency" title="gst_event_parse_latency ()">gst_event_parse_latency</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-step" title="gst_event_new_step ()">gst_event_new_step</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-step" title="gst_event_parse_step ()">gst_event_parse_step</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-sink-message" title="gst_event_new_sink_message ()">gst_event_new_sink_message</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-sink-message" title="gst_event_parse_sink_message ()">gst_event_parse_sink_message</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-reconfigure" title="gst_event_new_reconfigure ()">gst_event_new_reconfigure</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-caps" title="gst_event_new_caps ()">gst_event_new_caps</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-caps" title="gst_event_parse_caps ()">gst_event_parse_caps</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-toc" title="gst_event_new_toc ()">gst_event_new_toc</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-toc" title="gst_event_parse_toc ()">gst_event_parse_toc</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-toc-select" title="gst_event_new_toc_select ()">gst_event_new_toc_select</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-toc-select" title="gst_event_parse_toc_select ()">gst_event_parse_toc_select</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-segment-done" title="gst_event_new_segment_done ()">gst_event_new_segment_done</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-segment-done" title="gst_event_parse_segment_done ()">gst_event_parse_segment_done</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-new-protection" title="gst_event_new_protection ()">gst_event_new_protection</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstEvent.html#gst-event-parse-protection" title="gst_event_parse_protection ()">gst_event_parse_protection</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstEvent.other"></a><h2>Types and Values</h2> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="name"> |
| <col class="description"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="datatype_keyword">struct</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GstEvent-struct" title="struct GstEvent">GstEvent</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GstEventTypeFlags" title="enum GstEventTypeFlags">GstEventTypeFlags</a></td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GST-EVENT-TYPE-BOTH:CAPS" title="GST_EVENT_TYPE_BOTH">GST_EVENT_TYPE_BOTH</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType">GstEventType</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags">GstStreamFlags</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GstQOSType" title="enum GstQOSType">GstQOSType</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GstSeekType" title="enum GstSeekType">GstSeekType</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="GstEvent.html#GstSeekFlags" title="enum GstSeekFlags">GstSeekFlags</a></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstEvent.object-hierarchy"></a><h2>Object Hierarchy</h2> |
| <pre class="screen"> <a href="https://developer.gnome.org/gobject/unstable/gobject-Boxed-Types.html">GBoxed</a> |
| <span class="lineart">╰──</span> GstEvent |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="GstEvent.includes"></a><h2>Includes</h2> |
| <pre class="synopsis">#include <gst/gst.h> |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="GstEvent.description"></a><h2>Description</h2> |
| <p>The event class provides factory methods to construct events for sending |
| and functions to query (parse) received events.</p> |
| <p>Events are usually created with gst_event_new_*() which takes event-type |
| specific parameters as arguments. |
| To send an event application will usually use <a class="link" href="GstElement.html#gst-element-send-event" title="gst_element_send_event ()"><code class="function">gst_element_send_event()</code></a> and |
| elements will use <a class="link" href="GstPad.html#gst-pad-send-event" title="gst_pad_send_event ()"><code class="function">gst_pad_send_event()</code></a> or <a class="link" href="GstPad.html#gst-pad-push-event" title="gst_pad_push_event ()"><code class="function">gst_pad_push_event()</code></a>. |
| The event should be unreffed with <a class="link" href="GstEvent.html#gst-event-unref" title="gst_event_unref ()"><code class="function">gst_event_unref()</code></a> if it has not been sent.</p> |
| <p>Events that have been received can be parsed with their respective |
| gst_event_parse_*() functions. It is valid to pass <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for unwanted details.</p> |
| <p>Events are passed between elements in parallel to the data stream. Some events |
| are serialized with buffers, others are not. Some events only travel downstream, |
| others only upstream. Some events can travel both upstream and downstream.</p> |
| <p>The events are used to signal special conditions in the datastream such as |
| EOS (end of stream) or the start of a new stream-segment. |
| Events are also used to flush the pipeline of any pending data.</p> |
| <p>Most of the event API is used inside plugins. Applications usually only |
| construct and use seek events. |
| To do that <a class="link" href="GstEvent.html#gst-event-new-seek" title="gst_event_new_seek ()"><code class="function">gst_event_new_seek()</code></a> is used to create a seek event. It takes |
| the needed parameters to specify seeking time and mode.</p> |
| <div class="informalexample"> |
| <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 |
| 14 |
| 15</pre></td> |
| <td class="listing_code"><pre class="programlisting">GstEvent <span class="gtkdoc opt">*</span>event<span class="gtkdoc opt">;</span> |
| gboolean result<span class="gtkdoc opt">;</span> |
| <span class="gtkdoc opt">...</span> |
| <span class="gtkdoc slc">// construct a seek event to play the media from second 2 to 5, flush</span> |
| <span class="gtkdoc slc">// the pipeline to decrease latency.</span> |
| event <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstEvent.html#gst-event-new-seek">gst_event_new_seek</a></span> <span class="gtkdoc opt">(</span><span class="number">1.0</span><span class="gtkdoc opt">,</span> |
| GST_FORMAT_TIME<span class="gtkdoc opt">,</span> |
| GST_SEEK_FLAG_FLUSH<span class="gtkdoc opt">,</span> |
| GST_SEEK_TYPE_SET<span class="gtkdoc opt">,</span> <span class="number">2</span> <span class="gtkdoc opt">*</span> GST_SECOND<span class="gtkdoc opt">,</span> |
| GST_SEEK_TYPE_SET<span class="gtkdoc opt">,</span> <span class="number">5</span> <span class="gtkdoc opt">*</span> GST_SECOND<span class="gtkdoc opt">);</span> |
| <span class="gtkdoc opt">...</span> |
| result <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-send-event">gst_element_send_event</a></span> <span class="gtkdoc opt">(</span>pipeline<span class="gtkdoc opt">,</span> event<span class="gtkdoc opt">);</span> |
| <span class="keyword">if</span> <span class="gtkdoc opt">(!</span>result<span class="gtkdoc opt">)</span> |
| <span class="function"><a href="https://developer.gnome.org/glib/unstable/glib-Message-Logging.html#g-warning">g_warning</a></span> <span class="gtkdoc opt">(</span><span class="string">"seek failed"</span><span class="gtkdoc opt">);</span> |
| <span class="gtkdoc opt">...</span></pre></td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| <p></p> |
| </div> |
| <div class="refsect1"> |
| <a name="GstEvent.functions_details"></a><h2>Functions</h2> |
| <div class="refsect2"> |
| <a name="GST-EVENT-MAKE-TYPE:CAPS"></a><h3>GST_EVENT_MAKE_TYPE()</h3> |
| <pre class="programlisting">#define GST_EVENT_MAKE_TYPE(num,flags)</pre> |
| <p>when making custom event types, use this macro with the num and |
| the given flags</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.2.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>num</p></td> |
| <td class="parameter_description"><p>the event number to create</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>flags</p></td> |
| <td class="parameter_description"><p>the event flags</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-TYPE:CAPS"></a><h3>GST_EVENT_TYPE()</h3> |
| <pre class="programlisting">#define GST_EVENT_TYPE(event) (GST_EVENT_CAST(event)->type) |
| </pre> |
| <p>Get the <a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> of the event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.3.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-TYPE-NAME:CAPS"></a><h3>GST_EVENT_TYPE_NAME()</h3> |
| <pre class="programlisting">#define GST_EVENT_TYPE_NAME(event) (gst_event_type_get_name(GST_EVENT_TYPE(event))) |
| </pre> |
| <p>Get a constant string representation of the <a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> of the event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.4.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-TIMESTAMP:CAPS"></a><h3>GST_EVENT_TIMESTAMP()</h3> |
| <pre class="programlisting">#define GST_EVENT_TIMESTAMP(event) (GST_EVENT_CAST(event)->timestamp) |
| </pre> |
| <p>Get the <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp of the event. This is the time when the event |
| was created.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.5.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-SEQNUM:CAPS"></a><h3>GST_EVENT_SEQNUM()</h3> |
| <pre class="programlisting">#define GST_EVENT_SEQNUM(event) (GST_EVENT_CAST(event)->seqnum) |
| </pre> |
| <p>The sequence number of <em class="parameter"><code>event</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.6.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-IS-UPSTREAM:CAPS"></a><h3>GST_EVENT_IS_UPSTREAM()</h3> |
| <pre class="programlisting">#define GST_EVENT_IS_UPSTREAM(ev) !!(GST_EVENT_TYPE (ev) & GST_EVENT_TYPE_UPSTREAM) |
| </pre> |
| <p>Check if an event can travel upstream.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.7.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>ev</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-IS-DOWNSTREAM:CAPS"></a><h3>GST_EVENT_IS_DOWNSTREAM()</h3> |
| <pre class="programlisting">#define GST_EVENT_IS_DOWNSTREAM(ev) !!(GST_EVENT_TYPE (ev) & GST_EVENT_TYPE_DOWNSTREAM) |
| </pre> |
| <p>Check if an event can travel downstream.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.8.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>ev</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-IS-SERIALIZED:CAPS"></a><h3>GST_EVENT_IS_SERIALIZED()</h3> |
| <pre class="programlisting">#define GST_EVENT_IS_SERIALIZED(ev) !!(GST_EVENT_TYPE (ev) & GST_EVENT_TYPE_SERIALIZED) |
| </pre> |
| <p>Check if an event is serialized with the data stream.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.9.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>ev</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-EVENT-IS-STICKY:CAPS"></a><h3>GST_EVENT_IS_STICKY()</h3> |
| <pre class="programlisting">#define GST_EVENT_IS_STICKY(ev) !!(GST_EVENT_TYPE (ev) & GST_EVENT_TYPE_STICKY) |
| </pre> |
| <p>Check if an event is sticky on the pads.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.10.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>ev</p></td> |
| <td class="parameter_description"><p>the event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-type-get-flags"></a><h3>gst_event_type_get_flags ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html#GstEventTypeFlags" title="enum GstEventTypeFlags"><span class="returnvalue">GstEventTypeFlags</span></a> |
| gst_event_type_get_flags (<em class="parameter"><code><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> type</code></em>);</pre> |
| <p>Gets the <a class="link" href="GstEvent.html#GstEventTypeFlags" title="enum GstEventTypeFlags"><span class="type">GstEventTypeFlags</span></a> associated with <em class="parameter"><code>type</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.11.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>type</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.11.6"></a><h4>Returns</h4> |
| <p> a <a class="link" href="GstEvent.html#GstEventTypeFlags" title="enum GstEventTypeFlags"><span class="type">GstEventTypeFlags</span></a>.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-type-get-name"></a><h3>gst_event_type_get_name ()</h3> |
| <pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * |
| gst_event_type_get_name (<em class="parameter"><code><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> type</code></em>);</pre> |
| <p>Get a printable name for the given event type. Do not modify or free.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.12.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>type</p></td> |
| <td class="parameter_description"><p>the event type</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.12.6"></a><h4>Returns</h4> |
| <p> a reference to the static name of the event.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-type-to-quark"></a><h3>gst_event_type_to_quark ()</h3> |
| <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> |
| gst_event_type_to_quark (<em class="parameter"><code><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> type</code></em>);</pre> |
| <p>Get the unique quark for the given event type.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.13.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>type</p></td> |
| <td class="parameter_description"><p>the event type</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.13.6"></a><h4>Returns</h4> |
| <p> the quark associated with the event type</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-ref"></a><h3>gst_event_ref ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_ref (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Increase the refcount of this event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.14.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The event to refcount</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.14.6"></a><h4>Returns</h4> |
| <p> <em class="parameter"><code>event</code></em> |
| (for convenience when doing assignments). </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-unref"></a><h3>gst_event_unref ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_unref (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Decrease the refcount of an event, freeing it if the refcount reaches 0.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.15.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p> the event to refcount. </p></td> |
| <td class="parameter_annotations"><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> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-replace"></a><h3>gst_event_replace ()</h3> |
| <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_event_replace (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> **old_event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *new_event</code></em>);</pre> |
| <p>Modifies a pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to point to a different <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. The |
| modification is done atomically (so this is useful for ensuring thread safety |
| in some cases), and the reference counts are updated appropriately (the old |
| event is unreffed, the new one is reffed).</p> |
| <p>Either <em class="parameter"><code>new_event</code></em> |
| or the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> pointed to by <em class="parameter"><code>old_event</code></em> |
| may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.16.6"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>old_event</p></td> |
| <td class="parameter_description"><p> pointer to a |
| pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to be replaced. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>new_event</p></td> |
| <td class="parameter_description"><p> pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> that will |
| replace the event pointed to by <em class="parameter"><code>old_event</code></em> |
| . </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.16.7"></a><h4>Returns</h4> |
| <p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_event</code></em> |
| was different from <em class="parameter"><code>old_event</code></em> |
| </p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-copy"></a><h3>gst_event_copy ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_copy (<em class="parameter"><code>const <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Copy the event using the event specific copy function.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.17.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The event to copy</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.17.6"></a><h4>Returns</h4> |
| <p> the new event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-steal"></a><h3>gst_event_steal ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_steal (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> **old_event</code></em>);</pre> |
| <p>Atomically replace the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> pointed to by <em class="parameter"><code>old_event</code></em> |
| with <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and |
| return the original event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.18.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>old_event</p></td> |
| <td class="parameter_description"><p> pointer to a |
| pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to be stolen. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.18.6"></a><h4>Returns</h4> |
| <p> the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> that was in <em class="parameter"><code>old_event</code></em> |
| </p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-take"></a><h3>gst_event_take ()</h3> |
| <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_event_take (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> **old_event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *new_event</code></em>);</pre> |
| <p>Modifies a pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to point to a different <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. This |
| function is similar to <a class="link" href="GstEvent.html#gst-event-replace" title="gst_event_replace ()"><code class="function">gst_event_replace()</code></a> except that it takes ownership of |
| <em class="parameter"><code>new_event</code></em> |
| .</p> |
| <p>Either <em class="parameter"><code>new_event</code></em> |
| or the <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> pointed to by <em class="parameter"><code>old_event</code></em> |
| may be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.19.6"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>old_event</p></td> |
| <td class="parameter_description"><p> pointer to a |
| pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> to be stolen. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>new_event</p></td> |
| <td class="parameter_description"><p> pointer to a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> that will |
| replace the event pointed to by <em class="parameter"><code>old_event</code></em> |
| . </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.19.7"></a><h4>Returns</h4> |
| <p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>new_event</code></em> |
| was different from <em class="parameter"><code>old_event</code></em> |
| </p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-is-writable"></a><h3>gst_event_is_writable()</h3> |
| <pre class="programlisting">#define gst_event_is_writable(ev) gst_mini_object_is_writable (GST_MINI_OBJECT_CAST (ev)) |
| </pre> |
| <p>Tests if you can safely write data into a event's structure or validly |
| modify the seqnum and timestamp field.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.20.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>ev</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-make-writable"></a><h3>gst_event_make_writable()</h3> |
| <pre class="programlisting">#define gst_event_make_writable(ev) GST_EVENT_CAST (gst_mini_object_make_writable (GST_MINI_OBJECT_CAST (ev))) |
| </pre> |
| <p>Makes a writable event from the given event. If the source event is |
| already writable, this will simply return the same event. A copy will |
| otherwise be made using <a class="link" href="GstEvent.html#gst-event-copy" title="gst_event_copy ()"><code class="function">gst_event_copy()</code></a>.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.21.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>ev</p></td> |
| <td class="parameter_description"><p> a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. </p></td> |
| <td class="parameter_annotations"><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> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.21.6"></a><h4>Returns</h4> |
| <p> a writable event which may or may not be the |
| same as <em class="parameter"><code>ev</code></em> |
| . </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-writable-structure"></a><h3>gst_event_writable_structure ()</h3> |
| <pre class="programlisting"><a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> * |
| gst_event_writable_structure (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Get a writable version of the structure.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.22.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.22.6"></a><h4>Returns</h4> |
| <p> The structure of the event. The structure |
| is still owned by the event, which means that you should not free |
| it and that the pointer becomes invalid when you free the event. |
| This function checks if <em class="parameter"><code>event</code></em> |
| is writable and will never return |
| <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p> |
| <p>MT safe. </p> |
| <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-custom"></a><h3>gst_event_new_custom ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_custom (<em class="parameter"><code><a class="link" href="GstEvent.html#GstEventType" title="enum GstEventType"><span class="type">GstEventType</span></a> type</code></em>, |
| <em class="parameter"><code><a class="link" href="GstStructure.html" title="GstStructure"><span class="type">GstStructure</span></a> *structure</code></em>);</pre> |
| <p>Create a new custom-typed event. This can be used for anything not |
| handled by other event-specific functions to pass an event to another |
| element.</p> |
| <p>Make sure to allocate an event type with the <a class="link" href="GstEvent.html#GST-EVENT-MAKE-TYPE:CAPS" title="GST_EVENT_MAKE_TYPE()"><span class="type">GST_EVENT_MAKE_TYPE</span></a> macro, |
| assigning a free number and filling in the correct direction and |
| serialization flags.</p> |
| <p>New custom events can also be created by subclassing the event type if |
| needed.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.23.7"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>type</p></td> |
| <td class="parameter_description"><p>The type of the new event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>structure</p></td> |
| <td class="parameter_description"><p> the structure for the event. The event will |
| take ownership of the structure. </p></td> |
| <td class="parameter_annotations"><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> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.23.8"></a><h4>Returns</h4> |
| <p> the new custom event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-get-structure"></a><h3>gst_event_get_structure ()</h3> |
| <pre class="programlisting">const <a class="link" href="GstStructure.html" title="GstStructure"><span class="returnvalue">GstStructure</span></a> * |
| gst_event_get_structure (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Access the structure of the event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.24.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.24.6"></a><h4>Returns</h4> |
| <p> The structure of the event. The structure is still |
| owned by the event, which means that you should not free it and |
| that the pointer becomes invalid when you free the event.</p> |
| <p>MT safe.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-has-name"></a><h3>gst_event_has_name ()</h3> |
| <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_event_has_name (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre> |
| <p>Checks if <em class="parameter"><code>event</code></em> |
| has the given <em class="parameter"><code>name</code></em> |
| . This function is usually used to |
| check the name of a custom event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.25.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>name</p></td> |
| <td class="parameter_description"><p>name to check</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.25.6"></a><h4>Returns</h4> |
| <p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>name</code></em> |
| matches the name of the event structure.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-get-seqnum"></a><h3>gst_event_get_seqnum ()</h3> |
| <pre class="programlisting"><span class="returnvalue">guint32</span> |
| gst_event_get_seqnum (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Retrieve the sequence number of a event.</p> |
| <p>Events have ever-incrementing sequence numbers, which may also be set |
| explicitly via <a class="link" href="GstEvent.html#gst-event-set-seqnum" title="gst_event_set_seqnum ()"><code class="function">gst_event_set_seqnum()</code></a>. Sequence numbers are typically used to |
| indicate that a event corresponds to some other set of events or messages, |
| for example an EOS event corresponding to a SEEK event. It is considered good |
| practice to make this correspondence when possible, though it is not |
| required.</p> |
| <p>Note that events and messages share the same sequence number incrementor; |
| two events or messages will never have the same sequence number unless |
| that correspondence was made explicitly.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.26.7"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>A <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.26.8"></a><h4>Returns</h4> |
| <p> The event's sequence number.</p> |
| <p>MT safe.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-set-seqnum"></a><h3>gst_event_set_seqnum ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_set_seqnum (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><span class="type">guint32</span> seqnum</code></em>);</pre> |
| <p>Set the sequence number of a event.</p> |
| <p>This function might be called by the creator of a event to indicate that the |
| event relates to other events or messages. See <a class="link" href="GstEvent.html#gst-event-get-seqnum" title="gst_event_get_seqnum ()"><code class="function">gst_event_get_seqnum()</code></a> for |
| more information.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.27.7"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>A <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>seqnum</p></td> |
| <td class="parameter_description"><p>A sequence number.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-get-running-time-offset"></a><h3>gst_event_get_running_time_offset ()</h3> |
| <pre class="programlisting"><span class="returnvalue">gint64</span> |
| gst_event_get_running_time_offset (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Retrieve the accumulated running time offset of the event.</p> |
| <p>Events passing through <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPads</span></a> that have a running time |
| offset set via <a class="link" href="GstPad.html#gst-pad-set-offset" title="gst_pad_set_offset ()"><code class="function">gst_pad_set_offset()</code></a> will get their offset |
| adjusted according to the pad's offset.</p> |
| <p>If the event contains any information that related to the |
| running time, this information will need to be updated |
| before usage with this offset.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.28.7"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>A <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.28.8"></a><h4>Returns</h4> |
| <p> The event's running time offset</p> |
| <p>MT safe.</p> |
| </div> |
| <p class="since">Since: <a class="link" href="ix04.html#api-index-1.4">1.4</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-set-running-time-offset"></a><h3>gst_event_set_running_time_offset ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_set_running_time_offset (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> offset</code></em>);</pre> |
| <p>Set the running time offset of a event. See |
| <a class="link" href="GstEvent.html#gst-event-get-running-time-offset" title="gst_event_get_running_time_offset ()"><code class="function">gst_event_get_running_time_offset()</code></a> for more information.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.29.6"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>A <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>offset</p></td> |
| <td class="parameter_description"><p>A the new running time offset</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix04.html#api-index-1.4">1.4</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-flush-start"></a><h3>gst_event_new_flush_start ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_flush_start (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> |
| <p>Allocate a new flush start event. The flush start event can be sent |
| upstream and downstream and travels out-of-bounds with the dataflow.</p> |
| <p>It marks pads as being flushing and will make them return |
| <a class="link" href="GstPad.html#GST-FLOW-FLUSHING:CAPS"><span class="type">GST_FLOW_FLUSHING</span></a> when used for data flow with <a class="link" href="GstPad.html#gst-pad-push" title="gst_pad_push ()"><code class="function">gst_pad_push()</code></a>, |
| <a class="link" href="GstPad.html#gst-pad-chain" title="gst_pad_chain ()"><code class="function">gst_pad_chain()</code></a>, <a class="link" href="GstPad.html#gst-pad-get-range" title="gst_pad_get_range ()"><code class="function">gst_pad_get_range()</code></a> and <a class="link" href="GstPad.html#gst-pad-pull-range" title="gst_pad_pull_range ()"><code class="function">gst_pad_pull_range()</code></a>. |
| Any event (except a <a class="link" href="GstEvent.html#GST-EVENT-FLUSH-STOP:CAPS"><span class="type">GST_EVENT_FLUSH_STOP</span></a>) received |
| on a flushing pad will return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> immediately.</p> |
| <p>Elements should unlock any blocking functions and exit their streaming |
| functions as fast as possible when this event is received.</p> |
| <p>This event is typically generated after a seek to flush out all queued data |
| in the pipeline so that the new media is played as soon as possible.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.30.8"></a><h4>Returns</h4> |
| <p> a new flush start event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-flush-stop"></a><h3>gst_event_new_flush_stop ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_flush_stop (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> reset_time</code></em>);</pre> |
| <p>Allocate a new flush stop event. The flush stop event can be sent |
| upstream and downstream and travels serialized with the dataflow. |
| It is typically sent after sending a FLUSH_START event to make the |
| pads accept data again.</p> |
| <p>Elements can process this event synchronized with the dataflow since |
| the preceding FLUSH_START event stopped the dataflow.</p> |
| <p>This event is typically generated to complete a seek and to resume |
| dataflow.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.31.7"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>reset_time</p></td> |
| <td class="parameter_description"><p>if time should be reset</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.31.8"></a><h4>Returns</h4> |
| <p> a new flush stop event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-flush-stop"></a><h3>gst_event_parse_flush_stop ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_flush_stop (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *reset_time</code></em>);</pre> |
| <p>Parse the FLUSH_STOP event and retrieve the <em class="parameter"><code>reset_time</code></em> |
| member.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.32.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The event to parse</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>reset_time</p></td> |
| <td class="parameter_description"><p> if time should be reset. </p></td> |
| <td class="parameter_annotations"><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> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-eos"></a><h3>gst_event_new_eos ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_eos (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> |
| <p>Create a new EOS event. The eos event can only travel downstream |
| synchronized with the buffer flow. Elements that receive the EOS |
| event on a pad can return <a class="link" href="GstPad.html#GST-FLOW-EOS:CAPS"><span class="type">GST_FLOW_EOS</span></a> as a <a class="link" href="GstPad.html#GstFlowReturn" title="enum GstFlowReturn"><span class="type">GstFlowReturn</span></a> |
| when data after the EOS event arrives.</p> |
| <p>The EOS event will travel down to the sink elements in the pipeline |
| which will then post the <a class="link" href="GstMessage.html#GST-MESSAGE-EOS:CAPS"><span class="type">GST_MESSAGE_EOS</span></a> on the bus after they have |
| finished playing any buffered data.</p> |
| <p>When all sinks have posted an EOS message, an EOS message is |
| forwarded to the application.</p> |
| <p>The EOS event itself will not cause any state transitions of the pipeline.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.33.8"></a><h4>Returns</h4> |
| <p> the new EOS event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-gap"></a><h3>gst_event_new_gap ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_gap (<em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> duration</code></em>);</pre> |
| <p>Create a new GAP event. A gap event can be thought of as conceptually |
| equivalent to a buffer to signal that there is no data for a certain |
| amount of time. This is useful to signal a gap to downstream elements |
| which may wait for data, such as muxers or mixers or overlays, especially |
| for sparse streams such as subtitle streams.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.34.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>timestamp</p></td> |
| <td class="parameter_description"><p>the start time (pts) of the gap</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>duration</p></td> |
| <td class="parameter_description"><p>the duration of the gap</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.34.6"></a><h4>Returns</h4> |
| <p> the new GAP event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-gap"></a><h3>gst_event_parse_gap ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_gap (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> *timestamp</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> *duration</code></em>);</pre> |
| <p>Extract timestamp and duration from a new GAP event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.35.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> of type <a class="link" href="GstEvent.html#GST-EVENT-GAP:CAPS"><span class="type">GST_EVENT_GAP</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>timestamp</p></td> |
| <td class="parameter_description"><p> location where to store the |
| start time (pts) of the gap, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td> |
| <td class="parameter_annotations"><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 class="parameter_name"><p>duration</p></td> |
| <td class="parameter_description"><p> location where to store the duration of |
| the gap, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td> |
| <td class="parameter_annotations"><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> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-stream-start"></a><h3>gst_event_new_stream_start ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_stream_start (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stream_id</code></em>);</pre> |
| <p>Create a new STREAM_START event. The stream start event can only |
| travel downstream synchronized with the buffer flow. It is expected |
| to be the first event that is sent for a new stream.</p> |
| <p>Source elements, demuxers and other elements that create new streams |
| are supposed to send this event as the first event of a new stream. It |
| should not be sent after a flushing seek or in similar situations |
| and is used to mark the beginning of a new logical stream. Elements |
| combining multiple streams must ensure that this event is only forwarded |
| downstream once and not for every single input stream.</p> |
| <p>The <em class="parameter"><code>stream_id</code></em> |
| should be a unique string that consists of the upstream |
| stream-id, / as separator and a unique stream-id for this specific |
| stream. A new stream-id should only be created for a stream if the upstream |
| stream is split into (potentially) multiple new streams, e.g. in a demuxer, |
| but not for every single element in the pipeline. |
| <a class="link" href="GstPad.html#gst-pad-create-stream-id" title="gst_pad_create_stream_id ()"><code class="function">gst_pad_create_stream_id()</code></a> or <a class="link" href="GstPad.html#gst-pad-create-stream-id-printf" title="gst_pad_create_stream_id_printf ()"><code class="function">gst_pad_create_stream_id_printf()</code></a> can be |
| used to create a stream-id.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.36.7"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>stream_id</p></td> |
| <td class="parameter_description"><p>Identifier for this stream</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.36.8"></a><h4>Returns</h4> |
| <p> the new STREAM_START event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-stream-start"></a><h3>gst_event_parse_stream_start ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_stream_start (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **stream_id</code></em>);</pre> |
| <p>Parse a stream-id <em class="parameter"><code>event</code></em> |
| and store the result in the given <em class="parameter"><code>stream_id</code></em> |
| |
| location. The string stored in <em class="parameter"><code>stream_id</code></em> |
| must not be modified and will |
| remain valid only until <em class="parameter"><code>event</code></em> |
| gets freed. Make a copy if you want to |
| modify it or store it for later use.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.37.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>a stream-start event.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>stream_id</p></td> |
| <td class="parameter_description"><p> pointer to store the stream-id. </p></td> |
| <td class="parameter_annotations"><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>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-set-stream-flags"></a><h3>gst_event_set_stream_flags ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_set_stream_flags (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="type">GstStreamFlags</span></a> flags</code></em>);</pre> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.38.4"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>a stream-start event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>flags</p></td> |
| <td class="parameter_description"><p>the stream flags to set</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix06.html#api-index-1.2">1.2</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-stream-flags"></a><h3>gst_event_parse_stream_flags ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_stream_flags (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstEvent.html#GstStreamFlags" title="enum GstStreamFlags"><span class="type">GstStreamFlags</span></a> *flags</code></em>);</pre> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.39.4"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>a stream-start event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>flags</p></td> |
| <td class="parameter_description"><p> address of variable where to store the stream flags. </p></td> |
| <td class="parameter_annotations"><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> |
| <p class="since">Since: <a class="link" href="ix06.html#api-index-1.2">1.2</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-set-group-id"></a><h3>gst_event_set_group_id ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_set_group_id (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> group_id</code></em>);</pre> |
| <p>All streams that have the same group id are supposed to be played |
| together, i.e. all streams inside a container file should have the |
| same group id but different stream ids. The group id should change |
| each time the stream is started, resulting in different group ids |
| each time a file is played for example.</p> |
| <p>Use <a class="link" href="gstreamer-GstUtils.html#gst-util-group-id-next" title="gst_util_group_id_next ()"><code class="function">gst_util_group_id_next()</code></a> to get a new group id.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.40.6"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>a stream-start event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>group_id</p></td> |
| <td class="parameter_description"><p>the group id to set</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix06.html#api-index-1.2">1.2</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-group-id"></a><h3>gst_event_parse_group_id ()</h3> |
| <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_event_parse_group_id (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *group_id</code></em>);</pre> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.41.4"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>a stream-start event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>group_id</p></td> |
| <td class="parameter_description"><p> address of variable where to store the group id. </p></td> |
| <td class="parameter_annotations"><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> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.41.5"></a><h4>Returns</h4> |
| <p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a group id was set on the event and could be parsed, |
| <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p> |
| </div> |
| <p class="since">Since: <a class="link" href="ix06.html#api-index-1.2">1.2</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-segment"></a><h3>gst_event_new_segment ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_segment (<em class="parameter"><code>const <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> *segment</code></em>);</pre> |
| <p>Create a new SEGMENT event for <em class="parameter"><code>segment</code></em> |
| . The segment event can only travel |
| downstream synchronized with the buffer flow and contains timing information |
| and playback properties for the buffers that will follow.</p> |
| <p>The segment event marks the range of buffers to be processed. All |
| data not within the segment range is not to be processed. This can be |
| used intelligently by plugins to apply more efficient methods of skipping |
| unneeded data. The valid range is expressed with the <em class="parameter"><code>start</code></em> |
| and <em class="parameter"><code>stop</code></em> |
| |
| values.</p> |
| <p>The time value of the segment is used in conjunction with the start |
| value to convert the buffer timestamps into the stream time. This is |
| usually done in sinks to report the current stream_time. |
| <em class="parameter"><code>time</code></em> |
| represents the stream_time of a buffer carrying a timestamp of |
| <em class="parameter"><code>start</code></em> |
| . <em class="parameter"><code>time</code></em> |
| cannot be -1.</p> |
| <p><em class="parameter"><code>start</code></em> |
| cannot be -1, <em class="parameter"><code>stop</code></em> |
| can be -1. If there |
| is a valid <em class="parameter"><code>stop</code></em> |
| given, it must be greater or equal the <em class="parameter"><code>start</code></em> |
| , including |
| when the indicated playback <em class="parameter"><code>rate</code></em> |
| is < 0.</p> |
| <p>The <em class="parameter"><code>applied_rate</code></em> |
| value provides information about any rate adjustment that |
| has already been made to the timestamps and content on the buffers of the |
| stream. (<em class="parameter"><code>rate</code></em> |
| * <em class="parameter"><code>applied_rate</code></em> |
| ) should always equal the rate that has been |
| requested for playback. For example, if an element has an input segment |
| with intended playback <em class="parameter"><code>rate</code></em> |
| of 2.0 and applied_rate of 1.0, it can adjust |
| incoming timestamps and buffer content by half and output a segment event |
| with <em class="parameter"><code>rate</code></em> |
| of 1.0 and <em class="parameter"><code>applied_rate</code></em> |
| of 2.0</p> |
| <p>After a segment event, the buffer stream time is calculated with:</p> |
| <p> time + (TIMESTAMP(buf) - start) * ABS (rate * applied_rate)</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.42.11"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>segment</p></td> |
| <td class="parameter_description"><p> a <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a>. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.42.12"></a><h4>Returns</h4> |
| <p> the new SEGMENT event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-segment"></a><h3>gst_event_parse_segment ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_segment (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code>const <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> **segment</code></em>);</pre> |
| <p>Parses a segment <em class="parameter"><code>event</code></em> |
| and stores the result in the given <em class="parameter"><code>segment</code></em> |
| location. |
| <em class="parameter"><code>segment</code></em> |
| remains valid only until the <em class="parameter"><code>event</code></em> |
| is freed. Don't modify the segment |
| and make a copy if you want to modify it or store it for later use.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.43.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The event to parse</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>segment</p></td> |
| <td class="parameter_description"><p> a pointer to a <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a>. </p></td> |
| <td class="parameter_annotations"><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>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-copy-segment"></a><h3>gst_event_copy_segment ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_copy_segment (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> *segment</code></em>);</pre> |
| <p>Parses a segment <em class="parameter"><code>event</code></em> |
| and copies the <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a> into the location |
| given by <em class="parameter"><code>segment</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.44.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The event to parse</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>segment</p></td> |
| <td class="parameter_description"><p>a pointer to a <a class="link" href="GstSegment.html" title="GstSegment"><span class="type">GstSegment</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-tag"></a><h3>gst_event_new_tag ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_tag (<em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> *taglist</code></em>);</pre> |
| <p>Generates a metadata tag event from the given <em class="parameter"><code>taglist</code></em> |
| .</p> |
| <p>The scope of the taglist specifies if the taglist applies to the |
| complete medium or only to this specific stream. As the tag event |
| is a sticky event, elements should merge tags received from |
| upstream with a given scope with their own tags with the same |
| scope and create a new tag event from it.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.45.6"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>taglist</p></td> |
| <td class="parameter_description"><p> metadata list. The event will take ownership |
| of the taglist. </p></td> |
| <td class="parameter_annotations"><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> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.45.7"></a><h4>Returns</h4> |
| <p> a new <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-tag"></a><h3>gst_event_parse_tag ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_tag (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstTagList.html" title="GstTagList"><span class="type">GstTagList</span></a> **taglist</code></em>);</pre> |
| <p>Parses a tag <em class="parameter"><code>event</code></em> |
| and stores the results in the given <em class="parameter"><code>taglist</code></em> |
| location. |
| No reference to the taglist will be returned, it remains valid only until |
| the <em class="parameter"><code>event</code></em> |
| is freed. Don't modify or free the taglist, make a copy if you |
| want to modify it or store it for later use.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.46.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>a tag event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>taglist</p></td> |
| <td class="parameter_description"><p> pointer to metadata list. </p></td> |
| <td class="parameter_annotations"><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>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-buffer-size"></a><h3>gst_event_new_buffer_size ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_buffer_size (<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><span class="type">gint64</span> minsize</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> maxsize</code></em>, |
| <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> async</code></em>);</pre> |
| <p>Create a new buffersize event. The event is sent downstream and notifies |
| elements that they should provide a buffer of the specified dimensions.</p> |
| <p>When the <em class="parameter"><code>async</code></em> |
| flag is set, a thread boundary is preferred.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.47.6"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>format</p></td> |
| <td class="parameter_description"><p>buffer format</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>minsize</p></td> |
| <td class="parameter_description"><p>minimum buffer size</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>maxsize</p></td> |
| <td class="parameter_description"><p>maximum buffer size</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>async</p></td> |
| <td class="parameter_description"><p>thread behavior</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.47.7"></a><h4>Returns</h4> |
| <p> a new <a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a>. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-buffer-size"></a><h3>gst_event_parse_buffer_size ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_buffer_size (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</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><span class="type">gint64</span> *minsize</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> *maxsize</code></em>, |
| <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *async</code></em>);</pre> |
| <p>Get the format, minsize, maxsize and async-flag in the buffersize event.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.48.5"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>format</p></td> |
| <td class="parameter_description"><p> A pointer to store the format in. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>minsize</p></td> |
| <td class="parameter_description"><p> A pointer to store the minsize in. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>maxsize</p></td> |
| <td class="parameter_description"><p> A pointer to store the maxsize in. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>async</p></td> |
| <td class="parameter_description"><p> A pointer to store the async-flag in. </p></td> |
| <td class="parameter_annotations"><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> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-new-qos"></a><h3>gst_event_new_qos ()</h3> |
| <pre class="programlisting"><a class="link" href="GstEvent.html" title="GstEvent"><span class="returnvalue">GstEvent</span></a> * |
| gst_event_new_qos (<em class="parameter"><code><a class="link" href="GstEvent.html#GstQOSType" title="enum GstQOSType"><span class="type">GstQOSType</span></a> type</code></em>, |
| <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> proportion</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTimeDiff" title="GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> diff</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timestamp</code></em>);</pre> |
| <p>Allocate a new qos event with the given values. |
| The QOS event is generated in an element that wants an upstream |
| element to either reduce or increase its rate because of |
| high/low CPU load or other resource usage such as network performance or |
| throttling. Typically sinks generate these events for each buffer |
| they receive.</p> |
| <p><em class="parameter"><code>type</code></em> |
| indicates the reason for the QoS event. <a class="link" href="GstEvent.html#GST-QOS-TYPE-OVERFLOW:CAPS"><span class="type">GST_QOS_TYPE_OVERFLOW</span></a> is |
| used when a buffer arrived in time or when the sink cannot keep up with |
| the upstream datarate. <a class="link" href="GstEvent.html#GST-QOS-TYPE-UNDERFLOW:CAPS"><span class="type">GST_QOS_TYPE_UNDERFLOW</span></a> is when the sink is not |
| receiving buffers fast enough and thus has to drop late buffers. |
| <a class="link" href="GstEvent.html#GST-QOS-TYPE-THROTTLE:CAPS"><span class="type">GST_QOS_TYPE_THROTTLE</span></a> is used when the datarate is artificially limited |
| by the application, for example to reduce power consumption.</p> |
| <p><em class="parameter"><code>proportion</code></em> |
| indicates the real-time performance of the streaming in the |
| element that generated the QoS event (usually the sink). The value is |
| generally computed based on more long term statistics about the streams |
| timestamps compared to the clock. |
| A value < 1.0 indicates that the upstream element is producing data faster |
| than real-time. A value > 1.0 indicates that the upstream element is not |
| producing data fast enough. 1.0 is the ideal <em class="parameter"><code>proportion</code></em> |
| value. The |
| proportion value can safely be used to lower or increase the quality of |
| the element.</p> |
| <p><em class="parameter"><code>diff</code></em> |
| is the difference against the clock in running time of the last |
| buffer that caused the element to generate the QOS event. A negative value |
| means that the buffer with <em class="parameter"><code>timestamp</code></em> |
| arrived in time. A positive value |
| indicates how late the buffer with <em class="parameter"><code>timestamp</code></em> |
| was. When throttling is |
| enabled, <em class="parameter"><code>diff</code></em> |
| will be set to the requested throttling interval.</p> |
| <p><em class="parameter"><code>timestamp</code></em> |
| is the timestamp of the last buffer that cause the element |
| to generate the QOS event. It is expressed in running time and thus an ever |
| increasing value.</p> |
| <p>The upstream element can use the <em class="parameter"><code>diff</code></em> |
| and <em class="parameter"><code>timestamp</code></em> |
| values to decide |
| whether to process more buffers. For positive <em class="parameter"><code>diff</code></em> |
| , all buffers with |
| timestamp <= <em class="parameter"><code>timestamp</code></em> |
| + <em class="parameter"><code>diff</code></em> |
| will certainly arrive late in the sink |
| as well. A (negative) <em class="parameter"><code>diff</code></em> |
| value so that <em class="parameter"><code>timestamp</code></em> |
| + <em class="parameter"><code>diff</code></em> |
| would yield a |
| result smaller than 0 is not allowed.</p> |
| <p>The application can use general event probes to intercept the QoS |
| event and implement custom application specific QoS handling.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.49.11"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>type</p></td> |
| <td class="parameter_description"><p>the QoS type</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>proportion</p></td> |
| <td class="parameter_description"><p>the proportion of the qos message</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>diff</p></td> |
| <td class="parameter_description"><p>The time difference of the last Clock sync</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>timestamp</p></td> |
| <td class="parameter_description"><p>The timestamp of the buffer</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.49.12"></a><h4>Returns</h4> |
| <p> a new QOS event. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-event-parse-qos"></a><h3>gst_event_parse_qos ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_event_parse_qos (<em class="parameter"><code><a class="link" href="GstEvent.html" title="GstEvent"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a class="link" href="GstEvent.html#GstQOSType" title="enum GstQOSType"><span class="type">GstQOSType</span></a> *type</code></em>, |
| <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> *proportion</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTimeDiff" title="GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *diff</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> *timestamp</code></em>);</pre> |
| <p>Get the type, proportion, diff and timestamp in the qos event. See |
| <a class="link" href="GstEvent.html#gst-event-new-qos" title="gst_event_new_qos ()"><code class="function">gst_event_new_qos()</code></a> for more information about the different QoS values.</p> |
| <p><em class="parameter"><code>timestamp</code></em> |
| will be adjusted for any pad offsets of pads it was passing through.</p> |
| <div class="refsect3"> |
| <a name="id-1.3.24.8.50.6"></a><h4>Parameters</h4> |
| <div class="informaltable"><table width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>The event to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>type</p></td> |
| <td class="parameter_description"><p> A pointer to store the QoS type in. </p></td> |
|