gstreamer-rs/gir-files/GstSdp-1.0.gir
2018-11-26 12:57:45 +01:00

4318 lines
198 KiB
XML

<?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="1.0"/>
<package name="gstreamer-sdp-1.0"/>
<c:include name="gst/sdp/sdp.h"/>
<namespace name="GstSdp"
version="1.0"
shared-library="libgstsdp-1.0.so.0"
c:identifier-prefixes="Gst"
c:symbol-prefixes="gst">
<enumeration name="MIKEYCacheType" c:type="GstMIKEYCacheType">
<doc xml:space="preserve">The different cache types</doc>
<member name="none" value="0" c:identifier="GST_MIKEY_CACHE_NONE">
<doc xml:space="preserve">The envelope key MUST NOT be cached</doc>
</member>
<member name="always" value="1" c:identifier="GST_MIKEY_CACHE_ALWAYS">
<doc xml:space="preserve">The envelope key MUST be cached</doc>
</member>
<member name="for_csb" value="2" c:identifier="GST_MIKEY_CACHE_FOR_CSB">
<doc xml:space="preserve">The envelope key MUST be cached, but only
to be used for the specific CSB.</doc>
</member>
</enumeration>
<record name="MIKEYDecryptInfo" c:type="GstMIKEYDecryptInfo" disguised="1">
</record>
<enumeration name="MIKEYEncAlg" c:type="GstMIKEYEncAlg">
<doc xml:space="preserve">The encryption algorithm used to encrypt the Encr data field</doc>
<member name="null" value="0" c:identifier="GST_MIKEY_ENC_NULL">
<doc xml:space="preserve">no encryption</doc>
</member>
<member name="aes_cm_128"
value="1"
c:identifier="GST_MIKEY_ENC_AES_CM_128">
<doc xml:space="preserve">AES-CM using a 128-bit key</doc>
</member>
<member name="aes_kw_128"
value="2"
c:identifier="GST_MIKEY_ENC_AES_KW_128">
<doc xml:space="preserve">AES Key Wrap using a 128-bit key</doc>
</member>
</enumeration>
<record name="MIKEYEncryptInfo" c:type="GstMIKEYEncryptInfo" disguised="1">
</record>
<enumeration name="MIKEYKVType" c:type="GstMIKEYKVType">
<doc xml:space="preserve">The key validity type</doc>
<member name="null" value="0" c:identifier="GST_MIKEY_KV_NULL">
<doc xml:space="preserve">No specific usage rule</doc>
</member>
<member name="spi" value="1" c:identifier="GST_MIKEY_KV_SPI">
<doc xml:space="preserve">The key is associated with the SPI/MKI</doc>
</member>
<member name="interval" value="2" c:identifier="GST_MIKEY_KV_INTERVAL">
<doc xml:space="preserve">The key has a start and expiration time</doc>
</member>
</enumeration>
<enumeration name="MIKEYKeyDataType" c:type="GstMIKEYKeyDataType">
<doc xml:space="preserve">The type of key.</doc>
<member name="tgk" value="0" c:identifier="GST_MIKEY_KD_TGK">
<doc xml:space="preserve">a TEK Generation Key</doc>
</member>
<member name="tek" value="2" c:identifier="GST_MIKEY_KD_TEK">
<doc xml:space="preserve">Traffic-Encrypting Key</doc>
</member>
</enumeration>
<enumeration name="MIKEYMacAlg" c:type="GstMIKEYMacAlg">
<doc xml:space="preserve">Specifies the authentication algorithm used</doc>
<member name="null" value="0" c:identifier="GST_MIKEY_MAC_NULL">
<doc xml:space="preserve">no authentication</doc>
</member>
<member name="hmac_sha_1_160"
value="1"
c:identifier="GST_MIKEY_MAC_HMAC_SHA_1_160">
<doc xml:space="preserve">HMAC-SHA-1-160</doc>
</member>
</enumeration>
<record name="MIKEYMapSRTP" c:type="GstMIKEYMapSRTP">
<doc xml:space="preserve">The Security policy Map item for SRTP</doc>
<field name="policy" writable="1">
<doc xml:space="preserve">The security policy applied for the stream with @ssrc</doc>
<type name="guint8" c:type="guint8"/>
</field>
<field name="ssrc" writable="1">
<doc xml:space="preserve">the SSRC that must be used for the stream</doc>
<type name="guint32" c:type="guint32"/>
</field>
<field name="roc" writable="1">
<doc xml:space="preserve">current rollover counter</doc>
<type name="guint32" c:type="guint32"/>
</field>
</record>
<enumeration name="MIKEYMapType" c:type="GstMIKEYMapType">
<doc xml:space="preserve">Specifies the method of uniquely mapping Crypto Sessions to the security
protocol sessions.</doc>
<member name="mikey_map_type_srtp"
value="0"
c:identifier="GST_MIKEY_MAP_TYPE_SRTP">
</member>
</enumeration>
<record name="MIKEYMessage"
c:type="GstMIKEYMessage"
glib:type-name="GstMIKEYMessage"
glib:get-type="gst_mikey_message_get_type"
c:symbol-prefix="mikey_message">
<doc xml:space="preserve">Structure holding the information of the MIKEY message</doc>
<field name="mini_object" readable="0" private="1">
<type name="Gst.MiniObject" c:type="GstMiniObject"/>
</field>
<field name="version" writable="1">
<doc xml:space="preserve">the version</doc>
<type name="guint8" c:type="guint8"/>
</field>
<field name="type" writable="1">
<doc xml:space="preserve">the #GstMIKEYType message type</doc>
<type name="MIKEYType" c:type="GstMIKEYType"/>
</field>
<field name="V" writable="1">
<doc xml:space="preserve">verify flag</doc>
<type name="gboolean" c:type="gboolean"/>
</field>
<field name="prf_func" writable="1">
<doc xml:space="preserve">a #GstMIKEYPRFFunc</doc>
<type name="MIKEYPRFFunc" c:type="GstMIKEYPRFFunc"/>
</field>
<field name="CSB_id" writable="1">
<doc xml:space="preserve">Identifies the Crypto Session Bundle</doc>
<type name="guint32" c:type="guint32"/>
</field>
<field name="map_type" writable="1">
<doc xml:space="preserve">a #GstMIKEYMapType</doc>
<type name="MIKEYMapType" c:type="GstMIKEYMapType"/>
</field>
<field name="map_info" writable="1">
<doc xml:space="preserve">map info array of type depending on @map_type</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="payloads" writable="1">
<doc xml:space="preserve">the payload array of #GstMIKEYPayload</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<constructor name="new"
c:identifier="gst_mikey_message_new"
version="1.4">
<doc xml:space="preserve">Make a new MIKEY message.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstMIKEYMessage on success</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</return-value>
</constructor>
<constructor name="new_from_bytes"
c:identifier="gst_mikey_message_new_from_bytes"
version="1.4"
throws="1">
<doc xml:space="preserve">Make a new #GstMIKEYMessage from @bytes.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</return-value>
<parameters>
<parameter name="bytes" transfer-ownership="none">
<doc xml:space="preserve">a #GBytes</doc>
<type name="GLib.Bytes" c:type="GBytes*"/>
</parameter>
<parameter name="info" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYDecryptInfo</doc>
<type name="MIKEYDecryptInfo" c:type="GstMIKEYDecryptInfo*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_from_caps"
c:identifier="gst_mikey_message_new_from_caps"
version="1.8">
<doc xml:space="preserve">Makes mikey message including:
- Security Policy Payload
- Key Data Transport Payload
- Key Data Sub-Payload</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a #GstMIKEYMessage,
or %NULL if there is no srtp information in the caps.</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</return-value>
<parameters>
<parameter name="caps" transfer-ownership="none">
<doc xml:space="preserve">a #GstCaps, including SRTP parameters (srtp/srtcp cipher, authorization, key data)</doc>
<type name="Gst.Caps" c:type="GstCaps*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_from_data"
c:identifier="gst_mikey_message_new_from_data"
version="1.4"
throws="1">
<doc xml:space="preserve">Parse @size bytes from @data into a #GstMIKEYMessage. @info contains the
parameters to decrypt and verify the data.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a #GstMIKEYMessage on success or %NULL when parsing failed and
@error will be set.</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</return-value>
<parameters>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve">bytes to read</doc>
<array length="1" zero-terminated="0" c:type="gconstpointer">
<type name="guint8"/>
</array>
</parameter>
<parameter name="size" transfer-ownership="none">
<doc xml:space="preserve">length of @data</doc>
<type name="gsize" c:type="gsize"/>
</parameter>
<parameter name="info" transfer-ownership="none">
<doc xml:space="preserve">#GstMIKEYDecryptInfo</doc>
<type name="MIKEYDecryptInfo" c:type="GstMIKEYDecryptInfo*"/>
</parameter>
</parameters>
</constructor>
<method name="add_cs_srtp"
c:identifier="gst_mikey_message_add_cs_srtp"
version="1.4">
<doc xml:space="preserve">Add a Crypto policy for SRTP to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="policy" transfer-ownership="none">
<doc xml:space="preserve">The security policy applied for the stream with @ssrc</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="ssrc" transfer-ownership="none">
<doc xml:space="preserve">the SSRC that must be used for the stream</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
<parameter name="roc" transfer-ownership="none">
<doc xml:space="preserve">current rollover counter</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
</parameters>
</method>
<method name="add_payload"
c:identifier="gst_mikey_message_add_payload"
version="1.4">
<doc xml:space="preserve">Add a new payload to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="payload" transfer-ownership="full">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</parameter>
</parameters>
</method>
<method name="add_pke"
c:identifier="gst_mikey_message_add_pke"
version="1.4">
<doc xml:space="preserve">Add a new PKE payload to @msg with the given parameters.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="C" transfer-ownership="none">
<doc xml:space="preserve">envelope key cache indicator</doc>
<type name="MIKEYCacheType" c:type="GstMIKEYCacheType"/>
</parameter>
<parameter name="data_len" transfer-ownership="none">
<doc xml:space="preserve">the length of @data</doc>
<type name="guint16" c:type="guint16"/>
</parameter>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve">the encrypted envelope key</doc>
<array length="1" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="add_rand"
c:identifier="gst_mikey_message_add_rand"
version="1.4">
<doc xml:space="preserve">Add a new RAND payload to @msg with the given parameters.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="len" transfer-ownership="none">
<doc xml:space="preserve">the length of @rand</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="rand" transfer-ownership="none">
<doc xml:space="preserve">random data</doc>
<array length="0" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="add_rand_len"
c:identifier="gst_mikey_message_add_rand_len"
version="1.4">
<doc xml:space="preserve">Add a new RAND payload to @msg with @len random bytes.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="len" transfer-ownership="none">
<doc xml:space="preserve">length</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
</parameters>
</method>
<method name="add_t"
c:identifier="gst_mikey_message_add_t"
version="1.4">
<doc xml:space="preserve">Add a new T payload to @msg with the given parameters.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">specifies the timestamp type used</doc>
<type name="MIKEYTSType" c:type="GstMIKEYTSType"/>
</parameter>
<parameter name="ts_value" transfer-ownership="none">
<doc xml:space="preserve">The timestamp value of the specified @type</doc>
<array zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="add_t_now_ntp_utc"
c:identifier="gst_mikey_message_add_t_now_ntp_utc"
version="1.4">
<doc xml:space="preserve">Add a new T payload to @msg that contains the current time
in NTP-UTC format.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="base64_encode"
c:identifier="gst_mikey_message_base64_encode"
version="1.8">
<return-value transfer-ownership="full">
<doc xml:space="preserve">a #gchar, base64-encoded data</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="find_payload"
c:identifier="gst_mikey_message_find_payload"
version="1.4">
<doc xml:space="preserve">Find the @nth occurence of the payload with @type in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the @nth #GstMIKEYPayload of @type.</doc>
<type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayloadType</doc>
<type name="MIKEYPayloadType" c:type="GstMIKEYPayloadType"/>
</parameter>
<parameter name="nth" transfer-ownership="none">
<doc xml:space="preserve">payload to find</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_cs_srtp"
c:identifier="gst_mikey_message_get_cs_srtp"
version="1.4">
<doc xml:space="preserve">Get the policy information of @msg at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMapSRTP</doc>
<type name="MIKEYMapSRTP" c:type="const GstMIKEYMapSRTP*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_n_cs"
c:identifier="gst_mikey_message_get_n_cs"
version="1.4">
<doc xml:space="preserve">Get the number of crypto sessions in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of crypto sessions</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_n_payloads"
c:identifier="gst_mikey_message_get_n_payloads"
version="1.4">
<doc xml:space="preserve">Get the number of payloads in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of payloads in @msg</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_payload"
c:identifier="gst_mikey_message_get_payload"
version="1.4">
<doc xml:space="preserve">Get the #GstMIKEYPayload at @idx in @msg</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the #GstMIKEYPayload at @idx. The payload
remains valid for as long as it is part of @msg.</doc>
<type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="insert_cs_srtp"
c:identifier="gst_mikey_message_insert_cs_srtp"
version="1.4">
<doc xml:space="preserve">Insert a Crypto Session map for SRTP in @msg at @idx
When @idx is -1, the policy will be appended.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index to insert at</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="map" transfer-ownership="none">
<doc xml:space="preserve">the map info</doc>
<type name="MIKEYMapSRTP" c:type="const GstMIKEYMapSRTP*"/>
</parameter>
</parameters>
</method>
<method name="insert_payload"
c:identifier="gst_mikey_message_insert_payload"
version="1.4">
<doc xml:space="preserve">Insert the @payload at index @idx in @msg. If @idx is -1, the payload
will be appended to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="payload" transfer-ownership="full">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</parameter>
</parameters>
</method>
<method name="remove_cs_srtp"
c:identifier="gst_mikey_message_remove_cs_srtp"
version="1.4">
<doc xml:space="preserve">Remove the SRTP policy at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index to remove</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="remove_payload"
c:identifier="gst_mikey_message_remove_payload"
version="1.4">
<doc xml:space="preserve">Remove the payload in @msg at @idx</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="replace_cs_srtp"
c:identifier="gst_mikey_message_replace_cs_srtp"
version="1.4">
<doc xml:space="preserve">Replace a Crypto Session map for SRTP in @msg at @idx with @map.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index to insert at</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="map" transfer-ownership="none">
<doc xml:space="preserve">the map info</doc>
<type name="MIKEYMapSRTP" c:type="const GstMIKEYMapSRTP*"/>
</parameter>
</parameters>
</method>
<method name="replace_payload"
c:identifier="gst_mikey_message_replace_payload"
version="1.4">
<doc xml:space="preserve">Replace the payload at @idx in @msg with @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="payload" transfer-ownership="full">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</parameter>
</parameters>
</method>
<method name="set_info"
c:identifier="gst_mikey_message_set_info"
version="1.4">
<doc xml:space="preserve">Set the information in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="version" transfer-ownership="none">
<doc xml:space="preserve">a version</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYType</doc>
<type name="MIKEYType" c:type="GstMIKEYType"/>
</parameter>
<parameter name="V" transfer-ownership="none">
<doc xml:space="preserve">verify flag</doc>
<type name="gboolean" c:type="gboolean"/>
</parameter>
<parameter name="prf_func" transfer-ownership="none">
<doc xml:space="preserve">the #GstMIKEYPRFFunc function to use</doc>
<type name="MIKEYPRFFunc" c:type="GstMIKEYPRFFunc"/>
</parameter>
<parameter name="CSB_id" transfer-ownership="none">
<doc xml:space="preserve">the Crypto Session Bundle id</doc>
<type name="guint32" c:type="guint32"/>
</parameter>
<parameter name="map_type" transfer-ownership="none">
<doc xml:space="preserve">the #GstMIKEYCSIDMapType</doc>
<type name="MIKEYMapType" c:type="GstMIKEYMapType"/>
</parameter>
</parameters>
</method>
<method name="to_bytes"
c:identifier="gst_mikey_message_to_bytes"
version="1.4"
throws="1">
<doc xml:space="preserve">Convert @msg to a #GBytes.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GBytes for @msg.</doc>
<type name="GLib.Bytes" c:type="GBytes*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="info" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYEncryptInfo</doc>
<type name="MIKEYEncryptInfo" c:type="GstMIKEYEncryptInfo*"/>
</parameter>
</parameters>
</method>
<method name="to_caps"
c:identifier="gst_mikey_message_to_caps"
version="1.8.1">
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
</instance-parameter>
<parameter name="caps" transfer-ownership="none">
<doc xml:space="preserve">a #GstCaps to be filled with SRTP parameters (srtp/srtcp cipher, authorization, key data)</doc>
<type name="Gst.Caps" c:type="GstCaps*"/>
</parameter>
</parameters>
</method>
</record>
<enumeration name="MIKEYPRFFunc" c:type="GstMIKEYPRFFunc">
<doc xml:space="preserve">The PRF function that has been/will be used for key derivation</doc>
<member name="mikey_prf_mikey_1"
value="0"
c:identifier="GST_MIKEY_PRF_MIKEY_1">
<doc xml:space="preserve">MIKEY-1 PRF function</doc>
</member>
</enumeration>
<record name="MIKEYPayload"
c:type="GstMIKEYPayload"
glib:type-name="GstMIKEYPayload"
glib:get-type="gst_mikey_payload_get_type"
c:symbol-prefix="mikey_payload">
<doc xml:space="preserve">Hold the common fields for all payloads</doc>
<field name="mini_object" readable="0" private="1">
<type name="Gst.MiniObject" c:type="GstMiniObject"/>
</field>
<field name="type" writable="1">
<doc xml:space="preserve">the payload type</doc>
<type name="MIKEYPayloadType" c:type="GstMIKEYPayloadType"/>
</field>
<field name="len" writable="1">
<doc xml:space="preserve">length of the payload</doc>
<type name="guint" c:type="guint"/>
</field>
<constructor name="new"
c:identifier="gst_mikey_payload_new"
version="1.4">
<doc xml:space="preserve">Make a new #GstMIKEYPayload with @type.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve">a new #GstMIKEYPayload or %NULL on failure.</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</return-value>
<parameters>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayloadType</doc>
<type name="MIKEYPayloadType" c:type="GstMIKEYPayloadType"/>
</parameter>
</parameters>
</constructor>
<method name="kemac_add_sub"
c:identifier="gst_mikey_payload_kemac_add_sub"
version="1.4">
<doc xml:space="preserve">Add a new sub payload to @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="newpay" transfer-ownership="full">
<doc xml:space="preserve">a #GstMIKEYPayload to add</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</parameter>
</parameters>
</method>
<method name="kemac_get_n_sub"
c:identifier="gst_mikey_payload_kemac_get_n_sub"
version="1.4">
<doc xml:space="preserve">Get the number of sub payloads of @payload. @payload should be of type
%GST_MIKEY_PT_KEMAC.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of sub payloads in @payload</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
</instance-parameter>
</parameters>
</method>
<method name="kemac_get_sub"
c:identifier="gst_mikey_payload_kemac_get_sub"
version="1.4">
<doc xml:space="preserve">Get the sub payload of @payload at @idx. @payload should be of type
%GST_MIKEY_PT_KEMAC.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the #GstMIKEYPayload at @idx.</doc>
<type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="kemac_remove_sub"
c:identifier="gst_mikey_payload_kemac_remove_sub"
version="1.4">
<doc xml:space="preserve">Remove the sub payload at @idx in @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index to remove</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="kemac_set"
c:identifier="gst_mikey_payload_kemac_set"
version="1.4">
<doc xml:space="preserve">Set the KEMAC parameters. @payload should point to a %GST_MIKEY_PT_KEMAC
payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="enc_alg" transfer-ownership="none">
<doc xml:space="preserve">the #GstMIKEYEncAlg</doc>
<type name="MIKEYEncAlg" c:type="GstMIKEYEncAlg"/>
</parameter>
<parameter name="mac_alg" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYMacAlg</doc>
<type name="MIKEYMacAlg" c:type="GstMIKEYMacAlg"/>
</parameter>
</parameters>
</method>
<method name="key_data_set_interval"
c:identifier="gst_mikey_payload_key_data_set_interval"
version="1.4">
<doc xml:space="preserve">Set the key validity period in the %GST_MIKEY_PT_KEY_DATA @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="vf_len" transfer-ownership="none">
<doc xml:space="preserve">the length of @vf_data</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="vf_data" transfer-ownership="none">
<doc xml:space="preserve">the Valid From data</doc>
<array length="1" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
<parameter name="vt_len" transfer-ownership="none">
<doc xml:space="preserve">the length of @vt_data</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="vt_data" transfer-ownership="none">
<doc xml:space="preserve">the Valid To data</doc>
<array length="2" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="key_data_set_key"
c:identifier="gst_mikey_payload_key_data_set_key"
version="1.4">
<doc xml:space="preserve">Set @key_len bytes of @key_data of type @key_type as the key for the
%GST_MIKEY_PT_KEY_DATA @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="key_type" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYKeyDataType</doc>
<type name="MIKEYKeyDataType" c:type="GstMIKEYKeyDataType"/>
</parameter>
<parameter name="key_len" transfer-ownership="none">
<doc xml:space="preserve">the length of @key_data</doc>
<type name="guint16" c:type="guint16"/>
</parameter>
<parameter name="key_data" transfer-ownership="none">
<doc xml:space="preserve">the key of type @key_type</doc>
<array length="1" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="key_data_set_salt"
c:identifier="gst_mikey_payload_key_data_set_salt"
version="1.4">
<doc xml:space="preserve">Set the salt key data. If @salt_len is 0 and @salt_data is %NULL, the
salt data will be removed.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="salt_len" transfer-ownership="none">
<doc xml:space="preserve">the length of @salt_data</doc>
<type name="guint16" c:type="guint16"/>
</parameter>
<parameter name="salt_data"
transfer-ownership="none"
nullable="1"
allow-none="1">
<doc xml:space="preserve">the salt</doc>
<array length="0" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="key_data_set_spi"
c:identifier="gst_mikey_payload_key_data_set_spi"
version="1.4">
<doc xml:space="preserve">Set the SPI/MKI validity in the %GST_MIKEY_PT_KEY_DATA @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="spi_len" transfer-ownership="none">
<doc xml:space="preserve">the length of @spi_data</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="spi_data" transfer-ownership="none">
<doc xml:space="preserve">the SPI/MKI data</doc>
<array length="0" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="pke_set"
c:identifier="gst_mikey_payload_pke_set"
version="1.4">
<doc xml:space="preserve">Set the PKE values in @payload. @payload must be of type
%GST_MIKEY_PT_PKE.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="C" transfer-ownership="none">
<doc xml:space="preserve">envelope key cache indicator</doc>
<type name="MIKEYCacheType" c:type="GstMIKEYCacheType"/>
</parameter>
<parameter name="data_len" transfer-ownership="none">
<doc xml:space="preserve">the length of @data</doc>
<type name="guint16" c:type="guint16"/>
</parameter>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve">the encrypted envelope key</doc>
<array length="1" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="rand_set"
c:identifier="gst_mikey_payload_rand_set"
version="1.4">
<doc xml:space="preserve">Set the random values in a %GST_MIKEY_PT_RAND @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="len" transfer-ownership="none">
<doc xml:space="preserve">the length of @rand</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="rand" transfer-ownership="none">
<doc xml:space="preserve">random values</doc>
<array length="0" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="sp_add_param"
c:identifier="gst_mikey_payload_sp_add_param"
version="1.4">
<doc xml:space="preserve">Add a new parameter to the %GST_MIKEY_PT_SP @payload with @type, @len
and @val.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">a type</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="len" transfer-ownership="none">
<doc xml:space="preserve">a length</doc>
<type name="guint8" c:type="guint8"/>
</parameter>
<parameter name="val" transfer-ownership="none">
<doc xml:space="preserve">@len bytes of data</doc>
<array length="1" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
<method name="sp_get_n_params"
c:identifier="gst_mikey_payload_sp_get_n_params"
version="1.4">
<doc xml:space="preserve">Get the number of security policy parameters in a %GST_MIKEY_PT_SP
@payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of parameters in @payload</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
</instance-parameter>
</parameters>
</method>
<method name="sp_get_param"
c:identifier="gst_mikey_payload_sp_get_param"
version="1.4">
<doc xml:space="preserve">Get the Security Policy parameter in a %GST_MIKEY_PT_SP @payload
at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the #GstMIKEYPayloadSPParam at @idx in @payload</doc>
<type name="MIKEYPayloadSPParam"
c:type="const GstMIKEYPayloadSPParam*"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="sp_remove_param"
c:identifier="gst_mikey_payload_sp_remove_param"
version="1.4">
<doc xml:space="preserve">Remove the Security Policy parameters from a %GST_MIKEY_PT_SP
@payload at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="sp_set"
c:identifier="gst_mikey_payload_sp_set"
version="1.4">
<doc xml:space="preserve">Set the Security Policy parameters for @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="policy" transfer-ownership="none">
<doc xml:space="preserve">the policy number</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="proto" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYSecProto</doc>
<type name="MIKEYSecProto" c:type="GstMIKEYSecProto"/>
</parameter>
</parameters>
</method>
<method name="t_set"
c:identifier="gst_mikey_payload_t_set"
version="1.4">
<doc xml:space="preserve">Set the timestamp in a %GST_MIKEY_PT_T @payload.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE on success</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="payload" transfer-ownership="none">
<doc xml:space="preserve">a #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">the #GstMIKEYTSType</doc>
<type name="MIKEYTSType" c:type="GstMIKEYTSType"/>
</parameter>
<parameter name="ts_value" transfer-ownership="none">
<doc xml:space="preserve">the timestamp value</doc>
<array zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
</parameters>
</method>
</record>
<record name="MIKEYPayloadKEMAC" c:type="GstMIKEYPayloadKEMAC">
<doc xml:space="preserve">A structure holding the KEMAC payload</doc>
<field name="pt" writable="1">
<doc xml:space="preserve">the common #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
</field>
<field name="enc_alg" writable="1">
<doc xml:space="preserve">the #GstMIKEYEncAlg</doc>
<type name="MIKEYEncAlg" c:type="GstMIKEYEncAlg"/>
</field>
<field name="mac_alg" writable="1">
<doc xml:space="preserve">the #GstMIKEYMacAlg</doc>
<type name="MIKEYMacAlg" c:type="GstMIKEYMacAlg"/>
</field>
<field name="subpayloads" writable="1">
<doc xml:space="preserve">the subpayloads</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<record name="MIKEYPayloadKeyData" c:type="GstMIKEYPayloadKeyData">
<doc xml:space="preserve">The Key data payload contains key material. It should be added as sub
payload to the KEMAC.</doc>
<field name="pt" writable="1">
<doc xml:space="preserve">the payload header</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
</field>
<field name="key_type" writable="1">
<type name="MIKEYKeyDataType" c:type="GstMIKEYKeyDataType"/>
</field>
<field name="key_len" writable="1">
<doc xml:space="preserve">length of @key_data</doc>
<type name="guint16" c:type="guint16"/>
</field>
<field name="key_data" writable="1">
<type name="guint8" c:type="guint8*"/>
</field>
<field name="salt_len" writable="1">
<doc xml:space="preserve">the length of @salt_data, can be 0</doc>
<type name="guint16" c:type="guint16"/>
</field>
<field name="salt_data" writable="1">
<doc xml:space="preserve">salt data</doc>
<type name="guint8" c:type="guint8*"/>
</field>
<field name="kv_type" writable="1">
<doc xml:space="preserve">the Key Validity type</doc>
<type name="MIKEYKVType" c:type="GstMIKEYKVType"/>
</field>
<field name="kv_len" writable="1">
<doc xml:space="preserve">length of @kv_data</doc>
<array zero-terminated="0" c:type="guint8" fixed-size="2">
<type name="guint8" c:type="guint8"/>
</array>
</field>
<field name="kv_data" writable="1">
<doc xml:space="preserve">key validity data</doc>
<array zero-terminated="0" c:type="guint8" fixed-size="2">
<type name="guint8" c:type="guint8*"/>
</array>
</field>
</record>
<record name="MIKEYPayloadPKE" c:type="GstMIKEYPayloadPKE">
<doc xml:space="preserve">The Envelope data payload contains the encrypted envelope key that is
used in the public-key transport to protect the data in the Key data
transport payload. The encryption algorithm used is implicit from
the certificate/public key used.</doc>
<field name="pt" writable="1">
<doc xml:space="preserve">the common #GstMIKEYPayload</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
</field>
<field name="C" writable="1">
<doc xml:space="preserve">envelope key cache indicator</doc>
<type name="MIKEYCacheType" c:type="GstMIKEYCacheType"/>
</field>
<field name="data_len" writable="1">
<doc xml:space="preserve">length of @data</doc>
<type name="guint16" c:type="guint16"/>
</field>
<field name="data" writable="1">
<doc xml:space="preserve">the encrypted envelope key</doc>
<type name="guint8" c:type="guint8*"/>
</field>
</record>
<record name="MIKEYPayloadRAND" c:type="GstMIKEYPayloadRAND">
<doc xml:space="preserve">The RAND payload consists of a (pseudo-)random bit-string</doc>
<field name="pt" writable="1">
<doc xml:space="preserve">the payload header</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
</field>
<field name="len" writable="1">
<doc xml:space="preserve">the length of @rand</doc>
<type name="guint8" c:type="guint8"/>
</field>
<field name="rand" writable="1">
<doc xml:space="preserve">random values</doc>
<type name="guint8" c:type="guint8*"/>
</field>
</record>
<record name="MIKEYPayloadSP" c:type="GstMIKEYPayloadSP">
<doc xml:space="preserve">The Security Policy payload defines a set of policies that apply to a
specific security protocol</doc>
<field name="pt" writable="1">
<doc xml:space="preserve">the payload header</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
</field>
<field name="policy" writable="1">
<doc xml:space="preserve">the policy number</doc>
<type name="guint" c:type="guint"/>
</field>
<field name="proto" writable="1">
<doc xml:space="preserve">the security protocol</doc>
<type name="MIKEYSecProto" c:type="GstMIKEYSecProto"/>
</field>
<field name="params" writable="1">
<doc xml:space="preserve">array of #GstMIKEYPayloadPSParam</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<record name="MIKEYPayloadSPParam" c:type="GstMIKEYPayloadSPParam">
<doc xml:space="preserve">A Type/Length/Value field for security paramaters</doc>
<field name="type" writable="1">
<doc xml:space="preserve">specifies the type of the parameter</doc>
<type name="guint8" c:type="guint8"/>
</field>
<field name="len" writable="1">
<doc xml:space="preserve">specifies the length of @val</doc>
<type name="guint8" c:type="guint8"/>
</field>
<field name="val" writable="1">
<doc xml:space="preserve">specifies the value of the parameter</doc>
<type name="guint8" c:type="guint8*"/>
</field>
</record>
<record name="MIKEYPayloadT" c:type="GstMIKEYPayloadT">
<doc xml:space="preserve">The timestamp payload carries the timestamp information</doc>
<field name="pt" writable="1">
<doc xml:space="preserve">the payload header</doc>
<type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
</field>
<field name="type" writable="1">
<doc xml:space="preserve">a #GstMIKEYTSType</doc>
<type name="MIKEYTSType" c:type="GstMIKEYTSType"/>
</field>
<field name="ts_value" writable="1">
<doc xml:space="preserve">the timestamp value</doc>
<type name="guint8" c:type="guint8*"/>
</field>
</record>
<enumeration name="MIKEYPayloadType" c:type="GstMIKEYPayloadType">
<doc xml:space="preserve">Different MIKEY Payload types.</doc>
<member name="last" value="0" c:identifier="GST_MIKEY_PT_LAST">
<doc xml:space="preserve">Last payload</doc>
</member>
<member name="kemac" value="1" c:identifier="GST_MIKEY_PT_KEMAC">
<doc xml:space="preserve">Key data transport payload</doc>
</member>
<member name="pke" value="2" c:identifier="GST_MIKEY_PT_PKE">
<doc xml:space="preserve">Envelope data payload</doc>
</member>
<member name="dh" value="3" c:identifier="GST_MIKEY_PT_DH">
<doc xml:space="preserve">DH data payload</doc>
</member>
<member name="sign" value="4" c:identifier="GST_MIKEY_PT_SIGN">
<doc xml:space="preserve">Signature payload</doc>
</member>
<member name="t" value="5" c:identifier="GST_MIKEY_PT_T">
<doc xml:space="preserve">Timestamp payload</doc>
</member>
<member name="id" value="6" c:identifier="GST_MIKEY_PT_ID">
<doc xml:space="preserve">ID payload</doc>
</member>
<member name="cert" value="7" c:identifier="GST_MIKEY_PT_CERT">
<doc xml:space="preserve">Certificate Payload</doc>
</member>
<member name="chash" value="8" c:identifier="GST_MIKEY_PT_CHASH">
<doc xml:space="preserve">Cert hash payload</doc>
</member>
<member name="v" value="9" c:identifier="GST_MIKEY_PT_V">
<doc xml:space="preserve">Verfication message payload</doc>
</member>
<member name="sp" value="10" c:identifier="GST_MIKEY_PT_SP">
<doc xml:space="preserve">Security Policy payload</doc>
</member>
<member name="rand" value="11" c:identifier="GST_MIKEY_PT_RAND">
<doc xml:space="preserve">RAND payload</doc>
</member>
<member name="err" value="12" c:identifier="GST_MIKEY_PT_ERR">
<doc xml:space="preserve">Error payload</doc>
</member>
<member name="key_data" value="20" c:identifier="GST_MIKEY_PT_KEY_DATA">
<doc xml:space="preserve">Key data sub-payload</doc>
</member>
<member name="gen_ext" value="21" c:identifier="GST_MIKEY_PT_GEN_EXT">
<doc xml:space="preserve">General Extension Payload</doc>
</member>
</enumeration>
<enumeration name="MIKEYSecProto" c:type="GstMIKEYSecProto">
<doc xml:space="preserve">Specifies the security protocol</doc>
<member name="mikey_sec_proto_srtp"
value="0"
c:identifier="GST_MIKEY_SEC_PROTO_SRTP">
</member>
</enumeration>
<enumeration name="MIKEYSecSRTP" c:type="GstMIKEYSecSRTP">
<doc xml:space="preserve">This policy specifies the parameters for SRTP and SRTCP</doc>
<member name="enc_alg"
value="0"
c:identifier="GST_MIKEY_SP_SRTP_ENC_ALG">
<doc xml:space="preserve">Encryption algorithm</doc>
</member>
<member name="enc_key_len"
value="1"
c:identifier="GST_MIKEY_SP_SRTP_ENC_KEY_LEN">
<doc xml:space="preserve">Session Encr. key length</doc>
</member>
<member name="auth_alg"
value="2"
c:identifier="GST_MIKEY_SP_SRTP_AUTH_ALG">
<doc xml:space="preserve">Authentication algorithm</doc>
</member>
<member name="auth_key_len"
value="3"
c:identifier="GST_MIKEY_SP_SRTP_AUTH_KEY_LEN">
<doc xml:space="preserve">Session Auth. key length</doc>
</member>
<member name="salt_key_len"
value="4"
c:identifier="GST_MIKEY_SP_SRTP_SALT_KEY_LEN">
<doc xml:space="preserve">Session Salt key length</doc>
</member>
<member name="prf" value="5" c:identifier="GST_MIKEY_SP_SRTP_PRF">
<doc xml:space="preserve">SRTP Pseudo Random Function</doc>
</member>
<member name="key_deriv_rate"
value="6"
c:identifier="GST_MIKEY_SP_SRTP_KEY_DERIV_RATE">
<doc xml:space="preserve">Key derivation rate</doc>
</member>
<member name="srtp_enc"
value="7"
c:identifier="GST_MIKEY_SP_SRTP_SRTP_ENC">
<doc xml:space="preserve">SRTP encryption off/on, 0 if off, 1 if on</doc>
</member>
<member name="srtcp_enc"
value="8"
c:identifier="GST_MIKEY_SP_SRTP_SRTCP_ENC">
<doc xml:space="preserve">SRTCP encryption off/on, 0 if off, 1 if on</doc>
</member>
<member name="fec_order"
value="9"
c:identifier="GST_MIKEY_SP_SRTP_FEC_ORDER">
<doc xml:space="preserve">sender's FEC order</doc>
</member>
<member name="srtp_auth"
value="10"
c:identifier="GST_MIKEY_SP_SRTP_SRTP_AUTH">
<doc xml:space="preserve">SRTP authentication off/on, 0 if off, 1 if on</doc>
</member>
<member name="auth_tag_len"
value="11"
c:identifier="GST_MIKEY_SP_SRTP_AUTH_TAG_LEN">
<doc xml:space="preserve">Authentication tag length</doc>
</member>
<member name="srtp_prefix_len"
value="12"
c:identifier="GST_MIKEY_SP_SRTP_SRTP_PREFIX_LEN">
<doc xml:space="preserve">SRTP prefix length</doc>
</member>
</enumeration>
<enumeration name="MIKEYTSType" c:type="GstMIKEYTSType">
<doc xml:space="preserve">Specifies the timestamp type.</doc>
<member name="ntp_utc"
value="0"
c:identifier="GST_MIKEY_TS_TYPE_NTP_UTC">
<doc xml:space="preserve">an NTP time in UTC timezone</doc>
</member>
<member name="ntp" value="1" c:identifier="GST_MIKEY_TS_TYPE_NTP">
<doc xml:space="preserve">an NTP time</doc>
</member>
<member name="counter"
value="2"
c:identifier="GST_MIKEY_TS_TYPE_COUNTER">
<doc xml:space="preserve">a counter</doc>
</member>
</enumeration>
<enumeration name="MIKEYType" c:type="GstMIKEYType">
<doc xml:space="preserve">Different MIKEY data types.</doc>
<member name="invalid" value="-1" c:identifier="GST_MIKEY_TYPE_INVALID">
<doc xml:space="preserve">Invalid type</doc>
</member>
<member name="psk_init" value="0" c:identifier="GST_MIKEY_TYPE_PSK_INIT">
<doc xml:space="preserve">Initiator's pre-shared key message</doc>
</member>
<member name="psk_verify"
value="1"
c:identifier="GST_MIKEY_TYPE_PSK_VERIFY">
<doc xml:space="preserve">Verification message of a Pre-shared key message</doc>
</member>
<member name="pk_init" value="2" c:identifier="GST_MIKEY_TYPE_PK_INIT">
<doc xml:space="preserve">Initiator's public-key transport message</doc>
</member>
<member name="pk_verify"
value="3"
c:identifier="GST_MIKEY_TYPE_PK_VERIFY">
<doc xml:space="preserve">Verification message of a public-key message</doc>
</member>
<member name="dh_init" value="4" c:identifier="GST_MIKEY_TYPE_DH_INIT">
<doc xml:space="preserve">Initiator's DH exchange message</doc>
</member>
<member name="dh_resp" value="5" c:identifier="GST_MIKEY_TYPE_DH_RESP">
<doc xml:space="preserve">Responder's DH exchange message</doc>
</member>
<member name="error" value="6" c:identifier="GST_MIKEY_TYPE_ERROR">
<doc xml:space="preserve">Error message</doc>
</member>
</enumeration>
<constant name="MIKEY_VERSION" value="1" c:type="GST_MIKEY_VERSION">
<doc xml:space="preserve">The supported MIKEY version 1.</doc>
<type name="gint" c:type="gint"/>
</constant>
<record name="SDPAttribute" c:type="GstSDPAttribute">
<doc xml:space="preserve">The contents of the SDP "a=" field which contains a key/value pair.</doc>
<field name="key" writable="1">
<doc xml:space="preserve">the attribute key</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="value" writable="1">
<doc xml:space="preserve">the attribute value or NULL when it was a property attribute</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<method name="clear"
c:identifier="gst_sdp_attribute_clear"
version="1.2">
<doc xml:space="preserve">Clear the attribute.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">@GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="attr" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPAttribute</doc>
<type name="SDPAttribute" c:type="GstSDPAttribute*"/>
</instance-parameter>
</parameters>
</method>
<method name="set" c:identifier="gst_sdp_attribute_set" version="1.2">
<doc xml:space="preserve">Set the attribute with @key and @value.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">@GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="attr" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPAttribute</doc>
<type name="SDPAttribute" c:type="GstSDPAttribute*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve">the key</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="value"
transfer-ownership="none"
nullable="1"
allow-none="1">
<doc xml:space="preserve">the value</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
</record>
<record name="SDPBandwidth" c:type="GstSDPBandwidth">
<doc xml:space="preserve">The contents of the SDP "b=" field which specifies the proposed bandwidth to
be used by the session or media.</doc>
<field name="bwtype" writable="1">
<doc xml:space="preserve">the bandwidth modifier type</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="bandwidth" writable="1">
<doc xml:space="preserve">the bandwidth in kilobits per second</doc>
<type name="guint" c:type="guint"/>
</field>
<method name="clear"
c:identifier="gst_sdp_bandwidth_clear"
version="1.2">
<doc xml:space="preserve">Reset the bandwidth information in @bw.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="bw" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPBandwidth</doc>
<type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
</instance-parameter>
</parameters>
</method>
<method name="set" c:identifier="gst_sdp_bandwidth_set" version="1.2">
<doc xml:space="preserve">Set bandwidth information in @bw.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="bw" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPBandwidth</doc>
<type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
</instance-parameter>
<parameter name="bwtype" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth modifier type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="bandwidth" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth in kilobits per second</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
</record>
<record name="SDPConnection" c:type="GstSDPConnection">
<doc xml:space="preserve">The contents of the SDP "c=" field which contains connection data.</doc>
<field name="nettype" writable="1">
<doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
"Internet".</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="addrtype" writable="1">
<doc xml:space="preserve">the type of @address.</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="address" writable="1">
<doc xml:space="preserve">the address</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="ttl" writable="1">
<doc xml:space="preserve">the time to live of the address</doc>
<type name="guint" c:type="guint"/>
</field>
<field name="addr_number" writable="1">
<doc xml:space="preserve">the number of layers</doc>
<type name="guint" c:type="guint"/>
</field>
<method name="clear"
c:identifier="gst_sdp_connection_clear"
version="1.2">
<doc xml:space="preserve">Clear the connection.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">@GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="conn" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPConnection</doc>
<type name="SDPConnection" c:type="GstSDPConnection*"/>
</instance-parameter>
</parameters>
</method>
<method name="set" c:identifier="gst_sdp_connection_set" version="1.2">
<doc xml:space="preserve">Set the connection with the given parameters.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">@GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="conn" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPConnection</doc>
<type name="SDPConnection" c:type="GstSDPConnection*"/>
</instance-parameter>
<parameter name="nettype" transfer-ownership="none">
<doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
"Internet".</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="addrtype" transfer-ownership="none">
<doc xml:space="preserve">the type of address.</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="address" transfer-ownership="none">
<doc xml:space="preserve">the address</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="ttl" transfer-ownership="none">
<doc xml:space="preserve">the time to live of the address</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="addr_number" transfer-ownership="none">
<doc xml:space="preserve">the number of layers</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
</record>
<record name="SDPKey" c:type="GstSDPKey">
<doc xml:space="preserve">The contents of the SDP "k=" field which is used to convey encryption
keys.</doc>
<field name="type" writable="1">
<doc xml:space="preserve">the encryption type</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="data" writable="1">
<doc xml:space="preserve">the encryption data</doc>
<type name="utf8" c:type="gchar*"/>
</field>
</record>
<record name="SDPMedia" c:type="GstSDPMedia">
<doc xml:space="preserve">The contents of the SDP "m=" field with all related fields.</doc>
<field name="media" writable="1">
<doc xml:space="preserve">the media type</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="port" writable="1">
<doc xml:space="preserve">the transport port to which the media stream will be sent</doc>
<type name="guint" c:type="guint"/>
</field>
<field name="num_ports" writable="1">
<doc xml:space="preserve">the number of ports or -1 if only one port was specified</doc>
<type name="guint" c:type="guint"/>
</field>
<field name="proto" writable="1">
<doc xml:space="preserve">the transport protocol</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="fmts" writable="1">
<doc xml:space="preserve">an array of #gchar formats</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="information" writable="1">
<doc xml:space="preserve">the media title</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="connections" writable="1">
<doc xml:space="preserve">array of #GstSDPConnection with media connection information</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="bandwidths" writable="1">
<doc xml:space="preserve">array of #GstSDPBandwidth with media bandwidth information</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="key" writable="1">
<doc xml:space="preserve">the encryption key</doc>
<type name="SDPKey" c:type="GstSDPKey"/>
</field>
<field name="attributes" writable="1">
<doc xml:space="preserve">array of #GstSDPAttribute with the additional media attributes</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<method name="add_attribute" c:identifier="gst_sdp_media_add_attribute">
<doc xml:space="preserve">Add the attribute with @key and @value to @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve">a key</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="value"
transfer-ownership="none"
nullable="1"
allow-none="1">
<doc xml:space="preserve">a value</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="add_bandwidth" c:identifier="gst_sdp_media_add_bandwidth">
<doc xml:space="preserve">Add the bandwidth information with @bwtype and @bandwidth to @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="bwtype" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth modifier type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="bandwidth" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth in kilobits per second</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="add_connection"
c:identifier="gst_sdp_media_add_connection">
<doc xml:space="preserve">Add the given connection parameters to @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="nettype" transfer-ownership="none">
<doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
"Internet".</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="addrtype" transfer-ownership="none">
<doc xml:space="preserve">the type of address.</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="address" transfer-ownership="none">
<doc xml:space="preserve">the address</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="ttl" transfer-ownership="none">
<doc xml:space="preserve">the time to live of the address</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="addr_number" transfer-ownership="none">
<doc xml:space="preserve">the number of layers</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="add_format" c:identifier="gst_sdp_media_add_format">
<doc xml:space="preserve">Add the format information to @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="format" transfer-ownership="none">
<doc xml:space="preserve">the format</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="as_text" c:identifier="gst_sdp_media_as_text">
<doc xml:space="preserve">Convert the contents of @media to a text string.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">A dynamically allocated string representing the media.</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="attributes_len"
c:identifier="gst_sdp_media_attributes_len">
<doc xml:space="preserve">Get the number of attribute fields in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of attributes in @media.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="attributes_to_caps"
c:identifier="gst_sdp_media_attributes_to_caps"
version="1.8">
<doc xml:space="preserve">Mapping of attributes of #GstSDPMedia to #GstCaps</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="caps" transfer-ownership="none">
<doc xml:space="preserve">a #GstCaps</doc>
<type name="Gst.Caps" c:type="GstCaps*"/>
</parameter>
</parameters>
</method>
<method name="bandwidths_len"
c:identifier="gst_sdp_media_bandwidths_len">
<doc xml:space="preserve">Get the number of bandwidth fields in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of bandwidths in @media.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="connections_len"
c:identifier="gst_sdp_media_connections_len">
<doc xml:space="preserve">Get the number of connection fields in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of connections in @media.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="copy" c:identifier="gst_sdp_media_copy" version="1.2">
<doc xml:space="preserve">Allocate a new copy of @media and store the result in @copy. The value in
@copy should be release with gst_sdp_media_free function.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="copy"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia**"/>
</parameter>
</parameters>
</method>
<method name="formats_len" c:identifier="gst_sdp_media_formats_len">
<doc xml:space="preserve">Get the number of formats in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of formats in @media.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="free" c:identifier="gst_sdp_media_free">
<doc xml:space="preserve">Free all resources allocated by @media. @media should not be used anymore after
this function. This function should be used when @media was dynamically
allocated with gst_sdp_media_new().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_attribute" c:identifier="gst_sdp_media_get_attribute">
<doc xml:space="preserve">Get the attribute at position @idx in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the #GstSDPAttribute at position @idx.</doc>
<type name="SDPAttribute" c:type="const GstSDPAttribute*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_attribute_val"
c:identifier="gst_sdp_media_get_attribute_val">
<doc xml:space="preserve">Get the first attribute value for @key in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the first attribute value for @key.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve">a key</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="get_attribute_val_n"
c:identifier="gst_sdp_media_get_attribute_val_n">
<doc xml:space="preserve">Get the @nth attribute value for @key in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the @nth attribute value.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve">a key</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="nth" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_bandwidth" c:identifier="gst_sdp_media_get_bandwidth">
<doc xml:space="preserve">Get the bandwidth at position @idx in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the #GstSDPBandwidth at position @idx.</doc>
<type name="SDPBandwidth" c:type="const GstSDPBandwidth*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_caps_from_media"
c:identifier="gst_sdp_media_get_caps_from_media"
version="1.8">
<doc xml:space="preserve">Mapping of caps from SDP fields:
a=rtpmap:(payload) (encoding_name)/(clock_rate)[/(encoding_params)]
a=framesize:(payload) (width)-(height)
a=fmtp:(payload) (param)[=(value)];...</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a #GstCaps, or %NULL if an error happened</doc>
<type name="Gst.Caps" c:type="GstCaps*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="pt" transfer-ownership="none">
<doc xml:space="preserve">a payload type</doc>
<type name="gint" c:type="gint"/>
</parameter>
</parameters>
</method>
<method name="get_connection"
c:identifier="gst_sdp_media_get_connection">
<doc xml:space="preserve">Get the connection at position @idx in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the #GstSDPConnection at position @idx.</doc>
<type name="SDPConnection" c:type="const GstSDPConnection*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_format" c:identifier="gst_sdp_media_get_format">
<doc xml:space="preserve">Get the format information at position @idx in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the format at position @idx.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_information"
c:identifier="gst_sdp_media_get_information">
<doc xml:space="preserve">Get the information of @media</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the information of @media.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_key" c:identifier="gst_sdp_media_get_key">
<doc xml:space="preserve">Get the encryption information from @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPKey.</doc>
<type name="SDPKey" c:type="const GstSDPKey*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_media" c:identifier="gst_sdp_media_get_media">
<doc xml:space="preserve">Get the media description of @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the media description.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_num_ports" c:identifier="gst_sdp_media_get_num_ports">
<doc xml:space="preserve">Get the number of ports for @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of ports for @media.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_port" c:identifier="gst_sdp_media_get_port">
<doc xml:space="preserve">Get the port number for @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the port number of @media.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_proto" c:identifier="gst_sdp_media_get_proto">
<doc xml:space="preserve">Get the transport protocol of @media</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the transport protocol of @media.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="init" c:identifier="gst_sdp_media_init">
<doc xml:space="preserve">Initialize @media so that its contents are as if it was freshly allocated
with gst_sdp_media_new(). This function is mostly used to initialize a media
allocated on the stack. gst_sdp_media_uninit() undoes this operation.
When this function is invoked on newly allocated data (with malloc or on the
stack), its contents should be set to 0 before calling this function.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<method name="insert_attribute"
c:identifier="gst_sdp_media_insert_attribute"
version="1.2">
<doc xml:space="preserve">Insert the attribute to @media at @idx. When @idx is -1,
the attribute is appended.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="attr" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPAttribute</doc>
<type name="SDPAttribute" c:type="GstSDPAttribute*"/>
</parameter>
</parameters>
</method>
<method name="insert_bandwidth"
c:identifier="gst_sdp_media_insert_bandwidth"
version="1.2">
<doc xml:space="preserve">Insert the bandwidth information to @media at @idx. When @idx is -1,
the bandwidth is appended.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="bw" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPBandwidth</doc>
<type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
</parameter>
</parameters>
</method>
<method name="insert_connection"
c:identifier="gst_sdp_media_insert_connection"
version="1.2">
<doc xml:space="preserve">Insert the connection information to @media at @idx. When @idx is -1,
the connection is appended.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="conn" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPConnection</doc>
<type name="SDPConnection" c:type="GstSDPConnection*"/>
</parameter>
</parameters>
</method>
<method name="insert_format"
c:identifier="gst_sdp_media_insert_format"
version="1.2">
<doc xml:space="preserve">Insert the format information to @media at @idx. When @idx is -1,
the format is appended.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="format" transfer-ownership="none">
<doc xml:space="preserve">the format</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="parse_keymgmt"
c:identifier="gst_sdp_media_parse_keymgmt"
version="1.8.1">
<doc xml:space="preserve">Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute
from a #GstSDPMedia.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</instance-parameter>
<parameter name="mikey"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage**"/>
</parameter>
</parameters>
</method>
<method name="remove_attribute"
c:identifier="gst_sdp_media_remove_attribute"
version="1.2">
<doc xml:space="preserve">Remove the attribute in @media at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_bandwidth"
c:identifier="gst_sdp_media_remove_bandwidth"
version="1.2">
<doc xml:space="preserve">Remove the bandwidth information in @media at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_connection"
c:identifier="gst_sdp_media_remove_connection"
version="1.2">
<doc xml:space="preserve">Remove the connection information in @media at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_format"
c:identifier="gst_sdp_media_remove_format"
version="1.2">
<doc xml:space="preserve">Remove the format information in @media at @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="replace_attribute"
c:identifier="gst_sdp_media_replace_attribute"
version="1.2">
<doc xml:space="preserve">Replace the attribute in @media at @idx with @attr.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="attr" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPAttribute</doc>
<type name="SDPAttribute" c:type="GstSDPAttribute*"/>
</parameter>
</parameters>
</method>
<method name="replace_bandwidth"
c:identifier="gst_sdp_media_replace_bandwidth"
version="1.2">
<doc xml:space="preserve">Replace the bandwidth information in @media at @idx with @bw.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="bw" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPBandwidth</doc>
<type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
</parameter>
</parameters>
</method>
<method name="replace_connection"
c:identifier="gst_sdp_media_replace_connection"
version="1.2">
<doc xml:space="preserve">Replace the connection information in @media at @idx with @conn.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="conn" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPConnection</doc>
<type name="SDPConnection" c:type="GstSDPConnection*"/>
</parameter>
</parameters>
</method>
<method name="replace_format"
c:identifier="gst_sdp_media_replace_format"
version="1.2">
<doc xml:space="preserve">Replace the format information in @media at @idx with @format.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="format" transfer-ownership="none">
<doc xml:space="preserve">the format</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_information"
c:identifier="gst_sdp_media_set_information">
<doc xml:space="preserve">Set the media information of @media to @information.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="information" transfer-ownership="none">
<doc xml:space="preserve">the media information</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_key" c:identifier="gst_sdp_media_set_key">
<doc xml:space="preserve">Adds the encryption information to @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">the encryption type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve">the encryption data</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_media" c:identifier="gst_sdp_media_set_media">
<doc xml:space="preserve">Set the media description of @media to @med.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="med" transfer-ownership="none">
<doc xml:space="preserve">the media description</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_port_info" c:identifier="gst_sdp_media_set_port_info">
<doc xml:space="preserve">Set the port information in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="port" transfer-ownership="none">
<doc xml:space="preserve">the port number</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="num_ports" transfer-ownership="none">
<doc xml:space="preserve">the number of ports</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="set_proto" c:identifier="gst_sdp_media_set_proto">
<doc xml:space="preserve">Set the media transport protocol of @media to @proto.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
<parameter name="proto" transfer-ownership="none">
<doc xml:space="preserve">the media transport protocol</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="uninit" c:identifier="gst_sdp_media_uninit">
<doc xml:space="preserve">Free all resources allocated in @media. @media should not be used anymore after
this function. This function should be used when @media was allocated on the
stack and initialized with gst_sdp_media_init().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</instance-parameter>
</parameters>
</method>
<function name="new" c:identifier="gst_sdp_media_new">
<doc xml:space="preserve">Allocate a new GstSDPMedia and store the result in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="media"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia**"/>
</parameter>
</parameters>
</function>
<function name="set_media_from_caps"
c:identifier="gst_sdp_media_set_media_from_caps"
version="1.8">
<doc xml:space="preserve">Mapping of caps to SDP fields:
a=rtpmap:(payload) (encoding_name) or (clock_rate)[or (encoding_params)]
a=framesize:(payload) (width)-(height)
a=fmtp:(payload) (param)[=(value)];...
a=rtcp-fb:(payload) (param1) [param2]...</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="caps" transfer-ownership="none">
<doc xml:space="preserve">a #GstCaps</doc>
<type name="Gst.Caps" c:type="const GstCaps*"/>
</parameter>
<parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</parameter>
</parameters>
</function>
</record>
<record name="SDPMessage"
c:type="GstSDPMessage"
glib:type-name="GstSDPMessage"
glib:get-type="gst_sdp_message_get_type"
c:symbol-prefix="sdp_message">
<doc xml:space="preserve">The GstSDPMessage helper functions makes it easy to parse and create SDP
messages.</doc>
<field name="version" writable="1">
<doc xml:space="preserve">the protocol version</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="origin" writable="1">
<doc xml:space="preserve">owner/creator and session identifier</doc>
<type name="SDPOrigin" c:type="GstSDPOrigin"/>
</field>
<field name="session_name" writable="1">
<doc xml:space="preserve">session name</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="information" writable="1">
<doc xml:space="preserve">session information</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="uri" writable="1">
<doc xml:space="preserve">URI of description</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="emails" writable="1">
<doc xml:space="preserve">array of #gchar with email addresses</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="phones" writable="1">
<doc xml:space="preserve">array of #gchar with phone numbers</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="connection" writable="1">
<doc xml:space="preserve">connection information for the session</doc>
<type name="SDPConnection" c:type="GstSDPConnection"/>
</field>
<field name="bandwidths" writable="1">
<doc xml:space="preserve">array of #GstSDPBandwidth with bandwidth information</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="times" writable="1">
<doc xml:space="preserve">array of #GstSDPTime with time descriptions</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="zones" writable="1">
<doc xml:space="preserve">array of #GstSDPZone with time zone adjustments</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="key" writable="1">
<doc xml:space="preserve">encryption key</doc>
<type name="SDPKey" c:type="GstSDPKey"/>
</field>
<field name="attributes" writable="1">
<doc xml:space="preserve">array of #GstSDPAttribute with session attributes</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<field name="medias" writable="1">
<doc xml:space="preserve">array of #GstSDPMedia with media descriptions</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<method name="add_attribute"
c:identifier="gst_sdp_message_add_attribute">
<doc xml:space="preserve">Add the attribute with @key and @value to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">@GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve">the key</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="value"
transfer-ownership="none"
nullable="1"
allow-none="1">
<doc xml:space="preserve">the value</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="add_bandwidth"
c:identifier="gst_sdp_message_add_bandwidth">
<doc xml:space="preserve">Add the specified bandwidth information to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="bwtype" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth modifier type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="bandwidth" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth in kilobits per second</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="add_email" c:identifier="gst_sdp_message_add_email">
<doc xml:space="preserve">Add @email to the list of emails in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="email" transfer-ownership="none">
<doc xml:space="preserve">an email</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="add_media" c:identifier="gst_sdp_message_add_media">
<doc xml:space="preserve">Adds @media to the array of medias in @msg. This function takes ownership of
the contents of @media so that @media will have to be reinitialized with
gst_sdp_media_init() before it can be used again.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia to add</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</parameter>
</parameters>
</method>
<method name="add_phone" c:identifier="gst_sdp_message_add_phone">
<doc xml:space="preserve">Add @phone to the list of phones in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="phone" transfer-ownership="none">
<doc xml:space="preserve">a phone</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="add_time" c:identifier="gst_sdp_message_add_time">
<doc xml:space="preserve">Add time information @start and @stop to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="start" transfer-ownership="none">
<doc xml:space="preserve">the start time</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="stop" transfer-ownership="none">
<doc xml:space="preserve">the stop time</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="repeat" transfer-ownership="none">
<doc xml:space="preserve">the repeat times</doc>
<array c:type="const gchar**">
<type name="utf8" c:type="gchar*"/>
</array>
</parameter>
</parameters>
</method>
<method name="add_zone" c:identifier="gst_sdp_message_add_zone">
<doc xml:space="preserve">Add time zone information to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="adj_time" transfer-ownership="none">
<doc xml:space="preserve">the NTP time that a time zone adjustment happens</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="typed_time" transfer-ownership="none">
<doc xml:space="preserve">the offset from the time when the session was first scheduled</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="as_text" c:identifier="gst_sdp_message_as_text">
<doc xml:space="preserve">Convert the contents of @msg to a text string.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">A dynamically allocated string representing the SDP description.</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="attributes_len"
c:identifier="gst_sdp_message_attributes_len">
<doc xml:space="preserve">Get the number of attributes in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of attributes in @msg.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="attributes_to_caps"
c:identifier="gst_sdp_message_attributes_to_caps"
version="1.8">
<doc xml:space="preserve">Mapping of attributes of #GstSDPMessage to #GstCaps</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="caps" transfer-ownership="none">
<doc xml:space="preserve">a #GstCaps</doc>
<type name="Gst.Caps" c:type="GstCaps*"/>
</parameter>
</parameters>
</method>
<method name="bandwidths_len"
c:identifier="gst_sdp_message_bandwidths_len">
<doc xml:space="preserve">Get the number of bandwidth information in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of bandwidth information in @msg.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="copy" c:identifier="gst_sdp_message_copy" version="1.2">
<doc xml:space="preserve">Allocate a new copy of @msg and store the result in @copy. The value in
@copy should be release with gst_sdp_message_free function.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="copy"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage**"/>
</parameter>
</parameters>
</method>
<method name="dump" c:identifier="gst_sdp_message_dump">
<doc xml:space="preserve">Dump the parsed contents of @msg to stdout.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="emails_len" c:identifier="gst_sdp_message_emails_len">
<doc xml:space="preserve">Get the number of emails in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of emails in @msg.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="free" c:identifier="gst_sdp_message_free">
<doc xml:space="preserve">Free all resources allocated by @msg. @msg should not be used anymore after
this function. This function should be used when @msg was dynamically
allocated with gst_sdp_message_new().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_attribute"
c:identifier="gst_sdp_message_get_attribute">
<doc xml:space="preserve">Get the attribute at position @idx in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the #GstSDPAttribute at position @idx.</doc>
<type name="SDPAttribute" c:type="const GstSDPAttribute*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_attribute_val"
c:identifier="gst_sdp_message_get_attribute_val">
<doc xml:space="preserve">Get the first attribute with key @key in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the attribute value of the first attribute with @key.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve">the key</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="get_attribute_val_n"
c:identifier="gst_sdp_message_get_attribute_val_n">
<doc xml:space="preserve">Get the @nth attribute with key @key in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the attribute value of the @nth attribute with @key.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="key" transfer-ownership="none">
<doc xml:space="preserve">the key</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="nth" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_bandwidth"
c:identifier="gst_sdp_message_get_bandwidth">
<doc xml:space="preserve">Get the bandwidth at index @idx from @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPBandwidth.</doc>
<type name="SDPBandwidth" c:type="const GstSDPBandwidth*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_connection"
c:identifier="gst_sdp_message_get_connection">
<doc xml:space="preserve">Get the connection of @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPConnection. The result remains valid as long as @msg is valid.</doc>
<type name="SDPConnection" c:type="const GstSDPConnection*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_email" c:identifier="gst_sdp_message_get_email">
<doc xml:space="preserve">Get the email with number @idx from @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the email at position @idx.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an email index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_information"
c:identifier="gst_sdp_message_get_information">
<doc xml:space="preserve">Get the information in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_key" c:identifier="gst_sdp_message_get_key">
<doc xml:space="preserve">Get the encryption information from @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPKey.</doc>
<type name="SDPKey" c:type="const GstSDPKey*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_media" c:identifier="gst_sdp_message_get_media">
<doc xml:space="preserve">Get the media description at index @idx in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia.</doc>
<type name="SDPMedia" c:type="const GstSDPMedia*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_origin" c:identifier="gst_sdp_message_get_origin">
<doc xml:space="preserve">Get the origin of @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPOrigin. The result remains valid as long as @msg is valid.</doc>
<type name="SDPOrigin" c:type="const GstSDPOrigin*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_phone" c:identifier="gst_sdp_message_get_phone">
<doc xml:space="preserve">Get the phone with number @idx from @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the phone at position @idx.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">a phone index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_session_name"
c:identifier="gst_sdp_message_get_session_name">
<doc xml:space="preserve">Get the session name in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_time" c:identifier="gst_sdp_message_get_time">
<doc xml:space="preserve">Get time information with index @idx from @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPTime.</doc>
<type name="SDPTime" c:type="const GstSDPTime*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the time index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="get_uri" c:identifier="gst_sdp_message_get_uri">
<doc xml:space="preserve">Get the URI in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_version" c:identifier="gst_sdp_message_get_version">
<doc xml:space="preserve">Get the version in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="utf8" c:type="const gchar*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_zone" c:identifier="gst_sdp_message_get_zone">
<doc xml:space="preserve">Get time zone information with index @idx from @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPZone.</doc>
<type name="SDPZone" c:type="const GstSDPZone*"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the zone index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="init" c:identifier="gst_sdp_message_init">
<doc xml:space="preserve">Initialize @msg so that its contents are as if it was freshly allocated
with gst_sdp_message_new(). This function is mostly used to initialize a message
allocated on the stack. gst_sdp_message_uninit() undoes this operation.
When this function is invoked on newly allocated data (with malloc or on the
stack), its contents should be set to 0 before calling this function.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="insert_attribute"
c:identifier="gst_sdp_message_insert_attribute"
version="1.2">
<doc xml:space="preserve">Insert attribute into the array of attributes in @msg
at index @idx.
When -1 is given as @idx, the attribute is inserted at the end.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="attr" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPAttribute</doc>
<type name="SDPAttribute" c:type="GstSDPAttribute*"/>
</parameter>
</parameters>
</method>
<method name="insert_bandwidth"
c:identifier="gst_sdp_message_insert_bandwidth"
version="1.2">
<doc xml:space="preserve">Insert bandwidth parameters into the array of bandwidths in @msg
at index @idx.
When -1 is given as @idx, the bandwidth is inserted at the end.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="bw" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth</doc>
<type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
</parameter>
</parameters>
</method>
<method name="insert_email"
c:identifier="gst_sdp_message_insert_email"
version="1.2">
<doc xml:space="preserve">Insert @email into the array of emails in @msg at index @idx.
When -1 is given as @idx, the email is inserted at the end.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="email" transfer-ownership="none">
<doc xml:space="preserve">an email</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="insert_phone"
c:identifier="gst_sdp_message_insert_phone"
version="1.2">
<doc xml:space="preserve">Insert @phone into the array of phone numbers in @msg at index @idx.
When -1 is given as @idx, the phone is inserted at the end.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">a phone index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="phone" transfer-ownership="none">
<doc xml:space="preserve">a phone</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="insert_time"
c:identifier="gst_sdp_message_insert_time"
version="1.2">
<doc xml:space="preserve">Insert time parameters into the array of times in @msg
at index @idx.
When -1 is given as @idx, the times are inserted at the end.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="t" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPTime</doc>
<type name="SDPTime" c:type="GstSDPTime*"/>
</parameter>
</parameters>
</method>
<method name="insert_zone"
c:identifier="gst_sdp_message_insert_zone"
version="1.2">
<doc xml:space="preserve">Insert zone parameters into the array of zones in @msg
at index @idx.
When -1 is given as @idx, the zone is inserted at the end.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an index
@zone a #GstSDPZone</doc>
<type name="gint" c:type="gint"/>
</parameter>
<parameter name="zone" transfer-ownership="none">
<type name="SDPZone" c:type="GstSDPZone*"/>
</parameter>
</parameters>
</method>
<method name="medias_len" c:identifier="gst_sdp_message_medias_len">
<doc xml:space="preserve">Get the number of media descriptions in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of media descriptions in @msg.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="parse_keymgmt"
c:identifier="gst_sdp_message_parse_keymgmt"
version="1.8.1">
<doc xml:space="preserve">Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute
from a #GstSDPMessage.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
<parameter name="mikey"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstMIKEYMessage</doc>
<type name="MIKEYMessage" c:type="GstMIKEYMessage**"/>
</parameter>
</parameters>
</method>
<method name="phones_len" c:identifier="gst_sdp_message_phones_len">
<doc xml:space="preserve">Get the number of phones in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of phones in @msg.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="remove_attribute"
c:identifier="gst_sdp_message_remove_attribute"
version="1.2">
<doc xml:space="preserve">Remove the attribute in @msg at index @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_bandwidth"
c:identifier="gst_sdp_message_remove_bandwidth"
version="1.2">
<doc xml:space="preserve">Remove the bandwidth information in @msg at index @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_email"
c:identifier="gst_sdp_message_remove_email"
version="1.2">
<doc xml:space="preserve">Remove the email in @msg at index @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an email index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_phone"
c:identifier="gst_sdp_message_remove_phone"
version="1.2">
<doc xml:space="preserve">Remove the phone number in @msg at index @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">a phone index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_time"
c:identifier="gst_sdp_message_remove_time"
version="1.2">
<doc xml:space="preserve">Remove the time information in @msg at index @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="remove_zone"
c:identifier="gst_sdp_message_remove_zone"
version="1.2">
<doc xml:space="preserve">Remove the zone information in @msg at index @idx.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="replace_attribute"
c:identifier="gst_sdp_message_replace_attribute"
version="1.2">
<doc xml:space="preserve">Replace the attribute in @msg at index @idx with @attr.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="attr" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPAttribute</doc>
<type name="SDPAttribute" c:type="GstSDPAttribute*"/>
</parameter>
</parameters>
</method>
<method name="replace_bandwidth"
c:identifier="gst_sdp_message_replace_bandwidth"
version="1.2">
<doc xml:space="preserve">Replace the bandwidth information in @msg at index @idx with @bw.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="bw" transfer-ownership="none">
<doc xml:space="preserve">the bandwidth</doc>
<type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
</parameter>
</parameters>
</method>
<method name="replace_email"
c:identifier="gst_sdp_message_replace_email"
version="1.2">
<doc xml:space="preserve">Replace the email in @msg at index @idx with @email.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">an email index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="email" transfer-ownership="none">
<doc xml:space="preserve">an email</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="replace_phone"
c:identifier="gst_sdp_message_replace_phone"
version="1.2">
<doc xml:space="preserve">Replace the phone number in @msg at index @idx with @phone.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">a phone index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="phone" transfer-ownership="none">
<doc xml:space="preserve">a phone</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="replace_time"
c:identifier="gst_sdp_message_replace_time"
version="1.2">
<doc xml:space="preserve">Replace the time information in @msg at index @idx with @t.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="t" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPTime</doc>
<type name="SDPTime" c:type="GstSDPTime*"/>
</parameter>
</parameters>
</method>
<method name="replace_zone"
c:identifier="gst_sdp_message_replace_zone"
version="1.2">
<doc xml:space="preserve">Replace the zone information in @msg at index @idx with @zone.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="idx" transfer-ownership="none">
<doc xml:space="preserve">the index</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="zone" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPZone</doc>
<type name="SDPZone" c:type="GstSDPZone*"/>
</parameter>
</parameters>
</method>
<method name="set_connection"
c:identifier="gst_sdp_message_set_connection">
<doc xml:space="preserve">Configure the SDP connection in @msg with the given parameters.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="nettype" transfer-ownership="none">
<doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
"Internet".</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="addrtype" transfer-ownership="none">
<doc xml:space="preserve">the type of address.</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="address" transfer-ownership="none">
<doc xml:space="preserve">the address</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="ttl" transfer-ownership="none">
<doc xml:space="preserve">the time to live of the address</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="addr_number" transfer-ownership="none">
<doc xml:space="preserve">the number of layers</doc>
<type name="guint" c:type="guint"/>
</parameter>
</parameters>
</method>
<method name="set_information"
c:identifier="gst_sdp_message_set_information">
<doc xml:space="preserve">Set the information in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="information" transfer-ownership="none">
<doc xml:space="preserve">the information</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_key" c:identifier="gst_sdp_message_set_key">
<doc xml:space="preserve">Adds the encryption information to @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">the encryption type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve">the encryption data</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_origin" c:identifier="gst_sdp_message_set_origin">
<doc xml:space="preserve">Configure the SDP origin in @msg with the given parameters.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="username" transfer-ownership="none">
<doc xml:space="preserve">the user name</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="sess_id" transfer-ownership="none">
<doc xml:space="preserve">a session id</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="sess_version" transfer-ownership="none">
<doc xml:space="preserve">a session version</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="nettype" transfer-ownership="none">
<doc xml:space="preserve">a network type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="addrtype" transfer-ownership="none">
<doc xml:space="preserve">an address type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="addr" transfer-ownership="none">
<doc xml:space="preserve">an address</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_session_name"
c:identifier="gst_sdp_message_set_session_name">
<doc xml:space="preserve">Set the session name in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="session_name" transfer-ownership="none">
<doc xml:space="preserve">the session name</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_uri" c:identifier="gst_sdp_message_set_uri">
<doc xml:space="preserve">Set the URI in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="uri" transfer-ownership="none">
<doc xml:space="preserve">the URI</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="set_version" c:identifier="gst_sdp_message_set_version">
<doc xml:space="preserve">Set the version in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
<parameter name="version" transfer-ownership="none">
<doc xml:space="preserve">the version</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
<method name="times_len" c:identifier="gst_sdp_message_times_len">
<doc xml:space="preserve">Get the number of time information entries in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of time information entries in @msg.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="uninit" c:identifier="gst_sdp_message_uninit">
<doc xml:space="preserve">Free all resources allocated in @msg. @msg should not be used anymore after
this function. This function should be used when @msg was allocated on the
stack and initialized with gst_sdp_message_init().</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<method name="zones_len" c:identifier="gst_sdp_message_zones_len">
<doc xml:space="preserve">Get the number of time zone information entries in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">the number of time zone information entries in @msg.</doc>
<type name="guint" c:type="guint"/>
</return-value>
<parameters>
<instance-parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</instance-parameter>
</parameters>
</method>
<function name="as_uri" c:identifier="gst_sdp_message_as_uri">
<doc xml:space="preserve">Creates a uri from @msg with the given @scheme. The uri has the format:
\@scheme:///[#type=value *[&amp;type=value]]
Where each value is url encoded.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a uri for @msg.</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<parameter name="scheme" transfer-ownership="none">
<doc xml:space="preserve">the uri scheme</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">the #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</parameter>
</parameters>
</function>
<function name="new" c:identifier="gst_sdp_message_new">
<doc xml:space="preserve">Allocate a new GstSDPMessage and store the result in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="msg"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage**"/>
</parameter>
</parameters>
</function>
<function name="parse_buffer"
c:identifier="gst_sdp_message_parse_buffer">
<doc xml:space="preserve">Parse the contents of @size bytes pointed to by @data and store the result in
@msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK on success.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve">the start of the buffer</doc>
<array length="1" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
<parameter name="size" transfer-ownership="none">
<doc xml:space="preserve">the size of the buffer</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">the result #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</parameter>
</parameters>
</function>
<function name="parse_uri" c:identifier="gst_sdp_message_parse_uri">
<doc xml:space="preserve">Parse the null-terminated @uri and store the result in @msg.
The uri should be of the form:
scheme://[address[:ttl=ttl][:noa=noa]]/[sessionname]
[#type=value *[&amp;type=value]]
where value is url encoded. This looslely resembles
http://tools.ietf.org/html/draft-fujikawa-sdp-url-01</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK on success.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="uri" transfer-ownership="none">
<doc xml:space="preserve">the start of the uri</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">the result #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</parameter>
</parameters>
</function>
</record>
<record name="SDPOrigin" c:type="GstSDPOrigin">
<doc xml:space="preserve">The contents of the SDP "o=" field which gives the originator of the session
(their username and the address of the user's host) plus a session id and
session version number.</doc>
<field name="username" writable="1">
<doc xml:space="preserve">the user's login on the originating host, or it is "-"
if the originating host does not support the concept of user ids.</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="sess_id" writable="1">
<doc xml:space="preserve">is a numeric string such that the tuple of @username, @sess_id,
@nettype, @addrtype and @addr form a globally unique identifier for the
session.</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="sess_version" writable="1">
<doc xml:space="preserve">a version number for this announcement</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="nettype" writable="1">
<doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
"Internet".</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="addrtype" writable="1">
<doc xml:space="preserve">the type of @addr.</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="addr" writable="1">
<doc xml:space="preserve">the globally unique address of the machine from which the session was
created.</doc>
<type name="utf8" c:type="gchar*"/>
</field>
</record>
<enumeration name="SDPResult" c:type="GstSDPResult">
<doc xml:space="preserve">Return values for the SDP functions.</doc>
<member name="ok" value="0" c:identifier="GST_SDP_OK">
<doc xml:space="preserve">A successful return value</doc>
</member>
<member name="einval" value="-1" c:identifier="GST_SDP_EINVAL">
<doc xml:space="preserve">a function was given invalid parameters</doc>
</member>
</enumeration>
<record name="SDPTime" c:type="GstSDPTime">
<doc xml:space="preserve">The contents of the SDP "t=" field which specify the start and stop times for
a conference session.</doc>
<field name="start" writable="1">
<doc xml:space="preserve">start time for the conference. The value is the decimal
representation of Network Time Protocol (NTP) time values in seconds</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="stop" writable="1">
<doc xml:space="preserve">stop time for the conference. The value is the decimal
representation of Network Time Protocol (NTP) time values in seconds</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="repeat" writable="1">
<doc xml:space="preserve">repeat times for a session</doc>
<array name="GLib.Array" c:type="GArray*">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<method name="clear" c:identifier="gst_sdp_time_clear" version="1.2">
<doc xml:space="preserve">Reset the time information in @t.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="t" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPTime</doc>
<type name="SDPTime" c:type="GstSDPTime*"/>
</instance-parameter>
</parameters>
</method>
<method name="set" c:identifier="gst_sdp_time_set" version="1.2">
<doc xml:space="preserve">Set time information @start, @stop and @repeat in @t.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="t" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPTime</doc>
<type name="SDPTime" c:type="GstSDPTime*"/>
</instance-parameter>
<parameter name="start" transfer-ownership="none">
<doc xml:space="preserve">the start time</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="stop" transfer-ownership="none">
<doc xml:space="preserve">the stop time</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="repeat" transfer-ownership="none">
<doc xml:space="preserve">the repeat times</doc>
<array c:type="const gchar**">
<type name="utf8" c:type="gchar*"/>
</array>
</parameter>
</parameters>
</method>
</record>
<record name="SDPZone" c:type="GstSDPZone">
<doc xml:space="preserve">The contents of the SDP "z=" field which allows the sender to
specify a list of time zone adjustments and offsets from the base
time.</doc>
<field name="time" writable="1">
<doc xml:space="preserve">the NTP time that a time zone adjustment happens</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="typed_time" writable="1">
<doc xml:space="preserve">the offset from the time when the session was first scheduled</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<method name="clear" c:identifier="gst_sdp_zone_clear" version="1.2">
<doc xml:space="preserve">Reset the zone information in @zone.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="zone" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPZone</doc>
<type name="SDPZone" c:type="GstSDPZone*"/>
</instance-parameter>
</parameters>
</method>
<method name="set" c:identifier="gst_sdp_zone_set" version="1.2">
<doc xml:space="preserve">Set zone information in @zone.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<instance-parameter name="zone" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPZone</doc>
<type name="SDPZone" c:type="GstSDPZone*"/>
</instance-parameter>
<parameter name="adj_time" transfer-ownership="none">
<doc xml:space="preserve">the NTP time that a time zone adjustment happens</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="typed_time" transfer-ownership="none">
<doc xml:space="preserve">the offset from the time when the session was first scheduled</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</method>
</record>
<constant name="SDP_BWTYPE_AS" value="AS" c:type="GST_SDP_BWTYPE_AS">
<doc xml:space="preserve">The Application-Specific Maximum bandwidth modifier.</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<constant name="SDP_BWTYPE_CT" value="CT" c:type="GST_SDP_BWTYPE_CT">
<doc xml:space="preserve">The Conference Total bandwidth modifier.</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<constant name="SDP_BWTYPE_EXT_PREFIX"
value="X-"
c:type="GST_SDP_BWTYPE_EXT_PREFIX">
<doc xml:space="preserve">The extension prefix bandwidth modifier.</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<constant name="SDP_BWTYPE_RR" value="RR" c:type="GST_SDP_BWTYPE_RR">
<doc xml:space="preserve">RTCP bandwidth allocated to data receivers (RFC 3556).</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<constant name="SDP_BWTYPE_RS" value="RS" c:type="GST_SDP_BWTYPE_RS">
<doc xml:space="preserve">RTCP bandwidth allocated to active data senders (RFC 3556).</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<constant name="SDP_BWTYPE_TIAS" value="TIAS" c:type="GST_SDP_BWTYPE_TIAS">
<doc xml:space="preserve">Transport Independent Application Specific Maximum bandwidth (RFC 3890).</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<function name="sdp_address_is_multicast"
c:identifier="gst_sdp_address_is_multicast">
<doc xml:space="preserve">Check if the given @addr is a multicast address.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">TRUE when @addr is multicast.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="nettype" transfer-ownership="none">
<doc xml:space="preserve">a network type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="addrtype" transfer-ownership="none">
<doc xml:space="preserve">an address type</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="addr" transfer-ownership="none">
<doc xml:space="preserve">an address</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</function>
<function name="sdp_make_keymgmt"
c:identifier="gst_sdp_make_keymgmt"
version="1.8">
<doc xml:space="preserve">Makes key management data</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a #gchar key-mgmt data,</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<parameter name="uri" transfer-ownership="none">
<doc xml:space="preserve">a #gchar URI</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="base64" transfer-ownership="none">
<doc xml:space="preserve">a #gchar base64-encoded key data</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</function>
<function name="sdp_media_new"
c:identifier="gst_sdp_media_new"
moved-to="SDPMedia.new">
<doc xml:space="preserve">Allocate a new GstSDPMedia and store the result in @media.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="media"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia**"/>
</parameter>
</parameters>
</function>
<function name="sdp_media_set_media_from_caps"
c:identifier="gst_sdp_media_set_media_from_caps"
moved-to="SDPMedia.set_media_from_caps"
version="1.8">
<doc xml:space="preserve">Mapping of caps to SDP fields:
a=rtpmap:(payload) (encoding_name) or (clock_rate)[or (encoding_params)]
a=framesize:(payload) (width)-(height)
a=fmtp:(payload) (param)[=(value)];...
a=rtcp-fb:(payload) (param1) [param2]...</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="caps" transfer-ownership="none">
<doc xml:space="preserve">a #GstCaps</doc>
<type name="Gst.Caps" c:type="const GstCaps*"/>
</parameter>
<parameter name="media" transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPMedia</doc>
<type name="SDPMedia" c:type="GstSDPMedia*"/>
</parameter>
</parameters>
</function>
<function name="sdp_message_as_uri"
c:identifier="gst_sdp_message_as_uri"
moved-to="SDPMessage.as_uri">
<doc xml:space="preserve">Creates a uri from @msg with the given @scheme. The uri has the format:
\@scheme:///[#type=value *[&amp;type=value]]
Where each value is url encoded.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a uri for @msg.</doc>
<type name="utf8" c:type="gchar*"/>
</return-value>
<parameters>
<parameter name="scheme" transfer-ownership="none">
<doc xml:space="preserve">the uri scheme</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">the #GstSDPMessage</doc>
<type name="SDPMessage" c:type="const GstSDPMessage*"/>
</parameter>
</parameters>
</function>
<function name="sdp_message_new"
c:identifier="gst_sdp_message_new"
moved-to="SDPMessage.new">
<doc xml:space="preserve">Allocate a new GstSDPMessage and store the result in @msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">a #GstSDPResult.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="msg"
direction="out"
caller-allocates="0"
transfer-ownership="full">
<doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage**"/>
</parameter>
</parameters>
</function>
<function name="sdp_message_parse_buffer"
c:identifier="gst_sdp_message_parse_buffer"
moved-to="SDPMessage.parse_buffer">
<doc xml:space="preserve">Parse the contents of @size bytes pointed to by @data and store the result in
@msg.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK on success.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="data" transfer-ownership="none">
<doc xml:space="preserve">the start of the buffer</doc>
<array length="1" zero-terminated="0" c:type="const guint8*">
<type name="guint8" c:type="guint8"/>
</array>
</parameter>
<parameter name="size" transfer-ownership="none">
<doc xml:space="preserve">the size of the buffer</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">the result #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</parameter>
</parameters>
</function>
<function name="sdp_message_parse_uri"
c:identifier="gst_sdp_message_parse_uri"
moved-to="SDPMessage.parse_uri">
<doc xml:space="preserve">Parse the null-terminated @uri and store the result in @msg.
The uri should be of the form:
scheme://[address[:ttl=ttl][:noa=noa]]/[sessionname]
[#type=value *[&amp;type=value]]
where value is url encoded. This looslely resembles
http://tools.ietf.org/html/draft-fujikawa-sdp-url-01</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">#GST_SDP_OK on success.</doc>
<type name="SDPResult" c:type="GstSDPResult"/>
</return-value>
<parameters>
<parameter name="uri" transfer-ownership="none">
<doc xml:space="preserve">the start of the uri</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
<parameter name="msg" transfer-ownership="none">
<doc xml:space="preserve">the result #GstSDPMessage</doc>
<type name="SDPMessage" c:type="GstSDPMessage*"/>
</parameter>
</parameters>
</function>
</namespace>
</repository>