mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
vkfullscreenquad: set enable_clear as TRUE by default
While using the validation layer with this pipeline: gst-launch-1.0 videotestsrc num-buffers=10 ! vulkanupload ! vulkancolorconvert ! vulkansink The validation layer throws this message: Code 0 : Validation Error: [ VUID-VkAttachmentDescription-format-06699 ] Object 0: handle = 0x5555562e9610, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x52b3229e | vkCreateRenderPass: pCreateInfo->pAttachments[0] format is VK_FORMAT_B8G8R8A8_UNORM and loadOp is VK_ATTACHMENT_LOAD_OP_LOAD, but initialLayout is VK_IMAGE_LAYOUT_UNDEFINED. The Vulkan spec states: If format includes a color or depth aspect and loadOp is VK_ATTACHMENT_LOAD_OP_LOAD, then initialLayout must not be VK_IMAGE_LAYOUT_UNDEFINED When creating the render pass the loadOp can be either `VK_ATTACHMENT_LOAD_OP_CLEAR` or `VK_ATTACHMENT_LOAD_OP_LOAD` depending on `enable_clear`. While `enable_clear` is FALSE by default (which means `VK_ATTACHMENT_LOAD_OP_LOAD`). Nonetheless, its value is explicitly changed by `vkoverlaycompositor` to FALSE too! This behavior was introduced in merge request #2470 where `VK_ATTACHMENT_LOAD_OP_CLEAR` was a fixed value for loadOp. Thus, the bug consists in a missing initialization of `enable_clear` to TRUE from that merge request. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4296>
This commit is contained in:
parent
6846810f50
commit
3e194267d1
1 changed files with 1 additions and 0 deletions
|
@ -813,6 +813,7 @@ gst_vulkan_full_screen_quad_init (GstVulkanFullScreenQuad * self)
|
|||
priv->dst_alpha_blend_factor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
|
||||
priv->colour_blend_op = VK_BLEND_OP_ADD;
|
||||
priv->alpha_blend_op = VK_BLEND_OP_ADD;
|
||||
priv->enable_clear = TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in a new issue