summaryrefslogtreecommitdiff
path: root/mpv/mpv.conf
blob: 0ced36d02ca82b7838b6563557946785188d31d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# vim: syntax=config


###########
# General #
###########

input-ipc-server=/tmp/mpvsocket         # listen for IPC on this socket
#load-stats-overlay=no                   # use local stats.lua
#save-position-on-quit                  # handled by a script

msg-module                              # prepend module name to log messages
msg-color                               # color log messages on terminal
term-osd-bar                            # display a progress bar on the terminal
use-filedir-conf                        # look for additional config files in the directory of the opened file
keep-open                               # keep the player open when a file's end is reached
autofit-larger=100%x95%                 # resize window in case it's larger than W%xH% of the screen
cursor-autohide-fs-only                 # don't autohide the cursor in window mode, only fullscreen
input-media-keys=no                     # enable/disable OSX media keys
cursor-autohide=1000                    # autohide the curser after 1s
prefetch-playlist=yes
force-seekable=yes

screenshot-format=png
screenshot-png-compression=8
screenshot-template='~/Desktop/%F (%P) %n'

hls-bitrate=max                         # use max quality for HLS streams

[default]


#########
# Cache #
#########

cache=yes
demuxer-max-bytes=400MiB
demuxer-max-back-bytes=150MiB


#############
# OSD / OSC #
#############

osd-level=1                             # enable osd and display --osd-status-msg on interaction
osd-duration=2500                       # hide the osd after x ms
osd-status-msg='${time-pos} / ${duration}${?percent-pos: (${percent-pos}%)}${?frame-drop-count:${!frame-drop-count==0: Dropped: ${frame-drop-count}}}\n${?chapter:Chapter: ${chapter}}'

osd-font='Sarasa Mono K'
osd-font-size=36
osd-color='#FFFFFFFF'                   # ARGB format
osd-border-color='#FF000000'            # ARGB format
#osd-shadow-offset=1                    # pixel width for osd text and progress bar
# osd-bar-align-y=-1                       # progress bar y alignment (-1 top, 0 centered, 1 bottom)
osd-border-size=2                       # size for osd text and progress bar
# osd-bar-h=2                             # height of osd bar as a fractional percentage of your screen height
# osd-bar-w=100                            # width of " " "


# Subtitles #

demuxer-mkv-subtitle-preroll=yes        # try to show embedded subs when seeking even when no index information is present
demuxer-mkv-subtitle-preroll-secs=2

sub-auto=fuzzy                          # external subs don't have to match the file name exactly to autoload
sub-file-paths-append=ass               # search for external subs in these relative subdirectories
sub-file-paths-append=srt
sub-file-paths-append=sub
sub-file-paths-append=subs
sub-file-paths-append=subtitles

embeddedfonts=yes                       # use embedded fonts for SSA/ASS subs
sub-fix-timing=no                       # do not try to fix gaps (which might make it worse in some cases)
sub-ass-force-style=Kerning=yes         # allows you to override style parameters of ASS scripts
sub-use-margins
sub-ass-force-margins

# the following options only apply to subtitles without own styling (i.e. not ASS but e.g. SRT)
sub-font="Sarasa UI K"
sub-font-size=40
sub-color="#FFFFFFFF"
sub-border-color="#FF000000"
sub-border-size=2.0
sub-shadow-offset=1
sub-shadow-color="#33000000"
sub-spacing=0.5


# Languages #

slang=en,eng             # automatically select these subtitles (decreasing priority)
alang=ja,jp,jpn,en,eng       # automatically select these audio tracks (decreasing priority)


# Audio #

audio-file-auto=fuzzy                   # external audio doesn't has to match the file name exactly to autoload
audio-pitch-correction=yes              # automatically insert scaletempo when playing with higher speed
volume-max=115                          # maximum volume in %, everything above 100 results in amplification
volume=90                              # default volume, 100 = unchanged


# Video Output #

# Defaults for all profiles
tscale=oversample                      # [sharp] oversample <-> linear (triangle) <-> catmull_rom <-> mitchell <-> gaussian <-> bicubic [smooth]
opengl-early-flush=no
opengl-pbo=no                          # "yes" is currently bugged: https://github.com/mpv-player/mpv/issues/4988
hwdec=no

ytdl-format=bestvideo[height<=?720][fps<=?30][vcodec!=?vp9]+bestaudio/best

[high-quality]
profile-desc=cond:is_high(get('width', 0), get('height', 0), get('estimated-vf-fps', 0))
#scale=ewa_hanning
#scale-radius=3.2383154841662362
scale=ewa_lanczossharp
cscale=ewa_lanczossoft
dscale=mitchell
scale-antiring=0
cscale-antiring=0
dither-depth=auto
correct-downscaling=yes
sigmoid-upscaling=yes
deband=yes

[mid-quality]
profile-desc=cond:is_mid(get('width', 0), get('height', 0), get('estimated-vf-fps', 0))
scale=spline36
cscale=bicubic
dscale=mitchell
scale-antiring=1.0
cscale-antiring=1.0
dither-depth=auto
correct-downscaling=yes
sigmoid-upscaling=yes
deband=yes
glsl-shaders-set=""

[low-quality]
profile-desc=cond:is_low(get('width', 0), get('height', 0), get('estimated-vf-fps', 0))
scale=bilinear
cscale=bilinear
dscale=bilinear
scale-antiring=0
cscale-antiring=0
dither-depth=no
correct-downscaling=no
sigmoid-upscaling=no
deband=no
glsl-shaders-set=""

[4K-lavc-threads]
profile-desc=cond:get('width', -math.huge) >= 3840
vd-lavc-threads=32

[4K-lavc-threads-inverted]
profile-desc=cond:get('width', math.huge) < 3840
vd-lavc-threads=0


# Protocol Specific Configuration #

[protocol.https]
cache=yes
user-agent='Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0'

[protocol.http]
cache=yes
user-agent='Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0'

[360p]
ytdl-format=bestvideo[height<=360][vcodec=vp9]+bestaudio/bestvideo[height<=360]+bestaudio/best[height<=360]/best

[480p]
ytdl-format=bestvideo[height<=480][vcodec=vp9]+bestaudio/bestvideo[height<=480]+bestaudio/best[height<=480]/best