media: controls: Add the stateless codec control class
Add a new control class to hold the stateless codecs controls that are ready to be moved out of staging. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Tested-by: Jernej Skrabec <jernej.skrabec@siol.net> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
Родитель
b32e48503d
Коммит
008d2bd6e9
|
@ -362,6 +362,10 @@ still cause this situation.
|
|||
- 0xa30000
|
||||
- The class containing motion or object detection controls. These controls
|
||||
are described in :ref:`detect-controls`.
|
||||
* - ``V4L2_CTRL_CLASS_CODEC_STATELESS``
|
||||
- 0xa40000
|
||||
- The class containing stateless codec controls. These controls are
|
||||
described in :ref:`codec-stateless-controls`.
|
||||
|
||||
Return Value
|
||||
============
|
||||
|
|
|
@ -1181,6 +1181,10 @@ const char *v4l2_ctrl_get_name(u32 id)
|
|||
case V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD: return "MD Global Threshold";
|
||||
case V4L2_CID_DETECT_MD_THRESHOLD_GRID: return "MD Threshold Grid";
|
||||
case V4L2_CID_DETECT_MD_REGION_GRID: return "MD Region Grid";
|
||||
|
||||
/* Stateless Codec controls */
|
||||
/* Keep the order of the 'case's the same as in v4l2-controls.h! */
|
||||
case V4L2_CID_CODEC_STATELESS_CLASS: return "Stateless Codec Controls";
|
||||
default:
|
||||
return NULL;
|
||||
}
|
||||
|
@ -1368,6 +1372,7 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
|
|||
case V4L2_CID_FM_RX_CLASS:
|
||||
case V4L2_CID_RF_TUNER_CLASS:
|
||||
case V4L2_CID_DETECT_CLASS:
|
||||
case V4L2_CID_CODEC_STATELESS_CLASS:
|
||||
*type = V4L2_CTRL_TYPE_CTRL_CLASS;
|
||||
/* You can neither read not write these */
|
||||
*flags |= V4L2_CTRL_FLAG_READ_ONLY | V4L2_CTRL_FLAG_WRITE_ONLY;
|
||||
|
|
|
@ -65,6 +65,7 @@
|
|||
#define V4L2_CTRL_CLASS_FM_RX 0x00a10000 /* FM Receiver controls */
|
||||
#define V4L2_CTRL_CLASS_RF_TUNER 0x00a20000 /* RF tuner controls */
|
||||
#define V4L2_CTRL_CLASS_DETECT 0x00a30000 /* Detection controls */
|
||||
#define V4L2_CTRL_CLASS_CODEC_STATELESS 0x00a40000 /* Stateless codecs controls */
|
||||
|
||||
/* User-class control IDs */
|
||||
|
||||
|
@ -1177,6 +1178,12 @@ enum v4l2_detect_md_mode {
|
|||
#define V4L2_CID_DETECT_MD_THRESHOLD_GRID (V4L2_CID_DETECT_CLASS_BASE + 3)
|
||||
#define V4L2_CID_DETECT_MD_REGION_GRID (V4L2_CID_DETECT_CLASS_BASE + 4)
|
||||
|
||||
|
||||
/* Stateless CODECs controls */
|
||||
#define V4L2_CID_CODEC_STATELESS_BASE (V4L2_CTRL_CLASS_CODEC_STATELESS | 0x900)
|
||||
#define V4L2_CID_CODEC_STATELESS_CLASS (V4L2_CTRL_CLASS_CODEC_STATELESS | 1)
|
||||
|
||||
|
||||
/* MPEG-compression definitions kept for backwards compatibility */
|
||||
#ifndef __KERNEL__
|
||||
#define V4L2_CTRL_CLASS_MPEG V4L2_CTRL_CLASS_CODEC
|
||||
|
|
Загрузка…
Ссылка в новой задаче