summaryrefslogtreecommitdiffstats
path: root/cfg-mplayer.h
Commit message (Collapse)AuthorAgeFilesLines
* options, x11+cocoa: add option --cursor-autohide-delayStefano Pigozzi2012-03-251-0/+1
| | | | | | | | | | | | | | | Add option --cursor-autohide-delay to control the number of milliseconds with no user interaction before the mouse cursor is hidden. There are two negative values with useful special meanings: * A value of -1 prevents the cursor from hiding (useful for users with multiple displays). * A value of -2 prevents the cursor from showing upon activity. The default is 1 second to keep the behaviour consistent with the past X11 backend implementation. Remove the vo_mouse_autohide field as it was always true.
* options: move mixer.h options to structUoti Urpala2012-03-201-5/+4
|
* core: remove old EDL mode (--edl option)Uoti Urpala2012-03-091-1/+2
| | | | | | | | | | | | | | | Remove the old EDL implementation that was activated with the --edl option. It is mostly redundant and inferior compared to the newer demux_edl support, though currently there's no support for using the same EDL files with the new implementation and the mute functionality of the old implementation is not supported. The main reason to remove the old implementation at this point is that the mute functionality would conflict with following audio volume handling changes, and working on the old code would be a wasted effort in the long run as at some point it would be removed anyway. The --edlout functionality is kept for now, even though after this commit there is no code that could directly read its output.
* configure, build: support compiling without libpostprocUoti Urpala2012-02-271-2/+3
| | | | | | libpostproc has been removed from Libav and the library now exists as a separate project. Because it's not essential, separate it from the Libav library check and allow compiling without it.
* configure, build: remove --disable-libav supportUoti Urpala2011-12-111-4/+0
| | | | | Remove support for building the player without libavcodec and libavformat. These libraries are now always required.
* options, core/hrseek: add --hr-seek-demuxer-offsetUoti Urpala2011-11-141-0/+1
| | | | | | | | | | | Some demuxers do not accurately seek to a keyframe before a given time but instead start too late. This means that precise seeks cannot work either. Most notably the libavformat mpeg demuxer exhibits this behavior depending on the file being played (with the internal mpeg demuxer precise seeks don't work at all). Add new option --hr-seek-demuxer-offset which can be used as a workaround with such demuxers. The value of the option is subtracted from the seek target position given to the demuxer when doing a precise seek.
* libmenu: remove OSD menu functionality (--menu)Uoti Urpala2011-10-251-27/+0
| | | | | | | | | | Something like the OSD menu functionality could be useful. However the current implementation has several problems and would require a relatively large amount of work to get into good shape. As far as I know there are few users of the existing functionality. Nobody is working on the existing code and keeping it compiling at all while changing other code would require extra work. So delete the menu code and some related code elsewhere that's used by nothing else.
* video, options: implement better YUV->RGB conversion controlwm42011-10-161-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* options: --lavfdopts, --reuse-socket: remove "global" flagUoti Urpala2011-10-161-3/+3
| | | | | | --reuse-socket and --lavfdopts had the CONF_GLOBAL flag set. I see no reason why they could not be set per file. Remove the flag from both options.
* options: --pphelp: fix after libpostproc version changeUoti Urpala2011-09-041-1/+1
| | | | | | | | | | The last libpostproc major version change from 51 to 52 changed the type of the "pp_help" symbol from a pointer to help text to the help text itself. This made --pphelp crash. Change the option definition to match the new type. This probably makes it crash if compiled against older libpostproc, but the option is not important enough to try supporting that (I've seen no reports of the crash, probably people just don't use the option).
* options: add "disabled option" functionalityUoti Urpala2011-09-041-2/+2
| | | | | | | | | | | Add functionality to mark options that depend on features disabled at compile time as disabled rather than not compiling the option definitions at all. This allows printing a warning about the option not being available because of a disabled feature, instead of just "unknown option". Because the option definitions are still compiled fully, this only works for definitions that do not reference symbols which are not available if the feature is disabled. Use the new functionality for options depending on libass.
* options: move libass-related options to structUoti Urpala2011-09-031-12/+10
|
* options, subs: add --ass-vsfilter-aspect-compatharklu2011-08-121-0/+1
| | | | | | | | | Add option --ass-vsfilter-aspect-compat and corresponding property ass_vsfilter_aspect_compat. The setting controls whether to enable the emulation of traditional VSFilter behavior where subtitles are stretched if the video is anamorphic (previously always enabled for native SSA/ASS subtitles). Enabled by default. Add 'V' as a new default keybinding to toggle the property.
* options: remove old disabled options that just print an errorUoti Urpala2011-08-091-60/+1
| | | | | | | Remove several old options that were deprecated and disabled years ago and whose only effect now was to show a custom error message about the option in question being deprecated and then exit. Also remove the -vd option which was just a stupid joke and never had useful functionality.
* core: improve --loop handlingUoti Urpala2011-07-291-1/+1
| | | | | | | | Make per-file loop option start from --ss position, not always 0. Do looping in more cases; before looping was only done when encountering real end of file, now it also happens for example at --endpos or --frames limits. Also move the --ss option to the option struct.
* subs: fix per-file --ass-force-styleUoti Urpala2011-07-231-1/+1
| | | | | | | | | | | | | The --ass-force-style option was only applied when the main libass library handle was created. Thus any per-file option changes later had no effect. Do the ass_set_style_overrides() call in per-file initialization instead so that possible changes will be applied. Also move the option variable to the option struct. Current libass will crash (usually) if you set style overrides to a nonempty value, then an empty one. It'll be easier to trigger this bug after this commit, but the problem is not on mplayer2 side. The fix is trivial so hopefully there will be a fixed libass soon.
* input: rework event reading and command queuingUoti Urpala2011-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rework much of the logic related to reading from event sources and queuing commands. The two biggest architecture changes are: - The code buffering keycodes in mp_fifo.c is gone. Instead key input is now immediately fed to input.c and interpreted as commands, and then the commands are buffered instead. - mp_input_get_cmd() now always tries to read every available event from every event source and convert them to (buffered) commands. Before it would only process new events until one new command became available. Some relevant behavior changes: - Before commands could be lost when stream code called mp_input_check_interrupt() which read commands (to see if they were of types that triggered aborts during slow IO tasks) and then threw them away. This was especially an issue if cache was enabled and slow to read. Fixed - now it's possible to check whether there are queued commands which will abort playback of the current file without throwing other commands away. - mp_input_check_interrupt() now prints a message if it returns true. This is especially useful because the failures caused by aborted stream reads can trigger error messages from other code that was doing the read; the new message makes it more obvious what the cause of the subsequent error messages is. - It's now possible to again avoid making stdin non-blocking (which caused some issues) without reintroducing extra latency. The change will be done in a subsequent commit. - Event sources that do not support select() should now have somewhat lower latency in certain situations as they will be checked both before and after select()/sleep in input reading; before the sleep always happened first even if such sources already had queued input. Before the key fifo was also handled in this manner (first key triggered select, but if multiple were read then rest could be delayed; however in most cases this didn't add latency in practice as after central code started doing command handling it queried for further commands with a max sleep time of 0). - Key fifo limiting is more accurate now: it now counts actual commands intead of keycodes, and all queued keys are read immediately from input devices so they can be counted correctly. - Since keypresses are now interpreted immediately, commands which change keybindings will no longer affect following keypresses that have already been read before the command is executed. This should not be an issue in practice with current keybinding behavior.
* cleanup: silence most of the clang warningsClément Bœsch2011-07-091-3/+3
|
* options: Allow a larger range for -aspectreimar2011-07-061-1/+1
| | | | | | Based on patch by Steaphan Greene [sgreene cs.binghamton.edu] git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33688 b3059339-0415-0410-9bf9-f77b7e298cf2
* Merge branch 'mplayer1_changes'Uoti Urpala2011-05-021-1/+6
|\
| * options: Add dummy -shuffle option to show it in -list-optionsreimar2011-05-021-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Add dummy -shuffle and -noshuffle options so they appear in -list-options output. These features are not implemented as options; rather they're features of the command line parser. Also add the CONF_NOCFG flag to the existing playlist option, which is a similar placeholder for a command line parser feature. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33147 b3059339-0415-0410-9bf9-f77b7e298cf2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33148 b3059339-0415-0410-9bf9-f77b7e298cf2
| * options: add -gamma (was only accessible from slave mode before)cehoyos2011-04-131-0/+1
| | | | | | | | | | | | Patch by Kevin DeKorte, kdekorte at gmail git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33064 b3059339-0415-0410-9bf9-f77b7e298cf2
| * OSD: support displaying fractional part of current positionUoti Urpala2011-04-121-0/+1
| | | | | | | | | | | | | | | | Add option -osd-fractions which enables display of fractional seconds when showing the current playback time on OSD. Based on a patch from Christian <herr.mitterlehner@gsmpaaiml.com> but with several modifications.
* | options: merge cfg-mplayer.h and cfg-common.hClément Bœsch2011-04-201-1/+680
| | | | | | | | | | | | Remove obsolete extern declarations for demuxer_type, audio_demuxer_type, sub_demuxer_type and noconfig_opts in the process.
* | options: move sub_name, sub_auto and vobsub_name to structClément Bœsch2011-04-201-1/+1
|/
* options: remove CONF_OLD option flagUoti Urpala2011-01-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The resulting semantics of this flag are weird enough that they're unlikely to be what is wanted in any situation. Remove the flag and convert the two options using it, -screenw and -screenh, to use CONF_NOSAVE instead. I'm not sure why those specific options had the flag and if any flag is really needed, but I don't want to check in detail now and using CONF_NOSAVE should keep about the same behavior in practice. A bit more detail about the weird behavior this flag had: When not using file groups, the flag had the same behavior as CONF_NOSAVE, namely that when switching files the option would not be reset to the global value (only possible file-specific settings were applied). When using file groups, group-specific options would apply to the _first two_ files in the group, but for the rest after the first two, settings would not be reset when changing files (wtf?). This was a result of the following sequence: 1) push higher-level settings, enter group 2) apply group-specific settings 3) push settings before applying ones specific to file 1 in group 4) apply file 1 settings, play file 1 5) pop settings to return to group settings 6) push settings before applying ones specific to file 2 7) apply file 2 settings 8) pop settings Here the option was set at 2). 3) saved it because it had been set after last push, so 5) restored the setting and it was used for file 2 too. However 6) no longer saved it because there had been pushes after the original setting in 2), thus 8) no longer restored the setting and the option was no longer forced to any particular value when playing further files after that.
* options: mark -fs with CONF_NOSAVE to keep state between filesUoti Urpala2011-01-311-1/+1
| | | | | | | | | | | Most of the time users want to keep current fullscreen state when switching to another file, rather than always resetting to the global default that was determined when the command line was parsed. Add the CONF_NOSAVE flag to the -fs option to achieve this. The change means that the fullscreen state from the previous file is kept unless there is an explicit file-specific -fs or -nofs setting for the new file (or in case file groups are used, moving to the new file enters a group with explicitly specified state).
* options: remove unused "func_full" option typeUoti Urpala2011-01-311-12/+0
| | | | | | vo_zr was the last user of the "func_full" option type. I think it's better if future features are implemented using more straightforward option functionality. Delete the func_full implementation.
* vo_zr2: drop Zoran supportUoti Urpala2011-01-311-6/+0
| | | | | | | 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.
* vo_dxr2, ao_dxr2: drop dxr2 supportUoti Urpala2011-01-311-6/+0
| | | | | | dxr2 support had been broken quite a while and nobody noticed. There were finally commits to fix it in the svn repo, but rather than apply those I'll just drop dxr2 support.
* vidix: drop VIDIX supportUoti Urpala2011-01-311-1/+0
| | | | | | | | | | | | | By now VIDIX is too obscure to justify the amount of code and complexity it requires in the sources. Although there is no pressing need to drop it just now from a code point of view, I'll rather remove it before release than release with VIDIX support and then drop it later. Some of the manpage mentions of VIDIX were in "this option supported for these VOs" lists that looked outdated and failed to mention vdpau for example. Replace such incorrect lists with a generic "not supported for all VOs" mention.
* Merge branch 'sub'Uoti Urpala2011-01-261-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sub: sub/OSD: move some related files to sub/ subtitles: options: enable -ass by default subtitles: change default libass rendering style demux_mkv, chapters: change millisecond arithmetic to ns cleanup: rename ass_* functions to mp_ass_* subs: use correct font aspect ratio for libass + converted subs cleanup: some random minor code simplification and cleanup vf_vo: fix EOSD change detection bug sd_ass: remove subreader use, support plaintext markup subtitles: style support for common SubRip tags and MicroDVD core: ordered chapters: fix bad subtitle parameter subs/demux: don't try to enable sub track when creating it subtitles/demux: store duration instead of endpts in demux packets subtitles: add framework for subtitle decoders options: add special -leak-report option subtitles: remove code trying to handle text subs with libavcodec cleanup: move MP_NOPTS_VALUE definition to mpcommon.h subtitles: move global ass_track to struct osd_state core: move most mpcommon.c contents to mplayer.c core: move global "subdata" and "vo_sub_last" to mpctx subtitles: remove sub_last_pts hack options: move -noconfig to option struct, simplify
| * options: add special -leak-report optionUoti Urpala2011-01-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Add a special option "-leak-report" that enables talloc leak reporting. It only works if it's given as the first argument. The code abuses the CONF_TYPE_PRINT option type to make main option parsing ignore the option. The parser incorrectly consumed the following commandline argument as a "parameter" for options of this type when they had the flag to not exit after printing the message. Fix this. It makes no difference for any previously existing option I think.
* | cleanup: remove unused MEncoder-related codeClément Bœsch2011-01-251-2/+0
|/ | | | | Remove some code and variables that were no longer used after MEncoder removal. Also remove some MEncoder references in comments.
* core: add support for precise non-keyframe-limited seeksUoti Urpala2010-12-201-0/+2
| | | | | | | | | | | | | Add support for seeking to an arbitrary non-keyframe position by decoding video starting from the previous keyframe. Whether to use this functionality when seeking is controlled by the new option -hr-seek and a new third argument to the "seek" command. The default is to use it for absolute seeks (like chapter seeks) but not for relative ones. Because there's currently no support for cutting encoded audio some desync is expected if encoded audio passthrough is used. Currently precise seeks always go to the first frame with timestamp equal to or greater than the target position; there's no support for "matching or earlier" backwards seeks at frame level.
* options: add "choice" option type, use for -pts-association-modeUoti Urpala2010-12-181-1/+2
| | | | | | | | | | | | | Add a "choice" option type. Options of this type take a string as input and set an int option variable to the value corresponding to the string. The string->int mapping is option-specific and is given in the option definition. Strings not found in the mapping are rejected as invalid option values. Change the option -pts-association-mode to use this new option type and accept values "auto, decoder, sort" instead of "0, 1, 2". The change in accepted values shouldn't cause problems as this option is not appropriate to use in normal user config files.
* core: ordered chapters: add heuristic for merging inaccurate chaptersUoti Urpala2010-11-261-0/+1
| | | | | | | | | | Some Matroska files have inaccurate ordered chapter endpoints, and so parts where one chapter should end and the next begin at the same timestamp were not merged. This resulted in an unnecessary seek over a minimal distance. Add a heuristic to merge parts with a minimal gap or overlap between them. Based on patch by Hector Martin <hector@marcansoft.com>.
* options: more mplayer.c options moved to option structClément Bœsch2010-11-141-11/+8
| | | | | | Following options were moved: autoq, benchmark, [no]term-osd, term-osd-esc, playing-msg, [no]idle, [no]consolecontrols, list-properties.
* options: move various mplayer.c options to option structClément Bœsch2010-11-131-6/+5
| | | | | Following options were moved: [no]quiet, [no]autosync, softsleep, [no]rtc, rtc-device.
* core: do initial A-V sync by modifying audio streamUoti Urpala2010-11-131-0/+1
| | | | | | | Add code to enforce matching pts with video when (re)starting the audio stream, by either cutting away the first samples or inserting silence at the beginning. New option -noinitial-audio-sync can be used to disable this and return to old behavior.
* audio: add -gapless-audio optionUoti Urpala2010-11-121-2/+3
| | | | | | | | | If the option is enabled and all audio has been buffered to the AO, then the player will move to the next file without waiting for the buffered audio to drain, while leaving the AO initialized. If the playback of the next file starts quickly enough (before the AO buffer empties) then it should continue writing audio to the same AO with no gap in between.
* options: add OPT_MAKE_FLAGS macro, creates "opt/noopt" flag pairClément Bœsch2010-11-041-16/+8
|
* options: move -name and -title to option structClément Bœsch2010-11-041-2/+2
|
* Add a simple capture feature (-capture)Uoti Urpala2010-11-021-0/+3
| | | | | | | | | | | | | | | | | If a specified key is pressed during playback, the current stream is captured to a file, similar to what -dumpstream achieves. original patch by Pásztor Szilárd, don tricon hu Taken from the following svn commits, but with several fixes and modifications (one obvious user-visible difference is that the default key binding is 'C', not 'c'): git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32524 b3059339-0415-0410-9bf9-f77b7e298cf2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32529 b3059339-0415-0410-9bf9-f77b7e298cf2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32530 b3059339-0415-0410-9bf9-f77b7e298cf2
* options: move -dumpfile to option structUoti Urpala2010-11-021-1/+1
|
* cfg-mplayer.h: Remove old obsolete warning about dfboptsdiego2010-11-021-5/+0
| | | | | | The DIRECTFBVERSION macro that it depends on has been removed. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32281 b3059339-0415-0410-9bf9-f77b7e298cf2
* cfg-common*: Replace common options template by a common options arraydiego2010-11-021-6/+0
| | | |