mirror of
https://github.com/mpv-player/mpv
synced 2024-12-18 21:06:00 +00:00
5eb6466e54
Since vo_rpi uses MMAL for video output, which is completely independent from the GLES overlay, we can just not redraw the GLES screen if subtitles do not change. (As a furhter optimization, the dispmanx overlay could be removed if nothing is visible. But I'm not sure if adding and removing the overlay frequently is a good idea for performance, so this could just as well go the other way.)
23 lines
743 B
C
23 lines
743 B
C
#ifndef MPLAYER_GL_OSD_H
|
|
#define MPLAYER_GL_OSD_H
|
|
|
|
#include <stdbool.h>
|
|
#include <inttypes.h>
|
|
|
|
#include "gl_utils.h"
|
|
#include "sub/osd.h"
|
|
|
|
struct mpgl_osd *mpgl_osd_init(GL *gl, struct mp_log *log, struct osd_state *osd);
|
|
void mpgl_osd_destroy(struct mpgl_osd *ctx);
|
|
|
|
void mpgl_osd_set_options(struct mpgl_osd *ctx, bool pbo);
|
|
|
|
void mpgl_osd_generate(struct mpgl_osd *ctx, struct mp_osd_res res, double pts,
|
|
int stereo_mode, int draw_flags);
|
|
enum sub_bitmap_format mpgl_osd_get_part_format(struct mpgl_osd *ctx, int index);
|
|
struct gl_vao *mpgl_osd_get_vao(struct mpgl_osd *ctx);
|
|
void mpgl_osd_draw_part(struct mpgl_osd *ctx, int vp_w, int vp_h, int index);
|
|
int64_t mpgl_get_change_counter(struct mpgl_osd *ctx);
|
|
|
|
#endif
|