From patchwork Mon Dec 15 14:53:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Julien Vuillaumier X-Patchwork-Id: 25559 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 7E293C326C for ; Mon, 15 Dec 2025 14:53:56 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 0EA5B61985; Mon, 15 Dec 2025 15:53:56 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="lweAXc/L"; dkim-atps=neutral Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazlp170120005.outbound.protection.outlook.com [IPv6:2a01:111:f403:c200::5]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 14E6261973 for ; Mon, 15 Dec 2025 15:53:53 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tqnJpehlhtCf1H7Ch8MoR8Cn+75bb0QfFsuybPYAVDmCgNLz5QYWlZ5YBrRbetRt6Yf9wt4nTgrRfIvhVSIILoRAsF4Hwemx9xugP9w0v/R7TP/mAvlDp4MaLec/KvHK7zXSHCGDf360mPpZRUWHgF6is4YFy0Xdzoh1R2qNNilSJeAvDCk1Q8aGzojNsVuGFAs7joFEdpvMEMNbzKiQYhkaQFrcv8dLL+j9SCeK/BmxKndWMpeLrjMz0hf3DfIhbX6ZiZ4A03o558fHmePVmI6tCSQ4X6MMIJBgSKthBYRFpzDqqTKJ6gGzIzP7iUPsRgHdVt8GLHwTJcV7DXLhgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=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; bh=I3ScKmgZHM4d8F+gcboueSossColnSX4zI3fzZiK5Go=; b=uHiCfrMYY03hPOarx6WWdNp+9bjVWmMzujOWmiep0ELdovzxqxmdb/lZ8kqvmydK0djSC2nZqWSTj7KwnCbXgDo/PyFO1PSOARrwIyNxKqxqR95wAiuQ46v6HO1TeKRotKH04Y14uhFVm5zeSUnvmjb4OzKZ35PErdVodjrnyDCoqmljF8P7umsnlDEh3Pmu93r/jjCZUq20A4Aj5zPDqDySUpmCU6AWhm7fMfByWUpjy/FdWrOVBHLo3EcH8ApJQ0SQWxx2fZLjuRkK/1xw2vyCH4RTGFtVG4n48YY/EUaQYYl2mCFTp2dLjDIPc1pQpoPN5fHvrXRuXHDsLQ99Aw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=I3ScKmgZHM4d8F+gcboueSossColnSX4zI3fzZiK5Go=; b=lweAXc/LJ0gXBoP5W1fHoQ1kWyNpNHAy5O0lRnQgJpbs/FeV/DdO9fkJdIIvCNd1c3kD1H8eUWNBC4NBFvQpSm+SWBHt+rWnvE8p9lc/N23qtv/mkVEMo4LaVM3TpjkSDoCFPQSXx0k+L50oW0RBhflWEjMIl6IvSlQuWS5iIJTcamnOSfJnVAZBlsSB0Kl5tDiUv6w81pR0RMXhTG/VesnDVmW3fRzzt4hLSAufPYvvlEQibErdi8XN7KxquoMr2fDUfDplsAj85aNpj+sh7gG4PyIiGWQsMjkOiXv+P4TiZDpkISsSBm87OnFIHFoeBPIcdCelzqjDnuVrq5X5Fw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM9PR04MB8147.eurprd04.prod.outlook.com (2603:10a6:20b:3e0::22) by DB8PR04MB7098.eurprd04.prod.outlook.com (2603:10a6:10:fd::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.13; Mon, 15 Dec 2025 14:53:51 +0000 Received: from AM9PR04MB8147.eurprd04.prod.outlook.com ([fe80::b387:72c6:e33c:8656]) by AM9PR04MB8147.eurprd04.prod.outlook.com ([fe80::b387:72c6:e33c:8656%7]) with mapi id 15.20.9412.011; Mon, 15 Dec 2025 14:53:51 +0000 From: Julien Vuillaumier To: libcamera-devel@lists.libcamera.org Cc: Julien Vuillaumier Subject: [PATCH v1 1/1] gstreamer: Add raw support to libcamerasrc stream-role property Date: Mon, 15 Dec 2025 15:53:05 +0100 Message-Id: <20251215145305.4187195-2-julien.vuillaumier@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251215145305.4187195-1-julien.vuillaumier@nxp.com> References: <20251215145305.4187195-1-julien.vuillaumier@nxp.com> X-ClientProxiedBy: AM0PR02CA0180.eurprd02.prod.outlook.com (2603:10a6:20b:28e::17) To AM9PR04MB8147.eurprd04.prod.outlook.com (2603:10a6:20b:3e0::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR04MB8147:EE_|DB8PR04MB7098:EE_ X-MS-Office365-Filtering-Correlation-Id: 1e0ba104-65a3-4bc7-e777-08de3be9c2bd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|19092799006|366016|1800799024|52116014|376014|38350700014; X-Microsoft-Antispam-Message-Info: /qVE34i5z8LJZdlBelfbn1aXNoXKB/kee5o/ckAioC9YyOLQOSVX6IRMJ+6vZiEAu5l1b6QMuPvBKNh2q/6FM289YmjUfPeo/A09pLBbrj8taw4Ox/8RzC9iV/XHiPOi0Kn3SStuVm/Nxr/oV2X9TWjg79/yZy+wGERjkM0Bw4vLmt/8sb+nTdfWCZLEmHF77baYz34E7JjBImXzkGXm7yw29JoipvGjPnHSXEJ70rQtWobLhOuJ/NYvapFliz8EHvKfc7wD4l9FlCu6DQFabqAWCRnDIYePG+r1E7+O5vdQjz9lmHpKLNquljHryHmBIgEsRYvafb+2lwVAN5kTSHkb5MOe1kWc+bxtGwI7f8B4k/NpvktgzPJ1X7o6DoCLKp5zRkplESWMX2qMkgVnVYUiPcdGoT66HTaW5G/HVA2FzFLErEHAXWVq5LvbbGp88kPVslVdIIVKoZ4N0XBHE88pEG/5iftcH6h1LtD59z71/59VvYQvoN+6qfHGQh/Y/yFzlEYf2zhREIgEnbNbZqdJR+IK5rHob3Ecoew/8ylQksJrk0RNWxa/L6KI5tgfZmZhIY3BfraEFHJR2Gm2Ms7MVyzHhieFYd3rMiwXhZW7SNugK6cAmf2lSGrNsaPNkVW7iRYtYxNNuqKr8ccCHJBcTKrX9LnqyXPqi8WIWfxMET8qiOfZP2iRfA6RA0j9aoXHyxM56bTBVqS0EdW//AEVrNCSut1lv/jlLsAPe721+zyB320WCXx58cj5qfZDaCWiTKani0KqJrAFdfP2J126AvQEMFOVg+JFTTc5fGd50klBYxurf2FyJ4bJaYQa8xJHP/1mho9S8dH8HzinAlifVBYQ8o1yf2/v88xOV5uZHehkJjnyky8IRbLw9Rbx2xGyYNYdzEkMuGzjnDZS9R6UHR+InS8GBOSG2/S0yiHt9j9tx1NYgAFqqkVShmgL6+g0rDTRTiYvZ9ayRhrIkso4i8uFUKk/Rdcc15aR/eMGEkyWD+bMPntc+E3Hogzq2j5yFXIfZzMArFTH1lFKioqR47y7XgJilxDon5epP9SC9JC9LKrGYbCbkKkJ17QAWgjI5qm7SnzdKRjqbWCw067yYFXy//lXg28AV69uuN/BKEvD/h0l9emXiIJXJ6zJCbg6hnqlSfphhns6myxFl8hao+90Mqx2TmvQoletEX6gy59tIDzilPk2Ibt6q4i5QwJcCKn8t64A8Cd7Hk1MmpFs4EyePjNLOmrXiVD5EFs9vjl8Gp2T2VltVJSIC6+pUJVzxr5AuexX4AycSrwIBAdjlxxKq/TSIA1TCYuVsOuA/nMIpylksKYuY6fAjfvSjdecSGm+m4mpyMy25BjCYblRSmG32tPtM9fNT9kIs7mgeoif02oWuBl8u2UR4mLTNHuM/M8TfRz8U5izIKvOssHRZYxb9UrNpO484+GXaCiX0xzpFxCMXC8igJ17iiSkV+XJNLXsHteskphzE720tDYQHenLsMQ4pcBTNR9PU6j2hlYw2ZJu2xPXuYNP4CP0 X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9PR04MB8147.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(19092799006)(366016)(1800799024)(52116014)(376014)(38350700014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: pQofZV9AUEORFxgCNAlxePdv6Ze7KN9grVtDPJD8nzyMM91VBJnGvu7tJBcEcIAH0EBfI7oZm4n4COEOu9hXXoXKb8Kyaz6KdkqYXe4HLQ2lLArwdujLJ+StuQzwVu71mFV1BuVbiL4WXH6w9xAN3UUh9kpKrZ0dr5br7fdjfbA0nMnnYlbluTNM83c5i0vOAiMSVRk0+H28KRWeLpP0NIXbDKLTg/QvZ6xdcUd9dYHsuAcQZiY2xI6ccnPXAVpQIrZVkMVAMNw6Am7yE+4xM6mDsUubNVmop/g3a6r09fjnB8q7/331n9aRgKJzIaK02qfPlHX3EtMXtwTUW0euuP5fvTtCclked/nvKrp6pHMzi1adgBFEtOE3tRR0mVRi6MbR+5kwsBpQzwgh38YSFniXciKhU9qGv3Kinom7a9mDnQipvvOfd2MekyjBooHbHsn9/hV0B12ylUKPeJSVmfX0iNTQV5n3hXNTCZqMtSNgveyNhSTcjWyBILyNzxSf+Foxas7O4g/OohufG3VvRTyKs7zZUjLDsLuYBccFaLMMyEg+pzaHJ1frMyjwAduH2GnpgclC4sUWbIdEV2jLrjjcAU86vWcmlHS4+9TabHs+GemYK9V+YzEuiNTJ8Nk7Gk+VSbva6Jmb4TCWdAdtSJ5KvvcZviXf4A4rx7wVdoDRivA3jIQewkmDzb+GkLhWkBT63iNLqzAq4DErkQlu5o4s6rbiVFUxjdPhz+thL2pPOYt4L/eFVaNvCrV+URUtbZtDLs2bxn973MoRpsr2LaWV1siXwq4ugzO1bkoITFLdLv2o5zKwqA5XEEYO2VI4N1m806N5UeXE4JGpHRHmNeZxg5LnAc/wmqJRu4hP056vAUHCybLmWNmxHPI0l+zJ1V1FENzujVTmE6SElgD/qZw8sueEsnJ48xX/hrlq0Qpc4oVdoEJFOUn4WmfYofyk8m7WtuNXMu9ef4I1DHvsJPHUG7HnXF7DpwvOkzQHkjVdVU3hCpUxdH5p474cBIc1x897QsB35rhOpUNdGnDma/0YCcUz9HdonDjrUsFQ6Xsk2DQD+v6/x6RK1hV8VPCV8QPyq6UFU5e9ZQ3ucWNcPBhi/GC80nen0bFG7MNjjcCU7msYTOMMS174CLa07MrV4dx6BCm+9q/3xY4+ply7wrtjYWroxIXtSA+wUMaE0m6m7buJoOTKNFvR37VjDeoWWFb4Rz39ziaDLAuLP/47pksse0XGhIXB2R+zjlsSMGfOc5NcAU7/+6/c+nARJ0rD63lN+sY7/jLv3qYktU2VGclaxzAppWsRPFw+11BsezrWMI8wB4D80Z/8PfTg+hdMXIEt3EvGWEL1IGRijm8CMYr1ACCokLfqyLNWWdlYf3aREVn52LG0jYuao5PF2hrJlg4Y4NTi7W/lq/8hLTR+YdHheZrY2C1XLrEuJk5rFWluatnTL5DJ6Wf0jUA1c7Tdd+EaEnsZ1PguJHu7xQisP22ZXmq1SDgeuWm7i9WmfcA2fcdFmwVd+kgShIq+xd+uEj9FGuu9GWe6WDxbzkbvCCNSU2c40Ee8XtPCBdj3cJATlt+iIzjYJxaBH4Y6yscJ7C4uV9GPu5xx6tFmK4Zi1Q== X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1e0ba104-65a3-4bc7-e777-08de3be9c2bd X-MS-Exchange-CrossTenant-AuthSource: AM9PR04MB8147.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Dec 2025 14:53:51.5389 (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: NBz3A8i+WWSLROtBmmG7eEn/zdeywSW1ByUJH+lbeKW8xSaDlRMiEELCkQrzmULgJ5kHAXybHHTrbduTcqSIAmHqs0f1DY/8IFy8afSLYUw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7098 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: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The current definition of the stream-role property of libcamerasrc element does not allow for the Raw (0) value to be assigned. That property is used to query the pipeline handlers through generateConfiguration(roles) to retrieve the formats exposed to the user. Not being able to specify the raw stream-role, bayer formats are not reported so can not be used for caps negotiation. Adding value stream-role=raw enables usage of bayer GStreamer pipelines like: `gst-launch-1.0 libcamerasrc camera-name= src::stream-role=raw ! video/x-bayer, format=bggr16le ! ...` Signed-off-by: Julien Vuillaumier Reviewed-by: Nicolas Dufresne Reviewed-by: Jacopo Mondi --- src/gstreamer/gstlibcamerapad.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gstreamer/gstlibcamerapad.cpp b/src/gstreamer/gstlibcamerapad.cpp index b37c4b340..c1f7f16e8 100644 --- a/src/gstreamer/gstlibcamerapad.cpp +++ b/src/gstreamer/gstlibcamerapad.cpp @@ -95,6 +95,10 @@ gst_libcamera_stream_role_get_type() static GType type = 0; static const GEnumValue values[] = { { + static_cast(StreamRole::Raw), + "libcamera::Raw", + "raw", + }, { static_cast(StreamRole::StillCapture), "libcamera::StillCapture", "still-capture",