summaryrefslogtreecommitdiff
path: root/src/video_out/video_out_opengl.c
AgeCommit message (Collapse)Author
2007-04-08Mark various private arrays, structs & fn parameters as static and/or const.Darren Salt
Two of the modified files are headers, but each contains definitions as well as declarations and is only ever used once.
2006-07-10Implement visibility support, available on GCC 4.0 and later and on some 3.4 ↵Diego 'Flameeyes' Pettenò
(through backports), to avoid exporting unneeded internal symbols, making plugins' loading faster and use of internal copies of libraries more solid. It should automatically fall back to the old way in GCCs that does not support -fvisibility=hidden, but has to be tested carefully. No issues were found in the months of testing in Gentoo, but this requires special attention anyway. CVS patchset: 8101 CVS date: 2006/07/10 22:08:12
2006-06-20Fix generic warnings.Diego 'Flameeyes' Pettenò
CVS patchset: 8064 CVS date: 2006/06/20 01:07:58
2006-06-15Fix non-static assignment of static variable.Robin KAY
CVS patchset: 8041 CVS date: 2006/06/15 21:40:05
2006-06-02Various static/const fixes from Gentoo.Darren Salt
CVS patchset: 8009 CVS date: 2006/06/02 22:18:56
2006-05-03Make various arrays and structures (mainly xine_plugin_info) const.Darren Salt
(Diego Pettenò) CVS patchset: 7985 CVS date: 2006/05/03 19:46:06
2005-09-25move alphablend to coreMiguel Freitas
CVS patchset: 7745 CVS date: 2005/09/25 00:44:04
2005-09-24- rename all clip_top, clip_left, clip_color... to hili_xxxx. thatMiguel Freitas
"clip" thing has caused too much confusion already since these variables define a highlight area. - add overlay offset support to video_out.c/alphablend/vo drivers - use overlay offset to implement proper croping of frames when vo driver doesn't support it - add clipping checks to alphablend to avoid buffer overflow, buffer "underflow" and wrapping. - increase vo api number - note: dxr3 support is incomplete about overlay offset CVS patchset: 7739 CVS date: 2005/09/24 19:08:26
2005-09-05Unified behavior of yuv2rgb brightness/contrast/saturation.Matthias Hopf
Nuked getting default value from additional config. CVS patchset: 7717 CVS date: 2005/09/05 14:56:31
2005-07-05Fixed type missmatch warnings (char * vs. GLubyte *).Matthias Hopf
CVS patchset: 7639 CVS date: 2005/07/05 11:10:31
2005-05-09**BUGFIX**Andre Pang
Fix compilation of video_out_opengl.c with Apple gcc 4.0 CVS patchset: 7533 CVS date: 2005/05/09 06:55:22
2005-04-21- Updated doc/README.openglMatthias Hopf
- Better extension handling: Distributing own, mangled, glext.h (now myglext.h). Resolving glXgetProcAddress[ARB] during runtime now (original patch by Robert Osfield). Should compile now virtually anywhere. - Test for existence / working GLU (original patch by Alien). - Windows often were opened with the wrong visual ID depending on the single/double buffering flag. Fixed. CVS patchset: 7478 CVS date: 2005/04/21 17:37:40
2005-04-07- Added some code to work around legacy systems (like old SGI machines)Matthias Hopf
to still compile - even if they cannot make use of the extensions. - Some more cleanup, should be easier to port to Wind**s now. CVS patchset: 7448 CVS date: 2005/04/07 17:04:16
2005-04-06Using self-supplied glext.h now in order to reduce compile requirements.Matthias Hopf
CVS patchset: 7447 CVS date: 2005/04/06 16:12:02
2005-04-05Updates:Matthias Hopf
- fragment program based color conversion (only YV12 so far) - tile-based texturing for cards that allow only small textures - Fixed a number of race conditions; hope I got them all - That involved making more internal messages synchronous - Fixed a number of TODOs - Doing correct extensions detection most of the time now - Cleaned up code and internal rendering interface - Switching to fallbacks now if a render backend fails to initialize - Old rendering context destroyed now on RENDER_CREATE, Issues left: - Crash on multiple context switch with radeon and i815 Mesa drivers - Sometimes (seldom) temporary setup failure on all drivers on context switch - No fp based color conversion for YUY2 equivalent video yet - Still some TODOs in the code - Fallback switches config, which is saved and used next time as well CVS patchset: 7446 CVS date: 2005/04/05 13:27:35
2004-12-12huge patch ahead: reorganizing config entries with automatic conversionMichael Roitzsch
and backwards compatible translation Sorry, I got a litte tired proof-reading the patch, so their might be bugs lurking around. I will give it some further examination and (as necessary) fixing tomorrow. CVS patchset: 7233 CVS date: 2004/12/12 22:00:47
2004-11-25Fix compile error in overlay blending. (Reinhard Nissl)Darren Salt
CVS patchset: 7162 CVS date: 2004/11/25 03:29:11
2004-11-24patch to further improve overlay blending and to elimiate static variablesMichael Roitzsch
in alphablend.c; XShm subtitles work now, Xv works as well, other output plugins untested CVS patchset: 7156 CVS date: 2004/11/24 16:11:02
2004-11-23Rewrote OpenGL output plugin.Matthias Hopf
CVS patchset: 7150 CVS date: 2004/11/23 15:01:07
2004-10-09two more plugins for the centralized scaling optionMichael Roitzsch
CVS patchset: 7028 CVS date: 2004/10/09 06:45:48
2004-09-22- added cropping capability (thanks James Stembridge)Miguel Freitas
- some vo drivers support cropping natively. (only xv and xvmc have been tested) - add software crop fallback to video_out.c - skip yuv2rgb processing at xshm for not yet cropped frames (these frames are never shown) - libmpeg2 and ffmpeg now may use crop support - bump vo api. (changes to xvmc/xxmc will follow) CVS patchset: 6991 CVS date: 2004/09/22 20:29:13
2004-08-26Implement configure option --disable-openglFrantišek Dvořák
Separate opengl configure tests into opengl.m4 Fix a segfault in debug build CVS patchset: 6905 CVS date: 2004/08/26 17:57:50
2004-04-30Enable opengl compiling.James Courtier-Dutton
It seg faults at the moment, but we will fix that. CVS patchset: 6470 CVS date: 2004/04/30 22:12:15
2004-04-26help strings added for all remaining config entries (so I hope)Michael Roitzsch
please everybody watch out for spelling (and other) errors CVS patchset: 6442 CVS date: 2004/04/26 17:50:06
2004-03-03use the _x_abort() macro instead of abort, since it prints some debug infoMichael Roitzsch
before aborting CVS patchset: 6211 CVS date: 2004/03/03 20:09:11
2003-12-14API version bounceSiggi Langauf
CVS patchset: 5912 CVS date: 2003/12/14 22:13:22
2003-12-07get rid of XINE_{ASSERT,ABORT} and useless xine_print_trace (useless). ↵Daniel Caujolle-Bert
Replace XINE_ASSERT by _x_assert, which works exaclty as assert, except that it still warns with NDEBUG defined (but don't abort). Fix missuning of assert(0), which isn't safe, abort is abort, assert is for debugging purpose only, so all assert(0) has been converted to abort() alls. In osd_preload_fonts(): alloc needed memory chunk. Define NDEBUG in CFLAGS, for non DEBUG build only. CVS patchset: 5860 CVS date: 2003/12/07 15:34:29
2003-12-05cleanup phase II. use xprintf when it's relevant, use xine_xmalloc when it's ↵Daniel Caujolle-Bert
relevant too. Small other little fix (can't remember). Change few internal function prototype because it xine_t pointer need to be used if some xine's internal sections. NOTE: libdvd{nav,read} is still too noisy, i will take a look to made it quit, without invasive changes. To be continued... CVS patchset: 5844 CVS date: 2003/12/05 15:54:56
2003-11-26* new unscaled overlay feature (using XShape extension)Miguel Freitas
text subtitles may now be rendered at full screen resolution * load xine fonts on demand - faster startup note: support added to xv, xshm and vidix CVS patchset: 5780 CVS date: 2003/11/26 01:03:31
2003-11-11rename internal API function (_x_<function>).Daniel Caujolle-Bert
CVS patchset: 5721 CVS date: 2003/11/11 18:44:50
2003-10-23cleanup in video_out.hMichael Roitzsch
* some obsolete VO_CAP_* constants removed * VO_ZOOM_* constants replaced by their XINE_VO_ZOOM_* equivalents from xine.h * moved some bits around * proc_frame() needs only one parameter: the frame * renamed copy_called to proc_called * changed logic in video_out.c to call proc_* functions a bit (call proc_frame() first, then call proc_slice() if proc_frame() has not set proc_called, this allows video out plugins to have both hooks called) CVS patchset: 5576 CVS date: 2003/10/23 15:17:06
2003-10-22Replace copy member in vo_frame_t with proc_frame and proc_slice. Increase ↵Robin KAY
video_out API version to 18. CVS patchset: 5574 CVS date: 2003/10/22 20:38:09
2003-10-06- add XvMC supportMiguel Freitas
- bump vo and post interface versions obs: video_out_xvmc.c needs some more work, see todo. CVS patchset: 5459 CVS date: 2003/10/06 21:52:42
2003-08-04support for arbitrary aspect ratiosMiguel Freitas
patch by Philip Jgenstedt CVS patchset: 5243 CVS date: 2003/08/04 03:47:09
2003-05-31update video out api to allow better frame management (explicit locking)Miguel Freitas
img->displayed is obsolete now, drivers should use img->free. CVS patchset: 4994 CVS date: 2003/05/31 18:33:28
2003-02-28Xine assert() replacement:Stephen Torri
All assert() function calls, with exceptions of libdvdread and libdvdnav, have been replaced with XINE_ASSERT. Functionally XINE_ASSERT behaves just likes its predecesor but its adding the ability to print out a stack trace at the point where the assertion fails. So here are a few examples. assert (0); This use of assert was found in a couple locations most favorably being the default case of a switch statement. This was the only thing there. So if the switch statement was unable to find a match it would have defaulted to this and the user and the developers would be stuck wonder who died and where. So it has been replaced with XINE_ASSERT(0, "We have reach this point and don't have a default case"); It may seem a bit none descriptive but there is more going on behind the scene. In addition to checking a condition is true/false, in this case '0', the XINE_ASSERT prints out: <filename>:<function name>:<line number> - assertion '<assertion expression>' failed. <description> An example of this might be: input_dvd.c:open_plugin:1178 - assertion '0' failed. xine_malloc failed!!! You have run out of memory XINE_ASSERT and its helper function, print_trace, are found in src/xine-utils/xineutils.h CVS patchset: 4301 CVS date: 2003/02/28 02:51:47
2003-02-02Add support for brightness, saturation, contrast (not functional yet)Ewald Snel
CVS patchset: 4088 CVS date: 2003/02/02 12:44:03
2003-01-29adjust priorities to what we agreed on jun/2002.Miguel Freitas
it got lost homehow porting to new api. CVS patchset: 4039 CVS date: 2003/01/29 15:34:26
2002-12-21- add buf->decoder_info_ptr: portability for systems where pointer hasMiguel Freitas
different sizeof than integer. - add extra_info structure to pass informations from input/demuxers down to the output frame. this can be used, for example, to pass the frame number of a frame (when known by decoder). also, immediate benefict is that we now have a slider which really shows the current position of the playing stream. new fields can be added to extra_info keeping binary compatibility - bumpy everybody's api versions CVS patchset: 3603 CVS date: 2002/12/21 12:56:44
2002-12-06- update api version, adding new "copy_called" flag.Miguel Freitas
CVS patchset: 3434 CVS date: 2002/12/06 01:33:00
2002-11-22when the image does not fit the viewport and black bars need to be added, theirMichael Roitzsch
size ratio and therefore the position of the image is now configurable (I remembered my arts lessons at school where the teacher told us that images look more pleasing when the lower border is twice the size of the upper and set the default accordingly. ;) CVS patchset: 3337 CVS date: 2002/11/22 18:06:09
2002-11-21compiles, but does not work yet (segfaults).Matthias Hopf
CVS patchset: 3329 CVS date: 2002/11/21 23:24:50
2002-09-05make all the plugin init functions staticMichael Roitzsch
(geez this was a job) CVS patchset: 2616 CVS date: 2002/09/05 20:44:38
2002-09-04merging in the new_api branch ... unfortunately video_out / vo_scale is ↵Guenter Bartsch
broken now ... matthias/miguel: please fix it :-) CVS patchset: 2606 CVS date: 2002/09/04 23:31:05
2002-08-10syncing my local tree:Miguel Freitas
- removes w32codec syncshutdown hack - vo_driver api changed to support drivers with persistent overlays. that will break binary compatibility xine-lib/xine-ui (xine-ui needs to be recompiled). in order to keep binary compatibility overlay_begin/overlay_end must be added after redraw_needed. - video_overlay cleanups - fix a hard to trigger condition where redraw wouldn't happen (freeing handles) CVS patchset: 2427 CVS date: 2002/08/10 21:25:20
2002-07-16Fix unresolved symbols and replace duplicate code in video output pluginsEwald Snel
CVS patchset: 2295 CVS date: 2002/07/16 19:33:36
2002-07-15Add 'pitch' support to video decoders (pitch != width)Ewald Snel
CVS patchset: 2282 CVS date: 2002/07/15 21:42:33
2002-07-10handle freshly introduced pan&scan aspect like anamorphic aspectMichael Roitzsch
CVS patchset: 2247 CVS date: 2002/07/10 14:04:41
2002-06-21adjust video_out prioritiesMiguel Freitas
CVS patchset: 2119 CVS date: 2002/06/21 19:26:57
2002-06-12Remove no more needed XINE_LOGO.Daniel Caujolle-Bert
Internationalize all config related stuff. Fix not registered mrl ending in roq/film demuxer. Add bindtextdomain() calls in load_plugins (for audio/video out plugins). CVS patchset: 2066 CVS date: 2002/06/12 12:22:25