mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-27 01:11:14 +00:00
59 lines
2.3 KiB
Diff
59 lines
2.3 KiB
Diff
|
From 7e8e61a7103c53c54cbd1b81c4fb6289141be7c5 Mon Sep 17 00:00:00 2001
|
||
|
From: John Cox <jc@kynesim.co.uk>
|
||
|
Date: Fri, 6 Aug 2021 10:53:50 +0100
|
||
|
Subject: [PATCH] media: v4l2: Add HEVC_SCALING_MATRIX attribute to
|
||
|
v4l2-ctrl-*
|
||
|
|
||
|
Add code to support V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX to
|
||
|
v4l2-ctrl-*. This change was in the unsplit v4l2-ctrl.c but failed
|
||
|
to make it through the split.
|
||
|
|
||
|
Signed-off-by: John Cox <jc@kynesim.co.uk>
|
||
|
---
|
||
|
drivers/media/v4l2-core/v4l2-ctrls-core.c | 6 ++++++
|
||
|
drivers/media/v4l2-core/v4l2-ctrls-defs.c | 4 ++++
|
||
|
2 files changed, 10 insertions(+)
|
||
|
|
||
|
--- a/drivers/media/v4l2-core/v4l2-ctrls-core.c
|
||
|
+++ b/drivers/media/v4l2-core/v4l2-ctrls-core.c
|
||
|
@@ -627,6 +627,9 @@ static int std_validate_compound(const s
|
||
|
zero_padding(*p_hevc_pps);
|
||
|
break;
|
||
|
|
||
|
+ case V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX:
|
||
|
+ break;
|
||
|
+
|
||
|
case V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS:
|
||
|
p_hevc_decode_params = p;
|
||
|
|
||
|
@@ -1250,6 +1253,9 @@ static struct v4l2_ctrl *v4l2_ctrl_new(s
|
||
|
case V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS:
|
||
|
elem_size = sizeof(struct v4l2_ctrl_hevc_slice_params);
|
||
|
break;
|
||
|
+ case V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX:
|
||
|
+ elem_size = sizeof(struct v4l2_ctrl_hevc_scaling_matrix);
|
||
|
+ break;
|
||
|
case V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS:
|
||
|
elem_size = sizeof(struct v4l2_ctrl_hevc_decode_params);
|
||
|
break;
|
||
|
--- a/drivers/media/v4l2-core/v4l2-ctrls-defs.c
|
||
|
+++ b/drivers/media/v4l2-core/v4l2-ctrls-defs.c
|
||
|
@@ -997,6 +997,7 @@ const char *v4l2_ctrl_get_name(u32 id)
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_SPS: return "HEVC Sequence Parameter Set";
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_PPS: return "HEVC Picture Parameter Set";
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS: return "HEVC Slice Parameters";
|
||
|
+ case V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX: return "HEVC Scaling Matrix";
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_DECODE_PARAMS: return "HEVC Decode Parameters";
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_DECODE_MODE: return "HEVC Decode Mode";
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_START_CODE: return "HEVC Start Code";
|
||
|
@@ -1490,6 +1491,9 @@ void v4l2_ctrl_fill(u32 id, const char *
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS:
|
||
|
*type = V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS;
|
||
|
break;
|
||
|
+ case V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX:
|
||
|
+ *type = V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX;
|
||
|
+ break;
|
||
|
case V4L2_CID_MPEG_VIDEO_HEVC_DECODE_PARAMS:
|
||
|
*type = V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS;
|
||
|
break;
|