KhronosGroup / KhronosGroup/Vulkan-ValidationLayers

False positives with single-plane representations of multi-plane images with IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT

Open
#8,395 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Video
Dominant language
C++
Stars
1k
Forks
505
Avg merge
11h 25m
Merged PRs (30d)
229

Description

The issue is that creating an nv12 (R8_G8B8) image with VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR (and VK_IMAGE_CREATE_VIDEO_PROFILE_INDEPENDENT_BIT_KHR) causes an issue when creating single-plane representation image views (R8 or R8G8):

Validation Error: [ VUID-VkImageViewCreateInfo-image-08336 ] Object 0: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0xf838d92 | vkCreateImageView(): pCreateInfo->format VK_FORMAT_R8_UNORM and tiling VK_IMAGE_TILING_OPTIMAL doesn't support VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR. (supported features: VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT|VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT|VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT|VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT|VK_FORMAT_FEATURE_2_BLIT_SRC_BIT|VK_FORMAT_FEATURE_2_BLIT_DST_BIT|VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT|VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT|VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT|VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT|VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT|VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT|VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV|VK_FORMAT_FEATURE_2_HOST_IMAGE_TRANSFER_BIT_EXT). The Vulkan spec states: If image was created with VK_IMAGE_CREATE_VIDEO_PROFILE_INDEPENDENT_BIT_KHR and usage contains VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR, then the image view's format features must contain VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-VkImageViewCreateInfo-image-08336)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the reproduction described in issue #8395 and read the linked Vulkan specification section for VUID-VkImageViewCreateInfo-image-08336. Confirm whether the single-plane R8 and R8G8 views are incorrectly rejected for the stated image configuration; done means the false positive is resolved and the behavior is covered by validation testing.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
devtools, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.