Cover Letter Detail
Show a cover letter.
GET /api/covers/24808/?format=api
{ "id": 24808, "url": "https://patchwork.libcamera.org/api/covers/24808/?format=api", "web_url": "https://patchwork.libcamera.org/cover/24808/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20251024151058.1523308-1-julien.vuillaumier@nxp.com>", "date": "2025-10-24T15:10:56", "name": "[RFC,v1,0/2] libcamera: camera_sensor: Add support for an additional image stream", "submitter": { "id": 190, "url": "https://patchwork.libcamera.org/api/people/190/?format=api", "name": "Julien Vuillaumier", "email": "julien.vuillaumier@nxp.com" }, "mbox": "https://patchwork.libcamera.org/cover/24808/mbox/", "series": [ { "id": 5527, "url": "https://patchwork.libcamera.org/api/series/5527/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=5527", "date": "2025-10-24T15:10:56", "name": "libcamera: camera_sensor: Add support for an additional image stream", "version": 1, "mbox": "https://patchwork.libcamera.org/series/5527/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/covers/24808/comments/", "headers": { "Return-Path": "<libcamera-devel-bounces@lists.libcamera.org>", "X-Original-To": "parsemail@patchwork.libcamera.org", "Delivered-To": "parsemail@patchwork.libcamera.org", "Received": [ "from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 9658DBE080\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 24 Oct 2025 15:11:46 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id E74E960976;\n\tFri, 24 Oct 2025 17:11:45 +0200 (CEST)", "from GVXPR05CU001.outbound.protection.outlook.com\n\t(mail-swedencentralazlp170130007.outbound.protection.outlook.com\n\t[IPv6:2a01:111:f403:c202::7])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id EF32860976\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 24 Oct 2025 17:11:43 +0200 (CEST)", "from AM9PR04MB8147.eurprd04.prod.outlook.com\n\t(2603:10a6:20b:3e0::22)\n\tby VI0PR04MB11784.eurprd04.prod.outlook.com (2603:10a6:800:2ea::12)\n\twith Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9253.13;\n\tFri, 24 Oct 2025 15:11:42 +0000", "from AM9PR04MB8147.eurprd04.prod.outlook.com\n\t([fe80::b387:72c6:e33c:8656]) by\n\tAM9PR04MB8147.eurprd04.prod.outlook.com\n\t([fe80::b387:72c6:e33c:8656%7]) with mapi id 15.20.9253.011;\n\tFri, 24 Oct 2025 15:11:42 +0000" ], "Authentication-Results": [ "lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=nxp.com header.i=@nxp.com header.b=\"htoAka+i\";\n\tdkim-atps=neutral", "dkim=none (message not signed)\n\theader.d=none;dmarc=none action=none header.from=nxp.com;" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n\tb=Id87uq19RiU8ODBR86AOTo5LsvYgqmkwQEWD+qPpxriFIt7MO8iinbyhyQCqGMOtsRqheIHdhlfnbZNT9BhA2xpfnncGd8hNCn84FgzMabU4L2iabS8jCho/v6ZLmaFUeiyi5gyqIdTG4J3F02Q1PCxwt4cSBLGK/yJ7PteXr+TcDWR92BMiySIfbd3uc18So3GVjhLr6++/KaRwy/oWn4g8h0bpuiy2UuhGQejPcWP0UzEf2xLB8nn2JLa7Tbo77WAteLuYpbat4YsDkLQamNdgkusSeYEUaGQ9GSjp6S792y5r/GLkg5pAhUXOZsWvH5YPLqDLpTI1j4/DsBGUmg==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n\ts=arcselector10001;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n\tbh=bvBDxBP5EnQaaW8oghUXpUtQ+6j3oIpTEls8L33sCzs=;\n\tb=sONUXn09CAunrYaKe4geU91W3/FaEaIfa01uj8iGtsSzA3GL8sP9yclu+lEYMizt7LPGrleCFB2E8JV3x1g4whbmt5dMLNkr4qKAC2Gyl5y55nXzEAuul30jbYU0TUB3Vb8xhdFAqqjX1izPde+TbEiO4hw1QWInMq0jqyp3g8kv4kqoM+KnLfY1n/e8VUsW7c0G9Pg6nvkKmfaLUChxYGG85SrNnpD2kgPHOp5U9vIrTQKa3Rg4dobJNZtRrgRjJZNY0wrEI5BwDww+b78SdDvWYPNHaOvfdv4W26WoWffRrRUm6AfMf37z11rAejwRCzF3SQYEz6QbPVwfUlv6mA==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n\tsmtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com;\n\tdkim=pass header.d=nxp.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=bvBDxBP5EnQaaW8oghUXpUtQ+6j3oIpTEls8L33sCzs=;\n\tb=htoAka+iBjnoumf3Wy7T6s7kLwS+bKoOG2vTQliQyEzM5OUnbwKVFBv8V0E4YbW8IQewPzlFx5hTtLT5mRLk8g+DOPDn7BtOVTJvL7PWx6scfsVZ9vlIg1deQg33yMv+T8Tuq/rfDqSjbbHl/b6MUFlZWApv5bQfEkps6PMQCZ5Mop04IeGtzZeeh2BGHdl8qKIcMkHQQr0j/ltxIsYlAxUU2YNRpr3ue/ZnWGBCO8RQsTTPC2XXKZZsc4hYkMuKEyT/EIH8eV4NyxB3hR9yZAEo6q1udvgzV/n/VWy7y8xjOjwYmgAYoniX+xxZ/vG2iJo8w+CtFmddl0iFyYr/Ag==", "From": "Julien Vuillaumier <julien.vuillaumier@nxp.com>", "To": "libcamera-devel@lists.libcamera.org", "Cc": "Julien Vuillaumier <julien.vuillaumier@nxp.com>", "Subject": "[RFC PATCH v1 0/2] libcamera: camera_sensor: Add support for an\n\tadditional image stream", "Date": "Fri, 24 Oct 2025 17:10:56 +0200", "Message-Id": "<20251024151058.1523308-1-julien.vuillaumier@nxp.com>", "X-Mailer": "git-send-email 2.34.1", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-ClientProxiedBy": "AM8P189CA0019.EURP189.PROD.OUTLOOK.COM\n\t(2603:10a6:20b:218::24) To AM9PR04MB8147.eurprd04.prod.outlook.com\n\t(2603:10a6:20b:3e0::22)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "AM9PR04MB8147:EE_|VI0PR04MB11784:EE_", "X-MS-Office365-Filtering-Correlation-Id": "9bd83060-1d35-42ae-04da-08de130fa332", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;\n\tARA:13230040|19092799006|52116014|376014|366016|1800799024|38350700014;", "X-Microsoft-Antispam-Message-Info": "kYXvzaYK9D0W7B5g/kWOElHqQ9WfA8iMKqHqoLmIQ4DrhAbBHhugoQTpywZ/BfnJE4T3t+7bwenQSX3bl6LWBDJPVie8hD8j7Hb4dijYYvSxGlDX/Qx4O+3CFOTsU5RA9xXnI0ZelQbjusUG9MH7MzMZdQwDXSyFEfA7o2CkGfiCDa0Z3w55eEZIiAwUootavfeIyHaYRi92UBu7klGVbSAoAYT0yONt5VNWLgHOnRxqH9EuKfDqadMGzkdr026V79KlcuBJEEOPlG1WkgAUc2DF8FrmpHFxVsK9YbfejzJC8zsyBSXFDZXOStjORc/IaWKII4JDxWh0atVGfJYxVyOhdA61PYleOLNQ+DPvKYr9ILvXKWen2XpLKnrPBQN4E/Z7aBvVW/+6eT4oChuz0vYGSZXcMBFQvISHnM3LAeUiU7q+rucRToRJ3zLzhsZ1xSqOgvPGtTCZpdcwjbvsHZ9zD7g03jogLpi4TsimaVdqd84BxuCSZb3TrfxPLWOxzGSQ/V51qGpj94LQjUpPKc/utBn4ZATQZj7PJTqilCGiKDYHmG6VJC72TQfQoaBjBNBH3xcjTBnLfQNCrcAZAjaonp1rp/ZxF7MqEZJnXwNg7iLVhtq46a89Zo8JoDwAh5YvWoru0ARlHtZrEUG0irRDZGFWeYDmRPTdLpezdD3ePfwaY+gKkdS3iaTZ4SctHb5FhIeTExy8i5u/SsZbiubVzo6yRWpyyZFJ3kVDS5de0YKw7dzqr1nTASNAgmls/B4sfE1S/OjeKRvTcvoDapBPN8ko2HdbpbdklNSQT7BgNMCSLcEXoIwn1nSCEgRpMrIGjTqmppSAqcuwcRatk0jwoe29/HCT7QimvC82AWpmrfMmTUBmhlMhl5MFhJamJTKgzChT+GRkT3EP3BVB8fejgyyueXHeGdmbwCa3L3r0izX68c1lXjdS/lbQp1B57wAQYSDHMu/gxETPNOmLEvwkgajRgoqDoiglzI0jlPyWuSWbOI6lx8g94vpbO/bjPm9Oupvjl6a248rYKy3NkRiU2g7fKI7p/ikmzM5lf7GR7Cj1W0U9JtGcFEvBgPQtAJcYFGOzo7jxHxdN+p7i1c6OM2RsowLcim3X/O2p8dA+zt8fbOwz+d4FrFnqAJmqONHFqI2wT5H1hA7PLAzyg9pzRFbbI1d3ZiIH1FINq/KfLUrcG4HSHPirDpKaNngs0z70rJGGNRB3kZ2oaTHW/zCClW0ScvJBVaet1oz62jOLk6wIWCIfVrias3hYZfMio1QHYwWp9WXzbdjh3wxxcTrHY9zl7oaBMVqPZWGASnmBXr4BD6vvZ6vUXDo0F6sz1B0YxU3y5+FikzoIY6nYnufXi/pdGSDs7srEcmScxVCVHVfUG3lbj+4WcmTuwtldfdUy8fENSZorpAUujQX9TmoIrxIv44VtlJ/18q9nl/RtRCrXSBHeksm6QFK97/h5NIL4+x+XI06gmwAO7RXfrO5CiHOIYaOQcUBLFin70acmXGSD/0ZDj0loaPBn3Iow", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n\tIPV:NLI; SFV:NSPM; H:AM9PR04MB8147.eurprd04.prod.outlook.com; PTR:;\n\tCAT:NONE; \n\tSFS:(13230040)(19092799006)(52116014)(376014)(366016)(1800799024)(38350700014);\n\tDIR:OUT; SFP:1101; ", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "9gXrUjPbPAqN5z1k4q9oZoiPvkjgIgwy1Flew/kA8polMlPN3jzQ1t+fNIGOm8XoSrUbjsqybg33O5LUHUM6ulrQ6gIBiWmpUcN7LrdKg5Mn1ORae8cBBIPhnyidlFnWdRb6/8YEjZhyOI6gINLDd3CYRzcYbR8BMj2++iZ6B1d5KSPANcX2LkAFJAZ3V/jC+NGCukfrJUc3GyNpY5UVgXCLTC8IofWJhdw5R7/kPum73zhn5IZU1ANeRapHA6MVo50MgdBzigxxLRHMksTr/edANp3MBiDBtbDG12aGoNbtjXJBiLd2fzCRham0UXtzi5Whgp2eZbtWX4vjI6rQewySW08P0ZaS+aEukqUw4jID2EreNcF+O7l/81MNb9zrzo48by1D2UeSe1S9EGrhuAHUP1+b242XBYMnyyC60vKcXAN8uvaojr6nRscv79PU97Nok//sEJF3YlHiN1eMioAaiAXq5ArlDHvoAgtcb1mcV7KlXbPh6RVuccd+b/MD0OI5k7cXmx/1Pi9i8LK5lk2OoWk3D/l8JBrpnKZ3JEssvFmrJ6QQUo5lJAbI5NuhqqhemxIx9//7X6aAcWahWg7CVm8YQ/gzH7ZmhPK+ooSxlVCcyxBUYJtVGYrvU5kyNa/YnSvEubzJnWADU7ozs5EQp55eHBDOHc2e9wFdaCjXr2xCsEdasEDCsaHirqv7FipSZG6AxFbO0pw4rUVfJrhLgphuAjWQg9DGDboHdKc+QK1/aLsqWaIK07XEjbdcTJseEccDrq9OYg9nyAs+XvA8FX27PalwAsft6GooSDXjWVfzhBL2p1wQkN0462PPvyHtAgHjtXLaFaG5TEaPOPtxIcoZeDW2vv3Ju7cuxJCo2J5Ai45H2Fm89ck8hB0N/ai+J8dTuEsE6ke4hq096hFMgN4aJAwZNNu7oLDf0UewmQ5cq6AjRj62nZ8ZojVc0oggY9SDRPRroWuTPEnLic3c2TJHnVIrXJFrQV469eJiJDczg98XRuvWg407qzoUNSkA4gCAGrOaGhm4NM9yB3yPOsJVEUblirYGQEsEoABA36wMKSa7Y4lxYtlL6CLvwU5/R0t4XJVB9YLkLYd6y7r1i6LE/BpTz4MHaJy9qUwMZgSGyF44zvQoXfmXvOrwEu3RU3NADwyoDLO7gIdZ9zCQNERtq0KG6e9gCiwmVEtWlX/j7CxifV4SqSTkg7qBdUaxJntAfF3oZRMKdSqty6bkqmPQvZQpB0CGaZOoLUhRbAmpmdCH/AdNcalmdps8GHPu8tEjtKjoDSUzZwl3yhWRAqHcWYT/KUTtb17phRhB5fKha3vu4jY8172zxvuUJL2llR4oaQy7R9p0sOSrEy2ifljcy+WkFfyjsipLbu2B2iw1alKoUbZr+dvknzgWaV38RgrBPyritS/tjyigS5BJ0E26mnUnlM0Lwn458mLj8LgE5g/hkRRgj3gHRwMCwsmJXOW2zfBmC+RARGK7sVc51y6oVlt4WWI1QjCThsi9VNLcmZXf7z4erGWvAHTWhfYrSQnY6qfuXNVabNSjhkbD/hIZBirHSxjOqUCoksRXsd1bVSHs4ZODcaKDUY3AsAkxPRfyvTdiLZk7TAmY5g==", "X-OriginatorOrg": "nxp.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "9bd83060-1d35-42ae-04da-08de130fa332", "X-MS-Exchange-CrossTenant-AuthSource": "AM9PR04MB8147.eurprd04.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Oct 2025 15:11:41.9258\n\t(UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "686ea1d3-bc2b-4c6f-a92c-d99c5c301635", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "oNKu3TMp8LiTdu9QjzplvW1ZHYXo7Ri1vhgy4HmcwhakkRiwonzWbnwNAgCKZPs2iSUd67dVhf3is/bUVflWDuwkbD53baiyMN9sVJF09zg=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "VI0PR04MB11784", "X-BeenThere": "libcamera-devel@lists.libcamera.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "<libcamera-devel.lists.libcamera.org>", "List-Unsubscribe": "<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>", "List-Archive": "<https://lists.libcamera.org/pipermail/libcamera-devel/>", "List-Post": "<mailto:libcamera-devel@lists.libcamera.org>", "List-Help": "<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>", "List-Subscribe": "<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "Hello,\n\nThis RFC proposes 2 patches related to streams handling with sensors\nimplementing the raw camera model. Those sensors may produce multiple\nstreams from their internal pads, output to the source pad via routes.\n\nPatch (1) is a fix for sensors implementing an optional stream, for\ninstance embedded data, meaning that the route associated to that stream\nis mutable. Querying the stream format on the source pad of the sensor\nrequires the relevant mutable route to be enabled.\n\nPatch (2) adds support for an additional image stream, in addition to\nthe main image that all sensors produce. That may be needed for\ndifferent camera use cases, for instance:\n- HDR sensors that produce multiples exposures (DOL/DCG) on separate\n MIPI-CSI VC/DT channels\n- Sensors that produce alternate images from different context on\n separate channels - RGBIr sensor is one application.\n\nThanks\n\nJulien Vuillaumier (2):\n libcamera: camera_sensor: Enable routes to query stream formats\n libcamera: camera_sensor: Add support for auxiliary image\n\n include/libcamera/internal/camera_sensor.h | 3 +\n src/libcamera/sensor/camera_sensor.cpp | 52 ++++++++\n src/libcamera/sensor/camera_sensor_raw.cpp | 134 ++++++++++++++++++---\n 3 files changed, 173 insertions(+), 16 deletions(-)" }