*/
/**
- * SECTION:gstbasertpaudiopayload
+ * SECTION:gstrtpbaseaudiopayload
* @short_description: Base class for audio RTP payloader
*
* Provides a base class for audio RTP payloaders for frame or sample based
#include <gst/rtp/gstrtpbuffer.h>
#include <gst/base/gstadapter.h>
-#include "gstbasertpaudiopayload.h"
+#include "gstrtpbaseaudiopayload.h"
-GST_DEBUG_CATEGORY_STATIC (basertpaudiopayload_debug);
-#define GST_CAT_DEFAULT (basertpaudiopayload_debug)
+GST_DEBUG_CATEGORY_STATIC (rtpbaseaudiopayload_debug);
+#define GST_CAT_DEFAULT (rtpbaseaudiopayload_debug)
#define DEFAULT_BUFFER_LIST FALSE
{
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
- GstRTPBasePayloadClass *gstbasertppayload_class;
+ GstRTPBasePayloadClass *gstrtpbasepayload_class;
g_type_class_add_private (klass, sizeof (GstRTPBaseAudioPayloadPrivate));
gobject_class = (GObjectClass *) klass;
gstelement_class = (GstElementClass *) klass;
- gstbasertppayload_class = (GstRTPBasePayloadClass *) klass;
+ gstrtpbasepayload_class = (GstRTPBasePayloadClass *) klass;
gobject_class->finalize = gst_rtp_base_audio_payload_finalize;
gobject_class->set_property = gst_rtp_base_audio_payload_set_property;
gstelement_class->change_state =
GST_DEBUG_FUNCPTR (gst_rtp_base_payload_audio_change_state);
- gstbasertppayload_class->handle_buffer =
+ gstrtpbasepayload_class->handle_buffer =
GST_DEBUG_FUNCPTR (gst_rtp_base_audio_payload_handle_buffer);
- gstbasertppayload_class->handle_event =
+ gstrtpbasepayload_class->handle_event =
GST_DEBUG_FUNCPTR (gst_rtp_base_payload_audio_handle_event);
- GST_DEBUG_CATEGORY_INIT (basertpaudiopayload_debug, "basertpaudiopayload", 0,
+ GST_DEBUG_CATEGORY_INIT (rtpbaseaudiopayload_debug, "rtpbaseaudiopayload", 0,
"base audio RTP payloader");
}
/**
* gst_rtp_base_audio_payload_set_frame_based:
- * @basertpaudiopayload: a pointer to the element.
+ * @rtpbaseaudiopayload: a pointer to the element.
*
* Tells #GstRTPBaseAudioPayload that the child element is for a frame based
* audio codec
*/
void
gst_rtp_base_audio_payload_set_frame_based (GstRTPBaseAudioPayload *
- basertpaudiopayload)
+ rtpbaseaudiopayload)
{
- g_return_if_fail (basertpaudiopayload != NULL);
- g_return_if_fail (basertpaudiopayload->priv->time_to_bytes == NULL);
- g_return_if_fail (basertpaudiopayload->priv->bytes_to_time == NULL);
- g_return_if_fail (basertpaudiopayload->priv->bytes_to_rtptime == NULL);
+ g_return_if_fail (rtpbaseaudiopayload != NULL);
+ g_return_if_fail (rtpbaseaudiopayload->priv->time_to_bytes == NULL);
+ g_return_if_fail (rtpbaseaudiopayload->priv->bytes_to_time == NULL);
+ g_return_if_fail (rtpbaseaudiopayload->priv->bytes_to_rtptime == NULL);
- basertpaudiopayload->priv->bytes_to_time =
+ rtpbaseaudiopayload->priv->bytes_to_time =
gst_rtp_base_audio_payload_frame_bytes_to_time;
- basertpaudiopayload->priv->bytes_to_rtptime =
+ rtpbaseaudiopayload->priv->bytes_to_rtptime =
gst_rtp_base_audio_payload_frame_bytes_to_rtptime;
- basertpaudiopayload->priv->time_to_bytes =
+ rtpbaseaudiopayload->priv->time_to_bytes =
gst_rtp_base_audio_payload_frame_time_to_bytes;
}
/**
* gst_rtp_base_audio_payload_set_sample_based:
- * @basertpaudiopayload: a pointer to the element.
+ * @rtpbaseaudiopayload: a pointer to the element.
*
* Tells #GstRTPBaseAudioPayload that the child element is for a sample based
* audio codec
*/
void
gst_rtp_base_audio_payload_set_sample_based (GstRTPBaseAudioPayload *
- basertpaudiopayload)
+ rtpbaseaudiopayload)
{
- g_return_if_fail (basertpaudiopayload != NULL);
- g_return_if_fail (basertpaudiopayload->priv->time_to_bytes == NULL);
- g_return_if_fail (basertpaudiopayload->priv->bytes_to_time == NULL);
- g_return_if_fail (basertpaudiopayload->priv->bytes_to_rtptime == NULL);
+ g_return_if_fail (rtpbaseaudiopayload != NULL);
+ g_return_if_fail (rtpbaseaudiopayload->priv->time_to_bytes == NULL);
+ g_return_if_fail (rtpbaseaudiopayload->priv->bytes_to_time == NULL);
+ g_return_if_fail (rtpbaseaudiopayload->priv->bytes_to_rtptime == NULL);
- basertpaudiopayload->priv->bytes_to_time =
+ rtpbaseaudiopayload->priv->bytes_to_time =
gst_rtp_base_audio_payload_sample_bytes_to_time;
- basertpaudiopayload->priv->bytes_to_rtptime =
+ rtpbaseaudiopayload->priv->bytes_to_rtptime =
gst_rtp_base_audio_payload_sample_bytes_to_rtptime;
- basertpaudiopayload->priv->time_to_bytes =
+ rtpbaseaudiopayload->priv->time_to_bytes =
gst_rtp_base_audio_payload_sample_time_to_bytes;
}
/**
* gst_rtp_base_audio_payload_set_frame_options:
- * @basertpaudiopayload: a pointer to the element.
+ * @rtpbaseaudiopayload: a pointer to the element.
* @frame_duration: The duraction of an audio frame in milliseconds.
* @frame_size: The size of an audio frame in bytes.
*
*/
void
gst_rtp_base_audio_payload_set_frame_options (GstRTPBaseAudioPayload
- * basertpaudiopayload, gint frame_duration, gint frame_size)
+ * rtpbaseaudiopayload, gint frame_duration, gint frame_size)
{
GstRTPBaseAudioPayloadPrivate *priv;
- g_return_if_fail (basertpaudiopayload != NULL);
+ g_return_if_fail (rtpbaseaudiopayload != NULL);
- priv = basertpaudiopayload->priv;
+ priv = rtpbaseaudiopayload->priv;
- basertpaudiopayload->frame_duration = frame_duration;
+ rtpbaseaudiopayload->frame_duration = frame_duration;
priv->frame_duration_ns = frame_duration * GST_MSECOND;
- basertpaudiopayload->frame_size = frame_size;
+ rtpbaseaudiopayload->frame_size = frame_size;
priv->align = frame_size;
gst_adapter_clear (priv->adapter);
- GST_DEBUG_OBJECT (basertpaudiopayload, "frame set to %d ms and size %d",
+ GST_DEBUG_OBJECT (rtpbaseaudiopayload, "frame set to %d ms and size %d",
frame_duration, frame_size);
}
/**
* gst_rtp_base_audio_payload_set_sample_options:
- * @basertpaudiopayload: a pointer to the element.
+ * @rtpbaseaudiopayload: a pointer to the element.
* @sample_size: Size per sample in bytes.
*
* Sets the options for sample based audio codecs.
*/
void
gst_rtp_base_audio_payload_set_sample_options (GstRTPBaseAudioPayload
- * basertpaudiopayload, gint sample_size)
+ * rtpbaseaudiopayload, gint sample_size)
{
- g_return_if_fail (basertpaudiopayload != NULL);
+ g_return_if_fail (rtpbaseaudiopayload != NULL);
/* sample_size is in bits internally */
- gst_rtp_base_audio_payload_set_samplebits_options (basertpaudiopayload,
+ gst_rtp_base_audio_payload_set_samplebits_options (rtpbaseaudiopayload,
sample_size * 8);
}
/**
* gst_rtp_base_audio_payload_set_samplebits_options:
- * @basertpaudiopayload: a pointer to the element.
+ * @rtpbaseaudiopayload: a pointer to the element.
* @sample_size: Size per sample in bits.
*
* Sets the options for sample based audio codecs.
*/
void
gst_rtp_base_audio_payload_set_samplebits_options (GstRTPBaseAudioPayload
- * basertpaudiopayload, gint sample_size)
+ * rtpbaseaudiopayload, gint sample_size)
{
guint fragment_size;
GstRTPBaseAudioPayloadPrivate *priv;
- g_return_if_fail (basertpaudiopayload != NULL);
+ g_return_if_fail (rtpbaseaudiopayload != NULL);
- priv = basertpaudiopayload->priv;
+ priv = rtpbaseaudiopayload->priv;
- basertpaudiopayload->sample_size = sample_size;
+ rtpbaseaudiopayload->sample_size = sample_size;
/* sample_size is in bits and is converted into multiple bytes */
fragment_size = sample_size;
gst_adapter_clear (priv->adapter);
- GST_DEBUG_OBJECT (basertpaudiopayload,
+ GST_DEBUG_OBJECT (rtpbaseaudiopayload,
"Samplebits set to sample size %d bits", sample_size);
}
gst_rtp_base_payload_audio_change_state (GstElement * element,
GstStateChange transition)
{
- GstRTPBaseAudioPayload *basertppayload;
+ GstRTPBaseAudioPayload *rtpbasepayload;
GstStateChangeReturn ret;
- basertppayload = GST_RTP_BASE_AUDIO_PAYLOAD (element);
+ rtpbasepayload = GST_RTP_BASE_AUDIO_PAYLOAD (element);
switch (transition) {
case GST_STATE_CHANGE_READY_TO_PAUSED:
- basertppayload->priv->cached_mtu = -1;
- basertppayload->priv->last_rtptime = -1;
- basertppayload->priv->last_timestamp = -1;
+ rtpbasepayload->priv->cached_mtu = -1;
+ rtpbasepayload->priv->last_rtptime = -1;
+ rtpbasepayload->priv->last_timestamp = -1;
break;
default:
break;
switch (transition) {
case GST_STATE_CHANGE_PAUSED_TO_READY:
- gst_adapter_clear (basertppayload->priv->adapter);
+ gst_adapter_clear (rtpbasepayload->priv->adapter);
break;
default:
break;
/**
* gst_rtp_base_audio_payload_get_adapter:
- * @basertpaudiopayload: a #GstRTPBaseAudioPayload
+ * @rtpbaseaudiopayload: a #GstRTPBaseAudioPayload
*
* Gets the internal adapter used by the depayloader.
*
*/
GstAdapter *
gst_rtp_base_audio_payload_get_adapter (GstRTPBaseAudioPayload
- * basertpaudiopayload)
+ * rtpbaseaudiopayload)
{
GstAdapter *adapter;
- if ((adapter = basertpaudiopayload->priv->adapter))
+ if ((adapter = rtpbaseaudiopayload->priv->adapter))
g_object_ref (adapter);
return adapter;
*/
/**
- * SECTION:gstbasertppayload
+ * SECTION:gstrtpbasepayload
* @short_description: Base class for RTP payloader
*
* Provides a base class for RTP payloaders
#include <gst/rtp/gstrtpbuffer.h>
-#include "gstbasertppayload.h"
+#include "gstrtpbasepayload.h"
-GST_DEBUG_CATEGORY_STATIC (basertppayload_debug);
-#define GST_CAT_DEFAULT (basertppayload_debug)
+GST_DEBUG_CATEGORY_STATIC (rtpbasepayload_debug);
+#define GST_CAT_DEFAULT (rtpbasepayload_debug)
#define GST_RTP_BASE_PAYLOAD_GET_PRIVATE(obj) \
(G_TYPE_INSTANCE_GET_PRIVATE ((obj), GST_TYPE_RTP_BASE_PAYLOAD, GstRTPBasePayloadPrivate))
};
static void gst_rtp_base_payload_class_init (GstRTPBasePayloadClass * klass);
-static void gst_rtp_base_payload_init (GstRTPBasePayload * basertppayload,
+static void gst_rtp_base_payload_init (GstRTPBasePayload * rtpbasepayload,
gpointer g_class);
static void gst_rtp_base_payload_finalize (GObject * object);
static GstCaps *gst_rtp_base_payload_sink_getcaps (GstPad * pad,
GstCaps * filter);
static gboolean gst_rtp_base_payload_event_default (GstRTPBasePayload *
- basertppayload, GstEvent * event);
+ rtpbasepayload, GstEvent * event);
static gboolean gst_rtp_base_payload_event (GstPad * pad, GstEvent * event);
static GstFlowReturn gst_rtp_base_payload_chain (GstPad * pad,
GstBuffer * buffer);
static GstCaps *gst_rtp_base_payload_getcaps_default (GstRTPBasePayload *
- basertppayload, GstPad * pad, GstCaps * filter);
+ rtpbasepayload, GstPad * pad, GstCaps * filter);
static void gst_rtp_base_payload_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec);
GType
gst_rtp_base_payload_get_type (void)
{
- static GType basertppayload_type = 0;
+ static GType rtpbasepayload_type = 0;
- if (g_once_init_enter ((gsize *) & basertppayload_type)) {
- static const GTypeInfo basertppayload_info = {
+ if (g_once_init_enter ((gsize *) & rtpbasepayload_type)) {
+ static const GTypeInfo rtpbasepayload_info = {
sizeof (GstRTPBasePayloadClass),
NULL,
NULL,
(GInstanceInitFunc) gst_rtp_base_payload_init,
};
- g_once_init_leave ((gsize *) & basertppayload_type,
+ g_once_init_leave ((gsize *) & rtpbasepayload_type,
g_type_register_static (GST_TYPE_ELEMENT, "GstRTPBasePayload",
- &basertppayload_info, G_TYPE_FLAG_ABSTRACT));
+ &rtpbasepayload_info, G_TYPE_FLAG_ABSTRACT));
}
- return basertppayload_type;
+ return rtpbasepayload_type;
}
static void
klass->get_caps = gst_rtp_base_payload_getcaps_default;
klass->handle_event = gst_rtp_base_payload_event_default;
- GST_DEBUG_CATEGORY_INIT (basertppayload_debug, "basertppayload", 0,
+ GST_DEBUG_CATEGORY_INIT (rtpbasepayload_debug, "rtpbasepayload", 0,
"Base class for RTP Payloaders");
}
static void
-gst_rtp_base_payload_init (GstRTPBasePayload * basertppayload, gpointer g_class)
+gst_rtp_base_payload_init (GstRTPBasePayload * rtpbasepayload, gpointer g_class)
{
GstPadTemplate *templ;
GstRTPBasePayloadPrivate *priv;
- basertppayload->priv = priv =
- GST_RTP_BASE_PAYLOAD_GET_PRIVATE (basertppayload);
+ rtpbasepayload->priv = priv =
+ GST_RTP_BASE_PAYLOAD_GET_PRIVATE (rtpbasepayload);
templ =
gst_element_class_get_pad_template (GST_ELEMENT_CLASS (g_class), "src");
g_return_if_fail (templ != NULL);
- basertppayload->srcpad = gst_pad_new_from_template (templ, "src");
- gst_element_add_pad (GST_ELEMENT (basertppayload), basertppayload->srcpad);
+ rtpbasepayload->srcpad = gst_pad_new_from_template (templ, "src");
+ gst_element_add_pad (GST_ELEMENT (rtpbasepayload), rtpbasepayload->srcpad);
templ =
gst_element_class_get_pad_template (GST_ELEMENT_CLASS (g_class), "sink");
g_return_if_fail (templ != NULL);
- basertppayload->sinkpad = gst_pad_new_from_template (templ, "sink");
- gst_pad_set_getcaps_function (basertppayload->sinkpad,
+ rtpbasepayload->sinkpad = gst_pad_new_from_template (templ, "sink");
+ gst_pad_set_getcaps_function (rtpbasepayload->sinkpad,
gst_rtp_base_payload_sink_getcaps);
- gst_pad_set_event_function (basertppayload->sinkpad,
+ gst_pad_set_event_function (rtpbasepayload->sinkpad,
gst_rtp_base_payload_event);
- gst_pad_set_chain_function (basertppayload->sinkpad,
+ gst_pad_set_chain_function (rtpbasepayload->sinkpad,
gst_rtp_base_payload_chain);
- gst_element_add_pad (GST_ELEMENT (basertppayload), basertppayload->sinkpad);
-
- basertppayload->mtu = DEFAULT_MTU;
- basertppayload->pt = DEFAULT_PT;
- basertppayload->seqnum_offset = DEFAULT_SEQNUM_OFFSET;
- basertppayload->ssrc = DEFAULT_SSRC;
- basertppayload->ts_offset = DEFAULT_TIMESTAMP_OFFSET;
- priv->seqnum_offset_random = (basertppayload->seqnum_offset == -1);
- priv->ts_offset_random = (basertppayload->ts_offset == -1);
- priv->ssrc_random = (basertppayload->ssrc == -1);
-
- basertppayload->max_ptime = DEFAULT_MAX_PTIME;
- basertppayload->min_ptime = DEFAULT_MIN_PTIME;
- basertppayload->priv->perfect_rtptime = DEFAULT_PERFECT_RTPTIME;
- basertppayload->abidata.ABI.ptime_multiple = DEFAULT_PTIME_MULTIPLE;
- basertppayload->priv->base_offset = GST_BUFFER_OFFSET_NONE;
- basertppayload->priv->base_rtime = GST_BUFFER_OFFSET_NONE;
-
- basertppayload->media = NULL;
- basertppayload->encoding_name = NULL;
-
- basertppayload->clock_rate = 0;
-
- basertppayload->priv->caps_max_ptime = DEFAULT_MAX_PTIME;
- basertppayload->priv->prop_max_ptime = DEFAULT_MAX_PTIME;
+ gst_element_add_pad (GST_ELEMENT (rtpbasepayload), rtpbasepayload->sinkpad);
+
+ rtpbasepayload->mtu = DEFAULT_MTU;
+ rtpbasepayload->pt = DEFAULT_PT;
+ rtpbasepayload->seqnum_offset = DEFAULT_SEQNUM_OFFSET;
+ rtpbasepayload->ssrc = DEFAULT_SSRC;
+ rtpbasepayload->ts_offset = DEFAULT_TIMESTAMP_OFFSET;
+ priv->seqnum_offset_random = (rtpbasepayload->seqnum_offset == -1);
+ priv->ts_offset_random = (rtpbasepayload->ts_offset == -1);
+ priv->ssrc_random = (rtpbasepayload->ssrc == -1);
+
+ rtpbasepayload->max_ptime = DEFAULT_MAX_PTIME;
+ rtpbasepayload->min_ptime = DEFAULT_MIN_PTIME;
+ rtpbasepayload->priv->perfect_rtptime = DEFAULT_PERFECT_RTPTIME;
+ rtpbasepayload->abidata.ABI.ptime_multiple = DEFAULT_PTIME_MULTIPLE;
+ rtpbasepayload->priv->base_offset = GST_BUFFER_OFFSET_NONE;
+ rtpbasepayload->priv->base_rtime = GST_BUFFER_OFFSET_NONE;
+
+ rtpbasepayload->media = NULL;
+ rtpbasepayload->encoding_name = NULL;
+
+ rtpbasepayload->clock_rate = 0;
+
+ rtpbasepayload->priv->caps_max_ptime = DEFAULT_MAX_PTIME;
+ rtpbasepayload->priv->prop_max_ptime = DEFAULT_MAX_PTIME;
}
static void
gst_rtp_base_payload_finalize (GObject * object)
{
- GstRTPBasePayload *basertppayload;
+ GstRTPBasePayload *rtpbasepayload;
- basertppayload = GST_RTP_BASE_PAYLOAD (object);
+ rtpbasepayload = GST_RTP_BASE_PAYLOAD (object);
- g_free (basertppayload->media);
- basertppayload->media = NULL;
- g_free (basertppayload->encoding_name);
- basertppayload->encoding_name = NULL;
+ g_free (rtpbasepayload->media);
+ rtpbasepayload->media = NULL;
+ g_free (rtpbasepayload->encoding_name);
+ rtpbasepayload->encoding_name = NULL;
G_OBJECT_CLASS (parent_class)->finalize (object);
}
static GstCaps *
-gst_rtp_base_payload_getcaps_default (GstRTPBasePayload * basertppayload,
+gst_rtp_base_payload_getcaps_default (GstRTPBasePayload * rtpbasepayload,
GstPad * pad, GstCaps * filter)
{
GstCaps *caps;
static GstCaps *
gst_rtp_base_payload_sink_getcaps (GstPad * pad, GstCaps * filter)
{
- GstRTPBasePayload *basertppayload;
- GstRTPBasePayloadClass *basertppayload_class;
+ GstRTPBasePayload *rtpbasepayload;
+ GstRTPBasePayloadClass *rtpbasepayload_class;
GstCaps *caps = NULL;
GST_DEBUG_OBJECT (pad, "getting caps");
- basertppayload = GST_RTP_BASE_PAYLOAD (gst_pad_get_parent (pad));
- basertppayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (basertppayload);
+ rtpbasepayload = GST_RTP_BASE_PAYLOAD (gst_pad_get_parent (pad));
+ rtpbasepayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (rtpbasepayload);
- if (basertppayload_class->get_caps)
- caps = basertppayload_class->get_caps (basertppayload, pad, filter);
+ if (rtpbasepayload_class->get_caps)
+ caps = rtpbasepayload_class->get_caps (rtpbasepayload, pad, filter);
- gst_object_unref (basertppayload);
+ gst_object_unref (rtpbasepayload);
return caps;
}
static gboolean
-gst_rtp_base_payload_event_default (GstRTPBasePayload * basertppayload,
+gst_rtp_base_payload_event_default (GstRTPBasePayload * rtpbasepayload,
GstEvent * event)
{
gboolean res = FALSE;
switch (GST_EVENT_TYPE (event)) {
case GST_EVENT_FLUSH_START:
- res = gst_pad_event_default (basertppayload->sinkpad, event);
+ res = gst_pad_event_default (rtpbasepayload->sinkpad, event);
break;
case GST_EVENT_FLUSH_STOP:
- res = gst_pad_event_default (basertppayload->sinkpad, event);
- gst_segment_init (&basertppayload->segment, GST_FORMAT_UNDEFINED);
+ res = gst_pad_event_default (rtpbasepayload->sinkpad, event);
+ gst_segment_init (&rtpbasepayload->segment, GST_FORMAT_UNDEFINED);
break;
case GST_EVENT_CAPS:
{
- GstRTPBasePayloadClass *basertppayload_class;
+ GstRTPBasePayloadClass *rtpbasepayload_class;
GstCaps *caps;
gst_event_parse_caps (event, &caps);
- GST_DEBUG_OBJECT (basertppayload, "setting caps %" GST_PTR_FORMAT, caps);
+ GST_DEBUG_OBJECT (rtpbasepayload, "setting caps %" GST_PTR_FORMAT, caps);
- basertppayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (basertppayload);
- if (basertppayload_class->set_caps)
- res = basertppayload_class->set_caps (basertppayload, caps);
+ rtpbasepayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (rtpbasepayload);
+ if (rtpbasepayload_class->set_caps)
+ res = rtpbasepayload_class->set_caps (rtpbasepayload, caps);
gst_event_unref (event);
break;
{
GstSegment *segment;
- segment = &basertppayload->segment;
+ segment = &rtpbasepayload->segment;
gst_event_copy_segment (event, segment);
- basertppayload->priv->base_offset = GST_BUFFER_OFFSET_NONE;
+ rtpbasepayload->priv->base_offset = GST_BUFFER_OFFSET_NONE;
- GST_DEBUG_OBJECT (basertppayload,
+ GST_DEBUG_OBJECT (rtpbasepayload,
"configured SEGMENT %" GST_SEGMENT_FORMAT, segment);
- res = gst_pad_event_default (basertppayload->sinkpad, event);
+ res = gst_pad_event_default (rtpbasepayload->sinkpad, event);
break;
}
default:
- res = gst_pad_event_default (basertppayload->sinkpad, event);
+ res = gst_pad_event_default (rtpbasepayload->sinkpad, event);
break;
}
return res;
static gboolean
gst_rtp_base_payload_event (GstPad * pad, GstEvent * event)
{
- GstRTPBasePayload *basertppayload;
- GstRTPBasePayloadClass *basertppayload_class;
+ GstRTPBasePayload *rtpbasepayload;
+ GstRTPBasePayloadClass *rtpbasepayload_class;
gboolean res = FALSE;
- basertppayload = GST_RTP_BASE_PAYLOAD (gst_pad_get_parent (pad));
- if (G_UNLIKELY (basertppayload == NULL)) {
+ rtpbasepayload = GST_RTP_BASE_PAYLOAD (gst_pad_get_parent (pad));
+ if (G_UNLIKELY (rtpbasepayload == NULL)) {
gst_event_unref (event);
return FALSE;
}
- basertppayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (basertppayload);
+ rtpbasepayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (rtpbasepayload);
- if (basertppayload_class->handle_event)
- res = basertppayload_class->handle_event (basertppayload, event);
+ if (rtpbasepayload_class->handle_event)
+ res = rtpbasepayload_class->handle_event (rtpbasepayload, event);
else
gst_event_unref (event);
- gst_object_unref (basertppayload);
+ gst_object_unref (rtpbasepayload);
return res;
}
static GstFlowReturn
gst_rtp_base_payload_chain (GstPad * pad, GstBuffer * buffer)
{
- GstRTPBasePayload *basertppayload;
- GstRTPBasePayloadClass *basertppayload_class;
+ GstRTPBasePayload *rtpbasepayload;
+ GstRTPBasePayloadClass *rtpbasepayload_class;
GstFlowReturn ret;
- basertppayload = GST_RTP_BASE_PAYLOAD (gst_pad_get_parent (pad));
- basertppayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (basertppayload);
+ rtpbasepayload = GST_RTP_BASE_PAYLOAD (gst_pad_get_parent (pad));
+ rtpbasepayload_class = GST_RTP_BASE_PAYLOAD_GET_CLASS (rtpbasepayload);
- if (!basertppayload_class->handle_buffer)
+ if (!rtpbasepayload_class->handle_buffer)
goto no_function;
- ret = basertppayload_class->handle_buffer (basertppayload, buffer);
+ ret = rtpbasepayload_class->handle_buffer (rtpbasepayload, buffer);
- gst_object_unref (basertppayload);
+ gst_object_unref (rtpbasepayload);
return ret;
/* ERRORS */
no_function:
{
- GST_ELEMENT_ERROR (basertppayload, STREAM, NOT_IMPLEMENTED, (NULL),
+ GST_ELEMENT_ERROR (rtpbasepayload, STREAM, NOT_IMPLEMENTED, (NULL),
("subclass did not implement handle_buffer function"));
- gst_object_unref (basertppayload);
+ gst_object_unref (rtpbasepayload);
gst_buffer_unref (buffer);
return GST_FLOW_ERROR;
}
}
static void
-update_max_ptime (GstRTPBasePayload * basertppayload)
+update_max_ptime (GstRTPBasePayload * rtpbasepayload)
{
- if (basertppayload->priv->caps_max_ptime != -1 &&
- basertppayload->priv->prop_max_ptime != -1)
- basertppayload->max_ptime = MIN (basertppayload->priv->caps_max_ptime,
- basertppayload->priv->prop_max_ptime);
- else if (basertppayload->priv->caps_max_ptime != -1)
- basertppayload->max_ptime = basertppayload->priv->caps_max_ptime;
- else if (basertppayload->priv->prop_max_ptime != -1)
- basertppayload->max_ptime = basertppayload->priv->prop_max_ptime;
+ if (rtpbasepayload->priv->caps_max_ptime != -1 &&
+ rtpbasepayload->priv->prop_max_ptime != -1)
+ rtpbasepayload->max_ptime = MIN (rtpbasepayload->priv->caps_max_ptime,
+ rtpbasepayload->priv->prop_max_ptime);
+ else if (rtpbasepayload->priv->caps_max_ptime != -1)
+ rtpbasepayload->max_ptime = rtpbasepayload->priv->caps_max_ptime;
+ else if (rtpbasepayload->priv->prop_max_ptime != -1)
+ rtpbasepayload->max_ptime = rtpbasepayload->priv->prop_max_ptime;
else
- basertppayload->max_ptime = DEFAULT_MAX_PTIME;
+ rtpbasepayload->max_ptime = DEFAULT_MAX_PTIME;
}
/**
gst_rtp_base_payload_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec)
{
- GstRTPBasePayload *basertppayload;
+ GstRTPBasePayload *rtpbasepayload;
GstRTPBasePayloadPrivate *priv;
gint64 val;
- basertppayload = GST_RTP_BASE_PAYLOAD (object);
- priv = basertppayload->priv;
+ rtpbasepayload = GST_RTP_BASE_PAYLOAD (object);
+ priv = rtpbasepayload->priv;
switch (prop_id) {
case PROP_MTU:
- basertppayload->mtu = g_value_get_uint (value);
+ rtpbasepayload->mtu = g_value_get_uint (value);
break;
case PROP_PT:
- basertppayload->pt = g_value_get_uint (value);
+ rtpbasepayload->pt = g_value_get_uint (value);
break;
case PROP_SSRC:
val = g_value_get_uint (value);
- basertppayload->ssrc = val;
+ rtpbasepayload->ssrc = val;
priv->ssrc_random = FALSE;
break;
case PROP_TIMESTAMP_OFFSET:
val = g_value_get_uint (value);
- basertppayload->ts_offset = val;
+ rtpbasepayload->ts_offset = val;
priv->ts_offset_random = FALSE;
break;
case PROP_SEQNUM_OFFSET:
val = g_value_get_int (value);
- basertppayload->seqnum_offset = val;
+ rtpbasepayload->seqnum_offset = val;
priv->seqnum_offset_random = (val == -1);
- GST_DEBUG_OBJECT (basertppayload, "seqnum offset 0x%04x, random %d",
- basertppayload->seqnum_offset, priv->seqnum_offset_random);
+ GST_DEBUG_OBJECT (rtpbasepayload, "seqnum offset 0x%04x, random %d",
+ rtpbasepayload->seqnum_offset, priv->seqnum_offset_random);
break;
case PROP_MAX_PTIME:
- basertppayload->priv->prop_max_ptime = g_value_get_int64 (value);
- update_max_ptime (basertppayload);
+ rtpbasepayload->priv->prop_max_ptime = g_value_get_int64 (value);
+ update_max_ptime (rtpbasepayload);
break;
case PROP_MIN_PTIME:
- basertppayload->min_ptime = g_value_get_int64 (value);
+ rtpbasepayload->min_ptime = g_value_get_int64 (value);
break;
case PROP_PERFECT_RTPTIME:
priv->perfect_rtptime = g_value_get_boolean (value);
break;
case PROP_PTIME_MULTIPLE:
- basertppayload->abidata.ABI.ptime_multiple = g_value_get_int64 (value);
+ rtpbasepayload->abidata.ABI.ptime_multiple = g_value_get_int64 (value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
gst_rtp_base_payload_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec)
{
- GstRTPBasePayload *basertppayload;
+ GstRTPBasePayload *rtpbasepayload;
GstRTPBasePayloadPrivate *priv;
- basertppayload = GST_RTP_BASE_PAYLOAD (object);
- priv = basertppayload->priv;
+ rtpbasepayload = GST_RTP_BASE_PAYLOAD (object);
+ priv = rtpbasepayload->priv;
switch (prop_id) {
case PROP_MTU:
- g_value_set_uint (value, basertppayload->mtu);
+ g_value_set_uint (value, rtpbasepayload->mtu);
break;
case PROP_PT:
- g_value_set_uint (value, basertppayload->pt);
+ g_value_set_uint (value, rtpbasepayload->pt);
break;
case PROP_SSRC:
if (priv->ssrc_random)
g_value_set_uint (value, -1);
else
- g_value_set_uint (value, basertppayload->ssrc);
+ g_value_set_uint (value, rtpbasepayload->ssrc);
break;
case PROP_TIMESTAMP_OFFSET:
if (priv->ts_offset_random)
g_value_set_uint (value, -1);
else
- g_value_set_uint (value, (guint32) basertppayload->ts_offset);
+ g_value_set_uint (value, (guint32) rtpbasepayload->ts_offset);
break;
case PROP_SEQNUM_OFFSET:
if (priv->seqnum_offset_random)
g_value_set_int (value, -1);
else
- g_value_set_int (value, (guint16) basertppayload->seqnum_offset);
+ g_value_set_int (value, (guint16) rtpbasepayload->seqnum_offset);
break;
case PROP_MAX_PTIME:
- g_value_set_int64 (value, basertppayload->max_ptime);
+ g_value_set_int64 (value, rtpbasepayload->max_ptime);
break;
case PROP_MIN_PTIME:
- g_value_set_int64 (value, basertppayload->min_ptime);
+ g_value_set_int64 (value, rtpbasepayload->min_ptime);
break;
case PROP_TIMESTAMP:
- g_value_set_uint (value, basertppayload->timestamp);
+ g_value_set_uint (value, rtpbasepayload->timestamp);
break;
case PROP_SEQNUM:
- g_value_set_uint (value, basertppayload->seqnum);
+ g_value_set_uint (value, rtpbasepayload->seqnum);
break;
case PROP_PERFECT_RTPTIME:
g_value_set_boolean (value, priv->perfect_rtptime);
break;
case PROP_PTIME_MULTIPLE:
- g_value_set_int64 (value, basertppayload->abidata.ABI.ptime_multiple);
+ g_value_set_int64 (value, rtpbasepayload->abidata.ABI.ptime_multiple);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
gst_rtp_base_payload_change_state (GstElement * element,
GstStateChange transition)
{
- GstRTPBasePayload *basertppayload;
+ GstRTPBasePayload *rtpbasepayload;
GstRTPBasePayloadPrivate *priv;
GstStateChangeReturn ret;
- basertppayload = GST_RTP_BASE_PAYLOAD (element);
- priv = basertppayload->priv;
+ rtpbasepayload = GST_RTP_BASE_PAYLOAD (element);
+ priv = rtpbasepayload->priv;
switch (transition) {
case GST_STATE_CHANGE_NULL_TO_READY:
break;
case GST_STATE_CHANGE_READY_TO_PAUSED:
- gst_segment_init (&basertppayload->segment, GST_FORMAT_UNDEFINED);
+ gst_segment_init (&rtpbasepayload->segment, GST_FORMAT_UNDEFINED);
if (priv->seqnum_offset_random)
- basertppayload->seqnum_base = g_random_int_range (0, G_MAXUINT16);
+ rtpbasepayload->seqnum_base = g_random_int_range (0, G_MAXUINT16);
else
- basertppayload->seqnum_base = basertppayload->seqnum_offset;
- priv->next_seqnum = basertppayload->seqnum_base;
- basertppayload->seqnum = basertppayload->seqnum_base;
+ rtpbasepayload->seqnum_base = rtpbasepayload->seqnum_offset;
+ priv->next_seqnum = rtpbasepayload->seqnum_base;
+ rtpbasepayload->seqnum = rtpbasepayload->seqnum_base;
if (priv->ssrc_random)
- basertppayload->current_ssrc = g_random_int ();
+ rtpbasepayload->current_ssrc = g_random_int ();
else
- basertppayload->current_ssrc = basertppayload->ssrc;
+ rtpbasepayload->current_ssrc = rtpbasepayload->ssrc;
if (priv->ts_offset_random)
- basertppayload->ts_base = g_random_int ();
+ rtpbasepayload->ts_base = g_random_int ();
else
- basertppayload->ts_base = basertppayload->ts_offset;
- basertppayload->timestamp = basertppayload->ts_base;
- g_atomic_int_set (&basertppayload->priv->notified_first_timestamp, 1);
+ rtpbasepayload->ts_base = rtpbasepayload->ts_offset;
+ rtpbasepayload->timestamp = rtpbasepayload->ts_base;
+ g_atomic_int_set (&rtpbasepayload->priv->notified_first_timestamp, 1);
priv->base_offset = GST_BUFFER_OFFSET_NONE;
break;
default:
switch (transition) {
case GST_STATE_CHANGE_PLAYING_TO_PAUSED:
- g_atomic_int_set (&basertppayload->priv->notified_first_timestamp, 1);
+ g_atomic_int_set (&rtpbasepayload->priv->notified_first_timestamp, 1);
break;
case GST_STATE_CHANGE_READY_TO_NULL:
break;