1
0
mirror of https://github.com/mpv-player/mpv synced 2025-01-01 12:22:22 +00:00
Commit Graph

67 Commits

Author SHA1 Message Date
reimar
2cebf8eeb7 Add mpgl prefix to all OpenGL-related function pointers.
This is necessary because at least the GetString symbol
causes clashes on PPC OSX 10.4, causing -vo gl to always
crash.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30987 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-04-03 07:08:07 +00:00
reimar
f06aa83a83 Add pointers to a few more standard OpenGL functions to ease future extensions.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30179 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-01-03 12:55:09 +00:00
reimar
0ecf324ac5 Extract functions to generate yuv->rgb matrices and lookup tables into a
separate file.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30150 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-31 18:25:35 +00:00
reimar
c4c806a9d7 Put the colourspace-related variables into a separate struct to ease
extracting the code and sharing with other vos.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30149 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-31 18:07:37 +00:00
reimar
8e35068138 Support all planar YUV formats in OpenGL vos.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30139 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-30 11:32:24 +00:00
reimar
763402d423 Define GL_GENERATE_MIPMAP ourselves if necessary.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30074 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-19 21:07:42 +00:00
reimar
f97fd3eff0 Rename GL_* defines to CONFIG_GL_*
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30065 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-19 13:49:44 +00:00
reimar
140de2a9e2 Make the check for X11 and WIN32 backends for OpenGL separate.
This fixes compilation on Windows with X11 but no GLX available.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30063 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-19 10:52:32 +00:00
reimar
c13aaf85d1 Prefer GLAPIENTRY over APIENTRY, it is the better name and used more by OpenGL headers.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29983 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-09 17:36:55 +00:00
reimar
e64d47925a Pass all OpenGL functions through a function pointer indirection.
This still needs more work, but should allow supporting e.g. GLX-OpenGL
and Win32-OpenGL with a single binary.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29981 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-08 23:32:51 +00:00
reimar
2661039ada Very preliminary code to allow selecting the OpenGL backend at runtime.
Works in the currently supported cases for only Win32 and only X11,
the mixed case is not working yet though.
But applied anyway since the code is slightly less messy than the current one.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29980 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-08 06:42:46 +00:00
diego
6e9cbdc104 whitespace cosmetics: Remove all trailing whitespace.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29305 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-05-13 02:58:57 +00:00
diego
befc528297 Add standard license headers, unify header formatting.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28481 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-02-08 03:27:30 +00:00
reimar
39f24a83c7 100l, forgot setting GL_UNPACK_CLIENT_STORAGE_APPLE for mesa-buffer mode.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28104 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-12-06 06:18:57 +00:00
reimar
b6e113841c Add experimental support for glXAllocateMemoryMESA
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28101 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-12-05 22:16:45 +00:00
reimar
0ca415447d Add support for YCBCR MESA texture format to vo_gl.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28093 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-12-05 15:36:54 +00:00
reimar
14eb21fce0 For fragment programs, check GL_MAX_TEXTURE_IMAGE_UNITS instead of GL_MAX_TEXTURE_UNITS.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27899 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-11-06 18:39:37 +00:00
reimar
c9f2a3636c Change OpenGL support to work on unmodified MinGW64
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27879 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-11-02 16:37:45 +00:00
reimar
0e99017da9 Change glCreateClearTex to use the same host data format as later uploads.
This fixes at least some of the massive performance problems the ATI drivers have.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27653 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-09-20 17:48:01 +00:00
reimar
983800b76f Enable runtime border/window decorations-toggling for Linux gl and gl2 vos.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27338 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-07-22 18:46:07 +00:00
reimar
6689fe364e Add a filter strength parameter for blurring/sharpening scalers.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26868 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-05-24 11:19:38 +00:00
reimar
dbe3c2994a Forgotten changes to gl_common.h
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26867 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-05-24 11:04:18 +00:00
diego
37ea342f85 #include config.h before all other headers.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26235 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-14 16:46:13 +00:00
diego
c5001347c2 This header uses parts of stdint.h, so #include it.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26195 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-07 20:25:26 +00:00
diego
d04df10807 Add missing header #includes to fix 'make checkheaders'.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26194 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-07 20:07:15 +00:00
diego
8efb2fa21c Add MPLAYER_ prefix to multiple inclusion guards.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26061 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-22 09:09:46 +00:00
reimar
6a6c3d8cbc Add a fragment program for 5x5 unsharp masking
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25786 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-01-18 19:05:29 +00:00
reimar
1fbd767ef6 Add experimental unsharp-mask OpenGL scaler. Certainly not yet perfect.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25757 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-01-15 17:59:20 +00:00
diego
fba0b66ff9 Add explanatory comments to the #endif part of multiple inclusion guards.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25563 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-12-31 16:15:50 +00:00
reimar
dc804a9536 Add a bicubic scaler that needs a lot more instruction but no
extra texture lookup


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24338 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-09-04 10:46:31 +00:00
diego
3e9e4acd8d Do not use leading underscores in multiple inclusion guards, they are reserved.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23709 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-07-02 22:34:45 +00:00
reimar
d32650a87c forgotten lscale=2 part for gl_common.h
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22509 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-03-11 15:32:48 +00:00
reimar
4f6a65ef4e Avoid void * arithmetic
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21217 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-25 13:34:55 +00:00
reimar
e799a08925 Support for 16 bit ppms
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18966 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-07-08 19:23:26 +00:00
reimar
497b2f561e Add yuv to rgb conversion using a 3D lookup texture
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18656 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-06-08 19:02:56 +00:00
reimar
2a61cc675b loadGPUProgram function to load fragment program with error checking and statistics
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18654 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-06-08 18:50:11 +00:00
reimar
1b0b329dd7 Add bicubic texture scaling
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18623 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-06-07 14:07:32 +00:00
reimar
0965bcee43 Reworked YUV2RGB fragment program setup in preparation for upcoming patches
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18620 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-06-07 13:24:54 +00:00
reimar
a0a494e6f2 add (currently unused) lookup for glTexImage3D
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18579 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-06-05 11:26:33 +00:00
reimar
19935f69bd minor fixes: get rid of pointless inline attributes and some additional checks
fo ppm reading


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18176 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-04-21 18:46:17 +00:00
reimar
1c45f83cac Better fallback for APIENTRY when compiling for Windows
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17689 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-02-26 09:47:17 +00:00
reimar
d18baca45c workaround for gl.h variants that do not define APIENTRY
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17669 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-02-23 10:18:10 +00:00
rathann
e7db4ccf1a Patch by Stefan Huehner / stefan % huehner ! org \
patch replaces '()' for the correct '(void)' in function
declarations/prototypes which have no parameters. The '()' syntax tell
thats there is a variable list of arguments, so that the compiler cannot
check this. The extra CFLAG '-Wstrict-declarations' shows those cases.

Comments about a similar patch applied to ffmpeg:

That in C++ these mean the same, but in ANSI C the semantics are
different; function() is an (obsolete) K&R C style forward declaration,
it basically means that the function can have any number and any types
of parameters, effectively completely preventing the compiler from doing
any sort of type checking. -- Erik Slagter

Defining functions with unspecified arguments is allowed but bad.
With arguments unspecified the compiler can't report an error/warning
if the function is called with incorrect arguments. -- Måns Rullgård


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17567 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-02-09 14:08:03 +00:00
reimar
2a15e8beb8 support negative stride (flipping) in vo_gl.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17221 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-12-18 12:04:08 +00:00
reimar
6b9f08f720 Get rid of most #ifdefs
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17117 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-12-06 22:23:06 +00:00
reimar
1b6809f326 More consistent and sane types. Also avoids some gcc 4 warnings.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16880 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-10-31 13:56:16 +00:00
reimar
d28ad7d31d Support for ATI specific YUV->RGB conversion.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16626 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-10-01 12:49:28 +00:00
reimar
9f24b5c71f Add missing GL_REGISTER_COMBINERS_NV define
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16609 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-09-27 08:33:33 +00:00
reimar
7a3909684e fix/improve code doxumentation. Also group gl_common functions in several
doxygen modules


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16596 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-09-25 16:41:28 +00:00
reimar
d29c9ddf19 support loading a texture from a PPM file
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16593 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-09-25 16:30:00 +00:00