1#ifndef GL_VDPAU_HPP_667244de5757
2#define GL_VDPAU_HPP_667244de5757
8#include <OpenGL/OpenGL.h>
9#include <OpenGL/glext.h>
15typedef GLintptr vdpauSurfaceNV;
16#define NV_CAST(x) ((void *)(uintptr_t)(x))
19 bool initialized =
false;
20 GLuint textures[4] = {0};
21 hw_vdpau_frame lastFrame;
23 bool interopInitialized =
false;
24 bool mixerInitialized =
false;
25 VdpDevice device = VDP_INVALID_HANDLE;
26 VdpGetProcAddress *get_proc_address =
nullptr;
27 vdpauSurfaceNV vdpgl_surf = 0;
29 VdpOutputSurface out_surf = VDP_INVALID_HANDLE;
30 VdpVideoMixer mixer = VDP_INVALID_HANDLE;
32 uint32_t surf_width = 0;
33 uint32_t surf_height = 0;
34 VdpChromaType surf_ct = 0;
37 void checkInterop(VdpDevice device, VdpGetProcAddress *get_proc_address);
38 void initInterop(VdpDevice device, VdpGetProcAddress *get_proc_address);
41 void loadFrame(hw_vdpau_frame *
frame);
43 void initMixer(uint32_t w, uint32_t h, VdpChromaType ct);
44 void mixerRender(VdpVideoSurface f);
struct video_frame * frame
static af_result_code init(struct module *parent, const char *cfg, void **state)
This file contains functions related to hw acceleration.