aboutsummaryrefslogtreecommitdiffhomepage
path: root/libmpcodecs/vd.c
Commit message (Collapse)AuthorAge
* configure, build: remove --disable-libav supportGravatar Uoti Urpala2011-12-11
| | | | | Remove support for building the player without libavcodec and libavformat. These libraries are now always required.
* libvo: remove title argument from struct vo_driver.configGravatar wm42011-12-06
| | | | | | | | | | This affects only the "new" VO API. The config() title argument was barely used, and it's hardcoded to "MPlayer" in vf_vo.c. The X11 and the Cocoa GUI backends, which are the only ones properly supporting window titles, ignored this argument. Remove the title argument. Add the vo_get_window_title function. All GUI VOs are supposed to use it for the window title.
* video, options: implement better YUV->RGB conversion controlGravatar wm42011-10-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rewrite control of the colorspace and input/output level parameters used in YUV-RGB conversions, replacing VO-specific suboptions with new common options and adding configuration support to more cases. Add new option --colormatrix which selects the colorspace the original video is assumed to have in YUV->RGB conversions. The default behavior changes from assuming BT.601 to colorspace autoselection between BT.601 and BT.709 using a simple heuristic based on video size. Add new options --colormatrix-input-range and --colormatrix-output-range which select input YUV and output RGB range. Disable the previously existing VO-specific colorspace and level conversion suboptions in vo_gl and vo_vdpau. Remove the "yuv_colorspace" property and replace it with one named "colormatrix" and semantics matching the new option. Add new properties matching the options for level conversion. Colorspace selection is currently supported by vo_gl, vo_vdpau, vo_xv and vf_scale, and all can change it at runtime (previously only vo_vdpau and vo_xv could). vo_vdpau now uses the same conversion matrix generation as vo_gl instead of libvdpau functionality; the main functional difference is that the "contrast" equalizer control behaves somewhat differently (it scales the Y component around 1/2 instead of around 0, so that contrast 0 makes the image gray rather than black). vo_xv does not support level conversion. vf_scale supports range setting for input, but always outputs full-range RGB. The value of the slave properties is the policy setting used for conversions. This means they can be set to any value regardless of whether the current VO supports that value or whether there currently even is any video. Possibly separate properties could be added to query the conversion actually used at the moment, if any. Because the colorspace and level settings are now set with a single VF/VO control call, the return value of that is no longer used to signal whether all the settings are actually supported. Instead code should set all the details it can support, and ignore the rest. The core will use GET_YUV_COLORSPACE to check which colorspace details have been set and which not. In other words, the return value for SET_YUV_COLORSPACE only signals whether any kind of YUV colorspace conversion handling exists at all, and VOs have to take care to return the actual state with GET_YUV_COLORSPACE instead. To be changed in later commits: add missing option documentation.
* vd_ffmpeg: autoselect output colorspaces without codecs.confGravatar Uoti Urpala2011-06-26
| | | | | | | | | | | | | Selecting the colorspace to output from a decoder is done in the function mpcodecs_config_vo(). Add a new version of this function, mpcodecs_config_vo2(), that allows the decoder to specify a list of candidate colorspaces instead of always using a hardcoded list specified in the codecs.conf entry. If the codecs.conf entry has any "out" lines then those still take priority and the decoder-provided list (if any) is ignored. Make vd_ffmpeg provide a list of the colorspaces it's willing to output. Remove "out" lines from most entries for libavcodec video decoders in codecs.conf, so that the automatic values are now used instead.
* libmpeg2: drop libmpeg2 supportGravatar Uoti Urpala2011-02-01
| | | | | libavcodec mpeg2 decoder has been the default for a while and seems to work fine.
* vo_zr2: drop Zoran supportGravatar Uoti Urpala2011-01-31
| | | | | | | There were multiple files specific to Zoran support, and they also depended on internal FFmpeg headers (so it would probably have been hard to get them to compile now even if you tried). It's obsolete now, so just drop the whole mess.
* build: enable/disable all FFmpeg libraries togetherGravatar Uoti Urpala2010-11-02
| | | | | | | | | Enable all of libavcodec, libavformat, libswscale, and libpostproc together (libavutil is always required). based on svn commit by diego: git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32226 b3059339-0415-0410-9bf9-f77b7e298cf2
* Delete things related to old translation systemGravatar Uoti Urpala2010-03-10
| | | | | Remove the help/ subdirectory, configure code to create toplevel help_mp.h, and all the '#include "help_mp.h"' lines from .c files.
* Merge svn changes up to r30463Gravatar Uoti Urpala2010-03-09
|\ | | | | | | | | | | 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.
| * Add missing license headers to all files in the libmpcodecs directory.Gravatar diego2010-01-30
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30463 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30419Gravatar Uoti Urpala2010-01-25
|\|
| * Remove any auto-inserted lavc filter.Gravatar reimar2010-01-22
| | | | | | | | | | | | | | | | Makes sure it will not be around if we e.g. try again with a different codec, which can lead to -vo null being excessively slow. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30391 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r29752Gravatar Uoti Urpala2009-10-06
|\| | | | | | | | | | | | | | | | | As part of merging subtitle-in-terminal changes make update_subtitles() only clear existing subtitles if called with the reset argument, and not try to set new ones. Later calls should set the needed new subtitles, and this change avoids some problems with trying to set subtitles when mp_property_sub() in command.c gets called from initialization code before full initialization.
| * Reduce console output verbosity: Move colorspace information to verbose mode.Gravatar diego2009-09-30
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29742 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Translation system changes part 2: replace macros by stringsGravatar Amar Takhar2009-07-07
| | | | | | | | | | Replace all MSGTR_ macros in the source by the corresponding English string.
* | Translation system changes part 1: wrap translated stringsGravatar Amar Takhar2009-07-07
| | | | | | | | | | Replace mp_msg() calls which have a translated string as the format argument with mp_tmsg and add _() around all other translated strings.
| * whitespace cosmetics: Remove all trailing whitespace.Gravatar diego2009-05-13
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29305 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove unnecessary malloc.h #includes and related #ifdeffery.Gravatar diego2009-04-02
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29126 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r28951Gravatar Uoti Urpala2009-03-14
|\|
| * Remove internal NuppelVideo decoder, the code in libavcodec can decodeGravatar reimar2009-03-08
| | | | | | | | | | | | | | those files and some more and is far more maintainable. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28888 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add some "const" to mpcodecs_vd_driversGravatar reimar2009-03-06
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28861 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r28641Gravatar Uoti Urpala2009-02-18
|\| | | | | | | | | | | | | | | Convert vo_x11_border (used in vo_gl/gl2 though the vo_gl_border macro) to use a wrapper macro in old-style VOs which do not provide a VO object argument. Before this function had an explicit global_vo argument in vo_gl/gl2. New vo_vdpau uses it too so use the same mechanism as most other functions.
| * Make it possible for mpcodecs_get_image to return NULL as theGravatar reimar2009-02-17
| | | | | | | | | | | | | | documentation says it should instead of crashing. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28638 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Convert HAVE_MALLOC_H into a 0/1 definition, fixes the warning:Gravatar diego2009-02-17
| | | | | | | | | | | | | | mem.c:32:5: warning: "HAVE_MALLOC_H" is not defined git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28629 b3059339-0415-0410-9bf9-f77b7e298cf2
* | vd.c: Remove pointless SCREEN_SIZE_[XY] #definesGravatar Uoti Urpala2008-10-25
| | | | | | | | | | The #defines look like they're pointless leftovers from removed code so remove them too.
* | Merge svn changes up to 27824Gravatar Uoti Urpala2008-10-25
|\| | | | | | | | | | | | | | | | | | | Conflicts: cfg-common-opts.h libmpcodecs/dec_video.c libmpcodecs/vd.c libvo/x11_common.h mplayer.c stream/cache2.c
| * Move SCREEN_SIZE_X/Y definition to libmpcodecs/vd.c where it is used.Gravatar diego2008-10-16
| | | | | | | | | | | | | | config.h should only contain option definitions, no logic. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27785 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r27441Gravatar Uoti Urpala2008-08-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: cfg-common-opts.h command.c configure input/input.c libmpcodecs/dec_video.c libmpcodecs/vd.c libmpdemux/stheader.h libvo/sub.c libvo/video_out.c libvo/vo_xv.c libvo/vosub_vidix.c libvo/x11_common.c libvo/x11_common.h mp_core.h mplayer.c stream/stream.h
| * Rename preprocessor directives related to image libraries.Gravatar diego2008-08-05
| | | | | | | | | | | | | | Change a HAVE_ prefix to a CONFIG_ prefix. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27417 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Change a bunch of video/audio-output-specific preprocessor directives fromGravatar diego2008-08-03
| | | | | | | | | | | | | | a HAVE_ prefix to a CONFIG_ prefix. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27402 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r27399Gravatar Uoti Urpala2008-08-02
|\| | | | | | | | | | | | | | | | | | | Conflicts: libmpcodecs/vd.c libmpcodecs/ve_raw.c libvo/video_out.c libvo/x11_common.c mplayer.c
| * Change a bunch of codec-specific preprocessor directives from a HAVE_Gravatar diego2008-08-02
| | | | | | | | | | | | | | prefix to a CONFIG_ prefix. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27395 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r27374Gravatar Uoti Urpala2008-07-30
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: cfg-common-opts.h cfg-mplayer.h command.c configure libmpcodecs/dec_video.c libmpcodecs/vd.c libmpcodecs/vf_vo.c libmpdemux/demuxer.h libmpdemux/stheader.h mp_core.h mplayer.c stream/stream_radio.c
| * Start unifying names of internal preprocessor directives.Gravatar diego2008-07-30
| | | | | | | | | | | | | | | | Replace all USE_ prefixes by CONFIG_ prefixes to indicate options which are configurable. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27373 b3059339-0415-0410-9bf9-f77b7e298cf2
* | vd.c: Make extern decoder declarations constGravatar Uoti Urpala2008-04-26
| | | | | | | | | | | | The earlier commit "Make video decoder description structs const" made the definitions const but didn't change the extern declarations in vd.c to match. Fix those to be const too.
* | Move vo_gamma_* to options structGravatar Uoti Urpala2008-04-26
| |
* | Make video decoder description structs constGravatar Uoti Urpala2008-04-25
| | | | | | | | | | | | This makes the per-decoder struct vd_functions and its ->info struct constants. Same for the mpcodecs_vd_drivers[] table of pointers to those structs.
* | Move vd_use_slices to options structGravatar Uoti Urpala2008-04-25
| |
* | Remove global vo_flagsGravatar Uoti Urpala2008-04-25
| | | | | | | | Move the information to struct sh_video field.
* | vd.c: Cosmetic changes + remove malloc.hGravatar Uoti Urpala2008-04-25
| | | | | | | | | | Adjust formatting slightly and remove some comments. Also remove "#include malloc.h" which seems completely irrelevant.
* | Reformat vd.cGravatar Uoti Urpala2008-04-25
| | | | | | | | | | "indent -kr -l79 -nut dec_video.c --ignore-newlines vd.c", fix two "sh_video_t * sh" to "sh_video_t *sh" by hand.
* | Move movie_aspect to options structGravatar Uoti Urpala2008-04-25
| |
* | Move screen_size_xy to options structGravatar Uoti Urpala2008-04-25
| |
* | Move opt_screen_size_[x|y] to options structGravatar Uoti Urpala2008-04-25
| |
* | Move flip and softzoom to options structGravatar Uoti Urpala2008-04-25
| |
* | Move vidmode to options structGravatar Uoti Urpala2008-04-25
| |
* | Move fullscreen to options structGravatar Uoti Urpala2008-04-25
| |
* | Store video decoder functions in struct sh_video fieldGravatar Uoti Urpala2008-04-25
| | | | | | | | | | | | Remove the global variable mpvdec and move the video decoder pointer to struct sh_video field vd_driver. Audio already had a similar ad_driver field from before.
* | Remove _s/_st suffix from some struct namesGravatar Uoti Urpala2008-04-25
| | | | | | | | | | Since the names are always used after the keyword "struct" having a suffix as in "struct demuxer_st" is almost completely pointless.
* | Add option pointer to vf structGravatar Uoti Urpala2008-04-23
|/