summaryrefslogtreecommitdiffstats
path: root/libvo/gl_common.c
Commit message (Collapse)AuthorAgeFilesLines
* vo_gl: fix YUY2/YVYU colorspace mixupreimar2011-07-061-1/+3
| | | | | | Second GL_YCBCR_MESA format is YVYU, not YUY2. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33694 b3059339-0415-0410-9bf9-f77b7e298cf2
* vo_gl: Request GL_LUMINANCE16 for 16-bit YUV inputreimar2011-06-291-2/+2
| | | | | | | Request GL_LUMINANCE16 as internal format for > 8 bit YUV formats. Have yet to find a system that actually provides that though. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33453 b3059339-0415-0410-9bf9-f77b7e298cf2
* vo_gl: don't accept 9/10-bit formats as inputreimar2011-06-291-1/+1
| | | | | | | | | Make mp_get_chroma_shift() simpler/more generic and add an argument to get the per-component bit depth. Use this to check more properly for supported formats in gl and gl2 vos (only 8 and 16 bit are supported, 9 and 10 are not). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33452 b3059339-0415-0410-9bf9-f77b7e298cf2
* cleanup: remove NULL checks before free() all over the codecboesch2010-11-141-2/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32624 b3059339-0415-0410-9bf9-f77b7e298cf2
* vo_gl: Move the read_pnm function into a separate filecigaes2010-11-021-60/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32513 b3059339-0415-0410-9bf9-f77b7e298cf2
* vo_gl: Extract code to read a pnm file into a separate functionreimar2010-11-021-24/+48
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32479 b3059339-0415-0410-9bf9-f77b7e298cf2
* vo_gl: Add initial stereo supportreimar2010-11-021-0/+85
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31633 b3059339-0415-0410-9bf9-f77b7e298cf2
* vo_gl, csputils: dual-license under LGPL v2.1reimar2010-11-021-0/+5
| | | | | | | | | | | | Dual-license gl_common and vo_gl under the LGPL v2.1 or later as an alternative to the GPL license. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31375 b3059339-0415-0410-9bf9-f77b7e298cf2 Allow LGPL for csputils as well, they were previously part of gl_common and are still an important part of it. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31376 b3059339-0415-0410-9bf9-f77b7e298cf2
* Merge svn changes up to r31145Uoti Urpala2010-05-301-1/+6
|\
| * Handle chroma texture size becoming 0, e.g. due to bad rounding.reimar2010-05-091-1/+6
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31143 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r31097Uoti Urpala2010-04-261-28/+112
|\|
| * Support for auto-selecting the OpenGL backend.reimar2010-04-251-0/+8
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31086 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add reinitialization support. Necessary for fullscreen on OSX.reimar2010-04-251-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31085 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Missing space in error message.reimar2010-04-251-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31083 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Share SDL initialization code.reimar2010-04-251-2/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31079 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Fullscreen support for -vo gl using SDL.reimar2010-04-251-0/+13
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31077 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Window resizing support for -vo gl with SDL backend.reimar2010-04-251-0/+4
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31075 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add sdl_common file and use it to share the input handling between -vo glreimar2010-04-251-5/+12
| | | | | | | | | | | | | | with SDL backend and -vo sdl. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31074 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Use SDL_GL_ProcAddress to work around conflicts between -lGLreimar2010-04-251-0/+10
| | | | | | | | | | | | | | and -framework OpenGL. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31073 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Update copyright and email address.reimar2010-04-251-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31072 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Clarify that the GL_TEXT_FRAGMENT_SHADER_ATI bug workaround is for OSX,reimar2010-04-251-3/+3
| | | | | | | | | | | | | | and which versions are known good/known bad. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31071 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add workaroound for yuv=7 mode - does hurt speed but not muchreimar2010-04-241-1/+5
| | | | | | | | | | | | | | and this code should only be used when it is the only option. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31068 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Try harder to find linked OpenGL functions.reimar2010-04-241-27/+22
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31066 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Some crash-resilience fixes.reimar2010-04-241-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31063 b3059339-0415-0410-9bf9-f77b7e298cf2
| * First steps to support -vo gl with SDL-based Window handling.reimar2010-04-241-0/+39
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31062 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r31020Uoti Urpala2010-04-261-0/+14
|\|
| * Factor out the YUV->RGB conversion auto-selection and alsoreimar2010-04-041-0/+14
| | | | | | | | | | | | | | | | enable auto-selection of ATI fragment shaders since they should do accurate conversions now. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31006 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r31004Uoti Urpala2010-04-261-272/+346
|\|
| * Share more code between the two ATI fragment shader YUV to RGBreimar2010-04-041-69/+87
| | | | | | | | | | | | | | | | conversion methods and extend them to support more accurate conversion (though at the cost of some speed). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30995 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Try to detect and work around broken glXGetProcAddress on atreimar2010-04-031-0/+6
| | | | | | | | | | | | | | least PPC OS X 10.4. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30994 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Implement OpenGL-based YUV to RGB version for Radeon 9200 classreimar2010-04-031-0/+50
| | | | | | | | | | | | | | cards on OS X. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30993 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Indentation fix.reimar2010-04-031-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30988 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add mpgl prefix to all OpenGL-related function pointers.reimar2010-04-031-254/+254
| | | | | | | | | | | | | | | | | | 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
* | Merge svn changes up to r30907Uoti Urpala2010-04-261-117/+117
|\|
| * Add newlines to generated fragment program to make both fragment program dumpreimar2010-03-121-117/+117
| | | | | | | | | | | | | | with -v more readable and compiler error message more understandable. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30882 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30463Uoti Urpala2010-03-091-1/+1
|\| | | | | | | | | | | Note that r30455 is wrong, that commit does not in fact change the default behavior as claimed in the commit message. It only breaks "-af-adv force=0", which was already pretty much useless though.
| * Try the more specific names first for the SwapInterval function to make it lessreimar2010-01-281-1/+1
| | | | | | | | | | | | | | likely we get an incompatible one. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30451 b3059339-0415-0410-9bf9-f77b7e298cf2
| * glXSwapIntervalEXT is defined to take different arguments from ↵reimar2010-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | glXSwapIntervalSGI, so do not try to use it. Patch by Stephen Warren [swarren nvidia com] git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30450 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30185Uoti Urpala2010-01-081-0/+22
|\|
| * Add pointers to a few more standard OpenGL functions to ease future extensions.reimar2010-01-031-0/+22
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30179 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30165Uoti Urpala2010-01-081-108/+35
|\|
| * Add support for 16-bit per component YUV formats.reimar2009-12-311-3/+16
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30152 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Extract functions to generate yuv->rgb matrices and lookup tables into areimar2009-12-311-101/+6
| | | | | | | | | | | | | | separate file. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30150 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Put the colourspace-related variables into a separate struct to easereimar2009-12-311-10/+10
| | | | | | | | | | | | | | extracting the code and sharing with other vos. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30149 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Support all planar YUV formats in OpenGL vos.reimar2009-12-301-4/+13
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30139 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30104Uoti Urpala2009-12-301-29/+31
|\| | | | | | | Ignore the broken correct-pts change in r30100.
| * Change %f to %e in generated fragment programs to avoid losing precision ↵reimar2009-12-201-26/+26
| | | | | | | | | | | | unnecessarily. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30078 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Fix a broken indentation.reimar2009-12-191-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30070 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Enable running fragment programs with YUV_CONVERSION_NONEreimar2009-12-191-2/+4
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30069 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30065Uoti Urpala2009-12-291-6/+6
|\|
| * Rename GL_* defines to CONFIG_GL_*reimar2009-12-191-6/+6
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30065 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Make the check for X11 and WIN32 backends for OpenGL separate.reimar2009-12-191-3/+3
| | | | | | | | | | | | 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
* | Merge svn changes up to r30055Uoti Urpala2009-12-181-97/+278
|\|
| * Use a fallback to make sure the basic OpenGL functions are available instead ofreimar2009-12-091-45/+55
| | | | | | | | | | | | | | initializing them which does not work well with reinitializations. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29984 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Prefer GLAPIENTRY over APIENTRY, it is the better name and used more by ↵reimar2009-12-091-69/+69
| | | | | | | | | | | | OpenGL headers. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29983 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Pass all OpenGL functions through a function pointer indirection.reimar2009-12-081-59/+145
| | | | | | | | | | | | | | | | 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
| * Very preliminary code to allow selecting the OpenGL backend at runtime.reimar2009-12-081-7/+71
| | | | | | | | | | | | | | | | | | 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
* | vo_gl: Remove incorrect glXSwapIntervalEXT useUoti Urpala2009-11-291-1/+1
| | | | | | | | | | | | | | | | | | The list of OpenGL extension function names to try for setting the swapinterval value contained "glXSwapIntervalEXT". Such a function exists in the extension GL_EXT_swap_control but takes different arguments than vo_gl expects, so trying to use it from the current code would lead to unpredictable behavior. Remove it from the list of functions to use.
* | Merge svn changes up to r29962Uoti Urpala2009-11-231-8/+13
|\|
| * Move OpenGL-related messages that have large output from MSGL_V to MSGL_DGB2.reimar2009-11-211-3/+3
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29947 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add support for Windows OpenGL rendering onto a device instead of into a window.reimar2009-11-211-4/+4
| | | | | | | | | | | | | | | | | | Has little use except for experimenting - on Windows 9x it could be used to render on monitors that were not managed by Windows, but that feature was removed in newer Windows versions. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29946 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Support RGB48NE format in OpenGL vos (only really useful once they are modifiedreimar2009-11-211-0/+4
| | | | | | | | | | | | | | to actually use GLX/WGL visuals with more than 8 bits per component if available). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29944 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Use calloc to allocate a rather large (currently 32k) array instead ofreimar2009-11-201-1/+2
| | | | | | | | | | | | | | putting it on the stack, performance should not matter much here. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29938 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r29752Uoti Urpala2009-10-061-2/