+
+#ifdef TIZEN_FEATURE_WLSINK_ENHANCEMENT
+ g_object_class_install_property (gobject_class, PROP_KEEP_CAMERA_PREVIEW,
+ g_param_spec_boolean ("keep-camera-preview", "use flush buffer mechanism",
+ "Last tbm buffer is copied and returned to camerasrc immediately "
+ "when state change(PAUSED_TO_READY)", FALSE,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_USE_TBM,
+ g_param_spec_boolean ("use-tbm", "use tbm buffer",
+ "Use Tizen Buffer Memory insted of Shared memory, "
+ "Memory is alloced by TBM insted of SHM when enabled", TRUE,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_ROTATE_ANGLE,
+ g_param_spec_enum ("rotate", "Rotate angle",
+ "Rotate angle of display output",
+ GST_TYPE_WAYLANDSINK_ROTATE_ANGLE, DEGREE_0,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_DISPLAY_GEOMETRY_METHOD,
+ g_param_spec_enum ("display-geometry-method", "Display geometry method",
+ "Geometrical method for display",
+ GST_TYPE_WAYLANDSINK_DISPLAY_GEOMETRY_METHOD,
+ DEF_DISPLAY_GEOMETRY_METHOD,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_FLIP,
+ g_param_spec_enum ("flip", "Display flip",
+ "Flip for display",
+ GST_TYPE_WAYLANDSINK_FLIP, DEF_DISPLAY_FLIP,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_VISIBLE,
+ g_param_spec_boolean ("visible", "Visible",
+ "Draws screen or blacks out, true means visible, false blacks out",
+ TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+#ifdef ENABLE_FUNCTION
+ g_object_class_install_property (gobject_class, PROP_SCALE_WIDTH,
+ g_param_spec_double ("scale-w", "ratio width",
+ "scale width for rendering video,"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0.0,
+ G_MAXDOUBLE, 1.0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_SCALE_HEIGHT,
+ g_param_spec_double ("scale-h", "scale height",
+ "scale width for rendering video, "
+ "Function is not support in DISP_GEO_METHOD_CUSTOM_ROI. ", 0.0,
+ G_MAXDOUBLE, 1.0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_FOLLOW_PARENT_TRANSFORM,
+ g_param_spec_boolean ("follow-parent-transform",
+ "follow parent transform",
+ "Video is rotated automatically without setting rotate property by rotating Display"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", TRUE,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_CROP_X,
+ g_param_spec_uint ("crop-x", "crop x",
+ "x-coordinate for cropping video. "
+ "Please set crop-x, crop-y, crop-w and crop-h togethrer. "
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_CROP_Y,
+ g_param_spec_uint ("crop-y", "crop y",
+ "y-coordinate for cropping video. "
+ "Please set crop-x, crop-y, crop-w and crop-h togethrer. "
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_CROP_WIDTH,
+ g_param_spec_uint ("crop-w", "crop width",
+ "width for cropping video. "
+ "If value is not set or is set 0, Width is set to video width after set_caps. "
+ "Please set crop-x, crop-y, crop-w and crop-h togethrer. "
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_CROP_HEIGHT,
+ g_param_spec_uint ("crop-h", "crop height",
+ "height for cropping video. "
+ "If value is not set or is set 0, Hight is set to video height after set_caps. "
+ "Please set crop-x, crop-y, crop-w and crop-h togethrer. "
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_RATIO_WIDTH,
+ g_param_spec_double ("ratio-w", "ratio width",
+ "ratio width for rendering video,"
+ "If value is set, Original video ratio is ignored. to restore original size, set to -1"
+ "Please set ratio-w and ratio-h togethrer. "
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", -1.0,
+ G_MAXDOUBLE, -1.0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_RATIO_HEIGHT,
+ g_param_spec_double ("ratio-h", "ratio height",
+ "ratio width for rendering video, "
+ "If value is set, Original video ratio is ignored. to restore original size, set to -1"
+ "Please set ratio-w and ratio-h togethrer. "
+ "Function is not support in DISP_GEO_METHOD_CUSTOM_ROI. ", -1.0,
+ G_MAXDOUBLE, -1.0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_OFFSET_X,
+ g_param_spec_uint ("offset-x", "offset x",
+ "x offset for moving x-coordinate of video pixel, "
+ "Please set x, y, w and h offset togethrer"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_OFFSET_Y,
+ g_param_spec_uint ("offset-y", "offset y",
+ "y offset for moving y-coordinate of video pixel, "
+ "Please set x, y, w and h offset togethrer"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_OFFSET_WIDTH,
+ g_param_spec_uint ("offset-w", "offset width",
+ "width offset for adjusting width of of video pixel, "
+ "Please set x, y, w and h offset togethrer"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_OFFSET_HEIGHT,
+ g_param_spec_uint ("offset-h", "offset height",
+ "height offset for adjusting height of of video pixel"
+ "Please set x, y, w and h offset togethrer"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0,
+ G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_ALIGN_WIDTH,
+ g_param_spec_double ("align-w", "align width",
+ "Align with, Left: 0.0, Middle: 0.5, Right: 1.0, "
+ "Please set align-w and align-h togethrer"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0.0,
+ 1.0, 0.5, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (gobject_class, PROP_ALIGN_HEIGHT,
+ g_param_spec_double ("align-h", "align height",
+ "Align height, Left: 0.0, Middle: 0.5, Right: 1.0, "
+ "Please set align-w and align-h togethrer"
+ "Function is not supported in DISP_GEO_METHOD_CUSTOM_ROI. ", 0.0,
+ 1.0, 0.5, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+#endif
+
+ /* fakesink function for stream callback of MSL with browser */
+ g_object_class_install_property (gobject_class, PROP_SIGNAL_HANDOFFS,
+ g_param_spec_boolean ("signal-handoffs", "Signal handoffs",
+ "Send a signal before unreffing the buffer", FALSE,
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
+ gst_waylandsink_signals[SIGNAL_HANDOFF] =
+ g_signal_new ("handoff", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (GstWaylandSinkClass, handoff), NULL, NULL,
+ g_cclosure_marshal_generic, G_TYPE_NONE, 2,
+ GST_TYPE_BUFFER | G_SIGNAL_TYPE_STATIC_SCOPE, GST_TYPE_PAD);
+
+ gst_waylandsink_signals[SIGNAL_PREROLL_HANDOFF] =
+ g_signal_new ("preroll-handoff", G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GstWaylandSinkClass, preroll_handoff),
+ NULL, NULL, g_cclosure_marshal_generic, G_TYPE_NONE, 2,
+ GST_TYPE_BUFFER | G_SIGNAL_TYPE_STATIC_SCOPE, GST_TYPE_PAD);
+
+#endif