summaryrefslogtreecommitdiffstats
path: root/DOCS/man
Commit message (Collapse)AuthorAgeFilesLines
* manpage: clarify loadfile append-play modewm42014-10-281-1/+3
| | | | Documents the behavior introduced with the previous commit.
* command: add audio-device propertywm42014-10-271-0/+13
| | | | Meant for changing the --audio-device at runtime.
* audio: add command/function to reload audio outputwm42014-10-271-1/+1
| | | | | Anticipated use: simple solution for dealing with audio APIs which request configuration changes via events.
* manpage: options: various fixesAlessandro Ghedini2014-10-261-9/+9
|
* dxva2: use optimized memcpyJames Ross-Gowan2014-10-261-1/+1
| | | | | | At least on my machine, reading back the frame with system memcpy is slower than just using software rendering. Use the optimized gpu_memcpy from LAV to speed things up.
* Drop libquvi supportwm42014-10-253-36/+2
| | | | | | | | | | | No development activity (or even any sign of life) for almost a year. A replacement based on youtube-dl will probably be provided before the next mpv release. Ask on the IRC channel if you want to test. Simplify the Lua check too: libquvi linking against a different Lua version than mpv was a frequent issue, but with libquvi gone, no direct dependency uses Lua, and such a clash is rather unlikely.
* video: initial dxva2 supportwm42014-10-251-0/+1
| | | | | Shamelessly stolen from ffmpeg. It probably doesn't work - you can debug it yourself.
* manpage: use the proper environment variable for CSIDL_APPDATAwm42014-10-251-4/+8
|
* command: add vo-configured propertywm42014-10-241-0/+5
| | | | | | | | | So a client API user can know when a window is created or destroyed. Also might be useful for the OSC: it could disable itself if video is disabled. Before this commit, there were only indirect ways of detecting this.
* osd: slightly change default styleMartin Herkt2014-10-231-3/+3
| | | | | Wider vertical margins, slightly thicker border and larger font size should be an improvement.
* command: add a "cached" mode to sub_addwm42014-10-231-0/+7
| | | | | This avoids reloading a subtitle if it was already added. In all cases, the subtitle is selected.
* manpage: ipc: comment about invalid UTF-8wm42014-10-231-0/+12
| | | | | | | | | | | | | | | | | | | | Some rationale for the documented/suggested behavior: It's not really clear what to do with invalid UTF-8, since JSON simply can't transport this information. Maybe you could transfer such strings as byte arrays, but that would be very verbose and inconvenient, and would pose the problem that it's hard to distinguish between strings encoded in this way and actual arrays. There are many other ways how this could be handled. For example, you could replace invalid sequences with '?'. Or you could do it like Python, and use certain reserved unicode codepoints to "tunnel" through invalid bytes. Which of these works really depends on the application. And since this can be done entirely on the byte level (invalid UTF-8 sequences can appear only in strings in our case), it's best to leave this to the receiver.
* win32: change config path prioritieswm42014-10-231-0/+29
| | | | | | | | | | | | | | | | | Assume mpv.exe is located in $mpv_exe_dir, then config files were preferably loaded from "$mpv_exe_dir/mpv". This was mostly traditional, and inherited from MPlayer times. Reverse the config path priority order, and prefer $CSIDL_APPDATA/mpv as main config path. This also fixes behavior when writing watch_later configs, and mpv is installed in a not-writable path. It's possible that this will cause regressions for some users, if the change in preference suddenly prefers stale config files (which may happen to longer around in the appdata config dir) over the user's proper config. Also explicitly document the behavior.
* reflect recent coreaudio changes in the manualStefano Pigozzi2014-10-231-11/+4
|
* command: make reverse cycle_values match up with forward onewm42014-10-211-1/+1
| | | | | | | | | The behavior of reverse cycling (with the "!reverse" magic value) was a bit weird and acted with a "delay". This was because the command set the value the _next_ command should use. Change this and make each command invocation select and use the next command directly. This requires an "uninitialized" special index in the counter, but that is no problem at all.
* command: add cursor-autohide propertywm42014-10-211-0/+4
| | | | | | | | | | | Allows properly changing/updating the cursor state. Useful for client API window embedding, because the host application may not want the mpv window to grab mouse input, and this has to manually handle the cursor. Changing the cursor of foreign windows is usually not sane. It might make sense to allow changing the cursor icon, but that would be much more complicated, so I won't add it unless someone actually requests it.
* command: add playback-abort propertywm42014-10-211-0/+5
| | | | Now this is obscure.
* command: add video-rotate propertywm42014-10-211-0/+3
|
* player: add stream selection by ffmpeg indexwm42014-10-211-0/+9
| | | | | | | | | Apparently using the stream index is the best way to refer to the same streams across multiple FFmpeg-using programs, even if the stream index itself is rarely meaningful in any way. For Matroska, there are some possible problems, depending how FFmpeg actually adds streams. Normally they seem to match though.
* command: add field-dominance propertyKevin Mitchell2014-10-211-0/+3
|
* lua: add convenience function for hookswm42014-10-211-0/+26
| | | | So the user doesn't have to care about the awkward low-level details.
* command: extend sub_add commandwm42014-10-211-1/+17
|
* manpage: fix a typoBen Boeckel2014-10-201-1/+1
|
* manpage: ipc: mention unavailability on Windowswm42014-10-191-1/+3
| | | | | | Windows doesn't have unix domain sockets, and can't handle sockets and pipes in an uniform way. Only the libwaio fallback code is available, which doesn't do JSON.
* manpage: ipc: mention the socat toolwm42014-10-191-1/+2
| | | | | | | | This is not realy obvious, so I assume this is a helpful hint. Although the usefulness of such an approach is probably influenced by the fact that the player might send events that arrive in the short window while the socket is connected.
* ipc: skip empty and commented lineswm42014-10-191-1/+5
|
* ipc: accept both JSON and "old" commandswm42014-10-192-1/+11
| | | | Minimizes the differences between --input-file and --input-unix-socket.
* audio: quote devices in --audio-device=helpwm42014-10-191-1/+3
| | | | | The output is a bit confusing. Quoting the device name probably helps a little bit; also add minimal explanations to the manpage.
* lua: expose JSON parserwm42014-10-191-0/+14
| | | | | | | The JSON parser was introduced for the IPC protocol, but I guess it's useful here too. The motivation for this commit is the same as with 8e4fa5fc (again).
* lua: add an utility function for starting processeswm42014-10-191-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because 1) Lua is terrible, and 2) popen() is terrible. Unfortunately, since Unix is also terrible, this turned out more complicated than I hoped. As a consequence and to avoid that this code has to be maintained forever, add a disclaimer that any function in Lua's utils module can disappear any time. The complexity seems a bit ridiculous, especially for a feature so far removed from actual video playback, so if it turns out that we don't really need this function, it will be dropped again. The motivation for this commit is the same as with 8e4fa5fc. Note that there is an "#ifndef __GLIBC__". The GNU people are very special people and thought it'd be convenient to actually declare "environ", even though the POSIX people, which are also very special people, state that no header declares this and that the user has to declare this manually. Since the GNU people overtook the Unix world with their very clever "embrace, extend, extinguish" strategy, but not 100%, and trying to build without _GNU_SOURCE is hopeless; but since there might be Unix environments which support _GNU_SOURCE features partially, this means that in practice "environ" will be randomly declared or not declared by system headers. Also, gcc was written by very clever people too, and prints a warning if an external variable is declared twice (I didn't check, but I suppose redeclaring is legal C, and not even the gcc people are clever enough to only warn against a definitely not legal C construct, although sometimes they do this), ...and since we at mpv hate compiler warnings, we seek to silence them all. Adding a configure test just for a warning seems too radical, so we special-case this against __GLIBC__, which is hopefully not defined on other libcs, especially not libcs which don't implement all aspects of _GNU_SOURCE, and redefine "environ" on systems even if the headers define it already (because they support _GNU_SOURCE - as I mentioned before, the clever GNU people wrote software THAT portable that other libcs just gave up and implemented parts of _GNU_SOURCE, although probably not all), which means that compiling mpv will print a warning about "environ" being redefined, but at least this won't happen on my system, so all is fine. However, should someone complain about this warning, I will force whoever complained about this warning to read this ENTIRE commit message, and if possible, will also force them to eat a printed-out copy of the GNU Manifesto, and if that is not enough, maybe this person could even be forced to convince the very clever POSIX people of not doing crap like this: having the user to manually declare somewhat central symbols - but I doubt it's possible, because the POSIX people are too far gone and only care about maintaining compatibility with old versions of AIX and HP-UX. Oh, also, this code contains some subtle and obvious issues, but writing about this is not fun.
* manpage: ipc: explain security implicationswm42014-10-171-0/+8
| | | | | | It's kind of obvious, since the protocol by design has to allow you to read (loadfile) and write (screenshot_to) random files, but better make it explicit so that nobody accidentally does something insecure.
* manpage: add JSON IPC documentationAlessandro Ghedini2014-10-174-2/+147
|
* options: don't load per-file config files by defaultwm42014-10-171-1/+1
| | | | | | Generally useless feature, and might be slightly dangerous if paths can "escape" from the profile dir. (Normally this shouldn't be possible, though.)
* sub: adjustments to --ass-style-override optionwm42014-10-171-0/+1
| | | | | | | | | | Now requires newest libass git. Since this feature wasn't part of a libass release yet, I'm not bothering making the mpv code compatible with as how it was previously implemented (it will just be disabled with any older libass). CC: @mpv-player/stable (because mpv-build uses libass git, and this breaks the feature)
* manpage: fix reference to a defunct optionshdown2014-10-161-2/+2
| | | | The change was made with faad40aad92d51290ef2fc4d94277eca89863873.
* command: allow setting per-file options at runtimewm42014-10-151-0/+10
| | | | | The intended use-case is for doing this at load time, after the load command was issued. (See following commit.)
* stream_lavf: expose concat://wm42014-10-141-0/+4
| | | | | | | Apparently there's an use for this; see #1178. I won't redocument obscure FFmpeg features, so add a hint to the manpage that some protocols are documented in FFmpeg instead.
* vf_vapoursynth: add standalone Lua scriptingwm42014-10-121-0/+25
|
* lua: add command_native() functionwm42014-10-111-0/+9
| | | | This is the Lua equivalent of mpv_command_node().
* command: make audio device list available to the client APIwm42014-10-101-0/+21
|
* Revert "player: --save-position-on-quit should always work"wm42014-10-101-3/+4
| | | | | | | | | This reverts commit 45c8b97efbaff7a5031b008223eeed56f7b0607a. Some else complained (github issue #1163). The feature requested in #1148 will be implemented differently in the following commit.
* libmpv/cocoa: don't start the event monitorStefano Pigozzi2014-10-091-0/+5
| | | | | | The event monitor is used to get keyboard events when there is no window, but since it is a global monitor to the current process, we don't want it in a library setting.
* libmpv/cocoa: make global events work and get rid of is_cplayerStefano Pigozzi2014-10-091-4/+6
| | | | | | | After @frau's split of macosx_events from macosx_application, `is_cplayer' is not needed anymore. At the moment only global events such as Media Keys and Apple Remote work, because the VO-level ones were hardcoded to be disabled. (that will be fix in a later commit ).
* manpage: fix --audio-pitch-correction descriptionAlessandro Ghedini2014-10-091-4/+4
| | | | Add closing ">" and specify what is the default value.
* audio: add device selection & listing with --audio-devicewm42014-10-091-0/+17
| | | | | | | Not sure how good of an idea this is. This commit doesn't add support for this to any AO yet; the AO implementations will follow later.
* manpage: improve --wid descriptionwm42014-10-091-8/+19
| | | | In particular, add a basic description of how Cocoa embedding works.
* client API: rename --input-x11-keyboard to --input-vo-keyboardwm42014-10-091-2/+5
| | | | | Apparently we need this for Cocoa too. (The option was X11 specific in the hope that only X11 would need this hack.)
* command: add cache-buffering-state propertywm42014-10-071-0/+4
|
* client API: clarify pause/unpause events, modify core-idle propertywm42014-10-071-0/+4
| | | | | | | | Whether you consider the semantics weird or not depends on your use case, but I suppose it's a bit confusing anyway. At this point, we keep MPV_EVENT_PAUSE/UNPAUSE for compatibility only. Make the "core-idle" property somewhat more useful in this context.
* player: --save-position-on-quit should always workwm42014-10-061-4/+3
| | | | | | | | | | | Now any action that stops playback of a file (even playlist navigation) will save the position. Normal EOF is of course excluded from this, as well as commands that just reload the current file. The option name is now slightly off, although you could argue what the word "quit" means. Fixes #1148 (or at least this is how I understood it).
* cocoa: remove --fs-missioncontrolStefano Pigozzi2014-10-051-7/+0
| | | | | | | This is the first of a series of commits that will change the Cocoa way in a way that is easily embeddable inside parent views. To reach that point common code must avoid referencing the parent NSWindow since that could be the host application's window.
* manpage: changes: random corrections and additionswm42014-10-041-13/+19
|
* manpage: changes: move internal changes section to the endwm42014-10-041-22/+22
|
* options: add --no-keepaspect-windowwm42014-10-041-0/+7
| | | | Seems silly, but was requested.
* manpage: refactor MPlayer -> mpv changes sectionAlessandro Ghedini2014-10-041-90/+137
| | | | Merge duplicate entries, organize entries in subsections, reword some entries.
* x11: stupid workaround for XMonadwm42014-10-041-4/+14
| | | | | | | | --x11-netwm=yes now forces NetWM fullscreen, while --x11-netwm=auto (detect whether NetWM fullsctreen support is available) is the old behavior and still the default. See #888.
* manpage: improve consistency with new ~/.config/mpv defaultKevin Mitchell2014-10-044-27/+32
| | | | Signed-off-by: wm4 <wm4@nowhere>
* man: replaced : with , in broken --lua-opts osc exampleStephen Caraher2014-10-031-1/+1
| | | | | | | --lua-opts is a key-value list, so the option parser accepts only commas. Signed-off-by: wm4 <wm4@nowhere> CC: @mpv-player/stable
* command: allow passing memory addresses to overlay_addwm42014-10-031-0/+10
| | | | | | | | | For the sake of libmpv. Might make things much easier for the user, especially on Windows. On the other hand, it's a bit sketchy that a command exists that makes the player access arbitrary memory regions. (But do note that input commands are not meant to be "secure" and never were - for example, there's the "run" command, which obviously allows running random shell commands.)
* manpage: remove non-existing ratio-pos propertywm42014-10-021-3/+0
| | | | | | | | | | Use percent-pos instead, which is exactly the same, except with the range 0.0-100.0. I'm not sure how this got there; it was probably introduced and then removed again as percent-pos got more precise. CC: @mpv-player/stable
* manpage: redocument audio delay key bindingswm42014-10-021-0/+3
| | | | | Fixes #1131. CC: @mpv-player/stable
* audio: enable pitch correction by default when playing fastwm42014-10-021-0/+8
| | | | | | | Apparently this is what users want. When playing with normal speed, nothing is done. When playing slower than normal, resampling is used instead, because scaletempo (which does the pitch correction) adds too many artifacts.
* man: fix to->too typoKevin Mitchell2014-09-301-1/+1
|
* audio: remove --audiodropwm42014-09-301-5/+0
| | | | | | | | | | | | | | | This would play some silence in case video was slower than audio. If framedropping is already enabled, there's no other way to keep A/V sync, short of changing audio playback speed (which would give worse results). The --audiodrop option inserted silence if there was more than 500ms desync. This worked somewhat, but I think it was a silly idea after all. Whether the playback experience is really bad or slightly worse doesn't really matter. There also was a subtle bug with PTS handling, that apparently caused A/V desync anyway at ridiculous playback speeds. Just remove this feature; nobody is going to use it anyway.
* lua: add mpv/lua directories to the lua pathOtto Modinos2014-09-281-3/+8
| | | | Signed-off-by: wm4 <wm4@nowhere>
* client API, X11: change default keyboard input handling againwm42014-09-281-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | Commit 64b7811c tried to do the "right thing" with respect to whether keyboard input should be enabled or not. It turns out that X11 does something stupid by design. All modern toolkits work around this native X11 behavior, but embedding breaks these workarounds. The only way to handle this correctly is the XEmbed protocol. It needs to be supported by the toolkit, and probably also some mpv support. But Qt has inconsistent support for it. In Qt 4, a X11 specific embedding widget was needed. Qt 5.0 doesn't support it at all. Qt 5.1 apparently supports it via QWindow, but if it really does, I couldn't get it to work. So add a hack instead. The new --input-x11-keyboard option controls whether mpv should enable keyboard input on the X11 window or not. In the command line player, it's enabled by default, but in libmpv it's disabled. This hack has the same problem as all previous embedding had: move the mouse outside of the window, and you don't get keyboard input anymore. Likewise, mpv will steal all keyboard input from the parent application as long as the mouse is inside of the mpv window. Also see issue #1090.
*