#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);
);
#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)
{
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");
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_basertppayload_set_options (payload, "audio", FALSE, "G729", 8000);
+ gst_rtp_base_payload_set_options (payload, "audio", FALSE, "G729", 8000);
pay->adapter = gst_adapter_new ();
}
}
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;
payload->pt = pt;
payload->dynamic = pt != GST_RTP_PAYLOAD_G729;
- res = gst_basertppayload_set_outcaps (payload, NULL);
+ res = gst_rtp_base_payload_set_outcaps (payload, NULL);
return res;
}
gst_rtp_g729_pay_push (GstRTPG729Pay * rtpg729pay,
const guint8 * data, guint payload_len)
{
- GstBaseRTPPayload *basepayload;
+ GstRTPBasePayload *basepayload;
GstClockTime duration;
guint frames;
GstBuffer *outbuf;
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));
}
gst_rtp_buffer_unmap (&rtp);
- ret = gst_basertppayload_push (basepayload, outbuf);
+ ret = gst_rtp_base_payload_push (basepayload, outbuf);
return ret;
}
}
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);
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 */
}
/* If the ptime is specified in the caps, tried to adhere to it exactly */
- if (payload->abidata.ABI.ptime) {
- guint64 ptime = payload->abidata.ABI.ptime / GST_MSECOND;
+ if (payload->ptime) {
+ guint64 ptime = payload->ptime / GST_MSECOND;
guint ptime_in_bytes = G729_FRAME_SIZE *
(guint) (ptime / G729_FRAME_DURATION_MS);
rtpg729pay->next_ts = timestamp;
if (available == 0 && size >= min_payload_len && size <= max_payload_len) {
- guint8 *data;
+ GstMapInfo map;
- data = gst_buffer_map (buf, &size, NULL, GST_MAP_READ);
- ret = gst_rtp_g729_pay_push (rtpg729pay, data, size);
- gst_buffer_unmap (buf, data, size);
+ gst_buffer_map (buf, &map, GST_MAP_READ);
+ ret = gst_rtp_g729_pay_push (rtpg729pay, map.data, map.size);
+ gst_buffer_unmap (buf, &map);
gst_buffer_unref (buf);
return ret;
}
("Invalid input buffer size"),
("Invalid buffer size, should be a multiple of"
" G729_FRAME_SIZE(10) with an optional G729B_CN_FRAME_SIZE(2)"
- " added to it, but it is %u", size));
+ " added to it, but it is %" G_GSIZE_FORMAT, size));
gst_buffer_unref (buf);
return GST_FLOW_ERROR;
}