enum
{
PROP_0,
- PROP_PRIORITY
+ PROP_MID,
+ PROP_SENDER,
+ PROP_STOPPED,
+ PROP_DIRECTION,
};
//static guint gst_webrtc_rtp_sender_signals[LAST_SIGNAL] = { 0 };
GST_OBJECT_UNLOCK (sender);
}
-/**
- * gst_webrtc_rtp_sender_set_priority:
- * @sender: a #GstWebRTCRTPSender
- * @priority: The priority of this sender
- *
- * Sets the content of the IPv4 Type of Service (ToS), also known as DSCP
- * (Differentiated Services Code Point).
- * This also sets the Traffic Class field of IPv6.
- *
- * Since: 1.20
- */
-
-void
-gst_webrtc_rtp_sender_set_priority (GstWebRTCRTPSender * sender,
- GstWebRTCPriorityType priority)
-{
- GST_OBJECT_LOCK (sender);
- sender->priority = priority;
- GST_OBJECT_UNLOCK (sender);
- g_object_notify (G_OBJECT (sender), "priority");
-}
-
static void
gst_webrtc_rtp_sender_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec)
{
- GstWebRTCRTPSender *sender = GST_WEBRTC_RTP_SENDER (object);
-
switch (prop_id) {
- case PROP_PRIORITY:
- gst_webrtc_rtp_sender_set_priority (sender, g_value_get_uint (value));
- break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
gst_webrtc_rtp_sender_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec)
{
- GstWebRTCRTPSender *sender = GST_WEBRTC_RTP_SENDER (object);
-
switch (prop_id) {
- case PROP_PRIORITY:
- GST_OBJECT_LOCK (sender);
- g_value_set_uint (value, sender->priority);
- GST_OBJECT_UNLOCK (sender);
- break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
static void
gst_webrtc_rtp_sender_finalize (GObject * object)
{
- GstWebRTCRTPSender *sender = GST_WEBRTC_RTP_SENDER (object);
+ GstWebRTCRTPSender *webrtc = GST_WEBRTC_RTP_SENDER (object);
- if (sender->transport)
- gst_object_unref (sender->transport);
- sender->transport = NULL;
+ if (webrtc->transport)
+ gst_object_unref (webrtc->transport);
+ webrtc->transport = NULL;
- if (sender->rtcp_transport)
- gst_object_unref (sender->rtcp_transport);
- sender->rtcp_transport = NULL;
+ if (webrtc->rtcp_transport)
+ gst_object_unref (webrtc->rtcp_transport);
+ webrtc->rtcp_transport = NULL;
G_OBJECT_CLASS (parent_class)->finalize (object);
}
gobject_class->get_property = gst_webrtc_rtp_sender_get_property;
gobject_class->set_property = gst_webrtc_rtp_sender_set_property;
gobject_class->finalize = gst_webrtc_rtp_sender_finalize;
-
- /**
- * GstWebRTCRTPSender:priority:
- *
- * The priority from which to set the DSCP field on packets
- *
- * Since: 1.20
- */
- g_object_class_install_property (gobject_class,
- PROP_PRIORITY,
- g_param_spec_enum ("priority",
- "Priority",
- "The priority from which to set the DSCP field on packets",
- GST_TYPE_WEBRTC_PRIORITY_TYPE, GST_WEBRTC_PRIORITY_TYPE_LOW,
- G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
}
static void
/**
* GstWebRTCRTPSender:
- * @transport: The transport for RTP packets
- * @rtcp_transport: The transport for RTCP packets without rtcp-mux
- * @send_encodings: Unused
- * @priority: The priority of the stream (Since: 1.20)
*/
struct _GstWebRTCRTPSender
{
GstWebRTCDTLSTransport *rtcp_transport;
GArray *send_encodings;
- GstWebRTCPriorityType priority;
gpointer _padding[GST_PADDING];
};
GST_WEBRTC_API
void gst_webrtc_rtp_sender_set_rtcp_transport (GstWebRTCRTPSender * sender,
GstWebRTCDTLSTransport * transport);
-GST_WEBRTC_API
-void gst_webrtc_rtp_sender_set_priority (GstWebRTCRTPSender *sender,
- GstWebRTCPriorityType priority);
+
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstWebRTCRTPSender, gst_object_unref)