{"id":14796,"url":"https://patchwork.libcamera.org/api/1.1/covers/14796/?format=json","web_url":"https://patchwork.libcamera.org/cover/14796/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20211126104045.4756-1-david.plowman@raspberrypi.com>","date":"2021-11-26T10:40:38","name":"[libcamera-devel,v7,0/7] Colour spaces","submitter":{"id":42,"url":"https://patchwork.libcamera.org/api/1.1/people/42/?format=json","name":"David Plowman","email":"david.plowman@raspberrypi.com"},"mbox":"https://patchwork.libcamera.org/cover/14796/mbox/","series":[{"id":2761,"url":"https://patchwork.libcamera.org/api/1.1/series/2761/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=2761","date":"2021-11-26T10:40:38","name":"Colour spaces","version":7,"mbox":"https://patchwork.libcamera.org/series/2761/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/14796/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 26967BF415\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 26 Nov 2021 10:41:02 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 151FD60546;\n\tFri, 26 Nov 2021 11:41:01 +0100 (CET)","from mail-wr1-x431.google.com (mail-wr1-x431.google.com\n\t[IPv6:2a00:1450:4864:20::431])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 56889604FA\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 26 Nov 2021 11:40:59 +0100 (CET)","by mail-wr1-x431.google.com with SMTP id t9so714592wrx.7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 26 Nov 2021 02:40:59 -0800 (PST)","from pi4-davidp.pitowers.org\n\t([2a00:1098:3142:14:e4a2:3070:eea4:e434])\n\tby smtp.gmail.com with ESMTPSA id\n\ty7sm5106795wrw.55.2021.11.26.02.40.58\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tFri, 26 Nov 2021 02:40:58 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"K7/oFw8c\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=VhDJ3nqxcX4M/X5wppInEIqciPy980+SOMRK9jVKfcw=;\n\tb=K7/oFw8c1za4P/7qqnCYUCPG9/cyOrnu24rEfKKOia0+oJYRqvPo2ufYC/qaxi3+VS\n\tCDnq1BkvJqKHYxQZq1q6717O7cL//nItDfWUv6oPbDK9RRZHf3hQ1TO8xx5ufu5ZqyDg\n\tQa79DF+ucCaaNmesImsvws2XZpO7Ssy05d0Zf9OREMzWG1ugvr/lPsE2L3pae7oVLnw5\n\tdrFCHDhvPwPQErDrbSbwU4RLcPNnxmj/6wVoWdboku0/KqdKZ9MCJ3j0VKUhpaR3XUO9\n\torqiLv2OIQy6Ym/uohJ+La3EF6SfT3GUB4fxvd3JeQ1qiOl30XyIH/cZRbAMuGdYoCfh\n\tnQBA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=VhDJ3nqxcX4M/X5wppInEIqciPy980+SOMRK9jVKfcw=;\n\tb=eTZSpw45o6MNgTkL2tttvdbNq3AX45S4UZvM2VkP0aVEELxt4XxSXr5vqBr8qdHOsW\n\ts/VQmykWDtno7IPaavTfolvGYgUVRQvk3EZ2l1h0J0bcj9ZMkdsux7vUthE62iuBHN+o\n\tymUSptTyUGJvPGgzOihDyzVmtR7BQjgzt8km/Av9EXG94oEY5/2mEOMxYrl0YFFxtreW\n\t33tWFgu5f/BqLXwXmAFXHLwqcsJi0wYEw9tJcQ0AkNcYD0zjafrEsNaIwrtYdFaeI/sV\n\t0hT0LudintDMDEm1bZxNWr5kAui6Tkoi+O2MoOL8kOF5Fo/srNARNmPWDq+L30tp/0JD\n\talmw==","X-Gm-Message-State":"AOAM5338J859utfnm8yl6grMvnAX4xXW0LZWaKE2mqzO1Mdl9IiqNreO\n\tXiBX/ZVXtlNGqx88qFmsyqwjpw==","X-Google-Smtp-Source":"ABdhPJyptTBaWKWfPxNwpNu5NdJ/sKZBbTDCx2j8PZbwPT9O5orJQmhdE3e0BRmIYq2+xAe+J8I1aA==","X-Received":"by 2002:adf:dc0a:: with SMTP id t10mr13094195wri.8.1637923258984;\n\tFri, 26 Nov 2021 02:40:58 -0800 (PST)","From":"David Plowman <david.plowman@raspberrypi.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tKieran Bingham <kieran.bingham@ideasonboard.com>,\n\tHans Verkuil <hverkuil-cisco@xs4all.nl>, Tomasz Figa <tfiga@google.com>, \n\tJacopo Mondi <jacopo@jmondi.org>,\n\tNaushir Patuck <naush@raspberrypi.com>, \n\tlibcamera-devel@lists.libcamera.org","Date":"Fri, 26 Nov 2021 10:40:38 +0000","Message-Id":"<20211126104045.4756-1-david.plowman@raspberrypi.com>","X-Mailer":"git-send-email 2.30.2","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v7 0/7] Colour spaces","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":"Hi everyone\n\nHere's version 7 of the colour space patches.\n\nMostly it's just tidying up, improving documentation and making things\na bit clearer, so thank you very much for all those suggestions.\n\nThe other change is that I've decided to leave it up to the caller to\ncheck what has happened when you try to set a colour space. As some\nhave pointed out, some pads already don't have colour spaces, and\nthere might be more in future. I think it's only really the pipeline\nhandler that understands this context, so it's best so leave it to the\npipeline handler to check.\n\nI also decided to leave the to/fromColorSpace methods public. I could\nimagine a day in the future when a pipeline handler might want to\ncheck (for example) that V4L2 understands the ColorSpace it wants to\nuse, and these methods give a handy way to do that.\n\nThanks again for all the reviews so far!\n\nBest regards\nDavid\n\nDavid Plowman (7):\n  libcamera: Add ColorSpace class\n  libcamera: Add ColorSpace fields to StreamConfiguration\n  libcamera: Convert between ColorSpace class and V4L2 formats\n  libcamera: Support passing ColorSpaces to V4L2 video devices\n  libcamera: Support passing ColorSpaces to V4L2 subdevices\n  libcamera: Add validateColorSpaces to CameraConfiguration class\n  libcamera: pipeline: raspberrypi: Support color spaces\n\n include/libcamera/camera.h                    |   2 +\n include/libcamera/color_space.h               |  72 +++++\n include/libcamera/internal/v4l2_device.h      |   7 +\n include/libcamera/internal/v4l2_subdevice.h   |   2 +\n include/libcamera/internal/v4l2_videodevice.h |   2 +\n include/libcamera/meson.build                 |   1 +\n include/libcamera/stream.h                    |   3 +\n src/libcamera/camera.cpp                      |  38 +++\n src/libcamera/camera_sensor.cpp               |   1 +\n src/libcamera/color_space.cpp                 | 305 ++++++++++++++++++\n src/libcamera/meson.build                     |   1 +\n .../pipeline/raspberrypi/raspberrypi.cpp      |  42 +++\n src/libcamera/stream.cpp                      |  19 ++\n src/libcamera/v4l2_device.cpp                 | 192 +++++++++++\n src/libcamera/v4l2_subdevice.cpp              |  25 +-\n src/libcamera/v4l2_videodevice.cpp            |  32 ++\n 16 files changed, 743 insertions(+), 1 deletion(-)\n create mode 100644 include/libcamera/color_space.h\n create mode 100644 src/libcamera/color_space.cpp"}