Received: by 2002:a05:6a10:6d10:0:0:0:0 with SMTP id gq16csp240149pxb; Thu, 21 Apr 2022 22:52:20 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzM8RpKVI2dt9IZP+FI3s8s0wm/bZi8jRDTQLBMTUOrRGdig9vvgfQWE9CZmAHQmFacUwDm X-Received: by 2002:a63:4625:0:b0:39d:4a92:804f with SMTP id t37-20020a634625000000b0039d4a92804fmr2600057pga.258.1650606740097; Thu, 21 Apr 2022 22:52:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1650606740; cv=none; d=google.com; s=arc-20160816; b=R2DV0XoXKLyBoT9GM5O3y28O8sE89EULivgri8UA5EkPOHAZyK7U8Rl29Wh8Z2XXFW SbjPSCDCWz+oB9sfoVf+unf3xRkVPu9JNodl0EaYHpMfZEQ4I0ZbWhq76zXFPpqfTNT5 WtGK2ep99JlkJHgWmCm06zRqn4bTUyydA0/bcvGyEtlKu8kBYwBAvevt+fCsIxQmFdMS upTUwOy2euaok2xywOjCvTan3EZvPJizL9OTvO9qVUU29vu86hb5SJ88/mN642FVZVp2 9yx8no/1ElqCDHw17BxsXL6sAWrZANIliMl3mAh5IsM7fSO4vNgxeh16TPmCDojvRqqu OCbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=I3StP6aw4vdG/qdt/W//FsC3YOIE1kqQanqxRGWaYgo=; b=YdLHaNC6U9qeIQHOB9fJcMrNE7DsUOIxmFIx1aSMVwaZNkMnTX/c8vbBqnJ5khfyCB cKTsxqomdwQoCEiQZ0K8ivazkTxEaOPMdIhdCaTETn4RgB2H8aZiV8JYvXTYNmbp2AnY 5qXwlAlB1zrKrQCgidbpDKExzP+tjgObo7W5Dk6RJgNJjj5t9Q7VO6iVnvB2WUlrlSki CU1fLvtQdzNDZC/q6Yi+pxHNvjsWFun1eu9TmBa8bu2uNNN0C463Z32XdXBkAHUi1Q7Y 4N4adhRVwqJyXPXtm0Mm30WQtoBa/MDbyAbsxciWGNpP6QwMGn0Z7sapZw5BCzkFO19Z V0fQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=nblueKlx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id t196-20020a6378cd000000b003a9fd4424a3si7627921pgc.666.2022.04.21.22.52.04; Thu, 21 Apr 2022 22:52:20 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=nblueKlx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352190AbiDSMU3 (ORCPT + 99 others); Tue, 19 Apr 2022 08:20:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40106 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1352175AbiDSMU0 (ORCPT ); Tue, 19 Apr 2022 08:20:26 -0400 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5735325E90; Tue, 19 Apr 2022 05:17:44 -0700 (PDT) Received: from pendragon.ideasonboard.com (85-76-11-253-nat.elisa-mobile.fi [85.76.11.253]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id BA2F025B; Tue, 19 Apr 2022 14:17:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1650370662; bh=P4gIXFtrwQDyN+C6uar+ovwXk6cY3/kQnY32ADsmRFs=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=nblueKlxS7o0DUw7O83Z6nlkNHVGWJx3nEW/tkbsh8zQS7Optx6iFbxnCGdlW17/s FaISR5gqVn8baPQaPnAoBPQ3WcRoMx6u2U6QKG1VqtJSi97c+TGFqnBBlR1+3b7Sey Ym2OK+uF5V3EpFy5szf/7evp7dUwZLrCVOh8zYB4= Date: Tue, 19 Apr 2022 15:17:38 +0300 From: Laurent Pinchart To: Ricardo Ribalda Cc: James_Lin , linux-kernel@vger.kernel.org, Mauro Carvalho Chehab , Matthias Brugger , Hans Verkuil , Ezequiel Garcia , Arnd Bergmann , Sergey Senozhatsky , Alexandre Courbot , Sakari Ailus , linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, sherlock.chang@mediatek.com, lecopzer.chen@mediatek.com, max.yan@mediatek.com, tm.wu@mediatek.com Subject: Re: [PATCH v3] media: usb: uvc: Add UVC_GUID_FORMAT_H265 Message-ID: References: <20220418090652.3156-1-Ping-lei.Lin@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello, On Tue, Apr 19, 2022 at 01:46:15PM +0200, Ricardo Ribalda wrote: > On Mon, 18 Apr 2022 at 11:07, James_Lin wrote: > > > > This patch aims to add UVC_GUID_FORMAT_H265 > > High Efficiency Video Coding (HEVC), also known as H.265 and MPEG-H Part 2. > > They describe the same video encoding method. > > So for handling their behavior is the same. > > However, when external camera device describes this encoding method, > > some use hevc, some use h265. > > There is no uniform specification to describe this encoding method. > > So if an external camera device use h265 to describe this encoding method, > > driver will not recognize it. > > Therefore, this patch is to enable driver to read HEVC/H265 > > and convert it to V4L2_PIX_FMT_HEVC. > > > > Signed-off-by: James_Lin > > Reviewed-by: Ricardo Ribalda > > --- > > drivers/media/usb/uvc/uvc_driver.c | 5 +++++ > > drivers/media/usb/uvc/uvcvideo.h | 3 +++ > > 2 files changed, 8 insertions(+) > > > > diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c > > index dda0f0aa78b8..e437e9f95890 100644 > > --- a/drivers/media/usb/uvc/uvc_driver.c > > +++ b/drivers/media/usb/uvc/uvc_driver.c > > @@ -154,6 +154,11 @@ static struct uvc_format_desc uvc_fmts[] = { > > .guid = UVC_GUID_FORMAT_H264, > > .fcc = V4L2_PIX_FMT_H264, > > }, > > Maybe I would add a comment here saying that some cameras represent > hevc as h265. I wish there would be a 4CC and GUID standard with a centralized registry... Reviewed-by: Laurent Pinchart > > + { > > + .name = "H.265", > > + .guid = UVC_GUID_FORMAT_H265, > > + .fcc = V4L2_PIX_FMT_HEVC, > > + }, > > { > > .name = "Greyscale 8 L/R (Y8I)", > > .guid = UVC_GUID_FORMAT_Y8I, > > diff --git a/drivers/media/usb/uvc/uvcvideo.h b/drivers/media/usb/uvc/uvcvideo.h > > index 143230b3275b..41f4d8c33f2a 100644 > > --- a/drivers/media/usb/uvc/uvcvideo.h > > +++ b/drivers/media/usb/uvc/uvcvideo.h > > @@ -139,6 +139,9 @@ > > #define UVC_GUID_FORMAT_H264 \ > > { 'H', '2', '6', '4', 0x00, 0x00, 0x10, 0x00, \ > > 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71} > > +#define UVC_GUID_FORMAT_H265 \ > > + { 'H', '2', '6', '5', 0x00, 0x00, 0x10, 0x00, \ > > + 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71} > > #define UVC_GUID_FORMAT_Y8I \ > > { 'Y', '8', 'I', ' ', 0x00, 0x00, 0x10, 0x00, \ > > 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71} -- Regards, Laurent Pinchart