aptinasrc: add xsdat-file property to allow sensor file override
This commit is contained in:
parent
8ff872e634
commit
8830751c52
@ -72,11 +72,13 @@ enum
|
|||||||
PROP_DEVICE_INDEX,
|
PROP_DEVICE_INDEX,
|
||||||
PROP_CONFIG_FILE,
|
PROP_CONFIG_FILE,
|
||||||
PROP_CONFIG_PRESET,
|
PROP_CONFIG_PRESET,
|
||||||
|
PROP_XSDAT_FILE
|
||||||
};
|
};
|
||||||
|
|
||||||
#define DEFAULT_PROP_DEVICE_INDEX 0
|
#define DEFAULT_PROP_DEVICE_INDEX 0
|
||||||
#define DEFAULT_PROP_CONFIG_FILE ""
|
#define DEFAULT_PROP_CONFIG_FILE ""
|
||||||
#define DEFAULT_PROP_CONFIG_PRESET ""
|
#define DEFAULT_PROP_CONFIG_PRESET ""
|
||||||
|
#define DEFAULT_PROP_XSDAT_FILE ""
|
||||||
|
|
||||||
/* pad templates */
|
/* pad templates */
|
||||||
|
|
||||||
@ -137,6 +139,12 @@ gst_aptinasrc_class_init (GstAptinaSrcClass * klass)
|
|||||||
DEFAULT_PROP_CONFIG_FILE,
|
DEFAULT_PROP_CONFIG_FILE,
|
||||||
(GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
(GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||||
GST_PARAM_MUTABLE_READY)));
|
GST_PARAM_MUTABLE_READY)));
|
||||||
|
g_object_class_install_property (gobject_class, PROP_XSDAT_FILE,
|
||||||
|
g_param_spec_string ("xsdat-file", "xsdat file",
|
||||||
|
"Filepath of the .xsdat file or directory",
|
||||||
|
DEFAULT_PROP_CONFIG_FILE,
|
||||||
|
(GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||||
|
GST_PARAM_MUTABLE_READY)));
|
||||||
g_object_class_install_property (gobject_class, PROP_CONFIG_PRESET,
|
g_object_class_install_property (gobject_class, PROP_CONFIG_PRESET,
|
||||||
g_param_spec_string ("config-preset", "Config preset",
|
g_param_spec_string ("config-preset", "Config preset",
|
||||||
"Name of the preset in the INI file to run",
|
"Name of the preset in the INI file to run",
|
||||||
@ -181,6 +189,7 @@ gst_aptinasrc_init (GstAptinaSrc * src)
|
|||||||
src->camera_index = DEFAULT_PROP_DEVICE_INDEX;
|
src->camera_index = DEFAULT_PROP_DEVICE_INDEX;
|
||||||
src->config_file = g_strdup (DEFAULT_PROP_CONFIG_FILE);
|
src->config_file = g_strdup (DEFAULT_PROP_CONFIG_FILE);
|
||||||
src->config_preset = g_strdup (DEFAULT_PROP_CONFIG_PRESET);
|
src->config_preset = g_strdup (DEFAULT_PROP_CONFIG_PRESET);
|
||||||
|
src->xsdat_file = g_strdup (DEFAULT_PROP_XSDAT_FILE);
|
||||||
|
|
||||||
src->apbase = NULL;
|
src->apbase = NULL;
|
||||||
src->stop_requested = FALSE;
|
src->stop_requested = FALSE;
|
||||||
@ -210,6 +219,10 @@ gst_aptinasrc_set_property (GObject * object, guint property_id,
|
|||||||
g_free (src->config_preset);
|
g_free (src->config_preset);
|
||||||
src->config_preset = g_strdup (g_value_get_string (value));
|
src->config_preset = g_strdup (g_value_get_string (value));
|
||||||
break;
|
break;
|
||||||
|
case PROP_XSDAT_FILE:
|
||||||
|
g_free (src->xsdat_file);
|
||||||
|
src->xsdat_file = g_strdup (g_value_get_string (value));
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
|
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
|
||||||
break;
|
break;
|
||||||
@ -235,6 +248,9 @@ gst_aptinasrc_get_property (GObject * object, guint property_id,
|
|||||||
case PROP_CONFIG_PRESET:
|
case PROP_CONFIG_PRESET:
|
||||||
g_value_set_string (value, src->config_preset);
|
g_value_set_string (value, src->config_preset);
|
||||||
break;
|
break;
|
||||||
|
case PROP_XSDAT_FILE:
|
||||||
|
g_value_set_string (value, src->xsdat_file);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
|
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
|
||||||
break;
|
break;
|
||||||
@ -427,11 +443,13 @@ gst_aptinasrc_start (GstBaseSrc * bsrc)
|
|||||||
|
|
||||||
GST_DEBUG_OBJECT (src, "start");
|
GST_DEBUG_OBJECT (src, "start");
|
||||||
|
|
||||||
|
ap_DeviceProbe (src->xsdat_file);
|
||||||
|
|
||||||
//src->apbase = ap_CreateFromImageFile("C:\\temp\\1.jpg");
|
//src->apbase = ap_CreateFromImageFile("C:\\temp\\1.jpg");
|
||||||
src->apbase = ap_Create (src->camera_index);
|
src->apbase = ap_Create (src->camera_index);
|
||||||
if (!src->apbase) {
|
if (!src->apbase) {
|
||||||
GST_ELEMENT_ERROR (src, RESOURCE, NOT_FOUND,
|
GST_ELEMENT_ERROR (src, RESOURCE, NOT_FOUND,
|
||||||
("Failed to open camera"), (NULL));
|
("Failed to open camera, error=%d", ap_GetLastError ()), (NULL));
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -46,6 +46,7 @@ struct _GstAptinaSrc
|
|||||||
gint camera_index;
|
gint camera_index;
|
||||||
gchar *config_file;
|
gchar *config_file;
|
||||||
gchar *config_preset;
|
gchar *config_preset;
|
||||||
|
gchar *xsdat_file;
|
||||||
|
|
||||||
GstClockTime acq_start_time;
|
GstClockTime acq_start_time;
|
||||||
guint32 last_frame_count;
|
guint32 last_frame_count;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user