mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
cudamemory: add support for planar 4:2:2 YUV formats
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2269>
This commit is contained in:
parent
7064404b1e
commit
8678fc999a
2 changed files with 15 additions and 1 deletions
|
@ -146,6 +146,17 @@ gst_cuda_allocator_alloc_internal (GstCudaAllocator * self,
|
|||
alloc_info->offset[2] = alloc_info->offset[1] +
|
||||
alloc_info->stride[1] * height / 2;
|
||||
break;
|
||||
case GST_VIDEO_FORMAT_Y42B:
|
||||
case GST_VIDEO_FORMAT_I422_10LE:
|
||||
case GST_VIDEO_FORMAT_I422_12LE:
|
||||
alloc_info->stride[0] = pitch;
|
||||
alloc_info->stride[1] = pitch;
|
||||
alloc_info->stride[2] = pitch;
|
||||
alloc_info->offset[0] = 0;
|
||||
alloc_info->offset[1] = alloc_info->stride[0] * height;
|
||||
alloc_info->offset[2] = alloc_info->offset[1] +
|
||||
alloc_info->stride[1] * height;
|
||||
break;
|
||||
case GST_VIDEO_FORMAT_NV12:
|
||||
case GST_VIDEO_FORMAT_NV21:
|
||||
case GST_VIDEO_FORMAT_P010_10LE:
|
||||
|
@ -498,6 +509,9 @@ gst_cuda_allocator_alloc (GstCudaAllocator * allocator,
|
|||
case GST_VIDEO_FORMAT_P016_LE:
|
||||
alloc_height *= 2;
|
||||
break;
|
||||
case GST_VIDEO_FORMAT_Y42B:
|
||||
case GST_VIDEO_FORMAT_I422_10LE:
|
||||
case GST_VIDEO_FORMAT_I422_12LE:
|
||||
case GST_VIDEO_FORMAT_Y444:
|
||||
case GST_VIDEO_FORMAT_Y444_16LE:
|
||||
alloc_height *= 3;
|
||||
|
|
|
@ -25,7 +25,7 @@ G_BEGIN_DECLS
|
|||
|
||||
#define GST_CUDA_FORMATS \
|
||||
"{ I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, " \
|
||||
"BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE }"
|
||||
"BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE }"
|
||||
|
||||
#define GST_CUDA_GL_FORMATS \
|
||||
"{ I420, YV12, NV12, NV21, P010_10LE, P016_LE, Y444, " \
|
||||
|
|
Loading…
Reference in a new issue