summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-12-10 19:08:20 -0800
committerMichael Forney <mforney@mforney.org>2016-12-10 19:08:20 -0800
commitf3a0aab243ef1d93f0fd9398aa35c084a7d7c058 (patch)
treea7b8d481d10e5343f80788b776a32970ba2b92bb
parentc20ac1e80d6c73d023353860ac98b6ca5e5b0693 (diff)
mpv: Update to 0.22.0
-rw-r--r--media/mpv/config.h4
-rw-r--r--media/mpv/patch/0001-Include-poll.h-instead-of-sys-poll.h.patch8
-rw-r--r--media/mpv/patch/0002-Add-generated-ebml-sources.patch208
-rw-r--r--media/mpv/patch/0003-Add-generated-man-page.patch421
-rw-r--r--media/mpv/patch/0004-ad_spdif-Fix-crash-when-spdif-muxer-is-not-available.patch6
-rw-r--r--media/mpv/rev2
-rw-r--r--media/mpv/sources.txt4
m---------media/mpv/src0
8 files changed, 425 insertions, 228 deletions
diff --git a/media/mpv/config.h b/media/mpv/config.h
index af99eafd..c8289a41 100644
--- a/media/mpv/config.h
+++ b/media/mpv/config.h
@@ -24,6 +24,7 @@
#define HAVE_LIBM 1
#define HAVE_MINGW 0
#define HAVE_POSIX 1
+#define HAVE_FNMATCH 1
#define HAVE_POSIX_OR_MINGW 1
#define HAVE_WIN32 0
#define HAVE_WIN32_INTERNAL_PTHREADS 0
@@ -34,6 +35,7 @@
#define HAVE_SYNC_BUILTINS 0
#define HAVE_ATOMICS 1
#define HAVE_C11_TLS 1
+#define HAVE_GCC_TLS 1
#define HAVE_LIBRT 1
#define HAVE_ICONV 1
#define HAVE_DOS_PATHS 0
@@ -89,6 +91,7 @@
#define HAVE_OPENSLES 0
#define HAVE_ALSA 1
#define HAVE_COREAUDIO 0
+#define HAVE_AUDIOUNIT 0
#define HAVE_WASAPI 0
#define HAVE_COCOA 0
#define HAVE_DRM 1
@@ -124,6 +127,7 @@
#define HAVE_RPI 0
#define HAVE_STANDARD_GL 0
#define HAVE_ANDROID_GL 0
+#define HAVE_IOS_GL 0
#define HAVE_ANY_GL 0
#define HAVE_PLAIN_GL 0
#define HAVE_MALI_FBDEV 0
diff --git a/media/mpv/patch/0001-Include-poll.h-instead-of-sys-poll.h.patch b/media/mpv/patch/0001-Include-poll.h-instead-of-sys-poll.h.patch
index 11c39cfc..d466d1dc 100644
--- a/media/mpv/patch/0001-Include-poll.h-instead-of-sys-poll.h.patch
+++ b/media/mpv/patch/0001-Include-poll.h-instead-of-sys-poll.h.patch
@@ -1,4 +1,4 @@
-From 38c6d6ee98b8a8eaafc71c6ca4e13f52152a40fa Mon Sep 17 00:00:00 2001
+From 935018562e6fee649bb629a873d4c3beca3bc72e Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Sat, 2 Jul 2016 17:11:20 -0700
Subject: [PATCH] Include poll.h instead of sys/poll.h
@@ -9,7 +9,7 @@ Subject: [PATCH] Include poll.h instead of sys/poll.h
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/video/out/drm_common.c b/video/out/drm_common.c
-index 44e017e..3a9b2a4 100644
+index 44e017e4b..3a9b2a4b3 100644
--- a/video/out/drm_common.c
+++ b/video/out/drm_common.c
@@ -16,10 +16,10 @@
@@ -25,7 +25,7 @@ index 44e017e..3a9b2a4 100644
#include <sys/vt.h>
#include <unistd.h>
diff --git a/video/out/vo_drm.c b/video/out/vo_drm.c
-index 7e642e3..726d820 100644
+index 7e642e391..726d820ba 100644
--- a/video/out/vo_drm.c
+++ b/video/out/vo_drm.c
@@ -18,9 +18,9 @@
@@ -40,5 +40,5 @@ index 7e642e3..726d820 100644
#include <libswscale/swscale.h>
--
-2.10.1
+2.11.0
diff --git a/media/mpv/patch/0002-Add-generated-ebml-sources.patch b/media/mpv/patch/0002-Add-generated-ebml-sources.patch
index 88f9d544..bb3be12e 100644
--- a/media/mpv/patch/0002-Add-generated-ebml-sources.patch
+++ b/media/mpv/patch/0002-Add-generated-ebml-sources.patch
@@ -1,4 +1,4 @@
-From 66c3084212b84095703b39c6c4bfc76dca03c564 Mon Sep 17 00:00:00 2001
+From 79a9af59e6865a39214f628186fd768165fa2329 Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Sat, 2 Jul 2016 17:32:27 -0700
Subject: [PATCH] Add generated ebml sources
@@ -8,18 +8,18 @@ These require perl to generate.
$ perl TOOLS/matroska.pl --generate-header demux/ebml.c demux/demux_mkv.c > demux/ebml_types.h
$ perl TOOLS/matroska.pl --generate-definitions demux/ebml.c > demux/ebml_defs.c
---
- demux/ebml_defs.c | 448 +++++++++++++++++++++++++++++++++++++++++++++++
- demux/ebml_types.h | 502 +++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 950 insertions(+)
+ demux/ebml_defs.c | 529 +++++++++++++++++++++++++++++++++++++++++++++++
+ demux/ebml_types.h | 587 +++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 1116 insertions(+)
create mode 100644 demux/ebml_defs.c
create mode 100644 demux/ebml_types.h
diff --git a/demux/ebml_defs.c b/demux/ebml_defs.c
new file mode 100644
-index 0000000..230c184
+index 000000000..3fcbf8a5b
--- /dev/null
+++ b/demux/ebml_defs.c
-@@ -0,0 +1,448 @@
+@@ -0,0 +1,529 @@
+/* Generated by TOOLS/matroska.pl, do not edit manually */
+
+
@@ -189,8 +189,89 @@ index 0000000..230c184
+
+E("StereoMode", stereo_mode, EBML_TYPE_UINT)
+
++E("MatrixCoefficients", matrix_coefficients, EBML_TYPE_UINT)
++
++E("BitsPerChannel", bits_per_channel, EBML_TYPE_UINT)
++
++E("ChromaSubsamplingHorz", chroma_subsampling_horz, EBML_TYPE_UINT)
++
++E("ChromaSubsamplingVert", chroma_subsampling_vert, EBML_TYPE_UINT)
++
++E("CbSubsamplingHorz", cb_subsampling_horz, EBML_TYPE_UINT)
++
++E("CbSubsamplingVert", cb_subsampling_vert, EBML_TYPE_UINT)
++
++E("ChromaSitingHorz", chroma_siting_horz, EBML_TYPE_UINT)
++
++E("ChromaSitingVert", chroma_siting_vert, EBML_TYPE_UINT)
++
++E("Range", range, EBML_TYPE_UINT)
++
++E("TransferCharacteristics", transfer_characteristics, EBML_TYPE_UINT)
++
++E("Primaries", primaries, EBML_TYPE_UINT)
++
++E("MaxCLL", max_cll, EBML_TYPE_UINT)
++
++E("MaxFALL", max_fall, EBML_TYPE_UINT)
++
++E("PrimaryRChromaticityX", primary_r_chromaticity_x, EBML_TYPE_FLOAT)
++
++E("PrimaryRChromaticityY", primary_r_chromaticity_y, EBML_TYPE_FLOAT)
++
++E("PrimaryGChromaticityX", primary_g_chromaticity_x, EBML_TYPE_FLOAT)
++
++E("PrimaryGChromaticityY", primary_g_chromaticity_y, EBML_TYPE_FLOAT)
++
++E("PrimaryBChromaticityX", primary_b_chromaticity_x, EBML_TYPE_FLOAT)
++
++E("PrimaryBChromaticityY", primary_b_chromaticity_y, EBML_TYPE_FLOAT)
++
++E("WhitePointChromaticityX", white_point_chromaticity_x, EBML_TYPE_FLOAT)
++
++E("WhitePointChromaticityY", white_point_chromaticity_y, EBML_TYPE_FLOAT)
++
++E("LuminanceMax", luminance_max, EBML_TYPE_FLOAT)
++
++E("LuminanceMin", luminance_min, EBML_TYPE_FLOAT)
++
++#define N mastering_metadata
++E_S("MasteringMetadata", 10)
++F(MATROSKA_ID_LUMINANCEMAX, luminance_max, 0)
++F(MATROSKA_ID_LUMINANCEMIN, luminance_min, 0)
++F(MATROSKA_ID_PRIMARYBCHROMATICITYX, primary_b_chromaticity_x, 0)
++F(MATROSKA_ID_PRIMARYBCHROMATICITYY, primary_b_chromaticity_y, 0)
++F(MATROSKA_ID_PRIMARYGCHROMATICITYX, primary_g_chromaticity_x, 0)
++F(MATROSKA_ID_PRIMARYGCHROMATICITYY, primary_g_chromaticity_y, 0)
++F(MATROSKA_ID_PRIMARYRCHROMATICITYX, primary_r_chromaticity_x, 0)
++F(MATROSKA_ID_PRIMARYRCHROMATICITYY, primary_r_chromaticity_y, 0)
++F(MATROSKA_ID_WHITEPOINTCHROMATICITYX, white_point_chromaticity_x, 0)
++F(MATROSKA_ID_WHITEPOINTCHROMATICITYY, white_point_chromaticity_y, 0)
++}};
++#undef N
++
++#define N colour
++E_S("Colour", 14)
++F(MATROSKA_ID_BITSPERCHANNEL, bits_per_channel, 0)
++F(MATROSKA_ID_CBSUBSAMPLINGHORZ, cb_subsampling_horz, 0)
++F(MATROSKA_ID_CBSUBSAMPLINGVERT, cb_subsampling_vert, 0)
++F(MATROSKA_ID_CHROMASITINGHORZ, chroma_siting_horz, 0)
++F(MATROSKA_ID_CHROMASITINGVERT, chroma_siting_vert, 0)
++F(MATROSKA_ID_CHROMASUBSAMPLINGHORZ, chroma_subsampling_horz, 0)
++F(MATROSKA_ID_CHROMASUBSAMPLINGVERT, chroma_subsampling_vert, 0)
++F(MATROSKA_ID_MASTERINGMETADATA, mastering_metadata, 0)
++F(MATROSKA_ID_MATRIXCOEFFICIENTS, matrix_coefficients, 0)
++F(MATROSKA_ID_MAXCLL, max_cll, 0)
++F(MATROSKA_ID_MAXFALL, max_fall, 0)
++F(MATROSKA_ID_PRIMARIES, primaries, 0)
++F(MATROSKA_ID_RANGE, range, 0)
++F(MATROSKA_ID_TRANSFERCHARACTERISTICS, transfer_characteristics, 0)
++}};
++#undef N
++
+#define N video
-+E_S("Video", 9)
++E_S("Video", 10)
++F(MATROSKA_ID_COLOUR, colour, 0)
+F(MATROSKA_ID_COLOURSPACE, colour_space, 0)
+F(MATROSKA_ID_DISPLAYHEIGHT, display_height, 0)
+F(MATROSKA_ID_DISPLAYUNIT, display_unit, 0)
@@ -470,10 +551,10 @@ index 0000000..230c184
+#undef N
diff --git a/demux/ebml_types.h b/demux/ebml_types.h
new file mode 100644
-index 0000000..3739ec5
+index 000000000..4c61d77a0
--- /dev/null
+++ b/demux/ebml_types.h
-@@ -0,0 +1,502 @@
+@@ -0,0 +1,587 @@
+/* Generated by TOOLS/matroska.pl, do not edit manually */
+
+#define EBML_ID_EBMLVERSION 0x4286
@@ -537,6 +618,31 @@ index 0000000..3739ec5
+#define MATROSKA_ID_FRAMERATE 0x2383e3
+#define MATROSKA_ID_COLOURSPACE 0x2eb524
+#define MATROSKA_ID_STEREOMODE 0x53b8
++#define MATROSKA_ID_MATRIXCOEFFICIENTS 0x55B1
++#define MATROSKA_ID_BITSPERCHANNEL 0x55B2
++#define MATROSKA_ID_CHROMASUBSAMPLINGHORZ 0x55B3
++#define MATROSKA_ID_CHROMASUBSAMPLINGVERT 0x55B4
++#define MATROSKA_ID_CBSUBSAMPLINGHORZ 0x55B5
++#define MATROSKA_ID_CBSUBSAMPLINGVERT 0x55B6
++#define MATROSKA_ID_CHROMASITINGHORZ 0x55B7
++#define MATROSKA_ID_CHROMASITINGVERT 0x55B8
++#define MATROSKA_ID_RANGE 0x55B9
++#define MATROSKA_ID_TRANSFERCHARACTERISTICS 0x55BA
++#define MATROSKA_ID_PRIMARIES 0x55BB
++#define MATROSKA_ID_MAXCLL 0x55BC
++#define MATROSKA_ID_MAXFALL 0x55BD
++#define MATROSKA_ID_PRIMARYRCHROMATICITYX 0x55D1
++#define MATROSKA_ID_PRIMARYRCHROMATICITYY 0x55D2
++#define MATROSKA_ID_PRIMARYGCHROMATICITYX 0x55D3
++#define MATROSKA_ID_PRIMARYGCHROMATICITYY 0x55D4
++#define MATROSKA_ID_PRIMARYBCHROMATICITYX 0x55D5
++#define MATROSKA_ID_PRIMARYBCHROMATICITYY 0x55D6
++#define MATROSKA_ID_WHITEPOINTCHROMATICITYX 0x55D7
++#define MATROSKA_ID_WHITEPOINTCHROMATICITYY 0x55D8
++#define MATROSKA_ID_LUMINANCEMAX 0x55D9
++#define MATROSKA_ID_LUMINANCEMIN 0x55DA
++#define MATROSKA_ID_MASTERINGMETADATA 0x55D0
++#define MATROSKA_ID_COLOUR 0x55B0
+#define MATROSKA_ID_VIDEO 0xe0
+#define MATROSKA_ID_SAMPLINGFREQUENCY 0xb5
+#define MATROSKA_ID_OUTPUTSAMPLINGFREQUENCY 0x78b5
@@ -610,12 +716,12 @@ index 0000000..3739ec5
+ uint64_t ebml_read_version;
+ uint64_t ebml_version;
+
-+ int n_doc_type_version;
-+ int n_doc_type_read_version;
+ int n_ebml_version;
+ int n_ebml_max_id_length;
+ int n_ebml_max_size_length;
+ int n_doc_type;
++ int n_doc_type_version;
++ int n_doc_type_read_version;
+ int n_ebml_read_version;
+};
+
@@ -677,16 +783,73 @@ index 0000000..3739ec5
+ int n_simple_block;
+};
+
++struct ebml_mastering_metadata {
++ double luminance_max;
++ double luminance_min;
++ double primary_b_chromaticity_x;
++ double primary_b_chromaticity_y;
++ double primary_g_chromaticity_x;
++ double primary_g_chromaticity_y;
++ double primary_r_chromaticity_x;
++ double primary_r_chromaticity_y;
++ double white_point_chromaticity_x;
++ double white_point_chromaticity_y;
++
++ int n_primary_r_chromaticity_x;
++ int n_primary_r_chromaticity_y;
++ int n_primary_g_chromaticity_x;
++ int n_primary_g_chromaticity_y;
++ int n_primary_b_chromaticity_x;
++ int n_primary_b_chromaticity_y;
++ int n_white_point_chromaticity_x;
++ int n_white_point_chromaticity_y;
++ int n_luminance_max;
++ int n_luminance_min;
++};
++
++struct ebml_colour {
++ uint64_t bits_per_channel;
++ uint64_t cb_subsampling_horz;
++ uint64_t cb_subsampling_vert;
++ uint64_t chroma_siting_horz;
++ uint64_t chroma_siting_vert;
++ uint64_t chroma_subsampling_horz;
++ uint64_t chroma_subsampling_vert;
++ struct ebml_mastering_metadata mastering_metadata;
++ uint64_t matrix_coefficients;
++ uint64_t max_cll;
++ uint64_t max_fall;
++ uint64_t primaries;
++ uint64_t range;
++ uint64_t transfer_characteristics;
++
++ int n_matrix_coefficients;
++ int n_bits_per_channel;
++ int n_chroma_subsampling_horz;
++ int n_chroma_subsampling_vert;
++ int n_cb_subsampling_horz;
++ int n_cb_subsampling_vert;
++ int n_chroma_siting_horz;
++ int n_chroma_siting_vert;
++ int n_range;
++ int n_transfer_characteristics;
++ int n_primaries;
++ int n_max_cll;
++ int n_max_fall;
++ int n_mastering_metadata;
++};
++
+struct ebml_video {
-+ struct bstr colour_space;
-+ uint64_t display_height;
-+ uint64_t display_unit;
-+ uint64_t display_width;
-+ uint64_t flag_interlaced;
-+ double frame_rate;
-+ uint64_t pixel_height;
-+ uint64_t pixel_width;
-+ uint64_t stereo_mode;
++ struct ebml_colour colour;
++ struct bstr colour_space;
++ uint64_t display_height;
++ uint64_t display_unit;
++ uint64_t display_width;
++ uint64_t flag_interlaced;
++ double frame_rate;
++ uint64_t pixel_height;
++ uint64_t pixel_width;
++ uint64_t stereo_mode;
+
+ int n_flag_interlaced;
+ int n_pixel_width;
@@ -697,6 +860,7 @@ index 0000000..3739ec5
+ int n_frame_rate;
+ int n_colour_space;
+ int n_stereo_mode;
++ int n_colour;
+};
+
+struct ebml_audio {
@@ -953,6 +1117,8 @@ index 0000000..3739ec5
+extern const struct ebml_elem_desc ebml_info_desc;
+extern const struct ebml_elem_desc ebml_block_group_desc;
+extern const struct ebml_elem_desc ebml_cluster_desc;
++extern const struct ebml_elem_desc ebml_mastering_metadata_desc;
++extern const struct ebml_elem_desc ebml_colour_desc;
+extern const struct ebml_elem_desc ebml_video_desc;
+extern const struct ebml_elem_desc ebml_audio_desc;
+extern const struct ebml_elem_desc ebml_content_compression_desc;
@@ -977,5 +1143,5 @@ index 0000000..3739ec5
+
+#define MAX_EBML_SUBELEMENTS 23
--
-2.9.2
+2.11.0
diff --git a/media/mpv/patch/0003-Add-generated-man-page.patch b/media/mpv/patch/0003-Add-generated-man-page.patch
index ff4b62a8..5c95cc05 100644
--- a/media/mpv/patch/0003-Add-generated-man-page.patch
+++ b/media/mpv/patch/0003-Add-generated-man-page.patch
@@ -1,4 +1,4 @@
-From 6f17a08a04b52c5fab494b72f77bba0d91042f65 Mon Sep 17 00:00:00 2001
+From 85c80cb0f48c4d51dd5192b79c543a4b8fd863ec Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Sat, 2 Jul 2016 21:08:15 -0700
Subject: [PATCH] Add generated man page
@@ -7,16 +7,16 @@ This requires python and rst2man to generate.
$ rst2man.py DOCS/man/mpv.rst DOCS/man/mpv.1
---
- DOCS/man/mpv.1 | 14114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 14114 insertions(+)
+ DOCS/man/mpv.1 | 14137 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 14137 insertions(+)
create mode 100644 DOCS/man/mpv.1
diff --git a/DOCS/man/mpv.1 b/DOCS/man/mpv.1
new file mode 100644
-index 0000000..4ae65ee
+index 000000000..c411fc606
--- /dev/null
+++ b/DOCS/man/mpv.1
-@@ -0,0 +1,14114 @@
+@@ -0,0 +1,14137 @@
+.\" Man page generated from reStructuredText.
+.
+.TH MPV 1 "" "" "multimedia"
@@ -829,6 +829,15 @@ index 0000000..4ae65ee
+either aliases to documented protocols, or are just redirections to
+protocols implemented and documented in FFmpeg.
+.TP
++.B \fBytdl://...\fP
++By default, the youtube\-dl hook script (enabled by default for mpv CLI)
++only looks at http URLs. Prefixing an URL with \fBytdl://\fP forces it to
++be always processed by the script. This can also be used to invoke special
++youtube\-dl functionality like playing a video by ID or invoking search.
++.sp
++Keep in mind that you can\(aqt pass youtube\-dl command line options by this,
++and you have to use \fB\-\-ytdl\-raw\-options\fP instead.
++.TP
+.B \fB\-\fP
+Play data from stdin.
+.TP
@@ -1659,6 +1668,9 @@ index 0000000..4ae65ee
+.B vdpau
+requires \fB\-\-vo=vdpau\fP or \fB\-\-vo=opengl\fP (Linux only)
+.TP
++.B vdpau\-copy
++copies video back into system RAM (Linux with some GPUs only)
++.TP
+.B vaapi
+requires \fB\-\-vo=opengl\fP or \fB\-\-vo=vaapi\fP (Linux only)
+.TP
@@ -1728,10 +1740,10 @@ index 0000000..4ae65ee
+primarily implemented on the CPU. Some exceptions are \fBvdpaupp\fP,
+\fBvdpaurb\fP and \fBvavpp\fP\&. See \fI\%VIDEO FILTERS\fP for more details.
+.sp
-+The \fBvaapi\-copy\fP and \fBdxva2\-copy\fP modes allow you to use hardware
++The \fB\&...\-copy\fP modes (e.g. \fBdxva2\-copy\fP) allow you to use hardware
+decoding with any VO, backend or filter. Because these copy the decoded
-+video back to system RAM, they\(aqre likely less efficient than the \fBvaapi\fP
-+or \fBdxva2\fP modes respectively.
++video back to system RAM, they\(aqre likely less efficient than the direct
++modes (like e.g. \fBdxva2\fP).
+.sp
+\fBNOTE:\fP
+.INDENT 7.0
@@ -2339,9 +2351,9 @@ index 0000000..4ae65ee
+to use the volume controls of the audio output driver or the internal mpv
+volume filter.
+.sp
-+The current behavior is as if this option was set to \fByes\fP\&. The other
-+behaviors are not available anymore, although \fBauto\fP almost matches
-+current behavior in most cases.
++The current behavior is that softvol is always enabled, i.e. as if this
++option is set to \fByes\fP\&. The other behaviors are not available anymore,
++although \fBauto\fP almost matches current behavior in most cases.
+.sp
+The \fBno\fP behavior is still partially available through the \fBao\-volume\fP
+and \fBao\-mute\fP properties. But there are no options to reset these.
@@ -2726,7 +2738,7 @@ index 0000000..4ae65ee
+.B \fB\-\-sub\-scale\-with\-window=<yes|no>\fP
+Make the subtitle font size relative to the window, instead of the video.
+This is useful if you always want the same font size, even if the video
-+doesn\(aqt covert the window fully, e.g. because screen aspect and window
++doesn\(aqt cover the window fully, e.g. because screen aspect and window
+aspect mismatch (and the player adds black bars).
+.sp
+Default: yes.
@@ -3792,6 +3804,13 @@ index 0000000..4ae65ee
+.UNINDENT
+.UNINDENT
+.TP
++.B \fB\-\-hidpi\-window\-scale\fP, \fB\-\-no\-hidpi\-window\-scale\fP
++(OS X only)
++Scale the window size according to the backing scale factor (default: yes).
++On regular HiDPI resolutions the window opens with double the size but appears
++as having the same size as on none\-HiDPI resolutions. This is the default OS X
++behavior.
++.TP
+.B \fB\-\-monitorpixelaspect=<ratio>\fP
+Set the aspect of a single pixel of your monitor or TV screen (default:
+1). A value of 1 means square pixels (correct for (almost?) all LCDs). See
@@ -5505,7 +5524,25 @@ index 0000000..4ae65ee
+.UNINDENT
+.INDENT 0.0
+.TP
-+.B \fB\-\-scale\-param1=<value>\fP, \fB\-\-scale\-param2=<value>\fP
++.B \fB\-\-cscale=<filter>\fP
++As \fB\-\-scale\fP, but for interpolating chroma information. If the image is
++not subsampled, this option is ignored entirely.
++.TP
++.B \fB\-\-dscale=<filter>\fP
++Like \fB\-\-scale\fP, but apply these filters on downscaling instead. If this
++option is unset, the filter implied by \fB\-\-scale\fP will be applied.
++.TP
++.B \fB\-\-tscale=<filter>\fP
++The filter used for interpolating the temporal axis (frames). This is only
++used if \fB\-\-interpolation\fP is enabled. The only valid choices for
++\fB\-\-tscale\fP are separable convolution filters (use \fB\-\-tscale=help\fP to
++get a list). The default is \fBmitchell\fP\&.
++.sp
++Note that the maximum supported filter radius is currently 3, due to
++limitations in the number of video textures that can be loaded
++simultaneously.
++.TP
++.B \fB\-\-scale\-param1=<value>\fP, \fB\-\-scale\-param2=<value>\fP, \fB\-\-cscale\-param1=<value>\fP, \fB\-\-cscale\-param2=<value>\fP, \fB\-\-dscale\-param1=<value>\fP, \fB\-\-dscale\-param2=<value>\fP, \fB\-\-tscale\-param1=<value>\fP, \fB\-\-tscale\-param2=<value>\fP
+Set filter parameters. Ignored if the filter is not tunable. Currently,
+this affects the following filter parameters:
+.INDENT 7.0
@@ -5524,14 +5561,28 @@ index 0000000..4ae65ee
+algorithm was used. Defaults to 0.0.
+.UNINDENT
+.TP
-+.B \fB\-\-scale\-blur=<value>\fP
-+Kernel scaling factor (also known as a blur factor). Decreasing this makes
-+the result sharper, increasing it makes it blurrier (default 0). If set to
-+0, the kernel\(aqs preferred blur factor is used. Note that setting this too
-+low (eg. 0.5) leads to bad results. It\(aqs generally recommended to stick to
-+values between 0.8 and 1.2.
-+.TP
-+.B \fB\-\-scale\-radius=<value>\fP
++.B \fB\-\-scale\-blur=<value>\fP, \fB\-\-scale\-wblur=<value>\fP, \fB\-\-cscale\-blur=<value>\fP, \fB\-\-cscale\-wblur=<value>\fP, \fB\-\-dscale\-blur=<value>\fP, \fB\-\-dscale\-wblur=<value>\fP, \fB\-\-tscale\-blur=<value>\fP, \fB\-\-tscale\-wblur=<value>\fP
++Kernel/window scaling factor (also known as a blur factor). Decreasing this
++makes the result sharper, increasing it makes it blurrier (default 0). If
++set to 0, the kernel\(aqs preferred blur factor is used. Note that setting
++this too low (eg. 0.5) leads to bad results. It\(aqs generally recommended to
++stick to values between 0.8 and 1.2.
++.TP
++.B \fB\-\-scale\-clamp\fP, \fB\-\-cscale\-clamp\fP, \fB\-\-dscale\-clamp\fP, \fB\-\-tscale\-clamp\fP
++Clamp the filter kernel\(aqs value range to [0\-1]. This is especially useful
++for \fB\-\-tscale\fP, where it reduces excessive ringing artifacts in the
++temporal domain (which typically manifest themselves as short flashes or
++fringes of black, mostly around moving edges) in exchange for potentially
++adding more blur.
++.TP
++.B \fB\-\-scale\-taper=<value>\fP, \fB\-\-scale\-wtaper=<value>\fP, \fB\-\-dscale\-taper=<value>\fP, \fB\-\-dscale\-wtaper=<value>\fP, \fB\-\-cscale\-taper=<value>\fP, \fB\-\-cscale\-wtaper=<value>\fP, \fB\-\-tscale\-taper=<value>\fP, \fB\-\-tscale\-wtaper=<value>\fP
++Kernel/window taper factor. Increasing this flattens the filter function.
++Value range is 0 to 1. A value of 0 (the default) means no flattening, a
++value of 1 makes the filter completely flat (equivalent to a box function).
++Values in between mean that some portion will be flat and the actual filter
++function will be squeezed into the space in between.
++.TP
++.B \fB\-\-scale\-radius=<value>\fP, \fB\-\-cscale\-radius=<value>\fP, \fB\-\-dscale\-radius=<value>\fP, \fB\-\-tscale\-radius=<value>\fP
+Set radius for tunable filters, must be a float number between 0.5 and
+16.0. Defaults to the filter\(aqs preferred radius if not specified. Doesn\(aqt
+work for every scaler and VO combination.
@@ -5540,7 +5591,7 @@ index 0000000..4ae65ee
+ratio, the radius that actually being used might be different (most likely
+being increased a bit).
+.TP
-+.B \fB\-\-scale\-antiring=<value>\fP
++.B \fB\-\-scale\-antiring=<value>\fP, \fB\-\-cscale\-antiring=<value>\fP, \fB\-\-dscale\-antiring=<value>\fP, \fB\-\-tscale\-antiring=<value>\fP
+Set the antiringing strength. This tries to eliminate ringing, but can
+introduce other artifacts in the process. Must be a float number between
+0.0 and 1.0. The default value of 0.0 disables antiringing entirely.
@@ -5548,14 +5599,14 @@ index 0000000..4ae65ee
+Note that this doesn\(aqt affect the special filters \fBbilinear\fP and
+\fBbicubic_fast\fP\&.
+.TP
-+.B \fB\-\-scale\-window=<window>\fP
++.B \fB\-\-scale\-window=<window>\fP, \fB\-\-cscale\-window=<window>\fP, \fB\-\-dscale\-window=<window>\fP, \fB\-\-tscale\-window=<window>\fP
+(Advanced users only) Choose a custom windowing function for the kernel.
+Defaults to the filter\(aqs preferred window if unset. Use
+\fB\-\-scale\-window=help\fP to get a list of supported windowing functions.
+.TP
-+.B \fB\-\-scale\-wparam=<window>\fP
++.B \fB\-\-scale\-wparam=<window>\fP, \fB\-\-cscale\-wparam=<window>\fP, \fB\-\-cscale\-wparam=<window>\fP, \fB\-\-tscale\-wparam=<window>\fP
+(Advanced users only) Configure the parameter for the window function given
-+by \fB\-\-scale\-window\fP\&. Ignored if the window is not tunable. Currently,
++by \fB\-\-scale\-window\fP etc. Ignored if the window is not tunable. Currently,
+this affects the following window parameters:
+.INDENT 7.0
+.TP
@@ -5584,6 +5635,55 @@ index 0000000..4ae65ee
+will reproduce the source image perfectly if no scaling is performed.
+Enabled by default. Note that this option never affects \fB\-\-cscale\fP\&.
+.TP
++.B \fB\-\-linear\-scaling\fP
++Scale in linear light. It should only be used with a
++\fB\-\-opengl\-fbo\-format\fP that has at least 16 bit precision.
++.TP
++.B \fB\-\-correct\-downscaling\fP
++When using convolution based filters, extend the filter size when
++downscaling. Increases quality, but reduces performance while downscaling.
++.sp
++This will perform slightly sub\-optimally for anamorphic video (but still
++better than without it) since it will extend the size to match only the
++milder of the scale factors between the axes.
++.TP
++.B \fB\-\-interpolation\fP
++Reduce stuttering caused by mismatches in the video fps and display refresh
++rate (also known as judder).
++.sp
++\fBWARNING:\fP
++.INDENT 7.0
++.INDENT 3.5
++This requires setting the \fB\-\-video\-sync\fP option to one
++of the \fBdisplay\-\fP modes, or it will be silently disabled.
++This was not required before mpv 0.14.0.
++.UNINDENT
++.UNINDENT
++.sp
++This essentially attempts to interpolate the missing frames by convoluting
++the video along the temporal axis. The filter used can be controlled using
++the \fB\-\-tscale\fP setting.
++.sp
++Note that this relies on vsync to work, see \fB\-\-opengl\-swapinterval\fP for
++more information.
++.TP
++.B \fB\-\-interpolation\-threshold=<0..1,\-1>\fP
++Threshold below which frame ratio interpolation gets disabled (default:
++\fB0.0001\fP). This is calculated as \fBabs(disphz/vfps \- 1) < threshold\fP,
++where \fBvfps\fP is the speed\-adjusted video FPS, and \fBdisphz\fP the
++display refresh rate. (The speed\-adjusted video FPS is roughly equal to
++the normal video FPS, but with slowdown and speedup applied. This matters
++if you use \fB\-\-video\-sync=display\-resample\fP to make video run synchronously
++to the display FPS, or if you change the \fBspeed\fP property.)
++.sp
++The default is intended to almost always enable interpolation if the
++playback rate is even slightly different from the display refresh rate. But
++note that if you use e.g. \fB\-\-video\-sync=display\-vdrop\fP, small deviations
++in the rate can disable interpolation and introduce a discontinuity every
++other minute.
++.sp
++Set this to \fB\-1\fP to disable this logic.
++.TP
+.B \fB\-\-opengl\-pbo\fP
+Enable use of PBOs. On some drivers this can be faster, especially if the
+source video size is huge (e.g. so called "4K" video). On other drivers it
@@ -5640,26 +5740,6 @@ index 0000000..4ae65ee
+debug OpenGL context (which does nothing with current graphics drivers
+as of this writing).
+.TP
-+.B \fB\-\-interpolation\fP
-+Reduce stuttering caused by mismatches in the video fps and display refresh
-+rate (also known as judder).
-+.sp
-+\fBWARNING:\fP
-+.INDENT 7.0
-+.INDENT 3.5
-+This requires setting the \fB\-\-video\-sync\fP option to one
-+of the \fBdisplay\-\fP modes, or it will be silently disabled.
-+This was not required before mpv 0.14.0.
-+.UNINDENT
-+.UNINDENT
-+.sp
-+This essentially attempts to interpolate the missing frames by convoluting
-+the video along the temporal axis. The filter used can be controlled using
-+the \fB\-\-tscale\fP setting.
-+.sp
-+Note that this relies on vsync to work, see \fB\-\-opengl\-swapinterval\fP for
-+more information.
-+.TP
+.B \fB\-\-opengl\-swapinterval=<n>\fP
+Interval in displayed frames between two buffer swaps. 1 is equivalent to
+enable VSYNC, 0 to disable VSYNC. Defaults to 1 if not specified.
@@ -5671,65 +5751,6 @@ index 0000000..4ae65ee
+results, as can missing or incorrect display FPS information (see
+\fB\-\-display\-fps\fP).
+.TP
-+.B \fB\-\-dscale=<filter>\fP
-+Like \fB\-\-scale\fP, but apply these filters on downscaling instead. If this
-+option is unset, the filter implied by \fB\-\-scale\fP will be applied.
-+.TP
-+.B \fB\-\-cscale=<filter>\fP
-+As \fB\-\-scale\fP, but for interpolating chroma information. If the image is
-+not subsampled, this option is ignored entirely.
-+.TP
-+.B \fB\-\-tscale=<filter>\fP
-+The filter used for interpolating the temporal axis (frames). This is only
-+used if \fB\-\-interpolation\fP is enabled. The only valid choices for
-+\fB\-\-tscale\fP are separable convolution filters (use \fB\-\-tscale=help\fP to
-+get a list). The default is \fBmitchell\fP\&.
-+.sp
-+Note that the maximum supported filter radius is currently 3, due to
-+limitations in the number of video textures that can be loaded
-+simultaneously.
-+.TP
-+.B \fB\-\-tscale\-clamp\fP
-+Clamp the \fB\-\-tscale\fP filter kernel\(aqs value range to [0\-1]. This reduces
-+excessive ringing artifacts in the temporal domain (which typically
-+manifest themselves as short flashes or fringes of black, mostly around
-+moving edges) in exchange for potentially adding more blur.
-+.TP
-+.B \fB\-\-interpolation\-threshold=<0..1,\-1>\fP
-+Threshold below which frame ratio interpolation gets disabled (default:
-+\fB0.0001\fP). This is calculated as \fBabs(disphz/vfps \- 1) < threshold\fP,
-+where \fBvfps\fP is the speed\-adjusted video FPS, and \fBdisphz\fP the
-+display refresh rate. (The speed\-adjusted video FPS is roughly equal to
-+the normal video FPS, but with slowdown and speedup applied. This matters
-+if you use \fB\-\-video\-sync=display\-resample\fP to make video run synchronously
-+to the display FPS, or if you change the \fBspeed\fP property.)
-+.sp
-+The default is intended to almost always enable interpolation if the
-+playback rate is even slightly different from the display refresh rate. But
-+note that if you use e.g. \fB\-\-video\-sync=display\-vdrop\fP, small deviations
-+in the rate can disable interpolation and introduce a discontinuity every
-+other minute.
-+.sp
-+Set this to \fB\-1\fP to disable this logic.
-+.TP
-+.B \fB\-\-dscale\-radius\fP, \fB\-\-cscale\-radius\fP, \fB\-\-tscale\-radius\fP, etc.
-+Set filter parameters for \fB\-\-dscale\fP, \fB\-\-cscale\fP and \fB\-\-tscale\fP,
-+respectively.
-+.sp
-+See the corresponding options for \fB\-\-scale\fP\&.
-+.TP
-+.B \fB\-\-linear\-scaling\fP
-+Scale in linear light. It should only be used with a
-+\fB\-\-opengl\-fbo\-format\fP that has at least 16 bit precision.
-+.TP
-+.B \fB\-\-correct\-downscaling\fP
-+When using convolution based filters, extend the filter size when
-+downscaling. Increases quality, but reduces performance while downscaling.
-+.sp
-+This will perform slightly sub\-optimally for anamorphic video (but still
-+better than without it) since it will extend the size to match only the
-+milder of the scale factors between the axes.
-+.TP
+.B \fB\-\-opengl\-shaders=<files>\fP
+Custom GLSL hooks. These are a flexible way to add custom fragment shaders,
+which can be injected at almost arbitrary points in the rendering pipeline,
@@ -6332,7 +6353,8 @@ index 0000000..4ae65ee
+Blend the frame against a 16x16 gray/white tiles background (default).
+.TP
+.B blend
-+Blend the frame against a black background.
++Blend the frame against the background color (\fB\-\-background\fP, normally
++black).
+.TP
+.B yes
+Try to create a framebuffer with alpha component. This only makes sense
@@ -6361,10 +6383,13 @@ index 0000000..4ae65ee
+we may have to deal with additional padding, which can be tested with these
+options). Could be removed any time.
+.TP
-+.B \fB\-\-opengl\-early\-flush=<yes|no>\fP
++.B \fB\-\-opengl\-early\-flush=<yes|no|auto>\fP
+Call \fBglFlush()\fP after rendering a frame and before attempting to display
-+it (default: no). Can fix stuttering in some cases, in other cases probably
-+causes it. For testing \- could be removed any time.
++it (default: auto). Can fix stuttering in some cases, in other cases
++probably causes it. The \fBauto\fP mode will call \fBglFlush()\fP only if
++the renderer is going to wait for a while after rendering, instead of
++flipping GL front and backbuffers immediately (i.e. it doesn\(aqt call it
++in display\-sync mode).
+.UNINDENT
+.SS Miscellaneous
+.INDENT 0.0
@@ -7174,7 +7199,7 @@ index 0000000..4ae65ee
+means timing is somewhat less accurate than without compositing, but
+with the composited mode behavior of the NVIDIA driver, there is no
+hard playback speed limit even without the disabled logic. Enabled by
-+default, use \fBno\-composite\-detect\fP to disable.
++default, use \fB\-\-vo\-vdpau\-composite\-detect=no\fP to disable.
+.TP
+.B \fB\-\-vo\-vdpau\-queuetime\-windowed=<number>\fP and \fBqueuetime\-fs=<number>\fP
+Use VDPAU\(aqs presentation queue functionality to queue future video
@@ -7453,6 +7478,33 @@ index 0000000..4ae65ee
+.UNINDENT
+.UNINDENT
+.TP
++.B \fBtct\fP
++Color Unicode art video output driver that works on a text console.
++Depends on support of true color by modern terminals to display the images
++at full color range. On Windows it requires an ansi terminal such as mintty.
++.INDENT 7.0
++.TP
++.B \fB\-\-vo\-tct\-algo=<algo>\fP
++Select how to write the pixels to the terminal.
++.INDENT 7.0
++.TP
++.B half\-blocks
++Uses unicode LOWER HALF BLOCK character to achieve higher vertical
++resolution. (Default.)
++.TP
++.B plain
++Uses spaces. Causes vertical resolution to drop twofolds, but in
++theory works in more places.
++.UNINDENT
++.TP
++.B \fB\-\-vo\-tct\-width=<width>\fP \fB\-\-vo\-tct\-height=<height>\fP
++Assume the terminal has the specified character width and/or height.
++These default to 80x25 if the terminal size cannot be determined.
++.TP
++.B \fB\-\-vo\-tct\-256=<yes|no>\fP (default: no)
++Use 256 colors \- for terminals which don\(aqt support true color.
++.UNINDENT
++.TP
+.B \fBimage\fP
+Output each frame into an image file in the current directory. Each file
+takes the frame number padded with leading zeros as name.
@@ -7586,7 +7638,7 @@ index 0000000..4ae65ee
+Video output driver using Kernel Mode Setting / Direct Rendering Manager.
+Should be used when one doesn\(aqt want to install full\-blown graphical
+environment (e.g. no X). Does not support hardware acceleration (if you
-+need this, check the \fBdrm\-egl\fP backend for \fBopengl\fP VO).
++need this, check the \fBdrm\fP backend for \fBopengl\fP VO).
+.sp
+The following global options are supported by this video output:
+.INDENT 7.0
@@ -9360,6 +9412,8 @@ index 0000000..4ae65ee
+.UNINDENT
+.TP
+.B \fBvdpaurb\fP
++This filter is deprecated. Use \fB\-\-hwdec=vdpau\-copy\fP instead.
++.sp
+VDPAU video read back. Works with \fB\-\-vo=vdpau\fP and \fB\-\-vo=opengl\fP only.
+This filter will read back frames decoded by VDPAU so that other filters,
+which are not normally compatible with VDPAU, can be used like normal.
@@ -11703,8 +11757,9 @@ index 0000000..4ae65ee
+.sp
+The \fBname\fP is what is to be passed to the \fB\-\-audio\-device\fP option (and
+often a rather cryptic audio API\-specific ID), while \fBdescription\fP is
-+human readable free form text. The description is an empty string if none
-+was received.
++human readable free form text. The description is set to the device name
++(minus mpv\-specific \fB<driver>/\fP prefix) if no description is available
++or the description would have been an empty string.
+.sp
+The special entry with the name set to \fBauto\fP selects the default audio
+output driver and the default device.
@@ -12370,155 +12425,117 @@ index 0000000..4ae65ee
+.SS Configurable Options
+.INDENT 0.0
+.TP
++.B \fBlayout\fP
++Default: bottombar
++.sp
++The layout for the OSC. Currently available are: box, slimbox,
++bottombar and topbar. Default pre\-0.21.0 was \(aqbox\(aq.
++.TP
++.B \fBseekbarstyle\fP
++Default: bar
++.sp
++Sets the style of the seekbar, slider (diamond marker), knob (circle
++marker with guide), or bar (fill).
++Default pre\-0.21.0 was \(aqslider\(aq.
++.TP
++.B \fBdeadzonesize\fP
++Default: 0.5
++.sp
++Size of the deadzone. The deadzone is an area that makes the mouse act
++like leaving the window. Movement there won\(aqt make the OSC show up and
++it will hide immediately if the mouse enters it. The deadzone starts
++at the window border opposite to the OSC and the size controls how much
++of the window it will span. Values between 0.0 and 1.0, where 0 means the
++OSC will always popup with mouse movement in the window, and 1 means the
++OSC will only show up when the mouse hovers it. Default pre\-0.21.0 was 0.
++.TP
++.B \fBminmousemove\fP
++Default: 0
++.sp
++Minimum amount of pixels the mouse has to move between ticks to make
++the OSC show up. Default pre\-0.21.0 was 3.
++.TP
+.B \fBshowwindowed\fP
-+.nf
+Default: yes
-+Enable the OSC when windowed
-+.fi
+.sp
++Enable the OSC when windowed
+.TP
+.B \fBshowfullscreen\fP
-+.nf
+Default: yes
-+Enable the OSC when fullscreen
-+.fi
+.sp
++Enable the OSC when fullscreen
+.TP
+.B \fBscalewindowed\fP
-+.nf
-+Default: 1.5
-+Scale factor of the OSC when windowed
-+.fi
++Default: 1.0
+.sp
++Scale factor of the OSC when windowed.
+.TP
+.B \fBscalefullscreen\fP
-+.nf
-+Default: 1.5
-+Scale factor of the OSC when fullscreen
-+.fi
++Default: 1.0
+.sp
++Scale factor of the OSC when fullscreen
+.TP
+.B \fBscaleforcedwindow\fP
-+.nf
+Default: 2.0
-+Scale factor of the OSC when rendered on a forced (dummy) window
-+.fi
+.sp
++Scale factor of the OSC when rendered on a forced (dummy) window
+.TP
+.B \fBvidscale\fP
-+.nf
+Default: yes
++.sp
+Scale the OSC with the video
+\fBno\fP tries to keep the OSC size constant as much as the window size allows
-+.fi
-+.sp
+.TP
+.B \fBvalign\fP
-+.nf
+Default: 0.8
-+Vertical alignment, \-1 (top) to 1 (bottom)
-+.fi
+.sp
++Vertical alignment, \-1 (top) to 1 (bottom)
+.TP
+.B \fBhalign\fP
-+.nf
+Default: 0.0
-+Horizontal alignment, \-1 (left) to 1 (right)
-+.fi
+.sp
++Horizontal alignment, \-1 (left) to 1 (right)
+.TP
+.B \fBbarmargin\fP
-+.nf
+Default: 0
-+Margin from bottom (bottombar) or top (topbar), in pixels
-+.fi
+.sp
++Margin from bottom (bottombar) or top (topbar), in pixels
+.TP
+.B \fBboxalpha\fP
-+.nf
+Default: 80
-+Alpha of the background box, 0 (opaque) to 255 (fully transparent)
-+.fi
+.sp
++Alpha of the background box, 0 (opaque) to 255 (fully transparent)
+.TP
+.B \fBhidetimeout\fP
-+.nf
+Default: 500
++.sp
+Duration in ms until the OSC hides if no mouse movement, must not be
+negative
-+.fi
-+.sp
+.TP
+.B \fBfadeduration\fP
-+.nf
+Default: 200
-+Duration of fade out in ms, 0 = no fade
-+.fi
-+.sp
-+.TP
-+.B \fBdeadzonesize\fP
-+.nf
-+Default: 1
-+Size of the deadzone. The deadzone is an area that makes the mouse act
-+like leaving the window. Movement there won\(aqt make the OSC show up and
-+it will hide immediately if the mouse enters it. The deadzone starts
-+at the window border opposite to the OSC and the size controls how much
-+of the window it will span. Values between 0 and 1, where 0 means the
-+OSC will always popup with mouse movement in the window, and 1 means the
-+OSC will only show up when the mouse hovers it.
-+.fi
-+.sp
-+.TP
-+.B \fBminmousemove\fP
-+.nf
-+Default: 0
-+Minimum amount of pixels the mouse has to move between ticks to make
-+the OSC show up
-+.fi
-+.sp
-+.TP
-+.B \fBlayout\fP
-+.nf
-+Default: bottombar
-+The layout for the OSC. Currently available are: box, slimbox,
-+bottombar and topbar.
-+.fi
-+.sp
-+.TP
-+.B \fBseekbarstyle\fP
-+.nf
-+Default: bar
-+Sets the style of the seekbar, slider (diamond marker) or bar (fill)
-+.fi
+.sp
++Duration of fade out in ms, 0 = no fade
+.TP
+.B \fBtooltipborder\fP
-+.nf
+Default: 1
-+Size of the tooltip outline when using bottombar or topbar layouts
-+.fi
+.sp
++Size of the tooltip outline when using bottombar or topbar layouts
+.TP
+.B \fBtimetotal\fP
-+.nf
+Default: no
-+Show total time instead of time remaining
-+.fi
+.sp
++Show total time instead of time remaining
+.TP
+.B \fBtimems\fP
-+.nf
+Default: no
-+Display timecodes with milliseconds
-+.fi
+.sp
++Display timecodes with milliseconds
+.TP
+.B \fBvisibility\fP
-+.nf
+Default: auto (auto hide/show on mouse move)
-+Also supports \fBnever\fP and \fBalways\fP
-+.fi
+.sp
++Also supports \fBnever\fP and \fBalways\fP
+.UNINDENT
+.SS Script Commands
+.sp
@@ -12550,6 +12567,12 @@ index 0000000..4ae65ee
+.fi
+.UNINDENT
+.UNINDENT
++.INDENT 0.0
++.TP
++.B \fBosc\-playlist\fP, \fBosc\-chapterlist\fP, \fBosc\-tracklist\fP
++Shows a limited view of the respective type of list using the OSC. First
++argument is duration in seconds.
++.UNINDENT
+.SH LUA SCRIPTING
+.sp
+mpv can load Lua scripts. Scripts passed to the \fB\-\-script\fP option, or found in
@@ -14132,5 +14155,5 @@ index 0000000..4ae65ee
+.\" Generated by docutils manpage writer.
+.
--
-2.10.1
+2.11.0
diff --git a/media/mpv/patch/0004-ad_spdif-Fix-crash-when-spdif-muxer-is-not-available.patch b/media/mpv/patch/0004-ad_spdif-Fix-crash-when-spdif-muxer-is-not-available.patch
index 88a8fa00..ede82582 100644
--- a/media/mpv/patch/0004-ad_spdif-Fix-crash-when-spdif-muxer-is-not-available.patch
+++ b/media/mpv/patch/0004-ad_spdif-Fix-crash-when-spdif-muxer-is-not-available.patch
@@ -1,4 +1,4 @@
-From 979c7e0c4357b6adcc447ac062341ae9ef2f5fd4 Mon Sep 17 00:00:00 2001
+From 479c6bedadf9f4cce17c12a7fa1e43d39578704f Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Sun, 3 Jul 2016 17:41:45 -0700
Subject: [PATCH] ad_spdif: Fix crash when spdif muxer is not available
@@ -12,7 +12,7 @@ resulting in a crash on my system.
1 file changed, 1 insertion(+)
diff --git a/audio/decode/ad_spdif.c b/audio/decode/ad_spdif.c
-index 56e4a81..71e2415 100644
+index 56e4a8102..71e24152f 100644
--- a/audio/decode/ad_spdif.c
+++ b/audio/decode/ad_spdif.c
@@ -71,6 +71,7 @@ static void uninit(struct dec_audio *da)
@@ -24,5 +24,5 @@ index 56e4a81..71e2415 100644
}
--
-2.9.2
+2.11.0
diff --git a/media/mpv/rev b/media/mpv/rev
index 7ed6ff82..1e8b3149 100644
--- a/media/mpv/rev
+++ b/media/mpv/rev
@@ -1 +1 @@
-5
+6
diff --git a/media/mpv/sources.txt b/media/mpv/sources.txt
index 901fccbd..f5f6a108 100644
--- a/media/mpv/sources.txt
+++ b/media/mpv/sources.txt
@@ -22,6 +22,9 @@ audio/filter/af_volume.c
audio/filter/tools.c
audio/out/ao.c
audio/out/ao_alsa.c alsa
+audio/out/ao_audiounit.m audiounit
+audio/out/ao_coreaudio_chmap.c audiounit
+audio/out/ao_coreaudio_utils.c audiounit
audio/out/ao_coreaudio.c coreaudio
audio/out/ao_coreaudio_chmap.c coreaudio
audio/out/ao_coreaudio_exclusive.c coreaudio
@@ -252,6 +255,7 @@ video/out/vo_null.c
video/out/vo_opengl.c gl
video/out/vo_opengl_cb.c gl
video/out/vo_sdl.c sdl2
+video/out/vo_tct.c
video/out/vo_vaapi.c vaapi-x11
video/out/vo_vdpau.c vdpau
video/out/vo_wayland.c wayland
diff --git a/media/mpv/src b/media/mpv/src
-Subproject e6b85c91700bee0ddc92e98a30d5021691bd6f6
+Subproject 1d4273cfb52043c8165b85e9d7ac7bc14cb59cb