rtpptdemux

rtpptdemux — Parses codec streams transmitted in the same RTP session

Signals

void clear-pt-map Action
void new-payload-type Run Last
void payload-type-change Run Last
GstCaps* request-pt-map Run Last

Types and Values

struct GstRtpPtDemux

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstElement
                ╰── GstRtpPtDemux

Description

rtpptdemux acts as a demuxer for RTP packets based on the payload type of the packets. Its main purpose is to allow an application to easily receive and decode an RTP stream with multiple payload types.

For each payload type that is detected, a new pad will be created and the “new-payload-type” signal will be emitted. When the payload for the RTP stream changes, the “payload-type-change” signal will be emitted.

The element will try to set complete and unique application/x-rtp caps on the outgoing buffers and pads based on the result of the “request-pt-map” signal.

Example pipelines

1
gst-launch-1.0 udpsrc caps="application/x-rtp" ! rtpptdemux ! fakesink
Takes an RTP stream and send the RTP packets with the first detected payload type to fakesink, discarding the other payload types.

Synopsis

Element Information

plugin

rtpmanager

author

Kai Vehmanen <kai.vehmanen@nokia.com>

class

Demux/Network/RTP

Element Pads

name

sink

direction

sink

presence

always

details

application/x-rtp

name

src_%u

direction

source

presence

sometimes

details

application/x-rtp, payload=(int)[ 0, 255 ]

Functions

Types and Values

struct GstRtpPtDemux

struct GstRtpPtDemux;

Signal Details

The “clear-pt-map” signal

void
user_function (GstRtpPtDemux *demux,
               gpointer       user_data)

The application can call this signal to instruct the element to discard the currently cached payload type map.

Parameters

demux

the object which received the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Action


The “new-payload-type” signal

void
user_function (GstRtpPtDemux *demux,
               guint          pt,
               GstPad        *pad,
               gpointer       user_data)

Emited when a new payload type pad has been created in demux .

Parameters

demux

the object which received the signal

 

pt

the payload type

 

pad

the pad with the new payload

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “payload-type-change” signal

void
user_function (GstRtpPtDemux *demux,
               guint          pt,
               gpointer       user_data)

Emited when the payload type changed.

Parameters

demux

the object which received the signal

 

pt

the new payload type

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “request-pt-map” signal

GstCaps*
user_function (GstRtpPtDemux *demux,
               guint          pt,
               gpointer       user_data)

Request the payload type as GstCaps for pt .

Parameters

demux

the object which received the signal

 

pt

the payload type

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last