summaryrefslogtreecommitdiffstats
path: root/sub/sub.h
diff options
context:
space:
mode:
Diffstat (limited to 'sub/sub.h')
-rw-r--r--sub/sub.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/sub/sub.h b/sub/sub.h
index 3d40186b60..ecfd0c40cc 100644
--- a/sub/sub.h
+++ b/sub/sub.h
@@ -212,15 +212,20 @@ void vo_osd_reset_changed(void);
bool vo_osd_has_changed(struct osd_state *osd);
void osd_free(struct osd_state *osd);
-bool osd_draw_sub(struct osd_state *osd, struct sub_bitmaps *out_imgs,
- struct sub_render_params *sub_params,
- const bool formats[SUBBITMAP_COUNT]);
+enum mp_osd_draw_flags {
+ OSD_DRAW_SUB_FILTER = (1 << 0),
+ OSD_DRAW_SUB_ONLY = (1 << 1),
+};
+
+void osd_draw(struct osd_state *osd, struct sub_render_params *params,
+ int draw_flags, const bool formats[SUBBITMAP_COUNT],
+ void (*cb)(void *ctx, struct sub_bitmaps *imgs), void *cb_ctx);
struct mp_image;
struct mp_csp_details;
-bool osd_draw_on_image(struct osd_state *osd, struct mp_image *dest,
- struct mp_csp_details *dest_csp,
- struct sub_render_params *sub_params);
+bool osd_draw_on_image(struct osd_state *osd, struct sub_render_params *params,
+ int draw_flags, struct mp_image *dest,
+ struct mp_csp_details *dest_csp);
bool sub_bitmaps_bb(struct sub_bitmaps *imgs, int *x1, int *y1,
int *x2, int *y2);