Camera TODOs
Opening this to make it easier to track known issues all over the stack. Feel free to suggest more items and link to/from this issue.
The main focus for now is on the Pixel 3a (sargo) and Snapshot (i.e. a Pipewire, GStreamer, GTK stack).
Pixel 3a
- Rear camera not supported: will ship in upcoming 6.11 update.
-
Focus does not work for rear camera (see libcamera section and https://gitlab.com/sdm670-mainline/linux/-/issues/2)
- This will also be needed to make reference images for tuning files, see below in the libcamera section.
- imx363 driver (rear camera) needs better mode/resolution data (context: https://gitlab.com/sdm670-mainline/linux/-/merge_requests/4)
-
imx355 driver (front camera) is missing features for libcamera, makes the later complain (e.g. when running
cam -l
) - imx355 driver does not work with swISP in 1920x1080 (workaround shipped in !5710 (merged), to be upstreamed)
Snapshot and/or Gstreamer
-
Distro package has broken dependencies, needs manual installation of
gst-plugins-rs
(https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/72641) - The default mode not optimal for phones (https://gitlab.gnome.org/GNOME/snapshot/-/merge_requests/317)
- Recorded videos are not rotated correctly (https://gitlab.gnome.org/GNOME/snapshot/-/issues/218)
- Flatpak needs device-all permissions to use HW en-/decoding (https://github.com/flatpak/flatpak/issues/5524)
- Some devices like the PPP crash when taking pictures (https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3693)
libcamera
- swISP does not support autofocus / AF
-
swISP does not support various algorithms to enhance image quality (see https://patchwork.libcamera.org/cover/22276/ for WIP CCM support)
- Calibration / creating tuning files needs standardized raw test images. One way to make them is using the box from here: https://source.android.com/docs/compatibility/cts/camera-its-box
- swISP deos not support (sensor+ISP specific) tuning data (initial support landed in 0.4.0, see temp/libcamera: upgrade to 0.4.0 (!5948 - merged) for examples)
- swISP runs CPU -> there are ongoing experiments to write a gpuISP (see e.g. https://gitlab.freedesktop.org/camera/libcamera-softisp/-/commits/softisp/origin/master-24-11-03+gpuisp+threadfix)