FFmpeg
Loading...
Searching...
No Matches
vulkan_filter.h File Reference
#include "avfilter.h"
#include "libavutil/vulkan.h"

Go to the source code of this file.

Functions

int ff_vk_filter_init (AVFilterContext *avctx)
 General lavfi IO functions.
 
int ff_vk_filter_config_input (AVFilterLink *inlink)
 
int ff_vk_filter_config_output (AVFilterLink *outlink)
 
int ff_vk_filter_init_context (AVFilterContext *avctx, FFVulkanContext *s, AVBufferRef *frames_ref, int width, int height, enum AVPixelFormat sw_format)
 Can be called manually, if not using ff_vk_filter_config_output.
 
int ff_vk_filter_process_simple (FFVulkanContext *vkctx, FFVkExecPool *e, FFVulkanShader *shd, AVFrame *out_f, AVFrame *in_f, VkSampler sampler, uint32_t wgc_z, void *push_src, size_t push_size)
 Submit a compute shader with a zero/one input and single out for execution.
 
int ff_vk_filter_process_2pass (FFVulkanContext *vkctx, FFVkExecPool *e, FFVulkanShader *shd_list[2], AVFrame *out, AVFrame *tmp, AVFrame *in, VkSampler sampler, uint32_t wgc_z, void *push_src, size_t push_size)
 Submit a compute shader with a single in and single out with 2 stages.
 
int ff_vk_filter_process_Nin (FFVulkanContext *vkctx, FFVkExecPool *e, FFVulkanShader *shd, AVFrame *out, AVFrame *in[], int nb_in, VkSampler sampler, uint32_t wgc_z, void *push_src, size_t push_size)
 Up to 16 inputs, one output.
 

Function Documentation

◆ ff_vk_filter_init()

int ff_vk_filter_init ( AVFilterContext * avctx)

General lavfi IO functions.

Definition at line 233 of file vulkan_filter.c.

Referenced by init(), and overlay_vulkan_init().

◆ ff_vk_filter_config_input()

int ff_vk_filter_config_input ( AVFilterLink * inlink)

Definition at line 176 of file vulkan_filter.c.

Referenced by libplacebo_config_input().

◆ ff_vk_filter_config_output()

◆ ff_vk_filter_init_context()

int ff_vk_filter_init_context ( AVFilterContext * avctx,
FFVulkanContext * s,
AVBufferRef * frames_ref,
int width,
int height,
enum AVPixelFormat sw_format )

Can be called manually, if not using ff_vk_filter_config_output.

Definition at line 25 of file vulkan_filter.c.

Referenced by bwdif_vulkan_config_output(), ff_vk_filter_config_output(), and testsrc_vulkan_config_props().

◆ ff_vk_filter_process_simple()

int ff_vk_filter_process_simple ( FFVulkanContext * vkctx,
FFVkExecPool * e,
FFVulkanShader * shd,
AVFrame * out_f,
AVFrame * in_f,
VkSampler sampler,
uint32_t wgc_z,
void * push_src,
size_t push_size )

Submit a compute shader with a zero/one input and single out for execution.

Definition at line 242 of file vulkan_filter.c.

Referenced by avgblur_vulkan_filter_frame(), chromaber_vulkan_filter_frame(), filter_frame(), filter_frame(), scale_vulkan_filter_frame(), testsrc_vulkan_activate(), and v360_vulkan_filter_frame().

◆ ff_vk_filter_process_2pass()

int ff_vk_filter_process_2pass ( FFVulkanContext * vkctx,
FFVkExecPool * e,
FFVulkanShader * shd_list[2],
AVFrame * out,
AVFrame * tmp,
AVFrame * in,
VkSampler sampler,
uint32_t wgc_z,
void * push_src,
size_t push_size )

Submit a compute shader with a single in and single out with 2 stages.

Definition at line 316 of file vulkan_filter.c.

Referenced by gblur_vulkan_filter_frame().

◆ ff_vk_filter_process_Nin()

int ff_vk_filter_process_Nin ( FFVulkanContext * vkctx,
FFVkExecPool * e,
FFVulkanShader * shd,
AVFrame * out,
AVFrame * in[],
int nb_in,
VkSampler sampler,
uint32_t wgc_z,
void * push_src,
size_t push_size )

Up to 16 inputs, one output.

Definition at line 409 of file vulkan_filter.c.

Referenced by blend_frame(), bwdif_vulkan_filter_frame(), interlace_vulkan_filter_frame(), overlay_vulkan_blend(), and xfade_frame().