@@ -9,6 +9,7 @@
Introduction <self>
Feature Requirements <feature_requirements>
Runtime configuration <runtime_configuration>
+ ISP feature support matrix <isp-feature-matrix>
Application Writer's Guide <guides/application-developer>
Python Bindings <python-bindings>
Public API <public-api/index>
new file mode 100644
@@ -0,0 +1,102 @@
+.. SPDX-License-Identifier: CC-BY-SA-4.0
+
+libcamera ISP Feature Support Matrix
+=====================================
+
+The following table shows the current status of ISP feature support across
+different platforms in libcamera.
+
+.. table:: ISP Feature Support by Platform
+
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Feature | i.MX8MP (RKISP) | BCM2711 (Raspberry Pi 4) | BCM2712 (Raspberry Pi 5) | Intel IPU3 | Mali C55 | Software ISP (CPU) |
+ +=============================================+===================+===========================+===========================+=============+============+====================+
+ | Auto Gain Control Stats (AGC) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Auto Focus (AF) | 🛠️ (CDAF) | ✅ (CDAF/PDAF) | ✅ (CDAF/PDAF) | ✅ (CDAF) | 🚫 | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | HDR Stitching | ✅ | ✅ (Software only) | ✅ | ❓ | 🛠️ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Companding | ✅ | 🚫 | ✅ | ❓ | ❓ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Black Level Subtraction (BLS) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Lens Shading Correction (LSC) | ✅ | ✅ | ✅ | ✅ | ✅ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Auto Whitebalance (AWB) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Defective Pixel Correction (DPC) | ✅ | ✅ | ✅ | 🚫 | ✅ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | 2D Noise Filtering | ✅ | ✅ | ✅ | ❓ | 🛠️ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Local Tone Mapping | 🛠️ | 🚫 | ✅ | 🚫 | 🚫 | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Demosaicing | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Chromatic Aberration Correction (CAC) | 🛠️ | 🚫 | ✅ | ❓ | 🛠️ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Sharpening | ✅ | ✅ | ✅ | ❓ | 🛠️ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Chroma Noise Reduction | 🚫 | ✅ | ✅ | ❓ | ❓ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | 3D Noise Filtering | 🚫 | 🚫 | ✅ | ❓ | 🛠️ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Color Correction Matrix (CCM) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Global Tone Mapping | 🛠️ | ✅ | ✅ | ✅ | 🛠️ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Gamma Correction | ✅ | ✅ | ✅ | ❓ | 🛠️ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Color Space Conversion | ✅ | ✅ | ✅ | ❓ | ❓ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Image Stabilization | 🛠️ | ❓ | ❓ | ❓ | ❓ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Scaling | ✅ | ✅ | ✅ | ❓ | ✅ | ✅ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+ | Multi-context | 🚫 | 🛠️ | 🛠️ | ❓ | 🛠️ | ❓ |
+ +---------------------------------------------+-------------------+---------------------------+---------------------------+-------------+------------+--------------------+
+
+
+
+
+Status Definitions
+------------------
+
+✅ **Supported**
+ Feature is fully implemented and working in libcamera.
+
+🛠️ **Needs Development**
+ Feature is planned or being developed and may have partial or no
+ functionality.
+
+🚫 **No Hardware**
+ The underlying hardware does not support this feature.
+
+❓ **Unknown**
+ Support status is unclear or has not been determined yet.
+
+Platform Notes
+--------------
+
+* **i.MX8MP (RKISP1)**: ISP8000Nano used in NXP i.MX8MP SoC
+* **BCM2711 (Raspberry Pi 4)**: VC4 based ISP used in Raspberry Pi 4
+* **BCM2712 (Raspberry Pi 5)**: PiSP (CFE + backend) used in Raspberry Pi 5
+* **Intel IPU3**: Intel's Image Processing Unit version 3
+* **Mali C55**: ARM's ISP core
+* **Software ISP (CPU)**: CPU-based image signal processing pipeline
+
+Contributing
+------------
+
+This feature matrix is maintained by the libcamera community and is updated as
+new features are implemented or new platforms are supported.
+
+**Updating the Matrix**
+ When adding support for a new ISP feature or platform (SoC), please update
+ this matrix as part of the same patch or series. Ensure that the feature
+ support status for all relevant platforms reflects the changes introduced.
+
+**Reporting Updates**
+ If you notice any inaccuracies or outdated information in this matrix,
+ please open an issue or submit a patch. Refer to the contributing
+ guidelines in the :doc:`contributing` guide.
@@ -164,6 +164,7 @@ if sphinx.found()
'index.rst',
'internal-api/index.rst',
'introduction.rst',
+ 'isp-feature-matrix.rst',
'lens_driver_requirements.rst',
'libcamera_architecture.rst',
'mali-c55.dot',
Add a new living document presenting a matrix of image processing feature support across all currently supported platforms in libcamera. This will hopefuly help in answering questions like is HDR supported with Software ISP or is Auto Focus supported on Raspberry Pi? This matrix will be regularly updated as new features and platforms are added. Signed-off-by: Jai Luthra <jai.luthra@ideasonboard.com> --- Changes since v1: - Use restructuredText grid table instead of list table - Update bcm2711/bcm2712 with Naush's inputs - Add the new document in the index - Reword the Platform Notes section - Link to v1: https://patchwork.libcamera.org/patch/24438/ I will send a separate patch for the sensor support table --- Documentation/index.rst | 1 + Documentation/isp-feature-matrix.rst | 102 +++++++++++++++++++++++++++ Documentation/meson.build | 1 + 3 files changed, 104 insertions(+) create mode 100644 Documentation/isp-feature-matrix.rst -- 2.51.1