FFmpeg
Data Structures | Functions | Variables
hwcontext_internal.h File Reference
#include <stddef.h>
#include "buffer.h"
#include "hwcontext.h"
#include "frame.h"
#include "pixfmt.h"

Go to the source code of this file.

Data Structures

struct  HWContextType
 
struct  FFHWFramesContext
 
struct  HWMapDescriptor
 

Functions

static FFHWFramesContextffhwframesctx (AVHWFramesContext *ctx)
 
int ff_hwframe_map_create (AVBufferRef *hwframe_ref, AVFrame *dst, const AVFrame *src, void(*unmap)(AVHWFramesContext *ctx, HWMapDescriptor *hwmap), void *priv)
 
int ff_hwframe_map_replace (AVFrame *dst, const AVFrame *src)
 Replace the current hwmap of dst with the one from src, used for indirect mappings like VAAPI->(DRM)->OpenCL/Vulkan where a direct interop is missing. More...
 

Variables

const HWContextType ff_hwcontext_type_cuda
 
const HWContextType ff_hwcontext_type_d3d11va
 
const HWContextType ff_hwcontext_type_d3d12va
 
const HWContextType ff_hwcontext_type_drm
 
const HWContextType ff_hwcontext_type_dxva2
 
const HWContextType ff_hwcontext_type_opencl
 
const HWContextType ff_hwcontext_type_qsv
 
const HWContextType ff_hwcontext_type_vaapi
 
const HWContextType ff_hwcontext_type_vdpau
 
const HWContextType ff_hwcontext_type_videotoolbox
 
const HWContextType ff_hwcontext_type_mediacodec
 
const HWContextType ff_hwcontext_type_vulkan
 

Function Documentation

◆ ffhwframesctx()

static FFHWFramesContext* ffhwframesctx ( AVHWFramesContext ctx)
inlinestatic

◆ ff_hwframe_map_create()

int ff_hwframe_map_create ( AVBufferRef hwframe_ref,
AVFrame dst,
const AVFrame src,
void(*)(AVHWFramesContext *ctx, HWMapDescriptor *hwmap)  unmap,
void *  priv 
)

◆ ff_hwframe_map_replace()

int ff_hwframe_map_replace ( AVFrame dst,
const AVFrame src 
)

Replace the current hwmap of dst with the one from src, used for indirect mappings like VAAPI->(DRM)->OpenCL/Vulkan where a direct interop is missing.

Definition at line 933 of file hwcontext.c.

Variable Documentation

◆ ff_hwcontext_type_cuda

const HWContextType ff_hwcontext_type_cuda

Definition at line 563 of file hwcontext_cuda.c.

◆ ff_hwcontext_type_d3d11va

const HWContextType ff_hwcontext_type_d3d11va

Definition at line 707 of file hwcontext_d3d11va.c.

◆ ff_hwcontext_type_d3d12va

const HWContextType ff_hwcontext_type_d3d12va

Definition at line 678 of file hwcontext_d3d12va.c.

◆ ff_hwcontext_type_drm

const HWContextType ff_hwcontext_type_drm

Definition at line 304 of file hwcontext_drm.c.

◆ ff_hwcontext_type_dxva2

const HWContextType ff_hwcontext_type_dxva2

Definition at line 590 of file hwcontext_dxva2.c.

◆ ff_hwcontext_type_opencl

const HWContextType ff_hwcontext_type_opencl

Definition at line 3039 of file hwcontext_opencl.c.

◆ ff_hwcontext_type_qsv

const HWContextType ff_hwcontext_type_qsv

Definition at line 2296 of file hwcontext_qsv.c.

◆ ff_hwcontext_type_vaapi

const HWContextType ff_hwcontext_type_vaapi

Definition at line 2016 of file hwcontext_vaapi.c.

◆ ff_hwcontext_type_vdpau

const HWContextType ff_hwcontext_type_vdpau

Definition at line 513 of file hwcontext_vdpau.c.

◆ ff_hwcontext_type_videotoolbox

const HWContextType ff_hwcontext_type_videotoolbox

Definition at line 766 of file hwcontext_videotoolbox.c.

◆ ff_hwcontext_type_mediacodec

const HWContextType ff_hwcontext_type_mediacodec

Definition at line 107 of file hwcontext_mediacodec.c.

◆ ff_hwcontext_type_vulkan

const HWContextType ff_hwcontext_type_vulkan

Definition at line 3741 of file hwcontext_vulkan.c.