[{"id":33180,"web_url":"https://patchwork.libcamera.org/comment/33180/","msgid":"<20250126215817.GD1133@pendragon.ideasonboard.com>","date":"2025-01-26T21:58:17","subject":"Re: [RFC PATCH v2 00/13] Enable raw streams with software ISP","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Milan,\n\nOn Fri, Jan 24, 2025 at 10:57:51PM +0100, Milan Zamazal wrote:\n> This makes raw streams working again in ‘simple’ pipeline when software\n> ISP is enabled for the given device.  At most one raw stream and one\n> processed stream (possibly both at once) are supported.\n> \n> An example ‘cam’ invocation requesting a raw stream rather than a debayered stream:\n> \n>   cam -c1 -C8 -s role=raw,width=1920,height=1080 -Ffile#.raw\n> \n> Or for both raw and processed streams:\n> \n>   cam -c1 -C8 -s role=raw,width=1920,height=1080,pixelformat=SRGGB8 -s role=viewfinder,width=1920,height=1080,pixelformat=RGB888 -Ffile#\n> \n> When only a raw stream is requested, there are no exposure/gain\n> adjustments applied.  This could be improved in future, once software\n> ISP gets a mechanism to gather image statistics without processing and\n> using them to make the adjustments, or once manual exposure controls are\n> added to software ISP.  In the meantime, exposure must be changed\n> externally.\n\nThis is fine.\n\n> A part of the patches is a small change to ‘cam’ PPM file handling, to\n> be able to produce PPM files together with raw files when both processed\n> and raw streams are requested.\n> \n> The patches are RFC because I’m not sure whether they are implemented\n> properly.  It’s also necessary to determine the right balance between\n> the requested functionality (single raw + processed streams should be\n> enough for current needs), cleanness of the implementation and the\n> complexity of the patches.\n\nThe famous yak shaving balance.\n\nAs you'll see in the review of individual patches, I think there's some\ncleanup to be done. The good news is that we don't need a full yak\nshaving, just trimming some edges :-)\n\n> Changes in v2:\n> - Completely reworked.\n> - Extended to be able to produce a raw stream together with a processed\n>   stream.\n> \n> Milan Zamazal (13):\n>   libcamera: software_isp: Move a non-loop condition out of the loop\n>   libcamera: simple: Increase the default number of streams to 2\n>   libcamera: simple: Don't use raw output formats with conversions\n>   libcamera: simple: Add plain output configurations to software ISP\n>   libcamera: simple: Identify requested stream roles\n>   libcamera: simple: Protect against null maxPipeConfig\n>   libcamera: simple: Consider raw output configurations\n>   libcamera: simple: Handle adjusted and raw configurations separately\n>   libcamera: simple: Don't use conversion with an added raw stream\n>   libcamera: simple: Make raw streams working\n>   apps: ppm_writer: Add a missing include\n>   apps: ppm_writer: Return EIO on I/O errors\n>   apps: cam: Write raw file if PPM cannot be written\n> \n>  src/apps/cam/file_sink.cpp                  |  16 +-\n>  src/apps/common/ppm_writer.cpp              |   7 +-\n>  src/libcamera/pipeline/simple/simple.cpp    | 188 ++++++++++++++++----\n>  src/libcamera/software_isp/software_isp.cpp |   7 +-\n>  4 files changed, 168 insertions(+), 50 deletions(-)","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 E3AE5BEFBE\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun, 26 Jan 2025 21:58:30 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id ED74C68557;\n\tSun, 26 Jan 2025 22:58:29 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 948B268506\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 26 Jan 2025 22:58:28 +0100 (CET)","from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 8248FBC0;\n\tSun, 26 Jan 2025 22:57:22 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"kVfWKoJ4\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1737928642;\n\tbh=+kVir6ZCYhoetYwr5dyM3IfFpem1EMx8PDegOtot8Z0=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=kVfWKoJ4MTPeq5JXEQBBmHGiuuY0rbHl7sQ4jnik7b7sJj22k9TpaOwgFsUN4SsfD\n\t1oMNcMcLEOFuwPR9ARI6jm59O0R+NMVQ427rdv2nZBgdD5VUKRPFD7+e4vWllMCBrz\n\tHO1uICqmV/mYddyVT6w5D+CkEWVIr0nZZXjPvZSM=","Date":"Sun, 26 Jan 2025 23:58:17 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Milan Zamazal <mzamazal@redhat.com>","Cc":"libcamera-devel@lists.libcamera.org","Subject":"Re: [RFC PATCH v2 00/13] Enable raw streams with software ISP","Message-ID":"<20250126215817.GD1133@pendragon.ideasonboard.com>","References":"<20250124215806.158024-1-mzamazal@redhat.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<20250124215806.158024-1-mzamazal@redhat.com>","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>"}},{"id":33181,"web_url":"https://patchwork.libcamera.org/comment/33181/","msgid":"<20250126221802.GB1059@pendragon.ideasonboard.com>","date":"2025-01-26T22:18:02","subject":"Re: [RFC PATCH v2 00/13] Enable raw streams with software ISP","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"I've pushed patches 01/13, 11/13 and 12/13 already.\n\nOn Sun, Jan 26, 2025 at 11:58:17PM +0200, Laurent Pinchart wrote:\n> On Fri, Jan 24, 2025 at 10:57:51PM +0100, Milan Zamazal wrote:\n> > This makes raw streams working again in ‘simple’ pipeline when software\n> > ISP is enabled for the given device.  At most one raw stream and one\n> > processed stream (possibly both at once) are supported.\n> > \n> > An example ‘cam’ invocation requesting a raw stream rather than a debayered stream:\n> > \n> >   cam -c1 -C8 -s role=raw,width=1920,height=1080 -Ffile#.raw\n> > \n> > Or for both raw and processed streams:\n> > \n> >   cam -c1 -C8 -s role=raw,width=1920,height=1080,pixelformat=SRGGB8 -s role=viewfinder,width=1920,height=1080,pixelformat=RGB888 -Ffile#\n> > \n> > When only a raw stream is requested, there are no exposure/gain\n> > adjustments applied.  This could be improved in future, once software\n> > ISP gets a mechanism to gather image statistics without processing and\n> > using them to make the adjustments, or once manual exposure controls are\n> > added to software ISP.  In the meantime, exposure must be changed\n> > externally.\n> \n> This is fine.\n> \n> > A part of the patches is a small change to ‘cam’ PPM file handling, to\n> > be able to produce PPM files together with raw files when both processed\n> > and raw streams are requested.\n> > \n> > The patches are RFC because I’m not sure whether they are implemented\n> > properly.  It’s also necessary to determine the right balance between\n> > the requested functionality (single raw + processed streams should be\n> > enough for current needs), cleanness of the implementation and the\n> > complexity of the patches.\n> \n> The famous yak shaving balance.\n> \n> As you'll see in the review of individual patches, I think there's some\n> cleanup to be done. The good news is that we don't need a full yak\n> shaving, just trimming some edges :-)\n> \n> > Changes in v2:\n> > - Completely reworked.\n> > - Extended to be able to produce a raw stream together with a processed\n> >   stream.\n> > \n> > Milan Zamazal (13):\n> >   libcamera: software_isp: Move a non-loop condition out of the loop\n> >   libcamera: simple: Increase the default number of streams to 2\n> >   libcamera: simple: Don't use raw output formats with conversions\n> >   libcamera: simple: Add plain output configurations to software ISP\n> >   libcamera: simple: Identify requested stream roles\n> >   libcamera: simple: Protect against null maxPipeConfig\n> >   libcamera: simple: Consider raw output configurations\n> >   libcamera: simple: Handle adjusted and raw configurations separately\n> >   libcamera: simple: Don't use conversion with an added raw stream\n> >   libcamera: simple: Make raw streams working\n> >   apps: ppm_writer: Add a missing include\n> >   apps: ppm_writer: Return EIO on I/O errors\n> >   apps: cam: Write raw file if PPM cannot be written\n> > \n> >  src/apps/cam/file_sink.cpp                  |  16 +-\n> >  src/apps/common/ppm_writer.cpp              |   7 +-\n> >  src/libcamera/pipeline/simple/simple.cpp    | 188 ++++++++++++++++----\n> >  src/libcamera/software_isp/software_isp.cpp |   7 +-\n> >  4 files changed, 168 insertions(+), 50 deletions(-)","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 2A778BDCBF\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun, 26 Jan 2025 22:18:16 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id F0ABE6855D;\n\tSun, 26 Jan 2025 23:18:14 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 4A06668506\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 26 Jan 2025 23:18:13 +0100 (CET)","from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 3E3DE78C;\n\tSun, 26 Jan 2025 23:17:07 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"I5C95olU\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1737929827;\n\tbh=3dR/0VZOxXmRjTYMnSx6/jOdaOGYYc8fUsSJSwHz4yc=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=I5C95olU0cZsCaiGvchaQ/qwrkcYeYvL+az2+fOikZ2B6zvtgZ0ZX/lMlvRXtuKM/\n\tjzF+xMdBu8yB9Px3axmgh6QjbTtcdoh6BBHqQzKiB8AHpSlxU/ImUXHQd9jY6dlJpP\n\tDiS/us9Bl19LllUovZor8S9wxnybX6yLwPmQk/BI=","Date":"Mon, 27 Jan 2025 00:18:02 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Milan Zamazal <mzamazal@redhat.com>","Cc":"libcamera-devel@lists.libcamera.org","Subject":"Re: [RFC PATCH v2 00/13] Enable raw streams with software ISP","Message-ID":"<20250126221802.GB1059@pendragon.ideasonboard.com>","References":"<20250124215806.158024-1-mzamazal@redhat.com>\n\t<20250126215817.GD1133@pendragon.ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<20250126215817.GD1133@pendragon.ideasonboard.com>","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>"}},{"id":33587,"web_url":"https://patchwork.libcamera.org/comment/33587/","msgid":"<85y0xj466y.fsf@mzamazal-thinkpadp1gen7.tpbc.csb>","date":"2025-03-05T19:40:21","subject":"Re: [RFC PATCH v2 00/13] Enable raw streams with software ISP","submitter":{"id":177,"url":"https://patchwork.libcamera.org/api/people/177/","name":"Milan Zamazal","email":"mzamazal@redhat.com"},"content":"Hi Laurent,\n\nthank you for the reviews.\n\nLaurent Pinchart <laurent.pinchart@ideasonboard.com> writes:\n\n> Hi Milan,\n>\n> On Fri, Jan 24, 2025 at 10:57:51PM +0100, Milan Zamazal wrote:\n>> This makes raw streams working again in ‘simple’ pipeline when software\n>> ISP is enabled for the given device.  At most one raw stream and one\n>> processed stream (possibly both at once) are supported.\n>> \n>> An example ‘cam’ invocation requesting a raw stream rather than a debayered stream:\n>> \n>>   cam -c1 -C8 -s role=raw,width=1920,height=1080 -Ffile#.raw\n>> \n>> Or for both raw and processed streams:\n>> \n>>   cam -c1 -C8 -s role=raw,width=1920,height=1080,pixelformat=SRGGB8 -s\n>> role=viewfinder,width=1920,height=1080,pixelformat=RGB888 -Ffile#\n>> \n>> When only a raw stream is requested, there are no exposure/gain\n>> adjustments applied.  This could be improved in future, once software\n>> ISP gets a mechanism to gather image statistics without processing and\n>> using them to make the adjustments, or once manual exposure controls are\n>> added to software ISP.  In the meantime, exposure must be changed\n>> externally.\n>\n> This is fine.\n>\n>> A part of the patches is a small change to ‘cam’ PPM file handling, to\n>> be able to produce PPM files together with raw files when both processed\n>> and raw streams are requested.\n>> \n>> The patches are RFC because I’m not sure whether they are implemented\n>> properly.  It’s also necessary to determine the right balance between\n>> the requested functionality (single raw + processed streams should be\n>> enough for current needs), cleanness of the implementation and the\n>> complexity of the patches.\n>\n> The famous yak shaving balance.\n>\n> As you'll see in the review of individual patches, I think there's some\n> cleanup to be done. \n\nI agree completely.  I think v3 is a much better version and a good step\nin the iterative process of progressing from a proof of concept and\nguesswork to a better understanding and making a usable code.\n\n> The good news is that we don't need a full yak shaving, just trimming\n> some edges :-)\n\nI tried to save the poor yak and although the v3 patches are\nsignificantly reworked, I tried to make them relatively modest.  Let's\nsee how much it works for you; I admit I have been struggling with all\nthe details when working on v3 and may have missed the bigger picture.\n\n>> Changes in v2:\n>> - Completely reworked.\n>> - Extended to be able to produce a raw stream together with a processed\n>>   stream.\n>> \n>> Milan Zamazal (13):\n>>   libcamera: software_isp: Move a non-loop condition out of the loop\n>>   libcamera: simple: Increase the default number of streams to 2\n>>   libcamera: simple: Don't use raw output formats with conversions\n>>   libcamera: simple: Add plain output configurations to software ISP\n>>   libcamera: simple: Identify requested stream roles\n>>   libcamera: simple: Protect against null maxPipeConfig\n>>   libcamera: simple: Consider raw output configurations\n>>   libcamera: simple: Handle adjusted and raw configurations separately\n>>   libcamera: simple: Don't use conversion with an added raw stream\n>>   libcamera: simple: Make raw streams working\n>>   apps: ppm_writer: Add a missing include\n>>   apps: ppm_writer: Return EIO on I/O errors\n>>   apps: cam: Write raw file if PPM cannot be written\n>> \n>>  src/apps/cam/file_sink.cpp                  |  16 +-\n>>  src/apps/common/ppm_writer.cpp              |   7 +-\n>>  src/libcamera/pipeline/simple/simple.cpp    | 188 ++++++++++++++++----\n>>  src/libcamera/software_isp/software_isp.cpp |   7 +-\n>>  4 files changed, 168 insertions(+), 50 deletions(-)","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 208FAC3257\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  5 Mar 2025 19:40:32 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 0BCFC687FA;\n\tWed,  5 Mar 2025 20:40:31 +0100 (CET)","from us-smtp-delivery-124.mimecast.com\n\t(us-smtp-delivery-124.mimecast.com [170.10.133.124])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id A09A168777\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  5 Mar 2025 20:40:29 +0100 (CET)","from mail-wm1-f71.google.com (mail-wm1-f71.google.com\n\t[209.85.128.71]) by relay.mimecast.com with ESMTP with STARTTLS\n\t(version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n\tus-mta-696-qk3LozQtMa-YwsV81p2iSw-1; Wed, 05 Mar 2025 14:40:25 -0500","by mail-wm1-f71.google.com with SMTP id\n\t5b1f17b1804b1-43bc1aa0673so16858355e9.2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 05 Mar 2025 11:40:24 -0800 (PST)","from mzamazal-thinkpadp1gen7.tpbc.csb\n\t(ip-77-48-47-2.net.vodafone.cz. [77.48.47.2])\n\tby smtp.gmail.com with ESMTPSA id\n\t5b1f17b1804b1-43bd42920a5sm26611115e9.11.2025.03.05.11.40.21\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 05 Mar 2025 11:40:22 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=redhat.com header.i=@redhat.com\n\theader.b=\"DvPcgPth\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n\ts=mimecast20190719; t=1741203628;\n\th=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n\tto:to:cc:cc:mime-version:mime-version:content-type:content-type:\n\tcontent-transfer-encoding:content-transfer-encoding:\n\tin-reply-to:in-reply-to:references:references;\n\tbh=pPci75J7B1iGP1zyUwSD3x2HcpjYonTJqlFHq0sO5sM=;\n\tb=DvPcgPthrLSz210cO6awlgnqmS1Uo3C2NaUzAOzURS9RynMAtL3hFyoisVu/9Dc9TzsJnm\n\t7DAai53uNkRt2fw/AadNwHfqXWuxtu+/7bXw4+Xm0/8UbTrRWQQAVVIjsPAwAJoo63aBoe\n\tGc1LmCaIE9oM/pPapIqNtjylHaUE/j8=","X-MC-Unique":"qk3LozQtMa-YwsV81p2iSw-1","X-Mimecast-MFC-AGG-ID":"qk3LozQtMa-YwsV81p2iSw_1741203624","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1741203623; x=1741808423;\n\th=content-transfer-encoding:mime-version:user-agent:message-id:date\n\t:references:in-reply-to:subject:cc:to:from:x-gm-message-state:from\n\t:to:cc:subject:date:message-id:reply-to;\n\tbh=TXsFx8t0enzTzUdrWaeBQM9Eg6FIwSEY7FfE/kUDBSQ=;\n\tb=a0UMsCdylMYn8vEvh+9UMwoohEFPUKwE7T/SW6GXCCbG6impwTkWhb1JffC74MYUoo\n\tojmMXDYl0SFgcApZIace9qc8IxNWmHc7NNVGtJGvbUd10kAZ3zGAA30qZBcASbnRSgxe\n\tkZHk6eqi4fhS/ofzh+vQZS8/PEqdSrGye8V6RsnYGre1j3frdla5k8exeavFD8BgMUGh\n\t48sPzGczSAg+U4a4xCoBVHPc5Ry+VSu6cr7EmqCrJlMwrvwvrVGx7IEQHK6k3m2YqvkF\n\tUaAC/2eXL5TgWQUsQ3ve4Bd2dNmP1R7oRyhYFFZG6Z1ddoydl5o2QETFAgtYK90csXSv\n\tMx3A==","X-Gm-Message-State":"AOJu0YyDrAXPJqlZCGHWUJU7JiLtMUjuDW8nB0b/XO7ThKRwCYCyMGfy\n\tYFRLDsiBG0XrkRnKgLfyNoNCn2LPyGh68cYtKwwqz4wNr8o8cXJJwS5TB6s6AEu+lkIrjIWm6TM\n\t1/otrr3zAUyCLv20l1Sm1kC610mDoR26FRk6fqC/V8IinHMTwHfSMX3AjF5lcUNocE48JbT+GuO\n\tybHeGTH0RgZZ6IqTt6kWNYb7q2hJejWJNUiVid+n6na7hhZ0uTSRI+6k0=","X-Gm-Gg":"ASbGncvS9mzh245vaJOzIezFnNVY6mLTQH6GLDtwncbM52EftHyw7WUHRRX6Hc36D5/\n\tJFq/M3jDkns04xTs/fgGmjm4N6r8+UyRygdHsg3AcFGmBSZ5xfwy2n45PMhEVu+eQM7YKlc5qIP\n\tpDpaBaQBtRnHyS6G8u2Mpe/jfF9QnnnRZBTff/Yz2w8973DOlO7k0svkV7L+3qMoHdWnmKoKCMe\n\tPcqVdB/bpRz5NYiMOm3KL5G1IV1UwAnco5R7DhDBDTeSkC8AjHf4N52LChv5A/pMPYhVqMTXm69\n\tPUTjnXB4DGUGUwL4As6mEMvRKDOXGwxMimIMbJr7dxoDxSLSayeZwnY6RsscmtHCrkYV","X-Received":["by 2002:a05:600c:5112:b0:439:8a8c:d3ca with SMTP id\n\t5b1f17b1804b1-43bd29d7406mr36206965e9.29.1741203623240; \n\tWed, 05 Mar 2025 11:40:23 -0800 (PST)","by 2002:a05:600c:5112:b0:439:8a8c:d3ca with SMTP id\n\t5b1f17b1804b1-43bd29d7406mr36206775e9.29.1741203622732; \n\tWed, 05 Mar 2025 11:40:22 -0800 (PST)"],"X-Google-Smtp-Source":"AGHT+IHWZ8UIchEn5L1GGMXarner0W5TWsDjFvbQOc0ni8VZGu3izUbRk9BSnCnBs751UrcRieOWcw==","From":"Milan Zamazal <mzamazal@redhat.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Subject":"Re: [RFC PATCH v2 00/13] Enable raw streams with software ISP","In-Reply-To":"<20250126215817.GD1133@pendragon.ideasonboard.com> (Laurent\n\tPinchart's message of \"Sun, 26 Jan 2025 23:58:17 +0200\")","References":"<20250124215806.158024-1-mzamazal@redhat.com>\n\t<20250126215817.GD1133@pendragon.ideasonboard.com>","Date":"Wed, 05 Mar 2025 20:40:21 +0100","Message-ID":"<85y0xj466y.fsf@mzamazal-thinkpadp1gen7.tpbc.csb>","User-Agent":"Gnus/5.13 (Gnus v5.13)","MIME-Version":"1.0","X-Mimecast-Spam-Score":"0","X-Mimecast-MFC-PROC-ID":"ajeJvZbBV-oX3dxL45EATHQ3RmKOxeGTvRuXPxIpamU_1741203624","X-Mimecast-Originator":"redhat.com","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","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>"}}]