<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gst" version="0.10"/>
  <include name="GstSdp" version="0.10"/>
  <package name="gstreamer-rtsp-0.10"/>
  <c:include name="gst/rtsp/gstrtsp-enumtypes.h"/>
  <c:include name="gst/rtsp/gstrtspbase64.h"/>
  <c:include name="gst/rtsp/gstrtspconnection.h"/>
  <c:include name="gst/rtsp/gstrtspdefs.h"/>
  <c:include name="gst/rtsp/gstrtspextension.h"/>
  <c:include name="gst/rtsp/gstrtspmessage.h"/>
  <c:include name="gst/rtsp/gstrtsprange.h"/>
  <c:include name="gst/rtsp/gstrtsptransport.h"/>
  <c:include name="gst/rtsp/gstrtspurl.h"/>
  <namespace name="GstRtsp"
             version="0.10"
             shared-library="libgstrtsp-0.10.so.2.6"
             c:identifier-prefixes="Gst"
             c:symbol-prefixes="gst">
    <function-macro name="IS_RTSP_EXTENSION"
                    c:identifier="GST_IS_RTSP_EXTENSION"
                    introspectable="0">
      <source-position filename="gstrtspextension.h" line="37"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <enumeration name="RTSPAuthMethod"
                 glib:type-name="GstRTSPAuthMethod"
                 glib:get-type="gst_rtsp_auth_method_get_type"
                 c:type="GstRTSPAuthMethod">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="207">Authentication methods, ordered by strength</doc>
      <member name="none"
              value="0"
              c:identifier="GST_RTSP_AUTH_NONE"
              glib:nick="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="209">no authentication</doc>
      </member>
      <member name="basic"
              value="1"
              c:identifier="GST_RTSP_AUTH_BASIC"
              glib:nick="basic">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="210">basic authentication</doc>
      </member>
      <member name="digest"
              value="2"
              c:identifier="GST_RTSP_AUTH_DIGEST"
              glib:nick="digest">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="211">digest authentication</doc>
      </member>
    </enumeration>
    <record name="RTSPConnection" c:type="GstRTSPConnection" disguised="1">
      <doc xml:space="preserve"
           filename="gstrtspconnection.c"
           line="43">This object manages the RTSP connection to the server. It provides function
to receive and send bytes and messages.
 
Last reviewed on 2007-07-24 (0.10.14)</doc>
      <source-position filename="gstrtspconnection.h" line="60"/>
      <method name="clear_auth_params"
              c:identifier="gst_rtsp_connection_clear_auth_params"
              version="0.10.20">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2704">Clear the list of authentication directives stored in @conn.</doc>
        <source-position filename="gstrtspconnection.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2706">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="close" c:identifier="gst_rtsp_connection_close">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2327">Close the connected @conn. After this call, the connection is in the same
state as when it was first created.</doc>
        <source-position filename="gstrtspconnection.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2334">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2329">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="connect" c:identifier="gst_rtsp_connection_connect">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="822">Attempt to connect to the url of @conn made with
gst_rtsp_connection_create(). If @timeout is #NULL this function can block
forever. If @timeout contains a valid timeout, this function will return
#GST_RTSP_ETIMEOUT after the timeout expired.

This function can be cancelled with gst_rtsp_connection_flush().</doc>
        <source-position filename="gstrtspconnection.h" line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="834">#GST_RTSP_OK when a connection could be made.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="824">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="825">a #GTimeVal timeout</doc>
            <type name="GLib.TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="do_tunnel"
              c:identifier="gst_rtsp_connection_do_tunnel"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2980">If @conn received the first tunnel connection and @conn2 received
the second tunnel connection, link the two connections together so that
@conn manages the tunneled connection.

After this call, @conn2 cannot be used anymore and must be freed with
gst_rtsp_connection_free().

If @conn2 is %NULL then only the base64 decoding context will be setup for
@conn.</doc>
        <source-position filename="gstrtspconnection.h" line="131"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2995">return GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2982">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="conn2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2983">a #GstRTSPConnection or %NULL</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </parameter>
        </parameters>
      </method>
      <method name="flush" c:identifier="gst_rtsp_connection_flush">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2551">Start or stop the flushing action on @conn. When flushing, all current
and future actions on @conn will return #GST_RTSP_EINTR until the connection
is set to non-flushing mode again.</doc>
        <source-position filename="gstrtspconnection.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2560">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2553">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="flush" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2554">start or stop the flush</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gst_rtsp_connection_free">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2369">Close and free @conn.</doc>
        <source-position filename="gstrtspconnection.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2375">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2371">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_ip"
              c:identifier="gst_rtsp_connection_get_ip"
              version="0.10.20">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2825">Retrieve the IP address of the other end of @conn.</doc>
        <source-position filename="gstrtspconnection.h" line="117"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2831">The IP address as a string. this value remains valid until the
connection is closed.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2827">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_readfd"
              c:identifier="gst_rtsp_connection_get_readfd"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2862">Get the file descriptor for reading.</doc>
        <source-position filename="gstrtspconnection.h" line="120"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2868">the file descriptor used for reading or -1 on error. The file
descriptor remains valid until the connection is closed.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2864">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tunnelid"
              c:identifier="gst_rtsp_connection_get_tunnelid"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2959">Get the tunnel session id the connection.</doc>
        <source-position filename="gstrtspconnection.h" line="130"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2965">returns a non-empty string if @conn is being tunneled over HTTP.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2961">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_url"
              c:identifier="gst_rtsp_connection_get_url"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2806">Retrieve the URL of the other end of @conn.</doc>
        <source-position filename="gstrtspconnection.h" line="116"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2812">The URL. This value remains valid until the
connection is freed.</doc>
          <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2808">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_writefd"
              c:identifier="gst_rtsp_connection_get_writefd"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2882">Get the file descriptor for writing.</doc>
        <source-position filename="gstrtspconnection.h" line="121"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2888">the file descriptor used for writing or -1 on error. The file
descriptor remains valid until the connection is closed.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2884">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_tunneled"
              c:identifier="gst_rtsp_connection_is_tunneled"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2941">Get the tunneling state of the connection.</doc>
        <source-position filename="gstrtspconnection.h" line="128"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2947">if @conn is using HTTP tunneling.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2943">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="next_timeout"
              c:identifier="gst_rtsp_connection_next_timeout">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2482">Calculate the next timeout for @conn, storing the result in @timeout.</doc>
        <source-position filename="gstrtspconnection.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2489">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2484">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2485">a timeout</doc>
            <type name="GLib.TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="poll"
              c:identifier="gst_rtsp_connection_poll"
              version="0.10.15">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2397">Wait up to the specified @timeout for the connection to become available for
at least one of the operations specified in @events. When the function returns
with #GST_RTSP_OK, @revents will contain a bitmask of available operations on
@conn.

@timeout can be #NULL, in which case this function might block forever.

This function can be cancelled with gst_rtsp_connection_flush().</doc>
        <source-position filename="gstrtspconnection.h" line="88"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2413">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2399">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="events" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2400">a bitmask of #GstRTSPEvent flags to check</doc>
            <type name="RTSPEvent" c:type="GstRTSPEvent"/>
          </parameter>
          <parameter name="revents" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2401">location for result flags</doc>
            <type name="RTSPEvent" c:type="GstRTSPEvent*"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2402">a timeout</doc>
            <type name="GLib.TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="read" c:identifier="gst_rtsp_connection_read">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2051">Attempt to read @size bytes into @data from the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().</doc>
        <source-position filename="gstrtspconnection.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2064">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2053">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2054">the data to read</doc>
            <type name="guint8" c:type="guint8*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2055">the size of @data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2056">a timeout value or #NULL</doc>
            <type name="GLib.TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="receive" c:identifier="gst_rtsp_connection_receive">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2186">Attempt to read into @message from the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().</doc>
        <source-position filename="gstrtspconnection.h" line="84"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2198">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2188">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="message" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2189">the message to read</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2190">a timeout value or #NULL</doc>
            <type name="GLib.TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset_timeout"
              c:identifier="gst_rtsp_connection_reset_timeout">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2533">Reset the timeout of @conn.</doc>
        <source-position filename="gstrtspconnection.h" line="93"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2539">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2535">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="send" c:identifier="gst_rtsp_connection_send">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="1502">Attempt to send @message to the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().</doc>
        <source-position filename="gstrtspconnection.h" line="82"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="1514">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="1504">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="message" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="1505">the message to send</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="1506">a timeout value or #NULL</doc>
            <type name="GLib.TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_auth" c:identifier="gst_rtsp_connection_set_auth">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2597">Configure @conn for authentication mode @method with @user and @pass as the
user and password respectively.</doc>
        <source-position filename="gstrtspconnection.h" line="103"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2607">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2599">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2600">authentication method</doc>
            <type name="RTSPAuthMethod" c:type="GstRTSPAuthMethod"/>
          </parameter>
          <parameter name="user" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2601">the user</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="pass" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2602">the password</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_auth_param"
              c:identifier="gst_rtsp_connection_set_auth_param"
              version="0.10.20">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2676">Setup @conn with authentication directives. This is not necesary for
methods #GST_RTSP_AUTH_NONE and #GST_RTSP_AUTH_BASIC. For
#GST_RTSP_AUTH_DIGEST, directives should be taken from the digest challenge
in the WWW-Authenticate response header and can include realm, domain,
nonce, opaque, stale, algorithm, qop as per RFC2617.</doc>
        <source-position filename="gstrtspconnection.h" line="106"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2678">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="param" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2679">authentication directive</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2680">value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_http_mode"
              c:identifier="gst_rtsp_connection_set_http_mode"
              version="0.10.25">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2902">By setting the HTTP mode to %TRUE the message parsing will support HTTP
messages in addition to the RTSP messages. It will also disable the
automatic handling of setting up an HTTP tunnel.</doc>
        <source-position filename="gstrtspconnection.h" line="123"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2904">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="enable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2905">%TRUE to enable manual HTTP mode</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_ip"
              c:identifier="gst_rtsp_connection_set_ip"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2844">Set the IP address of the server.</doc>
        <source-position filename="gstrtspconnection.h" line="118"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2846">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="ip" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2847">an ip address</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_proxy"
              c:identifier="gst_rtsp_connection_set_proxy"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2572">Set the proxy host and port.</doc>
        <source-position filename="gstrtspconnection.h" line="99"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2580">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2574">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="host" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2575">the proxy host</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="port" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2576">the proxy port</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_qos_dscp"
              c:identifier="gst_rtsp_connection_set_qos_dscp"
              version="0.10.20">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2778">Configure @conn to use the specified DSCP value.</doc>
        <source-position filename="gstrtspconnection.h" line="112"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="2785">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2780">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="qos_dscp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2781">DSCP value</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_tunneled"
              c:identifier="gst_rtsp_connection_set_tunneled"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="2921">Set the HTTP tunneling state of the connection. This must be configured before
the @conn is connected.</doc>
        <source-position filename="gstrtspconnection.h" line="127"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2923">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="tunneled" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="2924">the new state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="write" c:identifier="gst_rtsp_connection_write">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="1310">Attempt to write @size bytes of @data to the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().</doc>
        <source-position filename="gstrtspconnection.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="1323">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="1312">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="1313">the data to write</doc>
            <type name="guint8" c:type="const guint8*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="1314">the size of @data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="1315">a timeout value or #NULL</doc>
            <type name="GLib.TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </method>
      <function name="accept"
                c:identifier="gst_rtsp_connection_accept"
                version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="399">Accept a new connection on @sock and create a new #GstRTSPConnection for
handling communication on new socket.</doc>
        <source-position filename="gstrtspconnection.h" line="69"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="407">#GST_RTSP_OK when @conn contains a valid connection.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="sock" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="401">a socket</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="402">storage for a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
          </parameter>
        </parameters>
      </function>
      <function name="create" c:identifier="gst_rtsp_connection_create">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="250">Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
The connection will not yet attempt to connect to @url, use
gst_rtsp_connection_connect().

A copy of @url will be made.</doc>
        <source-position filename="gstrtspconnection.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="261">#GST_RTSP_OK when @conn contains a valid connection.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="252">a #GstRTSPUrl</doc>
            <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
          </parameter>
          <parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="253">storage for a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
          </parameter>
        </parameters>
      </function>
      <function name="create_from_fd"
                c:identifier="gst_rtsp_connection_create_from_fd"
                version="0.10.25">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="330">Create a new #GstRTSPConnection for handling communication on the existing
file descriptor @fd. The @initial_buffer contains any data already read from
@fd which should be used before starting to read new data.</doc>
        <source-position filename="gstrtspconnection.h" line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="342">#GST_RTSP_OK when @conn contains a valid connection.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="fd" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="332">a file descriptor</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="ip" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="333">the IP address of the other end</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="port" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="334">the port used by the other end</doc>
            <type name="guint16" c:type="guint16"/>
          </parameter>
          <parameter name="initial_buffer" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="335">data already read from @fd</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="336">storage for a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <bitfield name="RTSPEvent"
              glib:type-name="GstRTSPEvent"
              glib:get-type="gst_rtsp_event_get_type"
              c:type="GstRTSPEvent">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="111">The possible events for the connection.</doc>
      <member name="read"
              value="1"
              c:identifier="GST_RTSP_EV_READ"
              glib:nick="read">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="113">connection is readable</doc>
      </member>
      <member name="write"
              value="2"
              c:identifier="GST_RTSP_EV_WRITE"
              glib:nick="write">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="114">connection is writable</doc>
      </member>
    </bitfield>
    <interface name="RTSPExtension"
               c:symbol-prefix="rtsp_extension"
               c:type="GstRTSPExtension"
               glib:type-name="GstRTSPExtension"
               glib:get-type="gst_rtsp_extension_get_type"
               glib:type-struct="RTSPExtensionInterface">
      <doc xml:space="preserve"
           filename="gstrtspextension.c"
           line="22">&lt;refsect2&gt;
&lt;para&gt;
 This interface is implemented e.g. by the Windows Media Streaming RTSP
 exentension (rtspwms) and the RealMedia RTSP extension (rtspreal).
&lt;/para&gt;
&lt;/refsect2&gt;

Last reviewed on 2007-07-25 (0.10.14)</doc>
      <source-position filename="gstrtspextension.h" line="72"/>
      <virtual-method name="after_send" invoker="after_send">
        <source-position filename="gstrtspextension.h" line="53"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
          <parameter name="resp" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="before_send" invoker="before_send">
        <source-position filename="gstrtspextension.h" line="52"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="configure_stream" invoker="configure_stream">
        <source-position filename="gstrtspextension.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="caps" transfer-ownership="none">
            <type name="Gst.Caps" c:type="GstCaps*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="detect_server" invoker="detect_server">
        <source-position filename="gstrtspextension.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="resp" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_transports" invoker="get_transports">
        <source-position filename="gstrtspextension.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="protocols" transfer-ownership="none">
            <type name="RTSPLowerTrans" c:type="GstRTSPLowerTrans"/>
          </parameter>
          <parameter name="transport" transfer-ownership="none">
            <type name="utf8" c:type="gchar**"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="parse_sdp" invoker="parse_sdp">
        <source-position filename="gstrtspextension.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="sdp" transfer-ownership="none">
            <type name="GstSdp.SDPMessage" c:type="GstSDPMessage*"/>
          </parameter>
          <parameter name="s" transfer-ownership="none">
            <type name="Gst.Structure" c:type="GstStructure*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="receive_request" invoker="receive_request">
        <source-position filename="gstrtspextension.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="send" invoker="send">
        <source-position filename="gstrtspextension.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
          <parameter name="resp" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="setup_media" invoker="setup_media">
        <source-position filename="gstrtspextension.h" line="56"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="media" transfer-ownership="none">
            <type name="GstSdp.SDPMedia" c:type="GstSDPMedia*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="stream_select" invoker="stream_select">
        <source-position filename="gstrtspextension.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="url" transfer-ownership="none">
            <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="after_send" c:identifier="gst_rtsp_extension_after_send">
        <source-position filename="gstrtspextension.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
          <parameter name="resp" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="before_send" c:identifier="gst_rtsp_extension_before_send">
        <source-position filename="gstrtspextension.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="configure_stream"
              c:identifier="gst_rtsp_extension_configure_stream">
        <source-position filename="gstrtspextension.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="caps" transfer-ownership="none">
            <type name="Gst.Caps" c:type="GstCaps*"/>
          </parameter>
        </parameters>
      </method>
      <method name="detect_server"
              c:identifier="gst_rtsp_extension_detect_server">
        <source-position filename="gstrtspextension.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="resp" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_transports"
              c:identifier="gst_rtsp_extension_get_transports">
        <source-position filename="gstrtspextension.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="protocols" transfer-ownership="none">
            <type name="RTSPLowerTrans" c:type="GstRTSPLowerTrans"/>
          </parameter>
          <parameter name="transport" transfer-ownership="none">
            <type name="utf8" c:type="gchar**"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_sdp" c:identifier="gst_rtsp_extension_parse_sdp">
        <source-position filename="gstrtspextension.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="sdp" transfer-ownership="none">
            <type name="GstSdp.SDPMessage" c:type="GstSDPMessage*"/>
          </parameter>
          <parameter name="s" transfer-ownership="none">
            <type name="Gst.Structure" c:type="GstStructure*"/>
          </parameter>
        </parameters>
      </method>
      <method name="receive_request"
              c:identifier="gst_rtsp_extension_receive_request">
        <source-position filename="gstrtspextension.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="send" c:identifier="gst_rtsp_extension_send">
        <source-position filename="gstrtspextension.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="req" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
          <parameter name="resp" transfer-ownership="none">
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="setup_media" c:identifier="gst_rtsp_extension_setup_media">
        <source-position filename="gstrtspextension.h" line="84"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="media" transfer-ownership="none">
            <type name="GstSdp.SDPMedia" c:type="GstSDPMedia*"/>
          </parameter>
        </parameters>
      </method>
      <method name="stream_select"
              c:identifier="gst_rtsp_extension_stream_select">
        <source-position filename="gstrtspextension.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="ext" transfer-ownership="none">
            <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
          </instance-parameter>
          <parameter name="url" transfer-ownership="none">
            <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
          </parameter>
        </parameters>
      </method>
      <glib:signal name="send" when="last">
        <return-value transfer-ownership="none">
          <type name="RTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="object"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="p0"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </glib:signal>
    </interface>
    <record name="RTSPExtensionInterface"
            c:type="GstRTSPExtensionInterface"
            glib:is-gtype-struct-for="RTSPExtension">
      <source-position filename="gstrtspextension.h" line="72"/>
      <field name="parent">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="detect_server">
        <callback name="detect_server">
          <source-position filename="gstrtspextension.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="resp" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="before_send">
        <callback name="before_send">
          <source-position filename="gstrtspextension.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="req" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="after_send">
        <callback name="after_send">
          <source-position filename="gstrtspextension.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="req" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
            <parameter name="resp" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="parse_sdp">
        <callback name="parse_sdp">
          <source-position filename="gstrtspextension.h" line="55"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="sdp" transfer-ownership="none">
              <type name="GstSdp.SDPMessage" c:type="GstSDPMessage*"/>
            </parameter>
            <parameter name="s" transfer-ownership="none">
              <type name="Gst.Structure" c:type="GstStructure*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="setup_media">
        <callback name="setup_media">
          <source-position filename="gstrtspextension.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="media" transfer-ownership="none">
              <type name="GstSdp.SDPMedia" c:type="GstSDPMedia*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="configure_stream">
        <callback name="configure_stream">
          <source-position filename="gstrtspextension.h" line="58"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="caps" transfer-ownership="none">
              <type name="Gst.Caps" c:type="GstCaps*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_transports">
        <callback name="get_transports">
          <source-position filename="gstrtspextension.h" line="60"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="protocols" transfer-ownership="none">
              <type name="RTSPLowerTrans" c:type="GstRTSPLowerTrans"/>
            </parameter>
            <parameter name="transport" transfer-ownership="none">
              <type name="utf8" c:type="gchar**"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="stream_select">
        <callback name="stream_select">
          <source-position filename="gstrtspextension.h" line="62"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="url" transfer-ownership="none">
              <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="send">
        <callback name="send">
          <source-position filename="gstrtspextension.h" line="65"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="req" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
            <parameter name="resp" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="receive_request">
        <callback name="receive_request">
          <source-position filename="gstrtspextension.h" line="68"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="ext" transfer-ownership="none">
              <type name="RTSPExtension" c:type="GstRTSPExtension*"/>
            </parameter>
            <parameter name="req" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_gst_reserved" readable="0" private="1">
        <array zero-terminated="0" fixed-size="3">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
    </record>
    <enumeration name="RTSPFamily"
                 glib:type-name="GstRTSPFamily"
                 glib:get-type="gst_rtsp_family_get_type"
                 c:type="GstRTSPFamily">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="123">The possible network families.</doc>
      <member name="none"
              value="0"
              c:identifier="GST_RTSP_FAM_NONE"
              glib:nick="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="125">unknown network family</doc>
      </member>
      <member name="inet"
              value="1"
              c:identifier="GST_RTSP_FAM_INET"
              glib:nick="inet">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="126">internet</doc>
      </member>
      <member name="inet6"
              value="2"
              c:identifier="GST_RTSP_FAM_INET6"
              glib:nick="inet6">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="127">internet V6</doc>
      </member>
    </enumeration>
    <enumeration name="RTSPHeaderField"
                 glib:type-name="GstRTSPHeaderField"
                 glib:get-type="gst_rtsp_header_field_get_type"
                 c:type="GstRTSPHeaderField">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="228">Enumeration of rtsp header fields.</doc>
      <member name="invalid"
              value="0"
              c:identifier="GST_RTSP_HDR_INVALID"
              glib:nick="invalid">
      </member>
      <member name="accept"
              value="1"
              c:identifier="GST_RTSP_HDR_ACCEPT"
              glib:nick="accept">
      </member>
      <member name="accept_encoding"
              value="2"
              c:identifier="GST_RTSP_HDR_ACCEPT_ENCODING"
              glib:nick="accept-encoding">
      </member>
      <member name="accept_language"
              value="3"
              c:identifier="GST_RTSP_HDR_ACCEPT_LANGUAGE"
              glib:nick="accept-language">
      </member>
      <member name="allow"
              value="4"
              c:identifier="GST_RTSP_HDR_ALLOW"
              glib:nick="allow">
      </member>
      <member name="authorization"
              value="5"
              c:identifier="GST_RTSP_HDR_AUTHORIZATION"
              glib:nick="authorization">
      </member>
      <member name="bandwidth"
              value="6"
              c:identifier="GST_RTSP_HDR_BANDWIDTH"
              glib:nick="bandwidth">
      </member>
      <member name="blocksize"
              value="7"
              c:identifier="GST_RTSP_HDR_BLOCKSIZE"
              glib:nick="blocksize">
      </member>
      <member name="cache_control"
              value="8"
              c:identifier="GST_RTSP_HDR_CACHE_CONTROL"
              glib:nick="cache-control">
      </member>
      <member name="conference"
              value="9"
              c:identifier="GST_RTSP_HDR_CONFERENCE"
              glib:nick="conference">
      </member>
      <member name="connection"
              value="10"
              c:identifier="GST_RTSP_HDR_CONNECTION"
              glib:nick="connection">
      </member>
      <member name="content_base"
              value="11"
              c:identifier="GST_RTSP_HDR_CONTENT_BASE"
              glib:nick="content-base">
      </member>
      <member name="content_encoding"
              value="12"
              c:identifier="GST_RTSP_HDR_CONTENT_ENCODING"
              glib:nick="content-encoding">
      </member>
      <member name="content_language"
              value="13"
              c:identifier="GST_RTSP_HDR_CONTENT_LANGUAGE"
              glib:nick="content-language">
      </member>
      <member name="content_length"
              value="14"
              c:identifier="GST_RTSP_HDR_CONTENT_LENGTH"
              glib:nick="content-length">
      </member>
      <member name="content_location"
              value="15"
              c:identifier="GST_RTSP_HDR_CONTENT_LOCATION"
              glib:nick="content-location">
      </member>
      <member name="content_type"
              value="16"
              c:identifier="GST_RTSP_HDR_CONTENT_TYPE"
              glib:nick="content-type">
      </member>
      <member name="cseq"
              value="17"
              c:identifier="GST_RTSP_HDR_CSEQ"
              glib:nick="cseq">
      </member>
      <member name="date"
              value="18"
              c:identifier="GST_RTSP_HDR_DATE"
              glib:nick="date">
      </member>
      <member name="expires"
              value="19"
              c:identifier="GST_RTSP_HDR_EXPIRES"
              glib:nick="expires">
      </member>
      <member name="from"
              value="20"
              c:identifier="GST_RTSP_HDR_FROM"
              glib:nick="from">
      </member>
      <member name="if_modified_since"
              value="21"
              c:identifier="GST_RTSP_HDR_IF_MODIFIED_SINCE"
              glib:nick="if-modified-since">
      </member>
      <member name="last_modified"
              value="22"
              c:identifier="GST_RTSP_HDR_LAST_MODIFIED"
              glib:nick="last-modified">
      </member>
      <member name="proxy_authenticate"
              value="23"
              c:identifier="GST_RTSP_HDR_PROXY_AUTHENTICATE"
              glib:nick="proxy-authenticate">
      </member>
      <member name="proxy_require"
              value="24"
              c:identifier="GST_RTSP_HDR_PROXY_REQUIRE"
              glib:nick="proxy-require">
      </member>
      <member name="public"
              value="25"
              c:identifier="GST_RTSP_HDR_PUBLIC"
              glib:nick="public">
      </member>
      <member name="range"
              value="26"
              c:identifier="GST_RTSP_HDR_RANGE"
              glib:nick="range">
      </member>
      <member name="referer"
              value="27"
              c:identifier="GST_RTSP_HDR_REFERER"
              glib:nick="referer">
      </member>
      <member name="require"
              value="28"
              c:identifier="GST_RTSP_HDR_REQUIRE"
              glib:nick="require">
      </member>
      <member name="retry_after"
              value="29"
              c:identifier="GST_RTSP_HDR_RETRY_AFTER"
              glib:nick="retry-after">
      </member>
      <member name="rtp_info"
              value="30"
              c:identifier="GST_RTSP_HDR_RTP_INFO"
              glib:nick="rtp-info">
      </member>
      <member name="scale"
              value="31"
              c:identifier="GST_RTSP_HDR_SCALE"
              glib:nick="scale">
      </member>
      <member name="session"
              value="32"
              c:identifier="GST_RTSP_HDR_SESSION"
              glib:nick="session">
      </member>
      <member name="server"
              value="33"
              c:identifier="GST_RTSP_HDR_SERVER"
              glib:nick="server">
      </member>
      <member name="speed"
              value="34"
              c:identifier="GST_RTSP_HDR_SPEED"
              glib:nick="speed">
      </member>
      <member name="transport"
              value="35"
              c:identifier="GST_RTSP_HDR_TRANSPORT"
              glib:nick="transport">
      </member>
      <member name="unsupported"
              value="36"
              c:identifier="GST_RTSP_HDR_UNSUPPORTED"
              glib:nick="unsupported">
      </member>
      <member name="user_agent"
              value="37"
              c:identifier="GST_RTSP_HDR_USER_AGENT"
              glib:nick="user-agent">
      </member>
      <member name="via"
              value="38"
              c:identifier="GST_RTSP_HDR_VIA"
              glib:nick="via">
      </member>
      <member name="www_authenticate"
              value="39"
              c:identifier="GST_RTSP_HDR_WWW_AUTHENTICATE"
              glib:nick="www-authenticate">
      </member>
      <member name="client_challenge"
              value="40"
              c:identifier="GST_RTSP_HDR_CLIENT_CHALLENGE"
              glib:nick="client-challenge">
      </member>
      <member name="real_challenge1"
              value="41"
              c:identifier="GST_RTSP_HDR_REAL_CHALLENGE1"
              glib:nick="real-challenge1">
      </member>
      <member name="real_challenge2"
              value="42"
              c:identifier="GST_RTSP_HDR_REAL_CHALLENGE2"
              glib:nick="real-challenge2">
      </member>
      <member name="real_challenge3"
              value="43"
              c:identifier="GST_RTSP_HDR_REAL_CHALLENGE3"
              glib:nick="real-challenge3">
      </member>
      <member name="subscribe"
              value="44"
              c:identifier="GST_RTSP_HDR_SUBSCRIBE"
              glib:nick="subscribe">
      </member>
      <member name="alert"
              value="45"
              c:identifier="GST_RTSP_HDR_ALERT"
              glib:nick="alert">
      </member>
      <member name="client_id"
              value="46"
              c:identifier="GST_RTSP_HDR_CLIENT_ID"
              glib:nick="client-id">
      </member>
      <member name="company_id"
              value="47"
              c:identifier="GST_RTSP_HDR_COMPANY_ID"
              glib:nick="company-id">
      </member>
      <member name="guid"
              value="48"
              c:identifier="GST_RTSP_HDR_GUID"
              glib:nick="guid">
      </member>
      <member name="region_data"
              value="49"
              c:identifier="GST_RTSP_HDR_REGION_DATA"
              glib:nick="region-data">
      </member>
      <member name="max_asm_width"
              value="50"
              c:identifier="GST_RTSP_HDR_MAX_ASM_WIDTH"
              glib:nick="max-asm-width">
      </member>
      <member name="language"
              value="51"
              c:identifier="GST_RTSP_HDR_LANGUAGE"
              glib:nick="language">
      </member>
      <member name="player_start_time"
              value="52"
              c:identifier="GST_RTSP_HDR_PLAYER_START_TIME"
              glib:nick="player-start-time">
      </member>
      <member name="location"
              value="53"
              c:identifier="GST_RTSP_HDR_LOCATION"
              glib:nick="location">
      </member>
      <member name="etag"
              value="54"
              c:identifier="GST_RTSP_HDR_ETAG"
              glib:nick="etag">
      </member>
      <member name="if_match"
              value="55"
              c:identifier="GST_RTSP_HDR_IF_MATCH"
              glib:nick="if-match">
      </member>
      <member name="accept_charset"
              value="56"
              c:identifier="GST_RTSP_HDR_ACCEPT_CHARSET"
              glib:nick="accept-charset">
      </member>
      <member name="supported"
              value="57"
              c:identifier="GST_RTSP_HDR_SUPPORTED"
              glib:nick="supported">
      </member>
      <member name="vary"
              value="58"
              c:identifier="GST_RTSP_HDR_VARY"
              glib:nick="vary">
      </member>
      <member name="x_accelerate_streaming"
              value="59"
              c:identifier="GST_RTSP_HDR_X_ACCELERATE_STREAMING"
              glib:nick="x-accelerate-streaming">
      </member>
      <member name="x_accept_authent"
              value="60"
              c:identifier="GST_RTSP_HDR_X_ACCEPT_AUTHENT"
              glib:nick="x-accept-authent">
      </member>
      <member name="x_accept_proxy_authent"
              value="61"
              c:identifier="GST_RTSP_HDR_X_ACCEPT_PROXY_AUTHENT"
              glib:nick="x-accept-proxy-authent">
      </member>
      <member name="x_broadcast_id"
              value="62"
              c:identifier="GST_RTSP_HDR_X_BROADCAST_ID"
              glib:nick="x-broadcast-id">
      </member>
      <member name="x_burst_streaming"
              value="63"
              c:identifier="GST_RTSP_HDR_X_BURST_STREAMING"
              glib:nick="x-burst-streaming">
      </member>
      <member name="x_notice"
              value="64"
              c:identifier="GST_RTSP_HDR_X_NOTICE"
              glib:nick="x-notice">
      </member>
      <member name="x_player_lag_time"
              value="65"
              c:identifier="GST_RTSP_HDR_X_PLAYER_LAG_TIME"
              glib:nick="x-player-lag-time">
      </member>
      <member name="x_playlist"
              value="66"
              c:identifier="GST_RTSP_HDR_X_PLAYLIST"
              glib:nick="x-playlist">
      </member>
      <member name="x_playlist_change_notice"
              value="67"
              c:identifier="GST_RTSP_HDR_X_PLAYLIST_CHANGE_NOTICE"
              glib:nick="x-playlist-change-notice">
      </member>
      <member name="x_playlist_gen_id"
              value="68"
              c:identifier="GST_RTSP_HDR_X_PLAYLIST_GEN_ID"
              glib:nick="x-playlist-gen-id">
      </member>
      <member name="x_playlist_seek_id"
              value="69"
              c:identifier="GST_RTSP_HDR_X_PLAYLIST_SEEK_ID"
              glib:nick="x-playlist-seek-id">
      </member>
      <member name="x_proxy_client_agent"
              value="70"
              c:identifier="GST_RTSP_HDR_X_PROXY_CLIENT_AGENT"
              glib:nick="x-proxy-client-agent">
      </member>
      <member name="x_proxy_client_verb"
              value="71"
              c:identifier="GST_RTSP_HDR_X_PROXY_CLIENT_VERB"
              glib:nick="x-proxy-client-verb">
      </member>
      <member name="x_receding_playlistchange"
              value="72"
              c:identifier="GST_RTSP_HDR_X_RECEDING_PLAYLISTCHANGE"
              glib:nick="x-receding-playlistchange">
      </member>
      <member name="x_rtp_info"
              value="73"
              c:identifier="GST_RTSP_HDR_X_RTP_INFO"
              glib:nick="x-rtp-info">
      </member>
      <member name="x_startupprofile"
              value="74"
              c:identifier="GST_RTSP_HDR_X_STARTUPPROFILE"
              glib:nick="x-startupprofile">
      </member>
      <member name="timestamp"
              value="75"
              c:identifier="GST_RTSP_HDR_TIMESTAMP"
              glib:nick="timestamp">
      </member>
      <member name="authentication_info"
              value="76"
              c:identifier="GST_RTSP_HDR_AUTHENTICATION_INFO"
              glib:nick="authentication-info">
      </member>
      <member name="host"
              value="77"
              c:identifier="GST_RTSP_HDR_HOST"
              glib:nick="host">
      </member>
      <member name="pragma"
              value="78"
              c:identifier="GST_RTSP_HDR_PRAGMA"
              glib:nick="pragma">
      </member>
      <member name="x_server_ip_address"
              value="79"
              c:identifier="GST_RTSP_HDR_X_SERVER_IP_ADDRESS"
              glib:nick="x-server-ip-address">
      </member>
      <member name="x_sessioncookie"
              value="80"
              c:identifier="GST_RTSP_HDR_X_SESSIONCOOKIE"
              glib:nick="x-sessioncookie">
      </member>
      <member name="rtcp_interval"
              value="81"
              c:identifier="GST_RTSP_HDR_RTCP_INTERVAL"
              glib:nick="rtcp-interval">
      </member>
      <member name="last"
              value="82"
              c:identifier="GST_RTSP_HDR_LAST"
              glib:nick="last">
      </member>
    </enumeration>
    <bitfield name="RTSPLowerTrans"
              glib:type-name="GstRTSPLowerTrans"
              glib:get-type="gst_rtsp_lower_trans_get_type"
              c:type="GstRTSPLowerTrans">
      <doc xml:space="preserve"
           filename="gstrtsptransport.h"
           line="78">The different transport methods.</doc>
      <member name="udp_unicast"
              value="1"
              c:identifier="GST_RTSP_LOWER_TRANS_UDP"
              glib:nick="udp-unicast">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="81">stream data over UDP</doc>
      </member>
      <member name="udp_multicast"
              value="2"
              c:identifier="GST_RTSP_LOWER_TRANS_UDP_MCAST"
              glib:nick="udp-multicast">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="82">stream data over UDP multicast</doc>
      </member>
      <member name="tcp"
              value="4"
              c:identifier="GST_RTSP_LOWER_TRANS_TCP"
              glib:nick="tcp">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="83">stream data over TCP</doc>
      </member>
      <member name="http"
              value="16"
              c:identifier="GST_RTSP_LOWER_TRANS_HTTP"
              glib:nick="http">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="84">stream data tunneled over HTTP. Since: 0.10.23</doc>
      </member>
    </bitfield>
    <record name="RTSPMessage" c:type="GstRTSPMessage">
      <doc xml:space="preserve"
           filename="gstrtspmessage.c"
           line="44">Provides methods for creating and parsing request, response and data messages.
 
Last reviewed on 2007-07-25 (0.10.14)</doc>
      <source-position filename="gstrtspmessage.h" line="107"/>
      <field name="type" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspmessage.h"
             line="77">the message type</doc>
        <type name="RTSPMsgType" c:type="GstRTSPMsgType"/>
      </field>
      <union name="type_data" c:type="type_data">
        <source-position filename="gstrtspmessage.h" line="100"/>
        <record name="request" c:type="request">
          <source-position filename="gstrtspmessage.h" line="91"/>
          <field name="method" writable="1">
            <type name="RTSPMethod" c:type="GstRTSPMethod"/>
          </field>
          <field name="uri" writable="1">
            <type name="utf8" c:type="gchar*"/>
          </field>
          <field name="version" writable="1">
            <type name="RTSPVersion" c:type="GstRTSPVersion"/>
          </field>
        </record>
        <record name="response" c:type="response">
          <source-position filename="gstrtspmessage.h" line="96"/>
          <field name="code" writable="1">
            <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
          </field>
          <field name="reason" writable="1">
            <type name="utf8" c:type="gchar*"/>
          </field>
          <field name="version" writable="1">
            <type name="RTSPVersion" c:type="GstRTSPVersion"/>
          </field>
        </record>
        <record name="data" c:type="data">
          <source-position filename="gstrtspmessage.h" line="99"/>
          <field name="channel" writable="1">
            <type name="guint8" c:type="guint8"/>
          </field>
        </record>
      </union>
      <field name="hdr_fields" readable="0" private="1">
        <array name="GLib.Array" c:type="GArray*">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
      <field name="body" readable="0" private="1">
        <type name="guint8" c:type="guint8*"/>
      </field>
      <field name="body_size" readable="0" private="1">
        <type name="guint" c:type="guint"/>
      </field>
      <method name="add_header" c:identifier="gst_rtsp_message_add_header">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="529">Add a header with key @field and @value to @msg. This function takes a copy
of @value.</doc>
        <source-position filename="gstrtspmessage.h" line="152"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="538">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="531">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="532">a #GstRTSPHeaderField</doc>
            <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="533">the value of the header</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="append_headers"
              c:identifier="gst_rtsp_message_append_headers">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="623">Append the currently configured headers in @msg to the #GString @str suitable
for transmission.</doc>
        <source-position filename="gstrtspmessage.h" line="165"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="631">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="625">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="str" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="626">a string</doc>
            <type name="GLib.String" c:type="GString*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="gst_rtsp_message_dump">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="759">Dump the contents of @msg to stdout.</doc>
        <source-position filename="gstrtspmessage.h" line="183"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="765">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="761">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gst_rtsp_message_free">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="477">Free the memory used by @msg.</doc>
        <source-position filename="gstrtspmessage.h" line="113"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="483">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="479">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_body" c:identifier="gst_rtsp_message_get_body">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="698">Get the body of @msg. @data remains valid for as long as @msg is valid and
unchanged.</doc>
        <source-position filename="gstrtspmessage.h" line="175"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="707">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="700">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="701">location for the data</doc>
            <type name="guint8" c:type="guint8**"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="702">location for the size of @data</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_header" c:identifier="gst_rtsp_message_get_header">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="584">Get the @indx header value with key @field from @msg. The result in @value
stays valid as long as it remains present in @msg.</doc>
        <source-position filename="gstrtspmessage.h" line="161"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="594">#GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key
was not found.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="586">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="587">a #GstRTSPHeaderField</doc>
            <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="588">pointer to hold the result</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
          <parameter name="indx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="589">the index of the header</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_type" c:identifier="gst_rtsp_message_get_type">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="121">Get the message type of @msg.</doc>
        <source-position filename="gstrtspmessage.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="127">the message type.</doc>
          <type name="RTSPMsgType" c:type="GstRTSPMsgType"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="123">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="init" c:identifier="gst_rtsp_message_init">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="99">Initialize @msg. This function is mostly used when @msg is allocated on the
stack. The reverse operation of this is gst_rtsp_message_unset().</doc>
        <source-position filename="gstrtspmessage.h" line="111"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="106">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="101">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="init_data" c:identifier="gst_rtsp_message_init_data">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="384">Initialize a new data #GstRTSPMessage for @channel.</doc>
        <source-position filename="gstrtspmessage.h" line="146"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="391">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="386">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="channel" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="387">a channel</doc>
            <type name="guint8" c:type="guint8"/>
          </parameter>
        </parameters>
      </method>
      <method name="init_request" c:identifier="gst_rtsp_message_init_request">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="164">Initialize @msg as a request message with @method and @uri. To clear @msg
again, use gst_rtsp_message_unset().</doc>
        <source-position filename="gstrtspmessage.h" line="121"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="173">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="166">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="167">the request method to use</doc>
            <type name="RTSPMethod" c:type="GstRTSPMethod"/>
          </parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="168">the uri of the request</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="init_response"
              c:identifier="gst_rtsp_message_init_response">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="258">Initialize @msg with @code and @reason.

When @reason is #NULL, the default reason for @code will be used.

When @request is not #NULL, the relevant headers will be copied to the new
response message.</doc>
        <source-position filename="gstrtspmessage.h" line="134"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="272">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="260">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="code" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="261">the status code</doc>
            <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="262">the status reason or #NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="request" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="263">the request that triggered the response or #NULL</doc>
            <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_data" c:identifier="gst_rtsp_message_parse_data">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="406">Parse the data message @msg and store the channel in @channel.</doc>
        <source-position filename="gstrtspmessage.h" line="148"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="413">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="408">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="channel" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="409">location to hold the channel</doc>
            <type name="guint8" c:type="guint8*"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_request"
              c:identifier="gst_rtsp_message_parse_request">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="193">Parse the request message @msg and store the values @method, @uri and
@version. The result locations can be #NULL if one is not interested in its
value.

@uri remains valid for as long as @msg is valid and unchanged.</doc>
        <source-position filename="gstrtspmessage.h" line="124"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="206">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="195">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="196">location to hold the method</doc>
            <type name="RTSPMethod" c:type="GstRTSPMethod*"/>
          </parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="197">location to hold the uri</doc>
            <type name="utf8" c:type="const gchar**"/>
          </parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="198">location to hold the version</doc>
            <type name="RTSPVersion" c:type="GstRTSPVersion*"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_response"
              c:identifier="gst_rtsp_message_parse_response">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="327">Parse the response message @msg and store the values @code, @reason and
@version. The result locations can be #NULL if one is not interested in its
value.

@reason remains valid for as long as @msg is valid and unchanged.</doc>
        <source-position filename="gstrtspmessage.h" line="138"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="340">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="329">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="code" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="330">location to hold the status code</doc>
            <type name="RTSPStatusCode" c:type="GstRTSPStatusCode*"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="331">location to hold the status reason</doc>
            <type name="utf8" c:type="const gchar**"/>
          </parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="332">location to hold the version</doc>
            <type name="RTSPVersion" c:type="GstRTSPVersion*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_header"
              c:identifier="gst_rtsp_message_remove_header">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="547">Remove the @indx header with key @field from @msg. If @indx equals -1, all
headers will be removed.</doc>
        <source-position filename="gstrtspmessage.h" line="158"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="556">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="549">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="550">a #GstRTSPHeaderField</doc>
            <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
          </parameter>
          <parameter name="indx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="551">the index of the header</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_body" c:identifier="gst_rtsp_message_set_body">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="653">Set the body of @msg to a copy of @data.</doc>
        <source-position filename="gstrtspmessage.h" line="169"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="661">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="655">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="656">the data</doc>
            <type name="guint8" c:type="const guint8*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="657">the size of @data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="steal_body" c:identifier="gst_rtsp_message_steal_body">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="723">Take the body of @msg and store it in @data and @size. After this method,
the body and size of @msg will be set to #NULL and 0 respectively.</doc>
        <source-position filename="gstrtspmessage.h" line="178"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="732">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="725">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="726">location for the data</doc>
            <type name="guint8" c:type="guint8**"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="727">location for the size of @data</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="take_body" c:identifier="gst_rtsp_message_take_body">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="672">Set the body of @msg to @data and @size. This method takes ownership of
@data.</doc>
        <source-position filename="gstrtspmessage.h" line="172"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="681">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="674">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="675">the data</doc>
            <type name="guint8" c:type="guint8*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="676">the size of @data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="take_header"
              c:identifier="gst_rtsp_message_take_header"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="499">Add a header with key @field and @value to @msg. This function takes
ownership of @value.</doc>
        <source-position filename="gstrtspmessage.h" line="155"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="508">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="501">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
          <parameter name="field" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="502">a #GstRTSPHeaderField</doc>
            <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="503">the value of the header</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="unset" c:identifier="gst_rtsp_message_unset">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="427">Unset the contents of @msg so that it becomes an uninitialized
#GstRTSPMessage again. This function is mostly used in combination with
gst_rtsp_message_init_request(), gst_rtsp_message_init_response() and
gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures.</doc>
        <source-position filename="gstrtspmessage.h" line="112"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="436">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="429">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="new" c:identifier="gst_rtsp_message_new">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="77">Create a new initialized #GstRTSPMessage. Free with gst_rtsp_message_free().</doc>
        <source-position filename="gstrtspmessage.h" line="110"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="83">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="79">a location for the new #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_data" c:identifier="gst_rtsp_message_new_data">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="360">Create a new data #GstRTSPMessage with @channel and store the
result message in @msg. Free with gst_rtsp_message_free().</doc>
        <source-position filename="gstrtspmessage.h" line="144"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="368">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="362">a location for the new #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
          </parameter>
          <parameter name="channel" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="363">the channel</doc>
            <type name="guint8" c:type="guint8"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_request" c:identifier="gst_rtsp_message_new_request">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="137">Create a new #GstRTSPMessage with @method and @uri and store the result
request message in @msg. Free with gst_rtsp_message_free().</doc>
        <source-position filename="gstrtspmessage.h" line="118"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="146">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="139">a location for the new #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
          </parameter>
          <parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="140">the request method to use</doc>
            <type name="RTSPMethod" c:type="GstRTSPMethod"/>
          </parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="141">the uri of the request</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_response"
                c:identifier="gst_rtsp_message_new_response">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="226">Create a new response #GstRTSPMessage with @code and @reason and store the
result message in @msg. Free with gst_rtsp_message_free().

When @reason is #NULL, the default reason for @code will be used.

When @request is not #NULL, the relevant headers will be copied to the new
response message.</doc>
        <source-position filename="gstrtspmessage.h" line="130"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="241">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="msg" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="228">a location for the new #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
          </parameter>
          <parameter name="code" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="229">the status code</doc>
            <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
          </parameter>
          <parameter name="reason" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="230">the status reason or #NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="request" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspmessage.c"
                 line="231">the request that triggered the response or #NULL</doc>
            <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <bitfield name="RTSPMethod"
              glib:type-name="GstRTSPMethod"
              glib:get-type="gst_rtsp_method_get_type"
              c:type="GstRTSPMethod">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="171">The different supported RTSP methods.</doc>
      <member name="invalid"
              value="0"
              c:identifier="GST_RTSP_INVALID"
              glib:nick="invalid">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="173">invalid method</doc>
      </member>
      <member name="describe"
              value="1"
              c:identifier="GST_RTSP_DESCRIBE"
              glib:nick="describe">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="174">the DESCRIBE method</doc>
      </member>
      <member name="announce"
              value="2"
              c:identifier="GST_RTSP_ANNOUNCE"
              glib:nick="announce">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="175">the ANNOUNCE method</doc>
      </member>
      <member name="get_parameter"
              value="4"
              c:identifier="GST_RTSP_GET_PARAMETER"
              glib:nick="get-parameter">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="176">the GET_PARAMETER method</doc>
      </member>
      <member name="options"
              value="8"
              c:identifier="GST_RTSP_OPTIONS"
              glib:nick="options">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="177">the OPTIONS method</doc>
      </member>
      <member name="pause"
              value="16"
              c:identifier="GST_RTSP_PAUSE"
              glib:nick="pause">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="178">the PAUSE method</doc>
      </member>
      <member name="play"
              value="32"
              c:identifier="GST_RTSP_PLAY"
              glib:nick="play">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="179">the PLAY method</doc>
      </member>
      <member name="record"
              value="64"
              c:identifier="GST_RTSP_RECORD"
              glib:nick="record">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="180">the RECORD method</doc>
      </member>
      <member name="redirect"
              value="128"
              c:identifier="GST_RTSP_REDIRECT"
              glib:nick="redirect">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="181">the REDIRECT method</doc>
      </member>
      <member name="setup"
              value="256"
              c:identifier="GST_RTSP_SETUP"
              glib:nick="setup">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="182">the SETUP method</doc>
      </member>
      <member name="set_parameter"
              value="512"
              c:identifier="GST_RTSP_SET_PARAMETER"
              glib:nick="set-parameter">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="183">the SET_PARAMETER method</doc>
      </member>
      <member name="teardown"
              value="1024"
              c:identifier="GST_RTSP_TEARDOWN"
              glib:nick="teardown">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="184">the TEARDOWN method</doc>
      </member>
      <member name="get"
              value="2048"
              c:identifier="GST_RTSP_GET"
              glib:nick="get">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="185">the GET method (HTTP). Since 0.10.25</doc>
      </member>
      <member name="post"
              value="4096"
              c:identifier="GST_RTSP_POST"
              glib:nick="post">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="186">the POST method (HTTP). Since 0.10.25</doc>
      </member>
      <function name="as_text" c:identifier="gst_rtsp_method_as_text">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="317">Convert @method to a string.</doc>
        <source-position filename="gstrtspdefs.h" line="398"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="323">a string representation of @method.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspdefs.c"
                 line="319">a #GstRTSPMethod</doc>
            <type name="RTSPMethod" c:type="GstRTSPMethod"/>
          </parameter>
        </parameters>
      </function>
    </bitfield>
    <enumeration name="RTSPMsgType" c:type="GstRTSPMsgType">
      <doc xml:space="preserve"
           filename="gstrtspmessage.h"
           line="52">The type of a message.</doc>
      <source-position filename="gstrtspmessage.h" line="71"/>
      <member name="invalid" value="0" c:identifier="GST_RTSP_MESSAGE_INVALID">
        <doc xml:space="preserve"
             filename="gstrtspmessage.h"
             line="54">invalid message type</doc>
      </member>
      <member name="request" value="1" c:identifier="GST_RTSP_MESSAGE_REQUEST">
        <doc xml:space="preserve"
             filename="gstrtspmessage.h"
             line="55">RTSP request message</doc>
      </member>
      <member name="response"
              value="2"
              c:identifier="GST_RTSP_MESSAGE_RESPONSE">
        <doc xml:space="preserve"
             filename="gstrtspmessage.h"
             line="56">RTSP response message</doc>
      </member>
      <member name="http_request"
              value="3"
              c:identifier="GST_RTSP_MESSAGE_HTTP_REQUEST">
        <doc xml:space="preserve"
             filename="gstrtspmessage.h"
             line="57">HTTP request message. Since 0.10.25</doc>
      </member>
      <member name="http_response"
              value="4"
              c:identifier="GST_RTSP_MESSAGE_HTTP_RESPONSE">
        <doc xml:space="preserve"
             filename="gstrtspmessage.h"
             line="58">HTTP response message. Since 0.10.25</doc>
      </member>
      <member name="data" value="5" c:identifier="GST_RTSP_MESSAGE_DATA">
        <doc xml:space="preserve"
             filename="gstrtspmessage.h"
             line="59">data message</doc>
      </member>
    </enumeration>
    <bitfield name="RTSPProfile" c:type="GstRTSPProfile">
      <doc xml:space="preserve"
           filename="gstrtsptransport.h"
           line="64">The transfer profile to use.</doc>
      <source-position filename="gstrtsptransport.h" line="76"/>
      <member name="unknown" value="0" c:identifier="GST_RTSP_PROFILE_UNKNOWN">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="66">invalid profile</doc>
      </member>
      <member name="avp" value="1" c:identifier="GST_RTSP_PROFILE_AVP">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="67">the Audio/Visual profile</doc>
      </member>
      <member name="savp" value="2" c:identifier="GST_RTSP_PROFILE_SAVP">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="68">the secure Audio/Visual profile</doc>
      </member>
    </bitfield>
    <record name="RTSPRange" c:type="GstRTSPRange">
      <doc xml:space="preserve"
           filename="gstrtsprange.c"
           line="43">Provides helper functions to deal with time ranges.
 
Last reviewed on 2007-07-25 (0.10.14)</doc>
      <source-position filename="gstrtsptransport.h" line="113"/>
      <field name="min" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="104">minimum value of the range</doc>
        <type name="gint" c:type="gint"/>
      </field>
      <field name="max" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="105">maximum value of the range</doc>
        <type name="gint" c:type="gint"/>
      </field>
      <function name="free" c:identifier="gst_rtsp_range_free">
        <doc xml:space="preserve"
             filename="gstrtsprange.c"
             line="262">Free the memory allocated by @range.</doc>
        <source-position filename="gstrtsprange.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="range" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsprange.c"
                 line="264">a #GstRTSPTimeRange</doc>
            <type name="RTSPTimeRange" c:type="GstRTSPTimeRange*"/>
          </parameter>
        </parameters>
      </function>
      <function name="parse" c:identifier="gst_rtsp_range_parse">
        <doc xml:space="preserve"
             filename="gstrtsprange.c"
             line="127">Parse @rangestr to a #GstRTSPTimeRange.</doc>
        <source-position filename="gstrtsprange.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsprange.c"
               line="134">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="rangestr" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsprange.c"
                 line="129">a range string to parse</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="range" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsprange.c"
                 line="130">location to hold the #GstRTSPTimeRange result</doc>
            <type name="RTSPTimeRange" c:type="GstRTSPTimeRange**"/>
          </parameter>
        </parameters>
      </function>
      <function name="to_string"
                c:identifier="gst_rtsp_range_to_string"
                version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtsprange.c"
             line="218">Convert @range into a string representation.</doc>
        <source-position filename="gstrtsprange.h" line="116"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gstrtsprange.c"
               line="224">The string representation of @range. g_free() after usage.</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <parameter name="range" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsprange.c"
                 line="220">a #GstRTSPTimeRange</doc>
            <type name="RTSPTimeRange" c:type="const GstRTSPTimeRange*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <enumeration name="RTSPRangeUnit" c:type="GstRTSPRangeUnit">
      <doc xml:space="preserve"
           filename="gstrtsprange.h"
           line="52">Different possible time range units.</doc>
      <source-position filename="gstrtsprange.h" line="69"/>
      <member name="smpte" value="0" c:identifier="GST_RTSP_RANGE_SMPTE">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="54">SMPTE timecode</doc>
      </member>
      <member name="smpte_30_drop"
              value="1"
              c:identifier="GST_RTSP_RANGE_SMPTE_30_DROP">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="55">29.97 frames per second</doc>
      </member>
      <member name="smpte_25" value="2" c:identifier="GST_RTSP_RANGE_SMPTE_25">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="56">25 frames per second</doc>
      </member>
      <member name="npt" value="3" c:identifier="GST_RTSP_RANGE_NPT">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="57">Normal play time</doc>
      </member>
      <member name="clock" value="4" c:identifier="GST_RTSP_RANGE_CLOCK">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="58">Absolute time expressed as ISO 8601 timestamps</doc>
      </member>
    </enumeration>
    <enumeration name="RTSPResult"
                 glib:type-name="GstRTSPResult"
                 glib:get-type="gst_rtsp_result_get_type"
                 c:type="GstRTSPResult">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="65">Result codes from the RTSP functions.</doc>
      <member name="ok" value="0" c:identifier="GST_RTSP_OK" glib:nick="ok">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="67">no error</doc>
      </member>
      <member name="error"
              value="-1"
              c:identifier="GST_RTSP_ERROR"
              glib:nick="error">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="68">some unspecified error occured</doc>
      </member>
      <member name="einval"
              value="-2"
              c:identifier="GST_RTSP_EINVAL"
              glib:nick="einval">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="69">invalid arguments were provided to a function</doc>
      </member>
      <member name="eintr"
              value="-3"
              c:identifier="GST_RTSP_EINTR"
              glib:nick="eintr">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="70">an operation was canceled</doc>
      </member>
      <member name="enomem"
              value="-4"
              c:identifier="GST_RTSP_ENOMEM"
              glib:nick="enomem">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="71">no memory was available for the operation</doc>
      </member>
      <member name="eresolv"
              value="-5"
              c:identifier="GST_RTSP_ERESOLV"
              glib:nick="eresolv">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="72">a host resolve error occured</doc>
      </member>
      <member name="enotimpl"
              value="-6"
              c:identifier="GST_RTSP_ENOTIMPL"
              glib:nick="enotimpl">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="73">function not implemented</doc>
      </member>
      <member name="esys"
              value="-7"
              c:identifier="GST_RTSP_ESYS"
              glib:nick="esys">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="74">a system error occured, errno contains more details</doc>
      </member>
      <member name="eparse"
              value="-8"
              c:identifier="GST_RTSP_EPARSE"
              glib:nick="eparse">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="75">a persing error occured</doc>
      </member>
      <member name="ewsastart"
              value="-9"
              c:identifier="GST_RTSP_EWSASTART"
              glib:nick="ewsastart">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="76">windows networking could not start</doc>
      </member>
      <member name="ewsaversion"
              value="-10"
              c:identifier="GST_RTSP_EWSAVERSION"
              glib:nick="ewsaversion">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="77">windows networking stack has wrong version</doc>
      </member>
      <member name="eeof"
              value="-11"
              c:identifier="GST_RTSP_EEOF"
              glib:nick="eeof">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="78">end-of-file was reached</doc>
      </member>
      <member name="enet"
              value="-12"
              c:identifier="GST_RTSP_ENET"
              glib:nick="enet">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="79">a network problem occured, h_errno contains more details</doc>
      </member>
      <member name="enotip"
              value="-13"
              c:identifier="GST_RTSP_ENOTIP"
              glib:nick="enotip">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="80">the host is not an IP host</doc>
      </member>
      <member name="etimeout"
              value="-14"
              c:identifier="GST_RTSP_ETIMEOUT"
              glib:nick="etimeout">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="81">a timeout occured</doc>
      </member>
      <member name="etget"
              value="-15"
              c:identifier="GST_RTSP_ETGET"
              glib:nick="etget">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="82">the tunnel GET request has been performed</doc>
      </member>
      <member name="etpost"
              value="-16"
              c:identifier="GST_RTSP_ETPOST"
              glib:nick="etpost">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="83">the tunnel POST request has been performed</doc>
      </member>
      <member name="elast"
              value="-17"
              c:identifier="GST_RTSP_ELAST"
              glib:nick="elast">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="84">last error</doc>
      </member>
    </enumeration>
    <enumeration name="RTSPState"
                 glib:type-name="GstRTSPState"
                 glib:get-type="gst_rtsp_state_get_type"
                 c:type="GstRTSPState">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="137">The different RTSP states.</doc>
      <member name="invalid"
              value="0"
              c:identifier="GST_RTSP_STATE_INVALID"
              glib:nick="invalid">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="139">invalid state</doc>
      </member>
      <member name="init"
              value="1"
              c:identifier="GST_RTSP_STATE_INIT"
              glib:nick="init">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="140">initializing</doc>
      </member>
      <member name="ready"
              value="2"
              c:identifier="GST_RTSP_STATE_READY"
              glib:nick="ready">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="141">ready for operation</doc>
      </member>
      <member name="seeking"
              value="3"
              c:identifier="GST_RTSP_STATE_SEEKING"
              glib:nick="seeking">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="142">seeking in progress</doc>
      </member>
      <member name="playing"
              value="4"
              c:identifier="GST_RTSP_STATE_PLAYING"
              glib:nick="playing">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="143">playing</doc>
      </member>
      <member name="recording"
              value="5"
              c:identifier="GST_RTSP_STATE_RECORDING"
              glib:nick="recording">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="144">recording</doc>
      </member>
    </enumeration>
    <enumeration name="RTSPStatusCode"
                 glib:type-name="GstRTSPStatusCode"
                 glib:get-type="gst_rtsp_status_code_get_type"
                 c:type="GstRTSPStatusCode">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="342">Enumeration of rtsp status codes.</doc>
      <member name="invalid"
              value="0"
              c:identifier="GST_RTSP_STS_INVALID"
              glib:nick="invalid">
      </member>
      <member name="continue"
              value="100"
              c:identifier="GST_RTSP_STS_CONTINUE"
              glib:nick="continue">
      </member>
      <member name="ok"
              value="200"
              c:identifier="GST_RTSP_STS_OK"
              glib:nick="ok">
      </member>
      <member name="created"
              value="201"
              c:identifier="GST_RTSP_STS_CREATED"
              glib:nick="created">
      </member>
      <member name="low_on_storage"
              value="250"
              c:identifier="GST_RTSP_STS_LOW_ON_STORAGE"
              glib:nick="low-on-storage">
      </member>
      <member name="multiple_choices"
              value="300"
              c:identifier="GST_RTSP_STS_MULTIPLE_CHOICES"
              glib:nick="multiple-choices">
      </member>
      <member name="moved_permanently"
              value="301"
              c:identifier="GST_RTSP_STS_MOVED_PERMANENTLY"
              glib:nick="moved-permanently">
      </member>
      <member name="move_temporarily"
              value="302"
              c:identifier="GST_RTSP_STS_MOVE_TEMPORARILY"
              glib:nick="move-temporarily">
      </member>
      <member name="see_other"
              value="303"
              c:identifier="GST_RTSP_STS_SEE_OTHER"
              glib:nick="see-other">
      </member>
      <member name="not_modified"
              value="304"
              c:identifier="GST_RTSP_STS_NOT_MODIFIED"
              glib:nick="not-modified">
      </member>
      <member name="use_proxy"
              value="305"
              c:identifier="GST_RTSP_STS_USE_PROXY"
              glib:nick="use-proxy">
      </member>
      <member name="bad_request"
              value="400"
              c:identifier="GST_RTSP_STS_BAD_REQUEST"
              glib:nick="bad-request">
      </member>
      <member name="unauthorized"
              value="401"
              c:identifier="GST_RTSP_STS_UNAUTHORIZED"
              glib:nick="unauthorized">
      </member>
      <member name="payment_required"
              value="402"
              c:identifier="GST_RTSP_STS_PAYMENT_REQUIRED"
              glib:nick="payment-required">
      </member>
      <member name="forbidden"
              value="403"
              c:identifier="GST_RTSP_STS_FORBIDDEN"
              glib:nick="forbidden">
      </member>
      <member name="not_found"
              value="404"
              c:identifier="GST_RTSP_STS_NOT_FOUND"
              glib:nick="not-found">
      </member>
      <member name="method_not_allowed"
              value="405"
              c:identifier="GST_RTSP_STS_METHOD_NOT_ALLOWED"
              glib:nick="method-not-allowed">
      </member>
      <member name="not_acceptable"
              value="406"
              c:identifier="GST_RTSP_STS_NOT_ACCEPTABLE"
              glib:nick="not-acceptable">
      </member>
      <member name="proxy_auth_required"
              value="407"
              c:identifier="GST_RTSP_STS_PROXY_AUTH_REQUIRED"
              glib:nick="proxy-auth-required">
      </member>
      <member name="request_timeout"
              value="408"
              c:identifier="GST_RTSP_STS_REQUEST_TIMEOUT"
              glib:nick="request-timeout">
      </member>
      <member name="gone"
              value="410"
              c:identifier="GST_RTSP_STS_GONE"
              glib:nick="gone">
      </member>
      <member name="length_required"
              value="411"
              c:identifier="GST_RTSP_STS_LENGTH_REQUIRED"
              glib:nick="length-required">
      </member>
      <member name="precondition_failed"
              value="412"
              c:identifier="GST_RTSP_STS_PRECONDITION_FAILED"
              glib:nick="precondition-failed">
      </member>
      <member name="request_entity_too_large"
              value="413"
              c:identifier="GST_RTSP_STS_REQUEST_ENTITY_TOO_LARGE"
              glib:nick="request-entity-too-large">
      </member>
      <member name="request_uri_too_large"
              value="414"
              c:identifier="GST_RTSP_STS_REQUEST_URI_TOO_LARGE"
              glib:nick="request-uri-too-large">
      </member>
      <member name="unsupported_media_type"
              value="415"
              c:identifier="GST_RTSP_STS_UNSUPPORTED_MEDIA_TYPE"
              glib:nick="unsupported-media-type">
      </member>
      <member name="parameter_not_understood"
              value="451"
              c:identifier="GST_RTSP_STS_PARAMETER_NOT_UNDERSTOOD"
              glib:nick="parameter-not-understood">
      </member>
      <member name="conference_not_found"
              value="452"
              c:identifier="GST_RTSP_STS_CONFERENCE_NOT_FOUND"
              glib:nick="conference-not-found">
      </member>
      <member name="not_enough_bandwidth"
              value="453"
              c:identifier="GST_RTSP_STS_NOT_ENOUGH_BANDWIDTH"
              glib:nick="not-enough-bandwidth">
      </member>
      <member name="session_not_found"
              value="454"
              c:identifier="GST_RTSP_STS_SESSION_NOT_FOUND"
              glib:nick="session-not-found">
      </member>
      <member name="method_not_valid_in_this_state"
              value="455"
              c:identifier="GST_RTSP_STS_METHOD_NOT_VALID_IN_THIS_STATE"
              glib:nick="method-not-valid-in-this-state">
      </member>
      <member name="header_field_not_valid_for_resource"
              value="456"
              c:identifier="GST_RTSP_STS_HEADER_FIELD_NOT_VALID_FOR_RESOURCE"
              glib:nick="header-field-not-valid-for-resource">
      </member>
      <member name="invalid_range"
              value="457"
              c:identifier="GST_RTSP_STS_INVALID_RANGE"
              glib:nick="invalid-range">
      </member>
      <member name="parameter_is_readonly"
              value="458"
              c:identifier="GST_RTSP_STS_PARAMETER_IS_READONLY"
              glib:nick="parameter-is-readonly">
      </member>
      <member name="aggregate_operation_not_allowed"
              value="459"
              c:identifier="GST_RTSP_STS_AGGREGATE_OPERATION_NOT_ALLOWED"
              glib:nick="aggregate-operation-not-allowed">
      </member>
      <member name="only_aggregate_operation_allowed"
              value="460"
              c:identifier="GST_RTSP_STS_ONLY_AGGREGATE_OPERATION_ALLOWED"
              glib:nick="only-aggregate-operation-allowed">
      </member>
      <member name="unsupported_transport"
              value="461"
              c:identifier="GST_RTSP_STS_UNSUPPORTED_TRANSPORT"
              glib:nick="unsupported-transport">
      </member>
      <member name="destination_unreachable"
              value="462"
              c:identifier="GST_RTSP_STS_DESTINATION_UNREACHABLE"
              glib:nick="destination-unreachable">
      </member>
      <member name="internal_server_error"
              value="500"
              c:identifier="GST_RTSP_STS_INTERNAL_SERVER_ERROR"
              glib:nick="internal-server-error">
      </member>
      <member name="not_implemented"
              value="501"
              c:identifier="GST_RTSP_STS_NOT_IMPLEMENTED"
              glib:nick="not-implemented">
      </member>
      <member name="bad_gateway"
              value="502"
              c:identifier="GST_RTSP_STS_BAD_GATEWAY"
              glib:nick="bad-gateway">
      </member>
      <member name="service_unavailable"
              value="503"
              c:identifier="GST_RTSP_STS_SERVICE_UNAVAILABLE"
              glib:nick="service-unavailable">
      </member>
      <member name="gateway_timeout"
              value="504"
              c:identifier="GST_RTSP_STS_GATEWAY_TIMEOUT"
              glib:nick="gateway-timeout">
      </member>
      <member name="rtsp_version_not_supported"
              value="505"
              c:identifier="GST_RTSP_STS_RTSP_VERSION_NOT_SUPPORTED"
              glib:nick="rtsp-version-not-supported">
      </member>
      <member name="option_not_supported"
              value="551"
              c:identifier="GST_RTSP_STS_OPTION_NOT_SUPPORTED"
              glib:nick="option-not-supported">
      </member>
    </enumeration>
    <record name="RTSPTime" c:type="GstRTSPTime">
      <doc xml:space="preserve"
           filename="gstrtsprange.h"
           line="88">A time indication.</doc>
      <source-position filename="gstrtsprange.h" line="98"/>
      <field name="type" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="90">the time of the time</doc>
        <type name="RTSPTimeType" c:type="GstRTSPTimeType"/>
      </field>
      <field name="seconds" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="91">seconds when @type is GST_RTSP_TIME_SECONDS</doc>
        <type name="gdouble" c:type="gdouble"/>
      </field>
    </record>
    <record name="RTSPTimeRange" c:type="GstRTSPTimeRange">
      <doc xml:space="preserve"
           filename="gstrtsprange.h"
           line="100">A time range.</doc>
      <source-position filename="gstrtsprange.h" line="113"/>
      <field name="unit" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="102">the time units used</doc>
        <type name="RTSPRangeUnit" c:type="GstRTSPRangeUnit"/>
      </field>
      <field name="min" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="103">the minimum interval</doc>
        <type name="RTSPTime" c:type="GstRTSPTime"/>
      </field>
      <field name="max" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="104">the maximum interval</doc>
        <type name="RTSPTime" c:type="GstRTSPTime"/>
      </field>
    </record>
    <enumeration name="RTSPTimeType" c:type="GstRTSPTimeType">
      <doc xml:space="preserve"
           filename="gstrtsprange.h"
           line="74">Possible time types.</doc>
      <source-position filename="gstrtsprange.h" line="86"/>
      <member name="seconds" value="0" c:identifier="GST_RTSP_TIME_SECONDS">
        <doc xml:space="preserve"
             filename="gstrtsprange.h"
             line="76">seconds</doc>
      </member>
      <member name="now" value="1" c:identifier="GST_RTSP_TIME_NOW">
        <doc xml:space="preserve" filename="gstrtsprange.h" line="77">now</doc>
      </member>
      <member name="end" value="2" c:identifier="GST_RTSP_TIME_END">
        <doc xml:space="preserve" filename="gstrtsprange.h" line="78">end</doc>
      </member>
    </enumeration>
    <bitfield name="RTSPTransMode" c:type="GstRTSPTransMode">
      <doc xml:space="preserve"
           filename="gstrtsptransport.h"
           line="50">The transfer mode to use.</doc>
      <source-position filename="gstrtsptransport.h" line="62"/>
      <member name="unknown" value="0" c:identifier="GST_RTSP_TRANS_UNKNOWN">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="52">invalid tansport mode</doc>
      </member>
      <member name="rtp" value="1" c:identifier="GST_RTSP_TRANS_RTP">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="53">transfer RTP data</doc>
      </member>
      <member name="rdt" value="2" c:identifier="GST_RTSP_TRANS_RDT">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="54">transfer RDT (RealMedia) data</doc>
      </member>
    </bitfield>
    <record name="RTSPTransport" c:type="GstRTSPTransport">
      <doc xml:space="preserve"
           filename="gstrtsptransport.c"
           line="44">Provides helper functions to deal with RTSP transport strings.
 
Last reviewed on 2007-07-25 (0.10.14)</doc>
      <source-position filename="gstrtsptransport.h" line="159"/>
      <field name="trans" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="117">the transport mode</doc>
        <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
      </field>
      <field name="profile" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="118">the tansport profile</doc>
        <type name="RTSPProfile" c:type="GstRTSPProfile"/>
      </field>
      <field name="lower_transport" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="119">the lower transport</doc>
        <type name="RTSPLowerTrans" c:type="GstRTSPLowerTrans"/>
      </field>
      <field name="destination" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="120">the destination ip/hostname</doc>
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="source" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="121">the source ip/hostname</doc>
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="layers" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="122">the number of layers</doc>
        <type name="guint" c:type="guint"/>
      </field>
      <field name="mode_play" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="123">if play mode was selected</doc>
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="mode_record" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="124">if record mode was selected</doc>
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="append" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="125">is append mode was selected</doc>
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="interleaved" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="126">the interleave range</doc>
        <type name="RTSPRange" c:type="GstRTSPRange"/>
      </field>
      <field name="ttl" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="127">the time to live for multicast UDP</doc>
        <type name="guint" c:type="guint"/>
      </field>
      <field name="port" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="128">the port pair for multicast sessions</doc>
        <type name="RTSPRange" c:type="GstRTSPRange"/>
      </field>
      <field name="client_port" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="129">the client port pair for receiving data</doc>
        <type name="RTSPRange" c:type="GstRTSPRange"/>
      </field>
      <field name="server_port" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="130">the server port pair for receiving data</doc>
        <type name="RTSPRange" c:type="GstRTSPRange"/>
      </field>
      <field name="ssrc" writable="1">
        <doc xml:space="preserve"
             filename="gstrtsptransport.h"
             line="131">the ssrc that the sender/receiver will use</doc>
        <type name="guint" c:type="guint"/>
      </field>
      <method name="as_text" c:identifier="gst_rtsp_transport_as_text">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="539">Convert @transport into a string that can be used to signal the transport in
an RTSP SETUP response.</doc>
        <source-position filename="gstrtsptransport.h" line="165"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="546">a string describing the RTSP transport or #NULL when the transport
is invalid.</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="transport" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="541">a #GstRTSPTransport</doc>
            <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gst_rtsp_transport_free">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="699">Free the memory used by @transport.</doc>
        <source-position filename="gstrtsptransport.h" line="170"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="705">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="transport" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="701">a #GstRTSPTransport</doc>
            <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="init" c:identifier="gst_rtsp_transport_init">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="168">Initialize @transport so that it can be used.</doc>
        <source-position filename="gstrtsptransport.h" line="162"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="174">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="transport" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="170">a #GstRTSPTransport</doc>
            <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="get_manager"
                c:identifier="gst_rtsp_transport_get_manager">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="228">Get the #GstElement that can handle the buffers transported over @trans.

It is possible that there are several managers available, use @option to
selected one.

@manager will contain an element name or #NULL when no manager is
needed/available for @trans.</doc>
        <source-position filename="gstrtsptransport.h" line="168"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="242">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="trans" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="230">a #GstRTSPTransMode</doc>
            <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
          </parameter>
          <parameter name="manager" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="231">location to hold the result</doc>
            <type name="utf8" c:type="const gchar**"/>
          </parameter>
          <parameter name="option" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="232">option index.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_mime" c:identifier="gst_rtsp_transport_get_mime">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="203">Get the mime type of the transport mode @trans. This mime type is typically
used to generate #GstCaps on buffers.</doc>
        <source-position filename="gstrtsptransport.h" line="167"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="211">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="trans" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="205">a #GstRTSPTransMode</doc>
            <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
          </parameter>
          <parameter name="mime" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="206">location to hold the result</doc>
            <type name="utf8" c:type="const gchar**"/>
          </parameter>
        </parameters>
      </function>
      <function name="new" c:identifier="gst_rtsp_transport_new">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="145">Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free()
after usage.</doc>
        <source-position filename="gstrtsptransport.h" line="161"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="152">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="transport" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="147">location to hold the new #GstRTSPTransport</doc>
            <type name="RTSPTransport" c:type="GstRTSPTransport**"/>
          </parameter>
        </parameters>
      </function>
      <function name="parse" c:identifier="gst_rtsp_transport_parse">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="382">Parse the RTSP transport string @str into @transport.</doc>
        <source-position filename="gstrtsptransport.h" line="164"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="389">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="str" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="384">a transport string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="transport" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtsptransport.c"
                 line="385">a #GstRTSPTransport</doc>
            <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <record name="RTSPUrl"
            c:type="GstRTSPUrl"
            glib:type-name="GstRTSPUrl"
            glib:get-type="gst_rtsp_url_get_type"
            c:symbol-prefix="rtsp_url">
      <doc xml:space="preserve"
           filename="gstrtspurl.c"
           line="43">Provides helper functions to handle RTSP urls.
 
Last reviewed on 2007-07-25 (0.10.14)</doc>
      <source-position filename="gstrtspurl.h" line="87"/>
      <field name="transports" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="67">the transports allowed</doc>
        <type name="RTSPLowerTrans" c:type="GstRTSPLowerTrans"/>
      </field>
      <field name="family" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="68">the family</doc>
        <type name="RTSPFamily" c:type="GstRTSPFamily"/>
      </field>
      <field name="user" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="69">the user</doc>
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="passwd" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="70">the password</doc>
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="host" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="71">the host</doc>
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="port" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="72">the port</doc>
        <type name="guint16" c:type="guint16"/>
      </field>
      <field name="abspath" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="73">the absolute path</doc>
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="query" writable="1">
        <doc xml:space="preserve"
             filename="gstrtspurl.h"
             line="74">additional query parameters</doc>
        <type name="utf8" c:type="gchar*"/>
      </field>
      <method name="copy" c:identifier="gst_rtsp_url_copy" version="0.10.22">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="216">Make a copy of @url.</doc>
        <source-position filename="gstrtspurl.h" line="92"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="222">a copy of @url. Free with gst_rtsp_url_free () after usage.</doc>
          <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
        </return-value>
        <parameters>
          <instance-parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="218">a #GstRTSPUrl</doc>
            <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="decode_path_components"
              c:identifier="gst_rtsp_url_decode_path_components"
              version="0.10.32"
              introspectable="0">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="381">Splits the path of @url on '/' boundaries, decoding the resulting components,

The decoding performed by this routine is "URI decoding", as defined in RFC
3986, commonly known as percent-decoding. For example, a string "foo\%2fbar"
will decode to "foo/bar" -- the \%2f being replaced by the corresponding byte
with hex value 0x2f. Note that there is no guarantee that the resulting byte
sequence is valid in any given encoding. As a special case, \%00 is not
unescaped to NUL, as that would prematurely terminate the string.

Also note that since paths usually start with a slash, the first component
will usually be the empty string.</doc>
        <source-position filename="gstrtspurl.h" line="95"/>
        <return-value>
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="397">a string vector. g_strfreev() after usage.</doc>
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="383">a #GstRTSPUrl</doc>
            <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gst_rtsp_url_free">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="247">Free the memory used by @url.</doc>
        <source-position filename="gstrtspurl.h" line="93"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="249">a #GstRTSPUrl</doc>
            <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_port" c:identifier="gst_rtsp_url_get_port">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="286">Get the port number of @url.</doc>
        <source-position filename="gstrtspurl.h" line="99"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="293">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="288">a #GstRTSPUrl</doc>
            <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
          </instance-parameter>
          <parameter name="port" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="289">location to hold the port</doc>
            <type name="guint16" c:type="guint16*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_request_uri"
              c:identifier="gst_rtsp_url_get_request_uri">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="310">Get a newly allocated string describing the request URI for @url.</doc>
        <source-position filename="gstrtspurl.h" line="94"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="316">a string with the request URI. g_free() after usage.</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="312">a #GstRTSPUrl</doc>
            <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_port" c:identifier="gst_rtsp_url_set_port">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="267">Set the port number in @url to @port.</doc>
        <source-position filename="gstrtspurl.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="274">#GST_RTSP_OK.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="269">a #GstRTSPUrl</doc>
            <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
          </instance-parameter>
          <parameter name="port" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="270">the port</doc>
            <type name="guint16" c:type="guint16"/>
          </parameter>
        </parameters>
      </method>
      <function name="parse" c:identifier="gst_rtsp_url_parse">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="90">Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage
with gst_rtsp_url_free().</doc>
        <source-position filename="gstrtspurl.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="98">a #GstRTSPResult.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <parameter name="urlstr" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="92">the url string to parse</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspurl.c"
                 line="93">location to hold the result.</doc>
            <type name="RTSPUrl" c:type="GstRTSPUrl**"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <enumeration name="RTSPVersion"
                 glib:type-name="GstRTSPVersion"
                 glib:get-type="gst_rtsp_version_get_type"
                 c:type="GstRTSPVersion">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="157">The supported RTSP versions.</doc>
      <member name="invalid"
              value="0"
              c:identifier="GST_RTSP_VERSION_INVALID"
              glib:nick="invalid">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="159">unknown/invalid version</doc>
      </member>
      <member name="1_0"
              value="16"
              c:identifier="GST_RTSP_VERSION_1_0"
              glib:nick="1-0">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="160">version 1.0</doc>
      </member>
      <member name="1_1"
              value="17"
              c:identifier="GST_RTSP_VERSION_1_1"
              glib:nick="1-1">
        <doc xml:space="preserve"
             filename="gstrtspdefs.h"
             line="161">version 1.1. Since 0.10.25</doc>
      </member>
      <function name="as_text" c:identifier="gst_rtsp_version_as_text">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="341">Convert @version to a string.</doc>
        <source-position filename="gstrtspdefs.h" line="399"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="347">a string representation of @version.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspdefs.c"
                 line="343">a #GstRTSPVersion</doc>
            <type name="RTSPVersion" c:type="GstRTSPVersion"/>
          </parameter>
        </parameters>
      </function>
    </enumeration>
    <record name="RTSPWatch" c:type="GstRTSPWatch" disguised="1">
      <doc xml:space="preserve"
           filename="gstrtspconnection.h"
           line="135">Opaque RTSP watch object that can be used for asynchronous RTSP
operations.</doc>
      <source-position filename="gstrtspconnection.h" line="141"/>
      <method name="attach"
              c:identifier="gst_rtsp_watch_attach"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3421">Adds a #GstRTSPWatch to a context so that it will be executed within that context.</doc>
        <source-position filename="gstrtspconnection.h" line="189"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="3428">the ID (greater than 0) for the watch within the GMainContext.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="watch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3423">a #GstRTSPWatch</doc>
            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
          </instance-parameter>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3424">a GMainContext (if NULL, the default context will be used)</doc>
            <type name="GLib.MainContext" c:type="GMainContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="queue_data"
              c:identifier="gst_rtsp_watch_queue_data"
              version="0.10.24"
              deprecated="1">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3576">Queue @data for transmission in @watch. It will be transmitted when the
connection of the @watch becomes writable.

This function will take ownership of @data and g_free() it after use.

The return value of this function will be used as the id argument in the
message_sent callback.</doc>
        <doc-deprecated xml:space="preserve">Use gst_rtsp_watch_write_data()</doc-deprecated>
        <source-position filename="gstrtspconnection.h" line="200"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="3592">an id.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="watch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3578">a #GstRTSPWatch</doc>
            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3579">the data to queue</doc>
            <type name="guint8" c:type="const guint8*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3580">the size of @data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="queue_message"
              c:identifier="gst_rtsp_watch_queue_message"
              version="0.10.23"
              deprecated="1">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3642">Queue a @message for transmission in @watch. The contents of this
message will be serialized and transmitted when the connection of the
@watch becomes writable.

The return value of this function will be used as the id argument in the
message_sent callback.</doc>
        <doc-deprecated xml:space="preserve">Use gst_rtsp_watch_send_message()</doc-deprecated>
        <source-position filename="gstrtspconnection.h" line="203"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="3656">an id.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="watch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3644">a #GstRTSPWatch</doc>
            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
          </instance-parameter>
          <parameter name="message" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3645">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset"
              c:identifier="gst_rtsp_watch_reset"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3390">Reset @watch, this is usually called after gst_rtsp_connection_do_tunnel()
when the file descriptors of the connection might have changed.</doc>
        <source-position filename="gstrtspconnection.h" line="186"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="watch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3392">a #GstRTSPWatch</doc>
            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="send_message"
              c:identifier="gst_rtsp_watch_send_message"
              version="0.10.25">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3542">Send a @message using the connection of the @watch. If it cannot be sent
immediately, it will be queued for transmission in @watch. The contents of
@message will then be serialized and transmitted when the connection of the
@watch becomes writable. In case the @message is queued, the ID returned in
@id will be non-zero and used as the ID argument in the message_sent
callback.</doc>
        <source-position filename="gstrtspconnection.h" line="195"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="3555">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="watch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3544">a #GstRTSPWatch</doc>
            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
          </instance-parameter>
          <parameter name="message" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3545">a #GstRTSPMessage</doc>
            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
          </parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3546">location for a message ID or %NULL</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="unref"
              c:identifier="gst_rtsp_watch_unref"
              version="0.10.23">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3440">Decreases the reference count of @watch by one. If the resulting reference
count is zero the watch and associated memory will be destroyed.</doc>
        <source-position filename="gstrtspconnection.h" line="187"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="watch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3442">a #GstRTSPWatch</doc>
            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="write_data"
              c:identifier="gst_rtsp_watch_write_data"
              version="0.10.25">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3457">Write @data using the connection of the @watch. If it cannot be sent
immediately, it will be queued for transmission in @watch. The contents of
@message will then be serialized and transmitted when the connection of the
@watch becomes writable. In case the @message is queued, the ID returned in
@id will be non-zero and used as the ID argument in the message_sent
callback.

This function will take ownership of @data and g_free() it after use.</doc>
        <source-position filename="gstrtspconnection.h" line="192"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="3473">#GST_RTSP_OK on success.</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </return-value>
        <parameters>
          <instance-parameter name="watch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3459">a #GstRTSPWatch</doc>
            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3460">the data to queue</doc>
            <type name="guint8" c:type="const guint8*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3461">the size of @data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3462">location for a message ID or %NULL</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </method>
      <function name="new"
                c:identifier="gst_rtsp_watch_new"
                version="0.10.23"
                introspectable="0">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="3338">Create a watch object for @conn. The functions provided in @funcs will be
called with @user_data when activity happened on the watch.

The new watch is usually created so that it can be attached to a
maincontext with gst_rtsp_watch_attach().

@conn must exist for the entire lifetime of the watch.</doc>
        <source-position filename="gstrtspconnection.h" line="182"/>
        <return-value>
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="3353">a #GstRTSPWatch that can be used for asynchronous RTSP
communication. Free with gst_rtsp_watch_unref () after usage.</doc>
          <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
        </return-value>
        <parameters>
          <parameter name="conn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3340">a #GstRTSPConnection</doc>
            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
          </parameter>
          <parameter name="funcs" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3341">watch functions</doc>
            <type name="RTSPWatchFuncs" c:type="GstRTSPWatchFuncs*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3342">user data to pass to @funcs</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="notify" transfer-ownership="none" scope="async">
            <doc xml:space="preserve"
                 filename="gstrtspconnection.c"
                 line="3343">notify when @user_data is not referenced anymore</doc>
            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <record name="RTSPWatchFuncs" c:type="GstRTSPWatchFuncs" version="0.10.23">
      <doc xml:space="preserve"
           filename="gstrtspconnection.h"
           line="143">Callback functions from a #GstRTSPWatch.</doc>
      <source-position filename="gstrtspconnection.h" line="180"/>
      <field name="message_received">
        <callback name="message_received">
          <source-position filename="gstrtspconnection.h" line="164"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="message" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="2">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="message_sent">
        <callback name="message_sent">
          <source-position filename="gstrtspconnection.h" line="166"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="id" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="2">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="closed">
        <callback name="closed">
          <source-position filename="gstrtspconnection.h" line="168"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="1">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="error">
        <callback name="error">
          <source-position filename="gstrtspconnection.h" line="169"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="result" transfer-ownership="none">
              <type name="RTSPResult" c:type="GstRTSPResult"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="2">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="tunnel_start">
        <callback name="tunnel_start">
          <source-position filename="gstrtspconnection.h" line="171"/>
          <return-value transfer-ownership="none">
            <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="1">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="tunnel_complete">
        <callback name="tunnel_complete">
          <source-position filename="gstrtspconnection.h" line="172"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="1">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="error_full">
        <callback name="error_full">
          <source-position filename="gstrtspconnection.h" line="173"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="result" transfer-ownership="none">
              <type name="RTSPResult" c:type="GstRTSPResult"/>
            </parameter>
            <parameter name="message" transfer-ownership="none">
              <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
            </parameter>
            <parameter name="id" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="4">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="tunnel_lost">
        <callback name="tunnel_lost">
          <source-position filename="gstrtspconnection.h" line="176"/>
          <return-value transfer-ownership="none">
            <type name="RTSPResult" c:type="GstRTSPResult"/>
          </return-value>
          <parameters>
            <parameter name="watch" transfer-ownership="none">
              <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
            </parameter>
            <parameter name="user_data"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1"
                       closure="1">
              <type name="gpointer" c:type="gpointer"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_gst_reserved" readable="0" private="1">
        <array zero-terminated="0" fixed-size="2">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
    </record>
    <function-macro name="RTSP_CHECK"
                    c:identifier="GST_RTSP_CHECK"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="gstrtspdefs.h"
           line="51">Macro that checks the return value of @stmt and jumps to @label when it does
not equal #GST_RTSP_OK.</doc>
      <source-position filename="gstrtspdefs.h" line="59"/>
      <parameters>
        <parameter name="stmt">
          <doc xml:space="preserve"
               filename="gstrtspdefs.h"
               line="53">a statement</doc>
        </parameter>
        <parameter name="label">
          <doc xml:space="preserve"
               filename="gstrtspdefs.h"
               line="54">a label</doc>
        </parameter>
      </parameters>
    </function-macro>
    <constant name="RTSP_DEFAULT_PORT"
              value="554"
              c:type="GST_RTSP_DEFAULT_PORT">
      <doc xml:space="preserve"
           filename="gstrtspurl.h"
           line="54">The default RTSP port to connect to.</doc>
      <source-position filename="gstrtspurl.h" line="59"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="RTSP_EXTENSION"
                    c:identifier="GST_RTSP_EXTENSION"
                    introspectable="0">
      <source-position filename="gstrtspextension.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="RTSP_EXTENSION_GET_IFACE"
                    c:identifier="GST_RTSP_EXTENSION_GET_IFACE"
                    introspectable="0">
      <source-position filename="gstrtspextension.h" line="39"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function name="rtsp_base64_decode_ip"
              c:identifier="gst_rtsp_base64_decode_ip"
              deprecated="1">
      <doc xml:space="preserve"
           filename="gstrtspbase64.c"
           line="59">Decode the base64 string pointed to by @data in-place. When @len is not #NULL
it will contain the length of the decoded data.</doc>
      <doc-deprecated xml:space="preserve">use g_base64_decode_inplace() instead.</doc-deprecated>
      <source-position filename="gstrtspbase64.h" line="32"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspbase64.c"
               line="61">the base64 encoded data</doc>
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspbase64.c"
               line="62">location for output length or NULL</doc>
          <type name="gsize" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_base64_encode"
              c:identifier="gst_rtsp_base64_encode"
              deprecated="1">
      <doc xml:space="preserve"
           filename="gstrtspbase64.c"
           line="35">Encode a sequence of binary data into its Base-64 stringified representation.</doc>
      <doc-deprecated xml:space="preserve">Use g_base64_encode()</doc-deprecated>
      <source-position filename="gstrtspbase64.h" line="28"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="gstrtspbase64.c"
             line="44">a newly allocated, zero-terminated Base-64 encoded string
representing @data.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspbase64.c"
               line="37">the binary data to encode</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspbase64.c"
               line="38">the length of @data</doc>
          <type name="gsize" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_connection_accept"
              c:identifier="gst_rtsp_connection_accept"
              moved-to="RTSPConnection.accept"
              version="0.10.23">
      <doc xml:space="preserve"
           filename="gstrtspconnection.c"
           line="399">Accept a new connection on @sock and create a new #GstRTSPConnection for
handling communication on new socket.</doc>
      <source-position filename="gstrtspconnection.h" line="69"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="407">#GST_RTSP_OK when @conn contains a valid connection.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="sock" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="401">a socket</doc>
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="conn" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="402">storage for a #GstRTSPConnection</doc>
          <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_connection_create"
              c:identifier="gst_rtsp_connection_create"
              moved-to="RTSPConnection.create">
      <doc xml:space="preserve"
           filename="gstrtspconnection.c"
           line="250">Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
The connection will not yet attempt to connect to @url, use
gst_rtsp_connection_connect().

A copy of @url will be made.</doc>
      <source-position filename="gstrtspconnection.h" line="63"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="261">#GST_RTSP_OK when @conn contains a valid connection.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="url" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="252">a #GstRTSPUrl</doc>
          <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
        </parameter>
        <parameter name="conn" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="253">storage for a #GstRTSPConnection</doc>
          <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_connection_create_from_fd"
              c:identifier="gst_rtsp_connection_create_from_fd"
              moved-to="RTSPConnection.create_from_fd"
              version="0.10.25">
      <doc xml:space="preserve"
           filename="gstrtspconnection.c"
           line="330">Create a new #GstRTSPConnection for handling communication on the existing
file descriptor @fd. The @initial_buffer contains any data already read from
@fd which should be used before starting to read new data.</doc>
      <source-position filename="gstrtspconnection.h" line="64"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspconnection.c"
             line="342">#GST_RTSP_OK when @conn contains a valid connection.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="fd" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="332">a file descriptor</doc>
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="ip" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="333">the IP address of the other end</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="port" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="334">the port used by the other end</doc>
          <type name="guint16" c:type="guint16"/>
        </parameter>
        <parameter name="initial_buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="335">data already read from @fd</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="conn" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspconnection.c"
               line="336">storage for a #GstRTSPConnection</doc>
          <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_find_header_field"
              c:identifier="gst_rtsp_find_header_field">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="400">Convert @header to a #GstRTSPHeaderField.</doc>
      <source-position filename="gstrtspdefs.h" line="405"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="406">a #GstRTSPHeaderField for @header or #GST_RTSP_HDR_INVALID if the
header field is unknown.</doc>
        <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
      </return-value>
      <parameters>
        <parameter name="header" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="402">a header string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_find_method" c:identifier="gst_rtsp_find_method">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="422">Convert @method to a #GstRTSPMethod.</doc>
      <source-position filename="gstrtspdefs.h" line="406"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="428">a #GstRTSPMethod for @method or #GST_RTSP_INVALID if the
method is unknown.</doc>
        <type name="RTSPMethod" c:type="GstRTSPMethod"/>
      </return-value>
      <parameters>
        <parameter name="method" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="424">a method</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_header_allow_multiple"
              c:identifier="gst_rtsp_header_allow_multiple"
              version="0.10.25">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="491">Check whether @field may appear multiple times in a message.</doc>
      <source-position filename="gstrtspdefs.h" line="408"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="497">%TRUE if multiple headers are allowed.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="field" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="493">a #GstRTSPHeaderField</doc>
          <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_header_as_text"
              c:identifier="gst_rtsp_header_as_text">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="364">Convert @field to a string.</doc>
      <source-position filename="gstrtspdefs.h" line="400"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="370">a string representation of @field.</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="field" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="366">a #GstRTSPHeaderField</doc>
          <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_message_new"
              c:identifier="gst_rtsp_message_new"
              moved-to="RTSPMessage.new">
      <doc xml:space="preserve"
           filename="gstrtspmessage.c"
           line="77">Create a new initialized #GstRTSPMessage. Free with gst_rtsp_message_free().</doc>
      <source-position filename="gstrtspmessage.h" line="110"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="83">a #GstRTSPResult.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="msg" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="79">a location for the new #GstRTSPMessage</doc>
          <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_message_new_data"
              c:identifier="gst_rtsp_message_new_data"
              moved-to="RTSPMessage.new_data">
      <doc xml:space="preserve"
           filename="gstrtspmessage.c"
           line="360">Create a new data #GstRTSPMessage with @channel and store the
result message in @msg. Free with gst_rtsp_message_free().</doc>
      <source-position filename="gstrtspmessage.h" line="144"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="368">a #GstRTSPResult.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="msg" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="362">a location for the new #GstRTSPMessage</doc>
          <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
        </parameter>
        <parameter name="channel" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="363">the channel</doc>
          <type name="guint8" c:type="guint8"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_message_new_request"
              c:identifier="gst_rtsp_message_new_request"
              moved-to="RTSPMessage.new_request">
      <doc xml:space="preserve"
           filename="gstrtspmessage.c"
           line="137">Create a new #GstRTSPMessage with @method and @uri and store the result
request message in @msg. Free with gst_rtsp_message_free().</doc>
      <source-position filename="gstrtspmessage.h" line="118"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="146">a #GstRTSPResult.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="msg" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="139">a location for the new #GstRTSPMessage</doc>
          <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
        </parameter>
        <parameter name="method" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="140">the request method to use</doc>
          <type name="RTSPMethod" c:type="GstRTSPMethod"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="141">the uri of the request</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_message_new_response"
              c:identifier="gst_rtsp_message_new_response"
              moved-to="RTSPMessage.new_response">
      <doc xml:space="preserve"
           filename="gstrtspmessage.c"
           line="226">Create a new response #GstRTSPMessage with @code and @reason and store the
result message in @msg. Free with gst_rtsp_message_free().

When @reason is #NULL, the default reason for @code will be used.

When @request is not #NULL, the relevant headers will be copied to the new
response message.</doc>
      <source-position filename="gstrtspmessage.h" line="130"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspmessage.c"
             line="241">a #GstRTSPResult.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="msg" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="228">a location for the new #GstRTSPMessage</doc>
          <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
        </parameter>
        <parameter name="code" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="229">the status code</doc>
          <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
        </parameter>
        <parameter name="reason" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="230">the status reason or #NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="request" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspmessage.c"
               line="231">the request that triggered the response or #NULL</doc>
          <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_method_as_text"
              c:identifier="gst_rtsp_method_as_text"
              moved-to="RTSPMethod.as_text">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="317">Convert @method to a string.</doc>
      <source-position filename="gstrtspdefs.h" line="398"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="323">a string representation of @method.</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="method" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="319">a #GstRTSPMethod</doc>
          <type name="RTSPMethod" c:type="GstRTSPMethod"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_options_as_text"
              c:identifier="gst_rtsp_options_as_text"
              version="0.10.23">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="444">Convert @options to a string.</doc>
      <source-position filename="gstrtspdefs.h" line="403"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="450">a new string of @options. g_free() after usage.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="options" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="446">one or more #GstRTSPMethod</doc>
          <type name="RTSPMethod" c:type="GstRTSPMethod"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_range_free"
              c:identifier="gst_rtsp_range_free"
              moved-to="RTSPRange.free">
      <doc xml:space="preserve"
           filename="gstrtsprange.c"
           line="262">Free the memory allocated by @range.</doc>
      <source-position filename="gstrtsprange.h" line="117"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="range" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsprange.c"
               line="264">a #GstRTSPTimeRange</doc>
          <type name="RTSPTimeRange" c:type="GstRTSPTimeRange*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_range_parse"
              c:identifier="gst_rtsp_range_parse"
              moved-to="RTSPRange.parse">
      <doc xml:space="preserve"
           filename="gstrtsprange.c"
           line="127">Parse @rangestr to a #GstRTSPTimeRange.</doc>
      <source-position filename="gstrtsprange.h" line="115"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtsprange.c"
             line="134">#GST_RTSP_OK on success.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="rangestr" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsprange.c"
               line="129">a range string to parse</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="range" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsprange.c"
               line="130">location to hold the #GstRTSPTimeRange result</doc>
          <type name="RTSPTimeRange" c:type="GstRTSPTimeRange**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_range_to_string"
              c:identifier="gst_rtsp_range_to_string"
              moved-to="RTSPRange.to_string"
              version="0.10.23">
      <doc xml:space="preserve"
           filename="gstrtsprange.c"
           line="218">Convert @range into a string representation.</doc>
      <source-position filename="gstrtsprange.h" line="116"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="gstrtsprange.c"
             line="224">The string representation of @range. g_free() after usage.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="range" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsprange.c"
               line="220">a #GstRTSPTimeRange</doc>
          <type name="RTSPTimeRange" c:type="const GstRTSPTimeRange*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_status_as_text"
              c:identifier="gst_rtsp_status_as_text">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="381">Convert @code to a string.</doc>
      <source-position filename="gstrtspdefs.h" line="401"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="387">a string representation of @code.</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="code" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="383">a #GstRTSPStatusCode</doc>
          <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_strresult" c:identifier="gst_rtsp_strresult">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="250">Convert @result in a human readable string.</doc>
      <source-position filename="gstrtspdefs.h" line="396"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="256">a newly allocated string. g_free() after usage.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="result" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="252">a #GstRTSPResult</doc>
          <type name="RTSPResult" c:type="GstRTSPResult"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_transport_get_manager"
              c:identifier="gst_rtsp_transport_get_manager"
              moved-to="RTSPTransport.get_manager">
      <doc xml:space="preserve"
           filename="gstrtsptransport.c"
           line="228">Get the #GstElement that can handle the buffers transported over @trans.

It is possible that there are several managers available, use @option to
selected one.

@manager will contain an element name or #NULL when no manager is
needed/available for @trans.</doc>
      <source-position filename="gstrtsptransport.h" line="168"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="242">#GST_RTSP_OK.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="trans" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="230">a #GstRTSPTransMode</doc>
          <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
        </parameter>
        <parameter name="manager" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="231">location to hold the result</doc>
          <type name="utf8" c:type="const gchar**"/>
        </parameter>
        <parameter name="option" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="232">option index.</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_transport_get_mime"
              c:identifier="gst_rtsp_transport_get_mime"
              moved-to="RTSPTransport.get_mime">
      <doc xml:space="preserve"
           filename="gstrtsptransport.c"
           line="203">Get the mime type of the transport mode @trans. This mime type is typically
used to generate #GstCaps on buffers.</doc>
      <source-position filename="gstrtsptransport.h" line="167"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="211">#GST_RTSP_OK.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="trans" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="205">a #GstRTSPTransMode</doc>
          <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
        </parameter>
        <parameter name="mime" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="206">location to hold the result</doc>
          <type name="utf8" c:type="const gchar**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_transport_new"
              c:identifier="gst_rtsp_transport_new"
              moved-to="RTSPTransport.new">
      <doc xml:space="preserve"
           filename="gstrtsptransport.c"
           line="145">Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free()
after usage.</doc>
      <source-position filename="gstrtsptransport.h" line="161"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="152">a #GstRTSPResult.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="transport" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="147">location to hold the new #GstRTSPTransport</doc>
          <type name="RTSPTransport" c:type="GstRTSPTransport**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_transport_parse"
              c:identifier="gst_rtsp_transport_parse"
              moved-to="RTSPTransport.parse">
      <doc xml:space="preserve"
           filename="gstrtsptransport.c"
           line="382">Parse the RTSP transport string @str into @transport.</doc>
      <source-position filename="gstrtsptransport.h" line="164"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtsptransport.c"
             line="389">a #GstRTSPResult.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="384">a transport string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="transport" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtsptransport.c"
               line="385">a #GstRTSPTransport</doc>
          <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_url_parse"
              c:identifier="gst_rtsp_url_parse"
              moved-to="RTSPUrl.parse">
      <doc xml:space="preserve"
           filename="gstrtspurl.c"
           line="90">Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage
with gst_rtsp_url_free().</doc>
      <source-position filename="gstrtspurl.h" line="91"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspurl.c"
             line="98">a #GstRTSPResult.</doc>
        <type name="RTSPResult" c:type="GstRTSPResult"/>
      </return-value>
      <parameters>
        <parameter name="urlstr" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="92">the url string to parse</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="url" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspurl.c"
               line="93">location to hold the result.</doc>
          <type name="RTSPUrl" c:type="GstRTSPUrl**"/>
        </parameter>
      </parameters>
    </function>
    <function name="rtsp_version_as_text"
              c:identifier="gst_rtsp_version_as_text"
              moved-to="RTSPVersion.as_text">
      <doc xml:space="preserve"
           filename="gstrtspdefs.c"
           line="341">Convert @version to a string.</doc>
      <source-position filename="gstrtspdefs.h" line="399"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gstrtspdefs.c"
             line="347">a string representation of @version.</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="version" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gstrtspdefs.c"
               line="343">a #GstRTSPVersion</doc>
          <type name="RTSPVersion" c:type="GstRTSPVersion"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
