RTPSession

GObject
    ╰──RTPSession

The RTP session manager object


Signals

RTPSession::get-source-by-ssrc

RTPSource *
RTPSession::get_source_by_ssrc_callback (GstElement * session,
                                         guint ssrc,
                                         gpointer udata)
def RTPSession::get_source_by_ssrc_callback (session, ssrc, udata):
    #python callback for the 'get-source-by-ssrc' signal
function RTPSession::get_source_by_ssrc_callback(session: GstElement * session, ssrc: guint ssrc, udata: gpointer udata): {
    // javascript callback for the 'get-source-by-ssrc' signal
}

Request the RTPSource object with SSRC ssrc in session.

Parameters:

session

the object which received the signal

ssrc

the SSRC of the RTPSource

udata
No description available
Returns ( RTPSource * ) –
No description available

Flags: Run Last / Action


RTPSession::on-app-rtcp

RTPSession::on_app_rtcp_callback (GstElement * session,
                                  guint subtype,
                                  guint ssrc,
                                  gchararray name,
                                  GstBuffer * data,
                                  gpointer udata)
def RTPSession::on_app_rtcp_callback (session, subtype, ssrc, name, data, udata):
    #python callback for the 'on-app-rtcp' signal
function RTPSession::on_app_rtcp_callback(session: GstElement * session, subtype: guint subtype, ssrc: guint ssrc, name: gchararray name, data: GstBuffer * data, udata: gpointer udata): {
    // javascript callback for the 'on-app-rtcp' signal
}

Notify that a RTCP APP packet has been received

Parameters:

session

the object which received the signal

subtype

The subtype of the packet

ssrc

The SSRC/CSRC of the packet

name

The name of the packet

data

a GstBuffer with the application-dependant data or NULL if there was no data

udata
No description available

Flags: Run Last


RTPSession::on-bye-ssrc

RTPSession::on_bye_ssrc_callback (GstElement * session,
                                  RTPSource * src,
                                  gpointer udata)
def RTPSession::on_bye_ssrc_callback (session, src, udata):
    #python callback for the 'on-bye-ssrc' signal
function RTPSession::on_bye_ssrc_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-bye-ssrc' signal
}

Notify of an SSRC that became inactive because of a BYE packet.

Parameters:

session

the object which received the signal

src

the RTPSource that went away

udata
No description available

Flags: Run Last


RTPSession::on-bye-timeout

RTPSession::on_bye_timeout_callback (GstElement * session,
                                     RTPSource * src,
                                     gpointer udata)
def RTPSession::on_bye_timeout_callback (session, src, udata):
    #python callback for the 'on-bye-timeout' signal
function RTPSession::on_bye_timeout_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-bye-timeout' signal
}

Notify of an SSRC that has timed out because of BYE

Parameters:

session

the object which received the signal

src

the RTPSource that timed out

udata
No description available

Flags: Run Last


RTPSession::on-feedback-rtcp

RTPSession::on_feedback_rtcp_callback (GstElement * session,
                                       guint type,
                                       guint fbtype,
                                       guint sender_ssrc,
                                       guint media_ssrc,
                                       GstBuffer * fci,
                                       gpointer udata)
def RTPSession::on_feedback_rtcp_callback (session, type, fbtype, sender_ssrc, media_ssrc, fci, udata):
    #python callback for the 'on-feedback-rtcp' signal
function RTPSession::on_feedback_rtcp_callback(session: GstElement * session, type: guint type, fbtype: guint fbtype, sender_ssrc: guint sender_ssrc, media_ssrc: guint media_ssrc, fci: GstBuffer * fci, udata: gpointer udata): {
    // javascript callback for the 'on-feedback-rtcp' signal
}

Notify that a RTCP feedback packet has been received

Parameters:

session

the object which received the signal

type

Type of RTCP packet, will be GST_RTCP_TYPE_RTPFB or GST_RTCP_TYPE_RTPFB

fbtype

The type of RTCP FB packet, probably part of GstRTCPFBType

sender_ssrc

The SSRC of the sender

media_ssrc

The SSRC of the media this refers to

fci

a GstBuffer with the FCI data from the FB packet or NULL if there was no FCI

udata
No description available

Flags: Run Last


RTPSession::on-new-sender-ssrc

RTPSession::on_new_sender_ssrc_callback (GstElement * session,
                                         RTPSource * src,
                                         gpointer udata)
def RTPSession::on_new_sender_ssrc_callback (session, src, udata):
    #python callback for the 'on-new-sender-ssrc' signal
function RTPSession::on_new_sender_ssrc_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-new-sender-ssrc' signal
}

Notify of a new sender SSRC that entered session.

Parameters:

session

the object which received the signal

src

the new sender RTPSource

udata
No description available

Flags: Run Last

Since : 1.8


RTPSession::on-new-ssrc

RTPSession::on_new_ssrc_callback (GstElement * session,
                                  RTPSource * src,
                                  gpointer udata)
def RTPSession::on_new_ssrc_callback (session, src, udata):
    #python callback for the 'on-new-ssrc' signal
function RTPSession::on_new_ssrc_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-new-ssrc' signal
}

Notify of a new SSRC that entered session.

Parameters:

session

the object which received the signal

src

the new RTPSource

udata
No description available

Flags: Run Last


RTPSession::on-receiving-rtcp

RTPSession::on_receiving_rtcp_callback (GstElement * session,
                                        GstBuffer * buffer,
                                        gpointer udata)
def RTPSession::on_receiving_rtcp_callback (session, buffer, udata):
    #python callback for the 'on-receiving-rtcp' signal
function RTPSession::on_receiving_rtcp_callback(session: GstElement * session, buffer: GstBuffer * buffer, udata: gpointer udata): {
    // javascript callback for the 'on-receiving-rtcp' signal
}

This signal is emitted when receiving an RTCP packet before it is handled by the session. It can be used to extract custom information from RTCP packets.

Parameters:

session

the object which received the signal

buffer

the GstBuffer containing the RTCP packet that was received

udata
No description available

Flags: Run Last

Since : 1.6


RTPSession::on-sender-ssrc-active

RTPSession::on_sender_ssrc_active_callback (GstElement * session,
                                            RTPSource * src,
                                            gpointer udata)
def RTPSession::on_sender_ssrc_active_callback (session, src, udata):
    #python callback for the 'on-sender-ssrc-active' signal
function RTPSession::on_sender_ssrc_active_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-sender-ssrc-active' signal
}

Notify of a sender SSRC that is active, i.e., sending RTCP.

Parameters:

session

the object which received the signal

src

the active sender RTPSource

udata
No description available

Flags: Run Last

Since : 1.8


RTPSession::on-sender-timeout

RTPSession::on_sender_timeout_callback (GstElement * session,
                                        RTPSource * src,
                                        gpointer udata)
def RTPSession::on_sender_timeout_callback (session, src, udata):
    #python callback for the 'on-sender-timeout' signal
function RTPSession::on_sender_timeout_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-sender-timeout' signal
}

Notify of an SSRC that was a sender but timed out and became a receiver.

Parameters:

session

the object which received the signal

src

the RTPSource that timed out

udata
No description available

Flags: Run Last


RTPSession::on-sending-nacks

guint
RTPSession::on_sending_nacks_callback (GstElement * param_0,
                                       guint arg0,
                                       guint arg1,
                                       GArray * arg2,
                                       GstBuffer * arg3,
                                       gpointer udata)
def RTPSession::on_sending_nacks_callback (param_0, arg0, arg1, arg2, arg3, udata):
    #python callback for the 'on-sending-nacks' signal
function RTPSession::on_sending_nacks_callback(param_0: GstElement * param_0, arg0: guint arg0, arg1: guint arg1, arg2: GArray * arg2, arg3: GstBuffer * arg3, udata: gpointer udata): {
    // javascript callback for the 'on-sending-nacks' signal
}

Parameters:

param_0
No description available
arg0
No description available
arg1
No description available
arg2
No description available
arg3
No description available
udata
No description available
Returns ( guint ) –
No description available

Flags: Run Last


RTPSession::on-sending-rtcp

gboolean
RTPSession::on_sending_rtcp_callback (GstElement * session,
                                      GstBuffer * buffer,
                                      gboolean early,
                                      gpointer udata)
def RTPSession::on_sending_rtcp_callback (session, buffer, early, udata):
    #python callback for the 'on-sending-rtcp' signal
function RTPSession::on_sending_rtcp_callback(session: GstElement * session, buffer: GstBuffer * buffer, early: gboolean early, udata: gpointer udata): {
    // javascript callback for the 'on-sending-rtcp' signal
}

This signal is emitted before sending an RTCP packet, it can be used to add extra RTCP Packets.

Parameters:

session

the object which received the signal

buffer

the GstBuffer containing the RTCP packet about to be sent

early

TRUE if the packet is early, FALSE if it is regular

udata
No description available
Returns ( gboolean ) –

TRUE if the RTCP buffer should NOT be suppressed, FALSE if suppressing it is acceptable

Flags: Run Last


RTPSession::on-ssrc-active

RTPSession::on_ssrc_active_callback (GstElement * session,
                                     RTPSource * src,
                                     gpointer udata)
def RTPSession::on_ssrc_active_callback (session, src, udata):
    #python callback for the 'on-ssrc-active' signal
function RTPSession::on_ssrc_active_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-ssrc-active' signal
}

Notify of a SSRC that is active, i.e., sending RTCP.

Parameters:

session

the object which received the signal

src

the active RTPSource

udata
No description available

Flags: Run Last


RTPSession::on-ssrc-collision

RTPSession::on_ssrc_collision_callback (GstElement * session,
                                        RTPSource * src,
                                        gpointer udata)
def RTPSession::on_ssrc_collision_callback (session, src, udata):
    #python callback for the 'on-ssrc-collision' signal
function RTPSession::on_ssrc_collision_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-ssrc-collision' signal
}

Notify when we have an SSRC collision

Parameters:

session

the object which received the signal

src

the RTPSource that caused a collision

udata
No description available

Flags: Run Last


RTPSession::on-ssrc-sdes

RTPSession::on_ssrc_sdes_callback (GstElement * session,
                                   RTPSource * src,
                                   gpointer udata)
def RTPSession::on_ssrc_sdes_callback (session, src, udata):
    #python callback for the 'on-ssrc-sdes' signal
function RTPSession::on_ssrc_sdes_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-ssrc-sdes' signal
}

Notify that a new SDES was received for SSRC.

Parameters:

session

the object which received the signal

src

the RTPSource

udata
No description available

Flags: Run Last


RTPSession::on-ssrc-validated

RTPSession::on_ssrc_validated_callback (GstElement * session,
                                        RTPSource * src,
                                        gpointer udata)
def RTPSession::on_ssrc_validated_callback (session, src, udata):
    #python callback for the 'on-ssrc-validated' signal
function RTPSession::on_ssrc_validated_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-ssrc-validated' signal
}

Notify of a new SSRC that became validated.

Parameters:

session

the object which received the signal

src

the new validated RTPSource

udata
No description available

Flags: Run Last


RTPSession::on-timeout

RTPSession::on_timeout_callback (GstElement * session,
                                 RTPSource * src,
                                 gpointer udata)
def RTPSession::on_timeout_callback (session, src, udata):
    #python callback for the 'on-timeout' signal
function RTPSession::on_timeout_callback(session: GstElement * session, src: RTPSource * src, udata: gpointer udata): {
    // javascript callback for the 'on-timeout' signal
}

Notify of an SSRC that has timed out

Parameters:

session

the object which received the signal

src

the RTPSource that timed out

udata
No description available

Flags: Run Last


RTPSession::send-rtcp

RTPSession::send_rtcp_callback (GstElement * session,
                                guint64 max_delay,
                                gpointer udata)
def RTPSession::send_rtcp_callback (session, max_delay, udata):
    #python callback for the 'send-rtcp' signal
function RTPSession::send_rtcp_callback(session: GstElement * session, max_delay: guint64 max_delay, udata: gpointer udata): {
    // javascript callback for the 'send-rtcp' signal
}

Requests that the RTPSession initiate a new RTCP packet as soon as possible within the requested delay.

This sets feedback to TRUE if not already done before.

Parameters:

session

the object which received the signal

max_delay

The maximum delay after which the feedback will not be useful anymore

udata
No description available

Flags: Run Last / Action


RTPSession::send-rtcp-full

gboolean
RTPSession::send_rtcp_full_callback (GstElement * session,
                                     guint64 max_delay,
                                     gpointer udata)
def RTPSession::send_rtcp_full_callback (session, max_delay, udata):
    #python callback for the 'send-rtcp-full' signal
function RTPSession::send_rtcp_full_callback(session: GstElement * session, max_delay: guint64 max_delay, udata: gpointer udata): {
    // javascript callback for the 'send-rtcp-full' signal
}

Requests that the RTPSession initiate a new RTCP packet as soon as possible within the requested delay.

This sets feedback to TRUE if not already done before.

Parameters:

session

the object which received the signal

max_delay

The maximum delay after which the feedback will not be useful anymore

udata
No description available
Returns ( gboolean ) –

TRUE if the new RTCP packet could be scheduled within the requested delay, FALSE otherwise.

Flags: Run Last / Action

Since : 1.6


Properties

bandwidth

“bandwidth” gdouble

The bandwidth of the session in bits per second (0 for auto-discover)

Flags : Read / Write

Default value : 0


disable-sr-timestamp

“disable-sr-timestamp” gboolean

Whether sender reports should be timestamped.

Flags : Read / Write

Default value : false


favor-new

“favor-new” gboolean

Resolve SSRC conflict in favor of new sources

Flags : Read / Write

Default value : false


internal-source

“internal-source” RTPSource *

The internal source element of the session (deprecated)

Flags : Read


internal-ssrc

“internal-ssrc” guint

The internal SSRC used for the session (deprecated)

Flags : Read / Write

Default value : 0


max-dropout-time

“max-dropout-time” guint

The maximum time (milliseconds) of missing packets tolerated.

Flags : Read / Write

Default value : 60000


max-misorder-time

“max-misorder-time” guint

The maximum time (milliseconds) of misordered packets tolerated.

Flags : Read / Write

Default value : 2000


num-active-sources

“num-active-sources” guint

The number of active sources in the session

Flags : Read

Default value : 0


num-sources

“num-sources” guint

The number of sources in the session

Flags : Read

Default value : 0


probation

“probation” guint

Consecutive packet sequence numbers to accept the source

Flags : Read / Write

Default value : 2


rtcp-feedback-retention-window

“rtcp-feedback-retention-window” guint64

Duration during which RTCP Feedback packets are retained (in ns)

Flags : Read / Write

Default value : 2000000000


rtcp-fraction

“rtcp-fraction” gdouble

The fraction of the bandwidth used for RTCP in bits per second (or as a real fraction of the RTP bandwidth if < 1)

Flags : Read / Write

Default value : 0.05


rtcp-immediate-feedback-threshold

“rtcp-immediate-feedback-threshold” guint

The maximum number of members of a RTP session for which immediate feedback is used (DEPRECATED: has no effect and is not needed)

Flags : Read / Write

Default value : 3


rtcp-min-interval

“rtcp-min-interval” guint64

Minimum interval between Regular RTCP packet (in ns)

Flags : Read / Write

Default value : 5000000000


rtcp-mtu

“rtcp-mtu” guint

The maximum size of the RTCP packets

Flags : Read / Write

Default value : 1400


rtcp-reduced-size

“rtcp-reduced-size” gboolean

Use Reduced Size RTCP for feedback packets

Flags : Read / Write

Default value : false


rtcp-rr-bandwidth

“rtcp-rr-bandwidth” gint

The RTCP bandwidth used for receivers in bits per second (-1 = default)

Flags : Read / Write

Default value : -1


rtcp-rs-bandwidth

“rtcp-rs-bandwidth” gint

The RTCP bandwidth used for senders in bits per second (-1 = default)

Flags : Read / Write

Default value : -1


rtp-profile

“rtp-profile” GstRTPProfile *

RTP profile to use for this session

Flags : Read / Write

Default value : avp (1)


sdes

“sdes” GstStructure *

The SDES items of this session

Flags : Read / Write


sources

“sources” GValueArray *

An array of all known sources in the session

Flags : Read


stats

“stats” GstStructure *

Various session statistics. This property returns a GstStructure with name application/x-rtp-session-stats with the following fields:

  • "rtx-drop-count" G_TYPE_UINT The number of retransmission events dropped (due to bandwidth constraints)
  • "sent-nack-count" G_TYPE_UINT Number of NACKs sent
  • "recv-nack-count" G_TYPE_UINT Number of NACKs received
  • "source-stats" G_TYPE_BOXED GValueArray of stats for all RTP sources (Since 1.8)

Flags : Read

Default value :

application/x-rtp-session-stats, rtx-drop-count=(uint)0, sent-nack-count=(uint)0, recv-nack-count=(uint)0, source-stats=(GValueArray)<  >;

The results of the search are