Sunshine master
Self-hosted game stream host for Moonlight.
vulkan_encode.h File Reference

Declarations for FFmpeg Vulkan Video encoder. More...

Include dependency graph for vulkan_encode.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

std::unique_ptr< platf::avcodec_encode_device_tvk::make_avcodec_encode_device_ram (int width, int height)
 Create a Vulkan encode device for RAM capture.
 
std::unique_ptr< platf::avcodec_encode_device_tvk::make_avcodec_encode_device_vram (int width, int height, int offset_x, int offset_y)
 Create a Vulkan encode device for VRAM capture.
 
bool vk::validate ()
 Check if FFmpeg Vulkan Video encoding is available.
 
int vk::vulkan_init_avcodec_hardware_input_buffer (platf::avcodec_encode_device_t *encode_device, AVBufferRef **hw_device_buf)
 Initialize Vulkan hardware device for FFmpeg encoding.
 

Detailed Description

Declarations for FFmpeg Vulkan Video encoder.

Function Documentation

◆ vulkan_init_avcodec_hardware_input_buffer()

int vk::vulkan_init_avcodec_hardware_input_buffer ( platf::avcodec_encode_device_t * encode_device,
AVBufferRef ** hw_device_buf )

Initialize Vulkan hardware device for FFmpeg encoding.

Parameters
encode_deviceThe encode device (vk_t).
hw_device_bufOutput hardware device buffer.
Returns
0 on success, negative on error.