rpicamera: allow to set gain without disconnecting readers

This commit is contained in:
aler9
2023-02-14 11:36:21 +01:00
parent 31d315ba93
commit 19b06f96eb
2 changed files with 5 additions and 6 deletions
+2 -1
View File
@@ -21,8 +21,9 @@ func pathConfCanBeUpdated(oldPathConf *conf.PathConf, newPathConf *conf.PathConf
copy.RPICameraExposure = newPathConf.RPICameraExposure
copy.RPICameraAWB = newPathConf.RPICameraAWB
copy.RPICameraDenoise = newPathConf.RPICameraDenoise
copy.RPICameraMetering = newPathConf.RPICameraMetering
copy.RPICameraShutter = newPathConf.RPICameraShutter
copy.RPICameraMetering = newPathConf.RPICameraMetering
copy.RPICameraGain = newPathConf.RPICameraGain
copy.RPICameraEV = newPathConf.RPICameraEV
copy.RPICameraFPS = newPathConf.RPICameraFPS
+3 -5
View File
@@ -296,6 +296,8 @@ static void fill_dynamic_controls(ControlList *ctrls, const parameters_t *params
}
ctrls->set(controls::draft::NoiseReductionMode, denoise_mode);
ctrls->set(controls::ExposureTime, params->shutter);
int metering_mode;
if (strcmp(params->metering, "spot") == 0) {
metering_mode = controls::MeteringSpot;
@@ -308,7 +310,7 @@ static void fill_dynamic_controls(ControlList *ctrls, const parameters_t *params
}
ctrls->set(controls::AeMeteringMode, metering_mode);
ctrls->set(controls::ExposureTime, params->shutter);
ctrls->set(controls::AnalogueGain, params->gain);
ctrls->set(controls::ExposureValue, params->ev);
@@ -323,10 +325,6 @@ bool camera_start(camera_t *cam) {
fill_dynamic_controls(camp->ctrls.get(), camp->params);
if (camp->params->gain > 0) {
camp->ctrls->set(controls::AnalogueGain, camp->params->gain);
}
if (camp->camera->controls().count(&controls::AfMode) > 0) {
int af_mode;
if (strcmp(camp->params->af_mode, "manual") == 0) {