Arducam 8MP IMX219 B0196 dark and wrong color on Linux v4l2-ctl vs Windows AMcap

Hi everyone, I’m running into a strange issue with my Arducam 8MP IMX219 (B0196). I’m using the same camera control parameters on Windows (AMcap) and Linux (v4l2-ctl), but the results are totally different. The one that stands out is exposure_absolute: Windows shows -5, Linux shows 313.

The Windows capture looks correct and good, but on Linux the image is dark and the colors are all weird/wrong.

My environment:

  • Camera: 8MP IMX219, B0196
  • Windows: AMcap
  • Linux: v4l2-ctl
  • exposure_absolute: Windows -5, Linux 313

Here are some examples. The left image is Windows and the right one is Linux:
arducam_fps_2.jpg
Video sample: 20240121232113.avi

Has anyone seen this before?

Thanks for the details and the samples. So you’re passing the same logical parameters on both platforms, but exposure_absolute ends up being read as -5 on Windows and 313 on Linux. That difference in itself suggests the control is being interpreted differently between the two platforms, or there are other parameters in play that aren’t the same.

Let me grab a B0196 and try to reproduce this on both Windows and Linux. Give me a little time to run the retest and I’ll get back to you.

Sure, no rush. Let me know if you need anything else from my side.

Okay, I ran a test on both Windows and Linux. I only changed one parameter this time - the exposure time (曝光时间). The brightness difference between the two captures was actually not that big (差异不大).

So exposure time alone doesn’t seem to explain the dark image and weird color you’re seeing.

Did you change any other parameters besides exposure time? (您是否有改变其他的参数?) If you can, please compare the full list of control values between AMcap and v4l2-ctl so we can spot what else is different.

I’ll go back and check the other controls. It’s possible I changed something else without realizing it. I’ll post the full parameter list from both sides once I have it.

To sum up where we are right now: on my side, changing only the exposure time produced similar brightness on Windows and Linux, so exposure time alone doesn’t look like the culprit. The dark/weird color on Linux is more likely coming from another camera control parameter being set differently (or interpreted differently) between the two platforms. Once we compare the complete control list from both AMcap and v4l2-ctl, we should be able to pinpoint which parameter is causing the difference.