mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-20 21:16:24 +00:00
vkformat: fix format conversion for matching vulkan formats
Other formats still need a swizzle or conversion.
This commit is contained in:
parent
5478d39900
commit
25a970f9d5
1 changed files with 9 additions and 7 deletions
|
@ -55,23 +55,27 @@ gst_vulkan_format_from_video_format (GstVideoFormat v_format, guint plane)
|
|||
|
||||
switch (v_format) {
|
||||
case GST_VIDEO_FORMAT_RGBx:
|
||||
case GST_VIDEO_FORMAT_BGRx:
|
||||
case GST_VIDEO_FORMAT_xRGB:
|
||||
case GST_VIDEO_FORMAT_xBGR:
|
||||
case GST_VIDEO_FORMAT_RGBA:
|
||||
return VK_FORMAT_R8G8B8A8_UNORM;
|
||||
case GST_VIDEO_FORMAT_BGRx:
|
||||
case GST_VIDEO_FORMAT_BGRA:
|
||||
return VK_FORMAT_B8G8R8A8_UNORM;
|
||||
case GST_VIDEO_FORMAT_xRGB:
|
||||
case GST_VIDEO_FORMAT_ARGB:
|
||||
case GST_VIDEO_FORMAT_xBGR:
|
||||
case GST_VIDEO_FORMAT_ABGR:
|
||||
case GST_VIDEO_FORMAT_AYUV:
|
||||
n_plane_components = 4;
|
||||
break;
|
||||
case GST_VIDEO_FORMAT_RGB:
|
||||
return VK_FORMAT_R8G8B8_UNORM;
|
||||
case GST_VIDEO_FORMAT_BGR:
|
||||
n_plane_components = 3;
|
||||
return VK_FORMAT_B8G8R8_UNORM;
|
||||
break;
|
||||
case GST_VIDEO_FORMAT_RGB16:
|
||||
case GST_VIDEO_FORMAT_BGR16:
|
||||
return VK_FORMAT_R5G6B5_UNORM_PACK16;
|
||||
case GST_VIDEO_FORMAT_BGR16:
|
||||
return VK_FORMAT_B5G6R5_UNORM_PACK16;
|
||||
case GST_VIDEO_FORMAT_GRAY16_BE:
|
||||
case GST_VIDEO_FORMAT_GRAY16_LE:
|
||||
case GST_VIDEO_FORMAT_YUY2:
|
||||
|
@ -99,8 +103,6 @@ gst_vulkan_format_from_video_format (GstVideoFormat v_format, guint plane)
|
|||
switch (n_plane_components) {
|
||||
case 4:
|
||||
return VK_FORMAT_R8G8B8A8_UNORM;
|
||||
case 3:
|
||||
return VK_FORMAT_R8G8B8_UNORM;
|
||||
case 2:
|
||||
return VK_FORMAT_R8G8_UNORM;
|
||||
case 1:
|
||||
|
|
Loading…
Reference in a new issue