diff options
author | Ezequiel Garcia <ezequiel@collabora.com> | 2020-08-25 05:52:31 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-09-01 14:13:28 +0200 |
commit | 4245232fa6ca58f79710732bd16cefe78b8b8bc4 (patch) | |
tree | 0615ed0be12512d287872a8dfc94a374d2a8cf52 /include | |
parent | fb92c56312d4e3a5c30de963e459a040a4761665 (diff) | |
download | linux-4245232fa6ca58f79710732bd16cefe78b8b8bc4.tar.bz2 |
media: uapi: h264: Increase size of 'first_mb_in_slice' field
Slice header syntax element 'first_mb_in_slice' can point
to the last macroblock, currently the field can only reference
65536 macroblocks which is insufficient for 8K videos.
Although unlikely, a 8192x4320 video (where macroblocks are 16x16),
would contain 138240 macroblocks on a frame.
As per the H264 specification, 'first_mb_in_slice' can be up to
PicSizeInMbs - 1, so increase the size of the field to 32-bits.
Note that v4l2_ctrl_h264_slice_params struct will be modified
in a follow-up commit, and so we defer its 64-bit padding.
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Tested-by: Jonas Karlman <jonas@kwiboo.se>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/media/h264-ctrls.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/media/h264-ctrls.h b/include/media/h264-ctrls.h index 31c6f4c5963b..9a6722edf004 100644 --- a/include/media/h264-ctrls.h +++ b/include/media/h264-ctrls.h @@ -172,7 +172,8 @@ struct v4l2_ctrl_h264_slice_params { /* Offset in bits to slice_data() from the beginning of this slice. */ __u32 header_bit_size; - __u16 first_mb_in_slice; + __u32 first_mb_in_slice; + __u8 slice_type; __u8 pic_parameter_set_id; __u8 colour_plane_id; |