gstsdpmessage

gstsdpmessage — Helper methods for dealing with SDP messages

Synopsis


#include <gst/sdp/gstsdpmessage.h>

enum                GstSDPResult;
                    GstSDPOrigin;
                    GstSDPConnection;
#define             GST_SDP_BWTYPE_CT
#define             GST_SDP_BWTYPE_AS
#define             GST_SDP_BWTYPE_EXT_PREFIX
                    GstSDPBandwidth;
                    GstSDPTime;
                    GstSDPZone;
                    GstSDPKey;
                    GstSDPAttribute;
                    GstSDPMedia;
                    GstSDPMessage;
GstSDPResult        gst_sdp_message_new                 (GstSDPMessage **msg);
GstSDPResult        gst_sdp_message_init                (GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_uninit              (GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_free                (GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_parse_buffer        (const guint8 *data,
                                                         guint size,
                                                         GstSDPMessage *msg);
const gchar*        gst_sdp_message_get_version         (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_set_version         (GstSDPMessage *msg,
                                                         const gchar *version);
const GstSDPOrigin* gst_sdp_message_get_origin          (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_set_origin          (GstSDPMessage *msg,
                                                         const gchar *username,
                                                         const gchar *sess_id,
                                                         const gchar *sess_version,
                                                         const gchar *nettype,
                                                         const gchar *addrtype,
                                                         const gchar *addr);
const gchar*        gst_sdp_message_get_session_name    (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_set_session_name    (GstSDPMessage *msg,
                                                         const gchar *session_name);
const gchar*        gst_sdp_message_get_information     (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_set_information     (GstSDPMessage *msg,
                                                         const gchar *information);
const gchar*        gst_sdp_message_get_uri             (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_set_uri             (GstSDPMessage *msg,
                                                         const gchar *uri);
guint               gst_sdp_message_emails_len          (const GstSDPMessage *msg);
const gchar*        gst_sdp_message_get_email           (const GstSDPMessage *msg,
                                                         guint idx);
GstSDPResult        gst_sdp_message_add_email           (GstSDPMessage *msg,
                                                         const gchar *email);
guint               gst_sdp_message_phones_len          (const GstSDPMessage *msg);
const gchar*        gst_sdp_message_get_phone           (const GstSDPMessage *msg,
                                                         guint idx);
GstSDPResult        gst_sdp_message_add_phone           (GstSDPMessage *msg,
                                                         const gchar *phone);
const GstSDPConnection* gst_sdp_message_get_connection  (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_set_connection      (GstSDPMessage *msg,
                                                         const gchar *nettype,
                                                         const gchar *addrtype,
                                                         const gchar *address,
                                                         guint ttl,
                                                         guint addr_number);
guint               gst_sdp_message_bandwidths_len      (const GstSDPMessage *msg);
const GstSDPBandwidth* gst_sdp_message_get_bandwidth    (const GstSDPMessage *msg,
                                                         guint idx);
GstSDPResult        gst_sdp_message_add_bandwidth       (GstSDPMessage *msg,
                                                         const gchar *bwtype,
                                                         guint bandwidth);
guint               gst_sdp_message_times_len           (const GstSDPMessage *msg);
const GstSDPTime*   gst_sdp_message_get_time            (const GstSDPMessage *msg,
                                                         guint idx);
GstSDPResult        gst_sdp_message_add_time            (GstSDPMessage *msg,
                                                         const gchar *start,
                                                         const gchar *stop,
                                                         const gchar **repeat);
guint               gst_sdp_message_zones_len           (const GstSDPMessage *msg);
const GstSDPZone*   gst_sdp_message_get_zone            (const GstSDPMessage *msg,
                                                         guint idx);
GstSDPResult        gst_sdp_message_add_zone            (GstSDPMessage *msg,
                                                         const gchar *adj_time,
                                                         const gchar *typed_time);
const GstSDPKey*    gst_sdp_message_get_key             (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_message_set_key             (GstSDPMessage *msg,
                                                         const gchar *type,
                                                         const gchar *data);
guint               gst_sdp_message_attributes_len      (const GstSDPMessage *msg);
const GstSDPAttribute* gst_sdp_message_get_attribute    (const GstSDPMessage *msg,
                                                         guint idx);
const gchar*        gst_sdp_message_get_attribute_val   (const GstSDPMessage *msg,
                                                         const gchar *key);
const gchar*        gst_sdp_message_get_attribute_val_n (const GstSDPMessage *msg,
                                                         const gchar *key,
                                                         guint nth);
GstSDPResult        gst_sdp_message_add_attribute       (GstSDPMessage *msg,
                                                         const gchar *key,
                                                         const gchar *value);
guint               gst_sdp_message_medias_len          (const GstSDPMessage *msg);
const GstSDPMedia*  gst_sdp_message_get_media           (const GstSDPMessage *msg,
                                                         guint idx);
GstSDPResult        gst_sdp_message_add_media           (GstSDPMessage *msg,
                                                         GstSDPMedia *media);
GstSDPResult        gst_sdp_message_dump                (const GstSDPMessage *msg);
GstSDPResult        gst_sdp_media_new                   (GstSDPMedia **media);
GstSDPResult        gst_sdp_media_init                  (GstSDPMedia *media);
GstSDPResult        gst_sdp_media_uninit                (GstSDPMedia *media);
GstSDPResult        gst_sdp_media_free                  (GstSDPMedia *media);
const gchar*        gst_sdp_media_get_media             (const GstSDPMedia *media);
GstSDPResult        gst_sdp_media_set_media             (GstSDPMedia *media,
                                                         const gchar *med);
guint               gst_sdp_media_get_port              (const GstSDPMedia *media);
guint               gst_sdp_media_get_num_ports         (const GstSDPMedia *media);
GstSDPResult        gst_sdp_media_set_port_info         (GstSDPMedia *media,
                                                         guint port,
                                                         guint num_ports);
const gchar*        gst_sdp_media_get_proto             (const GstSDPMedia *media);
GstSDPResult        gst_sdp_media_set_proto             (GstSDPMedia *media,
                                                         const gchar *proto);
guint               gst_sdp_media_formats_len           (const GstSDPMedia *media);
const gchar*        gst_sdp_media_get_format            (const GstSDPMedia *media,
                                                         guint idx);
GstSDPResult        gst_sdp_media_add_format            (GstSDPMedia *media,
                                                         const gchar *format);
const gchar*        gst_sdp_media_get_information       (const GstSDPMedia *media);
GstSDPResult        gst_sdp_media_set_information       (GstSDPMedia *media,
                                                         const gchar *information);
guint               gst_sdp_media_connections_len       (const GstSDPMedia *media);
const GstSDPConnection* gst_sdp_media_get_connection    (const GstSDPMedia *media,
                                                         guint idx);
GstSDPResult        gst_sdp_media_add_connection        (GstSDPMedia *media,
                                                         const gchar *nettype,
                                                         const gchar *addrtype,
                                                         const gchar *address,
                                                         guint ttl,
                                                         guint addr_number);
guint               gst_sdp_media_bandwidths_len        (const GstSDPMedia *media);
const GstSDPBandwidth* gst_sdp_media_get_bandwidth      (const GstSDPMedia *media,
                                                         guint idx);
GstSDPResult        gst_sdp_media_add_bandwidth         (GstSDPMedia *media,
                                                         const gchar *bwtype,
                                                         guint bandwidth);
const GstSDPKey*    gst_sdp_media_get_key               (const GstSDPMedia *media);
GstSDPResult        gst_sdp_media_set_key               (GstSDPMedia *media,
                                                         const gchar *type,
                                                         const gchar *data);
guint               gst_sdp_media_attributes_len        (const GstSDPMedia *media);
const GstSDPAttribute* gst_sdp_media_get_attribute      (const GstSDPMedia *media,
                                                         guint idx);
const gchar*        gst_sdp_media_get_attribute_val     (const GstSDPMedia *media,
                                                         const gchar *key);
const gchar*        gst_sdp_media_get_attribute_val_n   (const GstSDPMedia *media,
                                                         const gchar *key,
                                                         guint nth);
GstSDPResult        gst_sdp_media_add_attribute         (GstSDPMedia *media,
                                                         const gchar *key,
                                                         const gchar *value);

Description

The GstSDPMessage helper functions makes it easy to parse and create SDP messages.

Last reviewed on 2007-07-24 (0.10.14)

Details

enum GstSDPResult

typedef enum {
  GST_SDP_OK     = 0,
  GST_SDP_EINVAL = -1
} GstSDPResult;

Return values for the SDP functions.

GST_SDP_OK A successful return value
GST_SDP_EINVAL a function was given invalid parameters

GstSDPOrigin

typedef struct {
  gchar *username;
  gchar *sess_id;
  gchar *sess_version;
  gchar *nettype;
  gchar *addrtype;
  gchar *addr;
} GstSDPOrigin;

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.

gchar *username; the user's login on the originating host, or it is "-" if the originating host does not support the concept of user ids.
gchar *sess_id; is a numeric string such that the tuple of username, sess_id, nettype, addrtype and addr form a globally unique identifier for the session.
gchar *sess_version; a version number for this announcement
gchar *nettype; the type of network. "IN" is defined to have the meaning "Internet".
gchar *addrtype; the type of addr.
gchar *addr; the globally unique address of the machine from which the session was created.

GstSDPConnection

typedef struct {
  gchar *nettype;
  gchar *addrtype;
  gchar *address;
  guint  ttl;
  guint  addr_number;
} GstSDPConnection;

The contents of the SDP "c=" field which contains connection data.

gchar *nettype; the type of network. "IN" is defined to have the meaning "Internet".
gchar *addrtype; the type of address.
gchar *address; the address
guint ttl; the time to live of the address
guint addr_number; the number of layers

GST_SDP_BWTYPE_CT

#define GST_SDP_BWTYPE_CT 		"CT"

The Conference Total bandwidth modifier.


GST_SDP_BWTYPE_AS

#define GST_SDP_BWTYPE_AS 		"AS"

The Application-Specific Maximum bandwidth modifier.


GST_SDP_BWTYPE_EXT_PREFIX

#define GST_SDP_BWTYPE_EXT_PREFIX 	"X-"

The extension prefix bandwidth modifier.


GstSDPBandwidth

typedef struct {
  gchar *bwtype;
  guint  bandwidth;
} GstSDPBandwidth;

The contents of the SDP "b=" field which specifies the proposed bandwidth to be used by the session or media.

gchar *bwtype; the bandwidth modifier type
guint bandwidth; the bandwidth in kilobits per second

GstSDPTime

typedef struct {
  gchar  *start;
  gchar  *stop;
  GArray *repeat;
} GstSDPTime;

The contents of the SDP "t=" field which specify the start and stop times for a conference session.

gchar *start; start time for the conference. The value is the decimal representation of Network Time Protocol (NTP) time values in seconds
gchar *stop; stop time for the conference. The value is the decimal representation of Network Time Protocol (NTP) time values in seconds
GArray *repeat; repeat times for a session

GstSDPZone

typedef struct {
  gchar *time;
  gchar *typed_time;
} GstSDPZone;

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.

gchar *time; the NTP time that a time zone adjustment happens
gchar *typed_time; the offset from the time when the session was first scheduled

GstSDPKey

typedef struct {
  gchar *type;
  gchar *data;
} GstSDPKey;

The contents of the SDP "k=" field which is used to convey encryption keys.

gchar *type; the encryption type
gchar *data; the encryption data

GstSDPAttribute

typedef struct {
  gchar *key;
  gchar *value;
} GstSDPAttribute;

The contents of the SDP "a=" field which contains a key/value pair.

gchar *key; the attribute key
gchar *value; the attribute value or NULL when it was a property attribute

GstSDPMedia

typedef struct {
  gchar            *media;
  guint             port;
  guint             num_ports;
  gchar            *proto;
  GArray           *fmts;
  gchar            *information;
  GArray           *connections;
  GArray           *bandwidths;
  GstSDPKey         key;
  GArray           *attributes;
} GstSDPMedia;

The contents of the SDP "m=" field with all related fields.

gchar *media; the media type
guint port; the transport port to which the media stream will be sent
guint num_ports; the number of ports or -1 if only one port was specified
gchar *proto; the transport protocol
GArray *fmts; an array of gchar formats
gchar *information; the media title
GArray *connections; array of GstSDPConnection with media connection information
GArray *bandwidths; array of GstSDPBandwidth with media bandwidth information
GstSDPKey key; the encryption key
GArray *attributes; array of GstSDPAttribute with the additional media attributes

GstSDPMessage

typedef struct {
  gchar            *version;
  GstSDPOrigin      origin;
  gchar            *session_name;
  gchar            *information;
  gchar            *uri;
  GArray           *emails;
  GArray           *phones;
  GstSDPConnection  connection;
  GArray           *bandwidths;
  GArray           *times;
  GArray           *zones;
  GstSDPKey         key;
  GArray           *attributes;
  GArray           *medias;
} GstSDPMessage;

The contents of the SDP message.

gchar *version; the protocol version
GstSDPOrigin origin; owner/creator and session identifier
gchar *session_name; session name
gchar *information; session information
gchar *uri; URI of description
GArray *emails; array of gchar with email addresses
GArray *phones; array of gchar with phone numbers
GstSDPConnection connection; connection information for the session
GArray *bandwidths; array of GstSDPBandwidth with bandwidth information
GArray *times; array of GstSDPTime with time descriptions
GArray *zones; array of GstSDPZone with time zone adjustments
GstSDPKey key; encryption key
GArray *attributes; array of GstSDPAttribute with session attributes
GArray *medias; array of GstSDPMedia with media descriptions

gst_sdp_message_new ()

GstSDPResult        gst_sdp_message_new                 (GstSDPMessage **msg);

Allocate a new GstSDPMessage and store the result in msg.

msg : pointer to new GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_init ()

GstSDPResult        gst_sdp_message_init                (GstSDPMessage *msg);

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.

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_uninit ()

GstSDPResult        gst_sdp_message_uninit              (GstSDPMessage *msg);

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().

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_free ()

GstSDPResult        gst_sdp_message_free                (GstSDPMessage *msg);

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().

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_parse_buffer ()

GstSDPResult        gst_sdp_message_parse_buffer        (const guint8 *data,
                                                         guint size,
                                                         GstSDPMessage *msg);

Parse the contents of size bytes pointed to by data and store the result in msg.

data : the start of the buffer
size : the size of the buffer
msg : the result GstSDPMessage
Returns : GST_SDP_OK on success.

gst_sdp_message_get_version ()

const gchar*        gst_sdp_message_get_version         (const GstSDPMessage *msg);

Get the version in msg.

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_set_version ()

GstSDPResult        gst_sdp_message_set_version         (GstSDPMessage *msg,
                                                         const gchar *version);

Set the version in msg.

msg : a GstSDPMessage
version : the version
Returns : a GstSDPResult.

gst_sdp_message_get_origin ()

const GstSDPOrigin* gst_sdp_message_get_origin          (const GstSDPMessage *msg);

Get the origin of msg.

msg : a GstSDPMessage
Returns : a GstSDPOrigin. The result remains valid as long as msg is valid.

gst_sdp_message_set_origin ()

GstSDPResult        gst_sdp_message_set_origin          (GstSDPMessage *msg,
                                                         const gchar *username,
                                                         const gchar *sess_id,
                                                         const gchar *sess_version,
                                                         const gchar *nettype,
                                                         const gchar *addrtype,
                                                         const gchar *addr);

Configure the SDP origin in msg with the given parameters.

msg : a GstSDPMessage
username : the user name
sess_id : a session id
sess_version : a session version
nettype : a network type
addrtype : an address type
addr : an address
Returns : GST_SDP_OK.

gst_sdp_message_get_session_name ()

const gchar*        gst_sdp_message_get_session_name    (const GstSDPMessage *msg);

Get the session name in msg.

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_set_session_name ()

GstSDPResult        gst_sdp_message_set_session_name    (GstSDPMessage *msg,
                                                         const gchar *session_name);

Set the session name in msg.

msg : a GstSDPMessage
session_name : the session name
Returns : a GstSDPResult.

gst_sdp_message_get_information ()

const gchar*        gst_sdp_message_get_information     (const GstSDPMessage *msg);

Get the information in msg.

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_set_information ()

GstSDPResult        gst_sdp_message_set_information     (GstSDPMessage *msg,
                                                         const gchar *information);

Set the information in msg.

msg : a GstSDPMessage
information : the information
Returns : a GstSDPResult.

gst_sdp_message_get_uri ()

const gchar*        gst_sdp_message_get_uri             (const GstSDPMessage *msg);

Get the URI in msg.

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_message_set_uri ()

GstSDPResult        gst_sdp_message_set_uri             (GstSDPMessage *msg,
                                                         const gchar *uri);

Set the URI in msg.

msg : a GstSDPMessage
uri : the URI
Returns : a GstSDPResult.

gst_sdp_message_emails_len ()

guint               gst_sdp_message_emails_len          (const GstSDPMessage *msg);

Get the number of emails in msg.

msg : a GstSDPMessage
Returns : the number of emails in msg.

gst_sdp_message_get_email ()

const gchar*        gst_sdp_message_get_email           (const GstSDPMessage *msg,
                                                         guint idx);

Get the email with number idx from msg.

msg : a GstSDPMessage
idx : an email index
Returns : the email at position idx.

gst_sdp_message_add_email ()

GstSDPResult        gst_sdp_message_add_email           (GstSDPMessage *msg,
                                                         const gchar *email);

Add email to the list of emails in msg.

msg : a GstSDPMessage
email : an email
Returns : a GstSDPResult.

gst_sdp_message_phones_len ()

guint               gst_sdp_message_phones_len          (const GstSDPMessage *msg);

Get the number of phones in msg.

msg : a GstSDPMessage
Returns : the number of phones in msg.

gst_sdp_message_get_phone ()

const gchar*        gst_sdp_message_get_phone           (const GstSDPMessage *msg,
                                                         guint idx);

Get the phone with number idx from msg.

msg : a GstSDPMessage
idx : a phone index
Returns : the phone at position idx.

gst_sdp_message_add_phone ()

GstSDPResult        gst_sdp_message_add_phone           (GstSDPMessage *msg,
                                                         const gchar *phone);

Add phone to the list of phones in msg.

msg : a GstSDPMessage
phone : a phone
Returns : a GstSDPResult.

gst_sdp_message_get_connection ()

const GstSDPConnection* gst_sdp_message_get_connection  (const GstSDPMessage *msg);

Get the connection of msg.

msg : a GstSDPMessage
Returns : a GstSDPConnection. The result remains valid as long as msg is valid.

gst_sdp_message_set_connection ()

GstSDPResult        gst_sdp_message_set_connection      (GstSDPMessage *msg,
                                                         const gchar *nettype,
                                                         const gchar *addrtype,
                                                         const gchar *address,
                                                         guint ttl,
                                                         guint addr_number);

Configure the SDP connection in msg with the given parameters.

msg : a GstSDPMessage
nettype : the type of network. "IN" is defined to have the meaning "Internet".
addrtype : the type of address.
address : the address
ttl : the time to live of the address
addr_number : the number of layers
Returns : a GstSDPResult.

gst_sdp_message_bandwidths_len ()

guint               gst_sdp_message_bandwidths_len      (const GstSDPMessage *msg);

Get the number of bandwidth information in msg.

msg : a GstSDPMessage
Returns : the number of bandwidth information in msg.

gst_sdp_message_get_bandwidth ()

const GstSDPBandwidth* gst_sdp_message_get_bandwidth    (const GstSDPMessage *msg,
                                                         guint idx);

Get the bandwidth at index idx from msg.

msg : a GstSDPMessage
idx : the bandwidth index
Returns : a GstSDPBandwidth.

gst_sdp_message_add_bandwidth ()

GstSDPResult        gst_sdp_message_add_bandwidth       (GstSDPMessage *msg,
                                                         const gchar *bwtype,
                                                         guint bandwidth);

Add the specified bandwidth information to msg.

msg : a GstSDPMessage
bwtype : the bandwidth modifier type
bandwidth : the bandwidth in kilobits per second
Returns : a GstSDPResult.

gst_sdp_message_times_len ()

guint               gst_sdp_message_times_len           (const GstSDPMessage *msg);

Get the number of time information entries in msg.

msg : a GstSDPMessage
Returns : the number of time information entries in msg.

gst_sdp_message_get_time ()

const GstSDPTime*   gst_sdp_message_get_time            (const GstSDPMessage *msg,
                                                         guint idx);

Get time information with index idx from msg.

msg : a GstSDPMessage
idx : the time index
Returns : a GstSDPTime.

gst_sdp_message_add_time ()

GstSDPResult        gst_sdp_message_add_time            (GstSDPMessage *msg,
                                                         const gchar *start,
                                                         const gchar *stop,
                                                         const gchar **repeat);

Add time information start and stop to msg.

msg : a GstSDPMessage
start : the start time
stop : the stop time
repeat : the repeat times
Returns : a GstSDPResult.

gst_sdp_message_zones_len ()

guint               gst_sdp_message_zones_len           (const GstSDPMessage *msg);

Get the number of time zone information entries in msg.

msg : a GstSDPMessage
Returns : the number of time zone information entries in msg.

gst_sdp_message_get_zone ()

const GstSDPZone*   gst_sdp_message_get_zone            (const GstSDPMessage *msg,
                                                         guint idx);

Get time zone information with index idx from msg.

msg : a GstSDPMessage
idx : the zone index
Returns : a GstSDPZone.

gst_sdp_message_add_zone ()

GstSDPResult        gst_sdp_message_add_zone            (GstSDPMessage *msg,
                                                         const gchar *adj_time,
                                                         const gchar *typed_time);

Add time zone information to msg.

msg : a GstSDPMessage
adj_time : the NTP time that a time zone adjustment happens
typed_time : the offset from the time when the session was first scheduled
Returns : a GstSDPResult.

gst_sdp_message_get_key ()

const GstSDPKey*    gst_sdp_message_get_key             (const GstSDPMessage *msg);

Get the encryption information from msg.

msg : a GstSDPMessage
Returns : a GstSDPKey.

gst_sdp_message_set_key ()

GstSDPResult        gst_sdp_message_set_key             (GstSDPMessage *msg,
                                                         const gchar *type,
                                                         const gchar *data);

Adds the encryption information to msg.

msg : a GstSDPMessage
type : the encryption type
data : the encryption data
Returns : a GstSDPResult.

gst_sdp_message_attributes_len ()

guint               gst_sdp_message_attributes_len      (const GstSDPMessage *msg);

Get the number of attributes in msg.

msg : a GstSDPMessage
Returns : the number of attributes in msg.

gst_sdp_message_get_attribute ()

const GstSDPAttribute* gst_sdp_message_get_attribute    (const GstSDPMessage *msg,
                                                         guint idx);

Get the attribute at position idx in msg.

msg : a GstSDPMessage
idx : the index
Returns : the GstSDPAttribute at position idx.

gst_sdp_message_get_attribute_val ()

const gchar*        gst_sdp_message_get_attribute_val   (const GstSDPMessage *msg,
                                                         const gchar *key);

Get the first attribute with key key in msg.

msg : a GstSDPMessage
key : the key
Returns : the attribute value of the first attribute with key.

gst_sdp_message_get_attribute_val_n ()

const gchar*        gst_sdp_message_get_attribute_val_n (const GstSDPMessage *msg,
                                                         const gchar *key,
                                                         guint nth);

Get the nth attribute with key key in msg.

msg : a GstSDPMessage
key : the key
nth : the index
Returns : the attribute value of the nth attribute with key.

gst_sdp_message_add_attribute ()

GstSDPResult        gst_sdp_message_add_attribute       (GstSDPMessage *msg,
                                                         const gchar *key,
                                                         const gchar *value);

Add the attribute with key and value to msg.

msg : a GstSDPMessage
key : the key
value : the value
Returns : GST_SDP_OK.

gst_sdp_message_medias_len ()

guint               gst_sdp_message_medias_len          (const GstSDPMessage *msg);

Get the number of media descriptions in msg.

msg : a GstSDPMessage
Returns : the number of media descriptions in msg.

gst_sdp_message_get_media ()

const GstSDPMedia*  gst_sdp_message_get_media           (const GstSDPMessage *msg,
                                                         guint idx);

Get the media description at index idx in msg.

msg : a GstSDPMessage
idx : the index
Returns : a GstSDPMedia.

gst_sdp_message_add_media ()

GstSDPResult        gst_sdp_message_add_media           (GstSDPMessage *msg,
                                                         GstSDPMedia *media);

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_media_init() before it can be used again.

msg : a GstSDPMessage
media : a GstSDPMedia to add
Returns : a GstSDPResult.

gst_sdp_message_dump ()

GstSDPResult        gst_sdp_message_dump                (const GstSDPMessage *msg);

Dump the parsed contents of msg to stdout.

msg : a GstSDPMessage
Returns : a GstSDPResult.

gst_sdp_media_new ()

GstSDPResult        gst_sdp_media_new                   (GstSDPMedia **media);

Allocate a new GstSDPMedia and store the result in media.

media : pointer to new GstSDPMedia
Returns : a GstSDPResult.

gst_sdp_media_init ()

GstSDPResult        gst_sdp_media_init                  (GstSDPMedia *media);

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.

media : a GstSDPMedia
Returns : a GstSDPResult.

gst_sdp_media_uninit ()

GstSDPResult        gst_sdp_media_uninit                (GstSDPMedia *media);

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().

media : a GstSDPMedia
Returns : a GstSDPResult.

gst_sdp_media_free ()

GstSDPResult        gst_sdp_media_free                  (GstSDPMedia *media);

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().

media : a GstSDPMedia
Returns : a GstSDPResult.

gst_sdp_media_get_media ()

const gchar*        gst_sdp_media_get_media             (const GstSDPMedia *media);

Get the media description of media.

media : a GstSDPMedia
Returns : the media description.

gst_sdp_media_set_media ()

GstSDPResult        gst_sdp_media_set_media             (GstSDPMedia *media,
                                                         const gchar *med);

Set the media description of media to med.

media : a GstSDPMedia
med : the media description
Returns : GST_SDP_OK.

gst_sdp_media_get_port ()

guint               gst_sdp_media_get_port              (const GstSDPMedia *media);

Get the port number for media.

media : a GstSDPMedia
Returns : the port number of media.

gst_sdp_media_get_num_ports ()

guint               gst_sdp_media_get_num_ports         (const GstSDPMedia *media);

Get the number of ports for media.

media : a GstSDPMedia
Returns : the number of ports for media.

gst_sdp_media_set_port_info ()

GstSDPResult        gst_sdp_media_set_port_info         (GstSDPMedia *media,
                                                         guint port,
                                                         guint num_ports);

Set the port information in media.

media : a GstSDPMedia
port : the port number
num_ports : the number of ports
Returns : GST_SDP_OK.

gst_sdp_media_get_proto ()

const gchar*        gst_sdp_media_get_proto             (const GstSDPMedia *media);

Get the transport protocol of media

media : a GstSDPMedia
Returns : the transport protocol of media.

gst_sdp_media_set_proto ()

GstSDPResult        gst_sdp_media_set_proto             (GstSDPMedia *media,
                                                         const gchar *proto);

Set the media transport protocol of media to proto.

media : a GstSDPMedia
proto : the media transport protocol
Returns : GST_SDP_OK.

gst_sdp_media_formats_len ()

guint               gst_sdp_media_formats_len           (const GstSDPMedia *media);

Get the number of formats in media.

media : a GstSDPMedia
Returns : the number of formats in media.

gst_sdp_media_get_format ()

const gchar*        gst_sdp_media_get_format            (const GstSDPMedia *media,
                                                         guint idx);

Get the format information at position idx in media.

media : a GstSDPMedia
idx : an index
Returns : the format at position idx.

gst_sdp_media_add_format ()

GstSDPResult        gst_sdp_media_add_format            (GstSDPMedia *media,
                                                         const gchar *format);

Add the format information to media.

media : a GstSDPMedia
format : the format
Returns : GST_SDP_OK.

gst_sdp_media_get_information ()

const gchar*        gst_sdp_media_get_information       (const GstSDPMedia *media);

Get the information of media

media : a GstSDPMedia
Returns : the information of media.

gst_sdp_media_set_information ()

GstSDPResult        gst_sdp_media_set_information       (GstSDPMedia *media,
                                                         const gchar *information);

Set the media information of media to information.

media : a GstSDPMedia
information : the media information
Returns : GST_SDP_OK.

gst_sdp_media_connections_len ()

guint               gst_sdp_media_connections_len       (const GstSDPMedia *media);

Get the number of connection fields in media.

media : a GstSDPMedia
Returns : the number of connections in media.

gst_sdp_media_get_connection ()

const GstSDPConnection* gst_sdp_media_get_connection    (const GstSDPMedia *media,
                                                         guint idx);

Get the connection at position idx in media.

media : a GstSDPMedia
idx : an index
Returns : the GstSDPConnection at position idx.

gst_sdp_media_add_connection ()

GstSDPResult        gst_sdp_media_add_connection        (GstSDPMedia *media,
                                                         const gchar *nettype,
                                                         const gchar *addrtype,
                                                         const gchar *address,
                                                         guint ttl,
                                                         guint addr_number);

Add the given connection parameters to media.

media : a GstSDPMedia
nettype : the type of network. "IN" is defined to have the meaning "Internet".
addrtype : the type of address.
address : the address
ttl : the time to live of the address
addr_number : the number of layers
Returns : a GstSDPResult.

gst_sdp_media_bandwidths_len ()

guint               gst_sdp_media_bandwidths_len        (const GstSDPMedia *media);

Get the number of bandwidth fields in media.

media : a GstSDPMedia
Returns : the number of bandwidths in media.

gst_sdp_media_get_bandwidth ()

const GstSDPBandwidth* gst_sdp_media_get_bandwidth      (const GstSDPMedia *media,
                                                         guint idx);

Get the bandwidth at position idx in media.

media : a GstSDPMedia
idx : an index
Returns : the GstSDPBandwidth at position idx.

gst_sdp_media_add_bandwidth ()

GstSDPResult        gst_sdp_media_add_bandwidth         (GstSDPMedia *media,
                                                         const gchar *bwtype,
                                                         guint bandwidth);

Add the bandwidth information with bwtype and bandwidth to media.

media : a GstSDPMedia
bwtype : the bandwidth modifier type
bandwidth : the bandwidth in kilobits per second
Returns : GST_SDP_OK.

gst_sdp_media_get_key ()

const GstSDPKey*    gst_sdp_media_get_key               (const GstSDPMedia *media);

Get the encryption information from media.

media : a GstSDPMedia
Returns : a GstSDPKey.

gst_sdp_media_set_key ()

GstSDPResult        gst_sdp_media_set_key               (GstSDPMedia *media,
                                                         const gchar *type,
                                                         const gchar *data);

Adds the encryption information to media.

media : a GstSDPMedia
type : the encryption type
data : the encryption data
Returns : a GstSDPResult.

gst_sdp_media_attributes_len ()

guint               gst_sdp_media_attributes_len        (const GstSDPMedia *media);

Get the number of attribute fields in media.

media : a GstSDPMedia
Returns : the number of attributes in media.

gst_sdp_media_get_attribute ()

const GstSDPAttribute* gst_sdp_media_get_attribute      (const GstSDPMedia *media,
                                                         guint idx);

Get the attribute at position idx in media.

media : a GstSDPMedia
idx : an index
Returns : the GstSDPAttribute at position idx.

gst_sdp_media_get_attribute_val ()

const gchar*        gst_sdp_media_get_attribute_val     (const GstSDPMedia *media,
                                                         const gchar *key);

Get the first attribute value for key in media.

media : a GstSDPMedia
key : a key
Returns : the first attribute value for key.

gst_sdp_media_get_attribute_val_n ()

const gchar*        gst_sdp_media_get_attribute_val_n   (const GstSDPMedia *media,
                                                         const gchar *key,
                                                         guint nth);

Get the nth attribute value for key in media.

media : a GstSDPMedia
key : a key
nth : an index
Returns : the nth attribute value.

gst_sdp_media_add_attribute ()

GstSDPResult        gst_sdp_media_add_attribute         (GstSDPMedia *media,
                                                         const gchar *key,
                                                         const gchar *value);

Add the attribute with key and value to media.

media : a GstSDPMedia
key : a key
value : a value
Returns : GST_SDP_OK.