[FFmpeg-devel] [PATCH] avutil/hwcontext_vulkan: Query the correct format
Zhao Zhili
quinkblack at foxmail.com
Mon Jun 16 17:41:14 EEST 2025
> On May 6, 2025, at 03:37, Link Mauve <ffmpeg at linkmauve.fr> wrote:
>
> In the call to vkGetPhysicalDeviceImageFormatProperties2(), we were
> previously requesting the properties of the first fallback format (e.g.
> VK_FORMAT_R8_UNORM for VK_FORMAT_G8_B8R8_2PLANE_420_UNORM) instead of
> the actual format in use.
>
> We don’t do anything with it afterwards, but there is no reason to keep
> querying the wrong format.
> ---
> libavutil/hwcontext_vulkan.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
> index 35321bb063..0394ce1eba 100644
> --- a/libavutil/hwcontext_vulkan.c
> +++ b/libavutil/hwcontext_vulkan.c
> @@ -2591,7 +2591,7 @@ static void try_export_flags(AVHWFramesContext *hwfc,
> VkPhysicalDeviceImageFormatInfo2 pinfo = {
> .sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,
> .pNext = !exp ? NULL : &enext,
> - .format = av_vkfmt_from_pixfmt(hwfc->sw_format)[0],
> + .format = vk_find_format_entry(hwfc->sw_format)->vkf,
I don’t know why, but
1. ffplay -hwaccel cuda any_h264_or_hevc.mp4 is broken, that is nvdec plus vulkan render.
2. ffplay -hwaccel vulkan foo.mp4 is fine, that is hardware decoding and render with vulkan.
3. ffplay -enable_vulkan foo.mp4 is fine, that is software decoding and render with vulkan.
> .type = VK_IMAGE_TYPE_2D,
> .tiling = hwctx->tiling,
> .usage = hwctx->usage,
> --
> 2.49.0
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
More information about the ffmpeg-devel
mailing list