Browse Source

rpicamera: allow to set shutter without disconnecting readers

pull/1470/head
aler9 4 years ago
parent
commit
31d315ba93
  1. 1
      internal/core/path_manager.go
  2. 6
      internal/rpicamera/exe/camera.cpp

1
internal/core/path_manager.go

@ -22,6 +22,7 @@ func pathConfCanBeUpdated(oldPathConf *conf.PathConf, newPathConf *conf.PathConf
copy.RPICameraAWB = newPathConf.RPICameraAWB copy.RPICameraAWB = newPathConf.RPICameraAWB
copy.RPICameraDenoise = newPathConf.RPICameraDenoise copy.RPICameraDenoise = newPathConf.RPICameraDenoise
copy.RPICameraMetering = newPathConf.RPICameraMetering copy.RPICameraMetering = newPathConf.RPICameraMetering
copy.RPICameraShutter = newPathConf.RPICameraShutter
copy.RPICameraEV = newPathConf.RPICameraEV copy.RPICameraEV = newPathConf.RPICameraEV
copy.RPICameraFPS = newPathConf.RPICameraFPS copy.RPICameraFPS = newPathConf.RPICameraFPS

6
internal/rpicamera/exe/camera.cpp

@ -308,6 +308,8 @@ static void fill_dynamic_controls(ControlList *ctrls, const parameters_t *params
} }
ctrls->set(controls::AeMeteringMode, metering_mode); ctrls->set(controls::AeMeteringMode, metering_mode);
ctrls->set(controls::ExposureTime, params->shutter);
ctrls->set(controls::ExposureValue, params->ev); ctrls->set(controls::ExposureValue, params->ev);
int64_t frame_time = 1000000 / params->fps; int64_t frame_time = 1000000 / params->fps;
@ -321,10 +323,6 @@ bool camera_start(camera_t *cam) {
fill_dynamic_controls(camp->ctrls.get(), camp->params); fill_dynamic_controls(camp->ctrls.get(), camp->params);
if (camp->params->shutter != 0) {
camp->ctrls->set(controls::ExposureTime, camp->params->shutter);
}
if (camp->params->gain > 0) { if (camp->params->gain > 0) {
camp->ctrls->set(controls::AnalogueGain, camp->params->gain); camp->ctrls->set(controls::AnalogueGain, camp->params->gain);
} }

Loading…
Cancel
Save