| Top |
The GstRTSPStreamTransport configures the transport used by a GstRTSPStream. It is usually manages by a GstRTSPSessionMedia object.
With gst_rtsp_stream_transport_set_callbacks(), callbacks can be configured
to handle the RTP and RTCP packets from the stream, for example when they
need to be sent over TCP.
With gst_rtsp_stream_transport_set_active() the transports are added and
removed from the stream.
A GstRTSPStream will call gst_rtsp_stream_transport_keep_alive() when RTCP
is received from the client. It will also call
gst_rtsp_stream_transport_set_timed_out() when a receiver has timed out.
Last reviewed on 2013-07-16 (1.0.0)
GstRTSPStreamTransport * gst_rtsp_stream_transport_new (GstRTSPStream *stream,GstRTSPTransport *tr);
Create a new GstRTSPStreamTransport that can be used to manage
stream
with transport tr
.
GstRTSPStream *
gst_rtsp_stream_transport_get_stream (GstRTSPStreamTransport *trans);
Get the GstRTSPStream used when constructing trans
.
const GstRTSPTransport *
gst_rtsp_stream_transport_get_transport
(GstRTSPStreamTransport *trans);
Get the transport configured in trans
.
void gst_rtsp_stream_transport_set_transport (GstRTSPStreamTransport *trans,GstRTSPTransport *tr);
Set tr
as the client transport. This function takes ownership of the
passed tr
.
const GstRTSPUrl *
gst_rtsp_stream_transport_get_url (GstRTSPStreamTransport *trans);
Get the url configured in trans
.
void gst_rtsp_stream_transport_set_url (GstRTSPStreamTransport *trans,const GstRTSPUrl *url);
Set url
as the client url.
gchar * gst_rtsp_stream_transport_get_rtpinfo (GstRTSPStreamTransport *trans,GstClockTime start_time);
Get the RTP-Info string for trans
and start_time
.
gboolean (*GstRTSPSendFunc) (GstBuffer *buffer,guint8 channel,gpointer user_data);
Function registered with gst_rtsp_stream_transport_set_callbacks() and
called when buffer
must be sent on channel
.
void gst_rtsp_stream_transport_set_callbacks (GstRTSPStreamTransport *trans,GstRTSPSendFunc send_rtp,GstRTSPSendFunc send_rtcp,gpointer user_data,GDestroyNotify notify);
Install callbacks that will be called when data for a stream should be sent to a client. This is usually used when sending RTP/RTCP over TCP.
void
(*GstRTSPKeepAliveFunc) (gpointer user_data);
Function registered with gst_rtsp_stream_transport_set_keepalive() and called
when the stream is active.
void gst_rtsp_stream_transport_set_keepalive (GstRTSPStreamTransport *trans,GstRTSPKeepAliveFunc keep_alive,gpointer user_data,GDestroyNotify notify);
Install callbacks that will be called when RTCP packets are received from the
receiver of trans
.
void
gst_rtsp_stream_transport_keep_alive (GstRTSPStreamTransport *trans);
Signal the installed keep_alive callback for trans
.
gboolean gst_rtsp_stream_transport_set_active (GstRTSPStreamTransport *trans,gboolean active);
Activate or deactivate datatransfer configured in trans
.
void gst_rtsp_stream_transport_set_timed_out (GstRTSPStreamTransport *trans,gboolean timedout);
Set the timed out state of trans
to timedout
gboolean
gst_rtsp_stream_transport_is_timed_out
(GstRTSPStreamTransport *trans);
Check if trans
is timed out.
gboolean gst_rtsp_stream_transport_send_rtcp (GstRTSPStreamTransport *trans,GstBuffer *buffer);
Send buffer
to the installed RTCP callback for trans
.
gboolean gst_rtsp_stream_transport_send_rtp (GstRTSPStreamTransport *trans,GstBuffer *buffer);
Send buffer
to the installed RTP callback for trans
.