Hello i am working with an IMX camera on Jetson Orin Nano 4gb, and i am trying to set aeregion property with my program. Using the ICameraProperties i read out the getMinAeRegionSize() value and got 256*256. Therefore i decided to use the aeregion size of 256x256.
My camera resolution is 1920*1080 and with testing i have found out that the aeregion setting only works at certain parts of the image, in other parts of the image it causes the pipeline to freeze and eventually timeout.
These are some examples of aeregion position that seemed to work:
GST_ARGUS: NvArgusCameraSrc: Setting AE REGION : 0 0 512 512 1.000000
AE Region: 0 0 512 512 1.000000
GST_ARGUS: Setting AeRegion on the fly: 0 0 512 512 1.000000
GST_ARGUS: NvArgusCameraSrc: Setting AE REGION : 0 512 512 1024 1.000000
AE Region: 0 512 512 1024 1.000000
GST_ARGUS: Setting AeRegion on the fly: 0 512 512 1024 1.000000
GST_ARGUS: NvArgusCameraSrc: Setting AE REGION : 0 1024 512 1536 1.000000
AE Region: 0 1024 512 1536 1.000000
GST_ARGUS: Setting AeRegion on the fly: 0 1024 512 1536 1.000000
And this is an example of values which did not work:
Afterwards i have to restart nvargus-daemon systemctl in order to run the test again.
My main question is, are there some additional conditions regarding setting the numbers in aeregion property ? Since i dont know why the pipeline is freezing with some values
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (Autocontrol) Error BadParameter: NvIspAeSetUpLac1Settings: effective image region [256x252] is too small (in src/algorithms/ae/ae_metering.cpp, function NvIspAeSetUpLac1Settings(), line 729)
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (Autocontrol) Error BadParameter: AE failed to grab PCL metadata
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (in src/algorithms/ae/ae_main.cpp, function run(), line 858)
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (Autocontrol) Error BadParameter: NvIspAeSetUpLac1Settings: effective image region [256x252] is too small (in src/algorithms/ae/ae_metering.cpp, function NvIspAeSetUpLac1Settings(), line 729)
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (Autocontrol) Error BadParameter: AE failed to grab PCL metadata
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (in src/algorithms/ae/ae_main.cpp, function run(), line 858)
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (Autocontrol) Error BadParameter: NvIspAeSetUpLac1Settings: effective image region [256x252] is too small (in src/algorithms/ae/ae_metering.cpp, function NvIspAeSetUpLac1Settings(), line 729)
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (Autocontrol) Error BadParameter: AE failed to grab PCL metadata
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (in src/algorithms/ae/ae_main.cpp, function run(), line 858)
Sep 18 06:50:35 dcs nvargus-daemon[4371]: (Autocontrol) Error BadParameter: NvIspAeSetUpLac1Settings: effective image region [256x252] is too small (in src/algorithms/ae/ae_metering.cpp, function NvIspAeSetUpLac1Settings(), line 729)
The size [256x252] as reported by the error doesnt corespond with the points i set in aeregion. This is also the case when trying to set the window to a bigger size
This is the case with a size of window set to 356x356:
Sep 18 06:57:21 dcs nvargus-daemon[4505]: CAM: serial no file already exists, skips storing again(Autocontrol) Error BadParameter: NvIspAeSetUpLac1Settings: effective image region [356x228] is too small (in src/algorithms/ae/ae_metering.cpp, function NvIspAeSetUpLac1Settings(), line 729)
Even with the resolution of 3280 x 2464 i am experiencing the same behaviour
GST_ARGUS: Setting AeRegion on the fly: 0 2056 257 2313 1.000000
GST_ARGUS: NvArgusCameraSrc: Setting AE REGION : 0 2313 257 2570 1.000000
AE Region: 0 2313 257 2570 1.000000
GST_ARGUS: Setting AeRegion on the fly: 0 2313 257 2570 1.000000
CONSUMER: ERROR OCCURRED
[ERROR] [AvDeepStream] argus-camera-source: CANCELLED�)
With the error quotes of the window being [256x148]
Sep 18 09:43:24 dcs nvargus-daemon[3401]: (Autocontrol) Error BadParameter: NvIspAeSetUpLac1Settings: effective image region [256x148] is too small (in src/algorithms/ae/ae_metering.cpp, function NvIspAeSetUpLac1Settings(), line 729)
Sep 18 09:43:24 dcs nvargus-daemon[3401]: (Autocontrol) Error BadParameter: NvIspAeSetUpLac1Settings: effective image region [256x148] is too small (in src/algorithms/ae/ae_metering.cpp, function NvIspAeSetUpLac1Settings(), line 729)
Yes thats the point, the issue with all the resolutions is that it crashes due to small window size even tho the parameters by which the window was set dont result to the values outputed in the Error.
setting aeregion to 0 2056 257 2313 1.0 is 2313-2056=257 and 257-0=257 resulting in 257x257 window by my understanding
To your second point with it being higher than 2464. I dont think it is, since the 2313-2570 is in image width, which is max 3280, due to the order being [top, left, bottom, right]. This can be seen in the documentation for aeregion
OK, that’s my mistake.
What’s your version. I check below command on JP5.1.2 without problem.
xvimagesink sync=false
GST_ARGUS: NvArgusCameraSrc: Setting AE REGION : 0 2313 257 2570 1
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 2592 x 1944 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 16.000000; Exposure Range min 34000, max 550385000;
GST_ARGUS: 2592 x 1458 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 16.000000; Exposure Range min 34000, max 550385000;
GST_ARGUS: 1280 x 720 FR = 120.000005 fps Duration = 8333333 ; Analog Gain range min 1.000000, max 16.000000; Exposure Range min 22000, max 358733000;
GST_ARGUS: Running with following settings:
Camera index = 0
Camera mode = 0
Output Stream W = 2592 H = 1944
seconds to Run = 0
Frame Rate = 29.999999
GST_ARGUS: Setting AeRegion: 0 2313 257 2570 1.000000
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
My JetPack is also 5.1.2, however i am changing the aeregion on the fly, when the camera pipleine is already running, there might be a difference since it has a custom print into the console for changing it during the run. What do you think ?