mirror of
https://github.com/mpv-player/mpv
synced 2024-10-22 08:51:57 +02:00
5fc5ae752b
The mplayer DVD sub decoder is the only remaining OSD image producer that still requires the old mplayer OSD format (SUBBITMAP_OLD_PLANAR). To make supporting this format optional in VOs, add a step that allows converting these images to RGBA in case the VO doesn't have direct support for it. Note: the mplayer DVD sub decoder uses the old mplayer OSD format (SUBBITMAP_OLD_PLANAR), which is assumed to use premultiplied alpha. However, it seems DVDs allow only binary transparency, so the rendered result will be the same.
18 lines
589 B
C
18 lines
589 B
C
#ifndef MPLAYER_SUB_IMG_CONVERT_H
|
|
#define MPLAYER_SUB_IMG_CONVERT_H
|
|
|
|
#include <stdbool.h>
|
|
|
|
struct osd_conv_cache;
|
|
struct sub_bitmaps;
|
|
|
|
struct osd_conv_cache *osd_conv_cache_new(void);
|
|
|
|
// These functions convert from one OSD format to another. On success, they copy
|
|
// the converted image data into c, and change imgs to point to the data.
|
|
bool osd_conv_old_p_to_old(struct osd_conv_cache *c, struct sub_bitmaps *imgs);
|
|
bool osd_conv_old_p_to_rgba(struct osd_conv_cache *c, struct sub_bitmaps *imgs);
|
|
bool osd_conv_ass_to_old_p(struct osd_conv_cache *c, struct sub_bitmaps *imgs);
|
|
|
|
#endif
|