aboutsummaryrefslogtreecommitdiffhomepage
path: root/etc
Commit message (Collapse)AuthorAge
* client API: change --stop-playback-on-init-failure defaultGravatar wm42017-12-17
| | | | | | | | | | | | | | | | This was off for mpv CLI, but on for libmpv. The motivation behind this was that it would be confusing for applications if libmpv continued playback in a severely "degraded" way (without either audio or video), and that it would be better to fail early. In reality the behavior was just a confusing difference to mpv CLI, and has confused actual users as well. Get rid of it. Not bothering with a version bump, since this is so minor, and it's easy to ensure compatibility in affected applications by just setting the option explicitly. (Also adding the missing next-release-marker in client-api-changes.rst.)
* osc: make cycling visibility an input.conf key bindingGravatar wm42017-11-03
| | | | | As builtin script, it should not register global key bindings, and add them to input.conf instead. This is similar to what stats.lua does.
* restore-old-bindings.conf: add old macOS/Wayland AXIS bindingsGravatar James Ross-Gowan2017-10-16
| | | | These were changed in 7897f79217af to match X11 and Windows.
* input.conf: explicit bindings for stats overlayGravatar Julian2017-10-13
|
* vo_opengl: refactor into vo_gpuGravatar Niklas Haas2017-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is done in several steps: 1. refactor MPGLContext -> struct ra_ctx 2. move GL-specific stuff in vo_opengl into opengl/context.c 3. generalize context creation to support other APIs, and add --gpu-api 4. rename all of the --opengl- options that are no longer opengl-specific 5. move all of the stuff from opengl/* that isn't GL-specific into gpu/ (note: opengl/gl_utils.h became opengl/utils.h) 6. rename vo_opengl to vo_gpu 7. to handle window screenshots, the short-term approach was to just add it to ra_swchain_fns. Long term (and for vulkan) this has to be moved to ra itself (and vo_gpu altered to compensate), but this was a stop-gap measure to prevent this commit from getting too big 8. move ra->fns->flush to ra_gl_ctx instead 9. some other minor changes that I've probably already forgotten Note: This is one half of a major refactor, the other half of which is provided by rossy's following commit. This commit enables support for all linux platforms, while his version enables support for all non-linux platforms. Note 2: vo_opengl_cb.c also re-uses ra_gl_ctx so it benefits from the --opengl- options like --opengl-early-flush, --opengl-finish etc. Should be a strict superset of the old functionality. Disclaimer: Since I have no way of compiling mpv on all platforms, some of these ports were done blindly. Specifically, the blind ports included context_mali_fbdev.c and context_rpi.c. Since they're both based on egl_helpers, the port should have gone smoothly without any major changes required. But if somebody complains about a compile error on those platforms (assuming anybody actually uses them), you know where to complain.
* input: merge mouse wheel and axis keycodesGravatar James Ross-Gowan2017-09-03
| | | | | | | | | | | | | | | | | | | | | | Mouse wheel bindings have always been a cause of user confusion. Previously, on Wayland and macOS, precise touchpads would generate AXIS keycodes and notched mouse wheels would generate mouse button keycodes. On Windows, both types of device would generate AXIS keycodes and on X11, both types of device would generate mouse button keycodes. This made it pretty difficult for users to modify their mouse-wheel bindings, since it differed between platforms and in some cases, between devices. To make it more confusing, the keycodes used on Windows were changed in 18a45a42d524 without a deprecation period or adequate communication to users. This change aims to make mouse wheel binds less confusing. Both the mouse button and AXIS keycodes are now deprecated aliases of the new WHEEL keycodes. This will technically break input configs on Wayland and macOS that assign different commands to precise and non-precise scroll events, but this is probably uncommon (if anyone does it at all) and I think it's a fair tradeoff for finally fixing mouse wheel-related confusion on other platforms.
* input: use mnemonic names for mouse buttonsGravatar James Ross-Gowan2017-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | mpv's mouse button numbering is based on X11 button numbering, which allows for an arbitrary number of buttons and includes mouse wheel input as buttons 3-6. This button numbering was used throughout the codebase and exposed in input.conf, and it was difficult to remember which physical button each number actually referred to and which referred to the scroll wheel. In practice, PC mice only have between two and five buttons and one or two scroll wheel axes, which are more or less in the same location and have more or less the same function. This allows us to use names to refer to the buttons instead of numbers, which makes input.conf syntax a lot easier to remember. It also makes the syntax robust to changes in mpv's underlying numbering. The old MOUSE_BTNx names are still understood as deprecated aliases of the named buttons. This changes both the input.conf syntax and the MP_MOUSE_BTNx symbols in the codebase, since I think both would benefit from using names over numbers, especially since some platforms don't use X11 button numbering and handle different mouse buttons in different windowing system events. This also makes the names shorter, since otherwise they would be pretty long, and it removes the high-numbered MOUSE_BTNx_DBL names, since they weren't used. Names are the same as used in Qt: https://doc.qt.io/qt-5/qt.html#MouseButton-enum
* etc/encoding_profiles: remove deprecated usage of *-addGravatar Ricardo Constantino2017-07-03
|
* x11: add 128x128 sized icon supportGravatar Xu Zhao2017-07-02
|
* input.conf: drop TV/DVB bindingsGravatar wm42017-06-27
| | | | Is anyone still using them? Well, I'm removing them anyway.
* etc/encoding-profiles.conf: use new option syntaxGravatar wm42017-06-25
| | | | | | This is only for the comments, but since the old syntax is "discouraged" (and might change semantics one day), we should use the new syntax in all documentation-like things.
* encoding-profiles: remove useless noformat vf from enc-v-h264Gravatar Ricardo Constantino2017-06-25
| | | | | Instead, add instructions on how to properly restrict output video to a relatively compatible profile/level.
* etc/encoding-profiles: use correct formats for noformatGravatar Ricardo Constantino2017-06-21
| | | | These alias were removed in 937dcc25a.
* input: change license to LGPLGravatar wm42017-06-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cehoyos adds the step_property command in 7a71da01d, and it could be argued that copyright of this still applies to the later add/cycle commands (a668ae0ff90c4). While I'm not sure if this is really the case, stay conservative for now and mark these commands as GPL-only. Mark the command.c code too, although that is not being relicensed yet. I'm leaving the MP_CMD_* enum items, as they are obviously different. In commit 116ca0c7682, "veal" (essentially an anonymous author) adds an "osd_show_property_text" command (well, the commit message says "based on" that person's code, so it's not clear how much is from him or from albeu, who agreed to LGPL). This was later merged again with the "osd_show_text" command, and then all original code was removed in commit 58cc0f637f, so I claim that no copyright applies anymore. (Though technically the input.conf addition still might be copyrighted, so I'm just dropping it to get rid of the thought.) "kiriuja" added 2f376d1b39 (sub_load etc.) and be54f4813 (switch_audio). The latter is gone. I would argue that the former is fully rewritten with commits b7052b431c9 and 0f155921b0. But like in the step_property case, I will be overly conservative for now, and mark them as GPL-only, as this is potentially shaky and should be thought through first. (Not bothering with the command define/enum in the header, as it will be unused in LGPL mode anyway.) keycodes.c/h can be GPL, except for commit 2b1f95dcc2f8, which is a patch by someone who wasn't asked yet. Before doing something radical, I will wait for a reply.
* options: fix some missing --sub-ass-style-override renamesGravatar wm42017-06-07
| | | | | The option was renamed not to include "-style", but not all uses were updated.
* encoding-profiles.conf: add faststart to enc-f-mp4Gravatar Ricardo Constantino2017-06-06
| | | | | | | | | Usually a good idea to do this when encoding to mp4, but it's commented since usefulness is arguable nowadays. Equivalent to running qt-faststart tool on the resulting mp4. Adds a bit of delay at the end of encoding.
* encoding_profiles.conf: update and remove deprecated stuffGravatar Ricardo Constantino2017-04-07
| | | | | | | | | - libfaac and libvo_aacenc were removed from FFmpeg - add libopus profile - modify vp8's ovcopts and add vp9 - switch enc-f-webm to vp9 + opus - remove obsolete devices profiles using deprecated filters
* etc/mpv.conf: remove deprecated optionsGravatar wm42017-04-05
| | | | | | This hasn't been updated for a while. Some options are deprecated (--softvol), semi-deprecated or virtually useless (e.g. --vo and --ao), or use old-syntax (--sub-codepage).
* player: make screenshot commands honor the async flagGravatar wm42017-04-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | And also change input.conf to make all screenshots async. (Except the every-frame mode, which always uses synchronous mode and ignores the flag.) By default, the "screenshot" command is still asynchronous, because scripts etc. might depend on this behavior. This is only partially async. The code for determining the filename is still always run synchronously. Only encoding the screenshot and writing it to disk is asynchronous. We explicitly document the exact behavior as undefined, so it can be changed any time. Some of this is a bit messy, because I wanted to avoid duplicating the message display code between sync and async mode. In async mode, this is called from a worker thread, which is not safe because showing a message accesses the thread-unsafe OSD code. So the core has to be locked during this, which implies accessing the core and all that. So the code has weird locking calls, and we need to do core destruction in a more "controlled" manner (thus the outstanding_async field). (What I'd really want would be the OSD simply showing log messages instead.) This is pretty untested, so expect bugs. Fixes #4250.
* osx: fix key input in certain circumstancesGravatar Akemi2017-03-26
| | | | | | | | | | | | | for a reason i can just assume some key events can vanish from the event chain and mpv seems unresponsive. after quite some testing i could confirm that the events are present at the first entry point of the event chain, the sendEvent method of the Application, and that they vanish at a point afterwards. now we use that entry point to grab keyDown and keyUp events. we also stop propagating those key events to prevent the no key input' error sound. if we ever need the key events somewhere down the event chain we need to start propagating them again. though this is not necessary currently.
* mpv.desktop: fix some mistakes in mpv.desktopGravatar giwhub2017-03-23
| | | | Signed-off-by: wm4 <wm4@nowhere>
* mpv.desktop: add translation for [da]Gravatar scootergrisen2017-02-13
|
* input.conf: change "L" to change loop-file by defaultGravatar wm42017-01-31
|
* player: fix previous commitGravatar wm42016-10-03
| | | | ...
* player: allow opts in pseudo-gui set by the user to override user's defaultGravatar Ricardo Constantino2016-09-26
| | | | | | | | | | | | | | | | | | | | | This should still allow user-set default options to override built-in pseudo-gui while respecting user-set pseudo-gui options. Pros: - user option in default profile overrides built-in pseudo-gui's options Ex: screenshot-directory overrides built-in pseudo-gui's - user can "fix" pseudo-gui if some option like "force-window=no" is set in default by setting "force-window=yes" in [pseudo-gui] - `mpv --profile=pseudo-gui` will work as before Cons: - --show-profile=pseudo-gui won't display the built-in's options Original idea from wm4. Documentation edits mostly by wm4. Signed-off-by: wm4 <wm4@nowhere>
* player: do not let pseudo-gui override user config settingsGravatar wm42016-09-23
| | | | | | | | Seems like this confused users quite often. Instead of --profile=pseudo-gui, --player-operation-mode=pseudo-gui now has to be used to invoke pseudo GUI mode. The old way still works, and still behaves in the old way.
* etc/builtin.conf: minor editsGravatar wm42016-09-15
| | | | | | | | The previous commit merely copied the profile string to a file (plus changing how RPI-specific defaults are initialized), now make some changes on top of it. In particular, remove the --input-lirc option, which was removed a long time ago, but forgotten from the libmpv profile.
* player: move builtin profiles to a separate fileGravatar wm42016-09-15
| | | | | | | | | Move the embedded string with the builtin profiles to a separate builtin.conf file. This makes it easier to read and edit, and you can also check it for errors with --include=etc/builtin.conf. (Normally errors are hidden intentionally, because there's no way to output error messages this early, and because some options might not be present on all platforms or with all configurations.)
* manpage: remove more references to deprecated sub-option syntaxGravatar wm42016-09-07
| | | | Fixes #3497.
* Use - as command-name separator everywhereGravatar Timotej Lazar2016-07-14
| | | | | | | 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.
* etc/mpv.conf: add missing commentGravatar wm42016-05-23
| | | | | The config file is an example, and is not supposed to actually define anything by default.
* command: if only ab-loop-b is set, loop from start of fileGravatar wm42016-04-21
| | | | | | | | | | 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".
* mplayer-input.conf: fix input.conf location in commentGravatar Ben Boeckel2016-03-31
|
* mpv.conf: add some more optionsGravatar wm42016-02-13
| | | | | Seems like questions related to functionality covered by them are quite often asked.
* mpv.conf: adjustmentsGravatar wm42016-02-08
| | | | | In particular, get rid of the "vdpau" example profile, as it's pretty useless and misleading.
* player: implement SWITCH for dvb-channel-name property, add binding.Gravatar Oliver Freyermuth2016-01-14
| | | | | | | | The binding is similar to the tv-binding, just with capital letters. Switching the dvb-channel-name property compared to dvb-channel means the channel-name is shown on-screen when switching instead of "dvb-channel (error)" otherwise, and switching anyways happens without changing the card.
* etc: rename "example.conf" to "mpv.conf"Gravatar Dmitrij D. Czarkoff2016-01-11
|
* mpv.desktop: add audio/mp4 mime typeGravatar wm42016-01-07
| | | | Who thought mime types were a good idea?
* example.conf: minor changesGravatar wm42015-12-29
| | | | | | In particular, the player inserts af_scaletempo by default now when changing speed, so the suggestion to add this was missleading and counter-productive.
* input.conf: remove a redundant and a broken exampleGravatar wm42015-12-22
| | | | | | | window-scale is now mapped to Alt+0 etc. by default (although these bindings just use "set", not "cycle-values"). colormatrix can't be cycled anymore (would require using vf_format).
* input.conf: erase `audio-delay` from `Not assigned by default`Gravatar openingnow2015-12-22
| | | | | | | `ctrl+ +`is assigned as `add audio-delay` by default. Tested by running `mpv --input-test --force-window --idle` Signed-off-by: wm4 <wm4@nowhere>
* input.conf: add default bindings for changing window scaleGravatar wm42015-11-17
| | | | | | These are very much inspired by the hardcoded Cocoa bindings on OSX. Fixes #2500.
* SVG version of the icon (with symbolic counterpart)Gravatar Evgeny Kolesnikov2015-10-30
|
* input.conf: remap d/D keysGravatar wm42015-08-04
| | | | | | | | | | Drop d for toggling framedrop. Toggling this is way too special to be at such a prominent place, and in fact I believe toggling it is pointless. Remap deinterlacing from D to d. It's relatively useful and non- destructive. As suggested in #973 (almost).
* player: remove higher-level remains of DVD/BD menu supportGravatar wm42015-08-03
| | | | | | | | | | | | | | | 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.
* manpage: document --audio-channels=auto caveatsGravatar wm42015-07-25
| | | | | | | This is an unfortunate fact of life. Maybe making this the default wasn't such a good idea after all. Also update etc/example.conf. It used an obsolete alias for "auto".
* player: use exit code 0 by default for quit, 4 for signals, etc.Gravatar Philip Sequeira2015-07-11
| | | | | | Default key bindings in encoding mode also use code 4, because scripts will probably want to fail if encoding is aborted (leaving an incomplete file).
* input.conf: invert mouse volume controlGravatar Martin Herkt2015-06-30
| | | | Scrolling right should increase volume, not decrease it.
* inpout.conf: make shift+o toggle between 2 states onlyGravatar wm42015-06-03
| | | | | | | | | | | | | The "osd" command cycles between 4 states (OSD level 0-3), which is probably confusing and inconvenient. OSD levels 0 and 2 are rarely needed. I would claim there is normally not much of a need to completely disable OSD by setting level 0 during playback. Level 2 is just slightly less information than level 3, and I'm not sure why it exists at all. Change it so that it toggles between level 3 and 1. Note that this ignores the default OSD level. If the default is 3, the first use of this key will set it to 3 again. Just assume 1 is the default. If someone complains, this could be improved.
* input: allow - as separator between commands, instead of _Gravatar wm42015-05-25
| | | | | | | | | | Wnile it seems quite logical to me that commands use _ as word separator, while properties use -, I can't really explain the difference, and it tends to confuse users as well. So always prefer - as separator for everything. Using _ still works, and will probably forever. Not doing so would probably create too much chaos and confusion.