vulkanshaderspv
Vulkan image shader filter.
Examples
gst-launch-1.0 videotestsrc ! vulkanupload ! vulkanshaderspv fragment-location="myshader.f.spv" ! vulkansink
The following is a simple Vulkan passthrough shader with the required inputs.
Compile it with glslc --target-env=vulkan1.0 myshader.frag -o myshader.f.spv
.
#version 450
layout(location = 0) in vec2 inTexCoord;
layout(set = 0, binding = 0) uniform ShaderFilter {
float time;
float width;
float height;
};
layout(set = 0, binding = 1) uniform sampler2D inTexture;
layout(location = 0) out vec4 outColor;
void main () {
outColor = texture (inTexture, inTexCoord);
}
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──GstBaseTransform ╰──GstVulkanVideoFilter ╰──vulkanshaderspv
Factory details
Authors: – Martin Reboredo
Classification: – Filter/Video
Rank – none
Plugin – vulkan
Package – GStreamer Bad Plug-ins
Pad Templates
sink
video/x-raw(memory:VulkanImage):
format: { BGRA }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
src
video/x-raw(memory:VulkanImage):
format: { BGRA }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
Properties
fragment-location
“fragment-location” gchararray
SPIRV fragment source
Flags : Read / Write
Default value : NULL
vertex-location
“vertex-location” gchararray
SPIRV vertex source
Flags : Read / Write
Default value : NULL
The results of the search are