#include <vlc_common.h>
#include <vlc_plugin.h>
#include <vlc_vout_display.h>
-#include <vlc_vout_opengl.h>
+#include <vlc_opengl.h>
#define USE_OPENGL_ES 1
static void PictureDisplay(vout_display_t *vd, picture_t *pic, subpicture_t *subpicture);
static int Control (vout_display_t *vd, int query, va_list ap);
-static int OpenglClean(vout_opengl_t *gl);
-static void OpenglSwap(vout_opengl_t *gl);
+static int OpenglClean(vlc_gl_t *gl);
+static void OpenglSwap(vlc_gl_t *gl);
/**
* Module declaration
VLCOpenGLESVideoView *glView;
UIView * container;
- vout_opengl_t gl;
- vout_display_opengl_t vgl;
+ vlc_gl_t gl;
+ vout_display_opengl_t *vgl;
picture_pool_t *pool;
picture_t *current;
sys->gl.lock = OpenglClean; // We don't do locking, but sometimes we need to cleanup the framebuffer
sys->gl.unlock = NULL;
sys->gl.swap = OpenglSwap;
+ sys->gl.getProcAddress = NULL;
sys->gl.sys = sys;
- if (vout_display_opengl_Init(&sys->vgl, &vd->fmt, &sys->gl))
+ sys->vgl = vout_display_opengl_New(&vd->fmt, NULL, &sys->gl);
+ if (!sys->vgl)
{
sys->gl.sys = NULL;
goto error;
[sys->glView release];
if (sys->gl.sys != NULL)
- vout_display_opengl_Clean(&sys->vgl);
+ vout_display_opengl_Delete(sys->vgl);
free (sys);
}
static picture_pool_t *Pool(vout_display_t *vd, unsigned requested_count)
{
vout_display_sys_t *sys = vd->sys;
- VLC_UNUSED(requested_count);
if (!sys->pool)
- sys->pool = vout_display_opengl_GetPool (&sys->vgl);
+ sys->pool = vout_display_opengl_GetPool (sys->vgl, requested_count);
assert(sys->pool);
return sys->pool;
}
{
vout_display_sys_t *sys = vd->sys;
- vout_display_opengl_Prepare( &sys->vgl, pic );
- (void)subpicture;
+ vout_display_opengl_Prepare( sys->vgl, pic, subpicture );
}
static void PictureDisplay(vout_display_t *vd, picture_t *pic, subpicture_t *subpicture)
{
vout_display_sys_t *sys = vd->sys;
- vout_display_opengl_Display(&sys->vgl, &vd->fmt );
+ vout_display_opengl_Display(sys->vgl, &vd->fmt );
picture_Release (pic);
sys->has_first_frame = true;
(void)subpicture;
case VOUT_DISPLAY_GET_OPENGL:
{
- vout_opengl_t **gl = va_arg (ap, vout_opengl_t **);
+ vlc_gl_t **gl = va_arg (ap, vlc_gl_t **);
*gl = &sys->gl;
return VLC_SUCCESS;
}
* vout opengl callbacks
*****************************************************************************/
-static int OpenglClean(vout_opengl_t *gl) {
+static int OpenglClean(vlc_gl_t *gl) {
vout_display_sys_t *sys = gl->sys;
[sys->glView cleanFramebuffer];
return 0;
}
-static void OpenglSwap(vout_opengl_t *gl)
+static void OpenglSwap(vlc_gl_t *gl)
{
vout_display_sys_t *sys = gl->sys;
EAGLContext *context = [sys->glView context];