Compare commits
2 Commits
6e1195c94c
...
340cd1dd6e
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
340cd1dd6e | ||
|
|
60f77cc884 |
@@ -54,10 +54,10 @@ Manual gain=0
|
|||||||
|
|
||||||
|
|
||||||
[Timing]
|
[Timing]
|
||||||
Pixelclock=237
|
Pixelclock=474
|
||||||
Extended pixelclock range=0
|
Extended pixelclock range=0
|
||||||
Framerate=99.968929
|
Framerate=750
|
||||||
Exposure=9.910081
|
Exposure=1.24
|
||||||
Long exposure=0
|
Long exposure=0
|
||||||
Dual exposure ratio=0
|
Dual exposure ratio=0
|
||||||
|
|
||||||
|
|||||||
@@ -334,10 +334,40 @@ gst_idsueyesrc_get_property (GObject * object, guint property_id,
|
|||||||
g_value_set_int (value, src->timeout);
|
g_value_set_int (value, src->timeout);
|
||||||
break;
|
break;
|
||||||
case PROP_EXPOSURE:
|
case PROP_EXPOSURE:
|
||||||
|
if (src->is_started && src->hCam) {
|
||||||
|
double current_exposure = 0.0;
|
||||||
|
INT ret = is_Exposure (src->hCam, IS_EXPOSURE_CMD_GET_EXPOSURE,
|
||||||
|
¤t_exposure, sizeof(double));
|
||||||
|
if (ret == IS_SUCCESS) {
|
||||||
|
/* Update cached value to match hardware state */
|
||||||
|
src->exposure = current_exposure;
|
||||||
|
g_value_set_double (value, current_exposure);
|
||||||
|
} else {
|
||||||
|
GST_WARNING_OBJECT (src, "Failed to query exposure (error %d), returning cached value",
|
||||||
|
ret);
|
||||||
g_value_set_double (value, src->exposure);
|
g_value_set_double (value, src->exposure);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
g_value_set_double (value, src->exposure);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case PROP_FRAMERATE:
|
case PROP_FRAMERATE:
|
||||||
|
if (src->is_started && src->hCam) {
|
||||||
|
double current_fps = 0.0;
|
||||||
|
/* Query current framerate by calling is_SetFrameRate with IS_GET_FRAMERATE */
|
||||||
|
INT ret = is_SetFrameRate (src->hCam, IS_GET_FRAMERATE, ¤t_fps);
|
||||||
|
if (ret == IS_SUCCESS) {
|
||||||
|
/* Update cached value to match hardware state */
|
||||||
|
src->framerate = current_fps;
|
||||||
|
g_value_set_double (value, current_fps);
|
||||||
|
} else {
|
||||||
|
GST_WARNING_OBJECT (src, "Failed to query framerate (error %d), returning cached value",
|
||||||
|
ret);
|
||||||
g_value_set_double (value, src->framerate);
|
g_value_set_double (value, src->framerate);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
g_value_set_double (value, src->framerate);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case PROP_GAIN:
|
case PROP_GAIN:
|
||||||
g_value_set_int (value, src->gain);
|
g_value_set_int (value, src->gain);
|
||||||
|
|||||||
Reference in New Issue
Block a user