FFmpeg
Loading...
Searching...
No Matches
ffv1_vulkan.h File Reference
#include "libavutil/vulkan.h"
#include "ffv1.h"

Go to the source code of this file.

Data Structures

struct  FFv1QuantBallot
 
struct  FFv1ShaderParams
 

Functions

void ff_ffv1_vk_set_common_sl (AVCodecContext *avctx, FFV1Context *f, VkSpecializationInfo *sl, enum AVPixelFormat sw_format)
 
int ff_ffv1_vk_init_consts (FFVulkanContext *s, FFVkBuffer *vkb, FFV1Context *f)
 
uint32_t ff_ffv1_vk_rc_lanes (const FFVulkanContext *s, uint32_t *required)
 Number of invocations that range code a slice together, as a single subgroup.
 
int ff_ffv1_vk_quant_ballot (const FFV1Context *f, FFv1QuantBallot *qb)
 Fill in the ballot quantizers of all quant tables.
 

Function Documentation

◆ ff_ffv1_vk_set_common_sl()

void ff_ffv1_vk_set_common_sl ( AVCodecContext * avctx,
FFV1Context * f,
VkSpecializationInfo * sl,
enum AVPixelFormat sw_format )

Definition at line 24 of file ffv1_vulkan.c.

Referenced by vk_decode_ffv1_init(), and vulkan_encode_ffv1_init().

◆ ff_ffv1_vk_init_consts()

int ff_ffv1_vk_init_consts ( FFVulkanContext * s,
FFVkBuffer * vkb,
FFV1Context * f )

Definition at line 140 of file ffv1_vulkan.c.

Referenced by vk_decode_ffv1_init(), and vulkan_encode_ffv1_init().

◆ ff_ffv1_vk_rc_lanes()

uint32_t ff_ffv1_vk_rc_lanes ( const FFVulkanContext * s,
uint32_t * required )

Number of invocations that range code a slice together, as a single subgroup.

Each of them holds CONTEXT_SIZE/lanes of the states of a context. This is CONTEXT_SIZE if the subgroup size can be set to it, or the largest subgroup size below it otherwise. required is set to the subgroup size the shader must be created with, or 0.

Definition at line 85 of file ffv1_vulkan.c.

Referenced by init_encode_shader(), and vk_decode_ffv1_init().

◆ ff_ffv1_vk_quant_ballot()

int ff_ffv1_vk_quant_ballot ( const FFV1Context * f,
FFv1QuantBallot * qb )

Fill in the ballot quantizers of all quant tables.

Returns 1 if all of them can be evaluated with a ballot.

Definition at line 104 of file ffv1_vulkan.c.

Referenced by ff_ffv1_vk_init_consts(), and vk_decode_ffv1_init().