From fb02516b75e20c2e758a4e8f61b3cb5c2597f99e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Molinari?= Date: Mon, 29 Jan 2024 11:05:15 +0100 Subject: [PATCH] video: Fix NV12_16L32S video frame size The size of a NV12_16L32S video frame is bigger than expected because it uses the size of a Y tile to compute the interleaved UV plane size. Get the right UV tile size instead. Part-of: --- subprojects/gst-plugins-base/gst-libs/gst/video/video-info.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/subprojects/gst-plugins-base/gst-libs/gst/video/video-info.c b/subprojects/gst-plugins-base/gst-libs/gst/video/video-info.c index e12590fa91..76caf2f0d5 100644 --- a/subprojects/gst-plugins-base/gst-libs/gst/video/video-info.c +++ b/subprojects/gst-plugins-base/gst-libs/gst/video/video-info.c @@ -1146,7 +1146,7 @@ fill_planes (GstVideoInfo * info, gsize plane_size[GST_VIDEO_MAX_PLANES]) const gsize y_tile_size = GST_VIDEO_FORMAT_INFO_TILE_SIZE (info->finfo, 0); const gsize uv_tile_size = - GST_VIDEO_FORMAT_INFO_TILE_SIZE (info->finfo, 0); + GST_VIDEO_FORMAT_INFO_TILE_SIZE (info->finfo, 1); gint tile_width = GST_VIDEO_FORMAT_INFO_TILE_WIDTH (info->finfo, 0); gint tile_height = GST_VIDEO_FORMAT_INFO_TILE_HEIGHT (info->finfo, 0); gint n_tile_x = GST_ROUND_UP_N (info->width, tile_width) / tile_width;