We faced with a issue under exposure control in gstreamer.
The problem is exposure value not changed smooth
As you can see value just oscillate from 8333 to 16666.
Is it possible to control exposure step in gstreamer?
In device tree we have:
min_exp_time = “60”;
max_exp_time = “33200”;
step_exp_time = “1”;
default_exp_time = “15000”;
command used to start gstreamer:
gst-launch-1.0 -e nvarguscamerasrc sensor-id=0 sensor_mode=0 “video/x-raw(memory:NVMM), width=3864, height=2192, format=NV12,framerate=30/1” !
nvvidconv flip-method=0 ! “video/x-raw,width=1920, height=1080” ! nvvidconv ! nvoverlaysink
What’s your sensor module? IMX219/IMX477?
We use sensor IMX415-AAMR-C
You need make sure the sensor driver exposure control been linearity.
It’s a formula to control exposure:
coarse_time_shs1 = mode->signal_properties.pixel_clock.val *
val / mode->image_properties.line_length /
I got it from imx185.c Where “val” is a value getting from gstreamer.
In most cases it works correct. But starting from val >= 8000 gstreamer val just oscillate between two values.
For example 8333 and 16666.
Is it possible to control exposure step at gstreamer side?
Only able control the exposuretimerange by gstreamer.
Get the information from gst-inspect-1.0 nvarguscamewrasrc.
I tried change exposuretimerange, it does not help.
Can you guide me where exposure step val calculated? In gstreamer or nvarguscamewrasrc?
If set the range to 10000 12000 didn’t help that could be the sensor driver’s problem.
BTW the AE calculated didn’t public in any source.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.