Matthew Waters
475a2b0acd
vulkan/image: use the full video info for returning vulkan formats
...
We may need some colorspace information for returning sRGB vs no sRGB.
2019-11-07 20:01:57 +00:00
Matthew Waters
ecca6cbfd2
vulkanimage: move fence creation earlier
...
Fixes a critical:
GStreamer-CRITICAL **: 02:26:34.698: gst_mini_object_ref: assertion 'mini_object != NULL' failed
2019-10-28 07:22:45 +00:00
Matthew Waters
103112725c
vulkan: change to clamp to edge rather than clamp to border
...
clamp-to-border will return the border color which is typically black,
white or transparent. When linear filtering the edge pixels will
typeically be combined with the border color which is not typically what
we want. Especially when color converting, this removes a green box
around the edge when converting YUV->RGB.
2019-10-28 07:22:45 +00:00
Matthew Waters
34ff895040
vulkan: remove VkImageView from the memory
...
There can be multiple views per image for different subresource ranges
or planes in multi-planer images.
2019-09-25 11:11:02 +00:00
Matthew Waters
82e86573b8
vulkan: implement command buffer reuse
...
Using a similar design for reference counting as
GstBuffer/GstBufferPool.
2019-09-19 02:01:35 +00:00
Matthew Waters
b5256d94fc
vulkan: move trash list to library
2019-07-04 14:18:15 +10:00
Matthew Waters
b93de8b0d8
vkfullscreenrender: create descriptor sets later
...
The desciptor sets may be dependant on the caps
2019-06-20 01:41:56 +10:00
Matthew Waters
dc0c9dea7f
vulkan/identity: Split out most rendering code to a base class
...
A simple base class that renders a 2d fullscreen quad parallel to the
screen surface inside the view frustum.
2019-06-20 01:41:56 +10:00
Matthew Waters
ac09f88eb9
vulkan: implement the correct memory barriers necessary
...
Vulkan validation layers are finally silent!
2019-06-04 09:03:44 +00:00
Matthew Waters
9593e4e8bb
vulkan: add a new image copying element
...
Copies using the graphics pipeline, an input image and renders to an
output image.
2019-06-04 09:03:44 +00:00