PROP_WAIT_FOR_CONNECTION,
PROP_STREAMID,
PROP_AUTHENTICATION,
+#ifdef TIZEN_FEATURE_SRT_LATENCY
+ PROP_RECEIVE_LATENCY,
+ PROP_PEER_LATENCY,
+#endif
PROP_LAST
};
case PROP_AUTHENTICATION:
srtobject->authentication = g_value_get_boolean (value);
break;
+#ifdef TIZEN_FEATURE_SRT_LATENCY
+ case PROP_RECEIVE_LATENCY:
+ gst_structure_set_value (srtobject->parameters, "rcvlatency", value);
+ break;
+ case PROP_PEER_LATENCY:
+ gst_structure_set_value (srtobject->parameters, "peerlatency", value);
+ break;
+#endif
default:
goto err;
}
case PROP_AUTHENTICATION:
g_value_set_boolean (value, srtobject->authentication);
break;
+#ifdef TIZEN_FEATURE_SRT_LATENCY
+ case PROP_RECEIVE_LATENCY:{
+ gint v;
+
+ GST_OBJECT_LOCK (srtobject->element);
+ if (!gst_structure_get_int (srtobject->parameters, "rcvlatency", &v)) {
+ GST_WARNING_OBJECT (srtobject->element, "Failed to get 'rcvlatency'");
+ v = GST_SRT_DEFAULT_LATENCY;
+ }
+ g_value_set_int (value, v);
+ GST_OBJECT_UNLOCK (srtobject->element);
+ break;
+ }
+ case PROP_PEER_LATENCY:{
+ gint v;
+
+ GST_OBJECT_LOCK (srtobject->element);
+ if (!gst_structure_get_int (srtobject->parameters, "peerlatency", &v)) {
+ GST_WARNING_OBJECT (srtobject->element, "Failed to get 'peerlatency'");
+ v = GST_SRT_DEFAULT_LATENCY;
+ }
+ g_value_set_int (value, v);
+ GST_OBJECT_UNLOCK (srtobject->element);
+ break;
+ }
+#endif
default:
return FALSE;
}
"Authentication",
"Authenticate a connection",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+#ifdef TIZEN_FEATURE_SRT_LATENCY
+ /**
+ * GstSRTSrc:rcvlatency:
+ *
+ * The receiver delay to absorb burst of missed packet retransmission
+ */
+ g_object_class_install_property (gobject_class, PROP_RECEIVE_LATENCY,
+ g_param_spec_int ("rcvlatency", "receive latency",
+ "receiver delay (milliseconds)", 0,
+ G_MAXINT32, GST_SRT_DEFAULT_LATENCY,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ /**
+ * GstSRTSrc:peerlatency:
+ *
+ * The minimum receiver delay for the peer.
+ */
+ g_object_class_install_property (gobject_class, PROP_PEER_LATENCY,
+ g_param_spec_int ("peerlatency", "peer latency",
+ "Minimum receiver delay for the peer (milliseconds)", 0,
+ G_MAXINT32, GST_SRT_DEFAULT_LATENCY,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+#endif
+
}
static void