summaryrefslogtreecommitdiff
path: root/sys/rpicamsrc/gstrpicamsrc.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/rpicamsrc/gstrpicamsrc.c')
-rw-r--r--sys/rpicamsrc/gstrpicamsrc.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/sys/rpicamsrc/gstrpicamsrc.c b/sys/rpicamsrc/gstrpicamsrc.c
index 1afd6e0b8..3a74b812a 100644
--- a/sys/rpicamsrc/gstrpicamsrc.c
+++ b/sys/rpicamsrc/gstrpicamsrc.c
@@ -126,6 +126,9 @@ enum
PROP_DRC,
PROP_ANNOTATION_MODE,
PROP_ANNOTATION_TEXT,
+ PROP_ANNOTATION_TEXT_SIZE,
+ PROP_ANNOTATION_TEXT_COLOUR,
+ PROP_ANNOTATION_TEXT_BG_COLOUR,
PROP_INTRA_REFRESH_TYPE
};
@@ -422,6 +425,18 @@ gst_rpi_cam_src_class_init (GstRpiCamSrcClass * klass)
GST_RPI_CAM_TYPE_RPI_CAM_SRC_INTRA_REFRESH_TYPE,
GST_RPI_CAM_SRC_INTRA_REFRESH_TYPE_NONE,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+ g_object_class_install_property (gobject_class, PROP_ANNOTATION_TEXT_SIZE,
+ g_param_spec_int ("annotation-text-size", "Annotation text size",
+ "Set the size of annotation text (in pixels) (0 = Auto)", 0,
+ G_MAXINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+ g_object_class_install_property (gobject_class, PROP_ANNOTATION_TEXT_COLOUR,
+ g_param_spec_int ("annotation-text-colour", "Annotation text colour (VUY)",
+ "Set the annotation text colour, as a VUY hex value eg #8080FF, -1 for default", -1,
+ G_MAXINT, -1, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+ g_object_class_install_property (gobject_class, PROP_ANNOTATION_TEXT_BG_COLOUR,
+ g_param_spec_int ("annotation-text-bg-colour", "Annotation text background colour (VUY)",
+ "Set the annotation text background colour, as a VUY hex value eg #8080FF, -1 for default", -1,
+ G_MAXINT, -1, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
gst_element_class_set_static_metadata (gstelement_class,
"Raspberry Pi Camera Source", "Source/Video",
@@ -819,6 +834,21 @@ gst_rpi_cam_src_set_property (GObject * object, guint prop_id,
- 1] = '\0';
src->capture_config.change_flags |= PROP_CHANGE_ANNOTATION;
break;
+ case PROP_ANNOTATION_TEXT_SIZE:
+ src->capture_config.
+ camera_parameters.annotate_text_size = g_value_get_int (value);
+ src->capture_config.change_flags |= PROP_CHANGE_ANNOTATION;
+ break;
+ case PROP_ANNOTATION_TEXT_COLOUR:
+ src->capture_config.
+ camera_parameters.annotate_text_colour = g_value_get_int (value);
+ src->capture_config.change_flags |= PROP_CHANGE_ANNOTATION;
+ break;
+ case PROP_ANNOTATION_TEXT_BG_COLOUR:
+ src->capture_config.
+ camera_parameters.annotate_bg_colour = g_value_get_int (value);
+ src->capture_config.change_flags |= PROP_CHANGE_ANNOTATION;
+ break;
case PROP_INTRA_REFRESH_TYPE:
src->capture_config.intra_refresh_type = g_value_get_enum (value);
src->capture_config.change_flags |= PROP_CHANGE_ENCODING;
@@ -955,6 +985,15 @@ gst_rpi_cam_src_get_property (GObject * object, guint prop_id,
g_value_set_string (value,
src->capture_config.camera_parameters.annotate_string);
break;
+ case PROP_ANNOTATION_TEXT_SIZE:
+ g_value_set_int (value, src->capture_config.camera_parameters.annotate_text_size);
+ break;
+ case PROP_ANNOTATION_TEXT_COLOUR:
+ g_value_set_int (value, src->capture_config.camera_parameters.annotate_text_colour);
+ break;
+ case PROP_ANNOTATION_TEXT_BG_COLOUR:
+ g_value_set_int (value, src->capture_config.camera_parameters.annotate_bg_colour);
+ break;
case PROP_INTRA_REFRESH_TYPE:
g_value_set_enum (value, src->capture_config.intra_refresh_type);
break;