GstRTSPStream

GstRTSPStream — A media stream

Synopsis

struct              GstRTSPStream;
struct              GstRTSPStreamClass;
GstRTSPStream *     gst_rtsp_stream_new                 (guint idx,
                                                         GstElement *payloader,
                                                         GstPad *pad);
guint               gst_rtsp_stream_get_index           (GstRTSPStream *stream);
GstPad *            gst_rtsp_stream_get_srcpad          (GstRTSPStream *stream);
gchar *             gst_rtsp_stream_get_control         (GstRTSPStream *stream);
void                gst_rtsp_stream_set_control         (GstRTSPStream *stream,
                                                         const gchar *control);
gboolean            gst_rtsp_stream_has_control         (GstRTSPStream *stream,
                                                         const gchar *control);
guint               gst_rtsp_stream_get_mtu             (GstRTSPStream *stream);
void                gst_rtsp_stream_set_mtu             (GstRTSPStream *stream,
                                                         guint mtu);
gint                gst_rtsp_stream_get_dscp_qos        (GstRTSPStream *stream);
void                gst_rtsp_stream_set_dscp_qos        (GstRTSPStream *stream,
                                                         gint dscp_qos);
void                gst_rtsp_stream_set_profiles        (GstRTSPStream *stream,
                                                         GstRTSPProfile profiles);
GstRTSPProfile      gst_rtsp_stream_get_profiles        (GstRTSPStream *stream);
GstRTSPLowerTrans   gst_rtsp_stream_get_protocols       (GstRTSPStream *stream);
void                gst_rtsp_stream_set_protocols       (GstRTSPStream *stream,
                                                         GstRTSPLowerTrans protocols);
GstClockTime        gst_rtsp_stream_get_retransmission_time
                                                        (GstRTSPStream *stream);
void                gst_rtsp_stream_set_retransmission_time
                                                        (GstRTSPStream *stream,
                                                         GstClockTime time);
void                gst_rtsp_stream_set_buffer_size     (GstRTSPStream *stream,
                                                         guint size);
guint               gst_rtsp_stream_get_buffer_size     (GstRTSPStream *stream);
void                gst_rtsp_stream_set_seqnum_offset   (GstRTSPStream *stream,
                                                         guint16 seqnum);
guint16             gst_rtsp_stream_get_current_seqnum  (GstRTSPStream *stream);
gboolean            gst_rtsp_stream_is_transport_supported
                                                        (GstRTSPStream *stream,
                                                         GstRTSPTransport *transport);
GstRTSPAddressPool * gst_rtsp_stream_get_address_pool   (GstRTSPStream *stream);
void                gst_rtsp_stream_set_address_pool    (GstRTSPStream *stream,
                                                         GstRTSPAddressPool *pool);
GstRTSPAddress *    gst_rtsp_stream_reserve_address     (GstRTSPStream *stream,
                                                         const gchar *address,
                                                         guint port,
                                                         guint n_ports,
                                                         guint ttl);
gboolean            gst_rtsp_stream_join_bin            (GstRTSPStream *stream,
                                                         GstBin *bin,
                                                         GstElement *rtpbin,
                                                         GstState state);
gboolean            gst_rtsp_stream_leave_bin           (GstRTSPStream *stream,
                                                         GstBin *bin,
                                                         GstElement *rtpbin);
void                gst_rtsp_stream_get_server_port     (GstRTSPStream *stream,
                                                         GstRTSPRange *server_port,
                                                         GSocketFamily family);
GstRTSPAddress *    gst_rtsp_stream_get_multicast_address
                                                        (GstRTSPStream *stream,
                                                         GSocketFamily family);
GObject *           gst_rtsp_stream_get_rtpsession      (GstRTSPStream *stream);
void                gst_rtsp_stream_get_ssrc            (GstRTSPStream *stream,
                                                         guint *ssrc);
gboolean            gst_rtsp_stream_get_rtpinfo         (GstRTSPStream *stream,
                                                         guint *rtptime,
                                                         guint *seq,
                                                         guint *clock_rate,
                                                         GstClockTime *running_time);
GstCaps *           gst_rtsp_stream_get_caps            (GstRTSPStream *stream);
guint               gst_rtsp_stream_get_pt              (GstRTSPStream *stream);
GstFlowReturn       gst_rtsp_stream_recv_rtcp           (GstRTSPStream *stream,
                                                         GstBuffer *buffer);
GstFlowReturn       gst_rtsp_stream_recv_rtp            (GstRTSPStream *stream,
                                                         GstBuffer *buffer);
gboolean            gst_rtsp_stream_add_transport       (GstRTSPStream *stream,
                                                         GstRTSPStreamTransport *trans);
gboolean            gst_rtsp_stream_remove_transport    (GstRTSPStream *stream,
                                                         GstRTSPStreamTransport *trans);
GSocket *           gst_rtsp_stream_get_rtp_socket      (GstRTSPStream *stream,
                                                         GSocketFamily family);
GSocket *           gst_rtsp_stream_get_rtcp_socket     (GstRTSPStream *stream,
                                                         GSocketFamily family);
gboolean            gst_rtsp_stream_set_blocked         (GstRTSPStream *stream,
                                                         gboolean blocked);
gboolean            gst_rtsp_stream_is_blocking         (GstRTSPStream *stream);
gboolean            gst_rtsp_stream_query_stop          (GstRTSPStream *stream,
                                                         gint64 *stop);
gboolean            gst_rtsp_stream_query_position      (GstRTSPStream *stream,
                                                         gint64 *position);
gboolean            gst_rtsp_stream_update_crypto       (GstRTSPStream *stream,
                                                         guint ssrc,
                                                         GstCaps *crypto);
void                gst_rtsp_stream_set_pt_map          (GstRTSPStream *stream,
                                                         guint pt,
                                                         GstCaps *caps);
GstElement *        gst_rtsp_stream_request_aux_sender  (GstRTSPStream *stream,
                                                         guint sessid);
GstRTSPFilterResult (*GstRTSPStreamTransportFilterFunc) (GstRTSPStream *stream,
                                                         GstRTSPStreamTransport *trans,
                                                         gpointer user_data);
GList *             gst_rtsp_stream_transport_filter    (GstRTSPStream *stream,
                                                         GstRTSPStreamTransportFilterFunc func,
                                                         gpointer user_data);

Object Hierarchy

  GObject
   +----GstRTSPStream

Properties

  "control"                  gchar*                : Read / Write
  "profiles"                 GstRTSPProfile        : Read / Write
  "protocols"                GstRTSPLowerTrans     : Read / Write

Signals

  "new-rtcp-encoder"                               : Run Last
  "new-rtp-encoder"                                : Run Last

Description

The GstRTSPStream object manages the data transport for one stream. It is created from a payloader element and a source pad that produce the RTP packets for the stream.

With gst_rtsp_stream_join_bin() the streaming elements are added to the bin and rtpbin. gst_rtsp_stream_leave_bin() removes the elements again.

The GstRTSPStream will use the configured addresspool, as set with gst_rtsp_stream_set_address_pool(), to allocate multicast addresses for the stream. With gst_rtsp_stream_get_multicast_address() you can get the configured address.

With gst_rtsp_stream_get_server_port() you can get the port that the server will use to receive RTCP. This is the part that the clients will use to send RTCP to.

With gst_rtsp_stream_add_transport() destinations can be added where the stream should be sent to. Use gst_rtsp_stream_remove_transport() to remove the destination again.

Last reviewed on 2013-07-16 (1.0.0)

Details

struct GstRTSPStream

struct GstRTSPStream;

The definition of a media stream.


struct GstRTSPStreamClass

struct GstRTSPStreamClass {
  GObjectClass parent_class;
};

gst_rtsp_stream_new ()

GstRTSPStream *     gst_rtsp_stream_new                 (guint idx,
                                                         GstElement *payloader,
                                                         GstPad *pad);

Create a new media stream with index idx that handles RTP data on pad and has a payloader element payloader if pad is a source pad or a depayloader element payloader if pad is a sink pad.

idx :

an index

pad :

a GstPad

payloader :

a GstElement

Returns :

a new GstRTSPStream. [transfer full]

gst_rtsp_stream_get_index ()

guint               gst_rtsp_stream_get_index           (GstRTSPStream *stream);

Get the stream index.

Return: the stream index.

stream :

a GstRTSPStream

gst_rtsp_stream_get_srcpad ()

GstPad *            gst_rtsp_stream_get_srcpad          (GstRTSPStream *stream);

Get the srcpad associated with stream.

stream :

a GstRTSPStream

Returns :

the srcpad. Unref after usage. [transfer full]

gst_rtsp_stream_get_control ()

gchar *             gst_rtsp_stream_get_control         (GstRTSPStream *stream);

Get the control string to identify this stream.

stream :

a GstRTSPStream

Returns :

the control string. g_free() after usage. [transfer full]

gst_rtsp_stream_set_control ()

void                gst_rtsp_stream_set_control         (GstRTSPStream *stream,
                                                         const gchar *control);

Set the control string in stream.

stream :

a GstRTSPStream

control :

a control string

gst_rtsp_stream_has_control ()

gboolean            gst_rtsp_stream_has_control         (GstRTSPStream *stream,
                                                         const gchar *control);

Check if stream has the control string control.

stream :

a GstRTSPStream

control :

a control string

Returns :

TRUE is stream has control as the control string

gst_rtsp_stream_get_mtu ()

guint               gst_rtsp_stream_get_mtu             (GstRTSPStream *stream);

Get the configured MTU in the payloader of stream.

stream :

a GstRTSPStream

Returns :

the MTU of the payloader.

gst_rtsp_stream_set_mtu ()

void                gst_rtsp_stream_set_mtu             (GstRTSPStream *stream,
                                                         guint mtu);

Configure the mtu in the payloader of stream to mtu.

stream :

a GstRTSPStream

mtu :

a new MTU

gst_rtsp_stream_get_dscp_qos ()

gint                gst_rtsp_stream_get_dscp_qos        (GstRTSPStream *stream);

Get the configured DSCP QoS in of the outgoing sockets.

stream :

a GstRTSPStream

Returns :

the DSCP QoS value of the outgoing sockets, or -1 if disbled.

gst_rtsp_stream_set_dscp_qos ()

void                gst_rtsp_stream_set_dscp_qos        (GstRTSPStream *stream,
                                                         gint dscp_qos);

Configure the dscp qos of the outgoing sockets to dscp_qos.

stream :

a GstRTSPStream

dscp_qos :

a new dscp qos value (0-63, or -1 to disable)

gst_rtsp_stream_set_profiles ()

void                gst_rtsp_stream_set_profiles        (GstRTSPStream *stream,
                                                         GstRTSPProfile profiles);

Configure the allowed profiles for stream.

stream :

a GstRTSPStream

profiles :

the new profiles

gst_rtsp_stream_get_profiles ()

GstRTSPProfile      gst_rtsp_stream_get_profiles        (GstRTSPStream *stream);

Get the allowed profiles of stream.

stream :

a GstRTSPStream

Returns :

a GstRTSPProfile

gst_rtsp_stream_get_protocols ()

GstRTSPLowerTrans   gst_rtsp_stream_get_protocols       (GstRTSPStream *stream);

Get the allowed protocols of stream.

stream :

a GstRTSPStream

Returns :

a GstRTSPLowerTrans

gst_rtsp_stream_set_protocols ()

void                gst_rtsp_stream_set_protocols       (GstRTSPStream *stream,
                                                         GstRTSPLowerTrans protocols);

Configure the allowed lower transport for stream.

stream :

a GstRTSPStream

protocols :

the new flags

gst_rtsp_stream_get_retransmission_time ()

GstClockTime        gst_rtsp_stream_get_retransmission_time
                                                        (GstRTSPStream *stream);

Get the amount of time to store retransmission data.

stream :

a GstRTSPStream

Returns :

the amount of time to store retransmission data.

gst_rtsp_stream_set_retransmission_time ()

void                gst_rtsp_stream_set_retransmission_time
                                                        (GstRTSPStream *stream,
                                                         GstClockTime time);

Set the amount of time to store retransmission packets.

stream :

a GstRTSPStream

time :

a GstClockTime

gst_rtsp_stream_set_buffer_size ()

void                gst_rtsp_stream_set_buffer_size     (GstRTSPStream *stream,
                                                         guint size);

Set the size of the UDP transmission buffer (in bytes) Needs to be set before the stream is joined to a bin.

stream :

a GstRTSPStream

size :

the buffer size

Since 1.6


gst_rtsp_stream_get_buffer_size ()

guint               gst_rtsp_stream_get_buffer_size     (GstRTSPStream *stream);

Get the size of the UDP transmission buffer (in bytes)

stream :

a GstRTSPStream

Returns :

the size of the UDP TX buffer

Since 1.6


gst_rtsp_stream_set_seqnum_offset ()

void                gst_rtsp_stream_set_seqnum_offset   (GstRTSPStream *stream,
                                                         guint16 seqnum);

gst_rtsp_stream_get_current_seqnum ()

guint16             gst_rtsp_stream_get_current_seqnum  (GstRTSPStream *stream);

gst_rtsp_stream_is_transport_supported ()

gboolean            gst_rtsp_stream_is_transport_supported
                                                        (GstRTSPStream *stream,
                                                         GstRTSPTransport *transport);

Check if transport can be handled by stream

stream :

a GstRTSPStream

transport :

a GstRTSPTransport. [transfer none]

Returns :

TRUE if transport can be handled by stream.

gst_rtsp_stream_get_address_pool ()

GstRTSPAddressPool * gst_rtsp_stream_get_address_pool   (GstRTSPStream *stream);

Get the GstRTSPAddressPool used as the address pool of stream.

stream :

a GstRTSPStream

Returns :

the GstRTSPAddressPool of stream. g_object_unref() after usage. [transfer full]

gst_rtsp_stream_set_address_pool ()

void                gst_rtsp_stream_set_address_pool    (GstRTSPStream *stream,
                                                         GstRTSPAddressPool *pool);

configure pool to be used as the address pool of stream.

stream :

a GstRTSPStream

pool :

a GstRTSPAddressPool. [transfer none]

gst_rtsp_stream_reserve_address ()

GstRTSPAddress *    gst_rtsp_stream_reserve_address     (GstRTSPStream *stream,
                                                         const gchar *address,
                                                         guint port,
                                                         guint n_ports,
                                                         guint ttl);

Reserve address and port as the address and port of stream. The original GstRTSPAddress is cached and copy is returned, so freeing the return value won't release the address from the pool.

stream :

a GstRTSPStream

address :

an address

port :

a port

n_ports :

n_ports

ttl :

a TTL

Returns :

the GstRTSPAddress of stream or NULL when the address could be reserved. gst_rtsp_address_free() after usage. [nullable]

gst_rtsp_stream_join_bin ()

gboolean            gst_rtsp_stream_join_bin            (GstRTSPStream *stream,
                                                         GstBin *bin,
                                                         GstElement *rtpbin,
                                                         GstState state);

Join the GstBin bin that contains the element rtpbin.

stream will link to rtpbin, which must be inside bin. The elements added to bin will be set to the state given in state.

stream :

a GstRTSPStream

bin :

a GstBin to join. [transfer none]

rtpbin :

a rtpbin element in bin. [transfer none]

state :

the target state of the new elements

Returns :

TRUE on success.

gst_rtsp_stream_leave_bin ()

gboolean            gst_rtsp_stream_leave_bin           (GstRTSPStream *stream,
                                                         GstBin *bin,
                                                         GstElement *rtpbin);

Remove the elements of stream from bin.

Return: TRUE on success.

stream :

a GstRTSPStream

bin :

a GstBin. [transfer none]

rtpbin :

a rtpbin GstElement. [transfer none]

gst_rtsp_stream_get_server_port ()

void                gst_rtsp_stream_get_server_port     (GstRTSPStream *stream,
                                                         GstRTSPRange *server_port,
                                                         GSocketFamily family);

Fill server_port with the port pair used by the server. This function can only be called when stream has been joined.

stream :

a GstRTSPStream

server_port :

result server port. [out]

family :

the port family to get

gst_rtsp_stream_get_multicast_address ()

GstRTSPAddress *    gst_rtsp_stream_get_multicast_address
                                                        (GstRTSPStream *stream,
                                                         GSocketFamily family);

Get the multicast address of stream for family. The original GstRTSPAddress is cached and copy is returned, so freeing the return value won't release the address from the pool.

stream :

a GstRTSPStream

family :

the GSocketFamily

Returns :

the GstRTSPAddress of stream or NULL when no address could be allocated. gst_rtsp_address_free() after usage. [transfer full][nullable]

gst_rtsp_stream_get_rtpsession ()

GObject *           gst_rtsp_stream_get_rtpsession      (GstRTSPStream *stream);

Get the RTP session of this stream.

stream :

a GstRTSPStream

Returns :

The RTP session of this stream. Unref after usage. [transfer full]

gst_rtsp_stream_get_ssrc ()

void                gst_rtsp_stream_get_ssrc            (GstRTSPStream *stream,
                                                         guint *ssrc);

Get the SSRC used by the RTP session of this stream. This function can only be called when stream has been joined.

stream :

a GstRTSPStream

ssrc :

result ssrc. [out]

gst_rtsp_stream_get_rtpinfo ()

gboolean            gst_rtsp_stream_get_rtpinfo         (GstRTSPStream *stream,
                                                         guint *rtptime,
                                                         guint *seq,
                                                         guint *clock_rate,
                                                         GstClockTime *running_time);

Retrieve the current rtptime, seq and running-time. This is used to construct a RTPInfo reply header.

stream :

a GstRTSPStream

rtptime :

result RTP timestamp. [allow-none]

seq :

result RTP seqnum. [allow-none]

clock_rate :

the clock rate. [allow-none]

running_time :

result running-time. [allow-none]

Returns :

TRUE when rtptime, seq and running-time could be determined.

gst_rtsp_stream_get_caps ()

GstCaps *           gst_rtsp_stream_get_caps            (GstRTSPStream *stream);

Retrieve the current caps of stream.

stream :

a GstRTSPStream

Returns :

the GstCaps of stream. use gst_caps_unref() after usage. [transfer full]

gst_rtsp_stream_get_pt ()

guint               gst_rtsp_stream_get_pt              (GstRTSPStream *stream);

Get the stream payload type.

Return: the stream payload type.

stream :

a GstRTSPStream

gst_rtsp_stream_recv_rtcp ()

GstFlowReturn       gst_rtsp_stream_recv_rtcp           (GstRTSPStream *stream,
                                                         GstBuffer *buffer);

Handle an RTCP buffer for the stream. This method is usually called when a message has been received from a client using the TCP transport.

This function takes ownership of buffer.

stream :

a GstRTSPStream

buffer :

a GstBuffer. [transfer full]

Returns :

a GstFlowReturn.

gst_rtsp_stream_recv_rtp ()

GstFlowReturn       gst_rtsp_stream_recv_rtp            (GstRTSPStream *stream,
                                                         GstBuffer *buffer);

Handle an RTP buffer for the stream. This method is usually called when a message has been received from a client using the TCP transport.

This function takes ownership of buffer.

stream :

a GstRTSPStream

buffer :

a GstBuffer. [transfer full]

Returns :

a GstFlowReturn.

gst_rtsp_stream_add_transport ()

gboolean            gst_rtsp_stream_add_transport       (GstRTSPStream *stream,
                                                         GstRTSPStreamTransport *trans);

Add the transport in trans to stream. The media of stream will then also be send to the values configured in trans.

stream must be joined to a bin.

trans must contain a valid GstRTSPTransport.

stream :

a GstRTSPStream

trans :

a GstRTSPStreamTransport. [transfer none]

Returns :

TRUE if trans was added

gst_rtsp_stream_remove_transport ()

gboolean            gst_rtsp_stream_remove_transport    (GstRTSPStream *stream,
                                                         GstRTSPStreamTransport *trans);

Remove the transport in trans from stream. The media of stream will not be sent to the values configured in trans.

stream must be joined to a bin.

trans must contain a valid GstRTSPTransport.

stream :

a GstRTSPStream

trans :

a GstRTSPStreamTransport. [transfer none]

Returns :

TRUE if trans was removed

gst_rtsp_stream_get_rtp_socket ()

GSocket *           gst_rtsp_stream_get_rtp_socket      (GstRTSPStream *stream,
                                                         GSocketFamily family);

Get the RTP socket from stream for a family.

stream must be joined to a bin.

stream :

a GstRTSPStream

family :

the socket family

Returns :

the RTP socket or NULL if no socket could be allocated for family. Unref after usage. [transfer full][nullable]

gst_rtsp_stream_get_rtcp_socket ()

GSocket *           gst_rtsp_stream_get_rtcp_socket     (GstRTSPStream *stream,
                                                         GSocketFamily family);

Get the RTCP socket from stream for a family.

stream must be joined to a bin.

stream :

a GstRTSPStream

family :

the socket family

Returns :

the RTCP socket or NULL if no socket could be allocated for family. Unref after usage. [transfer full][nullable]

gst_rtsp_stream_set_blocked ()

gboolean            gst_rtsp_stream_set_blocked         (GstRTSPStream *stream,
                                                         gboolean blocked);

Blocks or unblocks the dataflow on stream.

stream :

a GstRTSPStream

blocked :

boolean indicating we should block or unblock

Returns :

TRUE on success

gst_rtsp_stream_is_blocking ()

gboolean            gst_rtsp_stream_is_blocking         (GstRTSPStream *stream);

Check if stream is blocking on a GstBuffer.

stream :

a GstRTSPStream

Returns :

TRUE if stream is blocking

gst_rtsp_stream_query_stop ()

gboolean            gst_rtsp_stream_query_stop          (GstRTSPStream *stream,
                                                         gint64 *stop);

Query the stop of the stream in GST_FORMAT_TIME. This only considers the RTP parts of the pipeline and not the RTCP parts.

stream :

a GstRTSPStream

Returns :

TRUE if the stop could be queried

gst_rtsp_stream_query_position ()

gboolean            gst_rtsp_stream_query_position      (GstRTSPStream *stream,
                                                         gint64 *position);

Query the position of the stream in GST_FORMAT_TIME. This only considers the RTP parts of the pipeline and not the RTCP parts.

stream :

a GstRTSPStream

Returns :

TRUE if the position could be queried

gst_rtsp_stream_update_crypto ()

gboolean            gst_rtsp_stream_update_crypto       (GstRTSPStream *stream,
                                                         guint ssrc,
                                                         GstCaps *crypto);

Update the new crypto information for ssrc in stream. If information for ssrc did not exist, it will be added. If information for ssrc existed, it will be replaced. If crypto is NULL, it will be removed from stream.

stream :

a GstRTSPStream

ssrc :

the SSRC

crypto :

a GstCaps with crypto info. [transfer none][allow-none]

Returns :

TRUE if crypto could be updated

gst_rtsp_stream_set_pt_map ()

void                gst_rtsp_stream_set_pt_map          (GstRTSPStream *stream,
                                                         guint pt,
                                                         GstCaps *caps);

Configure a pt map between pt and caps.

stream :

a GstRTSPStream

pt :

the pt

caps :

a GstCaps

gst_rtsp_stream_request_aux_sender ()

GstElement *        gst_rtsp_stream_request_aux_sender  (GstRTSPStream *stream,
                                                         guint sessid);

Creating a rtxsend bin

stream :

a GstRTSPStream

sessid :

the session id

Returns :

a GstElement. [transfer full]

Since 1.6


GstRTSPStreamTransportFilterFunc ()

GstRTSPFilterResult (*GstRTSPStreamTransportFilterFunc) (GstRTSPStream *stream,
                                                         GstRTSPStreamTransport *trans,
                                                         gpointer user_data);

This function will be called by the gst_rtsp_stream_transport_filter(). An implementation should return a value of GstRTSPFilterResult.

When this function returns GST_RTSP_FILTER_REMOVE, trans will be removed from stream.

A return value of GST_RTSP_FILTER_KEEP will leave trans untouched in stream.

A value of GST_RTSP_FILTER_REF will add trans to the result GList of gst_rtsp_stream_transport_filter().

stream :

a GstRTSPStream object

trans :

a GstRTSPStreamTransport in stream

user_data :

user data that has been given to gst_rtsp_stream_transport_filter()

Returns :

a GstRTSPFilterResult.

gst_rtsp_stream_transport_filter ()

GList *             gst_rtsp_stream_transport_filter    (GstRTSPStream *stream,
                                                         GstRTSPStreamTransportFilterFunc func,
                                                         gpointer user_data);

Call func for each transport managed by stream. The result value of func determines what happens to the transport. func will be called with stream locked so no further actions on stream can be performed from func.

If func returns GST_RTSP_FILTER_REMOVE, the transport will be removed from stream.

If func returns GST_RTSP_FILTER_KEEP, the transport will remain in stream.

If func returns GST_RTSP_FILTER_REF, the transport will remain in stream but will also be added with an additional ref to the result GList of this function..

When func is NULL, GST_RTSP_FILTER_REF will be assumed for each transport.

stream :

a GstRTSPStream

func :

a callback. [scope call][allow-none]

user_data :

user data passed to func. [closure]

Returns :

a GList with all transports for which func returned GST_RTSP_FILTER_REF. After usage, each element in the GList should be unreffed before the list is freed. [element-type GstRTSPStreamTransport][transfer full]

Property Details

The "control" property

  "control"                  gchar*                : Read / Write

The control string for this stream.

Default value: NULL


The "profiles" property

  "profiles"                 GstRTSPProfile        : Read / Write

Allowed transfer profiles.

Default value: GST_RTSP_PROFILE_AVP


The "protocols" property

  "protocols"                GstRTSPLowerTrans     : Read / Write

Allowed lower transport protocols.

Default value: GST_RTSP_LOWER_TRANS_UDP|GST_RTSP_LOWER_TRANS_UDP_MCAST|GST_RTSP_LOWER_TRANS_TCP

Signal Details

The "new-rtcp-encoder" signal

void                user_function                      (GstRTSPStream *gstrtspstream,
                                                        GstElement    *arg1,
                                                        gpointer       user_data)          : Run Last

The "new-rtp-encoder" signal

void                user_function                      (GstRTSPStream *gstrtspstream,
                                                        GstElement    *arg1,
                                                        gpointer       user_data)          : Run Last

See Also

GstRTSPMedia