diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2004-08-30 21:06:52 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2004-08-30 21:06:52 +0000 |
commit | ef6466d9adfb2f31dfc65d2a33a6bc8e1f2c5b0e (patch) | |
tree | 6942c8491f25ba6e52b0219375c10e48bc85282d /libvo/vo_gl.c | |
parent | 264676faef933805754c958c5f0be13ee39620dd (diff) | |
download | mpv-ef6466d9adfb2f31dfc65d2a33a6bc8e1f2c5b0e.tar.bz2 mpv-ef6466d9adfb2f31dfc65d2a33a6bc8e1f2c5b0e.tar.xz |
Using updated colorspace specifications from colorspaces.txt.
All by manyfmts suboption supported formats should display correctly now.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@13207 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo/vo_gl.c')
-rw-r--r-- | libvo/vo_gl.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/libvo/vo_gl.c b/libvo/vo_gl.c index 2f3f68d027..9cfc0d2f02 100644 --- a/libvo/vo_gl.c +++ b/libvo/vo_gl.c @@ -77,7 +77,7 @@ static int find_gl_format (uint32_t format) gl_format = GL_RGB; gl_type = GL_UNSIGNED_BYTE; break; - case IMGFMT_RGB32: + case IMGFMT_RGBA: gl_texfmt = 4; gl_format = GL_RGBA; gl_type = GL_UNSIGNED_BYTE; @@ -92,15 +92,15 @@ static int find_gl_format (uint32_t format) #ifdef GL_VERSION_1_2 case IMGFMT_RGB8: gl_format = GL_RGB; - gl_type = GL_UNSIGNED_BYTE_3_3_2; + gl_type = GL_UNSIGNED_BYTE_2_3_3_REV; break; case IMGFMT_RGB15: gl_format = GL_RGBA; - gl_type = GL_UNSIGNED_SHORT_5_5_5_1; + gl_type = GL_UNSIGNED_SHORT_1_5_5_5_REV; break; case IMGFMT_RGB16: gl_format = GL_RGB; - gl_type = GL_UNSIGNED_SHORT_5_6_5; + gl_type = GL_UNSIGNED_SHORT_5_6_5_REV; break; case IMGFMT_BGR8: // special case as red and blue have a differen number of bits. @@ -108,21 +108,21 @@ static int find_gl_format (uint32_t format) // by nVidia drivers, and in addition would give more bits to // blue than to red, which isn't wanted gl_format = GL_RGB; - gl_type = GL_UNSIGNED_BYTE_2_3_3_REV; + gl_type = GL_UNSIGNED_BYTE_3_3_2; break; case IMGFMT_BGR15: gl_format = GL_BGRA; - gl_type = GL_UNSIGNED_SHORT_5_5_5_1; + gl_type = GL_UNSIGNED_SHORT_1_5_5_5_REV; break; case IMGFMT_BGR16: gl_format = GL_RGB; - gl_type = GL_UNSIGNED_SHORT_5_6_5_REV; + gl_type = GL_UNSIGNED_SHORT_5_6_5; break; case IMGFMT_BGR24: gl_format = GL_BGR; gl_type = GL_UNSIGNED_BYTE; break; - case IMGFMT_BGR32: + case IMGFMT_BGRA: gl_texfmt = 4; gl_format = GL_BGRA; gl_type = GL_UNSIGNED_BYTE; @@ -340,7 +340,7 @@ uint8_t *ImageData=src[0]; static uint32_t query_format(uint32_t format) { - if ((format == IMGFMT_RGB24) || (format == IMGFMT_RGB32)) + if ((format == IMGFMT_RGB24) || (format == IMGFMT_RGBA)) return VFCAP_CSP_SUPPORTED | VFCAP_CSP_SUPPORTED_BY_HW; if (many_fmts && find_gl_format(format)) return VFCAP_CSP_SUPPORTED | VFCAP_CSP_SUPPORTED_BY_HW; |