From patchwork Tue Aug 30 07:47:18 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Umang Jain X-Patchwork-Id: 17249 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 33E81C3272 for ; Tue, 30 Aug 2022 07:47:37 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id AF59F61FC1; Tue, 30 Aug 2022 09:47:36 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1661845656; bh=xQD8h5Gx1QhGF0KFXjNYLLQVvdsWreWj8I+7W+QAR9A=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=M0xz4Nut1M9+YCsr2QaMrbVf333Y//WaT3EEyttnY8dl1JA+lEX9bbw9/cVjP8U7I FP+jBlI/dJagxOE/usAcyeqzzc2pby/56YL+tGrtw+eREOv4mLB92adNEQKzwtICOo Z3npLLJpezzfAZpsfBQw9jcjggR7kHIEMu/BBXWqUFiFmuLcwX4OGzOEIKsgoy6UOP vL4Fb/zA/shBBLRBVVq2ObFFuo5P0C99zSSayxyDVNznYKNjoQVljn8VBVDL3+UgYz 27mmiv5AQxD/ALCO/n1FiS3135UdLvRTzp/VXdip3jC3rBa3MU3h7PF4JRpb3u8/VT eB/C5usUvfysw== Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 58E2361FB9 for ; Tue, 30 Aug 2022 09:47:35 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="itIvFAv5"; dkim-atps=neutral Received: from umang.jainideasonboard.com (unknown [IPv6:2401:4900:1f3f:1548:78ac:4a3:edc3:c28a]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 75D6F481; Tue, 30 Aug 2022 09:47:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1661845654; bh=xQD8h5Gx1QhGF0KFXjNYLLQVvdsWreWj8I+7W+QAR9A=; h=From:To:Cc:Subject:Date:From; b=itIvFAv5aXH62rVzm3KNy5JlVy0W+WAhuhVyWRReVrsq+es0xbo/RbZoDIrEt8TaY KgFgco/Ugk4c6kTV6aTl9B7t2N1InjmJbEOY9ED763t9m3IrkwCFrrLQ3TSe2b5Bis fDM1gtLHdjgbg31XXupzNGOBufBXw8PqXIeXDWmo= To: libcamera-devel@lists.libcamera.org Date: Tue, 30 Aug 2022 13:17:18 +0530 Message-Id: <20220830074725.1059643-1-umang.jain@ideasonboard.com> X-Mailer: git-send-email 2.37.2 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v4 0/7] Colospace adjustment and gstreamer mapping X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Umang Jain via libcamera-devel From: Umang Jain Reply-To: Umang Jain Cc: rishikeshdonadkar@gmail.com Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Changes in v4: - Improve commit message in 1/7 - Use private static member function instead of unnamed namespace in 3/7 - Rework the 6/7 test slightly and introduce failure logs - comestic changes Changes in v3: - Patch 5/7 "Move colorspace adjustment to ColorSpace class" overhauled - New patch 3/7 "libcamera: v4l2_videodevice: Improve toColorSpace() readability" - Patch 2/7 - picks default colorspace if subdev format is not found Rishikesh Donadkar (1): gstreamer: Provide colorimetry <> ColorSpace mappings Umang Jain (6): libcamera: v4l2_subdevice: Add color encoding for media bus formats libcamera: v4l2_device: Adjust colorspace based on pixel format libcamera: v4l2_videodevice: Improve toColorSpace() readability libcamera: colorspace: Rectify the ColorSpace::Srgb preset libcamera: color_space: Move color space adjustment to ColorSpace class tests: stream: Add a colorspace adjustment test include/libcamera/color_space.h | 4 + include/libcamera/internal/v4l2_device.h | 5 +- include/libcamera/internal/v4l2_videodevice.h | 3 + src/gstreamer/gstlibcamera-utils.cpp | 169 ++++++++++++++++ src/libcamera/camera.cpp | 43 ++-- src/libcamera/color_space.cpp | 119 ++++++++++- src/libcamera/v4l2_device.cpp | 36 +++- src/libcamera/v4l2_subdevice.cpp | 184 ++++++++++-------- src/libcamera/v4l2_videodevice.cpp | 7 + test/stream/meson.build | 1 + test/stream/stream_colorspace.cpp | 96 +++++++++ 11 files changed, 549 insertions(+), 118 deletions(-) create mode 100644 test/stream/stream_colorspace.cpp