mirror of https://github.com/mpv-player/mpv
wayland/shm: version detection that also works
The previous method would break on the next release. Because I am stupid.
This commit is contained in:
parent
005407338d
commit
b30ad057a5
|
@ -41,6 +41,13 @@
|
|||
|
||||
#define MAX_BUFFERS 2
|
||||
|
||||
// minium target version for the new formats (1.2.90)
|
||||
#define MINIMUM_VERSION (1 << 16 | 2 << 8 | 90)
|
||||
|
||||
#define CURRENT_VERSION (WAYLAND_VERSION_MAJOR << 16 | \
|
||||
WAYLAND_VERSION_MINOR << 8 | \
|
||||
WAYLAND_VERSION_MICRO)
|
||||
|
||||
static void draw_image(struct vo *vo, mp_image_t *mpi);
|
||||
|
||||
static const struct wl_callback_listener frame_listener;
|
||||
|
@ -58,9 +65,7 @@ struct fmtentry {
|
|||
static const struct fmtentry fmttable[] = {
|
||||
{WL_SHM_FORMAT_ARGB8888, IMGFMT_BGRA}, // 8b 8g 8r 8a
|
||||
{WL_SHM_FORMAT_XRGB8888, IMGFMT_BGR0},
|
||||
#if (WAYLAND_VERSION_MAJOR >= 1) \
|
||||
&& (WAYLAND_VERSION_MINOR >= 2) \
|
||||
&& (WAYLAND_VERSION_MICRO >= 90)
|
||||
#if CURRENT_VERSION >= MINIMUM_VERSION
|
||||
{WL_SHM_FORMAT_RGB332, IMGFMT_BGR8}, // 3b 3g 2r
|
||||
{WL_SHM_FORMAT_BGR233, IMGFMT_RGB8}, // 3r 3g 3b,
|
||||
{WL_SHM_FORMAT_XRGB4444, IMGFMT_BGR12_LE}, // 4b 4g 4r 4a
|
||||
|
|
Loading…
Reference in New Issue