aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLynne <dev@lynne.ee>2024-10-12 00:59:55 +0200
committerLynne <dev@lynne.ee>2024-10-15 17:45:19 +0200
commit3afdfe830f97efde396d2e2b97d561b9e3618f36 (patch)
treeaf06855e296e4fb11232bb5c15cec2aa188cef96
parent903f7f053a4054d1e1f79a6caff5a7cad6077f9e (diff)
downloadffmpeg-3afdfe830f97efde396d2e2b97d561b9e3618f36.tar.gz
vulkan: add support for AV_PIX_FMT_RGB96
-rw-r--r--libavutil/hwcontext_vulkan.c1
-rw-r--r--libavutil/vulkan.c3
2 files changed, 3 insertions, 1 deletions
diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
index cce8d6aa47..ab215ebf5b 100644
--- a/libavutil/hwcontext_vulkan.c
+++ b/libavutil/hwcontext_vulkan.c
@@ -322,6 +322,7 @@ static const struct FFVkFormatEntry {
{ VK_FORMAT_A2B10G10R10_UNORM_PACK32, AV_PIX_FMT_X2BGR10, VK_IMAGE_ASPECT_COLOR_BIT, 1, 1, 1, { VK_FORMAT_A2B10G10R10_UNORM_PACK32 } },
{ VK_FORMAT_R32G32B32_SFLOAT, AV_PIX_FMT_RGBF32, VK_IMAGE_ASPECT_COLOR_BIT, 1, 1, 1, { VK_FORMAT_R32G32B32_SFLOAT } },
{ VK_FORMAT_R32G32B32A32_SFLOAT, AV_PIX_FMT_RGBAF32, VK_IMAGE_ASPECT_COLOR_BIT, 1, 1, 1, { VK_FORMAT_R32G32B32A32_SFLOAT } },
+ { VK_FORMAT_R32G32B32_UINT, AV_PIX_FMT_RGB96, VK_IMAGE_ASPECT_COLOR_BIT, 1, 1, 1, { VK_FORMAT_R32G32B32_UINT } },
{ VK_FORMAT_R32G32B32A32_UINT, AV_PIX_FMT_RGBA128, VK_IMAGE_ASPECT_COLOR_BIT, 1, 1, 1, { VK_FORMAT_R32G32B32A32_UINT } },
/* Planar RGB */
diff --git a/libavutil/vulkan.c b/libavutil/vulkan.c
index f62ceb6248..0c0c3b5fbc 100644
--- a/libavutil/vulkan.c
+++ b/libavutil/vulkan.c
@@ -1283,7 +1283,7 @@ int ff_vk_mt_is_np_rgb(enum AVPixelFormat pix_fmt)
pix_fmt == AV_PIX_FMT_0BGR || pix_fmt == AV_PIX_FMT_RGB0 ||
pix_fmt == AV_PIX_FMT_X2RGB10 || pix_fmt == AV_PIX_FMT_X2BGR10 ||
pix_fmt == AV_PIX_FMT_RGBAF32 || pix_fmt == AV_PIX_FMT_RGBF32 ||
- pix_fmt == AV_PIX_FMT_RGBA128)
+ pix_fmt == AV_PIX_FMT_RGBA128 || pix_fmt == AV_PIX_FMT_RGB96)
return 1;
return 0;
}
@@ -1344,6 +1344,7 @@ const char *ff_vk_shader_rep_fmt(enum AVPixelFormat pix_fmt,
};
return rep_tab[rep_fmt];
}
+ case AV_PIX_FMT_RGB96:
case AV_PIX_FMT_RGBA128: {
const char *rep_tab[] = {
[FF_VK_REP_NATIVE] = "rgba32ui",