Public bug reported:
System
- Ubuntu 26.04.1 LTS (Kubuntu), kernel 7.0.0-38-generic
- libcamera0.7 / libcamera-ipa 0.7.0-1ubuntu2 (resolute/main); stonking
publishes the same version
- PipeWire 1.6.2, libspa-0.2-libcamera 1.6.2-1ubuntu1.2
- Lenovo ThinkPad X1 Carbon Gen 13 (21NX, Core Ultra 7 265U), Intel IPU6
(8086:7d19), OmniVision OV08X40 sensor (ACPI OVTI08F4) behind the Intel USBIO
bridge; the sensor appears once linux-modules-vision-generic (intel_cvs) is
installed
- libcamera simple pipeline handler with the GPU software ISP; used through
PipeWire (Teams for Linux, GStreamer pipewiresrc) and directly (cam,
libcamerasrc)
Problem
With 0.7.0-1ubuntu2 the internal camera is heavily overexposed in normal indoor
light, with a green/cyan cast and grey blacks. In cloudy daylight (640x480
through PipeWire) the centre of the frame measured luma 217-221 of 255, with
28-29 % of the frame clipped.
Debug log (LIBCAMERA_LOG_LEVELS='*:DEBUG', libcamerasrc, 25 s):
- "Failed to create camera sensor helper for ov08x40"
- IPASoft: exposure range 4-4992, gain 128-1984; all 181 AGC cycles at exposure
4992 / gain 1984 - the AGC never regulates; exposureMSV 1.59-1.74 against the
fixed target 2.5
- no ov08x40 tuning file, fallback to uncalibrated.yaml
What does not fix it
libcamera 0.7.2 (Debian's 0.7.2-1 rebuilt for resolute) adds the OV08X40 camera
sensor helper and improves the colour, but the soft-ISP AGC still stays at
exposure 4992 / analogue gain 15.5: its fixed MSV target is out of reach in
normal indoor light. The face stayed overexposed (luma 243, 79 % clipped).
What fixes it
The upstream AGC rework ("ipa: libipa: agc rework" v8), merged into libcamera
master on 2026-08-26: soft-ISP port 004fea17dda4, series end
63f9b4e5d9a9ba2ee2ebe1bfcdc0af453863c988. For sensors with a camera sensor
helper (OV08X40 has one) the soft ISP then uses libipa's AgcMeanLuminance.
I built exactly 63f9b4e5 with Debian's unchanged 0.7.2-1 packaging for resolute
(local version 0.7.2+git20260826.63f9b4e5-0local26.04.1) and have used it since
2026-10-04:
- the AGC regulates (log converges to the luminance target)
- face luma 179 (32 % clipped) instead of 243 (79 %); whole frame 7.5 % clipped
instead of 23-36 %
- works through PipeWire with Ubuntu's unchanged libspa-0.2-libcamera; the
picture looks natural in Teams
Upstream status: in no release yet (newest tag v0.7.2, 2026-07-10).
Notes for packaging
- Up to 63f9b4e5 the public headers change only in include/libcamera/ipa/
(libcamera and its own IPA modules); version and SONAME stay 0.7. Every
libcamera symbol that Ubuntu's libspa-libcamera.so imports is present in the
63f9b4e5 build.
- After 63f9b4e5, master replaced libcamera::Span with std::span (957f0f4b,
2026-09-01) without a SONAME change. Ubuntu's libspa-libcamera.so imports
Camera::generateConfiguration(libcamera::Span<...>), so a later master snapshot
breaks the PipeWire camera plugin unless PipeWire is rebuilt.
- The IPA is renamed simple -> softisp (ipa_softisp.so, tuning files under
.../ipa/softisp/).
- Related: bug #2153314 (Merge libcamera from Debian for stonking cycle).
- Colour is a separate matter: without a colour matrix the grey-world AWB
leaves a cast. I use a local tuning file with a colour matrix from Intel's
calibration data; an OV08X40 tuning file for softisp is pending upstream. Not
part of this request.
Request
Please ship a libcamera that contains the AGC rework: the next upstream release
for 26.10 (see #2153314), and, if feasible, a fix for 26.04 LTS (for example
0.7.2 plus the AGC rework series up to 63f9b4e5). I can test packages on this
hardware.
ubuntu-bug could not be used because the system currently runs the
locally built package; the versions above are taken from the system.
** Affects: libcamera (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2169473
Title:
libcamera 0.7.0: OV08X40 webcam (ThinkPad X1 Carbon Gen 13) badly
overexposed, AGC stuck at maximum - fixed by the upstream soft-ISP AGC
rework (unreleased)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libcamera/+bug/2169473/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs