GStreamer Base Plugins 0.10 Library Reference Manual | ||||
---|---|---|---|---|
#include <gst/rtp/gstbasertpdepayload.h> GstBaseRTPDepayload; GstBaseRTPDepayloadClass; #define GST_BASE_RTP_DEPAYLOAD_SINKPAD (depayload) #define GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload) GstFlowReturn gst_base_rtp_depayload_push (GstBaseRTPDepayload *filter, GstBuffer *out_buf); GstFlowReturn gst_base_rtp_depayload_push_ts (GstBaseRTPDepayload *filter, guint32 timestamp, GstBuffer *out_buf);
typedef struct { GstElementClass parent_class; /* virtuals, inform the subclass of the caps. */ gboolean (*set_caps) (GstBaseRTPDepayload *filter, GstCaps *caps); /* non-pure function, default implementation in base class * this does buffering, reordering and dropping, deprecated */ GstFlowReturn (*add_to_queue) (GstBaseRTPDepayload *filter, GstBuffer *in); /* pure virtual function, child must use this 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) (GstBaseRTPDepayload *base, GstBuffer *in); /* non-pure function used to convert from RTP timestamp to GST timestamp * this function is used by the child class before gst_pad_pushing */ void (*set_gst_timestamp) (GstBaseRTPDepayload *filter, guint32 timestamp, GstBuffer *buf); /* 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) (GstBaseRTPDepayload *filter, GstEvent *event); } GstBaseRTPDepayloadClass;
#define GST_BASE_RTP_DEPAYLOAD_SINKPAD(depayload) (GST_BASE_RTP_DEPAYLOAD (depayload)->sinkpad)
depayload : |
#define GST_BASE_RTP_DEPAYLOAD_SRCPAD(depayload) (GST_BASE_RTP_DEPAYLOAD (depayload)->srcpad)
depayload : |
GstFlowReturn gst_base_rtp_depayload_push (GstBaseRTPDepayload *filter, GstBuffer *out_buf);
Push out_buf
to the peer of filter
. This function takes ownership of
out_buf
.
Unlike gst_base_rtp_depayload_push_ts()
, this function will not apply
any timestamp on the outgoing buffer.
filter : |
a GstBaseRTPDepayload |
out_buf : |
a GstBuffer |
Returns : | a GstFlowReturn. |
GstFlowReturn gst_base_rtp_depayload_push_ts (GstBaseRTPDepayload *filter, guint32 timestamp, GstBuffer *out_buf);
Push out_buf
to the peer of filter
. This function takes ownership of
out_buf
.
Unlike gst_base_rtp_depayload_push()
, this function will apply timestamp
on the outgoing buffer, using the configured clock_rate to convert the
timestamp to a valid GStreamer clock time.
filter : |
a GstBaseRTPDepayload |
timestamp : |
an RTP timestamp to apply |
out_buf : |
a GstBuffer |
Returns : | a GstFlowReturn. |