mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-13 19:05:37 +00:00
update for base class rename
This commit is contained in:
parent
3d9d2c6c05
commit
249d0083cc
136 changed files with 1092 additions and 1092 deletions
|
@ -92,13 +92,13 @@ GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
);
|
||||
|
||||
#define gst_rtp_xqt_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpXQTDepay, gst_rtp_xqt_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpXQTDepay, gst_rtp_xqt_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_xqt_depay_finalize (GObject * object);
|
||||
|
||||
static gboolean gst_rtp_xqt_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_xqt_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_xqt_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_xqt_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_xqt_depay_change_state (GstElement *
|
||||
|
@ -110,11 +110,11 @@ gst_rtp_xqt_depay_class_init (GstRtpXQTDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
parent_class = g_type_class_peek_parent (klass);
|
||||
|
||||
|
@ -122,8 +122,8 @@ gst_rtp_xqt_depay_class_init (GstRtpXQTDepayClass * klass)
|
|||
|
||||
gstelement_class->change_state = gst_rtp_xqt_depay_change_state;
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_xqt_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_xqt_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_xqt_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_xqt_depay_process;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpxqtdepay_debug, "rtpxqtdepay", 0,
|
||||
"QT Media RTP Depayloader");
|
||||
|
@ -213,7 +213,7 @@ gst_rtp_quicktime_parse_sd (GstRtpXQTDepay * rtpxqtdepay, guint8 * data,
|
|||
caps = gst_caps_new_simple ("video/x-h264",
|
||||
"codec_data", GST_TYPE_BUFFER, buf, NULL);
|
||||
gst_buffer_unref (buf);
|
||||
gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD (rtpxqtdepay)->srcpad, caps);
|
||||
gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD (rtpxqtdepay)->srcpad, caps);
|
||||
gst_caps_unref (caps);
|
||||
break;
|
||||
}
|
||||
|
@ -235,7 +235,7 @@ too_short:
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_xqt_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_xqt_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
gint clock_rate = 90000; /* default */
|
||||
|
@ -249,7 +249,7 @@ gst_rtp_xqt_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_xqt_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_xqt_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpXQTDepay *rtpxqtdepay;
|
||||
GstBuffer *outbuf = NULL;
|
||||
|
@ -597,7 +597,7 @@ gst_rtp_xqt_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
|||
if (!s)
|
||||
GST_BUFFER_FLAG_SET (outbuf, GST_BUFFER_FLAG_DELTA_UNIT);
|
||||
|
||||
gst_base_rtp_depayload_push (depayload, outbuf);
|
||||
gst_rtp_base_depayload_push (depayload, outbuf);
|
||||
|
||||
/* aligned on 32 bit boundary */
|
||||
slen = GST_ROUND_UP_4 (slen);
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpXQTDepayClass GstRtpXQTDepayClass;
|
|||
|
||||
struct _GstRtpXQTDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
|
||||
|
@ -54,7 +54,7 @@ struct _GstRtpXQTDepay
|
|||
|
||||
struct _GstRtpXQTDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_xqt_depay_get_type (void);
|
||||
|
|
|
@ -65,24 +65,24 @@ static GstStaticPadTemplate gst_rtp_L16_depay_sink_template =
|
|||
);
|
||||
|
||||
#define gst_rtp_L16_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpL16Depay, gst_rtp_L16_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpL16Depay, gst_rtp_L16_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static gboolean gst_rtp_L16_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_L16_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_L16_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_L16_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
gst_rtp_L16_depay_class_init (GstRtpL16DepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_L16_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_L16_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_L16_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_L16_depay_process;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_L16_depay_src_template));
|
||||
|
@ -121,7 +121,7 @@ gst_rtp_L16_depay_parse_int (GstStructure * structure, const gchar * field,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_L16_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_L16_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstRtpL16Depay *rtpL16depay;
|
||||
|
@ -211,7 +211,7 @@ no_clockrate:
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_L16_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_L16_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpL16Depay *rtpL16depay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -43,7 +43,7 @@ typedef struct _GstRtpL16DepayClass GstRtpL16DepayClass;
|
|||
/* Definition of structure storing data for this element. */
|
||||
struct _GstRtpL16Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
guint rate;
|
||||
guint channels;
|
||||
|
@ -52,7 +52,7 @@ struct _GstRtpL16Depay
|
|||
/* Standard definition defining a class for this element. */
|
||||
struct _GstRtpL16DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_L16_depay_get_type (void);
|
||||
|
|
|
@ -64,25 +64,25 @@ static GstStaticPadTemplate gst_rtp_L16_pay_src_template =
|
|||
"clock-rate = (int) 44100")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_L16_pay_setcaps (GstBaseRTPPayload * basepayload,
|
||||
static gboolean gst_rtp_L16_pay_setcaps (GstRTPBasePayload * basepayload,
|
||||
GstCaps * caps);
|
||||
static GstCaps *gst_rtp_L16_pay_getcaps (GstBaseRTPPayload * rtppayload,
|
||||
static GstCaps *gst_rtp_L16_pay_getcaps (GstRTPBasePayload * rtppayload,
|
||||
GstPad * pad, GstCaps * filter);
|
||||
|
||||
#define gst_rtp_L16_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpL16Pay, gst_rtp_L16_pay, GST_TYPE_BASE_RTP_AUDIO_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpL16Pay, gst_rtp_L16_pay, GST_TYPE_RTP_BASE_AUDIO_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_L16_pay_class_init (GstRtpL16PayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_L16_pay_setcaps;
|
||||
gstbasertppayload_class->get_caps = gst_rtp_L16_pay_getcaps;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_L16_pay_setcaps;
|
||||
gstrtpbasepayload_class->get_caps = gst_rtp_L16_pay_getcaps;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_L16_pay_src_template));
|
||||
|
@ -101,16 +101,16 @@ gst_rtp_L16_pay_class_init (GstRtpL16PayClass * klass)
|
|||
static void
|
||||
gst_rtp_L16_pay_init (GstRtpL16Pay * rtpL16pay)
|
||||
{
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (rtpL16pay);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (rtpL16pay);
|
||||
|
||||
/* tell basertpaudiopayload that this is a sample based codec */
|
||||
gst_base_rtp_audio_payload_set_sample_based (basertpaudiopayload);
|
||||
/* tell rtpbaseaudiopayload that this is a sample based codec */
|
||||
gst_rtp_base_audio_payload_set_sample_based (rtpbaseaudiopayload);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_L16_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
||||
gst_rtp_L16_pay_setcaps (GstRTPBasePayload * basepayload, GstCaps * caps)
|
||||
{
|
||||
GstRtpL16Pay *rtpL16pay;
|
||||
GstStructure *structure;
|
||||
|
@ -119,9 +119,9 @@ gst_rtp_L16_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
gchar *params;
|
||||
GstAudioChannelPosition *pos;
|
||||
const GstRTPChannelOrder *order;
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (basepayload);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (basepayload);
|
||||
rtpL16pay = GST_RTP_L16_PAY (basepayload);
|
||||
|
||||
structure = gst_caps_get_structure (caps, 0);
|
||||
|
@ -140,7 +140,7 @@ gst_rtp_L16_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
else
|
||||
order = NULL;
|
||||
|
||||
gst_base_rtp_payload_set_options (basepayload, "audio", TRUE, "L16", rate);
|
||||
gst_rtp_base_payload_set_options (basepayload, "audio", TRUE, "L16", rate);
|
||||
params = g_strdup_printf ("%d", channels);
|
||||
|
||||
if (!order && channels > 2) {
|
||||
|
@ -149,11 +149,11 @@ gst_rtp_L16_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
if (order && order->name) {
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload,
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload,
|
||||
"encoding-params", G_TYPE_STRING, params, "channels", G_TYPE_INT,
|
||||
channels, "channel-order", G_TYPE_STRING, order->name, NULL);
|
||||
} else {
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload,
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload,
|
||||
"encoding-params", G_TYPE_STRING, params, "channels", G_TYPE_INT,
|
||||
channels, NULL);
|
||||
}
|
||||
|
@ -165,7 +165,7 @@ gst_rtp_L16_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
rtpL16pay->channels = channels;
|
||||
|
||||
/* octet-per-sample is 2 * channels for L16 */
|
||||
gst_base_rtp_audio_payload_set_sample_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_sample_options (rtpbaseaudiopayload,
|
||||
2 * rtpL16pay->channels);
|
||||
|
||||
return res;
|
||||
|
@ -184,7 +184,7 @@ no_channels:
|
|||
}
|
||||
|
||||
static GstCaps *
|
||||
gst_rtp_L16_pay_getcaps (GstBaseRTPPayload * rtppayload, GstPad * pad,
|
||||
gst_rtp_L16_pay_getcaps (GstRTPBasePayload * rtppayload, GstPad * pad,
|
||||
GstCaps * filter)
|
||||
{
|
||||
GstCaps *otherpadcaps;
|
||||
|
|
|
@ -41,7 +41,7 @@ typedef struct _GstRtpL16PayClass GstRtpL16PayClass;
|
|||
|
||||
struct _GstRtpL16Pay
|
||||
{
|
||||
GstBaseRTPAudioPayload payload;
|
||||
GstRTPBaseAudioPayload payload;
|
||||
|
||||
gint rate;
|
||||
gint channels;
|
||||
|
@ -49,7 +49,7 @@ struct _GstRtpL16Pay
|
|||
|
||||
struct _GstRtpL16PayClass
|
||||
{
|
||||
GstBaseRTPAudioPayloadClass parent_class;
|
||||
GstRTPBaseAudioPayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_L16_pay_get_type (void);
|
||||
|
|
|
@ -47,21 +47,21 @@ GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
"encoding-name = (string) \"AC3\"")
|
||||
);
|
||||
|
||||
G_DEFINE_TYPE (GstRtpAC3Depay, gst_rtp_ac3_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpAC3Depay, gst_rtp_ac3_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static gboolean gst_rtp_ac3_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_ac3_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_ac3_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_ac3_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
gst_rtp_ac3_depay_class_init (GstRtpAC3DepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_ac3_depay_src_template));
|
||||
|
@ -73,8 +73,8 @@ gst_rtp_ac3_depay_class_init (GstRtpAC3DepayClass * klass)
|
|||
"Extracts AC3 audio from RTP packets (RFC 4184)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_ac3_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_ac3_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_ac3_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_ac3_depay_process;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpac3depay_debug, "rtpac3depay", 0,
|
||||
"AC3 Audio RTP Depayloader");
|
||||
|
@ -87,7 +87,7 @@ gst_rtp_ac3_depay_init (GstRtpAC3Depay * rtpac3depay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_ac3_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_ac3_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
gint clock_rate;
|
||||
|
@ -155,7 +155,7 @@ static const struct frmsize_s frmsizecod_tbl[] = {
|
|||
};
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_ac3_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_ac3_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpAC3Depay *rtpac3depay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -41,12 +41,12 @@ typedef struct _GstRtpAC3DepayClass GstRtpAC3DepayClass;
|
|||
|
||||
struct _GstRtpAC3Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
};
|
||||
|
||||
struct _GstRtpAC3DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_ac3_depay_get_type (void);
|
||||
|
|
|
@ -53,30 +53,30 @@ static void gst_rtp_ac3_pay_finalize (GObject * object);
|
|||
static GstStateChangeReturn gst_rtp_ac3_pay_change_state (GstElement * element,
|
||||
GstStateChange transition);
|
||||
|
||||
static gboolean gst_rtp_ac3_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_ac3_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static gboolean gst_rtp_ac3_pay_handle_event (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_ac3_pay_handle_event (GstRTPBasePayload * payload,
|
||||
GstEvent * event);
|
||||
static GstFlowReturn gst_rtp_ac3_pay_flush (GstRtpAC3Pay * rtpac3pay);
|
||||
static GstFlowReturn gst_rtp_ac3_pay_handle_buffer (GstBaseRTPPayload * payload,
|
||||
static GstFlowReturn gst_rtp_ac3_pay_handle_buffer (GstRTPBasePayload * payload,
|
||||
GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_ac3_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpAC3Pay, gst_rtp_ac3_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpAC3Pay, gst_rtp_ac3_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_ac3_pay_class_init (GstRtpAC3PayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpac3pay_debug, "rtpac3pay", 0,
|
||||
"AC3 Audio RTP Depayloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_ac3_pay_finalize;
|
||||
|
||||
|
@ -92,9 +92,9 @@ gst_rtp_ac3_pay_class_init (GstRtpAC3PayClass * klass)
|
|||
"Payload AC3 audio as RTP packets (RFC 4184)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_ac3_pay_setcaps;
|
||||
gstbasertppayload_class->handle_event = gst_rtp_ac3_pay_handle_event;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_ac3_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_ac3_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_event = gst_rtp_ac3_pay_handle_event;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_ac3_pay_handle_buffer;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -125,7 +125,7 @@ gst_rtp_ac3_pay_reset (GstRtpAC3Pay * pay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_ac3_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_ac3_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
gint rate;
|
||||
|
@ -136,14 +136,14 @@ gst_rtp_ac3_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
if (!gst_structure_get_int (structure, "rate", &rate))
|
||||
rate = 90000; /* default */
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "audio", TRUE, "AC3", rate);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
gst_rtp_base_payload_set_options (payload, "audio", TRUE, "AC3", rate);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_ac3_pay_handle_event (GstBaseRTPPayload * payload, GstEvent * event)
|
||||
gst_rtp_ac3_pay_handle_event (GstRTPBasePayload * payload, GstEvent * event)
|
||||
{
|
||||
gboolean res;
|
||||
GstRtpAC3Pay *rtpac3pay;
|
||||
|
@ -163,7 +163,7 @@ gst_rtp_ac3_pay_handle_event (GstBaseRTPPayload * payload, GstEvent * event)
|
|||
}
|
||||
|
||||
res =
|
||||
GST_BASE_RTP_PAYLOAD_CLASS (parent_class)->handle_event (payload, event);
|
||||
GST_RTP_BASE_PAYLOAD_CLASS (parent_class)->handle_event (payload, event);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
@ -235,7 +235,7 @@ gst_rtp_ac3_pay_flush (GstRtpAC3Pay * rtpac3pay)
|
|||
/* number of frames */
|
||||
NF = rtpac3pay->NF;
|
||||
|
||||
mtu = GST_BASE_RTP_PAYLOAD_MTU (rtpac3pay);
|
||||
mtu = GST_RTP_BASE_PAYLOAD_MTU (rtpac3pay);
|
||||
|
||||
GST_LOG_OBJECT (rtpac3pay, "flushing %u bytes", avail);
|
||||
|
||||
|
@ -310,14 +310,14 @@ gst_rtp_ac3_pay_flush (GstRtpAC3Pay * rtpac3pay)
|
|||
GST_BUFFER_TIMESTAMP (outbuf) = rtpac3pay->first_ts;
|
||||
GST_BUFFER_DURATION (outbuf) = rtpac3pay->duration;
|
||||
|
||||
ret = gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtpac3pay), outbuf);
|
||||
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpac3pay), outbuf);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_ac3_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_ac3_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpAC3Pay *rtpac3pay;
|
||||
|
@ -385,7 +385,7 @@ gst_rtp_ac3_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
/* if this buffer is going to overflow the packet, flush what we
|
||||
* have. */
|
||||
if (gst_base_rtp_payload_is_filled (basepayload,
|
||||
if (gst_rtp_base_payload_is_filled (basepayload,
|
||||
packet_len, rtpac3pay->duration + duration)) {
|
||||
ret = gst_rtp_ac3_pay_flush (rtpac3pay);
|
||||
avail = 0;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpAC3PayClass GstRtpAC3PayClass;
|
|||
|
||||
struct _GstRtpAC3Pay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime first_ts;
|
||||
|
@ -52,7 +52,7 @@ struct _GstRtpAC3Pay
|
|||
|
||||
struct _GstRtpAC3PayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_ac3_pay_get_type (void);
|
||||
|
|
|
@ -106,22 +106,22 @@ static GstStaticPadTemplate gst_rtp_amr_depay_src_template =
|
|||
"audio/AMR-WB, " "channels = (int) 1," "rate = (int) 16000")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_amr_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_amr_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_amr_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_amr_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
#define gst_rtp_amr_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpAMRDepay, gst_rtp_amr_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpAMRDepay, gst_rtp_amr_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_amr_depay_class_init (GstRtpAMRDepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_amr_depay_src_template));
|
||||
|
@ -133,8 +133,8 @@ gst_rtp_amr_depay_class_init (GstRtpAMRDepayClass * klass)
|
|||
"Extracts AMR or AMR-WB audio from RTP packets (RFC 3267)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_amr_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_amr_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_amr_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_amr_depay_setcaps;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpamrdepay_debug, "rtpamrdepay", 0,
|
||||
"AMR/AMR-WB RTP Depayloader");
|
||||
|
@ -143,15 +143,15 @@ gst_rtp_amr_depay_class_init (GstRtpAMRDepayClass * klass)
|
|||
static void
|
||||
gst_rtp_amr_depay_init (GstRtpAMRDepay * rtpamrdepay)
|
||||
{
|
||||
GstBaseRTPDepayload *depayload;
|
||||
GstRTPBaseDepayload *depayload;
|
||||
|
||||
depayload = GST_BASE_RTP_DEPAYLOAD (rtpamrdepay);
|
||||
depayload = GST_RTP_BASE_DEPAYLOAD (rtpamrdepay);
|
||||
|
||||
gst_pad_use_fixed_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload));
|
||||
gst_pad_use_fixed_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload));
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_amr_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_amr_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstCaps *srccaps;
|
||||
|
@ -241,7 +241,7 @@ gst_rtp_amr_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
srccaps = gst_caps_new_simple (type,
|
||||
"channels", G_TYPE_INT, rtpamrdepay->channels,
|
||||
"rate", G_TYPE_INT, clock_rate, NULL);
|
||||
res = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
res = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return res;
|
||||
|
@ -266,7 +266,7 @@ static const gint wb_frame_size[16] = {
|
|||
};
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_amr_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_amr_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpAMRDepay *rtpamrdepay;
|
||||
const gint *frame_size;
|
||||
|
|
|
@ -47,7 +47,7 @@ typedef enum {
|
|||
|
||||
struct _GstRtpAMRDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstRtpAMRDepayMode mode;
|
||||
|
||||
|
@ -65,7 +65,7 @@ struct _GstRtpAMRDepay
|
|||
|
||||
struct _GstRtpAMRDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_amr_depay_get_type (void);
|
||||
|
|
|
@ -85,25 +85,25 @@ static GstStaticPadTemplate gst_rtp_amr_pay_src_template =
|
|||
"maxptime = (int) [ 20, MAX ], " "ptime = (int) [ 20, MAX ]")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_amr_pay_setcaps (GstBaseRTPPayload * basepayload,
|
||||
static gboolean gst_rtp_amr_pay_setcaps (GstRTPBasePayload * basepayload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_amr_pay_handle_buffer (GstBaseRTPPayload * pad,
|
||||
static GstFlowReturn gst_rtp_amr_pay_handle_buffer (GstRTPBasePayload * pad,
|
||||
GstBuffer * buffer);
|
||||
|
||||
static GstStateChangeReturn
|
||||
gst_rtp_amr_pay_change_state (GstElement * element, GstStateChange transition);
|
||||
|
||||
#define gst_rtp_amr_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpAMRPay, gst_rtp_amr_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpAMRPay, gst_rtp_amr_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_amr_pay_class_init (GstRtpAMRPayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gstelement_class->change_state = gst_rtp_amr_pay_change_state;
|
||||
|
||||
|
@ -117,8 +117,8 @@ gst_rtp_amr_pay_class_init (GstRtpAMRPayClass * klass)
|
|||
"Payload-encode AMR or AMR-WB audio into RTP packets (RFC 3267)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_amr_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_amr_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_amr_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_amr_pay_handle_buffer;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpamrpay_debug, "rtpamrpay", 0,
|
||||
"AMR/AMR-WB RTP Payloader");
|
||||
|
@ -138,7 +138,7 @@ gst_rtp_amr_pay_reset (GstRtpAMRPay * pay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_amr_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
||||
gst_rtp_amr_pay_setcaps (GstRTPBasePayload * basepayload, GstCaps * caps)
|
||||
{
|
||||
GstRtpAMRPay *rtpamrpay;
|
||||
gboolean res;
|
||||
|
@ -160,12 +160,12 @@ gst_rtp_amr_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
goto wrong_type;
|
||||
|
||||
if (rtpamrpay->mode == GST_RTP_AMR_P_MODE_NB)
|
||||
gst_base_rtp_payload_set_options (basepayload, "audio", TRUE, "AMR", 8000);
|
||||
gst_rtp_base_payload_set_options (basepayload, "audio", TRUE, "AMR", 8000);
|
||||
else
|
||||
gst_base_rtp_payload_set_options (basepayload, "audio", TRUE, "AMR-WB",
|
||||
gst_rtp_base_payload_set_options (basepayload, "audio", TRUE, "AMR-WB",
|
||||
16000);
|
||||
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload,
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload,
|
||||
"encoding-params", G_TYPE_STRING, "1", "octet-align", G_TYPE_STRING, "1",
|
||||
/* don't set the defaults
|
||||
*
|
||||
|
@ -221,7 +221,7 @@ static const gint wb_frame_size[16] = {
|
|||
};
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_amr_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_amr_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpAMRPay *rtpamrpay;
|
||||
|
@ -239,7 +239,7 @@ gst_rtp_amr_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
GstRTPBuffer rtp = { NULL };
|
||||
|
||||
rtpamrpay = GST_RTP_AMR_PAY (basepayload);
|
||||
mtu = GST_BASE_RTP_PAYLOAD_MTU (rtpamrpay);
|
||||
mtu = GST_RTP_BASE_PAYLOAD_MTU (rtpamrpay);
|
||||
|
||||
data = gst_buffer_map (buffer, &size, NULL, GST_MAP_READ);
|
||||
|
||||
|
@ -376,7 +376,7 @@ gst_rtp_amr_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
gst_rtp_buffer_unmap (&rtp);
|
||||
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
|
||||
return ret;
|
||||
|
||||
|
|
|
@ -48,7 +48,7 @@ typedef enum {
|
|||
|
||||
struct _GstRtpAMRPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstRtpAMRPayMode mode;
|
||||
GstClockTime first_ts;
|
||||
|
@ -58,7 +58,7 @@ struct _GstRtpAMRPay
|
|||
|
||||
struct _GstRtpAMRPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_amr_pay_get_type (void);
|
||||
|
|
|
@ -49,22 +49,22 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
GST_STATIC_CAPS ("audio/x-bv, " "mode = (int) { 16, 32 }")
|
||||
);
|
||||
|
||||
static GstBuffer *gst_rtp_bv_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_bv_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
static gboolean gst_rtp_bv_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_bv_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_bv_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPBVDepay, gst_rtp_bv_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPBVDepay, gst_rtp_bv_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_bv_depay_class_init (GstRTPBVDepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_bv_depay_src_template));
|
||||
|
@ -76,8 +76,8 @@ gst_rtp_bv_depay_class_init (GstRTPBVDepayClass * klass)
|
|||
"Extracts BroadcomVoice audio from RTP packets (RFC 4298)",
|
||||
"Wim Taymans <wim.taymans@collabora.co.uk>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_bv_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_bv_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_bv_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_bv_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -87,7 +87,7 @@ gst_rtp_bv_depay_init (GstRTPBVDepay * rtpbvdepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_bv_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_bv_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstRTPBVDepay *rtpbvdepay = GST_RTP_BV_DEPAY (depayload);
|
||||
GstCaps *srccaps;
|
||||
|
@ -121,7 +121,7 @@ gst_rtp_bv_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
|
||||
srccaps = gst_caps_new_simple ("audio/x-bv",
|
||||
"mode", G_TYPE_INT, rtpbvdepay->mode, NULL);
|
||||
ret = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
ret = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
|
||||
GST_DEBUG ("set caps on source: %" GST_PTR_FORMAT " (ret=%d)", srccaps, ret);
|
||||
gst_caps_unref (srccaps);
|
||||
|
@ -149,7 +149,7 @@ wrong_rate:
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_bv_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_bv_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstBuffer *outbuf;
|
||||
gboolean marker;
|
||||
|
|
|
@ -41,14 +41,14 @@ typedef struct _GstRTPBVDepayClass GstRTPBVDepayClass;
|
|||
|
||||
struct _GstRTPBVDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
gint mode;
|
||||
};
|
||||
|
||||
struct _GstRTPBVDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_bv_depay_get_type (void);
|
||||
|
|
|
@ -53,25 +53,25 @@ static GstStaticPadTemplate gst_rtp_bv_pay_src_template =
|
|||
);
|
||||
|
||||
|
||||
static GstCaps *gst_rtp_bv_pay_sink_getcaps (GstBaseRTPPayload * payload,
|
||||
static GstCaps *gst_rtp_bv_pay_sink_getcaps (GstRTPBasePayload * payload,
|
||||
GstPad * pad, GstCaps * filter);
|
||||
static gboolean gst_rtp_bv_pay_sink_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_bv_pay_sink_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_bv_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPBVPay, gst_rtp_bv_pay, GST_TYPE_BASE_RTP_AUDIO_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPBVPay, gst_rtp_bv_pay, GST_TYPE_RTP_BASE_AUDIO_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_bv_pay_class_init (GstRTPBVPayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpbvpay_debug, "rtpbvpay", 0,
|
||||
"BroadcomVoice audio RTP payloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_bv_pay_sink_template));
|
||||
|
@ -83,34 +83,34 @@ gst_rtp_bv_pay_class_init (GstRTPBVPayClass * klass)
|
|||
"Packetize BroadcomVoice audio streams into RTP packets (RFC 4298)",
|
||||
"Wim Taymans <wim.taymans@collabora.co.uk>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_bv_pay_sink_setcaps;
|
||||
gstbasertppayload_class->get_caps = gst_rtp_bv_pay_sink_getcaps;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_bv_pay_sink_setcaps;
|
||||
gstrtpbasepayload_class->get_caps = gst_rtp_bv_pay_sink_getcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_rtp_bv_pay_init (GstRTPBVPay * rtpbvpay)
|
||||
{
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (rtpbvpay);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (rtpbvpay);
|
||||
|
||||
rtpbvpay->mode = -1;
|
||||
|
||||
/* tell basertpaudiopayload that this is a frame based codec */
|
||||
gst_base_rtp_audio_payload_set_frame_based (basertpaudiopayload);
|
||||
/* tell rtpbaseaudiopayload that this is a frame based codec */
|
||||
gst_rtp_base_audio_payload_set_frame_based (rtpbaseaudiopayload);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_bv_pay_sink_setcaps (GstBaseRTPPayload * basertppayload, GstCaps * caps)
|
||||
gst_rtp_bv_pay_sink_setcaps (GstRTPBasePayload * rtpbasepayload, GstCaps * caps)
|
||||
{
|
||||
GstRTPBVPay *rtpbvpay;
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
gint mode;
|
||||
GstStructure *structure;
|
||||
const char *payload_name;
|
||||
|
||||
rtpbvpay = GST_RTP_BV_PAY (basertppayload);
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (basertppayload);
|
||||
rtpbvpay = GST_RTP_BV_PAY (rtpbasepayload);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (rtpbasepayload);
|
||||
|
||||
structure = gst_caps_get_structure (caps, 0);
|
||||
|
||||
|
@ -125,17 +125,17 @@ gst_rtp_bv_pay_sink_setcaps (GstBaseRTPPayload * basertppayload, GstCaps * caps)
|
|||
goto wrong_mode;
|
||||
|
||||
if (mode == 16) {
|
||||
gst_base_rtp_payload_set_options (basertppayload, "audio", TRUE, "BV16",
|
||||
gst_rtp_base_payload_set_options (rtpbasepayload, "audio", TRUE, "BV16",
|
||||
8000);
|
||||
basertppayload->clock_rate = 8000;
|
||||
rtpbasepayload->clock_rate = 8000;
|
||||
} else {
|
||||
gst_base_rtp_payload_set_options (basertppayload, "audio", TRUE, "BV32",
|
||||
gst_rtp_base_payload_set_options (rtpbasepayload, "audio", TRUE, "BV32",
|
||||
16000);
|
||||
basertppayload->clock_rate = 16000;
|
||||
rtpbasepayload->clock_rate = 16000;
|
||||
}
|
||||
|
||||
/* set options for this frame based audio codec */
|
||||
gst_base_rtp_audio_payload_set_frame_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_frame_options (rtpbaseaudiopayload,
|
||||
mode, mode == 16 ? 10 : 20);
|
||||
|
||||
if (mode != rtpbvpay->mode && rtpbvpay->mode != -1)
|
||||
|
@ -173,7 +173,7 @@ mode_changed:
|
|||
/* we return the padtemplate caps with the mode field fixated to a value if we
|
||||
* can */
|
||||
static GstCaps *
|
||||
gst_rtp_bv_pay_sink_getcaps (GstBaseRTPPayload * rtppayload, GstPad * pad,
|
||||
gst_rtp_bv_pay_sink_getcaps (GstRTPBasePayload * rtppayload, GstPad * pad,
|
||||
GstCaps * filter)
|
||||
{
|
||||
GstCaps *otherpadcaps;
|
||||
|
|
|
@ -41,14 +41,14 @@ typedef struct _GstRTPBVPayClass GstRTPBVPayClass;
|
|||
|
||||
struct _GstRTPBVPay
|
||||
{
|
||||
GstBaseRTPAudioPayload audiopayload;
|
||||
GstRTPBaseAudioPayload audiopayload;
|
||||
|
||||
gint mode;
|
||||
};
|
||||
|
||||
struct _GstRTPBVPayClass
|
||||
{
|
||||
GstBaseRTPAudioPayloadClass parent_class;
|
||||
GstRTPBaseAudioPayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_bv_pay_get_type (void);
|
||||
|
|
|
@ -65,26 +65,26 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
GST_STATIC_CAPS ("audio/x-celt")
|
||||
);
|
||||
|
||||
static GstBuffer *gst_rtp_celt_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_celt_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
static gboolean gst_rtp_celt_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_celt_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_celt_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpCELTDepay, gst_rtp_celt_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_celt_depay_class_init (GstRtpCELTDepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpceltdepay_debug, "rtpceltdepay", 0,
|
||||
"CELT RTP Depayloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_celt_depay_src_template));
|
||||
|
@ -96,8 +96,8 @@ gst_rtp_celt_depay_class_init (GstRtpCELTDepayClass * klass)
|
|||
"Extracts CELT audio from RTP packets",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_celt_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_celt_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_celt_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_celt_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -113,7 +113,7 @@ static const gchar gst_rtp_celt_comment[] =
|
|||
"\045\0\0\0Depayloaded with GStreamer celtdepay\0\0\0\0";
|
||||
|
||||
static gboolean
|
||||
gst_rtp_celt_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_celt_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstRtpCELTDepay *rtpceltdepay;
|
||||
|
@ -175,12 +175,12 @@ gst_rtp_celt_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
res = gst_pad_set_caps (depayload->srcpad, srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtpceltdepay), buf);
|
||||
gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtpceltdepay), buf);
|
||||
|
||||
buf = gst_buffer_new_and_alloc (sizeof (gst_rtp_celt_comment));
|
||||
gst_buffer_fill (buf, 0, gst_rtp_celt_comment, sizeof (gst_rtp_celt_comment));
|
||||
|
||||
gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtpceltdepay), buf);
|
||||
gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtpceltdepay), buf);
|
||||
|
||||
return res;
|
||||
|
||||
|
@ -193,7 +193,7 @@ no_clockrate:
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_celt_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_celt_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstBuffer *outbuf = NULL;
|
||||
guint8 *payload;
|
||||
|
@ -261,7 +261,7 @@ gst_rtp_celt_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
|||
GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (outbuf)),
|
||||
GST_TIME_ARGS (GST_BUFFER_DURATION (outbuf)));
|
||||
|
||||
gst_base_rtp_depayload_push (depayload, outbuf);
|
||||
gst_rtp_base_depayload_push (depayload, outbuf);
|
||||
}
|
||||
gst_rtp_buffer_unmap (&rtp);
|
||||
|
||||
|
|
|
@ -36,13 +36,13 @@ typedef struct _GstRtpCELTDepayClass GstRtpCELTDepayClass;
|
|||
|
||||
struct _GstRtpCELTDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
gint frame_size;
|
||||
};
|
||||
|
||||
struct _GstRtpCELTDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_celt_depay_get_type (void);
|
||||
|
|
|
@ -55,29 +55,29 @@ static void gst_rtp_celt_pay_finalize (GObject * object);
|
|||
static GstStateChangeReturn gst_rtp_celt_pay_change_state (GstElement *
|
||||
element, GstStateChange transition);
|
||||
|
||||
static gboolean gst_rtp_celt_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_celt_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstCaps *gst_rtp_celt_pay_getcaps (GstBaseRTPPayload * payload,
|
||||
static GstCaps *gst_rtp_celt_pay_getcaps (GstRTPBasePayload * payload,
|
||||
GstPad * pad, GstCaps * filter);
|
||||
static GstFlowReturn gst_rtp_celt_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_celt_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_celt_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpCELTPay, gst_rtp_celt_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpCELTPay, gst_rtp_celt_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_celt_pay_class_init (GstRtpCELTPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpceltpay_debug, "rtpceltpay", 0,
|
||||
"CELT RTP Payloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_celt_pay_finalize;
|
||||
|
||||
|
@ -93,9 +93,9 @@ gst_rtp_celt_pay_class_init (GstRtpCELTPayClass * klass)
|
|||
"Payload-encodes CELT audio into a RTP packet",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_celt_pay_setcaps;
|
||||
gstbasertppayload_class->get_caps = gst_rtp_celt_pay_getcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_celt_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_celt_pay_setcaps;
|
||||
gstrtpbasepayload_class->get_caps = gst_rtp_celt_pay_getcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_celt_pay_handle_buffer;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -149,7 +149,7 @@ gst_rtp_celt_pay_add_queued (GstRtpCELTPay * rtpceltpay, GstBuffer * buffer,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_celt_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_celt_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
/* don't configure yet, we wait for the ident packet */
|
||||
return TRUE;
|
||||
|
@ -157,7 +157,7 @@ gst_rtp_celt_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
|
||||
|
||||
static GstCaps *
|
||||
gst_rtp_celt_pay_getcaps (GstBaseRTPPayload * payload, GstPad * pad,
|
||||
gst_rtp_celt_pay_getcaps (GstRTPBasePayload * payload, GstPad * pad,
|
||||
GstCaps * filter)
|
||||
{
|
||||
GstCaps *otherpadcaps;
|
||||
|
@ -202,7 +202,7 @@ gst_rtp_celt_pay_parse_ident (GstRtpCELTPay * rtpceltpay,
|
|||
{
|
||||
guint32 version, header_size, rate, nb_channels, frame_size, overlap;
|
||||
guint32 bytes_per_packet;
|
||||
GstBaseRTPPayload *payload;
|
||||
GstRTPBasePayload *payload;
|
||||
gchar *cstr, *fsstr;
|
||||
gboolean res;
|
||||
|
||||
|
@ -249,12 +249,12 @@ gst_rtp_celt_pay_parse_ident (GstRtpCELTPay * rtpceltpay,
|
|||
GST_DEBUG_OBJECT (rtpceltpay, "overlap %d, bytes_per_packet %d",
|
||||
overlap, bytes_per_packet);
|
||||
|
||||
payload = GST_BASE_RTP_PAYLOAD (rtpceltpay);
|
||||
payload = GST_RTP_BASE_PAYLOAD (rtpceltpay);
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "audio", FALSE, "CELT", rate);
|
||||
gst_rtp_base_payload_set_options (payload, "audio", FALSE, "CELT", rate);
|
||||
cstr = g_strdup_printf ("%d", nb_channels);
|
||||
fsstr = g_strdup_printf ("%d", frame_size);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, "encoding-params",
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, "encoding-params",
|
||||
G_TYPE_STRING, cstr, "frame-size", G_TYPE_STRING, fsstr, NULL);
|
||||
g_free (cstr);
|
||||
g_free (fsstr);
|
||||
|
@ -354,13 +354,13 @@ gst_rtp_celt_pay_flush_queued (GstRtpCELTPay * rtpceltpay)
|
|||
rtpceltpay->sbytes = 0;
|
||||
rtpceltpay->qduration = 0;
|
||||
|
||||
ret = gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtpceltpay), outbuf);
|
||||
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpceltpay), outbuf);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_celt_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_celt_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstFlowReturn ret;
|
||||
|
@ -415,7 +415,7 @@ gst_rtp_celt_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
packet_len = gst_rtp_buffer_calc_packet_len (payload_len, 0, 0);
|
||||
|
||||
if (gst_base_rtp_payload_is_filled (basepayload, packet_len, packet_dur)) {
|
||||
if (gst_rtp_base_payload_is_filled (basepayload, packet_len, packet_dur)) {
|
||||
/* size or duration would overflow the packet, flush the queued data */
|
||||
ret = gst_rtp_celt_pay_flush_queued (rtpceltpay);
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ typedef struct _GstRtpCELTPayClass GstRtpCELTPayClass;
|
|||
|
||||
struct _GstRtpCELTPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
guint64 packet;
|
||||
|
||||
|
@ -50,7 +50,7 @@ struct _GstRtpCELTPay
|
|||
|
||||
struct _GstRtpCELTPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_celt_pay_get_type (void);
|
||||
|
|
|
@ -75,21 +75,21 @@ static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
static GstStateChangeReturn
|
||||
gst_rtp_dv_depay_change_state (GstElement * element, GstStateChange transition);
|
||||
|
||||
static GstBuffer *gst_rtp_dv_depay_process (GstBaseRTPDepayload * base,
|
||||
static GstBuffer *gst_rtp_dv_depay_process (GstRTPBaseDepayload * base,
|
||||
GstBuffer * in);
|
||||
static gboolean gst_rtp_dv_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_dv_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_dv_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPDVDepay, gst_rtp_dv_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPDVDepay, gst_rtp_dv_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
|
||||
static void
|
||||
gst_rtp_dv_depay_class_init (GstRTPDVDepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class = (GstElementClass *) klass;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class =
|
||||
(GstBaseRTPDepayloadClass *) klass;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class =
|
||||
(GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpdvdepay_debug, "rtpdvdepay", 0,
|
||||
"DV RTP Depayloader");
|
||||
|
@ -107,9 +107,9 @@ gst_rtp_dv_depay_class_init (GstRTPDVDepayClass * klass)
|
|||
"Depayloads DV from RTP packets (RFC 3189)",
|
||||
"Marcel Moreaux <marcelm@spacelabs.nl>, Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->process =
|
||||
gstrtpbasedepayload_class->process =
|
||||
GST_DEBUG_FUNCPTR (gst_rtp_dv_depay_process);
|
||||
gstbasertpdepayload_class->set_caps =
|
||||
gstrtpbasedepayload_class->set_caps =
|
||||
GST_DEBUG_FUNCPTR (gst_rtp_dv_depay_setcaps);
|
||||
}
|
||||
|
||||
|
@ -159,7 +159,7 @@ parse_encode (GstRTPDVDepay * rtpdvdepay, const gchar * encode)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_dv_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_dv_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstRTPDVDepay *rtpdvdepay;
|
||||
|
@ -291,7 +291,7 @@ calculate_difblock_location (guint8 * block)
|
|||
* NTSC.
|
||||
*/
|
||||
static GstBuffer *
|
||||
gst_rtp_dv_depay_process (GstBaseRTPDepayload * base, GstBuffer * in)
|
||||
gst_rtp_dv_depay_process (GstRTPBaseDepayload * base, GstBuffer * in)
|
||||
{
|
||||
GstBuffer *out = NULL;
|
||||
guint8 *payload;
|
||||
|
|
|
@ -41,7 +41,7 @@ typedef struct _GstRTPDVDepayClass GstRTPDVDepayClass;
|
|||
|
||||
struct _GstRTPDVDepay
|
||||
{
|
||||
GstBaseRTPDepayload parent;
|
||||
GstRTPBaseDepayload parent;
|
||||
|
||||
GstBuffer *acc;
|
||||
guint frame_size;
|
||||
|
@ -54,7 +54,7 @@ struct _GstRTPDVDepay
|
|||
|
||||
struct _GstRTPDVDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_dv_depay_get_type (void);
|
||||
|
|
|
@ -65,9 +65,9 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
)
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_dv_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_dv_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_dv_pay_handle_buffer (GstBaseRTPPayload * payload,
|
||||
static GstFlowReturn gst_rtp_dv_pay_handle_buffer (GstRTPBasePayload * payload,
|
||||
GstBuffer * buffer);
|
||||
|
||||
#define GST_TYPE_DV_PAY_MODE (gst_dv_pay_mode_get_type())
|
||||
|
@ -95,20 +95,20 @@ static void gst_dv_pay_get_property (GObject * object,
|
|||
guint prop_id, GValue * value, GParamSpec * pspec);
|
||||
|
||||
#define gst_rtp_dv_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPDVPay, gst_rtp_dv_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPDVPay, gst_rtp_dv_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_dv_pay_class_init (GstRTPDVPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpdvpay_debug, "rtpdvpay", 0, "DV RTP Payloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_dv_pay_set_property;
|
||||
gobject_class->get_property = gst_dv_pay_get_property;
|
||||
|
@ -129,8 +129,8 @@ gst_rtp_dv_pay_class_init (GstRTPDVPayClass * klass)
|
|||
"Payloads DV into RTP packets (RFC 3189)",
|
||||
"Marcel Moreaux <marcelm@spacelabs.nl>, Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_dv_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_dv_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_dv_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_dv_pay_handle_buffer;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -171,7 +171,7 @@ gst_dv_pay_get_property (GObject * object,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_dv_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_dv_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
/* We don't do anything here, but we could check if it's a system stream and if
|
||||
* it's not, default to sending the video only. We will negotiate downstream
|
||||
|
@ -221,15 +221,15 @@ gst_dv_pay_negotiate (GstRTPDVPay * rtpdvpay, guint8 * data, gsize size)
|
|||
default:
|
||||
break;
|
||||
}
|
||||
gst_base_rtp_payload_set_options (GST_BASE_RTP_PAYLOAD (rtpdvpay), media,
|
||||
gst_rtp_base_payload_set_options (GST_RTP_BASE_PAYLOAD (rtpdvpay), media,
|
||||
TRUE, "DV", 90000);
|
||||
|
||||
if (audio_bundled) {
|
||||
res = gst_base_rtp_payload_set_outcaps (GST_BASE_RTP_PAYLOAD (rtpdvpay),
|
||||
res = gst_rtp_base_payload_set_outcaps (GST_RTP_BASE_PAYLOAD (rtpdvpay),
|
||||
"encode", G_TYPE_STRING, encode,
|
||||
"audio", G_TYPE_STRING, "bundled", NULL);
|
||||
} else {
|
||||
res = gst_base_rtp_payload_set_outcaps (GST_BASE_RTP_PAYLOAD (rtpdvpay),
|
||||
res = gst_rtp_base_payload_set_outcaps (GST_RTP_BASE_PAYLOAD (rtpdvpay),
|
||||
"encode", G_TYPE_STRING, encode, NULL);
|
||||
}
|
||||
return res;
|
||||
|
@ -274,7 +274,7 @@ include_dif (GstRTPDVPay * rtpdvpay, guint8 * data)
|
|||
/* Get a DV frame, chop it up in pieces, and push the pieces to the RTP layer.
|
||||
*/
|
||||
static GstFlowReturn
|
||||
gst_rtp_dv_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_dv_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRTPDVPay *rtpdvpay;
|
||||
|
@ -296,7 +296,7 @@ gst_rtp_dv_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
* Therefore, we round the available room down to the nearest multiple of 80.
|
||||
*
|
||||
* The available room is just the packet MTU, minus the RTP header length. */
|
||||
max_payload_size = ((GST_BASE_RTP_PAYLOAD_MTU (rtpdvpay) - hdrlen) / 80) * 80;
|
||||
max_payload_size = ((GST_RTP_BASE_PAYLOAD_MTU (rtpdvpay) - hdrlen) / 80) * 80;
|
||||
|
||||
/* The length of the buffer to transmit. */
|
||||
data = gst_buffer_map (buffer, &size, NULL, GST_MAP_READ);
|
||||
|
@ -360,7 +360,7 @@ gst_rtp_dv_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
/* Push out the created piece, and check for errors. */
|
||||
gst_rtp_buffer_unmap (&rtp);
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
if (ret != GST_FLOW_OK)
|
||||
break;
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ typedef enum
|
|||
|
||||
struct _GstRTPDVPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
gboolean negotiated;
|
||||
GstDVPayMode mode;
|
||||
|
@ -57,7 +57,7 @@ struct _GstRTPDVPay
|
|||
|
||||
struct _GstRTPDVPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_dv_pay_get_type (void);
|
||||
|
|
|
@ -64,24 +64,24 @@ static GstStaticPadTemplate gst_rtp_g722_depay_sink_template =
|
|||
|
||||
#define gst_rtp_g722_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpG722Depay, gst_rtp_g722_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static gboolean gst_rtp_g722_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_g722_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_g722_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_g722_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
gst_rtp_g722_depay_class_init (GstRtpG722DepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpg722depay_debug, "rtpg722depay", 0,
|
||||
"G722 RTP Depayloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_g722_depay_src_template));
|
||||
|
@ -93,8 +93,8 @@ gst_rtp_g722_depay_class_init (GstRtpG722DepayClass * klass)
|
|||
"Extracts G722 audio from RTP packets",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_g722_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_g722_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_g722_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_g722_depay_process;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -119,7 +119,7 @@ gst_rtp_g722_depay_parse_int (GstStructure * structure, const gchar * field,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g722_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_g722_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstRtpG722Depay *rtpg722depay;
|
||||
|
@ -212,7 +212,7 @@ no_clockrate:
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_g722_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_g722_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpG722Depay *rtpg722depay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -43,7 +43,7 @@ typedef struct _GstRtpG722DepayClass GstRtpG722DepayClass;
|
|||
/* Definition of structure storing data for this element. */
|
||||
struct _GstRtpG722Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
guint rate;
|
||||
guint channels;
|
||||
|
@ -52,7 +52,7 @@ struct _GstRtpG722Depay
|
|||
/* Standard definition defining a class for this element. */
|
||||
struct _GstRtpG722DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g722_depay_get_type (void);
|
||||
|
|
|
@ -51,26 +51,26 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
"clock-rate = (int) 8000")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_g722_pay_setcaps (GstBaseRTPPayload * basepayload,
|
||||
static gboolean gst_rtp_g722_pay_setcaps (GstRTPBasePayload * basepayload,
|
||||
GstCaps * caps);
|
||||
static GstCaps *gst_rtp_g722_pay_getcaps (GstBaseRTPPayload * rtppayload,
|
||||
static GstCaps *gst_rtp_g722_pay_getcaps (GstRTPBasePayload * rtppayload,
|
||||
GstPad * pad, GstCaps * filter);
|
||||
|
||||
#define gst_rtp_g722_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpG722Pay, gst_rtp_g722_pay,
|
||||
GST_TYPE_BASE_RTP_AUDIO_PAYLOAD);
|
||||
GST_TYPE_RTP_BASE_AUDIO_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_g722_pay_class_init (GstRtpG722PayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpg722pay_debug, "rtpg722pay", 0,
|
||||
"G722 RTP Payloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_g722_pay_src_template));
|
||||
|
@ -82,23 +82,23 @@ gst_rtp_g722_pay_class_init (GstRtpG722PayClass * klass)
|
|||
"Payload-encode Raw audio into RTP packets (RFC 3551)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_g722_pay_setcaps;
|
||||
gstbasertppayload_class->get_caps = gst_rtp_g722_pay_getcaps;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_g722_pay_setcaps;
|
||||
gstrtpbasepayload_class->get_caps = gst_rtp_g722_pay_getcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_rtp_g722_pay_init (GstRtpG722Pay * rtpg722pay)
|
||||
{
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (rtpg722pay);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (rtpg722pay);
|
||||
|
||||
/* tell basertpaudiopayload that this is a sample based codec */
|
||||
gst_base_rtp_audio_payload_set_sample_based (basertpaudiopayload);
|
||||
/* tell rtpbaseaudiopayload that this is a sample based codec */
|
||||
gst_rtp_base_audio_payload_set_sample_based (rtpbaseaudiopayload);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g722_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
||||
gst_rtp_g722_pay_setcaps (GstRTPBasePayload * basepayload, GstCaps * caps)
|
||||
{
|
||||
GstRtpG722Pay *rtpg722pay;
|
||||
GstStructure *structure;
|
||||
|
@ -107,9 +107,9 @@ gst_rtp_g722_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
gchar *params;
|
||||
GstAudioChannelPosition *pos;
|
||||
const GstRTPChannelOrder *order;
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (basepayload);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (basepayload);
|
||||
rtpg722pay = GST_RTP_G722_PAY (basepayload);
|
||||
|
||||
structure = gst_caps_get_structure (caps, 0);
|
||||
|
@ -132,7 +132,7 @@ gst_rtp_g722_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
* RFC 3551 although the sampling rate is 16000 Hz */
|
||||
clock_rate = 8000;
|
||||
|
||||
gst_base_rtp_payload_set_options (basepayload, "audio", TRUE, "G722",
|
||||
gst_rtp_base_payload_set_options (basepayload, "audio", TRUE, "G722",
|
||||
clock_rate);
|
||||
params = g_strdup_printf ("%d", channels);
|
||||
|
||||
|
@ -142,11 +142,11 @@ gst_rtp_g722_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
if (order && order->name) {
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload,
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload,
|
||||
"encoding-params", G_TYPE_STRING, params, "channels", G_TYPE_INT,
|
||||
channels, "channel-order", G_TYPE_STRING, order->name, NULL);
|
||||
} else {
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload,
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload,
|
||||
"encoding-params", G_TYPE_STRING, params, "channels", G_TYPE_INT,
|
||||
channels, NULL);
|
||||
}
|
||||
|
@ -160,7 +160,7 @@ gst_rtp_g722_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
/* bits-per-sample is 4 * channels for G722, but as the RTP clock runs at
|
||||
* half speed (8 instead of 16 khz), pretend it's 8 bits per sample
|
||||
* channels. */
|
||||
gst_base_rtp_audio_payload_set_samplebits_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_samplebits_options (rtpbaseaudiopayload,
|
||||
8 * rtpg722pay->channels);
|
||||
|
||||
return res;
|
||||
|
@ -179,7 +179,7 @@ no_channels:
|
|||
}
|
||||
|
||||
static GstCaps *
|
||||
gst_rtp_g722_pay_getcaps (GstBaseRTPPayload * rtppayload, GstPad * pad,
|
||||
gst_rtp_g722_pay_getcaps (GstRTPBasePayload * rtppayload, GstPad * pad,
|
||||
GstCaps * filter)
|
||||
{
|
||||
GstCaps *otherpadcaps;
|
||||
|
|
|
@ -41,7 +41,7 @@ typedef struct _GstRtpG722PayClass GstRtpG722PayClass;
|
|||
|
||||
struct _GstRtpG722Pay
|
||||
{
|
||||
GstBaseRTPAudioPayload payload;
|
||||
GstRTPBaseAudioPayload payload;
|
||||
|
||||
gint rate;
|
||||
gint channels;
|
||||
|
@ -49,7 +49,7 @@ struct _GstRtpG722Pay
|
|||
|
||||
struct _GstRtpG722PayClass
|
||||
{
|
||||
GstBaseRTPAudioPayloadClass parent_class;
|
||||
GstRTPBaseAudioPayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g722_pay_get_type (void);
|
||||
|
|
|
@ -73,26 +73,26 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
GST_STATIC_CAPS ("audio/G723, " "channels = (int) 1," "rate = (int) 8000")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_g723_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_g723_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_g723_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_g723_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
#define gst_rtp_g723_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpG723Depay, gst_rtp_g723_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_g723_depay_class_init (GstRtpG723DepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpg723depay_debug, "rtpg723depay", 0,
|
||||
"G.723 RTP Depayloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_g723_depay_src_template));
|
||||
|
@ -104,22 +104,22 @@ gst_rtp_g723_depay_class_init (GstRtpG723DepayClass * klass)
|
|||
"Extracts G.723 audio from RTP packets (RFC 3551)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_g723_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_g723_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_g723_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_g723_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_rtp_g723_depay_init (GstRtpG723Depay * rtpg723depay)
|
||||
{
|
||||
GstBaseRTPDepayload *depayload;
|
||||
GstRTPBaseDepayload *depayload;
|
||||
|
||||
depayload = GST_BASE_RTP_DEPAYLOAD (rtpg723depay);
|
||||
depayload = GST_RTP_BASE_DEPAYLOAD (rtpg723depay);
|
||||
|
||||
gst_pad_use_fixed_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload));
|
||||
gst_pad_use_fixed_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload));
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g723_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_g723_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstCaps *srccaps;
|
||||
|
@ -151,7 +151,7 @@ gst_rtp_g723_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
|
||||
srccaps = gst_caps_new_simple ("audio/G723",
|
||||
"channels", G_TYPE_INT, channels, "rate", G_TYPE_INT, clock_rate, NULL);
|
||||
ret = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
ret = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return ret;
|
||||
|
@ -172,7 +172,7 @@ wrong_clock_rate:
|
|||
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_g723_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_g723_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpG723Depay *rtpg723depay;
|
||||
GstBuffer *outbuf = NULL;
|
||||
|
|
|
@ -42,12 +42,12 @@ typedef struct _GstRtpG723DepayClass GstRtpG723DepayClass;
|
|||
|
||||
struct _GstRtpG723Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
};
|
||||
|
||||
struct _GstRtpG723DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g723_depay_get_type (void);
|
||||
|
|
|
@ -34,9 +34,9 @@
|
|||
|
||||
#define G723_FRAME_DURATION (30 * GST_MSECOND)
|
||||
|
||||
static gboolean gst_rtp_g723_pay_set_caps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_g723_pay_set_caps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_g723_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_g723_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buf);
|
||||
|
||||
static GstStaticPadTemplate gst_rtp_g723_pay_sink_template =
|
||||
|
@ -68,18 +68,18 @@ static GstStateChangeReturn gst_rtp_g723_pay_change_state (GstElement * element,
|
|||
GstStateChange transition);
|
||||
|
||||
#define gst_rtp_g723_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPG723Pay, gst_rtp_g723_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPG723Pay, gst_rtp_g723_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_g723_pay_class_init (GstRTPG723PayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *payload_class;
|
||||
GstRTPBasePayloadClass *payload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
payload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
payload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_g723_pay_finalize;
|
||||
|
||||
|
@ -102,12 +102,12 @@ gst_rtp_g723_pay_class_init (GstRTPG723PayClass * klass)
|
|||
static void
|
||||
gst_rtp_g723_pay_init (GstRTPG723Pay * pay)
|
||||
{
|
||||
GstBaseRTPPayload *payload = GST_BASE_RTP_PAYLOAD (pay);
|
||||
GstRTPBasePayload *payload = GST_RTP_BASE_PAYLOAD (pay);
|
||||
|
||||
pay->adapter = gst_adapter_new ();
|
||||
|
||||
payload->pt = GST_RTP_PAYLOAD_G723;
|
||||
gst_base_rtp_payload_set_options (payload, "audio", FALSE, "G723", 8000);
|
||||
gst_rtp_base_payload_set_options (payload, "audio", FALSE, "G723", 8000);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -125,7 +125,7 @@ gst_rtp_g723_pay_finalize (GObject * object)
|
|||
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g723_pay_set_caps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_g723_pay_set_caps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
GstStructure *structure;
|
||||
|
@ -138,7 +138,7 @@ gst_rtp_g723_pay_set_caps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
payload->pt = pt;
|
||||
payload->dynamic = pt != GST_RTP_PAYLOAD_G723;
|
||||
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
@ -178,7 +178,7 @@ gst_rtp_g723_pay_flush (GstRTPG723Pay * pay)
|
|||
}
|
||||
gst_rtp_buffer_unmap (&rtp);
|
||||
|
||||
ret = gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (pay), outbuf);
|
||||
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (pay), outbuf);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -192,7 +192,7 @@ static const guint size_tab[4] = {
|
|||
};
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_g723_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buf)
|
||||
gst_rtp_g723_pay_handle_buffer (GstRTPBasePayload * payload, GstBuffer * buf)
|
||||
{
|
||||
GstFlowReturn ret = GST_FLOW_OK;
|
||||
guint8 *data;
|
||||
|
@ -229,7 +229,7 @@ gst_rtp_g723_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buf)
|
|||
packet_dur = pay->duration + G723_FRAME_DURATION;
|
||||
packet_len = gst_rtp_buffer_calc_packet_len (payload_len, 0, 0);
|
||||
|
||||
if (gst_base_rtp_payload_is_filled (payload, packet_len, packet_dur)) {
|
||||
if (gst_rtp_base_payload_is_filled (payload, packet_len, packet_dur)) {
|
||||
/* size or duration would overflow the packet, flush the queued data */
|
||||
ret = gst_rtp_g723_pay_flush (pay);
|
||||
}
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRTPG723PayClass GstRTPG723PayClass;
|
|||
|
||||
struct _GstRTPG723Pay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime duration;
|
||||
|
@ -52,7 +52,7 @@ struct _GstRTPG723Pay
|
|||
|
||||
struct _GstRTPG723PayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g723_pay_get_type (void);
|
||||
|
|
|
@ -82,28 +82,28 @@ static void gst_rtp_g726_depay_get_property (GObject * object, guint prop_id,
|
|||
static void gst_rtp_g726_depay_set_property (GObject * object, guint prop_id,
|
||||
const GValue * value, GParamSpec * pspec);
|
||||
|
||||
static GstBuffer *gst_rtp_g726_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_g726_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
static gboolean gst_rtp_g726_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_g726_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_g726_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpG726Depay, gst_rtp_g726_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_g726_depay_class_init (GstRtpG726DepayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpg726depay_debug, "rtpg726depay", 0,
|
||||
"G.726 RTP Depayloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_rtp_g726_depay_set_property;
|
||||
gobject_class->get_property = gst_rtp_g726_depay_get_property;
|
||||
|
@ -123,24 +123,24 @@ gst_rtp_g726_depay_class_init (GstRtpG726DepayClass * klass)
|
|||
"Extracts G.726 audio from RTP packets",
|
||||
"Axis Communications <dev-gstreamer@axis.com>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_g726_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_g726_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_g726_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_g726_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_rtp_g726_depay_init (GstRtpG726Depay * rtpG726depay)
|
||||
{
|
||||
GstBaseRTPDepayload *depayload;
|
||||
GstRTPBaseDepayload *depayload;
|
||||
|
||||
depayload = GST_BASE_RTP_DEPAYLOAD (rtpG726depay);
|
||||
depayload = GST_RTP_BASE_DEPAYLOAD (rtpG726depay);
|
||||
|
||||
gst_pad_use_fixed_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload));
|
||||
gst_pad_use_fixed_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload));
|
||||
|
||||
rtpG726depay->force_aal2 = DEFAULT_FORCE_AAL2;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g726_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_g726_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstCaps *srccaps;
|
||||
GstStructure *structure;
|
||||
|
@ -186,7 +186,7 @@ gst_rtp_g726_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
"bitrate", G_TYPE_INT, depay->bitrate,
|
||||
"layout", G_TYPE_STRING, LAYOUT_G726, NULL);
|
||||
|
||||
ret = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
ret = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return ret;
|
||||
|
@ -202,7 +202,7 @@ unknown_encoding:
|
|||
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_g726_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_g726_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpG726Depay *depay;
|
||||
GstBuffer *outbuf = NULL;
|
||||
|
|
|
@ -37,7 +37,7 @@ typedef struct _GstRtpG726DepayClass GstRtpG726DepayClass;
|
|||
|
||||
struct _GstRtpG726Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
gboolean aal2;
|
||||
gboolean force_aal2;
|
||||
|
@ -46,7 +46,7 @@ struct _GstRtpG726Depay
|
|||
|
||||
struct _GstRtpG726DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g726_depay_get_type (void);
|
||||
|
|
|
@ -70,25 +70,25 @@ static void gst_rtp_g726_pay_get_property (GObject * object, guint prop_id,
|
|||
static void gst_rtp_g726_pay_set_property (GObject * object, guint prop_id,
|
||||
const GValue * value, GParamSpec * pspec);
|
||||
|
||||
static gboolean gst_rtp_g726_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_g726_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_g726_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_g726_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_g726_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpG726Pay, gst_rtp_g726_pay,
|
||||
GST_TYPE_BASE_RTP_AUDIO_PAYLOAD);
|
||||
GST_TYPE_RTP_BASE_AUDIO_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_g726_pay_class_init (GstRtpG726PayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_rtp_g726_pay_set_property;
|
||||
gobject_class->get_property = gst_rtp_g726_pay_get_property;
|
||||
|
@ -108,8 +108,8 @@ gst_rtp_g726_pay_class_init (GstRtpG726PayClass * klass)
|
|||
"Payload-encodes G.726 audio into a RTP packet",
|
||||
"Axis Communications <dev-gstreamer@axis.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_g726_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_g726_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_g726_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_g726_pay_handle_buffer;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpg726pay_debug, "rtpg726pay", 0,
|
||||
"G.726 RTP Payloader");
|
||||
|
@ -118,29 +118,29 @@ gst_rtp_g726_pay_class_init (GstRtpG726PayClass * klass)
|
|||
static void
|
||||
gst_rtp_g726_pay_init (GstRtpG726Pay * rtpg726pay)
|
||||
{
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (rtpg726pay);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (rtpg726pay);
|
||||
|
||||
GST_BASE_RTP_PAYLOAD (rtpg726pay)->clock_rate = 8000;
|
||||
GST_RTP_BASE_PAYLOAD (rtpg726pay)->clock_rate = 8000;
|
||||
|
||||
rtpg726pay->force_aal2 = DEFAULT_FORCE_AAL2;
|
||||
|
||||
/* sample based codec */
|
||||
gst_base_rtp_audio_payload_set_sample_based (basertpaudiopayload);
|
||||
gst_rtp_base_audio_payload_set_sample_based (rtpbaseaudiopayload);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g726_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_g726_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gchar *encoding_name;
|
||||
GstStructure *structure;
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
GstRtpG726Pay *pay;
|
||||
GstCaps *peercaps;
|
||||
gboolean res;
|
||||
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (payload);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (payload);
|
||||
pay = GST_RTP_G726_PAY (payload);
|
||||
|
||||
structure = gst_caps_get_structure (caps, 0);
|
||||
|
@ -156,22 +156,22 @@ gst_rtp_g726_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
switch (pay->bitrate) {
|
||||
case 16000:
|
||||
encoding_name = g_strdup ("G726-16");
|
||||
gst_base_rtp_audio_payload_set_samplebits_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_samplebits_options (rtpbaseaudiopayload,
|
||||
2);
|
||||
break;
|
||||
case 24000:
|
||||
encoding_name = g_strdup ("G726-24");
|
||||
gst_base_rtp_audio_payload_set_samplebits_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_samplebits_options (rtpbaseaudiopayload,
|
||||
3);
|
||||
break;
|
||||
case 32000:
|
||||
encoding_name = g_strdup ("G726-32");
|
||||
gst_base_rtp_audio_payload_set_samplebits_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_samplebits_options (rtpbaseaudiopayload,
|
||||
4);
|
||||
break;
|
||||
case 40000:
|
||||
encoding_name = g_strdup ("G726-40");
|
||||
gst_base_rtp_audio_payload_set_samplebits_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_samplebits_options (rtpbaseaudiopayload,
|
||||
5);
|
||||
break;
|
||||
default:
|
||||
|
@ -237,9 +237,9 @@ gst_rtp_g726_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
GST_DEBUG_OBJECT (payload, "no peer caps, AAL2 %d", pay->aal2);
|
||||
}
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "audio", TRUE, encoding_name,
|
||||
gst_rtp_base_payload_set_options (payload, "audio", TRUE, encoding_name,
|
||||
8000);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
g_free (encoding_name);
|
||||
|
||||
|
@ -259,7 +259,7 @@ no_format:
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_g726_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buffer)
|
||||
gst_rtp_g726_pay_handle_buffer (GstRTPBasePayload * payload, GstBuffer * buffer)
|
||||
{
|
||||
GstFlowReturn res;
|
||||
GstRtpG726Pay *pay;
|
||||
|
@ -368,7 +368,7 @@ gst_rtp_g726_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buffer)
|
|||
}
|
||||
|
||||
res =
|
||||
GST_BASE_RTP_PAYLOAD_CLASS (parent_class)->handle_buffer (payload,
|
||||
GST_RTP_BASE_PAYLOAD_CLASS (parent_class)->handle_buffer (payload,
|
||||
buffer);
|
||||
|
||||
return res;
|
||||
|
|
|
@ -35,7 +35,7 @@ typedef struct _GstRtpG726PayClass GstRtpG726PayClass;
|
|||
|
||||
struct _GstRtpG726Pay
|
||||
{
|
||||
GstBaseRTPAudioPayload audiopayload;
|
||||
GstRTPBaseAudioPayload audiopayload;
|
||||
|
||||
gboolean aal2;
|
||||
gboolean force_aal2;
|
||||
|
@ -44,7 +44,7 @@ struct _GstRtpG726Pay
|
|||
|
||||
struct _GstRtpG726PayClass
|
||||
{
|
||||
GstBaseRTPAudioPayloadClass parent_class;
|
||||
GstRTPBaseAudioPayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g726_pay_get_type (void);
|
||||
|
|
|
@ -71,26 +71,26 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
GST_STATIC_CAPS ("audio/G729, " "channels = (int) 1," "rate = (int) 8000")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_g729_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_g729_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_g729_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_g729_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
#define gst_rtp_g729_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpG729Depay, gst_rtp_g729_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_g729_depay_class_init (GstRtpG729DepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpg729depay_debug, "rtpg729depay", 0,
|
||||
"G.729 RTP Depayloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_g729_depay_src_template));
|
||||
|
@ -102,22 +102,22 @@ gst_rtp_g729_depay_class_init (GstRtpG729DepayClass * klass)
|
|||
"Extracts G.729 audio from RTP packets (RFC 3551)",
|
||||
"Laurent Glayal <spglegle@yahoo.fr>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_g729_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_g729_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_g729_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_g729_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_rtp_g729_depay_init (GstRtpG729Depay * rtpg729depay)
|
||||
{
|
||||
GstBaseRTPDepayload *depayload;
|
||||
GstRTPBaseDepayload *depayload;
|
||||
|
||||
depayload = GST_BASE_RTP_DEPAYLOAD (rtpg729depay);
|
||||
depayload = GST_RTP_BASE_DEPAYLOAD (rtpg729depay);
|
||||
|
||||
gst_pad_use_fixed_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload));
|
||||
gst_pad_use_fixed_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload));
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g729_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_g729_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstCaps *srccaps;
|
||||
|
@ -149,7 +149,7 @@ gst_rtp_g729_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
|
||||
srccaps = gst_caps_new_simple ("audio/G729",
|
||||
"channels", G_TYPE_INT, channels, "rate", G_TYPE_INT, clock_rate, NULL);
|
||||
ret = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
ret = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return ret;
|
||||
|
@ -169,7 +169,7 @@ wrong_clock_rate:
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_g729_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_g729_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpG729Depay *rtpg729depay;
|
||||
GstBuffer *outbuf = NULL;
|
||||
|
|
|
@ -44,12 +44,12 @@ typedef struct _GstRtpG729DepayClass GstRtpG729DepayClass;
|
|||
|
||||
struct _GstRtpG729Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
};
|
||||
|
||||
struct _GstRtpG729DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g729_depay_get_type (void);
|
||||
|
|
|
@ -44,9 +44,9 @@ GST_DEBUG_CATEGORY_STATIC (rtpg729pay_debug);
|
|||
#define G729_FRAME_DURATION_MS (10)
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g729_pay_set_caps (GstBaseRTPPayload * payload, GstCaps * caps);
|
||||
gst_rtp_g729_pay_set_caps (GstRTPBasePayload * payload, GstCaps * caps);
|
||||
static GstFlowReturn
|
||||
gst_rtp_g729_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buf);
|
||||
gst_rtp_g729_pay_handle_buffer (GstRTPBasePayload * payload, GstBuffer * buf);
|
||||
|
||||
static GstStateChangeReturn
|
||||
gst_rtp_g729_pay_change_state (GstElement * element, GstStateChange transition);
|
||||
|
@ -75,7 +75,7 @@ static GstStaticPadTemplate gst_rtp_g729_pay_src_template =
|
|||
);
|
||||
|
||||
#define gst_rtp_g729_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPG729Pay, gst_rtp_g729_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPG729Pay, gst_rtp_g729_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_g729_pay_finalize (GObject * object)
|
||||
|
@ -92,7 +92,7 @@ gst_rtp_g729_pay_class_init (GstRTPG729PayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class = (GObjectClass *) klass;
|
||||
GstElementClass *gstelement_class = (GstElementClass *) klass;
|
||||
GstBaseRTPPayloadClass *payload_class = GST_BASE_RTP_PAYLOAD_CLASS (klass);
|
||||
GstRTPBasePayloadClass *payload_class = GST_RTP_BASE_PAYLOAD_CLASS (klass);
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpg729pay_debug, "rtpg729pay", 0,
|
||||
"G.729 RTP Payloader");
|
||||
|
@ -118,10 +118,10 @@ gst_rtp_g729_pay_class_init (GstRTPG729PayClass * klass)
|
|||
static void
|
||||
gst_rtp_g729_pay_init (GstRTPG729Pay * pay)
|
||||
{
|
||||
GstBaseRTPPayload *payload = GST_BASE_RTP_PAYLOAD (pay);
|
||||
GstRTPBasePayload *payload = GST_RTP_BASE_PAYLOAD (pay);
|
||||
|
||||
payload->pt = GST_RTP_PAYLOAD_G729;
|
||||
gst_base_rtp_payload_set_options (payload, "audio", FALSE, "G729", 8000);
|
||||
gst_rtp_base_payload_set_options (payload, "audio", FALSE, "G729", 8000);
|
||||
|
||||
pay->adapter = gst_adapter_new ();
|
||||
}
|
||||
|
@ -137,7 +137,7 @@ gst_rtp_g729_pay_reset (GstRTPG729Pay * pay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_g729_pay_set_caps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_g729_pay_set_caps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
GstStructure *structure;
|
||||
|
@ -150,7 +150,7 @@ gst_rtp_g729_pay_set_caps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
payload->pt = pt;
|
||||
payload->dynamic = pt != GST_RTP_PAYLOAD_G729;
|
||||
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
@ -159,7 +159,7 @@ static GstFlowReturn
|
|||
gst_rtp_g729_pay_push (GstRTPG729Pay * rtpg729pay,
|
||||
const guint8 * data, guint payload_len)
|
||||
{
|
||||
GstBaseRTPPayload *basepayload;
|
||||
GstRTPBasePayload *basepayload;
|
||||
GstClockTime duration;
|
||||
guint frames;
|
||||
GstBuffer *outbuf;
|
||||
|
@ -167,7 +167,7 @@ gst_rtp_g729_pay_push (GstRTPG729Pay * rtpg729pay,
|
|||
GstFlowReturn ret;
|
||||
GstRTPBuffer rtp = { NULL };
|
||||
|
||||
basepayload = GST_BASE_RTP_PAYLOAD (rtpg729pay);
|
||||
basepayload = GST_RTP_BASE_PAYLOAD (rtpg729pay);
|
||||
|
||||
GST_DEBUG_OBJECT (rtpg729pay, "Pushing %d bytes ts %" GST_TIME_FORMAT,
|
||||
payload_len, GST_TIME_ARGS (rtpg729pay->next_ts));
|
||||
|
@ -199,7 +199,7 @@ gst_rtp_g729_pay_push (GstRTPG729Pay * rtpg729pay,
|
|||
}
|
||||
gst_rtp_buffer_unmap (&rtp);
|
||||
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -223,7 +223,7 @@ gst_rtp_g729_pay_recalc_rtp_time (GstRTPG729Pay * rtpg729pay, GstClockTime time)
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_g729_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buf)
|
||||
gst_rtp_g729_pay_handle_buffer (GstRTPBasePayload * payload, GstBuffer * buf)
|
||||
{
|
||||
GstFlowReturn ret = GST_FLOW_OK;
|
||||
GstRTPG729Pay *rtpg729pay = GST_RTP_G729_PAY (payload);
|
||||
|
@ -261,7 +261,7 @@ gst_rtp_g729_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buf)
|
|||
|
||||
max_payload_len = MIN (
|
||||
/* MTU max */
|
||||
(int) (gst_rtp_buffer_calc_payload_len (GST_BASE_RTP_PAYLOAD_MTU
|
||||
(int) (gst_rtp_buffer_calc_payload_len (GST_RTP_BASE_PAYLOAD_MTU
|
||||
(payload), 0, 0) / G729_FRAME_SIZE)
|
||||
* G729_FRAME_SIZE,
|
||||
/* ptime max */
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRTPG729PayClass GstRTPG729PayClass;
|
|||
|
||||
struct _GstRTPG729Pay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime next_ts;
|
||||
|
@ -54,7 +54,7 @@ struct _GstRTPG729Pay
|
|||
|
||||
struct _GstRTPG729PayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_g729_pay_get_type (void);
|
||||
|
|
|
@ -57,22 +57,22 @@ static GstStaticPadTemplate gst_rtp_gsm_depay_sink_template =
|
|||
"clock-rate = (int) 8000")
|
||||
);
|
||||
|
||||
static GstBuffer *gst_rtp_gsm_depay_process (GstBaseRTPDepayload * _depayload,
|
||||
static GstBuffer *gst_rtp_gsm_depay_process (GstRTPBaseDepayload * _depayload,
|
||||
GstBuffer * buf);
|
||||
static gboolean gst_rtp_gsm_depay_setcaps (GstBaseRTPDepayload * _depayload,
|
||||
static gboolean gst_rtp_gsm_depay_setcaps (GstRTPBaseDepayload * _depayload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_gsm_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPGSMDepay, gst_rtp_gsm_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPGSMDepay, gst_rtp_gsm_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_gsm_depay_class_init (GstRTPGSMDepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertp_depayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbase_depayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertp_depayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbase_depayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_gsm_depay_src_template));
|
||||
|
@ -83,8 +83,8 @@ gst_rtp_gsm_depay_class_init (GstRTPGSMDepayClass * klass)
|
|||
"Codec/Depayloader/Network/RTP",
|
||||
"Extracts GSM audio from RTP packets", "Zeeshan Ali <zeenix@gmail.com>");
|
||||
|
||||
gstbasertp_depayload_class->process = gst_rtp_gsm_depay_process;
|
||||
gstbasertp_depayload_class->set_caps = gst_rtp_gsm_depay_setcaps;
|
||||
gstrtpbase_depayload_class->process = gst_rtp_gsm_depay_process;
|
||||
gstrtpbase_depayload_class->set_caps = gst_rtp_gsm_depay_setcaps;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpgsmdepay_debug, "rtpgsmdepay", 0,
|
||||
"GSM Audio RTP Depayloader");
|
||||
|
@ -96,7 +96,7 @@ gst_rtp_gsm_depay_init (GstRTPGSMDepay * rtpgsmdepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_gsm_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_gsm_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstCaps *srccaps;
|
||||
gboolean ret;
|
||||
|
@ -111,14 +111,14 @@ gst_rtp_gsm_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
|
||||
srccaps = gst_caps_new_simple ("audio/x-gsm",
|
||||
"channels", G_TYPE_INT, 1, "rate", G_TYPE_INT, clock_rate, NULL);
|
||||
ret = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
ret = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_gsm_depay_process (GstBaseRTPDepayload * _depayload, GstBuffer * buf)
|
||||
gst_rtp_gsm_depay_process (GstRTPBaseDepayload * _depayload, GstBuffer * buf)
|
||||
{
|
||||
GstBuffer *outbuf = NULL;
|
||||
gboolean marker;
|
||||
|
|
|
@ -41,12 +41,12 @@ typedef struct _GstRTPGSMDepayClass GstRTPGSMDepayClass;
|
|||
|
||||
struct _GstRTPGSMDepay
|
||||
{
|
||||
GstBaseRTPDepayload _depayload;
|
||||
GstRTPBaseDepayload _depayload;
|
||||
};
|
||||
|
||||
struct _GstRTPGSMDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_gsm_depay_get_type (void);
|
||||
|
|
|
@ -52,25 +52,25 @@ static GstStaticPadTemplate gst_rtp_gsm_pay_src_template =
|
|||
"clock-rate = (int) 8000, " "encoding-name = (string) \"GSM\"")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_gsm_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_gsm_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_gsm_pay_handle_buffer (GstBaseRTPPayload * payload,
|
||||
static GstFlowReturn gst_rtp_gsm_pay_handle_buffer (GstRTPBasePayload * payload,
|
||||
GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_gsm_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPGSMPay, gst_rtp_gsm_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPGSMPay, gst_rtp_gsm_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_gsm_pay_class_init (GstRTPGSMPayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpgsmpay_debug, "rtpgsmpay", 0,
|
||||
"GSM Audio RTP Payloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_gsm_pay_sink_template));
|
||||
|
@ -82,19 +82,19 @@ gst_rtp_gsm_pay_class_init (GstRTPGSMPayClass * klass)
|
|||
"Payload-encodes GSM audio into a RTP packet",
|
||||
"Zeeshan Ali <zeenix@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_gsm_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_gsm_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_gsm_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_gsm_pay_handle_buffer;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_rtp_gsm_pay_init (GstRTPGSMPay * rtpgsmpay)
|
||||
{
|
||||
GST_BASE_RTP_PAYLOAD (rtpgsmpay)->clock_rate = 8000;
|
||||
GST_BASE_RTP_PAYLOAD_PT (rtpgsmpay) = GST_RTP_PAYLOAD_GSM;
|
||||
GST_RTP_BASE_PAYLOAD (rtpgsmpay)->clock_rate = 8000;
|
||||
GST_RTP_BASE_PAYLOAD_PT (rtpgsmpay) = GST_RTP_PAYLOAD_GSM;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_gsm_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_gsm_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
const char *stname;
|
||||
GstStructure *structure;
|
||||
|
@ -107,8 +107,8 @@ gst_rtp_gsm_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
if (strcmp ("audio/x-gsm", stname))
|
||||
goto invalid_type;
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "audio", FALSE, "GSM", 8000);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
gst_rtp_base_payload_set_options (payload, "audio", FALSE, "GSM", 8000);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
return res;
|
||||
|
||||
|
@ -121,7 +121,7 @@ invalid_type:
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_gsm_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_gsm_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRTPGSMPay *rtpgsmpay;
|
||||
|
@ -144,7 +144,7 @@ gst_rtp_gsm_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
payload_len = size;
|
||||
|
||||
/* FIXME, just error out for now */
|
||||
if (payload_len > GST_BASE_RTP_PAYLOAD_MTU (rtpgsmpay))
|
||||
if (payload_len > GST_RTP_BASE_PAYLOAD_MTU (rtpgsmpay))
|
||||
goto too_big;
|
||||
|
||||
outbuf = gst_rtp_buffer_new_allocate (payload_len, 0, 0);
|
||||
|
@ -168,7 +168,7 @@ gst_rtp_gsm_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
GST_DEBUG ("gst_rtp_gsm_pay_chain: pushing buffer of size %d",
|
||||
gst_buffer_get_size (outbuf));
|
||||
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
|
||||
return ret;
|
||||
|
||||
|
@ -177,7 +177,7 @@ too_big:
|
|||
{
|
||||
GST_ELEMENT_ERROR (rtpgsmpay, STREAM, ENCODE, (NULL),
|
||||
("payload_len %u > mtu %u", payload_len,
|
||||
GST_BASE_RTP_PAYLOAD_MTU (rtpgsmpay)));
|
||||
GST_RTP_BASE_PAYLOAD_MTU (rtpgsmpay)));
|
||||
gst_buffer_unmap (buffer, data, size);
|
||||
return GST_FLOW_ERROR;
|
||||
}
|
||||
|
|
|
@ -42,12 +42,12 @@ typedef struct _GstRTPGSMPayClass GstRTPGSMPayClass;
|
|||
|
||||
struct _GstRTPGSMPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
};
|
||||
|
||||
struct _GstRTPGSMPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_gsm_pay_get_type (void);
|
||||
|
|
|
@ -46,7 +46,7 @@ GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
);
|
||||
|
||||
#define gst_rtp_gst_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpGSTDepay, gst_rtp_gst_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpGSTDepay, gst_rtp_gst_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_gst_depay_finalize (GObject * object);
|
||||
|
||||
|
@ -54,9 +54,9 @@ static GstStateChangeReturn gst_rtp_gst_depay_change_state (GstElement *
|
|||
element, GstStateChange transition);
|
||||
|
||||
static void gst_rtp_gst_depay_reset (GstRtpGSTDepay * rtpgstdepay);
|
||||
static gboolean gst_rtp_gst_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_gst_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_gst_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_gst_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
|
@ -64,14 +64,14 @@ gst_rtp_gst_depay_class_init (GstRtpGSTDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpgstdepay_debug, "rtpgstdepay", 0,
|
||||
"Gstreamer RTP Depayloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_gst_depay_finalize;
|
||||
|
||||
|
@ -87,8 +87,8 @@ gst_rtp_gst_depay_class_init (GstRtpGSTDepayClass * klass)
|
|||
"Extracts GStreamer buffers from RTP packets",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_gst_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_gst_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_gst_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_gst_depay_process;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -130,7 +130,7 @@ gst_rtp_gst_depay_reset (GstRtpGSTDepay * rtpgstdepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_gst_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_gst_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstRtpGSTDepay *rtpgstdepay;
|
||||
GstStructure *structure;
|
||||
|
@ -170,7 +170,7 @@ gst_rtp_gst_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_gst_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_gst_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpGSTDepay *rtpgstdepay;
|
||||
GstBuffer *subbuf, *outbuf = NULL;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpGSTDepayClass GstRtpGSTDepayClass;
|
|||
|
||||
struct _GstRtpGSTDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
guint current_CV;
|
||||
|
@ -51,7 +51,7 @@ struct _GstRtpGSTDepay
|
|||
|
||||
struct _GstRtpGSTDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_gst_depay_get_type (void);
|
||||
|
|
|
@ -65,22 +65,22 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
"clock-rate = (int) 90000, " "encoding-name = (string) \"X-GST\"")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_gst_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_gst_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_gst_pay_handle_buffer (GstBaseRTPPayload * payload,
|
||||
static GstFlowReturn gst_rtp_gst_pay_handle_buffer (GstRTPBasePayload * payload,
|
||||
GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_gst_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpGSTPay, gst_rtp_gst_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpGSTPay, gst_rtp_gst_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_gst_pay_class_init (GstRtpGSTPayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_gst_pay_src_template));
|
||||
|
@ -92,8 +92,8 @@ gst_rtp_gst_pay_class_init (GstRtpGSTPayClass * klass)
|
|||
"Payload GStreamer buffers as RTP packets",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_gst_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_gst_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_gst_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_gst_pay_handle_buffer;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -102,7 +102,7 @@ gst_rtp_gst_pay_init (GstRtpGSTPay * rtpgstpay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_gst_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_gst_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
gchar *capsstr, *capsenc;
|
||||
|
@ -111,10 +111,10 @@ gst_rtp_gst_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
capsenc = g_base64_encode ((guchar *) capsstr, strlen (capsstr));
|
||||
g_free (capsstr);
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "application", TRUE, "X-GST",
|
||||
gst_rtp_base_payload_set_options (payload, "application", TRUE, "X-GST",
|
||||
90000);
|
||||
res =
|
||||
gst_base_rtp_payload_set_outcaps (payload, "caps", G_TYPE_STRING, capsenc,
|
||||
gst_rtp_base_payload_set_outcaps (payload, "caps", G_TYPE_STRING, capsenc,
|
||||
NULL);
|
||||
g_free (capsenc);
|
||||
|
||||
|
@ -122,7 +122,7 @@ gst_rtp_gst_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_gst_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_gst_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpGSTPay *rtpgstpay;
|
||||
|
@ -170,7 +170,7 @@ gst_rtp_gst_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
packet_len = gst_rtp_buffer_calc_packet_len (8 + left, 0, 0);
|
||||
|
||||
/* fill one MTU or all available bytes */
|
||||
towrite = MIN (packet_len, GST_BASE_RTP_PAYLOAD_MTU (rtpgstpay));
|
||||
towrite = MIN (packet_len, GST_RTP_BASE_PAYLOAD_MTU (rtpgstpay));
|
||||
|
||||
/* this is the payload length */
|
||||
payload_len = gst_rtp_buffer_calc_payload_len (towrite, 0, 0);
|
||||
|
@ -204,7 +204,7 @@ gst_rtp_gst_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
GST_BUFFER_TIMESTAMP (outbuf) = timestamp;
|
||||
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
}
|
||||
gst_buffer_unmap (buffer, data, size);
|
||||
gst_buffer_unref (buffer);
|
||||
|
|
|
@ -41,12 +41,12 @@ typedef struct _GstRtpGSTPayClass GstRtpGSTPayClass;
|
|||
|
||||
struct _GstRtpGSTPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
};
|
||||
|
||||
struct _GstRtpGSTPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_gst_pay_get_type (void);
|
||||
|
|
|
@ -63,16 +63,16 @@ static GstStaticPadTemplate gst_rtp_h263_depay_sink_template =
|
|||
|
||||
#define gst_rtp_h263_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpH263Depay, gst_rtp_h263_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_h263_depay_finalize (GObject * object);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_h263_depay_change_state (GstElement *
|
||||
element, GstStateChange transition);
|
||||
|
||||
static GstBuffer *gst_rtp_h263_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_h263_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
gboolean gst_rtp_h263_depay_setcaps (GstBaseRTPDepayload * filter,
|
||||
gboolean gst_rtp_h263_depay_setcaps (GstRTPBaseDepayload * filter,
|
||||
GstCaps * caps);
|
||||
|
||||
static void
|
||||
|
@ -80,14 +80,14 @@ gst_rtp_h263_depay_class_init (GstRtpH263DepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtph263depay_debug, "rtph263depay", 0,
|
||||
"H263 Video RTP Depayloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_h263_depay_finalize;
|
||||
|
||||
|
@ -104,8 +104,8 @@ gst_rtp_h263_depay_class_init (GstRtpH263DepayClass * klass)
|
|||
"Philippe Kalaf <philippe.kalaf@collabora.co.uk>, "
|
||||
"Edward Hervey <bilboed@bilboed.com>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_h263_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_h263_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_h263_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_h263_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -131,7 +131,7 @@ gst_rtp_h263_depay_finalize (GObject * object)
|
|||
}
|
||||
|
||||
gboolean
|
||||
gst_rtp_h263_depay_setcaps (GstBaseRTPDepayload * filter, GstCaps * caps)
|
||||
gst_rtp_h263_depay_setcaps (GstRTPBaseDepayload * filter, GstCaps * caps)
|
||||
{
|
||||
GstCaps *srccaps;
|
||||
GstStructure *structure = gst_caps_get_structure (caps, 0);
|
||||
|
@ -144,14 +144,14 @@ gst_rtp_h263_depay_setcaps (GstBaseRTPDepayload * filter, GstCaps * caps)
|
|||
srccaps = gst_caps_new_simple ("video/x-h263",
|
||||
"variant", G_TYPE_STRING, "itu",
|
||||
"h263version", G_TYPE_STRING, "h263", NULL);
|
||||
gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (filter), srccaps);
|
||||
gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (filter), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_h263_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_h263_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpH263Depay *rtph263depay;
|
||||
GstBuffer *outbuf;
|
||||
|
@ -325,7 +325,7 @@ skip:
|
|||
|
||||
GST_DEBUG ("Pushing out a buffer of %d bytes", avail);
|
||||
|
||||
gst_base_rtp_depayload_push (depayload, outbuf);
|
||||
gst_rtp_base_depayload_push (depayload, outbuf);
|
||||
rtph263depay->offset = 0;
|
||||
rtph263depay->leftover = 0;
|
||||
rtph263depay->start = FALSE;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpH263DepayClass GstRtpH263DepayClass;
|
|||
|
||||
struct _GstRtpH263Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
guint8 offset; /* offset to apply to next payload */
|
||||
guint8 leftover; /* leftover from previous payload (if offset != 0) */
|
||||
|
@ -53,7 +53,7 @@ struct _GstRtpH263Depay
|
|||
|
||||
struct _GstRtpH263DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_h263_depay_get_type (void);
|
||||
|
|
|
@ -369,13 +369,13 @@ static GstStaticPadTemplate gst_rtp_h263_pay_src_template =
|
|||
|
||||
static void gst_rtp_h263_pay_finalize (GObject * object);
|
||||
|
||||
static gboolean gst_rtp_h263_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_h263_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static void gst_rtp_h263_pay_set_property (GObject * object, guint prop_id,
|
||||
const GValue * value, GParamSpec * pspec);
|
||||
static void gst_rtp_h263_pay_get_property (GObject * object, guint prop_id,
|
||||
GValue * value, GParamSpec * pspec);
|
||||
static GstFlowReturn gst_rtp_h263_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_h263_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
|
||||
static void gst_rtp_h263_pay_boundry_init (GstRtpH263PayBoundry * boundry,
|
||||
|
@ -396,23 +396,23 @@ static void gst_rtp_h263_pay_context_destroy (GstRtpH263PayContext * context,
|
|||
static void gst_rtp_h263_pay_package_destroy (GstRtpH263PayPackage * pack);
|
||||
|
||||
#define gst_rtp_h263_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpH263Pay, gst_rtp_h263_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpH263Pay, gst_rtp_h263_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_h263_pay_class_init (GstRtpH263PayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_h263_pay_finalize;
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_h263_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_h263_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_h263_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_h263_pay_handle_buffer;
|
||||
gobject_class->set_property = gst_rtp_h263_pay_set_property;
|
||||
gobject_class->get_property = gst_rtp_h263_pay_get_property;
|
||||
|
||||
|
@ -459,13 +459,13 @@ gst_rtp_h263_pay_finalize (GObject * object)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_h263_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_h263_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
|
||||
payload->pt = GST_RTP_PAYLOAD_H263;
|
||||
gst_base_rtp_payload_set_options (payload, "video", TRUE, "H263", 90000);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
gst_rtp_base_payload_set_options (payload, "video", TRUE, "H263", 90000);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
@ -1279,7 +1279,7 @@ gst_rtp_h263_pay_push (GstRtpH263Pay * rtph263pay,
|
|||
gst_rtp_buffer_unmap (&rtp);
|
||||
|
||||
ret =
|
||||
gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtph263pay),
|
||||
gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtph263pay),
|
||||
package->outbuf);
|
||||
GST_DEBUG ("Package pushed, returning");
|
||||
|
||||
|
@ -1776,7 +1776,7 @@ end:
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_h263_pay_handle_buffer (GstBaseRTPPayload * payload, GstBuffer * buffer)
|
||||
gst_rtp_h263_pay_handle_buffer (GstRTPBasePayload * payload, GstBuffer * buffer)
|
||||
{
|
||||
|
||||
GstRtpH263Pay *rtph263pay;
|
||||
|
|
|
@ -61,7 +61,7 @@ typedef struct _GstRtpH263PayPackage GstRtpH263PayPackage;
|
|||
|
||||
struct _GstRtpH263Pay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime first_ts;
|
||||
|
@ -87,7 +87,7 @@ struct _GstRtpH263PayContext
|
|||
|
||||
struct _GstRtpH263PayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
typedef struct _GstRtpH263PayAHeader
|
||||
|
|
|
@ -80,16 +80,16 @@ static GstStaticPadTemplate gst_rtp_h263p_depay_sink_template =
|
|||
|
||||
#define gst_rtp_h263p_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpH263PDepay, gst_rtp_h263p_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_h263p_depay_finalize (GObject * object);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_h263p_depay_change_state (GstElement *
|
||||
element, GstStateChange transition);
|
||||
|
||||
static GstBuffer *gst_rtp_h263p_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_h263p_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
gboolean gst_rtp_h263p_depay_setcaps (GstBaseRTPDepayload * filter,
|
||||
gboolean gst_rtp_h263p_depay_setcaps (GstRTPBaseDepayload * filter,
|
||||
GstCaps * caps);
|
||||
|
||||
static void
|
||||
|
@ -97,11 +97,11 @@ gst_rtp_h263p_depay_class_init (GstRtpH263PDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_h263p_depay_finalize;
|
||||
|
||||
|
@ -117,8 +117,8 @@ gst_rtp_h263p_depay_class_init (GstRtpH263PDepayClass * klass)
|
|||
"Extracts H263/+/++ video from RTP packets (RFC 4629)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_h263p_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_h263p_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_h263p_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_h263p_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -141,7 +141,7 @@ gst_rtp_h263p_depay_finalize (GObject * object)
|
|||
}
|
||||
|
||||
gboolean
|
||||
gst_rtp_h263p_depay_setcaps (GstBaseRTPDepayload * filter, GstCaps * caps)
|
||||
gst_rtp_h263p_depay_setcaps (GstRTPBaseDepayload * filter, GstCaps * caps)
|
||||
{
|
||||
GstCaps *srccaps = NULL;
|
||||
GstStructure *structure = gst_caps_get_structure (caps, 0);
|
||||
|
@ -207,7 +207,7 @@ gst_rtp_h263p_depay_setcaps (GstBaseRTPDepayload * filter, GstCaps * caps)
|
|||
if (!srccaps)
|
||||
goto no_caps;
|
||||
|
||||
res = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (filter), srccaps);
|
||||
res = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (filter), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return res;
|
||||
|
@ -226,7 +226,7 @@ no_caps:
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_h263p_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_h263p_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpH263PDepay *rtph263pdepay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpH263PDepayClass GstRtpH263PDepayClass;
|
|||
|
||||
struct _GstRtpH263PDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
gboolean wait_start;
|
||||
|
@ -50,7 +50,7 @@ struct _GstRtpH263PDepay
|
|||
|
||||
struct _GstRtpH263PDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_h263p_depay_get_type (void);
|
||||
|
|
|
@ -101,34 +101,34 @@ static void gst_rtp_h263p_pay_set_property (GObject * object, guint prop_id,
|
|||
static void gst_rtp_h263p_pay_get_property (GObject * object, guint prop_id,
|
||||
GValue * value, GParamSpec * pspec);
|
||||
|
||||
static gboolean gst_rtp_h263p_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_h263p_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstCaps *gst_rtp_h263p_pay_sink_getcaps (GstBaseRTPPayload * payload,
|
||||
static GstCaps *gst_rtp_h263p_pay_sink_getcaps (GstRTPBasePayload * payload,
|
||||
GstPad * pad, GstCaps * filter);
|
||||
static GstFlowReturn gst_rtp_h263p_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_h263p_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_h263p_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpH263PPay, gst_rtp_h263p_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpH263PPay, gst_rtp_h263p_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_h263p_pay_class_init (GstRtpH263PPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_h263p_pay_finalize;
|
||||
gobject_class->set_property = gst_rtp_h263p_pay_set_property;
|
||||
gobject_class->get_property = gst_rtp_h263p_pay_get_property;
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_h263p_pay_setcaps;
|
||||
gstbasertppayload_class->get_caps = gst_rtp_h263p_pay_sink_getcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_h263p_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_h263p_pay_setcaps;
|
||||
gstrtpbasepayload_class->get_caps = gst_rtp_h263p_pay_sink_getcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_h263p_pay_handle_buffer;
|
||||
|
||||
g_object_class_install_property (G_OBJECT_CLASS (klass),
|
||||
PROP_FRAGMENTATION_MODE, g_param_spec_enum ("fragmentation-mode",
|
||||
|
@ -173,7 +173,7 @@ gst_rtp_h263p_pay_finalize (GObject * object)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_h263p_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_h263p_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
GstCaps *peercaps;
|
||||
|
@ -182,10 +182,10 @@ gst_rtp_h263p_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
g_return_val_if_fail (gst_caps_is_fixed (caps), FALSE);
|
||||
|
||||
peercaps =
|
||||
gst_pad_peer_get_caps (GST_BASE_RTP_PAYLOAD_SRCPAD (payload), NULL);
|
||||
gst_pad_peer_get_caps (GST_RTP_BASE_PAYLOAD_SRCPAD (payload), NULL);
|
||||
if (peercaps) {
|
||||
GstCaps *intersect = gst_caps_intersect (peercaps,
|
||||
gst_pad_get_pad_template_caps (GST_BASE_RTP_PAYLOAD_SRCPAD (payload)));
|
||||
gst_pad_get_pad_template_caps (GST_RTP_BASE_PAYLOAD_SRCPAD (payload)));
|
||||
|
||||
gst_caps_unref (peercaps);
|
||||
if (!gst_caps_is_empty (intersect)) {
|
||||
|
@ -198,9 +198,9 @@ gst_rtp_h263p_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
if (!encoding_name)
|
||||
encoding_name = g_strdup ("H263-1998");
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "video", TRUE,
|
||||
gst_rtp_base_payload_set_options (payload, "video", TRUE,
|
||||
(gchar *) encoding_name, 90000);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
g_free (encoding_name);
|
||||
|
||||
return res;
|
||||
|
@ -229,7 +229,7 @@ caps_append (GstCaps * caps, GstStructure * in_s, guint x, guint y, guint mpi)
|
|||
|
||||
|
||||
static GstCaps *
|
||||
gst_rtp_h263p_pay_sink_getcaps (GstBaseRTPPayload * payload, GstPad * pad,
|
||||
gst_rtp_h263p_pay_sink_getcaps (GstRTPBasePayload * payload, GstPad * pad,
|
||||
GstCaps * filter)
|
||||
{
|
||||
GstRtpH263PPay *rtph263ppay;
|
||||
|
@ -241,14 +241,14 @@ gst_rtp_h263p_pay_sink_getcaps (GstBaseRTPPayload * payload, GstPad * pad,
|
|||
rtph263ppay = GST_RTP_H263P_PAY (payload);
|
||||
|
||||
peercaps =
|
||||
gst_pad_peer_get_caps (GST_BASE_RTP_PAYLOAD_SRCPAD (payload), filter);
|
||||
gst_pad_peer_get_caps (GST_RTP_BASE_PAYLOAD_SRCPAD (payload), filter);
|
||||
if (!peercaps)
|
||||
return
|
||||
gst_caps_copy (gst_pad_get_pad_template_caps
|
||||
(GST_BASE_RTP_PAYLOAD_SINKPAD (payload)));
|
||||
(GST_RTP_BASE_PAYLOAD_SINKPAD (payload)));
|
||||
|
||||
intersect = gst_caps_intersect (peercaps,
|
||||
gst_pad_get_pad_template_caps (GST_BASE_RTP_PAYLOAD_SRCPAD (payload)));
|
||||
gst_pad_get_pad_template_caps (GST_RTP_BASE_PAYLOAD_SRCPAD (payload)));
|
||||
gst_caps_unref (peercaps);
|
||||
|
||||
if (gst_caps_is_empty (intersect))
|
||||
|
@ -686,7 +686,7 @@ gst_rtp_h263p_pay_flush (GstRtpH263PPay * rtph263ppay)
|
|||
header_len = (fragmented && !found_gob) ? 2 : 0;
|
||||
|
||||
towrite = MIN (avail, gst_rtp_buffer_calc_payload_len
|
||||
(GST_BASE_RTP_PAYLOAD_MTU (rtph263ppay) - header_len, 0, 0));
|
||||
(GST_RTP_BASE_PAYLOAD_MTU (rtph263ppay) - header_len, 0, 0));
|
||||
|
||||
if (next_gop > 0)
|
||||
towrite = MIN (next_gop, towrite);
|
||||
|
@ -720,7 +720,7 @@ gst_rtp_h263p_pay_flush (GstRtpH263PPay * rtph263ppay)
|
|||
gst_adapter_flush (rtph263ppay->adapter, towrite);
|
||||
|
||||
ret =
|
||||
gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtph263ppay), outbuf);
|
||||
gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtph263ppay), outbuf);
|
||||
|
||||
avail -= towrite;
|
||||
fragmented = TRUE;
|
||||
|
@ -730,7 +730,7 @@ gst_rtp_h263p_pay_flush (GstRtpH263PPay * rtph263ppay)
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_h263p_pay_handle_buffer (GstBaseRTPPayload * payload,
|
||||
gst_rtp_h263p_pay_handle_buffer (GstRTPBasePayload * payload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpH263PPay *rtph263ppay;
|
||||
|
|
|
@ -48,7 +48,7 @@ typedef enum
|
|||
|
||||
struct _GstRtpH263PPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime first_timestamp;
|
||||
|
@ -58,7 +58,7 @@ struct _GstRtpH263PPay
|
|||
|
||||
struct _GstRtpH263PPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_h263p_pay_get_type (void);
|
||||
|
|
|
@ -81,7 +81,7 @@ GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
|
||||
#define gst_rtp_h264_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpH264Depay, gst_rtp_h264_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_h264_depay_finalize (GObject * object);
|
||||
static void gst_rtp_h264_depay_set_property (GObject * object, guint prop_id,
|
||||
|
@ -92,11 +92,11 @@ static void gst_rtp_h264_depay_get_property (GObject * object, guint prop_id,
|
|||
static GstStateChangeReturn gst_rtp_h264_depay_change_state (GstElement *
|
||||
element, GstStateChange transition);
|
||||
|
||||
static GstBuffer *gst_rtp_h264_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_h264_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
static gboolean gst_rtp_h264_depay_setcaps (GstBaseRTPDepayload * filter,
|
||||
static gboolean gst_rtp_h264_depay_setcaps (GstRTPBaseDepayload * filter,
|
||||
GstCaps * caps);
|
||||
static gboolean gst_rtp_h264_depay_handle_event (GstBaseRTPDepayload * depay,
|
||||
static gboolean gst_rtp_h264_depay_handle_event (GstRTPBaseDepayload * depay,
|
||||
GstEvent * event);
|
||||
|
||||
static void
|
||||
|
@ -104,11 +104,11 @@ gst_rtp_h264_depay_class_init (GstRtpH264DepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_h264_depay_finalize;
|
||||
|
||||
|
@ -135,9 +135,9 @@ gst_rtp_h264_depay_class_init (GstRtpH264DepayClass * klass)
|
|||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
gstelement_class->change_state = gst_rtp_h264_depay_change_state;
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_h264_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_h264_depay_setcaps;
|
||||
gstbasertpdepayload_class->handle_event = gst_rtp_h264_depay_handle_event;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_h264_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_h264_depay_setcaps;
|
||||
gstrtpbasedepayload_class->handle_event = gst_rtp_h264_depay_handle_event;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtph264depay_debug, "rtph264depay", 0,
|
||||
"H264 Video RTP Depayloader");
|
||||
|
@ -230,7 +230,7 @@ gst_rtp_h264_depay_negotiate (GstRtpH264Depay * rtph264depay)
|
|||
gint merge = -1;
|
||||
|
||||
caps =
|
||||
gst_pad_get_allowed_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (rtph264depay));
|
||||
gst_pad_get_allowed_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (rtph264depay));
|
||||
|
||||
GST_DEBUG_OBJECT (rtph264depay, "allowed caps: %" GST_PTR_FORMAT, caps);
|
||||
|
||||
|
@ -282,7 +282,7 @@ gst_rtp_h264_depay_negotiate (GstRtpH264Depay * rtph264depay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_h264_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_h264_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstCaps *srccaps;
|
||||
gint clock_rate;
|
||||
|
@ -505,7 +505,7 @@ static GstBuffer *
|
|||
gst_rtp_h264_depay_handle_nal (GstRtpH264Depay * rtph264depay, GstBuffer * nal,
|
||||
GstClockTime in_timestamp, gboolean marker)
|
||||
{
|
||||
GstBaseRTPDepayload *depayload = GST_BASE_RTP_DEPAYLOAD (rtph264depay);
|
||||
GstRTPBaseDepayload *depayload = GST_RTP_BASE_DEPAYLOAD (rtph264depay);
|
||||
gint nal_type;
|
||||
gsize size;
|
||||
guint8 *data;
|
||||
|
@ -629,7 +629,7 @@ gst_rtp_h264_push_fragmentation_unit (GstRtpH264Depay * rtph264depay,
|
|||
outbuf = gst_rtp_h264_depay_handle_nal (rtph264depay, outbuf,
|
||||
rtph264depay->fu_timestamp, rtph264depay->fu_marker);
|
||||
if (outbuf)
|
||||
gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtph264depay),
|
||||
gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtph264depay),
|
||||
outbuf);
|
||||
return NULL;
|
||||
} else {
|
||||
|
@ -639,7 +639,7 @@ gst_rtp_h264_push_fragmentation_unit (GstRtpH264Depay * rtph264depay,
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_h264_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_h264_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpH264Depay *rtph264depay;
|
||||
GstBuffer *outbuf = NULL;
|
||||
|
@ -916,7 +916,7 @@ not_implemented:
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_h264_depay_handle_event (GstBaseRTPDepayload * depay, GstEvent * event)
|
||||
gst_rtp_h264_depay_handle_event (GstRTPBaseDepayload * depay, GstEvent * event)
|
||||
{
|
||||
GstRtpH264Depay *rtph264depay;
|
||||
|
||||
|
@ -931,7 +931,7 @@ gst_rtp_h264_depay_handle_event (GstBaseRTPDepayload * depay, GstEvent * event)
|
|||
}
|
||||
|
||||
return
|
||||
GST_BASE_RTP_DEPAYLOAD_CLASS (parent_class)->handle_event (depay, event);
|
||||
GST_RTP_BASE_DEPAYLOAD_CLASS (parent_class)->handle_event (depay, event);
|
||||
}
|
||||
|
||||
static GstStateChangeReturn
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpH264DepayClass GstRtpH264DepayClass;
|
|||
|
||||
struct _GstRtpH264Depay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
gboolean byte_stream;
|
||||
|
||||
|
@ -65,7 +65,7 @@ struct _GstRtpH264Depay
|
|||
|
||||
struct _GstRtpH264DepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_h264_depay_get_type (void);
|
||||
|
|
|
@ -110,30 +110,30 @@ static void gst_rtp_h264_pay_set_property (GObject * object, guint prop_id,
|
|||
static void gst_rtp_h264_pay_get_property (GObject * object, guint prop_id,
|
||||
GValue * value, GParamSpec * pspec);
|
||||
|
||||
static GstCaps *gst_rtp_h264_pay_getcaps (GstBaseRTPPayload * payload,
|
||||
static GstCaps *gst_rtp_h264_pay_getcaps (GstRTPBasePayload * payload,
|
||||
GstPad * pad, GstCaps * filter);
|
||||
static gboolean gst_rtp_h264_pay_setcaps (GstBaseRTPPayload * basepayload,
|
||||
static gboolean gst_rtp_h264_pay_setcaps (GstRTPBasePayload * basepayload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_h264_pay_handle_buffer (GstBaseRTPPayload * pad,
|
||||
static GstFlowReturn gst_rtp_h264_pay_handle_buffer (GstRTPBasePayload * pad,
|
||||
GstBuffer * buffer);
|
||||
static gboolean gst_rtp_h264_pay_handle_event (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_h264_pay_handle_event (GstRTPBasePayload * payload,
|
||||
GstEvent * event);
|
||||
static GstStateChangeReturn gst_rtp_h264_pay_change_state (GstElement *
|
||||
element, GstStateChange transition);
|
||||
|
||||
#define gst_rtp_h264_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpH264Pay, gst_rtp_h264_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpH264Pay, gst_rtp_h264_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_h264_pay_class_init (GstRtpH264PayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_rtp_h264_pay_set_property;
|
||||
gobject_class->get_property = gst_rtp_h264_pay_get_property;
|
||||
|
@ -190,10 +190,10 @@ gst_rtp_h264_pay_class_init (GstRtpH264PayClass * klass)
|
|||
gstelement_class->change_state =
|
||||
GST_DEBUG_FUNCPTR (gst_rtp_h264_pay_change_state);
|
||||
|
||||
gstbasertppayload_class->get_caps = gst_rtp_h264_pay_getcaps;
|
||||
gstbasertppayload_class->set_caps = gst_rtp_h264_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_h264_pay_handle_buffer;
|
||||
gstbasertppayload_class->handle_event = gst_rtp_h264_pay_handle_event;
|
||||
gstrtpbasepayload_class->get_caps = gst_rtp_h264_pay_getcaps;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_h264_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_h264_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->handle_event = gst_rtp_h264_pay_handle_event;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtph264pay_debug, "rtph264pay", 0,
|
||||
"H264 RTP Payloader");
|
||||
|
@ -264,13 +264,13 @@ static const gchar *all_levels[] = {
|
|||
};
|
||||
|
||||
static GstCaps *
|
||||
gst_rtp_h264_pay_getcaps (GstBaseRTPPayload * payload, GstPad * pad,
|
||||
gst_rtp_h264_pay_getcaps (GstRTPBasePayload * payload, GstPad * pad,
|
||||
GstCaps * filter)
|
||||
{
|
||||
GstCaps *allowed_caps;
|
||||
|
||||
allowed_caps =
|
||||
gst_pad_peer_get_caps (GST_BASE_RTP_PAYLOAD_SRCPAD (payload), filter);
|
||||
gst_pad_peer_get_caps (GST_RTP_BASE_PAYLOAD_SRCPAD (payload), filter);
|
||||
|
||||
if (allowed_caps) {
|
||||
GstCaps *caps = NULL;
|
||||
|
@ -364,7 +364,7 @@ any:
|
|||
/* take the currently configured SPS and PPS lists and set them on the caps as
|
||||
* sprop-parameter-sets */
|
||||
static gboolean
|
||||
gst_rtp_h264_pay_set_sps_pps (GstBaseRTPPayload * basepayload)
|
||||
gst_rtp_h264_pay_set_sps_pps (GstRTPBasePayload * basepayload)
|
||||
{
|
||||
GstRtpH264Pay *payloader = GST_RTP_H264_PAY (basepayload);
|
||||
gchar *profile;
|
||||
|
@ -406,7 +406,7 @@ gst_rtp_h264_pay_set_sps_pps (GstBaseRTPPayload * basepayload)
|
|||
/* profile is 24 bit. Force it to respect the limit */
|
||||
profile = g_strdup_printf ("%06x", payloader->profile & 0xffffff);
|
||||
/* combine into output caps */
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload,
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload,
|
||||
"sprop-parameter-sets", G_TYPE_STRING, sprops->str, NULL);
|
||||
g_string_free (sprops, TRUE);
|
||||
g_free (profile);
|
||||
|
@ -415,7 +415,7 @@ gst_rtp_h264_pay_set_sps_pps (GstBaseRTPPayload * basepayload)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_h264_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
||||
gst_rtp_h264_pay_setcaps (GstRTPBasePayload * basepayload, GstCaps * caps)
|
||||
{
|
||||
GstRtpH264Pay *rtph264pay;
|
||||
GstStructure *str;
|
||||
|
@ -431,7 +431,7 @@ gst_rtp_h264_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
|
||||
/* we can only set the output caps when we found the sprops and profile
|
||||
* NALs */
|
||||
gst_base_rtp_payload_set_options (basepayload, "video", TRUE, "H264", 90000);
|
||||
gst_rtp_base_payload_set_options (basepayload, "video", TRUE, "H264", 90000);
|
||||
|
||||
alignment = gst_structure_get_string (str, "alignment");
|
||||
if (alignment && !strcmp (alignment, "au"))
|
||||
|
@ -782,12 +782,12 @@ gst_rtp_h264_pay_decode_nal (GstRtpH264Pay * payloader,
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_h264_pay_payload_nal (GstRTPBasePayload * basepayload,
|
||||
const guint8 * data, guint size, GstClockTime timestamp,
|
||||
GstBuffer * buffer_orig, gboolean end_of_au);
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_h264_pay_send_sps_pps (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_h264_pay_send_sps_pps (GstRTPBasePayload * basepayload,
|
||||
GstRtpH264Pay * rtph264pay, GstClockTime timestamp)
|
||||
{
|
||||
GstFlowReturn ret = GST_FLOW_OK;
|
||||
|
@ -829,7 +829,7 @@ gst_rtp_h264_pay_send_sps_pps (GstBaseRTPPayload * basepayload,
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_h264_pay_payload_nal (GstRTPBasePayload * basepayload,
|
||||
const guint8 * data, guint size, GstClockTime timestamp,
|
||||
GstBuffer * buffer_orig, gboolean end_of_au)
|
||||
{
|
||||
|
@ -846,7 +846,7 @@ gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
|||
GstRTPBuffer rtp = { NULL };
|
||||
|
||||
rtph264pay = GST_RTP_H264_PAY (basepayload);
|
||||
mtu = GST_BASE_RTP_PAYLOAD_MTU (rtph264pay);
|
||||
mtu = GST_RTP_BASE_PAYLOAD_MTU (rtph264pay);
|
||||
|
||||
nalType = data[0] & 0x1f;
|
||||
GST_DEBUG_OBJECT (rtph264pay, "Processing Buffer with NAL TYPE=%d", nalType);
|
||||
|
@ -944,7 +944,7 @@ gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
|||
gst_buffer_list_add (list, paybuf);
|
||||
|
||||
/* push the list to the next element in the pipe */
|
||||
ret = gst_base_rtp_payload_push_list (basepayload, list);
|
||||
ret = gst_rtp_base_payload_push_list (basepayload, list);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
|
@ -953,7 +953,7 @@ gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
|||
memcpy (payload, data, size);
|
||||
gst_rtp_buffer_unmap (&rtp);
|
||||
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
}
|
||||
} else {
|
||||
/* fragmentation Units FU-A */
|
||||
|
@ -1052,7 +1052,7 @@ gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
|||
"recorded %d payload bytes into packet iteration=%d",
|
||||
limitedSize + 2, ii);
|
||||
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
if (ret != GST_FLOW_OK)
|
||||
break;
|
||||
}
|
||||
|
@ -1067,7 +1067,7 @@ gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
|||
if (rtph264pay->buffer_list) {
|
||||
/* free iterator and push the whole buffer list at once */
|
||||
gst_buffer_list_iterator_free (it);
|
||||
ret = gst_base_rtp_payload_push_list (basepayload, list);
|
||||
ret = gst_rtp_base_payload_push_list (basepayload, list);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
@ -1075,7 +1075,7 @@ gst_rtp_h264_pay_payload_nal (GstBaseRTPPayload * basepayload,
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_h264_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_h264_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpH264Pay *rtph264pay;
|
||||
|
@ -1218,7 +1218,7 @@ gst_rtp_h264_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
if (rtph264pay->sprop_parameter_sets != NULL) {
|
||||
/* explicitly set profile and sprop, use those */
|
||||
if (rtph264pay->update_caps) {
|
||||
if (!gst_base_rtp_payload_set_outcaps (basepayload,
|
||||
if (!gst_rtp_base_payload_set_outcaps (basepayload,
|
||||
"sprop-parameter-sets", G_TYPE_STRING,
|
||||
rtph264pay->sprop_parameter_sets, NULL))
|
||||
goto caps_rejected;
|
||||
|
@ -1322,7 +1322,7 @@ caps_rejected:
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_h264_pay_handle_event (GstBaseRTPPayload * payload, GstEvent * event)
|
||||
gst_rtp_h264_pay_handle_event (GstRTPBasePayload * payload, GstEvent * event)
|
||||
{
|
||||
gboolean res;
|
||||
const GstStructure *s;
|
||||
|
@ -1347,7 +1347,7 @@ gst_rtp_h264_pay_handle_event (GstBaseRTPPayload * payload, GstEvent * event)
|
|||
}
|
||||
|
||||
res =
|
||||
GST_BASE_RTP_PAYLOAD_CLASS (parent_class)->handle_event (payload, event);
|
||||
GST_RTP_BASE_PAYLOAD_CLASS (parent_class)->handle_event (payload, event);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
|
|
@ -49,7 +49,7 @@ typedef struct _GstRtpH264PayClass GstRtpH264PayClass;
|
|||
|
||||
struct _GstRtpH264Pay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
guint profile;
|
||||
GList *sps, *pps;
|
||||
|
@ -74,7 +74,7 @@ struct _GstRtpH264Pay
|
|||
|
||||
struct _GstRtpH264PayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_h264_pay_get_type (void);
|
||||
|
|
|
@ -66,14 +66,14 @@ static void gst_ilbc_depay_set_property (GObject * object,
|
|||
static void gst_ilbc_depay_get_property (GObject * object,
|
||||
guint prop_id, GValue * value, GParamSpec * pspec);
|
||||
|
||||
static GstBuffer *gst_rtp_ilbc_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_ilbc_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
static gboolean gst_rtp_ilbc_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_ilbc_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_ilbc_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPiLBCDepay, gst_rtp_ilbc_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
#define GST_TYPE_ILBC_MODE (gst_ilbc_mode_get_type())
|
||||
static GType
|
||||
|
@ -97,11 +97,11 @@ gst_rtp_ilbc_depay_class_init (GstRTPiLBCDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_ilbc_depay_set_property;
|
||||
gobject_class->get_property = gst_ilbc_depay_get_property;
|
||||
|
@ -122,8 +122,8 @@ gst_rtp_ilbc_depay_class_init (GstRTPiLBCDepayClass * klass)
|
|||
"Extracts iLBC audio from RTP packets (RFC 3952)",
|
||||
"Philippe Kalaf <philippe.kalaf@collabora.co.uk>");
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_ilbc_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_ilbc_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_ilbc_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_ilbc_depay_setcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -134,7 +134,7 @@ gst_rtp_ilbc_depay_init (GstRTPiLBCDepay * rtpilbcdepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_ilbc_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_ilbc_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstRTPiLBCDepay *rtpilbcdepay = GST_RTP_ILBC_DEPAY (depayload);
|
||||
GstCaps *srccaps;
|
||||
|
@ -163,7 +163,7 @@ gst_rtp_ilbc_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
|
||||
srccaps = gst_caps_new_simple ("audio/x-iLBC",
|
||||
"mode", G_TYPE_INT, rtpilbcdepay->mode, NULL);
|
||||
ret = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
ret = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
|
||||
GST_DEBUG ("set caps on source: %" GST_PTR_FORMAT " (ret=%d)", srccaps, ret);
|
||||
gst_caps_unref (srccaps);
|
||||
|
@ -172,7 +172,7 @@ gst_rtp_ilbc_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_ilbc_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_ilbc_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstBuffer *outbuf;
|
||||
gboolean marker;
|
||||
|
|
|
@ -46,14 +46,14 @@ typedef enum {
|
|||
|
||||
struct _GstRTPiLBCDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstiLBCMode mode;
|
||||
};
|
||||
|
||||
struct _GstRTPiLBCDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_ilbc_depay_get_type (void);
|
||||
|
|
|
@ -48,26 +48,26 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
);
|
||||
|
||||
|
||||
static GstCaps *gst_rtp_ilbc_pay_sink_getcaps (GstBaseRTPPayload * payload,
|
||||
static GstCaps *gst_rtp_ilbc_pay_sink_getcaps (GstRTPBasePayload * payload,
|
||||
GstPad * pad, GstCaps * filter);
|
||||
static gboolean gst_rtp_ilbc_pay_sink_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_ilbc_pay_sink_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
|
||||
#define gst_rtp_ilbc_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPILBCPay, gst_rtp_ilbc_pay,
|
||||
GST_TYPE_BASE_RTP_AUDIO_PAYLOAD);
|
||||
GST_TYPE_RTP_BASE_AUDIO_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_ilbc_pay_class_init (GstRTPILBCPayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpilbcpay_debug, "rtpilbcpay", 0,
|
||||
"iLBC audio RTP payloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_ilbc_pay_sink_template));
|
||||
|
@ -79,43 +79,43 @@ gst_rtp_ilbc_pay_class_init (GstRTPILBCPayClass * klass)
|
|||
"Packetize iLBC audio streams into RTP packets",
|
||||
"Philippe Kalaf <philippe.kalaf@collabora.co.uk>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_ilbc_pay_sink_setcaps;
|
||||
gstbasertppayload_class->get_caps = gst_rtp_ilbc_pay_sink_getcaps;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_ilbc_pay_sink_setcaps;
|
||||
gstrtpbasepayload_class->get_caps = gst_rtp_ilbc_pay_sink_getcaps;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_rtp_ilbc_pay_init (GstRTPILBCPay * rtpilbcpay)
|
||||
{
|
||||
GstBaseRTPPayload *basertppayload;
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBasePayload *rtpbasepayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
|
||||
basertppayload = GST_BASE_RTP_PAYLOAD (rtpilbcpay);
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (rtpilbcpay);
|
||||
rtpbasepayload = GST_RTP_BASE_PAYLOAD (rtpilbcpay);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (rtpilbcpay);
|
||||
|
||||
/* we don't set the payload type, it should be set by the application using
|
||||
* the pt property or the default 96 will be used */
|
||||
basertppayload->clock_rate = 8000;
|
||||
rtpbasepayload->clock_rate = 8000;
|
||||
|
||||
rtpilbcpay->mode = -1;
|
||||
|
||||
/* tell basertpaudiopayload that this is a frame based codec */
|
||||
gst_base_rtp_audio_payload_set_frame_based (basertpaudiopayload);
|
||||
/* tell rtpbaseaudiopayload that this is a frame based codec */
|
||||
gst_rtp_base_audio_payload_set_frame_based (rtpbaseaudiopayload);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_ilbc_pay_sink_setcaps (GstBaseRTPPayload * basertppayload,
|
||||
gst_rtp_ilbc_pay_sink_setcaps (GstRTPBasePayload * rtpbasepayload,
|
||||
GstCaps * caps)
|
||||
{
|
||||
GstRTPILBCPay *rtpilbcpay;
|
||||
GstBaseRTPAudioPayload *basertpaudiopayload;
|
||||
GstRTPBaseAudioPayload *rtpbaseaudiopayload;
|
||||
gboolean ret;
|
||||
gint mode;
|
||||
gchar *mode_str;
|
||||
GstStructure *structure;
|
||||
const char *payload_name;
|
||||
|
||||
rtpilbcpay = GST_RTP_ILBC_PAY (basertppayload);
|
||||
basertpaudiopayload = GST_BASE_RTP_AUDIO_PAYLOAD (basertppayload);
|
||||
rtpilbcpay = GST_RTP_ILBC_PAY (rtpbasepayload);
|
||||
rtpbaseaudiopayload = GST_RTP_BASE_AUDIO_PAYLOAD (rtpbasepayload);
|
||||
|
||||
structure = gst_caps_get_structure (caps, 0);
|
||||
|
||||
|
@ -129,15 +129,15 @@ gst_rtp_ilbc_pay_sink_setcaps (GstBaseRTPPayload * basertppayload,
|
|||
if (mode != 20 && mode != 30)
|
||||
goto wrong_mode;
|
||||
|
||||
gst_base_rtp_payload_set_options (basertppayload, "audio", TRUE, "ILBC",
|
||||
gst_rtp_base_payload_set_options (rtpbasepayload, "audio", TRUE, "ILBC",
|
||||
8000);
|
||||
/* set options for this frame based audio codec */
|
||||
gst_base_rtp_audio_payload_set_frame_options (basertpaudiopayload,
|
||||
gst_rtp_base_audio_payload_set_frame_options (rtpbaseaudiopayload,
|
||||
mode, mode == 30 ? 50 : 38);
|
||||
|
||||
mode_str = g_strdup_printf ("%d", mode);
|
||||
ret =
|
||||
gst_base_rtp_payload_set_outcaps (basertppayload, "mode", G_TYPE_STRING,
|
||||
gst_rtp_base_payload_set_outcaps (rtpbasepayload, "mode", G_TYPE_STRING,
|
||||
mode_str, NULL);
|
||||
g_free (mode_str);
|
||||
|
||||
|
@ -176,7 +176,7 @@ mode_changed:
|
|||
/* we return the padtemplate caps with the mode field fixated to a value if we
|
||||
* can */
|
||||
static GstCaps *
|
||||
gst_rtp_ilbc_pay_sink_getcaps (GstBaseRTPPayload * rtppayload, GstPad * pad,
|
||||
gst_rtp_ilbc_pay_sink_getcaps (GstRTPBasePayload * rtppayload, GstPad * pad,
|
||||
GstCaps * filter)
|
||||
{
|
||||
GstCaps *otherpadcaps;
|
||||
|
|
|
@ -41,14 +41,14 @@ typedef struct _GstRTPILBCPayClass GstRTPILBCPayClass;
|
|||
|
||||
struct _GstRTPILBCPay
|
||||
{
|
||||
GstBaseRTPAudioPayload audiopayload;
|
||||
GstRTPBaseAudioPayload audiopayload;
|
||||
|
||||
gint mode;
|
||||
};
|
||||
|
||||
struct _GstRTPILBCPayClass
|
||||
{
|
||||
GstBaseRTPAudioPayloadClass parent_class;
|
||||
GstRTPBaseAudioPayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_ilbc_pay_get_type (void);
|
||||
|
|
|
@ -66,7 +66,7 @@ enum
|
|||
};
|
||||
|
||||
#define gst_rtp_j2k_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpJ2KDepay, gst_rtp_j2k_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpJ2KDepay, gst_rtp_j2k_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_j2k_depay_finalize (GObject * object);
|
||||
|
||||
|
@ -79,9 +79,9 @@ static GstStateChangeReturn
|
|||
gst_rtp_j2k_depay_change_state (GstElement * element,
|
||||
GstStateChange transition);
|
||||
|
||||
static gboolean gst_rtp_j2k_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_j2k_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_j2k_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_j2k_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
|
@ -89,11 +89,11 @@ gst_rtp_j2k_depay_class_init (GstRtpJ2KDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_j2k_depay_finalize;
|
||||
|
||||
|
@ -117,8 +117,8 @@ gst_rtp_j2k_depay_class_init (GstRtpJ2KDepayClass * klass)
|
|||
|
||||
gstelement_class->change_state = gst_rtp_j2k_depay_change_state;
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_j2k_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_j2k_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_j2k_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_j2k_depay_process;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpj2kdepay_debug, "rtpj2kdepay", 0,
|
||||
"J2K Video RTP Depayloader");
|
||||
|
@ -182,7 +182,7 @@ gst_rtp_j2k_depay_finalize (GObject * object)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_j2k_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_j2k_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
gint clock_rate;
|
||||
|
@ -212,7 +212,7 @@ gst_rtp_j2k_depay_clear_pu (GstRtpJ2KDepay * rtpj2kdepay)
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_j2k_depay_flush_pu (GstBaseRTPDepayload * depayload)
|
||||
gst_rtp_j2k_depay_flush_pu (GstRTPBaseDepayload * depayload)
|
||||
{
|
||||
GstRtpJ2KDepay *rtpj2kdepay;
|
||||
GstBuffer *mheader;
|
||||
|
@ -259,7 +259,7 @@ done:
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_j2k_depay_flush_tile (GstBaseRTPDepayload * depayload)
|
||||
gst_rtp_j2k_depay_flush_tile (GstRTPBaseDepayload * depayload)
|
||||
{
|
||||
GstRtpJ2KDepay *rtpj2kdepay;
|
||||
guint avail, mh_id;
|
||||
|
@ -364,7 +364,7 @@ invalid_tile:
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_j2k_depay_flush_frame (GstBaseRTPDepayload * depayload)
|
||||
gst_rtp_j2k_depay_flush_frame (GstRTPBaseDepayload * depayload)
|
||||
{
|
||||
GstRtpJ2KDepay *rtpj2kdepay;
|
||||
guint8 end[2];
|
||||
|
@ -417,13 +417,13 @@ gst_rtp_j2k_depay_flush_frame (GstBaseRTPDepayload * depayload)
|
|||
gst_buffer_list_iterator_add_list (it, list);
|
||||
gst_buffer_list_iterator_free (it);
|
||||
|
||||
ret = gst_base_rtp_depayload_push_list (depayload, buflist);
|
||||
ret = gst_rtp_base_depayload_push_list (depayload, buflist);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
GST_DEBUG_OBJECT (rtpj2kdepay, "pushing buffer of %u bytes", avail);
|
||||
outbuf = gst_adapter_take_buffer (rtpj2kdepay->f_adapter, avail);
|
||||
ret = gst_base_rtp_depayload_push (depayload, outbuf);
|
||||
ret = gst_rtp_base_depayload_push (depayload, outbuf);
|
||||
}
|
||||
} else {
|
||||
GST_WARNING_OBJECT (rtpj2kdepay, "empty packet");
|
||||
|
@ -445,7 +445,7 @@ done:
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_j2k_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_j2k_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpJ2KDepay *rtpj2kdepay;
|
||||
guint8 *payload;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpJ2KDepayClass GstRtpJ2KDepayClass;
|
|||
|
||||
struct _GstRtpJ2KDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
guint64 last_rtptime;
|
||||
guint last_mh_id;
|
||||
|
@ -64,7 +64,7 @@ struct _GstRtpJ2KDepay
|
|||
|
||||
struct _GstRtpJ2KDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_j2k_depay_get_type (void);
|
||||
|
|
|
@ -105,25 +105,25 @@ static void gst_rtp_j2k_pay_set_property (GObject * object, guint prop_id,
|
|||
static void gst_rtp_j2k_pay_get_property (GObject * object, guint prop_id,
|
||||
GValue * value, GParamSpec * pspec);
|
||||
|
||||
static gboolean gst_rtp_j2k_pay_setcaps (GstBaseRTPPayload * basepayload,
|
||||
static gboolean gst_rtp_j2k_pay_setcaps (GstRTPBasePayload * basepayload,
|
||||
GstCaps * caps);
|
||||
|
||||
static GstFlowReturn gst_rtp_j2k_pay_handle_buffer (GstBaseRTPPayload * pad,
|
||||
static GstFlowReturn gst_rtp_j2k_pay_handle_buffer (GstRTPBasePayload * pad,
|
||||
GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_j2k_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpJ2KPay, gst_rtp_j2k_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpJ2KPay, gst_rtp_j2k_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_j2k_pay_class_init (GstRtpJ2KPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_rtp_j2k_pay_set_property;
|
||||
gobject_class->get_property = gst_rtp_j2k_pay_get_property;
|
||||
|
@ -143,8 +143,8 @@ gst_rtp_j2k_pay_class_init (GstRtpJ2KPayClass * klass)
|
|||
"Payload-encodes JPEG 2000 pictures into RTP packets (RFC 5371)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_j2k_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_j2k_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_j2k_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_j2k_pay_handle_buffer;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpj2kpay_debug, "rtpj2kpay", 0,
|
||||
"JPEG 2000 RTP Payloader");
|
||||
|
@ -157,7 +157,7 @@ gst_rtp_j2k_pay_init (GstRtpJ2KPay * pay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_j2k_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
||||
gst_rtp_j2k_pay_setcaps (GstRTPBasePayload * basepayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *caps_structure = gst_caps_get_structure (caps, 0);
|
||||
GstRtpJ2KPay *pay;
|
||||
|
@ -174,9 +174,9 @@ gst_rtp_j2k_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
pay->width = width;
|
||||
}
|
||||
|
||||
gst_base_rtp_payload_set_options (basepayload, "video", TRUE, "JPEG2000",
|
||||
gst_rtp_base_payload_set_options (basepayload, "video", TRUE, "JPEG2000",
|
||||
90000);
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload, NULL);
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload, NULL);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
@ -325,7 +325,7 @@ find_pu_end (GstRtpJ2KPay * pay, const guint8 * data, guint size,
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_j2k_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_j2k_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpJ2KPay *pay;
|
||||
|
@ -342,7 +342,7 @@ gst_rtp_j2k_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
guint end, pos;
|
||||
|
||||
pay = GST_RTP_J2K_PAY (basepayload);
|
||||
mtu = GST_BASE_RTP_PAYLOAD_MTU (pay);
|
||||
mtu = GST_RTP_BASE_PAYLOAD_MTU (pay);
|
||||
|
||||
data = gst_buffer_map (buffer, &size, NULL, GST_MAP_READ);
|
||||
timestamp = GST_BUFFER_TIMESTAMP (buffer);
|
||||
|
@ -520,7 +520,7 @@ gst_rtp_j2k_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
memcpy (header + HEADER_SIZE, &data[offset], data_size);
|
||||
gst_rtp_buffer_unmap (&rtp);
|
||||
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
if (ret != GST_FLOW_OK)
|
||||
goto done;
|
||||
}
|
||||
|
@ -542,7 +542,7 @@ done:
|
|||
if (pay->buffer_list) {
|
||||
/* free iterator and push the whole buffer list at once */
|
||||
gst_buffer_list_iterator_free (it);
|
||||
ret = gst_base_rtp_payload_push_list (basepayload, list);
|
||||
ret = gst_rtp_base_payload_push_list (basepayload, list);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ typedef struct _GstRtpJ2KPayClass GstRtpJ2KPayClass;
|
|||
|
||||
struct _GstRtpJ2KPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
gboolean buffer_list;
|
||||
|
||||
|
@ -51,7 +51,7 @@ struct _GstRtpJ2KPay
|
|||
|
||||
struct _GstRtpJ2KPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_j2k_pay_get_type (void);
|
||||
|
|
|
@ -68,16 +68,16 @@ static GstStaticPadTemplate gst_rtp_jpeg_depay_sink_template =
|
|||
|
||||
#define gst_rtp_jpeg_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpJPEGDepay, gst_rtp_jpeg_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_jpeg_depay_finalize (GObject * object);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_jpeg_depay_change_state (GstElement *
|
||||
element, GstStateChange transition);
|
||||
|
||||
static gboolean gst_rtp_jpeg_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_jpeg_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_jpeg_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_jpeg_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
|
@ -85,11 +85,11 @@ gst_rtp_jpeg_depay_class_init (GstRtpJPEGDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_jpeg_depay_finalize;
|
||||
|
||||
|
@ -105,8 +105,8 @@ gst_rtp_jpeg_depay_class_init (GstRtpJPEGDepayClass * klass)
|
|||
|
||||
gstelement_class->change_state = gst_rtp_jpeg_depay_change_state;
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_jpeg_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_jpeg_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_jpeg_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_jpeg_depay_process;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpjpegdepay_debug, "rtpjpegdepay", 0,
|
||||
"JPEG Video RTP Depayloader");
|
||||
|
@ -412,7 +412,7 @@ MakeHeaders (guint8 * p, int type, int width, int height, guint8 * qt,
|
|||
};
|
||||
|
||||
static gboolean
|
||||
gst_rtp_jpeg_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_jpeg_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstRtpJPEGDepay *rtpjpegdepay;
|
||||
GstStructure *structure;
|
||||
|
@ -477,7 +477,7 @@ gst_rtp_jpeg_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_jpeg_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_jpeg_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpJPEGDepay *rtpjpegdepay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpJPEGDepayClass GstRtpJPEGDepayClass;
|
|||
|
||||
struct _GstRtpJPEGDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
gboolean discont;
|
||||
|
@ -58,7 +58,7 @@ struct _GstRtpJPEGDepay
|
|||
|
||||
struct _GstRtpJPEGDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_jpeg_depay_get_type (void);
|
||||
|
|
|
@ -230,25 +230,25 @@ static void gst_rtp_jpeg_pay_set_property (GObject * object, guint prop_id,
|
|||
static void gst_rtp_jpeg_pay_get_property (GObject * object, guint prop_id,
|
||||
GValue * value, GParamSpec * pspec);
|
||||
|
||||
static gboolean gst_rtp_jpeg_pay_setcaps (GstBaseRTPPayload * basepayload,
|
||||
static gboolean gst_rtp_jpeg_pay_setcaps (GstRTPBasePayload * basepayload,
|
||||
GstCaps * caps);
|
||||
|
||||
static GstFlowReturn gst_rtp_jpeg_pay_handle_buffer (GstBaseRTPPayload * pad,
|
||||
static GstFlowReturn gst_rtp_jpeg_pay_handle_buffer (GstRTPBasePayload * pad,
|
||||
GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_jpeg_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpJPEGPay, gst_rtp_jpeg_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpJPEGPay, gst_rtp_jpeg_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_jpeg_pay_class_init (GstRtpJPEGPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_rtp_jpeg_pay_set_property;
|
||||
gobject_class->get_property = gst_rtp_jpeg_pay_get_property;
|
||||
|
@ -263,8 +263,8 @@ gst_rtp_jpeg_pay_class_init (GstRtpJPEGPayClass * klass)
|
|||
"Payload-encodes JPEG pictures into RTP packets (RFC 2435)",
|
||||
"Axis Communications <dev-gstreamer@axis.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_jpeg_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_jpeg_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_jpeg_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_jpeg_pay_handle_buffer;
|
||||
|
||||
g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_JPEG_QUALITY,
|
||||
g_param_spec_int ("quality", "Quality",
|
||||
|
@ -295,7 +295,7 @@ gst_rtp_jpeg_pay_init (GstRtpJPEGPay * pay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_jpeg_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
||||
gst_rtp_jpeg_pay_setcaps (GstRTPBasePayload * basepayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *caps_structure = gst_caps_get_structure (caps, 0);
|
||||
GstRtpJPEGPay *pay;
|
||||
|
@ -318,8 +318,8 @@ gst_rtp_jpeg_pay_setcaps (GstBaseRTPPayload * basepayload, GstCaps * caps)
|
|||
}
|
||||
pay->width = width / 8;
|
||||
|
||||
gst_base_rtp_payload_set_options (basepayload, "video", TRUE, "JPEG", 90000);
|
||||
res = gst_base_rtp_payload_set_outcaps (basepayload, NULL);
|
||||
gst_rtp_base_payload_set_options (basepayload, "video", TRUE, "JPEG", 90000);
|
||||
res = gst_rtp_base_payload_set_outcaps (basepayload, NULL);
|
||||
|
||||
return res;
|
||||
|
||||
|
@ -595,7 +595,7 @@ gst_rtp_jpeg_pay_scan_marker (const guint8 * data, guint size, guint * offset)
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_jpeg_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_jpeg_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpJPEGPay *pay;
|
||||
|
@ -619,7 +619,7 @@ gst_rtp_jpeg_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
GstBufferList *list = NULL;
|
||||
|
||||
pay = GST_RTP_JPEG_PAY (basepayload);
|
||||
mtu = GST_BASE_RTP_PAYLOAD_MTU (pay);
|
||||
mtu = GST_RTP_BASE_PAYLOAD_MTU (pay);
|
||||
|
||||
data = bdata = gst_buffer_map (buffer, &size, NULL, GST_MAP_READ);
|
||||
timestamp = GST_BUFFER_TIMESTAMP (buffer);
|
||||
|
@ -819,7 +819,7 @@ gst_rtp_jpeg_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
/* and add to list */
|
||||
gst_buffer_list_insert (list, -1, outbuf);
|
||||
} else {
|
||||
ret = gst_base_rtp_payload_push (basepayload, outbuf);
|
||||
ret = gst_rtp_base_payload_push (basepayload, outbuf);
|
||||
if (ret != GST_FLOW_OK)
|
||||
break;
|
||||
}
|
||||
|
@ -832,7 +832,7 @@ gst_rtp_jpeg_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
if (pay->buffer_list) {
|
||||
/* push the whole buffer list at once */
|
||||
ret = gst_base_rtp_payload_push_list (basepayload, list);
|
||||
ret = gst_rtp_base_payload_push_list (basepayload, list);
|
||||
}
|
||||
|
||||
gst_buffer_unmap (buffer, bdata, -1);
|
||||
|
|
|
@ -39,7 +39,7 @@ typedef struct _GstRtpJPEGPayClass GstRtpJPEGPayClass;
|
|||
|
||||
struct _GstRtpJPEGPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
guint8 quality;
|
||||
guint8 type;
|
||||
|
@ -54,7 +54,7 @@ struct _GstRtpJPEGPay
|
|||
|
||||
struct _GstRtpJPEGPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_jpeg_pay_get_type (void);
|
||||
|
|
|
@ -63,24 +63,24 @@ static GstStaticPadTemplate gst_rtp_mp1s_depay_sink_template =
|
|||
);
|
||||
|
||||
G_DEFINE_TYPE (GstRtpMP1SDepay, gst_rtp_mp1s_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static gboolean gst_rtp_mp1s_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_mp1s_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mp1s_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_mp1s_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
gst_rtp_mp1s_depay_class_init (GstRtpMP1SDepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_mp1s_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mp1s_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mp1s_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mp1s_depay_setcaps;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mp1s_depay_src_template));
|
||||
|
@ -99,7 +99,7 @@ gst_rtp_mp1s_depay_init (GstRtpMP1SDepay * rtpmp1sdepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp1s_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_mp1s_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstCaps *srccaps;
|
||||
GstStructure *structure;
|
||||
|
@ -113,14 +113,14 @@ gst_rtp_mp1s_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
|
||||
srccaps = gst_caps_new_simple ("video/mpeg",
|
||||
"systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
|
||||
res = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
res = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mp1s_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_mp1s_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstBuffer *outbuf;
|
||||
GstRTPBuffer rtp;
|
||||
|
|
|
@ -41,12 +41,12 @@ typedef struct _GstRtpMP1SDepayClass GstRtpMP1SDepayClass;
|
|||
|
||||
struct _GstRtpMP1SDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
};
|
||||
|
||||
struct _GstRtpMP1SDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp1s_depay_get_type (void);
|
||||
|
|
|
@ -69,11 +69,11 @@ static GstStaticPadTemplate gst_rtp_mp2t_depay_sink_template =
|
|||
);
|
||||
|
||||
G_DEFINE_TYPE (GstRtpMP2TDepay, gst_rtp_mp2t_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static gboolean gst_rtp_mp2t_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_mp2t_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mp2t_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_mp2t_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void gst_rtp_mp2t_depay_set_property (GObject * object, guint prop_id,
|
||||
|
@ -86,14 +86,14 @@ gst_rtp_mp2t_depay_class_init (GstRtpMP2TDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_mp2t_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mp2t_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mp2t_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mp2t_depay_setcaps;
|
||||
|
||||
gobject_class->set_property = gst_rtp_mp2t_depay_set_property;
|
||||
gobject_class->get_property = gst_rtp_mp2t_depay_get_property;
|
||||
|
@ -124,7 +124,7 @@ gst_rtp_mp2t_depay_init (GstRtpMP2TDepay * rtpmp2tdepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp2t_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_mp2t_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstCaps *srccaps;
|
||||
GstStructure *structure;
|
||||
|
@ -139,14 +139,14 @@ gst_rtp_mp2t_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
srccaps = gst_caps_new_simple ("video/mpegts",
|
||||
"packetsize", G_TYPE_INT, 188,
|
||||
"systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
|
||||
res = gst_pad_set_caps (GST_BASE_RTP_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
res = gst_pad_set_caps (GST_RTP_BASE_DEPAYLOAD_SRCPAD (depayload), srccaps);
|
||||
gst_caps_unref (srccaps);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mp2t_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_mp2t_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpMP2TDepay *rtpmp2tdepay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -41,14 +41,14 @@ typedef struct _GstRtpMP2TDepayClass GstRtpMP2TDepayClass;
|
|||
|
||||
struct _GstRtpMP2TDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
guint8 skip_first_bytes;
|
||||
};
|
||||
|
||||
struct _GstRtpMP2TDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp2t_depay_get_type (void);
|
||||
|
|
|
@ -45,31 +45,31 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
"clock-rate = (int) 90000, " "encoding-name = (string) \"MP2T\"")
|
||||
);
|
||||
|
||||
static gboolean gst_rtp_mp2t_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_mp2t_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_mp2t_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_mp2t_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
static GstFlowReturn gst_rtp_mp2t_pay_flush (GstRTPMP2TPay * rtpmp2tpay);
|
||||
static void gst_rtp_mp2t_pay_finalize (GObject * object);
|
||||
|
||||
#define gst_rtp_mp2t_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRTPMP2TPay, gst_rtp_mp2t_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRTPMP2TPay, gst_rtp_mp2t_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_mp2t_pay_class_init (GstRTPMP2TPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mp2t_pay_finalize;
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_mp2t_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_mp2t_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_mp2t_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_mp2t_pay_handle_buffer;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mp2t_pay_sink_template));
|
||||
|
@ -84,8 +84,8 @@ gst_rtp_mp2t_pay_class_init (GstRTPMP2TPayClass * klass)
|
|||
static void
|
||||
gst_rtp_mp2t_pay_init (GstRTPMP2TPay * rtpmp2tpay)
|
||||
{
|
||||
GST_BASE_RTP_PAYLOAD (rtpmp2tpay)->clock_rate = 90000;
|
||||
GST_BASE_RTP_PAYLOAD_PT (rtpmp2tpay) = GST_RTP_PAYLOAD_MP2T;
|
||||
GST_RTP_BASE_PAYLOAD (rtpmp2tpay)->clock_rate = 90000;
|
||||
GST_RTP_BASE_PAYLOAD_PT (rtpmp2tpay) = GST_RTP_PAYLOAD_MP2T;
|
||||
|
||||
rtpmp2tpay->adapter = gst_adapter_new ();
|
||||
}
|
||||
|
@ -104,12 +104,12 @@ gst_rtp_mp2t_pay_finalize (GObject * object)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp2t_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_mp2t_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "video", TRUE, "MP2T", 90000);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
gst_rtp_base_payload_set_options (payload, "video", TRUE, "MP2T", 90000);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
@ -140,7 +140,7 @@ gst_rtp_mp2t_pay_flush (GstRTPMP2TPay * rtpmp2tpay)
|
|||
GST_DEBUG_OBJECT (rtpmp2tpay, "pushing buffer of size %d",
|
||||
gst_buffer_get_size (outbuf));
|
||||
|
||||
ret = gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtpmp2tpay), outbuf);
|
||||
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpmp2tpay), outbuf);
|
||||
|
||||
/* flush the adapter content */
|
||||
gst_adapter_flush (rtpmp2tpay->adapter, avail);
|
||||
|
@ -149,7 +149,7 @@ gst_rtp_mp2t_pay_flush (GstRTPMP2TPay * rtpmp2tpay)
|
|||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_mp2t_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_mp2t_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRTPMP2TPay *rtpmp2tpay;
|
||||
|
@ -178,7 +178,7 @@ gst_rtp_mp2t_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
/* if this buffer is going to overflow the packet, flush what we
|
||||
* have. */
|
||||
if (gst_base_rtp_payload_is_filled (basepayload,
|
||||
if (gst_rtp_base_payload_is_filled (basepayload,
|
||||
packet_len, rtpmp2tpay->duration + duration)) {
|
||||
ret = gst_rtp_mp2t_pay_flush (rtpmp2tpay);
|
||||
rtpmp2tpay->first_ts = timestamp;
|
||||
|
|
|
@ -43,7 +43,7 @@ typedef struct _GstRTPMP2TPayClass GstRTPMP2TPayClass;
|
|||
|
||||
struct _GstRTPMP2TPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime first_ts;
|
||||
|
@ -52,7 +52,7 @@ struct _GstRTPMP2TPay
|
|||
|
||||
struct _GstRTPMP2TPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp2t_pay_get_type (void);
|
||||
|
|
|
@ -58,13 +58,13 @@ GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
|
||||
#define gst_rtp_mp4a_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMP4ADepay, gst_rtp_mp4a_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_mp4a_depay_finalize (GObject * object);
|
||||
|
||||
static gboolean gst_rtp_mp4a_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_mp4a_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mp4a_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_mp4a_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_mp4a_depay_change_state (GstElement *
|
||||
|
@ -76,18 +76,18 @@ gst_rtp_mp4a_depay_class_init (GstRtpMP4ADepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mp4a_depay_finalize;
|
||||
|
||||
gstelement_class->change_state = gst_rtp_mp4a_depay_change_state;
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_mp4a_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mp4a_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mp4a_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mp4a_depay_setcaps;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mp4a_depay_src_template));
|
||||
|
@ -128,7 +128,7 @@ static const guint aac_sample_rates[] = { 96000, 88200, 64000, 48000,
|
|||
};
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4a_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_mp4a_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstRtpMP4ADepay *rtpmp4adepay;
|
||||
|
@ -288,7 +288,7 @@ gst_rtp_mp4a_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mp4a_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_mp4a_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpMP4ADepay *rtpmp4adepay;
|
||||
GstBuffer *outbuf;
|
||||
|
@ -367,7 +367,7 @@ gst_rtp_mp4a_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
|||
avail -= skip;
|
||||
|
||||
GST_BUFFER_TIMESTAMP (tmp) = timestamp;
|
||||
gst_base_rtp_depayload_push (depayload, tmp);
|
||||
gst_rtp_base_depayload_push (depayload, tmp);
|
||||
|
||||
/* shift ts for next buffers */
|
||||
if (rtpmp4adepay->frame_len && timestamp != -1
|
||||
|
|
|
@ -41,7 +41,7 @@ typedef struct _GstRtpMP4ADepayClass GstRtpMP4ADepayClass;
|
|||
|
||||
struct _GstRtpMP4ADepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
GstAdapter *adapter;
|
||||
guint8 numSubFrames;
|
||||
guint frame_len;
|
||||
|
@ -49,7 +49,7 @@ struct _GstRtpMP4ADepay
|
|||
|
||||
struct _GstRtpMP4ADepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp4a_depay_get_type (void);
|
||||
|
|
|
@ -59,28 +59,28 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
|||
|
||||
static void gst_rtp_mp4a_pay_finalize (GObject * object);
|
||||
|
||||
static gboolean gst_rtp_mp4a_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_mp4a_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_mp4a_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_mp4a_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_mp4a_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMP4APay, gst_rtp_mp4a_pay, GST_TYPE_BASE_RTP_PAYLOAD)
|
||||
G_DEFINE_TYPE (GstRtpMP4APay, gst_rtp_mp4a_pay, GST_TYPE_RTP_BASE_PAYLOAD)
|
||||
|
||||
static void gst_rtp_mp4a_pay_class_init (GstRtpMP4APayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mp4a_pay_finalize;
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_mp4a_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_mp4a_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_mp4a_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_mp4a_pay_handle_buffer;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mp4a_pay_src_template));
|
||||
|
@ -228,7 +228,7 @@ gst_rtp_mp4a_pay_new_caps (GstRtpMP4APay * rtpmp4apay)
|
|||
gst_value_set_buffer (&v, rtpmp4apay->config);
|
||||
config = gst_value_serialize (&v);
|
||||
|
||||
res = gst_base_rtp_payload_set_outcaps (GST_BASE_RTP_PAYLOAD (rtpmp4apay),
|
||||
res = gst_rtp_base_payload_set_outcaps (GST_RTP_BASE_PAYLOAD (rtpmp4apay),
|
||||
"cpresent", G_TYPE_STRING, "0", "config", G_TYPE_STRING, config, NULL);
|
||||
|
||||
g_value_unset (&v);
|
||||
|
@ -238,7 +238,7 @@ gst_rtp_mp4a_pay_new_caps (GstRtpMP4APay * rtpmp4apay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4a_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_mp4a_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
GstRtpMP4APay *rtpmp4apay;
|
||||
GstStructure *structure;
|
||||
|
@ -321,7 +321,7 @@ gst_rtp_mp4a_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
GST_WARNING_OBJECT (payload, "Need framed AAC data as input!");
|
||||
}
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "audio", TRUE, "MP4A-LATM",
|
||||
gst_rtp_base_payload_set_options (payload, "audio", TRUE, "MP4A-LATM",
|
||||
rtpmp4apay->rate);
|
||||
|
||||
res = gst_rtp_mp4a_pay_new_caps (rtpmp4apay);
|
||||
|
@ -339,7 +339,7 @@ config_failed:
|
|||
/* we expect buffers as exactly one complete AU
|
||||
*/
|
||||
static GstFlowReturn
|
||||
gst_rtp_mp4a_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_mp4a_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpMP4APay *rtpmp4apay;
|
||||
|
@ -359,7 +359,7 @@ gst_rtp_mp4a_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
timestamp = GST_BUFFER_TIMESTAMP (buffer);
|
||||
|
||||
fragmented = FALSE;
|
||||
mtu = GST_BASE_RTP_PAYLOAD_MTU (rtpmp4apay);
|
||||
mtu = GST_RTP_BASE_PAYLOAD_MTU (rtpmp4apay);
|
||||
|
||||
while (size > 0) {
|
||||
guint towrite;
|
||||
|
@ -423,7 +423,7 @@ gst_rtp_mp4a_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
/* copy incomming timestamp (if any) to outgoing buffers */
|
||||
GST_BUFFER_TIMESTAMP (outbuf) = timestamp;
|
||||
|
||||
ret = gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtpmp4apay), outbuf);
|
||||
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpmp4apay), outbuf);
|
||||
|
||||
fragmented = TRUE;
|
||||
}
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpMP4APayClass GstRtpMP4APayClass;
|
|||
|
||||
struct _GstRtpMP4APay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
gint rate;
|
||||
gchar *params;
|
||||
|
@ -53,7 +53,7 @@ struct _GstRtpMP4APay
|
|||
|
||||
struct _GstRtpMP4APayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp4a_pay_get_type (void);
|
||||
|
|
|
@ -128,15 +128,15 @@ gst_bs_parse_read (GstBsParse * bs, guint n)
|
|||
|
||||
#define gst_rtp_mp4g_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMP4GDepay, gst_rtp_mp4g_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_mp4g_depay_finalize (GObject * object);
|
||||
|
||||
static gboolean gst_rtp_mp4g_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_mp4g_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mp4g_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_mp4g_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
static gboolean gst_rtp_mp4g_depay_handle_event (GstBaseRTPDepayload * filter,
|
||||
static gboolean gst_rtp_mp4g_depay_handle_event (GstRTPBaseDepayload * filter,
|
||||
GstEvent * event);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_mp4g_depay_change_state (GstElement *
|
||||
|
@ -148,19 +148,19 @@ gst_rtp_mp4g_depay_class_init (GstRtpMP4GDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mp4g_depay_finalize;
|
||||
|
||||
gstelement_class->change_state = gst_rtp_mp4g_depay_change_state;
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_mp4g_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mp4g_depay_setcaps;
|
||||
gstbasertpdepayload_class->handle_event = gst_rtp_mp4g_depay_handle_event;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mp4g_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mp4g_depay_setcaps;
|
||||
gstrtpbasedepayload_class->handle_event = gst_rtp_mp4g_depay_handle_event;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mp4g_depay_src_template));
|
||||
|
@ -215,7 +215,7 @@ gst_rtp_mp4g_depay_parse_int (GstStructure * structure, const gchar * field,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4g_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_mp4g_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstRtpMP4GDepay *rtpmp4gdepay;
|
||||
|
@ -348,7 +348,7 @@ gst_rtp_mp4g_depay_flush_queue (GstRtpMP4GDepay * rtpmp4gdepay)
|
|||
}
|
||||
|
||||
GST_DEBUG_OBJECT (rtpmp4gdepay, "pushing AU_index %u", AU_index);
|
||||
gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtpmp4gdepay), outbuf);
|
||||
gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtpmp4gdepay), outbuf);
|
||||
rtpmp4gdepay->next_AU_index = AU_index + 1;
|
||||
}
|
||||
}
|
||||
|
@ -368,7 +368,7 @@ gst_rtp_mp4g_depay_queue (GstRtpMP4GDepay * rtpmp4gdepay, GstBuffer * outbuf)
|
|||
|
||||
/* we received the expected packet, push it and flush as much as we can from
|
||||
* the queue */
|
||||
gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtpmp4gdepay), outbuf);
|
||||
gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtpmp4gdepay), outbuf);
|
||||
rtpmp4gdepay->next_AU_index++;
|
||||
|
||||
while ((outbuf = g_queue_peek_head (rtpmp4gdepay->packets))) {
|
||||
|
@ -380,7 +380,7 @@ gst_rtp_mp4g_depay_queue (GstRtpMP4GDepay * rtpmp4gdepay, GstBuffer * outbuf)
|
|||
GST_DEBUG_OBJECT (rtpmp4gdepay, "pushing expected AU_index %u",
|
||||
AU_index);
|
||||
outbuf = g_queue_pop_head (rtpmp4gdepay->packets);
|
||||
gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtpmp4gdepay),
|
||||
gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtpmp4gdepay),
|
||||
outbuf);
|
||||
rtpmp4gdepay->next_AU_index++;
|
||||
} else {
|
||||
|
@ -419,7 +419,7 @@ gst_rtp_mp4g_depay_queue (GstRtpMP4GDepay * rtpmp4gdepay, GstBuffer * outbuf)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mp4g_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_mp4g_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpMP4GDepay *rtpmp4gdepay;
|
||||
GstBuffer *outbuf = NULL;
|
||||
|
@ -718,7 +718,7 @@ short_payload:
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4g_depay_handle_event (GstBaseRTPDepayload * filter, GstEvent * event)
|
||||
gst_rtp_mp4g_depay_handle_event (GstRTPBaseDepayload * filter, GstEvent * event)
|
||||
{
|
||||
gboolean ret;
|
||||
GstRtpMP4GDepay *rtpmp4gdepay;
|
||||
|
@ -734,7 +734,7 @@ gst_rtp_mp4g_depay_handle_event (GstBaseRTPDepayload * filter, GstEvent * event)
|
|||
}
|
||||
|
||||
ret =
|
||||
GST_BASE_RTP_DEPAYLOAD_CLASS (parent_class)->handle_event (filter, event);
|
||||
GST_RTP_BASE_DEPAYLOAD_CLASS (parent_class)->handle_event (filter, event);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpMP4GDepayClass GstRtpMP4GDepayClass;
|
|||
|
||||
struct _GstRtpMP4GDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
gint profile_level_id;
|
||||
gint streamtype;
|
||||
|
@ -74,7 +74,7 @@ struct _GstRtpMP4GDepay
|
|||
|
||||
struct _GstRtpMP4GDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp4g_depay_get_type (void);
|
||||
|
|
|
@ -78,33 +78,33 @@ static void gst_rtp_mp4g_pay_finalize (GObject * object);
|
|||
static GstStateChangeReturn gst_rtp_mp4g_pay_change_state (GstElement * element,
|
||||
GstStateChange transition);
|
||||
|
||||
static gboolean gst_rtp_mp4g_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_mp4g_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_mp4g_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_mp4g_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
static gboolean gst_rtp_mp4g_pay_handle_event (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_mp4g_pay_handle_event (GstRTPBasePayload * payload,
|
||||
GstEvent * event);
|
||||
|
||||
#define gst_rtp_mp4g_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMP4GPay, gst_rtp_mp4g_pay, GST_TYPE_BASE_RTP_PAYLOAD)
|
||||
G_DEFINE_TYPE (GstRtpMP4GPay, gst_rtp_mp4g_pay, GST_TYPE_RTP_BASE_PAYLOAD)
|
||||
|
||||
static void gst_rtp_mp4g_pay_class_init (GstRtpMP4GPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mp4g_pay_finalize;
|
||||
|
||||
gstelement_class->change_state = gst_rtp_mp4g_pay_change_state;
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_mp4g_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_mp4g_pay_handle_buffer;
|
||||
gstbasertppayload_class->handle_event = gst_rtp_mp4g_pay_handle_event;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_mp4g_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_mp4g_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->handle_event = gst_rtp_mp4g_pay_handle_event;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mp4g_pay_src_template));
|
||||
|
@ -370,10 +370,10 @@ gst_rtp_mp4g_pay_new_caps (GstRtpMP4GPay * rtpmp4gpay)
|
|||
|
||||
/* hmm, silly */
|
||||
if (rtpmp4gpay->params) {
|
||||
res = gst_base_rtp_payload_set_outcaps (GST_BASE_RTP_PAYLOAD (rtpmp4gpay),
|
||||
res = gst_rtp_base_payload_set_outcaps (GST_RTP_BASE_PAYLOAD (rtpmp4gpay),
|
||||
"encoding-params", G_TYPE_STRING, rtpmp4gpay->params, MP4GCAPS);
|
||||
} else {
|
||||
res = gst_base_rtp_payload_set_outcaps (GST_BASE_RTP_PAYLOAD (rtpmp4gpay),
|
||||
res = gst_rtp_base_payload_set_outcaps (GST_RTP_BASE_PAYLOAD (rtpmp4gpay),
|
||||
MP4GCAPS);
|
||||
}
|
||||
|
||||
|
@ -385,7 +385,7 @@ gst_rtp_mp4g_pay_new_caps (GstRtpMP4GPay * rtpmp4gpay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4g_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_mp4g_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
GstRtpMP4GPay *rtpmp4gpay;
|
||||
GstStructure *structure;
|
||||
|
@ -432,7 +432,7 @@ gst_rtp_mp4g_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
if (media_type == NULL)
|
||||
goto config_failed;
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, media_type, TRUE, "MPEG4-GENERIC",
|
||||
gst_rtp_base_payload_set_options (payload, media_type, TRUE, "MPEG4-GENERIC",
|
||||
rtpmp4gpay->rate);
|
||||
|
||||
res = gst_rtp_mp4g_pay_new_caps (rtpmp4gpay);
|
||||
|
@ -463,7 +463,7 @@ gst_rtp_mp4g_pay_flush (GstRtpMP4GPay * rtpmp4gpay)
|
|||
total = avail = gst_adapter_available (rtpmp4gpay->adapter);
|
||||
|
||||
ret = GST_FLOW_OK;
|
||||
mtu = GST_BASE_RTP_PAYLOAD_MTU (rtpmp4gpay);
|
||||
mtu = GST_RTP_BASE_PAYLOAD_MTU (rtpmp4gpay);
|
||||
|
||||
while (avail > 0) {
|
||||
guint towrite;
|
||||
|
@ -545,7 +545,7 @@ gst_rtp_mp4g_pay_flush (GstRtpMP4GPay * rtpmp4gpay)
|
|||
rtpmp4gpay->offset += rtpmp4gpay->frame_len;
|
||||
}
|
||||
|
||||
ret = gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtpmp4gpay), outbuf);
|
||||
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpmp4gpay), outbuf);
|
||||
|
||||
avail -= payload_len;
|
||||
}
|
||||
|
@ -556,7 +556,7 @@ gst_rtp_mp4g_pay_flush (GstRtpMP4GPay * rtpmp4gpay)
|
|||
/* we expect buffers as exactly one complete AU
|
||||
*/
|
||||
static GstFlowReturn
|
||||
gst_rtp_mp4g_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_mp4g_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpMP4GPay *rtpmp4gpay;
|
||||
|
@ -573,7 +573,7 @@ gst_rtp_mp4g_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4g_pay_handle_event (GstBaseRTPPayload * payload, GstEvent * event)
|
||||
gst_rtp_mp4g_pay_handle_event (GstRTPBasePayload * payload, GstEvent * event)
|
||||
{
|
||||
GstRtpMP4GPay *rtpmp4gpay;
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpMP4GPayClass GstRtpMP4GPayClass;
|
|||
|
||||
struct _GstRtpMP4GPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime first_timestamp;
|
||||
|
@ -61,7 +61,7 @@ struct _GstRtpMP4GPay
|
|||
|
||||
struct _GstRtpMP4GPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp4g_pay_get_type (void);
|
||||
|
|
|
@ -55,13 +55,13 @@ GST_STATIC_PAD_TEMPLATE ("sink",
|
|||
|
||||
#define gst_rtp_mp4v_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMP4VDepay, gst_rtp_mp4v_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static void gst_rtp_mp4v_depay_finalize (GObject * object);
|
||||
|
||||
static gboolean gst_rtp_mp4v_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_mp4v_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mp4v_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_mp4v_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_mp4v_depay_change_state (GstElement *
|
||||
|
@ -72,18 +72,18 @@ gst_rtp_mp4v_depay_class_init (GstRtpMP4VDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mp4v_depay_finalize;
|
||||
|
||||
gstelement_class->change_state = gst_rtp_mp4v_depay_change_state;
|
||||
|
||||
gstbasertpdepayload_class->process = gst_rtp_mp4v_depay_process;
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mp4v_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mp4v_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mp4v_depay_setcaps;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mp4v_depay_src_template));
|
||||
|
@ -119,7 +119,7 @@ gst_rtp_mp4v_depay_finalize (GObject * object)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4v_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_mp4v_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstCaps *srccaps;
|
||||
|
@ -160,7 +160,7 @@ gst_rtp_mp4v_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mp4v_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_mp4v_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpMP4VDepay *rtpmp4vdepay;
|
||||
GstBuffer *outbuf = NULL;
|
||||
|
|
|
@ -42,14 +42,14 @@ typedef struct _GstRtpMP4VDepayClass GstRtpMP4VDepayClass;
|
|||
|
||||
struct _GstRtpMP4VDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
};
|
||||
|
||||
struct _GstRtpMP4VDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp4v_depay_get_type (void);
|
||||
|
|
|
@ -74,25 +74,25 @@ static void gst_rtp_mp4v_pay_set_property (GObject * object, guint prop_id,
|
|||
static void gst_rtp_mp4v_pay_get_property (GObject * object, guint prop_id,
|
||||
GValue * value, GParamSpec * pspec);
|
||||
|
||||
static gboolean gst_rtp_mp4v_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_mp4v_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static GstFlowReturn gst_rtp_mp4v_pay_handle_buffer (GstBaseRTPPayload *
|
||||
static GstFlowReturn gst_rtp_mp4v_pay_handle_buffer (GstRTPBasePayload *
|
||||
payload, GstBuffer * buffer);
|
||||
static gboolean gst_rtp_mp4v_pay_handle_event (GstBaseRTPPayload * pay,
|
||||
static gboolean gst_rtp_mp4v_pay_handle_event (GstRTPBasePayload * pay,
|
||||
GstEvent * event);
|
||||
|
||||
#define gst_rtp_mp4v_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMP4VPay, gst_rtp_mp4v_pay, GST_TYPE_BASE_RTP_PAYLOAD)
|
||||
G_DEFINE_TYPE (GstRtpMP4VPay, gst_rtp_mp4v_pay, GST_TYPE_RTP_BASE_PAYLOAD)
|
||||
|
||||
static void gst_rtp_mp4v_pay_class_init (GstRtpMP4VPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->set_property = gst_rtp_mp4v_pay_set_property;
|
||||
gobject_class->get_property = gst_rtp_mp4v_pay_get_property;
|
||||
|
@ -128,9 +128,9 @@ G_DEFINE_TYPE (GstRtpMP4VPay, gst_rtp_mp4v_pay, GST_TYPE_BASE_RTP_PAYLOAD)
|
|||
|
||||
gobject_class->finalize = gst_rtp_mp4v_pay_finalize;
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_mp4v_pay_setcaps;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_mp4v_pay_handle_buffer;
|
||||
gstbasertppayload_class->handle_event = gst_rtp_mp4v_pay_handle_event;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_mp4v_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_mp4v_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->handle_event = gst_rtp_mp4v_pay_handle_event;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpmp4vpay_debug, "rtpmp4vpay", 0,
|
||||
"MP4 video RTP Payloader");
|
||||
|
@ -180,7 +180,7 @@ gst_rtp_mp4v_pay_new_caps (GstRtpMP4VPay * rtpmp4vpay)
|
|||
gst_value_set_buffer (&v, rtpmp4vpay->config);
|
||||
config = gst_value_serialize (&v);
|
||||
|
||||
res = gst_base_rtp_payload_set_outcaps (GST_BASE_RTP_PAYLOAD (rtpmp4vpay),
|
||||
res = gst_rtp_base_payload_set_outcaps (GST_RTP_BASE_PAYLOAD (rtpmp4vpay),
|
||||
"profile-level-id", G_TYPE_STRING, profile,
|
||||
"config", G_TYPE_STRING, config, NULL);
|
||||
|
||||
|
@ -193,7 +193,7 @@ gst_rtp_mp4v_pay_new_caps (GstRtpMP4VPay * rtpmp4vpay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4v_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_mp4v_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
GstRtpMP4VPay *rtpmp4vpay;
|
||||
GstStructure *structure;
|
||||
|
@ -202,7 +202,7 @@ gst_rtp_mp4v_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
|||
|
||||
rtpmp4vpay = GST_RTP_MP4V_PAY (payload);
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "video", TRUE, "MP4V-ES",
|
||||
gst_rtp_base_payload_set_options (payload, "video", TRUE, "MP4V-ES",
|
||||
rtpmp4vpay->rate);
|
||||
|
||||
res = TRUE;
|
||||
|
@ -284,7 +284,7 @@ gst_rtp_mp4v_pay_flush (GstRtpMP4VPay * rtpmp4vpay)
|
|||
packet_len = gst_rtp_buffer_calc_packet_len (avail, 0, 0);
|
||||
|
||||
/* fill one MTU or all available bytes */
|
||||
towrite = MIN (packet_len, GST_BASE_RTP_PAYLOAD_MTU (rtpmp4vpay));
|
||||
towrite = MIN (packet_len, GST_RTP_BASE_PAYLOAD_MTU (rtpmp4vpay));
|
||||
|
||||
/* this is the payload length */
|
||||
payload_len = gst_rtp_buffer_calc_payload_len (towrite, 0, 0);
|
||||
|
@ -311,14 +311,14 @@ gst_rtp_mp4v_pay_flush (GstRtpMP4VPay * rtpmp4vpay)
|
|||
gst_buffer_list_insert (list, -1, outbuf);
|
||||
} else {
|
||||
ret =
|
||||
gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtpmp4vpay), outbuf);
|
||||
gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpmp4vpay), outbuf);
|
||||
}
|
||||
}
|
||||
|
||||
if (rtpmp4vpay->buffer_list) {
|
||||
/* push the whole buffer list at once */
|
||||
ret =
|
||||
gst_base_rtp_payload_push_list (GST_BASE_RTP_PAYLOAD (rtpmp4vpay),
|
||||
gst_rtp_base_payload_push_list (GST_RTP_BASE_PAYLOAD (rtpmp4vpay),
|
||||
list);
|
||||
}
|
||||
|
||||
|
@ -438,7 +438,7 @@ gst_rtp_mp4v_pay_depay_data (GstRtpMP4VPay * enc, guint8 * data, guint size,
|
|||
/* we expect buffers starting on startcodes.
|
||||
*/
|
||||
static GstFlowReturn
|
||||
gst_rtp_mp4v_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_mp4v_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpMP4VPay *rtpmp4vpay;
|
||||
|
@ -563,7 +563,7 @@ gst_rtp_mp4v_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
/* get packet length of data and see if we exceeded MTU. */
|
||||
packet_len = gst_rtp_buffer_calc_packet_len (avail + size, 0, 0);
|
||||
|
||||
if (gst_base_rtp_payload_is_filled (basepayload,
|
||||
if (gst_rtp_base_payload_is_filled (basepayload,
|
||||
packet_len, rtpmp4vpay->duration + duration)) {
|
||||
ret = gst_rtp_mp4v_pay_flush (rtpmp4vpay);
|
||||
rtpmp4vpay->first_timestamp = timestamp;
|
||||
|
@ -579,7 +579,7 @@ gst_rtp_mp4v_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mp4v_pay_handle_event (GstBaseRTPPayload * pay, GstEvent * event)
|
||||
gst_rtp_mp4v_pay_handle_event (GstRTPBasePayload * pay, GstEvent * event)
|
||||
{
|
||||
GstRtpMP4VPay *rtpmp4vpay;
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpMP4VPayClass GstRtpMP4VPayClass;
|
|||
|
||||
struct _GstRtpMP4VPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime first_timestamp;
|
||||
|
@ -64,7 +64,7 @@ struct _GstRtpMP4VPay
|
|||
|
||||
struct _GstRtpMP4VPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mp4v_pay_get_type (void);
|
||||
|
|
|
@ -51,24 +51,24 @@ static GstStaticPadTemplate gst_rtp_mpa_depay_sink_template =
|
|||
);
|
||||
|
||||
#define gst_rtp_mpa_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMPADepay, gst_rtp_mpa_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpMPADepay, gst_rtp_mpa_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static gboolean gst_rtp_mpa_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_mpa_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mpa_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_mpa_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
gst_rtp_mpa_depay_class_init (GstRtpMPADepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpmpadepay_debug, "rtpmpadepay", 0,
|
||||
"MPEG Audio RTP Depayloader");
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mpa_depay_src_template));
|
||||
|
@ -80,8 +80,8 @@ gst_rtp_mpa_depay_class_init (GstRtpMPADepayClass * klass)
|
|||
"Extracts MPEG audio from RTP packets (RFC 2038)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mpa_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_mpa_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mpa_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mpa_depay_process;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -91,7 +91,7 @@ gst_rtp_mpa_depay_init (GstRtpMPADepay * rtpmpadepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mpa_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_mpa_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
GstCaps *outcaps;
|
||||
|
@ -113,7 +113,7 @@ gst_rtp_mpa_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mpa_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_mpa_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpMPADepay *rtpmpadepay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -41,12 +41,12 @@ typedef struct _GstRtpMPADepayClass GstRtpMPADepayClass;
|
|||
|
||||
struct _GstRtpMPADepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
};
|
||||
|
||||
struct _GstRtpMPADepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mpa_depay_get_type (void);
|
||||
|
|
|
@ -56,30 +56,30 @@ static void gst_rtp_mpa_pay_finalize (GObject * object);
|
|||
static GstStateChangeReturn gst_rtp_mpa_pay_change_state (GstElement * element,
|
||||
GstStateChange transition);
|
||||
|
||||
static gboolean gst_rtp_mpa_pay_setcaps (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_mpa_pay_setcaps (GstRTPBasePayload * payload,
|
||||
GstCaps * caps);
|
||||
static gboolean gst_rtp_mpa_pay_handle_event (GstBaseRTPPayload * payload,
|
||||
static gboolean gst_rtp_mpa_pay_handle_event (GstRTPBasePayload * payload,
|
||||
GstEvent * event);
|
||||
static GstFlowReturn gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay);
|
||||
static GstFlowReturn gst_rtp_mpa_pay_handle_buffer (GstBaseRTPPayload * payload,
|
||||
static GstFlowReturn gst_rtp_mpa_pay_handle_buffer (GstRTPBasePayload * payload,
|
||||
GstBuffer * buffer);
|
||||
|
||||
#define gst_rtp_mpa_pay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMPAPay, gst_rtp_mpa_pay, GST_TYPE_BASE_RTP_PAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpMPAPay, gst_rtp_mpa_pay, GST_TYPE_RTP_BASE_PAYLOAD);
|
||||
|
||||
static void
|
||||
gst_rtp_mpa_pay_class_init (GstRtpMPAPayClass * klass)
|
||||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPPayloadClass *gstbasertppayload_class;
|
||||
GstRTPBasePayloadClass *gstrtpbasepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpmpapay_debug, "rtpmpapay", 0,
|
||||
"MPEG Audio RTP Depayloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertppayload_class = (GstBaseRTPPayloadClass *) klass;
|
||||
gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mpa_pay_finalize;
|
||||
|
||||
|
@ -95,9 +95,9 @@ gst_rtp_mpa_pay_class_init (GstRtpMPAPayClass * klass)
|
|||
"Payload MPEG audio as RTP packets (RFC 2038)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertppayload_class->set_caps = gst_rtp_mpa_pay_setcaps;
|
||||
gstbasertppayload_class->handle_event = gst_rtp_mpa_pay_handle_event;
|
||||
gstbasertppayload_class->handle_buffer = gst_rtp_mpa_pay_handle_buffer;
|
||||
gstrtpbasepayload_class->set_caps = gst_rtp_mpa_pay_setcaps;
|
||||
gstrtpbasepayload_class->handle_event = gst_rtp_mpa_pay_handle_event;
|
||||
gstrtpbasepayload_class->handle_buffer = gst_rtp_mpa_pay_handle_buffer;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -129,18 +129,18 @@ gst_rtp_mpa_pay_reset (GstRtpMPAPay * pay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mpa_pay_setcaps (GstBaseRTPPayload * payload, GstCaps * caps)
|
||||
gst_rtp_mpa_pay_setcaps (GstRTPBasePayload * payload, GstCaps * caps)
|
||||
{
|
||||
gboolean res;
|
||||
|
||||
gst_base_rtp_payload_set_options (payload, "audio", TRUE, "MPA", 90000);
|
||||
res = gst_base_rtp_payload_set_outcaps (payload, NULL);
|
||||
gst_rtp_base_payload_set_options (payload, "audio", TRUE, "MPA", 90000);
|
||||
res = gst_rtp_base_payload_set_outcaps (payload, NULL);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mpa_pay_handle_event (GstBaseRTPPayload * payload, GstEvent * event)
|
||||
gst_rtp_mpa_pay_handle_event (GstRTPBasePayload * payload, GstEvent * event)
|
||||
{
|
||||
gboolean ret;
|
||||
GstRtpMPAPay *rtpmpapay;
|
||||
|
@ -160,7 +160,7 @@ gst_rtp_mpa_pay_handle_event (GstBaseRTPPayload * payload, GstEvent * event)
|
|||
}
|
||||
|
||||
ret =
|
||||
GST_BASE_RTP_PAYLOAD_CLASS (parent_class)->handle_event (payload, event);
|
||||
GST_RTP_BASE_PAYLOAD_CLASS (parent_class)->handle_event (payload, event);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -195,7 +195,7 @@ gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay)
|
|||
packet_len = gst_rtp_buffer_calc_packet_len (4 + avail, 0, 0);
|
||||
|
||||
/* fill one MTU or all available bytes */
|
||||
towrite = MIN (packet_len, GST_BASE_RTP_PAYLOAD_MTU (rtpmpapay));
|
||||
towrite = MIN (packet_len, GST_RTP_BASE_PAYLOAD_MTU (rtpmpapay));
|
||||
|
||||
/* this is the payload length */
|
||||
payload_len = gst_rtp_buffer_calc_payload_len (towrite, 0, 0);
|
||||
|
@ -236,14 +236,14 @@ gst_rtp_mpa_pay_flush (GstRtpMPAPay * rtpmpapay)
|
|||
GST_BUFFER_TIMESTAMP (outbuf) = rtpmpapay->first_ts;
|
||||
GST_BUFFER_DURATION (outbuf) = rtpmpapay->duration;
|
||||
|
||||
ret = gst_base_rtp_payload_push (GST_BASE_RTP_PAYLOAD (rtpmpapay), outbuf);
|
||||
ret = gst_rtp_base_payload_push (GST_RTP_BASE_PAYLOAD (rtpmpapay), outbuf);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_rtp_mpa_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
||||
gst_rtp_mpa_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||
GstBuffer * buffer)
|
||||
{
|
||||
GstRtpMPAPay *rtpmpapay;
|
||||
|
@ -271,7 +271,7 @@ gst_rtp_mpa_pay_handle_buffer (GstBaseRTPPayload * basepayload,
|
|||
|
||||
/* if this buffer is going to overflow the packet, flush what we
|
||||
* have. */
|
||||
if (gst_base_rtp_payload_is_filled (basepayload,
|
||||
if (gst_rtp_base_payload_is_filled (basepayload,
|
||||
packet_len, rtpmpapay->duration + duration)) {
|
||||
ret = gst_rtp_mpa_pay_flush (rtpmpapay);
|
||||
avail = 0;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef struct _GstRtpMPAPayClass GstRtpMPAPayClass;
|
|||
|
||||
struct _GstRtpMPAPay
|
||||
{
|
||||
GstBaseRTPPayload payload;
|
||||
GstRTPBasePayload payload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
GstClockTime first_ts;
|
||||
|
@ -51,7 +51,7 @@ struct _GstRtpMPAPay
|
|||
|
||||
struct _GstRtpMPAPayClass
|
||||
{
|
||||
GstBaseRTPPayloadClass parent_class;
|
||||
GstRTPBasePayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mpa_pay_get_type (void);
|
||||
|
|
|
@ -71,14 +71,14 @@ typedef struct _GstADUFrame
|
|||
|
||||
#define gst_rtp_mpa_robust_depay_parent_class parent_class
|
||||
G_DEFINE_TYPE (GstRtpMPARobustDepay, gst_rtp_mpa_robust_depay,
|
||||
GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static GstStateChangeReturn gst_rtp_mpa_robust_change_state (GstElement *
|
||||
element, GstStateChange transition);
|
||||
|
||||
static gboolean gst_rtp_mpa_robust_depay_setcaps (GstBaseRTPDepayload *
|
||||
static gboolean gst_rtp_mpa_robust_depay_setcaps (GstRTPBaseDepayload *
|
||||
depayload, GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mpa_robust_depay_process (GstBaseRTPDepayload *
|
||||
static GstBuffer *gst_rtp_mpa_robust_depay_process (GstRTPBaseDepayload *
|
||||
depayload, GstBuffer * buf);
|
||||
|
||||
static void
|
||||
|
@ -99,14 +99,14 @@ gst_rtp_mpa_robust_depay_class_init (GstRtpMPARobustDepayClass * klass)
|
|||
{
|
||||
GObjectClass *gobject_class;
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpmparobustdepay_debug, "rtpmparobustdepay", 0,
|
||||
"Robust MPEG Audio RTP Depayloader");
|
||||
|
||||
gobject_class = (GObjectClass *) klass;
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gobject_class->finalize = gst_rtp_mpa_robust_depay_finalize;
|
||||
|
||||
|
@ -123,8 +123,8 @@ gst_rtp_mpa_robust_depay_class_init (GstRtpMPARobustDepayClass * klass)
|
|||
"Extracts MPEG audio from RTP packets (RFC 5219)",
|
||||
"Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>");
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mpa_robust_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_mpa_robust_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mpa_robust_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mpa_robust_depay_process;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -135,7 +135,7 @@ gst_rtp_mpa_robust_depay_init (GstRtpMPARobustDepay * rtpmpadepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mpa_robust_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
gst_rtp_mpa_robust_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps)
|
||||
{
|
||||
GstRtpMPARobustDepay *rtpmpadepay;
|
||||
|
@ -495,7 +495,7 @@ gst_rtp_mpa_robust_depay_push_mp3_frames (GstRtpMPARobustDepay * rtpmpadepay)
|
|||
if (G_UNLIKELY (frame->layer != 3)) {
|
||||
GST_DEBUG_OBJECT (rtpmpadepay, "layer %d frame, sending as-is",
|
||||
frame->layer);
|
||||
gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtpmpadepay),
|
||||
gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtpmpadepay),
|
||||
frame->buffer);
|
||||
frame->buffer = NULL;
|
||||
/* and remove it from any further consideration */
|
||||
|
@ -617,7 +617,7 @@ gst_rtp_mpa_robust_depay_push_mp3_frames (GstRtpMPARobustDepay * rtpmpadepay)
|
|||
rtpmpadepay->size -= head->data_size;
|
||||
gst_rtp_mpa_robust_depay_dequeue_frame (rtpmpadepay);
|
||||
/* send */
|
||||
ret = gst_base_rtp_depayload_push (GST_BASE_RTP_DEPAYLOAD (rtpmpadepay),
|
||||
ret = gst_rtp_base_depayload_push (GST_RTP_BASE_DEPAYLOAD (rtpmpadepay),
|
||||
buf);
|
||||
}
|
||||
}
|
||||
|
@ -641,7 +641,7 @@ gst_rtp_mpa_robust_depay_submit_adu (GstRtpMPARobustDepay * rtpmpadepay,
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mpa_robust_depay_process (GstBaseRTPDepayload * depayload,
|
||||
gst_rtp_mpa_robust_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf)
|
||||
{
|
||||
GstRtpMPARobustDepay *rtpmpadepay;
|
||||
|
@ -680,8 +680,8 @@ gst_rtp_mpa_robust_depay_process (GstBaseRTPDepayload * depayload,
|
|||
*/
|
||||
while (payload_len) {
|
||||
if (G_LIKELY (rtpmpadepay->has_descriptor)) {
|
||||
cont = !!(payload[offset] & 0x80);
|
||||
dtype = !!(payload[offset] & 0x40);
|
||||
cont = ! !(payload[offset] & 0x80);
|
||||
dtype = ! !(payload[offset] & 0x40);
|
||||
if (dtype) {
|
||||
size = (payload[offset] & 0x3f) << 8 | payload[offset + 1];
|
||||
payload_len--;
|
||||
|
|
|
@ -44,7 +44,7 @@ typedef struct _GstRtpMPARobustDepayClass GstRtpMPARobustDepayClass;
|
|||
|
||||
struct _GstRtpMPARobustDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
|
||||
GstAdapter *adapter;
|
||||
gboolean has_descriptor;
|
||||
|
@ -66,7 +66,7 @@ struct _GstRtpMPARobustDepay
|
|||
|
||||
struct _GstRtpMPARobustDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mpa_robust_depay_get_type (void);
|
||||
|
|
|
@ -53,21 +53,21 @@ static GstStaticPadTemplate gst_rtp_mpv_depay_sink_template =
|
|||
"clock-rate = (int) 90000")
|
||||
);
|
||||
|
||||
G_DEFINE_TYPE (GstRtpMPVDepay, gst_rtp_mpv_depay, GST_TYPE_BASE_RTP_DEPAYLOAD);
|
||||
G_DEFINE_TYPE (GstRtpMPVDepay, gst_rtp_mpv_depay, GST_TYPE_RTP_BASE_DEPAYLOAD);
|
||||
|
||||
static gboolean gst_rtp_mpv_depay_setcaps (GstBaseRTPDepayload * depayload,
|
||||
static gboolean gst_rtp_mpv_depay_setcaps (GstRTPBaseDepayload * depayload,
|
||||
GstCaps * caps);
|
||||
static GstBuffer *gst_rtp_mpv_depay_process (GstBaseRTPDepayload * depayload,
|
||||
static GstBuffer *gst_rtp_mpv_depay_process (GstRTPBaseDepayload * depayload,
|
||||
GstBuffer * buf);
|
||||
|
||||
static void
|
||||
gst_rtp_mpv_depay_class_init (GstRtpMPVDepayClass * klass)
|
||||
{
|
||||
GstElementClass *gstelement_class;
|
||||
GstBaseRTPDepayloadClass *gstbasertpdepayload_class;
|
||||
GstRTPBaseDepayloadClass *gstrtpbasedepayload_class;
|
||||
|
||||
gstelement_class = (GstElementClass *) klass;
|
||||
gstbasertpdepayload_class = (GstBaseRTPDepayloadClass *) klass;
|
||||
gstrtpbasedepayload_class = (GstRTPBaseDepayloadClass *) klass;
|
||||
|
||||
gst_element_class_add_pad_template (gstelement_class,
|
||||
gst_static_pad_template_get (&gst_rtp_mpv_depay_src_template));
|
||||
|
@ -79,8 +79,8 @@ gst_rtp_mpv_depay_class_init (GstRtpMPVDepayClass * klass)
|
|||
"Extracts MPEG video from RTP packets (RFC 2250)",
|
||||
"Wim Taymans <wim.taymans@gmail.com>");
|
||||
|
||||
gstbasertpdepayload_class->set_caps = gst_rtp_mpv_depay_setcaps;
|
||||
gstbasertpdepayload_class->process = gst_rtp_mpv_depay_process;
|
||||
gstrtpbasedepayload_class->set_caps = gst_rtp_mpv_depay_setcaps;
|
||||
gstrtpbasedepayload_class->process = gst_rtp_mpv_depay_process;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (rtpmpvdepay_debug, "rtpmpvdepay", 0,
|
||||
"MPEG Video RTP Depayloader");
|
||||
|
@ -92,7 +92,7 @@ gst_rtp_mpv_depay_init (GstRtpMPVDepay * rtpmpvdepay)
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_rtp_mpv_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
||||
gst_rtp_mpv_depay_setcaps (GstRTPBaseDepayload * depayload, GstCaps * caps)
|
||||
{
|
||||
GstStructure *structure;
|
||||
gint clock_rate;
|
||||
|
@ -115,7 +115,7 @@ gst_rtp_mpv_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
|
|||
}
|
||||
|
||||
static GstBuffer *
|
||||
gst_rtp_mpv_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
||||
gst_rtp_mpv_depay_process (GstRTPBaseDepayload * depayload, GstBuffer * buf)
|
||||
{
|
||||
GstRtpMPVDepay *rtpmpvdepay;
|
||||
GstBuffer *outbuf;
|
||||
|
|
|
@ -41,12 +41,12 @@ typedef struct _GstRtpMPVDepayClass GstRtpMPVDepayClass;
|
|||
|
||||
struct _GstRtpMPVDepay
|
||||
{
|
||||
GstBaseRTPDepayload depayload;
|
||||
GstRTPBaseDepayload depayload;
|
||||
};
|
||||
|
||||
struct _GstRtpMPVDepayClass
|
||||
{
|
||||
GstBaseRTPDepayloadClass parent_class;
|
||||
GstRTPBaseDepayloadClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_rtp_mpv_depay_get_type (void);
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue