summaryrefslogtreecommitdiffstats
path: root/options
Commit message (Collapse)AuthorAgeFilesLines
* cache: change auto-pause/resume defaultswm42014-06-231-2/+2
| | | | | | This is hopefully better for web streams. Temporary workaround for #870.
* video: Support BT.2020 constant luminance systemNiklas Haas2014-06-221-1/+2
| | | | Signed-off-by: wm4 <wm4@nowhere>
* options: Expose --colormatrix-primaries to the userNiklas Haas2014-06-222-0/+7
| | | | Signed-off-by: wm4 <wm4@nowhere>
* video: Add BT.2020-NCL colorspace and transfer functionNiklas Haas2014-06-221-0/+1
| | | | Source: http://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.2020-0-201208-I!!PDF-E.pdf
* win32: add missing priority classesJames Ross-Gowan2014-06-221-0/+2
|
* stream: add a file cachewm42014-06-222-0/+5
| | | | | | | | | For remarks, pretty much see the manpage additions. Could help with network streams that require too much seeking (maybe), or might be extended to help with the use case of watching and downloading a file at the same time. In general, it might be a useless feature and could be removed again.
* options: allow adding multiple files with --audio-filewm42014-06-182-2/+2
| | | | At least 1 person expected that this works this way.
* sub: add --sub-scale-with-window optionwm42014-06-142-0/+2
| | | | Implements the feature requested in #839 and #186.
* options: remove some more stuffwm42014-06-134-39/+15
| | | | | | | | The "classic" sub-option stuff is not really needed anymore. The only remaining use can be emulated in a simpler way. But note that this breaks the --screenshot option (instead of the "flat" options like --screenshot-...). This was undocumented and discouraged, so it shouldn't affect anyone.
* options: remove some unneeded stuffwm42014-06-133-28/+21
| | | | | No options pointing to global variables are in use anymore, so that part can be removed.
* command: redo the property typewm42014-06-132-57/+86
| | | | | | | | | | | | | | | | | | | | | | | Instead of absuing m_option to store the property list, introduce a separate type for properties. m_option is still used to handle data types. The property declaration itself now never contains the option type, and instead it's always queried with M_PROPERTY_GET_TYPE. (This was already done with some properties, now all properties use it.) This also fixes that the function signatures did not match the function type with which these functions were called. They were called as: int (*)(const m_option_t*, int, void*, void*) but the actual function signatures were: int (*)(m_option_t*, int, void*, MPContext *) Two arguments were mismatched. This adds one line per property implementation. With additional the reordering of the parameters, this makes most of the changes in this commit.
* options: remove OPT_FLAG_CONSTANTSwm42014-06-133-24/+15
| | | | | | | This means use of the min/max fields can be dropped for the flag option type, which makes some things slightly easier. I'm also not sure if the client API handled the case of flag not being 0 or 1 correctly, and this change gets rid of this concern.
* options: remove use of an inverted option valuewm42014-06-132-4/+3
| | | | | Now MPOpts.sub_fix_timing corresponds to the commandline switch directly, instead of storing the inverted value.
* options: turn --idx, --forceidx into --indexwm42014-06-133-5/+5
| | | | | | | | | | | | Also clarify the semantics. It seems --idx didn't do anything. Possibly it used to change how the now removed legacy demuxers like demux_avi used to behave. Or maybe it was accidental. --forceidx basically becomes --index=force. It's possible that new index modes will be added in the future, so I'm keeping it extensible, instead of e.g. creating --force-index.
* win32: implement --priority differentlywm42014-06-122-6/+15
| | | | | | | Does anyone actually use this? For now, update it, because it's the only case left where an option points to a global variable (and not a struct offset).
* options: fix for compilation when encoding disabledxylosper2014-06-121-1/+1
| | | | | HAVE_* flags are always defined so ifdef will never work. They should be checked with their values.
* encode: make option struct localwm42014-06-112-46/+6
| | | | Similar to previous commits.
* input: make option struct localwm42014-06-112-34/+3
| | | | | | | | | Similar to previous commits. This also renames --doubleclick-time to --input-doubleclick-time, and --key-fifo-size to --input-key-fifo-size. We could keep the old names, but these options are very obscure, and renaming them seems better for consistency.
* demux_lavf: make option struct localwm42014-06-112-18/+3
| | | | Similar to previous commits.
* ad_lavc: make option struct localwm42014-06-112-15/+3
| | | | Similar to previous commit.
* vd_lavc: make option struct localwm42014-06-112-17/+3
| | | | | Removes specifics from options.h and options.c, and puts everything into vd_lavc.c.
* options: remove a global variablewm42014-06-112-5/+5
| | | | This is probably the last one, at least with my current configuration.
* Add more constwm42014-06-111-2/+2
| | | | | | | While I'm not very fond of "const", it's important for declarations (it decides whether a symbol is emitted in a read-only or read/write section). Fix all these cases, so we have writeable global data only when we really need.
* demux_raw: remove global option variableswm42014-06-112-6/+7
|
* demux_mf: remove global option variableswm42014-06-112-9/+7
|
* options: remove global variables for swscale options; rename themwm42014-06-112-22/+5
| | | | | | Additionally to removing the global variables, this makes the options more uniform. --ssf-... becomes --sws-..., and --sws becomes --sws- scaler. For --sws-scaler, use choices instead of magic integer values.
* stream_dvd, stream_dvdnav, stream_bluray: remove global option variableswm42014-06-112-5/+13
|
* stream_dvb: remove global option variableswm42014-06-112-2/+3
|
* stream_cdda: remove global option variableswm42014-06-112-3/+6
|
* stream_pvr: remove global option variableswm42014-06-112-26/+3
|
* tv: remove global option variableswm42014-06-112-60/+4
| | | | | | Pretty much nothing changes, but using -tv-scan with suboptions doesn't work anymore (instead of "-tv-scan x" it's "-tv scan-x" now). Flat options ("-tv-scan-x") stay compatible.
* m_config: add function to copy subopt-structwm42014-06-112-0/+43
|
* audio: add a "weak" gapless mode, and make it defaultwm42014-06-091-1/+4
| | | | | | | | | | | | | | Basically, this allows gapless playback with similar files (including the ordered chapter case), while still being robust in general. The implementation is quite simplistic on purpose, in order to avoid all the weird corner cases that can occur when creating the filter chain. The consequence is that it might do not-gapless playback in more cases when needed, but if that bothers you, you still can use the normal gapless mode. Just using "--gapless-audio" or "--gapless-audio=yes" selects the old mode.
* player: show "neutral" position markers for OSD barswm42014-06-081-0/+5
| | | | This commit implements them for volume and some video properties.
* options: change --sub-file behaviorwm42014-06-083-1/+41
| | | | | | | | | | | | | | | | | | | --sub-file is actually a string list, so you can add multipel external subtitle files. But to be able to set a list, the option value was split on ",". This made it impossible to add filenames. One possible solution would be adding escaping. That's probably a good idea (and some other options already do this), but it's also complicated both to implement and for the user. The simpler solution is making --sub-file appending, and make it take only a single entry. I'm not quite sure about this yet. It breaks the invariant that if a value is printed and parsed, you get the same value back. So for now, just go with the simple solution. Fixes #840.
* sub: remove old style override optionwm42014-06-051-1/+1
| | | | Didn't work too well.
* sub: add --ass-style-override=force optionwm42014-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (The old "force" choice of that option is renamed to "force-default".) This allows overriding native ASS script subtitle styles with the style provided by the --sub-text-* options (like --sub-text-font etc.). This is disabled by default, and needs to be explicitly enabled with the --ass-style-override=force option and input property. This uses in fact exactly the same options (--sub-text-*) and semantics as the ones used to configure unstyled text subtitles. It's recommended to combine this with this in the mpv config file: ass-force-style="ScaledBorderAndShadow=1" # work around dumb libass behavior Also, adding a key binding to toggle this behavior should be added, because overriding can easily break: L cycle ass-style-override This would cycle override behavior on Shift+L and allows quickly disabling/enabling style overrides. Note: ASS should be considered a vector format rather than a subtitle format. There is no easy or reliable way to determine whether the style of a given subtitle event can be changed without destroying visuals or not. This patch relies on a simple heuristic, which often works and often breaks.
* player: write file name to the watch later config fileAlessandro Ghedini2014-06-012-0/+2
| | | | | | | | | This simply writes the file name as a comment to the top of the watch later config file. It can be useful to the user for determining whether a watch later config file can be manually removed (e.g. in case the corresponding media file has been deleted) or not.
* m_option: use isfinite() instead of isnormal()wm42014-06-011-1/+1
| | | | | | This accidentally rejected d==0. We can actually deal with sub-normals fine, we just want to exclude nan and infinity (although infinity is already accounted for, but anyway).
* video: add --video-rotate option for controlling auto-rotationwm42014-05-242-0/+4
|
* stream: kill start_pos, remove --sb optionwm42014-05-242-3/+0
| | | | | | | | | | | | | | | | | | | | stream.start_pos was needed for optical media only, and (apparently) not for very good reasons. Just get rid of it. For stream_dvd, we don't need to do anything. Byte seeking was already removed from it earlier. For stream_cdda and stream_vcd, emulate the start_pos by offsetting the stream pos as seen by the rest of mpv. The bits in discnav.c and loadfile.c were for dealing with the code seeking back to the start in demux.c. Handle this differently by assuming the demuxer is always initialized with the stream at start position, and instead seek back if initializing the demuxer fails. Remove the --sb option, which worked by modifying stream.start_pos. If someone really wants this option, it could be added back by creating a "slice" stream (actually ffmpeg already has such a thing).
* input: allow disabling window dragging with --no-window-draggingwm42014-05-202-0/+4
| | | | Requested in github issue #608.
* cache: redo options and default settingswm42014-05-203-21/+26
| | | | | | | | | | | | Some options change from percentages to number of kilobytes; there are no cache options using percentages anymore. Raise the default values. The cache is now 25000 kilobytes, although if your connection is slow enough, the maximum is probably never reached. (Although all the memory will still be used as seekback-cache.) Remove the separate --audio-file-cache option, and use the cache default settings for it.
* options: unify code for setting string and "raw" optionswm42014-05-182-43/+94
| | | | | | | | | The code paths for setting options by string and by direct "raw" value were too different, which resulted in some weird code. Make the code paths closer to each other. Also, use this to remove the weirdness in the mpv_set_option() implementation.
* x11: replace--[x11-]fstype option with --x11-netwmwm42014-05-162-2/+3
| | | | | Simplifies the code a lot. You can still use --x11-netwm=no to disable NetWM for whatever reasons.
* player: reorganize how lua scripts are loadedwm42014-05-131-0/+2
| | | | | | Make loading of scripts independent of Lua. Move some of the loading code from lua.c to scripting.c, and make it easier to add new scripting backends.
* options: add --hr-seek-framedrop optionwm42014-05-072-0/+3
| | | | | | | | This allows disabling of decoder framedrop during hr-seek. It's basically another useless option, but it will help exploring whether this framedropping really makes seeking faster, or whether disabling it helps with precise seeking (especially frame backstepping).
* vo: remove old stuffwm42014-05-061-2/+0
|
* options: fix "-" (stdin) inputwm42014-05-061-1/+1
| | | | | Input through stdin requires disabling the terminal layer, and commit 32c63f forgot to rename the option correctly.
* options: print replacement for renamed/replaced optionswm42014-05-051-1/+87
| | | | | | | | | Basically, extract the option table from DOCS/man/en/changes.rst, and search the table if an option wasn't found. If there's an entry about it, print it. Hopefully this behavior is slightly more userfriendly. This is strictly bound to option names. It doesn't work for option values, nor does it attempt to emulate the old option.
* options: let unknown option case be handled by final option parserwm42014-05-052-9/+6
| | | | | | | If an option is completely missing, let m_config_parse_option() handle this case, instead of erroring out early. Needed for the following commit.
* options: merge ---sub-auto-match with --sub-autowm42014-05-042-5/+3
| | | | There's no reason why these should be separate.
* options: remove deprecated --identifyMartin Herkt2014-05-042-2/+0
| | | | | | | Also remove MSGL_SMODE and friends. Note: The indent in options.rst was added to work around a bug in ReportLab that causes the PDF manual build to fail.
* options: remove obsolete --fsmode-dontuseMartin Herkt2014-05-042-4/+0
|
* options: rename device-specific optionsMartin Herkt2014-05-041-2/+2
| | | | | --dvdangle → --dvd-angle --tvscan → --tv-scan
* options: rename msg-related optionsMartin Herkt2014-05-041-6/+6
| | | | | | | | | --msgcolor → --msg-color --msglevel → --msg-level --msgmodule → --msg-module --msgtime → --msg-time (also document this one) --playing-msg → --term-playing-msg --status-msg → --term-status-msg
* options: rename video-related options/propertiesMartin Herkt2014-05-042-6/+6
| | | | | | | | | | | Renamed options: --aspect → --video-aspect --fstype → --x11-fstype --native-fs → --fs-missioncontrol --name → --x11-name Renamed properties: aspect → video-aspect
* options: rename audio-related options/propertiesMartin Herkt2014-05-041-5/+5
| | | | | | | | | | | | | Renamed options: --audiofile → --audio-file --audiofile-cache → --audio-file-cache --channels → --audio-channels --format → --audio-format --srate → --audio-samplerate Renamed properties: samplerate → audio-samplerate channels → audio-channels
* options: rename subtitle-related optionsMartin Herkt2014-05-041-6/+6
| | | | | | | | | --ass → --sub-ass --autosub → --sub-auto --autosub-match → --sub-auto-match --sub → --sub-file --subcp → --sub-codepage --subfps → --sub-fps
* options: rename input-related optionsMartin Herkt2014-05-043-5/+5
| | | | | | | | | | | --ar → --input-appleremote --consolecontrols → --input-terminal --media-keys → --input-media-keys --joystick → --input-joystick --lirc → --input-lirc --lircconf → --input-lirc-conf --mouse-movements → --input-cursor --right-alt-gr → --input-right-alt-gr
* command: allow native access to "vf" propertywm42014-04-241-0/+101
| | | | | | This allows client API users and Lua scripts to side-step the pretty horrible video filter string "language" (although it's back and can't be avoided when using libavfilter).
* client API: make mpv_set_option set options nativelywm42014-04-222-23/+26
| | | | | | | | | | | | | | | | | | | | | | | | This should fix some issues, such as not being able to set the "no-video" option with MPV_FORMAT_FLAG. Note that this changes semantics a bit. Now setting an option strictly overwrite it, even if the corresponding command line option does not. For example, if we change --sub to append by default, then setting the "sub" option via the client API would still never append. (Oddly, this also applies to --vf-add, which will overwrite the old value when using the client API.) I'm doing this because there's no proper separation between the command line parser and setting an option using the MPV_FORMAT_STRING format. Maybe the solution to this mess would be adding format aware code (i.e. m_option_set_node) to every option type, and falling back to strings only if needed - but this would mean that you couldn't set e.g. an integer option using MPV_FORMAT_STRING, which doesn't seem to be ideal either. In conclusion, the current approach seems to be most robust, but I'm open to suggestions should someone find that these semantics are a problem.
* build: glob() is always availablewm42014-04-221-2/+0
| | | | | | | | | glob() is mandated by POSIX. For the only non-POSIX platform we support, Windows, we have our own replacement. So the ifdeffery is not needed. Still leave the checks in the configure scripts, because they have to decide whether to compile the replacement or not. (Although this could be special cased to mingw-only, the wscript seems to make this hard.)
* parse_commandline: glob filenames on WindowsJames Ross-Gowan2014-04-211-2/+26
| | | | | | The Windows port uses CommandLineToArgvW, which doesn't expand wildcards in command line arguments. Use glob to expand them instead, but only for non-option arguments.
* encode: don't apply default config optionswm42014-04-194-14/+12
| | | | | | | | | | | | Often, user configs set options that are not suitable for encoding. Usually, playback and encoding are pretty different things, so it makes sense to keep them strictly separate. There are several possible solutions. The approach taken by this commit is to basically ignore the default config settings, and switch to an [encoding] config profile section instead. This also makes it impossible to have --o in a config file, because --o enables encode mode. See github issue #727 for discussion.
* player: add a --loop-file optionwm42014-04-172-0/+2
| |