Received: by 10.223.176.5 with SMTP id f5csp2850741wra; Mon, 29 Jan 2018 05:08:56 -0800 (PST) X-Google-Smtp-Source: AH8x227pH1rUahC+m792m/rPp/Xl/XU13WU3GkiOP5oEuwk5g6eyAETxtxafrxjqFm/yx9dUsJzf X-Received: by 2002:a17:902:988b:: with SMTP id s11-v6mr20820006plp.99.1517231335920; Mon, 29 Jan 2018 05:08:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517231335; cv=none; d=google.com; s=arc-20160816; b=u3S88gF6CMXsZhZIQm4QKaEq9ux3O6zV+8Sw8pzUKTUPVQGkCW0NJE4K96RWGTesBl tvx+jv/lg2V0ek2rCkz4KS1MIWOel0nuHTro2Cy7W1n1Arc4JOf97pmQmVGyb8iG5Ndl XWM4YNK3CjqE5grHImWX01W24u9yttDo+pRwT9ZN+dX4XWdQ+NMDOonnKgCmYJnqNEJZ UXnIHwYMENVtUvfokrbKAWrLjKpn1pW9JTz67YZC6JMtD6tLj7UUbAMOqqC09tbmwy9Z XyPCpamERQ6/N023bgmK8J2lka9rbxKlJ/fL5kYx44E7GoWnpUUhJ427BcuPYxMKBvr1 jpCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:cms-type :content-transfer-encoding:mime-version:message-id:date:in-reply-to :cc:to:from:subject:dkim-signature:dkim-filter :arc-authentication-results; bh=nF4Z4JHlPzEX5F9k7JwWKucXv4qqyhOvy9kh2V5h63g=; b=CBWF2E0dPRFelcQb/vywGiXttX/y6PM90hpzA9v8vXorzwYovWNPrsyzmoprdUGEDE aThDG187w+4PM1Xy9q671gXAnqf3uBS6OwOlFzvPDPU8V1F5gSnRRLMHvbouXHhjZedK 49KPcKSf7HVgvoZiYJH0x2Jlc9sF1OZjjryKgdWOZsKliMjhxIhrFKNVBY38T6EITfMo ieKch9P3nMobjAV7jS7kT8paYnOTMDNH76YST7SCLiq+07OVTkBy8BLPjgZmD+OUYv/f CfOeVlCVwlOeZZIzFXGhGUDlnA8V6IYVOHDye2taBaMexNDVi+znmZMx5YJZYftJtnZ7 NX8A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=LM6VxR9O; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m4si7358935pgu.633.2018.01.29.05.08.41; Mon, 29 Jan 2018 05:08:55 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=LM6VxR9O; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751907AbeA2NHC (ORCPT + 99 others); Mon, 29 Jan 2018 08:07:02 -0500 Received: from mailout2.samsung.com ([203.254.224.25]:26470 "EHLO mailout2.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751765AbeA2NG7 (ORCPT ); Mon, 29 Jan 2018 08:06:59 -0500 Received: from epcas5p3.samsung.com (unknown [182.195.41.41]) by mailout2.samsung.com (KnoxPortal) with ESMTP id 20180129130657epoutp0274fec4e68ee030eadae3424fa23f5726~OScDrSdK61481214812epoutp02s for ; Mon, 29 Jan 2018 13:06:57 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.samsung.com 20180129130657epoutp0274fec4e68ee030eadae3424fa23f5726~OScDrSdK61481214812epoutp02s DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1517231217; bh=nF4Z4JHlPzEX5F9k7JwWKucXv4qqyhOvy9kh2V5h63g=; h=Subject:From:To:Cc:In-Reply-To:Date:References:From; b=LM6VxR9OSnkFQXBB+iorxGM71tuiXlaJtUoVd86FclAAFFdQxg+lv4kPA4JTiVPdX AWT+4RMpC79akLA9Rmc8WbMFkODDSWI4gMzgcSzAL7Vi4Lz4nHHG1l+d3johW1g32+ bRq02ZerAcjz341wkIAjNPuXtTIRPQMPSJNtzSqA= Received: from epsmges5p3new.samsung.com (unknown [182.195.42.75]) by epcas5p4.samsung.com (KnoxPortal) with ESMTP id 20180129130657epcas5p4e87c0adf6391f276c998a06e89d737ce~OScDUbv2q1716417164epcas5p4g; Mon, 29 Jan 2018 13:06:57 +0000 (GMT) Received: from epcas5p1.samsung.com ( [182.195.41.39]) by epsmges5p3new.samsung.com (Symantec Messaging Gateway) with SMTP id 36.9C.04390.07C1F6A5; Mon, 29 Jan 2018 22:06:56 +0900 (KST) Received: from epsmtrp2.samsung.com (unknown [182.195.40.14]) by epcas5p2.samsung.com (KnoxPortal) with ESMTPA id 20180129130656epcas5p2f83e12aad9713bb80510b5abb1897298~OScChbANZ0890508905epcas5p2G; Mon, 29 Jan 2018 13:06:56 +0000 (GMT) Received: from epsmgms1p2new.samsung.com (unknown [182.195.42.42]) by epsmtrp2.samsung.com (KnoxPortal) with ESMTP id 20180129130656epsmtrp2cb236070bc3943b14e818b55829907e7~OScCfvgGt2432724327epsmtrp2I; Mon, 29 Jan 2018 13:06:56 +0000 (GMT) X-AuditID: b6c32a4b-cd1ff70000001126-c5-5a6f1c707db6 Received: from epsmtip1.samsung.com ( [182.195.34.30]) by epsmgms1p2new.samsung.com (Symantec Messaging Gateway) with SMTP id 95.C1.03798.F6C1F6A5; Mon, 29 Jan 2018 22:06:56 +0900 (KST) Received: from [107.108.83.49] (unknown [107.108.83.49]) by epsmtip1.samsung.com (KnoxPortal) with ESMTPA id 20180129130639epsmtip1c79742741c2dc2ba995c0207dfbaf453~OSbzCQ2gb1992919929epsmtip1b; Mon, 29 Jan 2018 13:06:38 +0000 (GMT) Subject: Re: [Patch v7 12/12] Documention: v4l: Documentation for HEVC CIDs From: Smitha T Murthy To: Hans Verkuil Cc: linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, kyungmin.park@samsung.com, kamil@wypas.org, jtp.park@samsung.com, a.hajda@samsung.com, mchehab@kernel.org, pankaj.dubey@samsung.com, krzk@kernel.org, m.szyprowski@samsung.com, s.nawrocki@samsung.com In-Reply-To: <127cfd7f-113f-6724-297c-6f3c3746a8ff@xs4all.nl> Date: Mon, 29 Jan 2018 18:12:58 +0530 Message-ID: <1517229778.29374.9.camel@smitha-fedora> Mime-Version: 1.0 X-Mailer: Evolution 2.28.3 (2.28.3-1.fc12) Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA01Sa0hTYRjm29nZOY5Onabkq120hZhWrqsdyitJDOxHEkEJoSNPXtK5zrxk F5pJOpdlpgmKhUgGrbxsXrEknSPNO6n7YRRIYuUlwy1ppZHzTOzf8z6X73lf+EhM0oF7konK NJZTKpKlIrGwucvPd59qW2r0/ureY8x47SDO9BZPCRhzzZiAKevJw5mhoXqCGbg9SzDGzxac GWmrEDEF9U04U2P+SDDPjEsCpqrJRjBds3l4GCU36vNF8oant+T3G/VIbjXukI+aswl5708r cVoULQ6KY5MTM1hOFhIrTph5mStUWWRXK6oNhAbZfHTIhQT6MHzQWwkdEpMS+hWCLn09zg8L CDq/TjiVRQSVhXcFa5Ev9j7EC+0I6ga0Qn6YW8nb3mM6RJKudCToOt0dARG9Fxbn+0QO7Eb7 wEzbb8zhx+hmAYxYrKuvutDBYCsYQ46scMX08O8JB02tlBmKc4QOmqI3w3KrK7/DHqjV9Asd GKO9oGWuAuP5HAK6dTd5HAHDZU+cO7vCdHcjwWNPsH5vF/E4E14v2VfXB1qD4HF3NuKFUOgY rVjtxWg/qGuT8XQwPJo0YXzvRrj3Z1LgsABNgTZXwlukUNXf46wCGJtrwnksh7EWsxOHQ0Gn hniAdpavH1b+3zHl672VCNMjD1alToln1UdUh5RsZoBakaJOV8YHXExNMaLVf+Uf2YqMg6dM iCaRdAP146wyWoIrMtRZKSYEJCZ1oz5dWaGoOEXWNZZLjeHSk1m1CW0lhVJ3KjwqIlpCxyvS 2Mssq2K5NVVAunhqEFXLFfuW0NKICwuxC6FvzpfMcvnJhbqghrDMpuakSLmdcstOK3pRB9uP l01533l3pjXxuiDy18ktpeRRSIoKOdjRKTYGLvUse/V77Ho+r/VmWqYbJYY5+zmu/e1i3fD4 pCHK4nNjU7XMZ3epvaR6QhZq+FZki2mzXQpMs7hopUJ1guKAP8apFf8AWp+IXFMDAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFuphkeLIzCtJLcpLzFFi42LZdlhJTrdAJj/K4NNpJotb686xWpya/IzJ 4sjaq0wWM0+0s1qcP7+B3eJs0xt2i02Pr7FaXN41h82iZ8NWVou1R+6yWyzb9IfJYtHWL+wW h9+0szrwemxa1cnmsXlJvUffllWMHp83yXlcOdLI7nHq62f2ALYoLpuU1JzMstQifbsErozX a9pYCq7pV8xZupG9gfGLahcjJ4eEgInE85+nGbsYuTiEBHYzSlybvYYFIiEhsfL3JEYIW1hi 5b/n7BBFrxklDs84AORwcAgLeEt0HRQHqWET0JH49v40G4gtIqAq8XrXL2aQemaB9UwSLdd+ sYMkOAVsJb70XIXa1sEksf3MBrBtzAKaEq3bf4MNZQHqnvTPGSTMC3TdxsnNLCBhXgFBib87 hCHu0ZZY13AGqlNeYvvbOcwTGAVnIRk0C6FjFpKqBYzMqxglUwuKc9Nziw0LjPJSy/WKE3OL S/PS9ZLzczcxguNIS2sH44kT8YcYBTgYlXh4P4TmRQmxJpYVV+YeYpTgYFYS4b1XCBTiTUms rEotyo8vKs1JLT7EKM3BoiTOK59/LFJIID2xJDU7NbUgtQgmy8TBKdXAOKt65ZRHu2aetzNS yZywwN6Z+V0x+9+Jt5zzW4RV/++72HvD5t9kjmPLFwbalIY8PDTL0OnzwVj1W5Jb3XYenrd3 /mRR+/Nb01boKKmfz0ySenr/uJjGAy/nxasWaE81DYlZr+9wJGzJ+bQ/AptuWvDdTqrRd2bZ Et76rCNe8bPw8Za9fUuYVyixFGckGmoxFxUnAgD1ZqmmnwIAAA== X-CMS-MailID: 20180129130656epcas5p2f83e12aad9713bb80510b5abb1897298 X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-MTR: 20180129130656epcas5p2f83e12aad9713bb80510b5abb1897298 CMS-TYPE: 105P X-CMS-RootMailID: 20180124112406epcas2p3820cea581731825c7ad72ebbb1ca060c X-RootMTR: 20180124112406epcas2p3820cea581731825c7ad72ebbb1ca060c References: <1516791584-7980-1-git-send-email-smitha.t@samsung.com> <1516791584-7980-13-git-send-email-smitha.t@samsung.com> <127cfd7f-113f-6724-297c-6f3c3746a8ff@xs4all.nl> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2018-01-24 at 15:16 +0100, Hans Verkuil wrote: > On 24/01/18 11:59, Smitha T Murthy wrote: > > Added V4l2 controls for HEVC encoder > > > > Signed-off-by: Smitha T Murthy > > --- > > Documentation/media/uapi/v4l/extended-controls.rst | 400 +++++++++++++++++++++ > > 1 file changed, 400 insertions(+) > > > > diff --git a/Documentation/media/uapi/v4l/extended-controls.rst b/Documentation/media/uapi/v4l/extended-controls.rst > > index dfe49ae..46ee2bf 100644 > > --- a/Documentation/media/uapi/v4l/extended-controls.rst > > +++ b/Documentation/media/uapi/v4l/extended-controls.rst > > @@ -1960,6 +1960,406 @@ enum v4l2_vp8_golden_frame_sel - > > 1, 2 and 3 corresponding to encoder profiles 0, 1, 2 and 3. > > > > > > +High Efficiency Video Coding (HEVC/H.265) Control Reference > > +----------------------------------------------------------- > > + > > +The HEVC/H.265 controls include controls for encoding parameters of HEVC/H.265 > > +video codec. > > + > > + > > +.. _hevc-control-id: > > + > > +HEVC/H.265 Control IDs > > +^^^^^^^^^^^^^^^^^^^^^^ > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP (integer)`` > > + Minimum quantization parameter for HEVC. > > + Valid range: from 0 to 51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP (integer)`` > > + Maximum quantization parameter for HEVC. > > + Valid range: from 0 to 51. > > You probably should mention the default values for MIN_QP and MAX_QP > (I assume those are 0 and 51 and are not driver specific). > Yes these values are not driver specific. I followed the way MAX_QP and MIN_QP are defined for other codecs like H264, H263, MPEG4 where only valid range is mentioned. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_I_FRAME_QP (integer)`` > > + Quantization parameter for an I frame for HEVC. > > + Valid range: from 0 to 51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_P_FRAME_QP (integer)`` > > + Quantization parameter for a P frame for HEVC. > > + Valid range: from 0 to 51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_B_FRAME_QP (integer)`` > > + Quantization parameter for a B frame for HEVC. > > + Valid range: from 0 to 51. > > Sorry, this still isn't clear to me. > > If I set V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP to 50, can I then still set > V4L2_CID_MPEG_VIDEO_HEVC_B_FRAME_QP to 51? Or is 50 then the maximum? > > In other words, what is the relationship between these three controls > and the MIN_QP/MAX_QP controls. > If we set V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP as 50 then V4L2_CID_MPEG_VIDEO_HEVC_B_FRAME_QP or 4L2_CID_MPEG_VIDEO_HEVC_I_FRAME_QP or V4L2_CID_MPEG_VIDEO_HEVC_P_FRAME_QP will have maximum as 50. Similarly for minimum as well, the above three controls will adhere to the V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP set. These controls have similar in relation as seen with V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP and V4L2_CID_MPEG_VIDEO_H264_MAX_QP > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_QP (boolean)`` > > + HIERARCHICAL_QP allows the host to specify the quantization parameter > > + values for each temporal layer through HIERARCHICAL_QP_LAYER. This is > > + valid only if HIERARCHICAL_CODING_LAYER is greater than 1. Setting the > > + control value to 1 enables setting of the QP values for the layers. > > + > > +.. _v4l2-hevc-hier-coding-type: > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_TYPE`` > > + (enum) > > + > > +enum v4l2_mpeg_video_hevc_hier_coding_type - > > + Selects the hierarchical coding type for encoding. Possible values are: > > + > > +.. raw:: latex > > + > > + \begin{adjustbox}{width=\columnwidth} > > + > > +.. tabularcolumns:: |p{11.0cm}|p{10.0cm}| > > + > > +.. flat-table:: > > + :header-rows: 0 > > + :stub-columns: 0 > > + > > + * - ``V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_B`` > > + - Use the B frame for hierarchical coding. > > + * - ``V4L2_MPEG_VIDEO_HEVC_HIERARCHICAL_CODING_P`` > > + - Use the P frame for hierarchical coding. > > + > > +.. raw:: latex > > + > > + \end{adjustbox} > > + > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_LAYER (integer)`` > > + Selects the hierarchical coding layer. In normal encoding > > + (non-hierarchial coding), it should be zero. Possible values are [0, 6]. > > + 0 indicates HIERARCHICAL CODING LAYER 0, 1 indicates HIERARCHICAL CODING > > + LAYER 1 and so on. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L0_QP (integer)`` > > + Indicates quantization parameter for hierarchical coding layer 0. > > + For HEVC it can have a value of 0-51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L1_QP (integer)`` > > + Indicates quantization parameter for hierarchical coding layer 1. > > + For HEVC it can have a value of 0-51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L2_QP (integer)`` > > + Indicates quantization parameter for hierarchical coding layer 2. > > + For HEVC it can have a value of 0-51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L3_QP (integer)`` > > + Indicates quantization parameter for hierarchical coding layer 3. > > + For HEVC it can have a value of 0-51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L4_QP (integer)`` > > + Indicates quantization parameter for hierarchical coding layer 4. > > + For HEVC it can have a value of 0-51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L5_QP (integer)`` > > + Indicates quantization parameter for hierarchical coding layer 5. > > + For HEVC it can have a value of 0-51. > > + > > +``V4L2_CID_MPEG_VIDEO_HEVC_HIER_CODING_L6_QP (integer)`` > > + Indicates quantization parameter for hierarchical coding layer 6. > > + For HEVC it can have a value of 0-51. > > Same here: how does MIN_QP/MAX_QP influence these controls, if at all. > > Regards, > > Hans > > The values set in V4L2_CID_MPEG_VIDEO_HEVC_MIN_QP and V4L2_CID_MPEG_VIDEO_HEVC_MAX_QP will give the limits for the L0-L6 QP values that can be set. Regards, Smitha