summaryrefslogtreecommitdiffstats
path: root/video/out
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-06-14 10:03:04 +0200
committerwm4 <wm4@nowhere>2014-06-14 10:03:04 +0200
commita9538e17ad8b66112239fab1b63c88de745d2134 (patch)
tree8d0072bf9f678604833330dfd0184ad836daf261 /video/out
parent6ab72f976035f094406584795f680d2de8761c2b (diff)
downloadmpv-a9538e17ad8b66112239fab1b63c88de745d2134.tar.bz2
mpv-a9538e17ad8b66112239fab1b63c88de745d2134.tar.xz
video: synchronize mpv rgb pixel format names with ffmpeg names
This affects packed RGB formats up to 16 bits per pixel. The old mplayer names used LSB-to-MSB order, while FFmpeg (and some other libraries) use MSB-to-LSB. Nothing should change with this commit, i.e. no bit order or endian bugs should be added or fixed. In some cases, the name stays the same, even though the byte order changes, e.g. RGB8->BGR8 and BGR8->RGB8, and this affects the user-visible names too; this might cause confusion.
Diffstat (limited to 'video/out')
-rw-r--r--video/out/gl_video.c8
-rw-r--r--video/out/vo_direct3d.c6
-rw-r--r--video/out/vo_opengl_old.c8
-rw-r--r--video/out/vo_sdl.c20
-rw-r--r--video/out/vo_wayland.c42
-rw-r--r--video/out/vo_x11.c48
6 files changed, 66 insertions, 66 deletions
diff --git a/video/out/gl_video.c b/video/out/gl_video.c
index 1b83d416ce..26c49d5737 100644
--- a/video/out/gl_video.c
+++ b/video/out/gl_video.c
@@ -220,10 +220,10 @@ struct fmt_entry {
// Very special formats, for which OpenGL happens to have direct support
static const struct fmt_entry mp_to_gl_formats[] = {
- {IMGFMT_RGB15, GL_RGBA, GL_RGBA, GL_UNSIGNED_SHORT_1_5_5_5_REV},
- {IMGFMT_RGB16, GL_RGB, GL_RGB, GL_UNSIGNED_SHORT_5_6_5_REV},
- {IMGFMT_BGR15, GL_RGBA, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV},
- {IMGFMT_BGR16, GL_RGB, GL_RGB, GL_UNSIGNED_SHORT_5_6_5},
+ {IMGFMT_BGR555, GL_RGBA, GL_RGBA, GL_UNSIGNED_SHORT_1_5_5_5_REV},
+ {IMGFMT_BGR565, GL_RGB, GL_RGB, GL_UNSIGNED_SHORT_5_6_5_REV},
+ {IMGFMT_RGB555, GL_RGBA, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV},
+ {IMGFMT_RGB565, GL_RGB, GL_RGB, GL_UNSIGNED_SHORT_5_6_5},
{0},
};
diff --git a/video/out/vo_direct3d.c b/video/out/vo_direct3d.c
index 5d42cd7d6e..c732d3c19b 100644
--- a/video/out/vo_direct3d.c
+++ b/video/out/vo_direct3d.c
@@ -207,9 +207,9 @@ static const struct fmt_entry fmt_table[] = {
{IMGFMT_BGR32, D3DFMT_X8R8G8B8},
{IMGFMT_RGB32, D3DFMT_X8B8G8R8},
{IMGFMT_BGR24, D3DFMT_R8G8B8}, //untested
- {IMGFMT_BGR16, D3DFMT_R5G6B5},
- {IMGFMT_BGR15, D3DFMT_X1R5G5B5},
- {IMGFMT_BGR8 , D3DFMT_R3G3B2}, //untested
+ {IMGFMT_RGB565, D3DFMT_R5G6B5},
+ {IMGFMT_RGB555, D3DFMT_X1R5G5B5},
+ {IMGFMT_RGB8, D3DFMT_R3G3B2}, //untested
// grayscale (can be considered both packed and planar)
{IMGFMT_Y8, D3DFMT_L8},
{IMGFMT_Y16, D3DFMT_L16},
diff --git a/video/out/vo_opengl_old.c b/video/out/vo_opengl_old.c
index 567fad743e..ea04283376 100644
--- a/video/out/vo_opengl_old.c
+++ b/video/out/vo_opengl_old.c
@@ -279,11 +279,11 @@ static int glFindFormat(uint32_t fmt, int have_texture_rg, int *dummy,
*gl_type = GL_UNSIGNED_BYTE_2_3_3_REV;
break;
#endif
- case IMGFMT_RGB15:
+ case IMGFMT_BGR555:
*gl_format = GL_RGBA;
*gl_type = GL_UNSIGNED_SHORT_1_5_5_5_REV;
break;
- case IMGFMT_RGB16:
+ case IMGFMT_BGR565:
*gl_format = GL_RGB;
*gl_type = GL_UNSIGNED_SHORT_5_6_5_REV;
break;
@@ -297,11 +297,11 @@ static int glFindFormat(uint32_t fmt, int have_texture_rg, int *dummy,
*gl_type = GL_UNSIGNED_BYTE_3_3_2;
break;
#endif
- case IMGFMT_BGR15:
+ case IMGFMT_RGB555:
*gl_format = GL_BGRA;
*gl_type = GL_UNSIGNED_SHORT_1_5_5_5_REV;
break;
- case IMGFMT_BGR16:
+ case IMGFMT_RGB565:
*gl_format = GL_RGB;
*gl_type = GL_UNSIGNED_SHORT_5_6_5;
break;
diff --git a/video/out/vo_sdl.c b/video/out/vo_sdl.c
index 9696520b83..e31dfdc8f2 100644
--- a/video/out/vo_sdl.c
+++ b/video/out/vo_sdl.c
@@ -69,11 +69,11 @@ const struct formatmap_entry formats[] = {
{SDL_PIXELFORMAT_BGR24, IMGFMT_BGR24, 0},
{SDL_PIXELFORMAT_RGB888, IMGFMT_RGB24, 0},
{SDL_PIXELFORMAT_BGR888, IMGFMT_BGR24, 0},
- {SDL_PIXELFORMAT_RGB565, IMGFMT_RGB16, 0},
- {SDL_PIXELFORMAT_BGR565, IMGFMT_BGR16, 0},
- {SDL_PIXELFORMAT_RGB555, IMGFMT_RGB15, 0},
- {SDL_PIXELFORMAT_BGR555, IMGFMT_BGR15, 0},
- {SDL_PIXELFORMAT_RGB444, IMGFMT_RGB12, 0}
+ {SDL_PIXELFORMAT_RGB565, IMGFMT_BGR565, 0},
+ {SDL_PIXELFORMAT_BGR565, IMGFMT_RGB565, 0},
+ {SDL_PIXELFORMAT_RGB555, IMGFMT_BGR555, 0},
+ {SDL_PIXELFORMAT_BGR555, IMGFMT_RGB555, 0},
+ {SDL_PIXELFORMAT_RGB444, IMGFMT_BGR444, 0}
#else
{SDL_PIXELFORMAT_RGBX8888, IMGFMT_ABGR, 0}, // has no alpha -> bad for OSD
{SDL_PIXELFORMAT_BGRX8888, IMGFMT_ARGB, 0}, // has no alpha -> bad for OSD
@@ -85,11 +85,11 @@ const struct formatmap_entry formats[] = {
{SDL_PIXELFORMAT_BGR24, IMGFMT_BGR24, 0},
{SDL_PIXELFORMAT_RGB888, IMGFMT_BGR24, 0},
{SDL_PIXELFORMAT_BGR888, IMGFMT_RGB24, 0},
- {SDL_PIXELFORMAT_RGB565, IMGFMT_BGR16, 0},
- {SDL_PIXELFORMAT_BGR565, IMGFMT_RGB16, 0},
- {SDL_PIXELFORMAT_RGB555, IMGFMT_BGR15, 0},
- {SDL_PIXELFORMAT_BGR555, IMGFMT_RGB15, 0},
- {SDL_PIXELFORMAT_RGB444, IMGFMT_BGR12, 0}
+ {SDL_PIXELFORMAT_RGB565, IMGFMT_RGB565, 0},
+ {SDL_PIXELFORMAT_BGR565, IMGFMT_RGB565, 0},
+ {SDL_PIXELFORMAT_RGB555, IMGFMT_RGB555, 0},
+ {SDL_PIXELFORMAT_BGR555, IMGFMT_BGR555, 0},
+ {SDL_PIXELFORMAT_RGB444, IMGFMT_RGB444, 0}
#endif
};
diff --git a/video/out/vo_wayland.c b/video/out/vo_wayland.c
index 7776bf4d4d..9c1bf6259d 100644
--- a/video/out/vo_wayland.c
+++ b/video/out/vo_wayland.c
@@ -56,30 +56,30 @@ struct fmtentry {
// the first 2 Formats should be available on most platforms
// all other formats are optional
-// the waylad byte order is reversed
+// the waylad byte order is sometimes reversed
static const struct fmtentry fmttable[] = {
{WL_SHM_FORMAT_ARGB8888, IMGFMT_BGRA}, // 8b 8g 8r 8a
{WL_SHM_FORMAT_XRGB8888, IMGFMT_BGR0},
- {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
- {WL_SHM_FORMAT_XBGR4444, IMGFMT_RGB12_LE}, // 4r 4g 4b 4a
- {WL_SHM_FORMAT_RGBX4444, IMGFMT_RGB12_BE}, // 4a 4b 4g 4r
- {WL_SHM_FORMAT_BGRX4444, IMGFMT_BGR12_BE}, // 4a 4r 4g 4b
- {WL_SHM_FORMAT_ARGB4444, IMGFMT_BGR12_LE},
- {WL_SHM_FORMAT_ABGR4444, IMGFMT_RGB12_LE},
- {WL_SHM_FORMAT_RGBA4444, IMGFMT_RGB12_BE},
- {WL_SHM_FORMAT_BGRA4444, IMGFMT_BGR12_BE},
- {WL_SHM_FORMAT_XRGB1555, IMGFMT_BGR15_LE}, // 5b 5g 5r 1a
- {WL_SHM_FORMAT_XBGR1555, IMGFMT_RGB15_LE}, // 5r 5g 5b 1a
- {WL_SHM_FORMAT_RGBX5551, IMGFMT_RGB15_BE}, // 1a 5g 5b 5r
- {WL_SHM_FORMAT_BGRX5551, IMGFMT_BGR15_BE}, // 1a 5r 5g 5b
- {WL_SHM_FORMAT_ARGB1555, IMGFMT_BGR15_LE},
- {WL_SHM_FORMAT_ABGR1555, IMGFMT_RGB15_LE},
- {WL_SHM_FORMAT_RGBA5551, IMGFMT_RGB15_BE},
- {WL_SHM_FORMAT_BGRA5551, IMGFMT_BGR15_BE},
- {WL_SHM_FORMAT_RGB565, IMGFMT_BGR16_LE}, // 5b 6g 5r
- {WL_SHM_FORMAT_BGR565, IMGFMT_RGB16_LE}, // 5r 6g 5b
+ {WL_SHM_FORMAT_RGB332, IMGFMT_RGB8}, // 3b 3g 2r
+ {WL_SHM_FORMAT_BGR233, IMGFMT_BGR8}, // 3r 3g 3b,
+ {WL_SHM_FORMAT_XRGB4444, IMGFMT_RGB444_LE}, // 4b 4g 4r 4a
+ {WL_SHM_FORMAT_XBGR4444, IMGFMT_BGR444_LE}, // 4r 4g 4b 4a
+ {WL_SHM_FORMAT_RGBX4444, IMGFMT_BGR444_BE}, // 4a 4b 4g 4r
+ {WL_SHM_FORMAT_BGRX4444, IMGFMT_RGB444_BE}, // 4a 4r 4g 4b
+ {WL_SHM_FORMAT_ARGB4444, IMGFMT_RGB444_LE},
+ {WL_SHM_FORMAT_ABGR4444, IMGFMT_BGR444_LE},
+ {WL_SHM_FORMAT_RGBA4444, IMGFMT_BGR444_BE},
+ {WL_SHM_FORMAT_BGRA4444, IMGFMT_RGB444_BE},
+ {WL_SHM_FORMAT_XRGB1555, IMGFMT_RGB555_LE}, // 5b 5g 5r 1a
+ {WL_SHM_FORMAT_XBGR1555, IMGFMT_BGR555_LE}, // 5r 5g 5b 1a
+ {WL_SHM_FORMAT_RGBX5551, IMGFMT_BGR555_BE}, // 1a 5g 5b 5r
+ {WL_SHM_FORMAT_BGRX5551, IMGFMT_RGB555_BE}, // 1a 5r 5g 5b
+ {WL_SHM_FORMAT_ARGB1555, IMGFMT_RGB555_LE},
+ {WL_SHM_FORMAT_ABGR1555, IMGFMT_BGR555_LE},
+ {WL_SHM_FORMAT_RGBA5551, IMGFMT_BGR555_BE},
+ {WL_SHM_FORMAT_BGRA5551, IMGFMT_RGB555_BE},
+ {WL_SHM_FORMAT_RGB565, IMGFMT_RGB565_LE}, // 5b 6g 5r
+ {WL_SHM_FORMAT_BGR565, IMGFMT_BGR565_LE}, // 5r 6g 5b
{WL_SHM_FORMAT_RGB888, IMGFMT_BGR24}, // 8b 8g 8r
{WL_SHM_FORMAT_BGR888, IMGFMT_RGB24}, // 8r 8g 8b
{WL_SHM_FORMAT_XBGR8888, IMGFMT_RGB0},
diff --git a/video/out/vo_x11.c b/video/out/vo_x11.c
index 26af641dbb..fa067849af 100644
--- a/video/out/vo_x11.c
+++ b/video/out/vo_x11.c
@@ -261,30 +261,30 @@ const struct fmt2Xfmtentry_s {
unsigned green_mask;
unsigned blue_mask;
} fmt2Xfmt[] = {
- {IMGFMT_RGB8, BO_NATIVE, 0x00000007, 0x00000038, 0x000000C0},
- {IMGFMT_RGB8, BO_NONNATIVE, 0x00000007, 0x00000038, 0x000000C0},
- {IMGFMT_BGR8, BO_NATIVE, 0x000000E0, 0x0000001C, 0x00000003},
- {IMGFMT_BGR8, BO_NONNATIVE, 0x000000E0, 0x0000001C, 0x00000003},
- {IMGFMT_RGB15, BO_NATIVE, 0x0000001F, 0x000003E0, 0x00007C00},
- {IMGFMT_BGR15, BO_NATIVE, 0x00007C00, 0x000003E0, 0x0000001F},
- {IMGFMT_RGB16, BO_NATIVE, 0x0000001F, 0x000007E0, 0x0000F800},
- {IMGFMT_BGR16, BO_NATIVE, 0x0000F800, 0x000007E0, 0x0000001F},
- {IMGFMT_RGB24, MSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
- {IMGFMT_RGB24, LSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
- {IMGFMT_BGR24, MSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
- {IMGFMT_BGR24, LSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
- {IMGFMT_RGB32, BO_NATIVE, 0x000000FF, 0x0000FF00, 0x00FF0000},
- {IMGFMT_RGB32, BO_NONNATIVE, 0xFF000000, 0x00FF0000, 0x0000FF00},
- {IMGFMT_BGR32, BO_NATIVE, 0x00FF0000, 0x0000FF00, 0x000000FF},
- {IMGFMT_BGR32, BO_NONNATIVE, 0x0000FF00, 0x00FF0000, 0xFF000000},
- {IMGFMT_ARGB, MSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
- {IMGFMT_ARGB, LSBFirst, 0x0000FF00, 0x00FF0000, 0xFF000000},
- {IMGFMT_ABGR, MSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
- {IMGFMT_ABGR, LSBFirst, 0xFF000000, 0x00FF0000, 0x0000FF00},
- {IMGFMT_RGBA, MSBFirst, 0xFF000000, 0x00FF0000, 0x0000FF00},
- {IMGFMT_RGBA, LSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
- {IMGFMT_BGRA, MSBFirst, 0x0000FF00, 0x00FF0000, 0xFF000000},
- {IMGFMT_BGRA, LSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
+ {IMGFMT_BGR8, BO_NATIVE, 0x00000007, 0x00000038, 0x000000C0},
+ {IMGFMT_BGR8, BO_NONNATIVE, 0x00000007, 0x00000038, 0x000000C0},
+ {IMGFMT_RGB8, BO_NATIVE, 0x000000E0, 0x0000001C, 0x00000003},
+ {IMGFMT_RGB8, BO_NONNATIVE, 0x000000E0, 0x0000001C, 0x00000003},
+ {IMGFMT_BGR555, BO_NATIVE, 0x0000001F, 0x000003E0, 0x00007C00},
+ {IMGFMT_BGR555, BO_NATIVE, 0x00007C00, 0x000003E0, 0x0000001F},
+ {IMGFMT_BGR565, BO_NATIVE, 0x0000001F, 0x000007E0, 0x0000F800},
+ {IMGFMT_RGB565, BO_NATIVE, 0x0000F800, 0x000007E0, 0x0000001F},
+ {IMGFMT_RGB24, MSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
+ {IMGFMT_RGB24, LSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
+ {IMGFMT_BGR24, MSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
+ {IMGFMT_BGR24, LSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
+ {IMGFMT_RGB32, BO_NATIVE, 0x000000FF, 0x0000FF00, 0x00FF0000},
+ {IMGFMT_RGB32, BO_NONNATIVE, 0xFF000000, 0x00FF0000, 0x0000FF00},
+ {IMGFMT_BGR32, BO_NATIVE, 0x00FF0000, 0x0000FF00, 0x000000FF},
+ {IMGFMT_BGR32, BO_NONNATIVE, 0x0000FF00, 0x00FF0000, 0xFF000000},
+ {IMGFMT_ARGB, MSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
+ {IMGFMT_ARGB, LSBFirst, 0x0000FF00, 0x00FF0000, 0xFF000000},
+ {IMGFMT_ABGR, MSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
+ {IMGFMT_ABGR, LSBFirst, 0xFF000000, 0x00FF0000, 0x0000FF00},
+ {IMGFMT_RGBA, MSBFirst, 0xFF000000, 0x00FF0000, 0x0000FF00},
+ {IMGFMT_RGBA, LSBFirst, 0x000000FF, 0x0000FF00, 0x00FF0000},
+ {IMGFMT_BGRA, MSBFirst, 0x0000FF00, 0x00FF0000, 0xFF000000},
+ {IMGFMT_BGRA, LSBFirst, 0x00FF0000, 0x0000FF00, 0x000000FF},
{0}
};