summaryrefslogtreecommitdiffstats
path: root/DOCS/man/input.rst
<
Commit message (Collapse)AuthorAgeFilesLines
* audio: refactor mixer code and delete mixer.cwm42016-07-171-0/+2
| | | | | | | | | | | | | | | | | mixer.c didn't really deserve to be separate anymore, as half of its contents were unnecessary glue code after recent changes. It also created a weird split between audio.c and af.c due to the fact that mixer.c could insert audio filters. With the code being in audio.c directly, together with other code that unserts filters during runtime, it will be possible to cleanup this code a bit and make it work like the video filter code. As part of this change, make the balance code work like the volume code, and add an option to back the current balance value. Also, since the balance semantics are unexpected for most users (panning between the audio channels, instead of just changing the relative volume), and there are some other volumes, formally deprecate both the old property and the new option.
* Use - as command-name separator everywhereTimotej Lazar2016-07-141-3/+3
| | | | | | | Old-style commands using _ as separator (e.g. show_progress) were still used in some places, including documentation and configuration files. This commit updates all such instances to the new style (show-progress) so that commands are easier to find in the manual.
* manpage: add some missing color management related sub-propertieswm42016-07-131-0/+3
|
* command: add properties for HDR metadataNiklas Haas2016-07-131-0/+6
| | | | | | | | | Since it turns out that knowing what exactly a file was tagged with can be useful for debugging purposes, expose this as a property so I can check it more easily. This is mostly useful for sig-peak (since nom-peak is currently entirely calculated by us), but I added both for consistency.
* man: fix typowm42016-07-091-1/+1
|
* audio: drop --softvol=no and --softvol=autowm42016-07-091-17/+19
| | | | | | | | | | | | | | Drop the code for switching the volume options and properties between af_volume and AO volume controls. interface-changes.rst mentions the changes in detail. Do this because this was exceedingly complex and had other problems as well. It was also very hard to test. It's just not worth the trouble. Some leftovers like AOCONTROL_HAS_PER_APP_VOLUME will be removed at a later point. Fixes #3322.
* man: fix typosJakub Wilk2016-07-091-1/+1
|
* manpage: document confusing "vf clr" command usagewm42016-07-031-0/+2
|
* command: pack sub image data in overlay-add commandwm42016-07-011-21/+11
| | | | | | | | | | | | | | Working towards refcounted sub images, and also for removing bitmap packers from VOs. I'm not sure why we even have this overlay-add command. It was sort of "needed" before opengl-cb was introduced, and before Lua scripts could put ASS drawings on OSD without conflicting with the OSC. But now trying to use it doesn't make too much sense anymore. Still keep it because we're trying to be nice, but throw performance out of the window. Now image data is copied 2 more times before displaying it. This also makes using the command a bit simpler.
* DOCS: change version references from 0.17.1 to 0.18.0wm42016-06-251-3/+3
| | | | 0.17.1 was never released, so the actual 0.18.0 release takes its place.
* vo_opengl: refactor performance data propertiesNiklas Haas2016-06-081-24/+38
| | | | | | | | | | | | | | | Instead of having 9 different properties, requiring 18 different VOCTRLs to read them all, they are now exposed as a single property. This is not only cleaner (since they're all together) but also allows querying all 9 of them with only a single VOCTRL (by using mp.get_property_native). (The extra factor of 2 was due to an extra query being needed to get the type, which is now also unnecessary) This makes it much easier to access performance metrics from within a lua script, and also makes it easier to just show a readable, formatted version via show-text.
* vo_opengl: expose performance timers as propertiesNiklas Haas2016-06-071-0/+24
| | | | | | | | | | | This is plumbed through a new VOCTRL, VOCTRL_PERFORMANCE_DATA, and exposed as properties render-time-last, render-time-avg etc. All of these numbers are in microseconds, which gives a good precision range when just outputting them via show-text. (Lua scripts can obviously still do their own formatting etc.) Signed-off-by: wm4 <wm4@nowhere>
* command: add playlist-pos-1 propertywm42016-05-261-0/+3
| | | | | | | | | | This has often been requested for use on OSD. I don't really like having such "special" properties, but whatever. Hopefully this will be the only case. Untested because I'm too damn lazy. Fixes #2828.
* manpage: document missing sub-propertieswm42016-05-111-0/+2
| | | | | This is the client-API part; the normal descriptions are present in the text above.
* manpage: fix some script_message references to preferred namewm42016-05-091-4/+4
|
* win32: make taskbar progress indication optionalmaniak13492016-05-081-0/+3
| | | | | | | | | | | Add --taskbar-progress command line option and property which controls taskbar progress indication rendering in Windows 7+. This option is on by default and can be toggled during playback. This option does not affect the creation process of ITaskbarList3. When the option is turned off the progress bar is just hidden with TBPF_NOPROGRESS. Closes #2535
* command: change some hwdec propertieswm42016-05-041-2/+27
| | | | | | | | Introduce hwdec-current and hwdec-interop properties. Deprecate hwdec-detected, which never made a lot of sense, and which is replaced by the new properties. hwdec-active also becomes useless, as hwdec-current is a superset, so it's deprecated too (for now).
* command: if only ab-loop-b is set, loop from start of filewm42016-04-211-3/+2
| | | | | | | | | | Commit 382bafcb changed the behavior for ab-loop-a. This commit changes ab-loop-b so that the behavior is symmetric. Adjust the OSD rendering accordingly to the two changes. Also fix mentions of the "ab_loop" command to the now preferred "ab-loop".
* player: loop on end of file if ab-loop-b is unsetwm42016-04-181-2/+3
| | | | Possibly slightly more useful/intuitive.
* command: add video-stereo-mode propertywm42016-03-281-0/+3
| | | | | | Enables runtime change of the option. Fixes #2994.
* command: change "cache-speed" OSD formattingwm42016-03-221-2/+2
| | | | | Also change the property to an int, since using double is questionable and pointless.
* command: add cache-speed propertywm42016-03-201-0/+5
| | | | | | | Should reflect I/O speed. This could go into the terminal status line. But I'm not sure how to put it there, since it already uses too much space, so it's not there yet.
* manpage: fix inverted condition in mixer-active descriptionwm42016-03-131-2/+2
| | | | | | Still not sure if the current text is actually understandable. Also fix a typo.
* command: change stream-pos semanticswm42016-03-091-2/+3
| | | | | | | | | | | | | Changing the byte stream position without cooperation of the demuxer seems a bit insane, and is certainly useless. A user should do factor seeks instead. For formats like ts, this will actually translate to byte seeks, while treating the rest of the playback chain a bit more gracefully. With this argument, remove write access to this property. If someone really complains, proper byte seeks could be added as seek mode (although I'm going to need a convincing argument for this). Read access changes too, but in a more subtle way.
* command: add encoder-list propertywm42016-03-011-2/+7
| | | | | Also change decoder-list (for the sake of sharing the underlying code for both properties).
* command: export canonical ffmpeg version identifierwm42016-02-291-0/+7
| | | | Was printed only with "mpv -h" or so.
* command: export list of all decoderswm42016-02-291-0/+32
| | | | | | | Was only available via --vd=help and --ad=help (i.e. not at all via client API). Not bothering with separating audio and video codecs, since this list isn't all that useful anyway in general. If someone complains, a type field could be added.
* command: export more information under track-listwm42016-02-291-5/+31
| | | | | | | | | | | | | Export a number of container fields, which may or may not be useful in some scenarios. They are explicitly marked as originating from the demuxer, in order to make it explicit that they might be unreliable. I'd actually like to remove all other cases where container information is exported, but those numerous cases are going to be somewhat hard to deprecate. Also, not directly related, export the description of the currently active decoder. (This has been requested before.)
* player: add on_preloaded hookwm42016-02-151-0/+11
| | | | (Limited usefulness.)
* command: always allow setting volume/mute propertieswm42016-01-261-2/+21
| | | | | | | | | | | | | | | | | | | | | | | This seems generally easier when using libmpv (and was already requested and implemented before: see commit 327a779a; it was reverted some time later). With the weird internal logic we have to deal with, in particular the --softvol=no case (using system volume), and using the audio API's mixer (--softvol=auto on some systems), we still can't avoid all glitches and corner cases that complicate this issue so much. The API user is either recommended to use --softvol=yes or auto, or to watch the new mixer-active property, and assume the volume/mute properties have significant values if the mixer is active. Remaining glitches: - changing the volume/mute properties has no effect if no internal mixer is used (--softvol=no) and the mixer is not active; the actual mixer controls do not change, only the property values - --volume/--mute do not have an effect on the volume/mute properties before mixer initialization (the options strictly are only applied during mixer init) - volume-max is 100 while the mixer is not active
* manpage: adjust vf/af-command descriptionwm42016-01-221-1/+4
|
* command: add af-command commandwm42016-01-221-0/+3
| | | | Similar to vf-command. Requested. Untested.
* command: add vf-command commandwm42016-01-221-0/+6
|
* man: input: document new DVB bindings and properties.Oliver Freyermuth2016-01-141-0/+9
| | | | | There is now H and K for DVB-channel switching, and the properties dvb-channel (W) and dvb-channel-name (RW).
* input: add a catch-all "unmapped" commandwm42015-12-231-0/+6
| | | | | | This can be used to grab all unmapped keys. Fixes #2612.
* input: add key name to script-binding command responsewm42015-12-231-8/+14
| | | | | | | | | | | | | | | | The "script-binding" command is used by the Lua scripting wrapper to register key bindings on the fly. It's also the only way to get fine- grained information about key events (such as separate key up/down events). This information is sent via a "key-binding" message when the state of a key changes. Extend it to send name of the mapped key itself. Previously, it was assumed that the user just uses an unique identifier for the binding's name, so it wasn't needed. With this change, a user can map exactly the same command to multiple keys, which is useful especially with the next commit. Part of #2612.
* man: fix grammar issuesMartin Herkt2015-12-191-8/+7
|
* manpage: reflect recent subtitle changeswm42015-12-061-3/+3
|
* manpage: explain behavior of "path" propertywm42015-11-291-1/+5
| | | | | | | This seems to confuse users pretty often, but I'm not going to change its behavior. See e.g. #2541.
* command, vo: add estimated-display-fps propertywm42015-11-251-0/+8
| | | | | | | | | | This is simply the average refresh rate. Including "bad" samples is actually an advantage, because the property exists only for informational purposes, and will reflect problems such as the driver skipping a vsync. Also export the standard deviation of the vsync frame duration (normalized to the range 0-1) as vsync-jitter property.
* command: export some per-video-frame informationwm42015-11-221-0/+13
| | | | Utterly useless, but requested. Fixes #2444.
* player: handle rebasing start time differentlywm42015-11-161-5/+8
| | | | | | | | | | | | | | | | Most of this is explained in the DOCS additions. This gives us slightly more sanity, because there is less interaction between the various parts. The goal is getting rid of the video_offset entirely. The simplification extends to the user API. In particular, we don't need to fix missing parts in the API, such as the lack for a seek command that seeks relatively to the start time. All these things are now transparent. (If someone really wants to know the real timestamps/start time, new properties would have to be added.)
* command: add vsync-ratio propertywm42015-11-131-0/+7
| | | | | | | | This is very "illustrative", unlike the video-speed-correction property, and thus useful. It can also be used to observe scheduling errors, which are not detected by the core. (These happen due to rounding errors; possibly not evne our fault, but coming from files with rounded timestamps and so on.)
* command: rename vo-missed-frame-count propertywm42015-11-131-0/+5
| | | | | | | | | "Missed" implies the frame was dropped, but what really happens is that the following frame will be shown later than intended (due to the current frame skipping a vsync). (As of this commit, this property is still inactive and always returns 0. See git blame for details.)
* command: make display-fps property writablewm42015-11-091-1/+1
| | | | | | | Has the same function as setting the option. This commit changes the property in a bunch of other ways. For example if the VO is not created, it will return the option value.
* command: add mistimed-frame-count propertywm42015-10-301-0/+8
| | | | | Does what the manpage says. This is a replacement incrementing the dropped frame counter (see previous commit).
* video: remove user-controllable PTS sorting (--pts-association-mode)wm42015-10-061-3/+0
| | | | | | | | | Useless. Sometimes it might be useful to make some extremely broken files work, but on the other hand --no-correct-pts is sufficient for these cases. While we still need some of the code for AVI, the "auto" mode in particular inflated the size of the code.
* video: replace vf_format outputlevels option with global optionwm42015-09-291-2/+2
| | | | | | | | | | | The vf_format suboption is replaced with --video-output-levels (a global option and property). In particular, the parameter is removed from mp_image_params. The mechanism is moved to the "video equalizer", which also handles common video output customization like brightness and contrast controls. The new code is slightly cleaner, and the top-level option is slightly more user-friendly than as vf_format sub-option.
* af_lavfi: implement af-metadata propertywm42015-09-111-0/+3
| | | | | | | Works like vf-metadata. Unfortunately requires some code duplication (even though it's not much). Fixes #2311.
* cache: do not include backbuffer size in total stream cache sizewm42015-09-101-1/+3
| | | | | | | | | This causes weirdness with the "cache-size" property and option. Only the read handler of the property included the backbuffer, while all others did not. Make it consistent, and subtract the backbuffer size from the cache size. Fixes #2305.
* command: make the playback-time property writablewm42015-08-211-2/+4
| | | | | | | Provides a simplistic way to seek without having to care about weird situations like timestamp vs. playback time. This is good, because the seek command is currently timestamp based, so when using the seek command the user _does_ have to care.
* manpage: fix typowm42015-08-181-1/+1
| | | | Actually, this was unintentionally changed in commit 70e0bc1e.
* player: add display sync modewm42015-08-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | If this mode is enabled, the player tries to strictly synchronize video to display refresh. It will adjust playback speed to match the display, so if you play 23.976 fps video on a 24 Hz screen, playback speed is increased by approximately 1/1000. Audio wll be resampled to keep up with playback. This is different from the default sync mode, which will sync video to audio, with the consequence that video might skip or repeat a frame once in a while to make video keep up with audio. This is still unpolished. There are some major problems as well; in particular, mkv VFR files won't work well. The reason is that Matroska is terrible and rounds timestamps to milliseconds. This makes it rather hard to guess the framerate of a section of video that is playing. We could probably fix this by just accepting jittery timestamps (instead of explicitly disabling the sync code in this case), but I'm not ready to accept such a solution yet. Another issue is that we are extremely reliant on OS video and audio APIs working in an expected manner, which of course is not too often the case. Consequently, the new sync mode is a bit fragile.
* player: separate controls for user and video controlled speedwm42015-08-101-0/+4
| | | | | | | | | | For video sync, we want separate playback speed controls for user- requested speed and the "correction" speed for video timing. Further, we use this separation to make sure only a resampler is inserted if playback speed is only changed for video sync correction. As of this commit, this is basically inactive code. It's just preparation for the video sync code (the following commit).
* manpage: use - as separator for the remaining commandswm42015-08-061-22/+22
| | | | | See commit 289705da. These manpage parts were just forgotten when updating the command descriptions.
* lua: implement input_enable_section/input_disable_section via commandswm42015-08-061-4/+13
| | | | | | | | | | | | | | | Removes some more internal API calls from the Lua scripting backend. Which is good, because ideally the scripting backend would use libmpv functions only. One awkwardness is that mouse sections are still not supported by the public commands (and probably will never), so flags like allow-hide- cursor make no sense to an outside user. Also, the way flags are passed to the Lua function changes. But that's ok, because they're only undocumented internal functions, and not supposed to be used by script users. osc.lua only does due to historical reasons.
* command: define-section with empty contents removes a sectionwm42015-08-061-0/+2
|
* command: add a command for defining input bindingswm42015-08-061-0/+20
| | | | | | This was requested. It was more or less present internally already and used for Lua scripting. Lua will switch to the "public" functions in the following commits.
* player: remove higher-level remains of DVD/BD menu supportwm42015-08-031-22/+0
| | | | | | | | | | | | | | | Nobody wanted to restore this, so it gets the boot. If anyone still wants to volunteer to restore menu support, this would be welcome. (I might even try it myself if I feel masochistic and like wasting a lot of time for nothing.) But if it does get restored, it should be done differently. There were many stupid things about how it was done. For example, it somehow tried to pull mp_nav_events through all the layers (including needing to "buffer" them in the demuxer), which was needlessly complicated. It could be done simpler. This code was already inactive, so this commit actually changes nothing. Also keep in mind that normal DVD/BD playback still works.
* command: add property indicating per-file optionswm42015-07-231-0/+6
| | | | Fixes #2165, more or less.
* command: add track-list/N/audio-channels propertydeuiore2015-07-181-0/+5
| | | | | | Signed-off-by: wm4 <wm4@nowhere> (With some heavy modifications from the original patch.)
* player: parse and expose m3u playlist titleswm42015-07-101-0/+6
| | | | Requested. Closes #2100.
*