Top |
Functions
GST_RTP_BASE_DEPAYLOAD_SINKPAD()
#define GST_RTP_BASE_DEPAYLOAD_SINKPAD(depayload) (GST_RTP_BASE_DEPAYLOAD_CAST (depayload)->sinkpad)
GST_RTP_BASE_DEPAYLOAD_SRCPAD()
#define GST_RTP_BASE_DEPAYLOAD_SRCPAD(depayload) (GST_RTP_BASE_DEPAYLOAD_CAST (depayload)->srcpad)
gst_rtp_base_depayload_push ()
GstFlowReturn gst_rtp_base_depayload_push (GstRTPBaseDepayload *filter
,GstBuffer *out_buf
);
Push out_buf
to the peer of filter
. This function takes ownership of
out_buf
.
This function will by default apply the last incomming timestamp on the outgoing buffer when it didn't have a timestamp already.
gst_rtp_base_depayload_push_list ()
GstFlowReturn gst_rtp_base_depayload_push_list (GstRTPBaseDepayload *filter
,GstBufferList *out_list
);
Push out_list
to the peer of filter
. This function takes ownership of
out_list
.
Types and Values
struct GstRTPBaseDepayloadClass
struct GstRTPBaseDepayloadClass { GstElementClass parent_class; /* virtuals, inform the subclass of the caps. */ gboolean (*set_caps) (GstRTPBaseDepayload *filter, GstCaps *caps); /* pure virtual function, child must implement either this method * or the process_rtp_packet virtual method to process incoming * rtp packets. If the child returns a buffer without a valid timestamp, * the timestamp of @in will be applied to the result buffer and the * buffer will be pushed. If this function returns %NULL, nothing is * pushed. */ GstBuffer * (*process) (GstRTPBaseDepayload *base, GstBuffer *in); /* non-pure function used to to signal the depayloader about packet loss. the * timestamp and duration are the estimated values of the lost packet. * The default implementation of this message pushes a segment update. */ gboolean (*packet_lost) (GstRTPBaseDepayload *filter, GstEvent *event); /* the default implementation does the default actions for events but * implementation can override. */ gboolean (*handle_event) (GstRTPBaseDepayload * filter, GstEvent * event); /* Optional. Same as the process virtual function, but slightly more * efficient, since it is passed the rtp buffer structure that has already * been mapped (with GST_MAP_READ) by the base class and thus does not have * to be mapped again by the subclass. Can be used by the subclass to process * incoming rtp packets. If the subclass returns a buffer without a valid * timestamp, the timestamp of the input buffer will be applied to the result * buffer and the output buffer will be pushed out. If this function returns * %NULL, nothing is pushed out. * * Since: 1.6 */ GstBuffer * (*process_rtp_packet) (GstRTPBaseDepayload *base, GstRTPBuffer * rtp_buffer); };
Base class for RTP depayloaders.
Property Details
The “stats”
property
“stats” GstStructure *
Various depayloader statistics retrieved atomically (and are therefore synchroized with each other). This property return a GstStructure named application/x-rtp-depayload-stats containing the following fields relating to the last processed buffer and current state of the stream being depayloaded:
clock-rate
: G_TYPE_UINT, clock-rate of the streamnpt-start
: G_TYPE_UINT64, time of playback startnpt-stop
: G_TYPE_UINT64, time of playback stopplay-speed
: G_TYPE_DOUBLE, the playback speedplay-scale
: G_TYPE_DOUBLE, the playback scalerunning-time-dts
: G_TYPE_UINT64, the last running-time of the last DTSrunning-time-pts
: G_TYPE_UINT64, the last running-time of the last PTSseqnum
: G_TYPE_UINT, the last seen seqnumtimestamp
: G_TYPE_UINT, the last seen RTP timestamp
Flags: Read