I am using the gstreamer pipeline to capture images from a CSI camera, and I want to change the camera controls in runtime and make the modification effective immediately.
However, I find that the image is still captured using the previous camera controls after I set the new camera controls such as exposure time range and gain range in the nvarguscamerasrc element of the gstreamer pipeline.
Only after a certain period of time, the image is captured using the new parameters. If the frame rate is set to 30 fps, the wrong captured images flow usually lasts 5-10 frames.
Here is the code of modifying camera controls:
g_object_set(G_OBJECT(element_nv), “exposuretimerange”, “1000000 1000000”, NULL);
g_object_set(G_OBJECT(element_nv), “gainrange”, “5 5”, NULL);