cudamemory: Fix for semi planar YUV memory size decision
authorSeungha Yang <seungha@centricular.com>
Fri, 28 Apr 2023 09:52:48 +0000 (18:52 +0900)
committerSeungha Yang <seungha@centricular.com>
Fri, 28 Apr 2023 09:52:48 +0000 (18:52 +0900)
UV plan of the semi planar format requires only half of Y plane size

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4506>

subprojects/gst-plugins-bad/gst-libs/gst/cuda/gstcudamemory.c

index 50ff67b..4cfdec9 100644 (file)
@@ -518,11 +518,13 @@ gst_cuda_allocator_alloc (GstCudaAllocator * allocator,
     case GST_VIDEO_FORMAT_I420:
     case GST_VIDEO_FORMAT_YV12:
     case GST_VIDEO_FORMAT_I420_10LE:
+      alloc_height *= 2;
+      break;
     case GST_VIDEO_FORMAT_NV12:
     case GST_VIDEO_FORMAT_NV21:
     case GST_VIDEO_FORMAT_P010_10LE:
     case GST_VIDEO_FORMAT_P016_LE:
-      alloc_height *= 2;
+      alloc_height += alloc_height / 2;
       break;
     case GST_VIDEO_FORMAT_Y42B:
     case GST_VIDEO_FORMAT_I422_10LE: