summaryrefslogtreecommitdiff
path: root/src/video_out/video_out_opengl.c
AgeCommit message (Collapse)Author
2008-05-09Use size_t to keep the value returned by strlen().Diego 'Flameeyes' Pettenò
When using a variable to store the result of strlen(), make sure its type is size_t just like the function returns, rather than using a smaller type like int. --HG-- extra : transplant_source : %B0%D5%3B%D7%1Dy%0A%7E%7D%7C%023%08%B2%CE%D3t%0B3%D7
2008-05-09Remove a new bunch of xine_malloc() calls.Diego 'Flameeyes' Pettenò
Also don't reset memory after it's allocated if we do that with calloc.
2008-05-07Replace strn?cpy() + strn?cat() calls with a?sprintf().Diego 'Flameeyes' Pettenò
Instead of creating strings through a series os string copy and concatenations, use directly the appropriate printf-like function.
2008-05-07xine_xmalloc() deprecation: replace its use with static and non-zero size.Diego 'Flameeyes' Pettenò
The xine_xmalloc() function is going to be deprecated, as its behaviour is rarely needed as such, and it's thus misused. With this, almost all uses of xine_xmalloc() with static size (for instance the value returned by sizeof()) or with a size that is guaranteed not to be zero (like strlen()+1) are replaced with calls to either calloc(1, ...) or malloc(). malloc() is used whenever the allocated memory is going to be immediately overwritten, while calloc() is used in every other case, as it sets the whole memory area to zero. --HG-- extra : transplant_source : %8F%98%EC%02%1E%83%F0s%06X%83C%205Y%80%B12%CC%E1
2007-11-10Delete most of the CVS $Id$/$Log$ lines.Darren Salt
--HG-- extra : transplant_source : %E0%D0%C5%8B%BEU%DD%24%5D7%1F%ADV%AD%EB%23%CBU%80%EB
2007-11-09Update FSF address on non-contributed code and COPYING files.Diego 'Flameeyes' Pettenò
For contributed code, leave whatever the version we last synced for is using to make simpler future syncs.
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