Jetpack 4.5 - will the V4L2 API for ISP provide the same functionality as libARGUS?

Hello guys,
So far I was using GStreamer to use the ISP from the NVIDIA Jetson NANO. But there is some functionality that I found in libArgus API but not in the GStreamer Element (custom Color Correction Matrix, Gamma Correction).

So I was thinking about using LibArgus but it seems pretty complex on the first look, so I was wondering if Jetpack 4.5 is still planned on being released in December and if the V4L2 API for ISP has the same functionality as LibArgus when it comes to settings I can set for ISP.

I have seen that it should be included in Jetpack 4.5 on this illustration:

For getting to know libArgus I would use [09_camera_jpeg_capture] and [10_camera_recording] for a start. That should be a good start, right?

Thank you for any response! :)

Best regards,
jb

You can build your own nvarguscamerasrc to gstreamer pipeline.
Have a reference to below link.

This was a great hint!
It is already working!
I just have a question about the Argus::IAutoControlSettings::setToneMapCurve function.
Am I understanding it right, that I can provide a LUT that will translate incoming values to output values read out from the LUT? If so, why do I get 129 from Argus::IAutoControlSettings::getToneMapCurveSize. I was expecting 1024 since I have a 10bit sensor, so my incoming values range from 0-1023.
But I guess I understood wrong?

Best regards,
jb

It’s size of vector.

https://docs.nvidia.com/jetson/l4t-multimedia/classArgus_1_1IAutoControlSettings.html#ad4467e28d8f8cdec4a0069a6e2dfb2af

Yeah I know! But what does toneMapping do exactly? So I should give a vector from 0.0 - 1.0, right?

How is this calculated on my image when I have 10 bit?

Best regards,
jb

It’s 0 -1 floating value.

Having set a tonemap or manual whitebalance, the autoExposure function does not work anymore. It slowly sets exposure to minimum. Any idea?
As input I have 10-bit Bayer sensor.
I tested using example tonemap from the forum:

float toneval[129] = {0.000000,
0.056696,
0.112414,
0.159335,
0.193548,
0.226784,
0.254154,
0.282502,
0.304008,
0.324536,
0.346041,
0.364614,
0.384164,
0.399805,
0.416422,
0.431085,
0.443793,
0.457478,
0.471163,
0.481916,
0.494624,
0.506354,
0.517107,
0.529814,
0.542522,
0.555230,
0.566960,
0.577713,
0.588465,
0.599218,
0.609971,
0.619746,
0.629521,
0.639296,
0.649071,
0.657869,
0.665689,
0.674487,
0.682307,
0.690127,
0.697947,
0.705767,
0.714565,
0.722385,
0.730205,
0.738025,
0.745846,
0.753666,
0.761486,
0.767351,
0.773216,
0.777126,
0.782014,
0.786901,
0.791789,
0.795699,
0.800587,
0.804497,
0.809384,
0.813294,
0.817204,
0.821114,
0.825024,
0.828934,
0.832845,
0.836755,
0.840665,
0.844575,
0.847507,
0.851417,
0.855327,
0.858260,
0.862170,
0.865103,
0.869013,
0.871945,
0.874878,
0.878788,
0.881720,
0.884653,
0.887586,
0.890518,
0.893451,
0.896383,
0.899316,
0.902248,
0.905181,
0.908113,
0.911046,
0.913979,
0.916911,
0.918866,
0.921799,
0.924731,
0.927664,
0.929619,
0.932551,
0.935484,
0.937439,
0.940371,
0.942326,
0.945259,
0.948192,
0.950147,
0.952102,
0.955034,
0.956989,
0.959922,
0.960899,
0.962854,
0.965787,
0.967742,
0.969697,
0.972630,
0.974585,
0.976540,
0.978495,
0.981427,
0.983382,
0.985337,
0.987292,
0.989247,
0.991202,
0.993157,
0.995112,
0.997067,
0.998045,
0.999022,
1.000000};

Can you help me with how to debug this behavior? :)
Can I readout debug messages or statistics on auto exposure?

Best regards,
jb

Enable the debug message by below step.

sudo su
kill the process of nvargus-daemon
export enableCamPclLogs=5

/usr/sbin/nvargus-daemon
lanuch camera APP from another console