[FFmpeg-devel] [PATCH] lavc/vvc: Increase size of ctb_size_y
James Almer
jamrial at gmail.com
Sat Apr 13 16:55:10 EEST 2024
On 4/13/2024 7:55 AM, Frank Plowman wrote:
> sps_log2_ctu_size_minus5 is between 0 and 2, with 3 reserved for future
> use. The VVC decoder allows sps_log2_ctu_size_minus5 to be 3, and so
> ctb_size_y should be at least 16 bits to prevent overflows. An
> alternative patch would leave sps_log2_ctu_size_minus5 as 8 bits and
> disallow sps_log2_ctu_size_minus5 = 3.
The spec says a value of 3 should be ignored, which i assume means
decoding is not meant to stop. So this patch is probably better than
outright rejecting the value in CBS.
>
> Signed-off-by: Frank Plowman <post at frankplowman.com>
> ---
> libavcodec/vvc/ps.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavcodec/vvc/ps.h b/libavcodec/vvc/ps.h
> index 78f1687fef..6656a06320 100644
> --- a/libavcodec/vvc/ps.h
> +++ b/libavcodec/vvc/ps.h
> @@ -69,7 +69,7 @@ typedef struct VVCSPS {
> uint8_t bit_depth; ///< BitDepth
> uint8_t qp_bd_offset; ///< QpBdOffset
> uint8_t ctb_log2_size_y; ///< CtbLog2SizeY
> - uint8_t ctb_size_y; ///< CtbSizeY
> + uint16_t ctb_size_y; ///< CtbSizeY
> uint8_t min_cb_log2_size_y; ///< MinCbLog2SizeY
> uint8_t min_cb_size_y; ///< MinCbSizeY
> uint8_t max_tb_size_y; ///< MaxTbSizeY
More information about the ffmpeg-devel
mailing list