Go to the documentation of this file.
76 void*(*get_proc_address)(
vlc_gl_t *,
const char *);
92 void *(*createImageKHR)(
vlc_gl_t *,
unsigned target,
void *buffer,
93 const int32_t *attrib_list);
100 const char *(*getExtensionsString)(
vlc_gl_t *);
122 unsigned width,
unsigned height,
123 unsigned flags,
const char *
name);
167 size_t apilen = strlen(api);
171 if (!strncmp(apis, api, apilen) && memchr(
" ", apis[apilen], 2))
173 apis = strchr(apis,
' ');
@ VLC_OPENGL
Definition: vlc_opengl.h:45
struct vlc_video_context * offscreen_vctx_out
Definition: vlc_opengl.h:67
#define VLC_API
Definition: fourcc_gen.c:31
static void vlc_gl_ReleaseCurrent(vlc_gl_t *gl)
Definition: vlc_opengl.h:134
static void vlc_gl_Swap(vlc_gl_t *gl)
Definition: vlc_opengl.h:145
Window object.
Definition: vlc_vout_window.h:353
@ VLC_OPENGL_ES2
Definition: vlc_opengl.h:46
void(* release_current)(vlc_gl_t *)
Definition: vlc_opengl.h:75
@ VLC_GL_EXT_DEFAULT
Definition: vlc_opengl.h:81
void * sys
Definition: vlc_opengl.h:54
static void vlc_gl_Resize(vlc_gl_t *gl, unsigned w, unsigned h)
Definition: vlc_opengl.h:139
Video picture.
Definition: vlc_picture.h:120
static bool vlc_gl_StrHasToken(const char *apis, const char *api)
Definition: vlc_opengl.h:166
picture_t *(* swap_offscreen)(vlc_gl_t *)
Definition: vlc_opengl.h:63
static int vlc_gl_MakeCurrent(vlc_gl_t *gl)
Definition: vlc_opengl.h:129
void(* swap)(vlc_gl_t *)
Definition: vlc_opengl.h:58
struct vlc_gl_t::@255::@262 wgl
module_t * module
Definition: vlc_opengl.h:53
Internal module descriptor.
Definition: modules.h:78
User configuration for a video output display (vout_display_t)
Definition: vlc_vout_display.h:94
Decoder context struct.
Definition: vlc_codec.h:566
bool offscreen_vflip
Definition: vlc_opengl.h:70
vlc_fourcc_t offscreen_chroma_out
Definition: vlc_opengl.h:66
Definition: vlc_opengl.h:49
static picture_t * vlc_gl_SwapOffscreen(vlc_gl_t *gl)
Definition: vlc_opengl.h:150
VLC_EXPORT bool vlc_gl_surface_CheckSize(vlc_gl_t *, unsigned *w, unsigned *h)
struct vlc_decoder_device * device
Definition: vlc_opengl.h:65
Definition: decoder_helpers.c:228
void(* destroy)(vlc_gl_t *)
Definition: vlc_opengl.h:78
VLC object common members.
Definition: vlc_objects.h:43
static void * vlc_gl_GetProcAddress(vlc_gl_t *gl, const char *name)
Definition: vlc_opengl.h:155
VLC_EXPORT void vlc_gl_surface_Destroy(vlc_gl_t *)
Definition: opengl.c:294
struct vlc_gl_t::@255::@261 egl
VLC_EXPORT void vlc_gl_Release(vlc_gl_t *)
Definition: opengl.c:165
void(* resize)(vlc_gl_t *, unsigned, unsigned)
Definition: vlc_opengl.h:76
#define VLC_USED
Definition: fourcc_gen.c:32
Window (desired) configuration.
Definition: vlc_vout_window.h:148
const char name[16]
Definition: httpd.c:1268
VLC_EXPORT vlc_gl_t * vlc_gl_surface_Create(vlc_object_t *, const struct vout_window_cfg_t *, struct vout_window_t **)
bool(* destroyImageKHR)(vlc_gl_t *, void *image)
Definition: vlc_opengl.h:96
@ VLC_GL_EXT_EGL
Definition: vlc_opengl.h:82
void *(* get_proc_address)(vlc_gl_t *, const char *)
Definition: vlc_opengl.h:77
VLC_EXPORT void vlc_gl_Hold(vlc_gl_t *)
Definition: opengl.c:159
vlc_gl_api_type
Definition: vlc_opengl.h:44
@ VLC_GL_EXT_WGL
Definition: vlc_opengl.h:83
int(* make_current)(vlc_gl_t *)
Definition: vlc_opengl.h:74
struct vlc_object_t obj
Definition: vlc_opengl.h:51
enum vlc_gl_api_type api_type
Definition: vlc_opengl.h:106
VLC_EXPORT vlc_gl_t * vlc_gl_CreateOffscreen(vlc_object_t *parent, struct vlc_decoder_device *device, unsigned width, unsigned height, unsigned flags, const char *name)
Definition: opengl.c:100
struct vout_window_t * surface
Definition: vlc_opengl.h:60
uint32_t vlc_fourcc_t
Definition: fourcc_gen.c:33
VLC_EXPORT vlc_gl_t * vlc_gl_Create(const struct vout_display_cfg *cfg, unsigned flags, const char *name)
Creates an OpenGL context (and its underlying surface).