From a1a9dc9c850f6e99103e34f1ed8e66fdc9d2012c Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 6 Mar 2013 00:24:34 +0100 Subject: options: remove --no-vsync Latest nvidia drivers ignore the application setting, so this switch makes even less sense than before. It's still possible to control this with VO specific suboptions. --- DOCS/man/en/options.rst | 3 --- 1 file changed, 3 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 43482b5c70..873366da22 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -2341,9 +2341,6 @@ Set the startup volume. A value of -1 (the default) will not change the volume. See also ``--softvol``. ---no-vsync - Tries to disable vsync. (Effective with some video outputs only.) - --wid= (X11 and win32 only) This tells mpv to attach to an existing window. The ID is interpreted as -- cgit v1.2.3 From 048ceef655bce41bc6e215b5e05cec0fad4d1428 Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Sat, 9 Mar 2013 09:30:26 +0100 Subject: af_lavrresample: add new resampling filter to replace the old ones Remove `af_resample` and `af_lavcresample`. The former is a mess while the latter uses an API that was long deprecated in libavcodec and is now removed. `af_lavrresample` rougly has the same features and structure of `af_lavcresample`. libswresample fallback by wm4. --- DOCS/man/en/af.rst | 56 ++++++++++++++---------------------------------------- 1 file changed, 14 insertions(+), 42 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/af.rst b/DOCS/man/en/af.rst index a47a63b8e2..2eaeabed0c 100644 --- a/DOCS/man/en/af.rst +++ b/DOCS/man/en/af.rst @@ -29,55 +29,27 @@ filter list. Available filters are: -resample[=srate[:sloppy[:type]]] - Changes the sample rate of the audio stream. Can be used if you have a - fixed frequency sound card or if you are stuck with an old sound card that - is only capable of max 44.1kHz. This filter is automatically enabled if - necessary. It only supports 16-bit integer and float in native-endian - format as input. - - - output sample frequency in Hz. The valid range for this parameter is - 8000 to 192000. If the input and output sample frequency are the same - or if this parameter is omitted the filter is automatically unloaded. - A high sample frequency normally improves the audio quality, - especially when used in combination with other filters. - - Allow (1) or disallow (0) the output frequency to differ slightly from - the frequency given by (default: 1). Can be used if the - startup of the playback is extremely slow. - - Select which resampling method to use. - - :0: linear interpolation (fast, poor quality especially when - upsampling) - :1: polyphase filterbank and integer processing - :2: polyphase filterbank and floating point processing - (slow, best quality) - - *EXAMPLE*: - - ``mpv --af=resample=44100:0:0`` - would set the output frequency of the resample filter to 44100Hz using - exact output frequency scaling and linear interpolation. - -lavcresample[=srate[:length[:linear[:count[:cutoff]]]]] +lavrresample[=option1:option2:...] Changes the sample rate of the audio stream to an integer in Hz. - It only supports the 16-bit native-endian format. + Can be used if you have a fixed frequency sound card or if you are stuck + with an old sound card that is only capable of max 44.1kHz. + + This filter is automatically enabled if necessary. It only supports the + 16-bit integer native-endian format. - - the output sample rate - + srate= + the output sample rate (defaut: 44100) + length= length of the filter with respect to the lower sampling rate (default: 16) - - if 1 then filters will be linearly interpolated between polyphase - entries - + phase_shift= log2 of the number of polyphase entries (..., 10->1024, 11->2048, 12->4096, ...) (default: 10->1024) - + cutoff= cutoff frequency (0.0-1.0), default set depending upon filter length + linear + if set then filters will be linearly interpolated between polyphase + entries (default: no) lavcac3enc[=tospdif[:bitrate[:minchn]]] Encode multi-channel audio to AC-3 at runtime using libavcodec. Supports -- cgit v1.2.3 From d080d1d39afe2b0a4286ab4688df609984996357 Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 25 Mar 2013 21:25:11 +0100 Subject: command: export VO video width/height as properties Add new properties "dwidth" and "dheight", which contain the video size as known by the VO (not necessarily what the VO makes out of them, i.e. without window scaling and panscan). --- DOCS/man/en/input.rst | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/input.rst b/DOCS/man/en/input.rst index 221d6cbfba..9dda58adbd 100644 --- a/DOCS/man/en/input.rst +++ b/DOCS/man/en/input.rst @@ -309,9 +309,11 @@ vsync x see ``--vsync`` video-format video format (string) video-codec video codec selected for decoding video-bitrate video bitrate -width video width +width video width (container or decoded size) height video height -fps FPS (may contain bogus values) +fps container FPS (may contain bogus values) +dwidth video width (after filters and aspect scaling) +dheight video height aspect x video aspect video x current video track (similar to ``--vid``) program x switch TS program (write-only) -- cgit v1.2.3 From 54e8e0a50207283d1cbe595e69e5cd10c346ed40 Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 25 Mar 2013 22:57:24 +0100 Subject: mplayer: make --frames=1 work for audio This has the same (useless) definition as frame stepping in audio-only mode: one frame means one playloop iteration. (It's relatively useless, because one playloop iteration has a random duration. But it makes --frames=1 work, which is useful again.) --- DOCS/man/en/options.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 873366da22..6651e97a67 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -651,7 +651,10 @@ *NOTE*: Practical use of this feature is questionable. Disabled by default. --frames= - Play/convert only first frames, then quit. + Play/convert only first video frames, then quit. For audio only, + run iteration of the playback loop, which is most likely not what + you want. (This behavior also applies to the corner case when there are + less video frames than , and audio is longer than the video.) --fullscreen, --fs Fullscreen playback (centers movie, and paints black bands around it). -- cgit v1.2.3 From 790df511c4aad28c64998783b5b599e88177356e Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 25 Mar 2013 23:44:32 +0100 Subject: core: output --playing-msg message only after at least one frame is shown This way it's possible to retrieve correct information about video, like actual width/height, which in general are available only after at least one frame has been sent to the video output, such as dwidth/dheight. mpv_identify.sh becomes a bit slower, because we let it decode enough audio and video to fill the audio buffers and to send one frame to the video output. Also, --playing-msg isn't shown anymore with --frames=0 (could be fixed by special-casing it, should this break any use cases). Note that in some corner cases, like when the demuxer for some reason returns lots of audio packets but no video packets at the start, but video actually starts later, the --playing-msg will still be output before video starts. --- DOCS/man/en/options.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 6651e97a67..91078b2424 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -1455,7 +1455,7 @@ *WARNING*: works with the deprecated ``mp_http://`` protocol only. --playing-msg= - Print out a string before starting playback. The string is expanded for + Print out a string after starting playback. The string is expanded for properties, e.g. ``--playing-msg=file: ${filename}`` will print the string ``file:`` followed by a space and the currently played filename. -- cgit v1.2.3 From 8099cbe9dd64f48050918242e088a1f998c77a15 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 28 Mar 2013 21:44:27 +0100 Subject: vo_opengl: add alpha output Allows playing video with alpha information on X11, as long as the video contains alpha and the window manager does compositing. See vo.rst. Whether a window can be transparent is decided by the choice of the X Visual used for window creation. Unfortunately, there's no direct way to request such a Visual through the GLX or the X API, and use of the XRender extension is required to find out whether a Visual implies a framebuffer with alpha used by XRender (see for example [1]). Instead of depending on the XRender wrapper library (which would require annoying configure checks, even though XRender is virtually always supported), use a simple heuristics to find out whether a Visual has alpha. Since getting it wrong just means an optional feature will not work as expected, we consider this ok. [1] http://stackoverflow.com/questions/4052940/how-to-make-an-opengl- rendering-context-with-transparent-background/9215724#9215724 --- DOCS/man/en/vo.rst | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/vo.rst b/DOCS/man/en/vo.rst index e3b8723966..dcfcb05278 100644 --- a/DOCS/man/en/vo.rst +++ b/DOCS/man/en/vo.rst @@ -430,6 +430,14 @@ opengl dimension. Default is 128x256x64. Sizes must be a power of two, and 256 at most. + alpha + Try to create a framebuffer with alpha component. This only makes sense + if the video contains alpha information (which is extremely rare). May + not be supported on all platforms. If alpha framebuffers are + unavailable, it silently falls back to a normal framebuffer. Note + that when using FBO indirections (such as with ``opengl-hq``), a FBO + format with alpha must be specified with the ``fbo-format`` option. + opengl-hq Same as ``opengl``, but with default settings for high quality rendering. -- cgit v1.2.3 From a0e2f7113b33395595308229afe410aa21ec568f Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 28 Mar 2013 21:44:33 +0100 Subject: gl_video: add some alpha FBO formats --- DOCS/man/en/vo.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/vo.rst b/DOCS/man/en/vo.rst index dcfcb05278..f3336afef6 100644 --- a/DOCS/man/en/vo.rst +++ b/DOCS/man/en/vo.rst @@ -398,7 +398,8 @@ opengl Selects the internal format of textures used for FBOs. The format can influence performance and quality of the video output. (FBOs are not always used, and typically only when using extended scalers.) - fmt can be one of: rgb, rgba, rgb8, rgb10, rgb16, rgb16f, rgb32f + fmt can be one of: rgb, rgba, rgb8, rgb10, rgb16, rgb16f, rgb32f, + rgba12, rgba16, rgba16f, rgba32f. Default: rgb. gamma -- cgit v1.2.3 From 2585baa649afdda14069aa1d20d32706bb97b8f9 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 28 Mar 2013 21:39:17 +0100 Subject: gl_video: use choice option type for dither-depth suboption Replaces the numeric magic values -1 and 0 with "no" and "auto". The numeric values are still allowed for compatibility. --- DOCS/man/en/vo.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/vo.rst b/DOCS/man/en/vo.rst index f3336afef6..6d64e3062e 100644 --- a/DOCS/man/en/vo.rst +++ b/DOCS/man/en/vo.rst @@ -319,12 +319,12 @@ opengl Enable use of PBOs. This is faster, but can sometimes lead to sporadic and temporary image corruption. - dither-depth= - Positive non-zero values select the target bit depth. Default: 0. + dither-depth= + Set dither target depth to N. Default: auto. - \-1 + no Disable any dithering done by mpv. - 0 + auto Automatic selection. If output bit depth can't be detected, 8 bits per component are assumed. 8 @@ -444,10 +444,10 @@ opengl-hq This is equivalent to: - | --vo=opengl:lscale=lanczos2:dither-depth=0:pbo:fbo-format=rgb16 + | --vo=opengl:lscale=lanczos2:dither-depth=auto:pbo:fbo-format=rgb16 Note that some cheaper LCDs do dithering that gravely interferes with - vo_opengl's dithering. Disabling dithering with ``dither-depth=-1`` helps. + vo_opengl's dithering. Disabling dithering with ``dither-depth=no`` helps. Unlike ``opengl``, ``opengl-hq`` makes use of FBOs by default. Sometimes you can achieve better quality or performance by changing the fbo-format -- cgit v1.2.3 From ef3c0e6edafd6460d30c24dfd9f5b2f50401f38f Mon Sep 17 00:00:00 2001 From: wm4 Date: Sat, 30 Mar 2013 20:08:56 +0100 Subject: osd: draw the OSD bar with ASS vector drawings Drawing the bar with vector drawings (instead with characters from the OSD font) offers more flexibility and looks better. This also adds chapter marks to the OSD bar, which are visible as small triangles on the top and bottom inner border of the bar. Change the default position of the OSD bar below the center of the screen. This is less annoying than putting the bar directly into the center of the view, where it obscures the video. The new position is not quite on the bottom of the screen to avoid collisions with subtitles. The old centered position can be forced with ``--osd-bar-align-y=0``. Also make it possible to change the OSD bar width/height with the new --osd-bar-w and --osd-bar-h options. It's possible that the new OSD bar renders much slower than the old one. There are two reasons for this: 1. the character based bar allowed libass to cache each character, while the vector drawing forces it to redraw every time the bar position changes. 2., the bar position is updated at a much higher granularity (the bar position is passed along as float instead of as integer in the range 0-100, so the bar will be updated on every single video frame). --- DOCS/man/en/options.rst | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 91078b2424..98019c0333 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -1315,12 +1315,19 @@ prefixes, see ``Input command prefixes``. If you want to disable the OSD completely, use ``--osd-level=0``. ---osd-bar-align-x=<-1..1> +--osd-bar-align-x=<-1-1> Position of the OSD bar. -1 is far left, 0 is centered, 1 is far right. ---osd-bar-align-y=<-1..1> +--osd-bar-align-y=<-1-1> Position of the OSD bar. -1 is top, 0 is centered, 1 is bottom. +--osd-bar-w=<1-100> + Width of the OSD bar, in percentage of the screen width (default: 75). + A value of 0.5 means the bar is half the screen wide. + +--osd-bar-h=<0.1-50> + Height of the OSD bar, in percentage of the screen height (default: 3.125). + --osd-back-color=<#RRGGBB>, --sub-text-back-color=<#RRGGBB> See ``--osd-color``. Color used for OSD/sub text background. -- cgit v1.2.3 From 042ac5622667381b6ac881e948fe686373c531d7 Mon Sep 17 00:00:00 2001 From: wm4 Date: Sat, 30 Mar 2013 20:19:38 +0100 Subject: changes.rst: mention -afm hwac3 replacement --- DOCS/man/en/changes.rst | 1 + 1 file changed, 1 insertion(+) (limited to 'DOCS') diff --git a/DOCS/man/en/changes.rst b/DOCS/man/en/changes.rst index 7f09d942a0..1e5bb74a2c 100644 --- a/DOCS/man/en/changes.rst +++ b/DOCS/man/en/changes.rst @@ -121,6 +121,7 @@ Command line switches -ass-bottom-margin --vf=sub=bottom:top -vc ffh264vdpau (etc.) --hwdec=vdpau -ac spdifac3 --ad=spdif:ac3 (see --ad=help) + -afm hwac3 --ad=spdif:ac3,spdif:dts -x W, -y H --geometry=WxH + --no-keepaspect -xy W --autofit=W =================================== =================================== -- cgit v1.2.3 From c8fd9e50e47838bbdb0dc5e0b974091312cb8833 Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Sun, 31 Mar 2013 11:03:04 +0200 Subject: remove Apple Remote related code The OSX part of the Apple Remote was unmaintained for a long time and was not working anymore. I tried to update the cookies to what the current versions of OS X expect without much luck. I decided to remove it since Apple is not including the IR receiver anymore in new hardware and it's clear that wifi based remotes are the way to go. A third party iOS app should be used in it's place. In the future we could look into having a dedicated iOS Remote Control app like VLC and XBMC do. The Linux side (`appleir.c`) was relatively tidy but it looks like LIRC can be configured to work with any version of Apple Remote [1] and is more maintained. [1] LIRC Apple Remote configs: http://lirc.sourceforge.net/remotes/apple/ --- DOCS/man/en/options.rst | 3 --- 1 file changed, 3 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 98019c0333..d64cbe8f80 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -103,9 +103,6 @@ configuration files specifying a list of fallbacks may make sense. See `audio_outputs` for details and descriptions of available drivers. ---ar, --no-ar - Enable/disable AppleIR remote support. Enabled by default. - --aspect= Override movie aspect ratio, in case aspect information is incorrect or missing in the file being played. See also ``--no-aspect``. -- cgit v1.2.3 From 47d35ca6befe766be89d0e4efc6b6dabd02175fb Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Sun, 31 Mar 2013 19:13:06 +0200 Subject: encoding-example-profiles and manpage: prefer libvorbis over vorbis vorbis is the builtin bad vorbis encoder; whenever possible, one should rather use the "libvorbis" codec name. --- DOCS/encoding.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/encoding.rst b/DOCS/encoding.rst index 23a89d3163..979bc0b322 100644 --- a/DOCS/encoding.rst +++ b/DOCS/encoding.rst @@ -67,7 +67,7 @@ Typical MPEG-4 Part 10 ("AVC", "H.264") encoding, Matroska (MKV) container:: mpv infile -o outfile.mkv \ -ovc libx264 -ovcopts preset=medium,crf=23,profile=baseline \ - -oac vorbis -oacopts qscale=3 + -oac libvorbis -oacopts qscale=3 Typical MPEG-4 Part 10 ("AVC", "H.264") encoding, MPEG-4 (MP4) container:: -- cgit v1.2.3 From c80c6fa2706da8761d3b81cc55cce18f8cf5edc3 Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 31 Mar 2013 22:00:56 +0200 Subject: manpage: fix a typo --- DOCS/man/en/input.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/input.rst b/DOCS/man/en/input.rst index 9dda58adbd..dc256fbf02 100644 --- a/DOCS/man/en/input.rst +++ b/DOCS/man/en/input.rst @@ -317,7 +317,7 @@ dheight video height aspect x video aspect video x current video track (similar to ``--vid``) program x switch TS program (write-only) -sub x current subttitle track (similar to ``--sid``) +sub x current subtitle track (similar to ``--sid``) sub-delay x see ``--sub-delay`` sub-pos x see ``--sub-pos`` sub-visibility x whether current subtitle is rendered -- cgit v1.2.3 From ccc213fdac9783b9e450342cf5a346508e961e2f Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 4 Apr 2013 14:24:42 +0200 Subject: core: add --heartbeat-interval option This closely follows MPlayer commit 36099, with some changes. Move a mutable static variable into MPContext. --- DOCS/man/en/options.rst | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index d64cbe8f80..cc55c3a40e 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -786,7 +786,8 @@ --heartbeat-cmd Command that is executed every 30 seconds during playback via *system()* - - i.e. using the shell. + i.e. using the shell. The time between the commands can be customized with + the ``--heartbeat-interval`` option. *NOTE*: mpv uses this command without any checking. It is your responsibility to ensure it does not cause security problems (e.g. make @@ -805,6 +806,9 @@ *EXAMPLE for GNOME screensaver*: ``mpv --heartbeat-cmd="gnome-screensaver-command -p" file`` +--heartbeat-interval= + Time between ``--heartbeat-cmd`` invocations in seconds (default: 30). + --help Show short summary of options. -- cgit v1.2.3 From 75afa370b9aba90be73b8acc97eb9669bc0f2133 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 4 Apr 2013 01:43:14 +0200 Subject: demux_mkv: try to show current subtitle when seeking Makes sure that seeking to a given time position shows the subtitle at that position. This can fail if the subtitle packet is not close enough to the seek target. Always enabled for hr-seeks, and can be manually enabled for normal seeks with --mkv-subtitle-preroll. This helps displaying subtitles correctly with ordered chapters. When switching ordered chapter segments, a seek is performed. If the subtitle is timed slightly before the start of the segment, it normally won't be demuxed. This is a problem with all seeks, but in this case normal playback is affected. Since switching segments always uses hr-seeks, the code added by this commit is always active in this situation. If no subtitles are selected or the subtitles come from an external file, the demuxer should behave exactly as before this commit. --- DOCS/man/en/options.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index cc55c3a40e..5faf3cdb7e 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -1173,6 +1173,29 @@ :fps=: output fps (default: 25) :type=: input file type (available: jpeg, png, tga, sgi) +--mkv-subtitle-preroll + Try harder to show embedded soft subtitles when seeking somewhere. Normally, + it can happen that the subtitle at the seek target is not shown due to how + some container file formats are designed. The subtitles appear only if + seeking before or exactly to the position a subtitle first appears. To + make this worse, subtitles are often timed to appear a very small amount + before the associated video frame, so that seeking to the video frame + typically does not demux the subtitle at that position. + + Enabling this option makes the demuxer start reading data a bit before the + seek target, so that subtitles appear correctly. Note that this makes + seeking slower, and is not guaranteed to always work. It only works if the + subtitle is close enough to the seek target. + + Works with the internal Matroska demuxer only. Always enabled for absolute + and hr-seeks, and this option changes behavior with relative or imprecise + seeks only. + + See also ``--hr-seek-demuxer-offset`` option. This option can achieve a + similar effect, but only if hr-seek is active. It works with any demuxer, + but makes seeking much slower, as it has to decode audio and video data, + instead of just skipping over it. + --mixer= Use a mixer device different from the default ``/dev/mixer``. For ALSA this is the mixer name. -- cgit v1.2.3 From 4e55a6e828e4234fafe00e56573b24897380dcb1 Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 5 Apr 2013 10:54:07 +0200 Subject: Remove some apple remote leftovers The options and key names don't do anything anymore. --- DOCS/man/en/options.rst | 4 ---- 1 file changed, 4 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 5faf3cdb7e..b99c2428fb 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -911,10 +911,6 @@ Specify input configuration file other than the default ``~/.mpv/input.conf``. ---input-ar-dev= - Device to be used for Apple IR Remote (default is autodetected, Linux - only). - --input-ar-delay Delay in milliseconds before we start to autorepeat a key (0 to disable). -- cgit v1.2.3 From 9df2260506f825a05ecd500496260292ef2481aa Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 10 Apr 2013 21:06:00 +0200 Subject: core: add --reset-on-next-file option This option can be used to selectively reset settings when playing the next file in the playlist (i.e. restore mplayer and mplayer2 behavior). Might remove this option again should it turn out that nobody uses it. --- DOCS/man/en/options.rst | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index b99c2428fb..fab682fdd5 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -1739,6 +1739,30 @@ --referrer= Specify a referrer path or URL for HTTP requests. +--reset-on-next-file= + Normally, mpv will try to keep all settings when playing the next file on + the playlist, even if they were changed by the user during playback. (This + behavior is the opposite of MPlayer's, which tries to reset all settings + when starting next file.) + + This can be changed with this option. It accepts a list of options, and + mpv will reset the value of these options on playback start to the initial + value. The initial value is either the default value, or as set by the + config file or command line. + + In some cases, this might not work as expected. For example, ``--volume`` + will only be reset the volume if it's explicitly set in the config file + or the command line. + + The special name ``all`` resets as many options as possible. + + *EXAMPLE*: + + - ``--reset-on-next-file=fullscreen,speed`` Reset fullscreen and playback + speed settings if they were changed during playback. + - ``--reset-on-next-file=all`` Try to reset all settings that were changed + during playback. + --reuse-socket (udp:// only) Allows a socket to be reused by other processes as soon as it is closed. -- cgit v1.2.3 From a5916f5d1df7ad9c3e9d2644f930a3e62c4c0d3c Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 12 Apr 2013 14:36:26 +0200 Subject: core: remove dead --vsync leftovers --- DOCS/man/en/input.rst | 1 - 1 file changed, 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/input.rst b/DOCS/man/en/input.rst index dc256fbf02..339168b3c4 100644 --- a/DOCS/man/en/input.rst +++ b/DOCS/man/en/input.rst @@ -305,7 +305,6 @@ contrast x see ``--contrast`` saturation x see ``--saturation`` hue x see ``--hue`` panscan x see ``--panscan`` -vsync x see ``--vsync`` video-format video format (string) video-codec video codec selected for decoding video-bitrate video bitrate -- cgit v1.2.3 From df8a481eba2316f8171ec0cde4e8e192765aad16 Mon Sep 17 00:00:00 2001 From: wm4 Date: Sat, 13 Apr 2013 18:53:03 +0200 Subject: sub: add --osd-blur and --sub-text-blur options These require bleeding edge libass (latest git version), and will be ignored otherwise. I'm not sure about the blur factor and scaling. The ASS/VSFilter semantics for blur scaling are a bad mess. Might require further investigation. --- DOCS/man/en/options.rst | 3 +++ 1 file changed, 3 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index fab682fdd5..6299894b7a 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -1351,6 +1351,9 @@ --osd-back-color=<#RRGGBB>, --sub-text-back-color=<#RRGGBB> See ``--osd-color``. Color used for OSD/sub text background. +--osd-blur=<0..20.0>, --sub-text-blur=<0..20.0> + Gaussian blur factor. 0 means no blur applied (default). + --osd-border-color=<#RRGGBB>, --sub-text-border-color=<#RRGGBB> See ``--osd-color``. Color used for the OSD/sub font border. -- cgit v1.2.3 From 4beedec44d9eac2d26becb10cdf7739a76e88096 Mon Sep 17 00:00:00 2001 From: Ellis Berner Date: Thu, 18 Apr 2013 14:41:32 -0700 Subject: Fix typo for opengl dither-depth default --- DOCS/man/en/vo.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/vo.rst b/DOCS/man/en/vo.rst index 6d64e3062e..29c1364f77 100644 --- a/DOCS/man/en/vo.rst +++ b/DOCS/man/en/vo.rst @@ -320,7 +320,7 @@ opengl sporadic and temporary image corruption. dither-depth= - Set dither target depth to N. Default: auto. + Set dither target depth to N. Default: no. no Disable any dithering done by mpv. -- cgit v1.2.3 From 6d66a547a4575862048793ff0c82fe3db27c8a1b Mon Sep 17 00:00:00 2001 From: wm4 Date: Sat, 20 Apr 2013 23:23:09 +0200 Subject: manpage: clarify --cache behavior --- DOCS/man/en/options.rst | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 6299894b7a..5e64c641db 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -321,6 +321,12 @@ from slow media, but can also have negative effects, especially with file formats that require a lot of seeking, such as mp4. See also ``--no-cache``. + Note that half the cache size will be used to allow fast seeking back. This + is also the reason why a full cache is usually reported as 50% full. The + cache fill display does not include the part of the cache reserved for + seeking back. Likewise, when starting a file the cache will be at 100%, + because no space is reserved for seeking back yet. + --cache-pause= If the cache percentage goes below the specified value, pause and wait until the percentage set by ``--cache-min`` is reached, then resume -- cgit v1.2.3 From 79797181598facbdb055e16fc7c13abbb1aa7db9 Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 11 Mar 2013 00:16:34 +0100 Subject: vf_lavfi: add libavfilter bridge Requires recent FFmpeg/Libav git versions. Earlier versions will not be supported, as the API is different. (A libavfilter version that uses AVFrame instead of AVFilterBuffer is needed.) Note that this is sort of useless, because the option parser prevents you from making use of the full libavfilter graph syntax. This has to be fixed later. Most of the filter creation code (half of the config() function) has been taken from avplay.c. This code is not based on MPlayer's vf_lavfi. The MPlayer code doesn't compile as it hasn't been updated through multiple libavfilter API changes, making it completely useless as a starting point. --- DOCS/man/en/vf.rst | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/vf.rst b/DOCS/man/en/vf.rst index 4e1e0b733b..1d6a8512d6 100644 --- a/DOCS/man/en/vf.rst +++ b/DOCS/man/en/vf.rst @@ -367,6 +367,37 @@ pp[=filter1[:option1[:option2...]]/[-]filter2...] Horizontal deblocking on luminance only, and switch vertical deblocking on or off automatically depending on available CPU time. +lavfi=graph[:sws_flags] + + + The libavfilter graph string. The filter must have a single video input + pad and a single video output pad. + + See ``https://ffmpeg.org/ffmpeg-filters.html`` for syntax and available + filters. + + *WARNING*: if you want to use the full filter syntax with this option, + you have to quote the filter graph in order to prevent mpv's syntax + and the filter graph syntax from clashing. + + *EXAMPLE*: + + ``'--vf=lavfi=graph="gradfun=20:30"'`` + gradfun filter with non-sensical parameters. The ``'`` quotes are + for the shell. Otherwise, the shell would remove the ``"`` quotes. + + ``'--vf=lavfi=graph="gradfun=radius=30:strength=20,vflip"'`` + same as before, but uses named parameters. Also a vflip filter is + appended, demonstrating how libavfilter actually takes a graph + description and not a single filter. + + + If libavfilter inserts filters for pixel format conversion, this + option gives the flags which should be passed to libswscale. This + option is numeric and takes a bit-wise combination of ``SWS_`` flags. + + See ``http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libswscale/swscale.h``. + noise[=luma[u][t|a][h][p]:chroma[u][t|a][h][p]] Adds noise. -- cgit v1.2.3 From c8df1799d93f0dc04158c173fe70288c480b2d89 Mon Sep 17 00:00:00 2001 From: wm4 Date: Tue, 23 Apr 2013 14:10:43 +0200 Subject: m_option: allow quoted positional parameters for -vf This allows things like: '--vf=lavfi="gradfun=20:30"' Adjust the documentation for vf_lavfi to make the example less verbose. As an unrelated change, add a general description to vf_lavfi. --- DOCS/man/en/vf.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'DOCS') diff --git a/DOCS/man/en/vf.rst b/DOCS/man/en/vf.rst index 1d6a8512d6..e534c73ec3 100644 --- a/DOCS/man/en/vf.rst +++ b/DOCS/man/en/vf.rst @@ -368,6 +368,7 @@ pp[=filter1[:option1[:option2...]]/[-]filter2...] deblocking on or off automatically depending on available CPU time. lavfi=graph[:sws_flags] + Filter video using ffmpeg's libavfilter. The libavfilter graph string. The filter must have a single video input @@ -382,7 +383,7 @@ lavfi=graph[:sws_flags] *EXAMPLE*: - ``'--vf=lavfi=graph="gradfun=20:30"'`` + ``'--vf=lavfi="gradfun=20:30"'`` gradfun filter with non-sensical parameters. The ``'`` quotes are for the shell. Otherwise, the shell would remove the ``"`` quotes. -- cgit v1.2.3 From d638a8eda8212e69652415b313e0ce75e1210f1c Mon Sep 17 00:00:00 2001 From: wm4 Date: Tue, 23 Apr 2013 14:16:06 +0200 Subject: manpage: remove references to --no-slices Background: slice support has been completely removed, because it doesn't work with multithreading, and provides a rather bad complexity to performance tradeoff otherwise. --- DOCS/man/en/vo.rst | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/vo.rst b/DOCS/man/en/vo.rst index 29c1364f77..6e39e57793 100644 --- a/DOCS/man/en/vo.rst +++ b/DOCS/man/en/vo.rst @@ -474,7 +474,7 @@ opengl-old (no-)force-pbo Always uses PBOs to transfer textures even if this involves an extra copy. Currently this gives a little extra speed with NVidia drivers - and a lot more speed with ATI drivers. May need ``--no-slices`` and + and a lot more speed with ATI drivers. May need the ati-hack suboption to work correctly. (no-)scaled-osd Changes the way the OSD behaves when the size of the window changes @@ -626,12 +626,6 @@ opengl-old slice-height=<0-...> Number of lines copied to texture in one piece (default: 0). 0 for whole image. - - *NOTE*: If YUV colorspace is used (see `yuv` suboption), special rules - apply: If the decoder uses slice rendering (see ``--no-slices``), this - setting has no effect, the size of the slices as provided by the - decoder is used. If the decoder does not use slice rendering, the - default is 16. sw Continue even if a software renderer is detected. -- cgit v1.2.3 From ff549a2f6ade72ee9af42e911139bbee41daee5a Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 24 Apr 2013 19:31:48 +0200 Subject: core: add backstep support Allows stepping back one frame via the frame_back_step inout command, bound to "," by default. This uses the precise seeking facility, and a perfect frame index built on the fly. The index is built during playback and precise seeking, and contains (as of this commit) the last 100 displayed or skipped frames. This index is used to find the PTS of the previous frame, which is then used as target for a precise seek. If no PTS is found, the core attempts to do a seek before the current frame, and skip decoded frames until the current frame is reached; this will create a sufficient index and the normal backstep algorithm can be applied. This can be rather slow. The worst case for backstepping is about the same as the worst case for precise seeking if the previous frame can be deduced from the index. If not, the worst case will be twice as slow. There's also some minor danger that the index is incorrect in case framedropping is involved. For framedropping due to --framedrop, this problem is ignored (use of --framedrop is discouraged anyway). For framedropping during precise seeking (done to make it faster), we try to not add frames to the index that are produced when this can happen. I'm not sure how well that works (or if the logic is sane), and it's sure to break with some video filters. In the worst case, backstepping might silently skip frames if you backstep after a user-initiated precise seek. (Precise seeks to do indexing are not affected.) Likewise, video filters that somehow change timing of frames and do not do this in a deterministic way (i.e. if you seek to a position, frames with different timings are produced than when the position is reached during normal playback) will make backstepping silently jump to the wrong frame. Enabling/disabling filters during playback (like for example deinterlacing) will have similar bad effects. --- DOCS/man/en/input.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/input.rst b/DOCS/man/en/input.rst index 339168b3c4..7938502573 100644 --- a/DOCS/man/en/input.rst +++ b/DOCS/man/en/input.rst @@ -79,6 +79,17 @@ seek [relative|absolute|absolute-percent|- [default-precise|exact|keyf frame_step Play one frame, then pause. +frame_back_step + Go back by one frame, then pause. Note that this can be very slow (it tries + to be precise, not fast), and sometimes fails to behave as expected. How + well this works depends on whether precise seeking works correctly (e.g. + see the ``--hr-seek-demuxer-offset`` option). Video filters or other video + postprocessing that modifies timing of frames (e.g. deinterlacing) should + usually work, but might make backstepping silently behave incorrectly in + corner cases. + + This doesn't work with audio-only playback. + set "" Set the given property to the given value. -- cgit v1.2.3 From 4873c798b686f75f53a4d3767f364f3fc7197d57 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 24 Apr 2013 21:37:10 +0200 Subject: manpage: document --native-keyrepeat Forgotten in commit d853aba. --- DOCS/man/en/options.rst | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 5e64c641db..c301a3346e 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -1277,6 +1277,12 @@ --name Set the window class name for X11-based video output methods. +--native-keyrepeat + Use system settings for keyrepeat delay and rate, instead of + ``--input-ar-delay`` and ``--input-ar-rate``. (Whether this applies + depends on the VO backend and how it handles keyboard input. Does not + apply to terminal input.) + --avi-ni (Internal AVI demuxer which is not used by default only) Force usage of non-interleaved AVI parser (fixes playback of some bad AVI -- cgit v1.2.3 From 55262a442762f82fe818241dfe3dbecc1f42e295 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 24 Apr 2013 21:38:42 +0200 Subject: manpage: remove broken example Weird video size presets have been removed. --- DOCS/man/en/options.rst | 3 --- 1 file changed, 3 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index c301a3346e..060ca444b9 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -1742,9 +1742,6 @@ *EXAMPLE*: - - ``mpv foreman.qcif --demuxer=rawvideo --rawvideo=qcif`` Play the - famous "foreman" sample video. - - ``mpv sample-720x576.yuv --demuxer=rawvideo --rawvideo=w=720:h=576`` Play a raw YUV sample. -- cgit v1.2.3 From 28a971e26f7318d2081dff8c95a3844823ed7c9d Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 26 Apr 2013 16:52:54 +0200 Subject: options: allow using [ ] for quoting in sub-options This is an attempt to make quoting of sub-option values less awkward, even if it works only with some shells. This is needed mainly for vf_lavfi. Also update the vf_lavfi manpage section. --- DOCS/man/en/vf.rst | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/vf.rst b/DOCS/man/en/vf.rst index e534c73ec3..846d3ffac6 100644 --- a/DOCS/man/en/vf.rst +++ b/DOCS/man/en/vf.rst @@ -383,14 +383,21 @@ lavfi=graph[:sws_flags] *EXAMPLE*: - ``'--vf=lavfi="gradfun=20:30"'`` - gradfun filter with non-sensical parameters. The ``'`` quotes are - for the shell. Otherwise, the shell would remove the ``"`` quotes. + ``-vf lavfi=[gradfun=20:30,vflip]`` + gradfun filter with nonsense parameters, followed by a vflip + filter. (This demonstrates how libavfilter takes a graph and not + just a single filter.) The filter graph string is quoted with + ``[`` and ``]``. This requires no additional quoting or escaping + with some shells (like bash), while others (like zsh) require + additional ``"`` quotes around the option string. + + ``'--vf=lavfi="gradfun=20:30,vflip"'`` + same as before, but uses quoting that should be safe with all + shells. The outer ``'`` quotes make sure that the shell doesn't + remove the ``"`` quotes needed by mpv. ``'--vf=lavfi=graph="gradfun=radius=30:strength=20,vflip"'`` - same as before, but uses named parameters. Also a vflip filter is - appended, demonstrating how libavfilter actually takes a graph - description and not a single filter. + same as before, but uses named parameters for everything. If libavfilter inserts filters for pixel format conversion, this -- cgit v1.2.3 From 56efcc7b7f609f3dfd5a0060d0b8b700cde75890 Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 26 Apr 2013 18:56:25 +0200 Subject: manpage: fix references to --slave --- DOCS/man/en/options.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 060ca444b9..16d993d889 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -885,7 +885,7 @@ --idle Makes mpv wait idly instead of quitting when there is no file to play. Mostly useful in slave mode where mpv can be controlled through input - commands (see also ``--slave``). + commands (see also ``--slave-broken``). --idx Rebuilds index of files if no index was found, allowing seeking. Useful @@ -938,7 +938,7 @@ --input-file= Read commands from the given file. Mostly useful with a FIFO. - See also ``--slave``. + See also ``--slave-broken``. *NOTE*: When the given file is a FIFO mpv opens both ends so you can do several `echo "seek 10" > mp_pipe` and the pipe will stay -- cgit v1.2.3 From daee1a04e7eea66f820934368371c6e2b8c759ba Mon Sep 17 00:00:00 2001 From: reimar Date: Fri, 26 Apr 2013 19:50:19 +0000 Subject: stream_bluray: remove the broken -bluray-chapter option Remove the broken -bluray-chapter option. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@36175 b3059339-0415-0410-9bf9-f77b7e298cf2 Conflicts: DOCS/man/en/mplayer.1 cfg-common.h --- DOCS/man/en/options.rst | 5 ----- 1 file changed, 5 deletions(-) (limited to 'DOCS') diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 16d993d889..c805e04002 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -296,11 +296,6 @@ Some Blu-ray discs contain scenes that can be viewed from multiple angles. Here you can tell mpv which angles to use (default: 1). ---bluray-chapter= - (Blu-ray only) - Tells mpv which Blu-ray chapter to start the current title from - (default: 1). - --bluray-device= (Blu-ray only) Specify the Blu-ray disc location. Must be a directory with Blu-ray -- cgit v1.2.3