summaryrefslogtreecommitdiffstats
path: root/sub/dec_sub.h
diff options
context:
space:
mode:
Diffstat (limited to 'sub/dec_sub.h')
-rw-r--r--sub/dec_sub.h39
1 files changed, 8 insertions, 31 deletions
diff --git a/sub/dec_sub.h b/sub/dec_sub.h
index c71a2348aa..f66f05c021 100644
--- a/sub/dec_sub.h
+++ b/sub/dec_sub.h
@@ -1,38 +1,14 @@
#ifndef MPLAYER_DEC_SUB_H
#define MPLAYER_DEC_SUB_H
-struct sh_sub;
-struct osd_state;
-struct ass_track;
-
-enum sub_bitmap_type {
- SUBBITMAP_EMPTY,
- SUBBITMAP_LIBASS,
- SUBBITMAP_RGBA,
-};
-
-typedef struct mp_eosd_res {
- int w, h; // screen dimensions, including black borders
- int mt, mb, ml, mr; // borders (top, bottom, left, right)
-} mp_eosd_res_t;
+#include <stdbool.h>
+#include <stdint.h>
-typedef struct sub_bitmaps {
- enum sub_bitmap_type type;
+#include "sub/sub.h"
- struct ass_image *imgs;
-
- struct sub_bitmap {
- int w, h;
- int x, y;
- // Note: not clipped, going outside the screen area is allowed
- int dw, dh;
- void *bitmap;
- } *parts;
- int part_count;
-
- bool scaled;
- int bitmap_id, bitmap_pos_id;
-} mp_eosd_images_t;
+struct sh_sub;
+struct ass_track;
+struct MPOpts;
static inline bool is_text_sub(int type)
{
@@ -41,7 +17,8 @@ static inline bool is_text_sub(int type)
void sub_decode(struct sh_sub *sh, struct osd_state *osd, void *data,
int data_len, double pts, double duration);
-void sub_get_bitmaps(struct osd_state *osd, struct sub_bitmaps *res);
+void sub_get_bitmaps(struct osd_state *osd, struct mp_osd_res dim, double pts,
+ struct sub_bitmaps *res);
void sub_init(struct sh_sub *sh, struct osd_state *osd);
void sub_reset(struct sh_sub *sh, struct osd_state *osd);
void sub_switchoff(struct sh_sub *sh, struct osd_state *osd);