diff options
author | wm4 <wm4@nowhere> | 2014-06-15 23:58:33 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-06-16 01:00:59 +0200 |
commit | eca0fcb77a95793b31b6447e0c91bf4d4045efeb (patch) | |
tree | 1f244579f55c72b403804ccb8c05d5a8081126d3 /video/out/gl_osd.h | |
parent | c5e13cce52fbf4cd45ec0c6220fe2e5f056bb2cd (diff) | |
download | mpv-eca0fcb77a95793b31b6447e0c91bf4d4045efeb.tar.bz2 mpv-eca0fcb77a95793b31b6447e0c91bf4d4045efeb.tar.xz |
vo_opengl: simplify redraw callback OSD handling
OSD used to be not thread-safe at all, so a track was used to get it
redrawn. This mostly reverts commit 6a2a8880, because OSD not being
thread-safe was the non-trivial part of it.
Mostly untested, because this code path is used on OSX only, and I don't
have OSX.
Diffstat (limited to 'video/out/gl_osd.h')
-rw-r--r-- | video/out/gl_osd.h | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/video/out/gl_osd.h b/video/out/gl_osd.h index e4c4502a2a..c91cc1e53f 100644 --- a/video/out/gl_osd.h +++ b/video/out/gl_osd.h @@ -10,7 +10,6 @@ struct mpgl_osd_part { enum sub_bitmap_format format; int bitmap_id, bitmap_pos_id; - bool active; GLuint texture; int w, h; GLuint buffer; @@ -34,20 +33,13 @@ struct mpgl_osd { struct mpgl_osd *mpgl_osd_init(GL *gl, struct mp_log *log, struct osd_state *osd); void mpgl_osd_destroy(struct mpgl_osd *ctx); +struct mpgl_osd_part *mpgl_osd_generate(struct mpgl_osd *ctx, + struct sub_bitmaps *b); + void mpgl_osd_set_gl_state(struct mpgl_osd *ctx, struct mpgl_osd_part *p); void mpgl_osd_unset_gl_state(struct mpgl_osd *ctx, struct mpgl_osd_part *p); void mpgl_osd_draw_legacy(struct mpgl_osd *ctx, double pts, struct mp_osd_res res); -void mpgl_osd_draw_cb(struct mpgl_osd *ctx, - double pts, - struct mp_osd_res res, - void (*cb)(void *ctx, struct mpgl_osd_part *part, - struct sub_bitmaps *imgs), - void *cb_ctx); -void mpgl_osd_redraw_cb(struct mpgl_osd *ctx, - void (*cb)(void *ctx, struct mpgl_osd_part *part, - struct sub_bitmaps *imgs), - void *cb_ctx); #endif |