| Message ID | 20251123150826.3689165-1-jai.luthra@ideasonboard.com |
|---|---|
| State | Superseded, archived |
| Headers | show |
| Series |
|
| Related | show |
Quoting Jai Luthra (2025-11-23 15:08:24) > 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. > I think I'd be keen for this to be merged - and updated whenever /wherever relevant ! Acked-by: Kieran Bingham <kieran.bingham@ideasonboard.com> > 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 > > diff --git a/Documentation/index.rst b/Documentation/index.rst > index febd4e13..a74b8668 100644 > --- a/Documentation/index.rst > +++ b/Documentation/index.rst > @@ -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> > diff --git a/Documentation/isp-feature-matrix.rst b/Documentation/isp-feature-matrix.rst > new file mode 100644 > index 00000000..6791dc96 > --- /dev/null > +++ b/Documentation/isp-feature-matrix.rst > @@ -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. > diff --git a/Documentation/meson.build b/Documentation/meson.build > index fe53ebcf..a84304dd 100644 > --- a/Documentation/meson.build > +++ b/Documentation/meson.build > @@ -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', > -- > 2.51.1 >
Hi Jai On Sun, Nov 23, 2025 at 08:38:24PM +0530, Jai Luthra wrote: > 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 > > diff --git a/Documentation/index.rst b/Documentation/index.rst > index febd4e13..a74b8668 100644 > --- a/Documentation/index.rst > +++ b/Documentation/index.rst > @@ -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> > diff --git a/Documentation/isp-feature-matrix.rst b/Documentation/isp-feature-matrix.rst > new file mode 100644 > index 00000000..6791dc96 > --- /dev/null > +++ b/Documentation/isp-feature-matrix.rst > @@ -0,0 +1,102 @@ > +.. SPDX-License-Identifier: CC-BY-SA-4.0 > + > +libcamera ISP Feature Support Matrix > +===================================== Extra = at the end > + > +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) | I think we should decide if we want to mention the SoCs, the ISP name or the product. I see a mix of those here. In example RkISP1 supports RK3399 and RK3288 Mali-C55 is integrated in Renesas V2H Not sure what's best > + +=============================================+===================+===========================+===========================+=============+============+====================+ > + | 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. > diff --git a/Documentation/meson.build b/Documentation/meson.build > index fe53ebcf..a84304dd 100644 > --- a/Documentation/meson.build > +++ b/Documentation/meson.build > @@ -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', > -- > 2.51.1 >
Hi Jacopo Quoting Jacopo Mondi (2025-11-26 13:23:25) > Hi Jai > > On Sun, Nov 23, 2025 at 08:38:24PM +0530, Jai Luthra wrote: > > 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 > > > > diff --git a/Documentation/index.rst b/Documentation/index.rst > > index febd4e13..a74b8668 100644 > > --- a/Documentation/index.rst > > +++ b/Documentation/index.rst > > @@ -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> > > diff --git a/Documentation/isp-feature-matrix.rst b/Documentation/isp-feature-matrix.rst > > new file mode 100644 > > index 00000000..6791dc96 > > --- /dev/null > > +++ b/Documentation/isp-feature-matrix.rst > > @@ -0,0 +1,102 @@ > > +.. SPDX-License-Identifier: CC-BY-SA-4.0 > > + > > +libcamera ISP Feature Support Matrix > > +===================================== > > Extra = at the end > Ah will fix. > > + > > +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) | > > I think we should decide if we want to mention the SoCs, the ISP name or > the product. I see a mix of those here. > > In example RkISP1 supports RK3399 and RK3288 > > Mali-C55 is integrated in Renesas V2H > > Not sure what's best > Yeah, I wasn't sure either. Can't really use the pipeline names as they aren't always helpful or clear for somebody new to libcamera. How about we keep it something simple in the table? RkISP1, Raspberry Pi 4, Raspberry Pi 5, Intel IPU3, Mali C55, Software ISP While the Platform Notes section below can have the details like which all SoCs/platforms are supported: Platform Notes -------------- * **RkISP1**: ISP8000Nano used in NXP i.MX8MP; and also the Rockchip ISP1 found in RK3399 and RK3288 SoCs * **Raspberry Pi 4**: VC4 based ISP used in Raspberry Pi 4's BCM2711 SoC * **Raspberry Pi 5**: PiSP backend used in Raspberry Pi 5's BCM2712 SoC * **Intel IPU3**: Intel's Image Processing Unit version 3 used in Intel 6th/7th generation CPUs. For example in Surface Pro. * **Mali C55**: ARM's ISP core used in Renesas V2H/V2N * **Software ISP**: CPU-based ISP, can be used anywhere with the `simple` pipeline Thanks, Jai > > > + +=============================================+===================+===========================+===========================+=============+============+====================+ > > + | 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. > > diff --git a/Documentation/meson.build b/Documentation/meson.build > > index fe53ebcf..a84304dd 100644 > > --- a/Documentation/meson.build > > +++ b/Documentation/meson.build > > @@ -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', > > -- > > 2.51.1 > >
Hi Jai On Wed, Nov 26, 2025 at 02:10:47PM +0530, Jai Luthra wrote: > Hi Jacopo > > Quoting Jacopo Mondi (2025-11-26 13:23:25) > > Hi Jai > > > > On Sun, Nov 23, 2025 at 08:38:24PM +0530, Jai Luthra wrote: > > > 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 > > > > > > diff --git a/Documentation/index.rst b/Documentation/index.rst > > > index febd4e13..a74b8668 100644 > > > --- a/Documentation/index.rst > > > +++ b/Documentation/index.rst > > > @@ -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> > > > diff --git a/Documentation/isp-feature-matrix.rst b/Documentation/isp-feature-matrix.rst > > > new file mode 100644 > > > index 00000000..6791dc96 > > > --- /dev/null > > > +++ b/Documentation/isp-feature-matrix.rst > > > @@ -0,0 +1,102 @@ > > > +.. SPDX-License-Identifier: CC-BY-SA-4.0 > > > + > > > +libcamera ISP Feature Support Matrix > > > +===================================== > > > > Extra = at the end > > > > Ah will fix. > > > > + > > > +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) | > > > > I think we should decide if we want to mention the SoCs, the ISP name or > > the product. I see a mix of those here. > > > > In example RkISP1 supports RK3399 and RK3288 > > > > Mali-C55 is integrated in Renesas V2H > > > > Not sure what's best > > > > Yeah, I wasn't sure either. Can't really use the pipeline names as they > aren't always helpful or clear for somebody new to libcamera. > > How about we keep it something simple in the table? > > RkISP1, Raspberry Pi 4, Raspberry Pi 5, Intel IPU3, Mali C55, Software ISP > > While the Platform Notes section below can have the details like which all > SoCs/platforms are supported: > > > Platform Notes > -------------- > > * **RkISP1**: ISP8000Nano used in NXP i.MX8MP; and also the Rockchip ISP1 found > in RK3399 and RK3288 SoCs > * **Raspberry Pi 4**: VC4 based ISP used in Raspberry Pi 4's BCM2711 SoC > * **Raspberry Pi 5**: PiSP backend used in Raspberry Pi 5's BCM2712 SoC > * **Intel IPU3**: Intel's Image Processing Unit version 3 used in Intel 6th/7th > generation CPUs. For example in Surface Pro. > * **Mali C55**: ARM's ISP core used in Renesas V2H/V2N > * **Software ISP**: CPU-based ISP, can be used anywhere with the `simple` > pipeline I'm really not sure what is best We can even add a "Platform" row | RkISP1 | Mali-C55 | IPU3 | Platforms i.MX8MP RZ/V2H Intel Kaby Lake RK3399 Intel Sky Lake RK3288 Is it too confusing ? > > Thanks, > Jai > > > > > > + +=============================================+===================+===========================+===========================+=============+============+====================+ > > > + | 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. > > > diff --git a/Documentation/meson.build b/Documentation/meson.build > > > index fe53ebcf..a84304dd 100644 > > > --- a/Documentation/meson.build > > > +++ b/Documentation/meson.build > > > @@ -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', > > > -- > > > 2.51.1 > > >
Hi Jai, Thank you for that work! Quoting Jai Luthra (2025-11-26 09:40:47) > Hi Jacopo > > Quoting Jacopo Mondi (2025-11-26 13:23:25) > > Hi Jai > > > > On Sun, Nov 23, 2025 at 08:38:24PM +0530, Jai Luthra wrote: > > > 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 > > > > > > diff --git a/Documentation/index.rst b/Documentation/index.rst > > > index febd4e13..a74b8668 100644 > > > --- a/Documentation/index.rst > > > +++ b/Documentation/index.rst > > > @@ -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> > > > diff --git a/Documentation/isp-feature-matrix.rst b/Documentation/isp-feature-matrix.rst > > > new file mode 100644 > > > index 00000000..6791dc96 > > > --- /dev/null > > > +++ b/Documentation/isp-feature-matrix.rst > > > @@ -0,0 +1,102 @@ > > > +.. SPDX-License-Identifier: CC-BY-SA-4.0 > > > + > > > +libcamera ISP Feature Support Matrix > > > +===================================== > > > > Extra = at the end > > > > Ah will fix. > > > > + > > > +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) | > > > > I think we should decide if we want to mention the SoCs, the ISP name or > > the product. I see a mix of those here. > > > > In example RkISP1 supports RK3399 and RK3288 > > > > Mali-C55 is integrated in Renesas V2H > > > > Not sure what's best > > > > Yeah, I wasn't sure either. Can't really use the pipeline names as they > aren't always helpful or clear for somebody new to libcamera. > > How about we keep it something simple in the table? > > RkISP1, Raspberry Pi 4, Raspberry Pi 5, Intel IPU3, Mali C55, Software ISP > > While the Platform Notes section below can have the details like which all > SoCs/platforms are supported: > > > Platform Notes > -------------- > > * **RkISP1**: ISP8000Nano used in NXP i.MX8MP; and also the Rockchip ISP1 found > in RK3399 and RK3288 SoCs > * **Raspberry Pi 4**: VC4 based ISP used in Raspberry Pi 4's BCM2711 SoC > * **Raspberry Pi 5**: PiSP backend used in Raspberry Pi 5's BCM2712 SoC > * **Intel IPU3**: Intel's Image Processing Unit version 3 used in Intel 6th/7th > generation CPUs. For example in Surface Pro. > * **Mali C55**: ARM's ISP core used in Renesas V2H/V2N > * **Software ISP**: CPU-based ISP, can be used anywhere with the `simple` > pipeline Adding my two cents. I'd think that the targeted reader of that table is more interested in "What's supported on my favorite SoC". The pipeline name and possibly the ISP name are internal tech details. If he/she is not too tech savy he/she might even not be able to lookup the ISP name. So I'd vote for actual SoC names, if the list is somehow manageable. This would allow us to either keep columns together for multiple SoCs if they are similar enough, or split into multiple columns if they are different enough. E.g. the i.MX8MP has the dewarper and HDR stitching which makes an impact on the feature list. Trying to write my proposal for the header I realized that I have no idea which SoCs contain the Intel IPU3 which would actually be interesting information. Raspberry Pi is a bit special in that it names a product, but the name is so well known that I feel it should be there. In the future I could imagine a product to SoC mapping table for that matter. So my proposal is something like this: | Feature | i.MX8MP | RK3399, RK3288 | BCM2711/Raspberry Pi 4 | BCM2712/Raspberry Pi 5 | Intel SoCs with IPU3 | Renesas V2H/V2N* | Software ISP (CPU)** | * Based on the ARM Mali C55, therefore easily extendable to ... ** Software ISP is supported on the following platforms: ... Best regards, Stefan > > Thanks, > Jai > > > > > > + +=============================================+===================+===========================+===========================+=============+============+====================+ > > > + | 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. > > > diff --git a/Documentation/meson.build b/Documentation/meson.build > > > index fe53ebcf..a84304dd 100644 > > > --- a/Documentation/meson.build > > > +++ b/Documentation/meson.build > > > @@ -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', > > > -- > > > 2.51.1 > > >
Hi Stefan Quoting Stefan Klug (2025-11-26 15:15:48) > Hi Jai, > > Thank you for that work! > > Quoting Jai Luthra (2025-11-26 09:40:47) > > Hi Jacopo > > > > Quoting Jacopo Mondi (2025-11-26 13:23:25) > > > Hi Jai > > > > > > On Sun, Nov 23, 2025 at 08:38:24PM +0530, Jai Luthra wrote: > > > > 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 > > > > > > > > diff --git a/Documentation/index.rst b/Documentation/index.rst > > > > index febd4e13..a74b8668 100644 > > > > --- a/Documentation/index.rst > > > > +++ b/Documentation/index.rst > > > > @@ -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> > > > > diff --git a/Documentation/isp-feature-matrix.rst b/Documentation/isp-feature-matrix.rst > > > > new file mode 100644 > > > > index 00000000..6791dc96 > > > > --- /dev/null > > > > +++ b/Documentation/isp-feature-matrix.rst > > > > @@ -0,0 +1,102 @@ > > > > +.. SPDX-License-Identifier: CC-BY-SA-4.0 > > > > + > > > > +libcamera ISP Feature Support Matrix > > > > +===================================== > > > > > > Extra = at the end > > > > > > > Ah will fix. > > > > > > + > > > > +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) | > > > > > > I think we should decide if we want to mention the SoCs, the ISP name or > > > the product. I see a mix of those here. > > > > > > In example RkISP1 supports RK3399 and RK3288 > > > > > > Mali-C55 is integrated in Renesas V2H > > > > > > Not sure what's best > > > > > > > Yeah, I wasn't sure either. Can't really use the pipeline names as they > > aren't always helpful or clear for somebody new to libcamera. > > > > How about we keep it something simple in the table? > > > > RkISP1, Raspberry Pi 4, Raspberry Pi 5, Intel IPU3, Mali C55, Software ISP > > > > While the Platform Notes section below can have the details like which all > > SoCs/platforms are supported: > > > > > > Platform Notes > > -------------- > > > > * **RkISP1**: ISP8000Nano used in NXP i.MX8MP; and also the Rockchip ISP1 found > > in RK3399 and RK3288 SoCs > > * **Raspberry Pi 4**: VC4 based ISP used in Raspberry Pi 4's BCM2711 SoC > > * **Raspberry Pi 5**: PiSP backend used in Raspberry Pi 5's BCM2712 SoC > > * **Intel IPU3**: Intel's Image Processing Unit version 3 used in Intel 6th/7th > > generation CPUs. For example in Surface Pro. > > * **Mali C55**: ARM's ISP core used in Renesas V2H/V2N > > * **Software ISP**: CPU-based ISP, can be used anywhere with the `simple` > > pipeline > > Adding my two cents. I'd think that the targeted reader of that table is > more interested in "What's supported on my favorite SoC". The pipeline > name and possibly the ISP name are internal tech details. If he/she is > not too tech savy he/she might even not be able to lookup the ISP name. > > So I'd vote for actual SoC names, if the list is somehow manageable. > This would allow us to either keep columns together for multiple SoCs if > they are similar enough, or split into multiple columns if they are > different enough. E.g. the i.MX8MP has the dewarper and HDR stitching > which makes an impact on the feature list. Hmm good point, will split out iMX8MP from the Rockchip SoCs. And looks like we don't have a row for dewarper here. Feel free to add it once the feature is in =) > > Trying to write my proposal for the header I realized that I have no > idea which SoCs contain the Intel IPU3 which would actually be > interesting information. > > Raspberry Pi is a bit special in that it names a product, but the name > is so well known that I feel it should be there. In the future I could > imagine a product to SoC mapping table for that matter. > > So my proposal is something like this: > | Feature | i.MX8MP | RK3399, RK3288 | BCM2711/Raspberry Pi 4 | BCM2712/Raspberry Pi 5 | Intel SoCs with IPU3 | Renesas V2H/V2N* | Software ISP (CPU)** | > > * Based on the ARM Mali C55, therefore easily extendable to ... > ** Software ISP is supported on the following platforms: ... > I like the above more than adding another row for SoC names. But the BCM271x part numbers make it too verbose. I would guess most of the people know it only as "the chip on my Pi board", so I feel like making an exception for Raspberry Pi's case and dropping the part number from the table in v3. I'll send the v3 shortly so it can be picked before the release. We can make tweaks later of course. > Best regards, > Stefan > Thanks, Jai > > > > Thanks, > > Jai > > > > > > > > > + +=============================================+===================+===========================+===========================+=============+============+====================+ > > > > + | 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. > > > > diff --git a/Documentation/meson.build b/Documentation/meson.build > > > > index fe53ebcf..a84304dd 100644 > > > > --- a/Documentation/meson.build > > > > +++ b/Documentation/meson.build > > > > @@ -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', > > > > -- > > > > 2.51.1 > > > >
diff --git a/Documentation/index.rst b/Documentation/index.rst index febd4e13..a74b8668 100644 --- a/Documentation/index.rst +++ b/Documentation/index.rst @@ -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> diff --git a/Documentation/isp-feature-matrix.rst b/Documentation/isp-feature-matrix.rst new file mode 100644 index 00000000..6791dc96 --- /dev/null +++ b/Documentation/isp-feature-matrix.rst @@ -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. diff --git a/Documentation/meson.build b/Documentation/meson.build index fe53ebcf..a84304dd 100644 --- a/Documentation/meson.build +++ b/Documentation/meson.build @@ -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