gst_object_replace ((GstObject **) & trans->stream, (GstObject *) stream);
- if (rtp_trans->sender)
+ if (rtp_trans->sender) {
gst_object_replace ((GstObject **) & rtp_trans->sender->transport,
(GstObject *) stream->transport);
- if (rtp_trans->receiver)
+ g_object_notify (G_OBJECT (rtp_trans->sender), "transport");
+ }
+
+ if (rtp_trans->receiver) {
gst_object_replace ((GstObject **) & rtp_trans->receiver->transport,
(GstObject *) stream->transport);
+ g_object_notify (G_OBJECT (rtp_trans->receiver), "transport");
+ }
}
GstWebRTCDTLSTransport *
enum
{
PROP_0,
+ PROP_TRANSPORT,
};
//static guint gst_webrtc_rtp_receiver_signals[LAST_SIGNAL] = { 0 };
gst_webrtc_rtp_receiver_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec)
{
+ GstWebRTCRTPReceiver *receiver = GST_WEBRTC_RTP_RECEIVER (object);
switch (prop_id) {
+ case PROP_TRANSPORT:
+ GST_OBJECT_LOCK (receiver);
+ g_value_set_object (value, receiver->transport);
+ GST_OBJECT_UNLOCK (receiver);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
gobject_class->get_property = gst_webrtc_rtp_receiver_get_property;
gobject_class->set_property = gst_webrtc_rtp_receiver_set_property;
gobject_class->finalize = gst_webrtc_rtp_receiver_finalize;
+
+ /**
+ * GstWebRTCRTPReceiver:transport:
+ *
+ * The DTLS transport for this receiver
+ *
+ * Since: 1.20
+ */
+ g_object_class_install_property (gobject_class,
+ PROP_TRANSPORT,
+ g_param_spec_object ("transport", "Transport",
+ "The DTLS transport for this receiver",
+ GST_TYPE_WEBRTC_DTLS_TRANSPORT,
+ G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
}
static void
enum
{
PROP_0,
- PROP_PRIORITY
+ PROP_PRIORITY,
+ PROP_TRANSPORT,
};
//static guint gst_webrtc_rtp_sender_signals[LAST_SIGNAL] = { 0 };
g_value_set_uint (value, sender->priority);
GST_OBJECT_UNLOCK (sender);
break;
+ case PROP_TRANSPORT:
+ GST_OBJECT_LOCK (sender);
+ g_value_set_object (value, sender->transport);
+ GST_OBJECT_UNLOCK (sender);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
"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));
+
+ /**
+ * GstWebRTCRTPSender:transport:
+ *
+ * The DTLS transport for this sender
+ *
+ * Since: 1.20
+ */
+ g_object_class_install_property (gobject_class,
+ PROP_TRANSPORT,
+ g_param_spec_object ("transport", "Transport",
+ "The DTLS transport for this sender",
+ GST_TYPE_WEBRTC_DTLS_TRANSPORT,
+ G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
}
static void