forked from dexeonify/mpv-config
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmpv.conf
305 lines (250 loc) · 10.7 KB
/
mpv.conf
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
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
# MpvNet-HQ-Config fourth release by ThomasEricB
# ENABLE LOG
##msg-level=all=trace
##log-file="~~/log.txt"
# OPTIONAL LOG SETTINGS
##msg-module=yes
##msg-level=input=error,demux=error
# ENABLE VAPOURSYNTH (CHOOSE ONE. CURRENTLY BEST: mvtools-standard)
##vf-append=yuv420p,vapoursynth="~~/motioninterpolation.vpy":4:4
vf-append=vapoursynth="~~/mvtools-standard.vpy"
# GENERAL SETTINGS
##osc=no
##osd-bar=no
video-osd=yes
cursor-autohide-fs-only
osd-on-seek=msg-bar
input-default-bindings=yes
cursor-autohide=1500
correct-pts=yes
##input-ar-delay = 500
##input-ar-rate = 20
keep-open = yes
keep-open-pause = no
image-display-duration=inf
save-position-on-quit=yes
osd-playing-msg = '${filename}'
##script-opts=osc-deadzonesize=1
script-opts=osc-scalewindowed=1.5,osc-hidetimeout=2000,console-scale=1
ordered-chapters
stop-screensaver=yes
prefetch-playlist=yes
input-doubleclick-time=200
input-gamepad=yes
input-cursor=yes
input-media-keys=yes
# DEFAULT LANGUAGE
alang=eng,en,English,jpn,jp,Japanese,pt,por,ptb,ptbr,pt-br,pt_br,Portuguese,Portugues #Audio in English by Default
##alang=jpn,jp,Japanese,eng,en,English,pt,por,ptb,ptbr,pt-br,pt_br,Portuguese,Portugues #Audio in Japanese by Default
##slang=pt,por,ptb,ptbr,pt-br,pt_br,Portuguese,Portugues,eng,en,English #Subtitles in Portuguese by Default
slang=eng,en,English #Subtitles in English by Default
# WINDOW
##border=no #Removes the Window Border
autofit=50%
geometry=50%:50%
##force-window=immediate #Not Recommended
taskbar-progress=yes #Change if you don't like showing the progress in the taskbar
hidpi-window-scale=no
# SCREENSHOTS
screenshot-directory="~~/Screenshots/"
screenshot-high-bit-depth=yes
screenshot-tag-colorspace=yes
screenshot-format=png
screenshot-png-compression=1
screenshot-template="%f-%wH.%wM.%wS.%wT-#%#00n"
# VIDEO PLAYBACK
priority=high
vo=gpu
backend=x11 #If you are on Windows
##backend=angle #If you want OpenGL on Windows
keepaspect=yes
alpha=blend
hwdec=auto-copy-safe #Best Solution. You might also wanna try "d3d11va-copy" (on windows) or "nvdec-copy" (if you have a nvidia GPU like me, however it tends to be slower for me so compare the performace in your machine). There is a huge list of hwdec support on Mpv's manual, however always use the -copy versions (for better perfomance).
hwdec-codecs=all #Allows all codecs.
gpu-api=d3d11
##gpu-api=opengl #If you aren't on Windows or you want OpenGL
gpu-context=d3d11
##gpu-context=angle #If you want OpenGL on Windows
d3d11-warp=auto #Don't change this. Always let the player decide if it wants enabled or not.
d3d11-sync-interval=1 #Enables V-Sync on D3D11. Change it to 0 if you don't want V-Sync, however this might break the video's speed if you have 'video-sync=display-resample-vdrop' enabled. Read below for more info.
spirv-compiler=shaderc #Enables .glsl shaders.
vd-lavc-o=strict=-2
vd-lavc-dr=yes #Enable direct rendering.
vd-lavc-fast=yes #Enable optimizations.
vd-lavc-check-hw-profile=yes #Check hardware decoder profile.
vd-lavc-software-fallback=5 #Fallback to software decoding if the hardware-accelerated decoder fails.
vd-lavc-threads=0 #Number of threads to use for decoding. 0 means autodetect.
ad-lavc-threads=0 #Number of threads to use for decoding. 0 means autodetect.
d3d11va-zero-copy=yes #Disable this if you experience "the image to be sampled incorrectly on the bottom and right edges due to padding".
d3d11-sync-interval=0
sws-allow-zimg=no #Bad Performace.
##zimg-fast=no
##zimg-scaler=spline64
##zimg-scaler-chroma=spline64
stream-lavf-o-append=multiple_requests=1
tls-verify=no
tscale=oversample # Enables the 'smoothmotion' for interpolation.
hr-seek-framedrop=no
demuxer-lavf-propagate-opts=yes #Propagate FFmpeg-level options to recursively opened connections.
input-ipc-server=mpvpipe #This is useful for a number of reasons, and it doesn't negatively impact even if don't need this.
# VIDEO PLAYBACK OPTIONALS
vf-append=fps=fps=144/1.001 # Force Framerate 144
##vf-append=fps=fps=60/1.001 # Force Framerate 60
##deinterlace=yes # Enable Deinterlace for Interlaced Videos (480i, 1080i)
##denoise=1 # Denoise filter for Low Quality Noisy Video. Might not work.
##vd-queue-enable=yes
##vd-queue-max-bytes=2GiB
##vd-queue-max-samples=60
##interpolation-preserve #Only affects "vo=gpu-next"
##target-colorspace-hint #Only affects "vo=gpu-next"
##allow-delayed-peak-detect #Only affects "vo=gpu-next"
# OPENGL OPTIONALS
##opengl-swapinterval=1 #Enables V-Sync with OpenGL. Change this to 0 so it doesn't V-Sync.
##opengl-glfinish
##opengl-dwmflush=auto
##opengl-pbo=yes
##opengl-early-flush=no
# CACHE AND DEMUXER
force-seekable=yes
##cache=yes
##cache-secs=300
cache-pause-initial=no
cache-pause=no
demuxer-seekable-cache=yes
demuxer-readahead-secs=1800
##demuxer-max-bytes=2294967294 #Enable this if the video is not loading with demuxer-cache-wait
demuxer-max-back-bytes=1147483647
hr-seek=yes
demuxer-mkv-probe-video-duration=full
##demuxer-cache-wait=yes #Enable this if the video is not loading with demuxer-max-bytes
hr-seek-demuxer-offset=1.5
demuxer-lavf-buffersize=52428
##stream-buffer-size=512KiB
hls-bitrate=max
##stream-lavf-o=reconnect_streamed=yes #Enable this if yt-dlp is not picking up the stream. You may also add this after: ,reconnect_on_http_error=4xx,reconnect_delay_max=30,reconnect_at_eof=1
# COLOR
vf=format=colorlevels=full:colormatrix=auto
video-output-levels=full
icc-3dlut-size=64x64x64
icc-profile-auto=yes
icc-force-contrast=1000
target-prim=auto
target-trc=gamma2.2
hdr-compute-peak=auto
##tone-mapping=hable #HDR Settings
tone-mapping=reinhard #HDR Settings
tone-mapping-param=0.6 #HDR Settings
fbo-format=rgba32f
d3d11-output-format=rgb10_a2 #Best Solution. Changing this might break options.
# UPSCALING AND DOWNSCALING
no-scaler-resizes-only
glsl-shader="~~/SSimSuperRes.glsl"
scale=ewa_lanczossharp
dscale=mitchell
correct-downscaling=yes
linear-downscaling=yes # Scale in linear light when downscaling. It should only be used with a --fbo-format that has at least 16 bit precision. This option has no effect on HDR content.
linear-upscaling=yes
sigmoid-upscaling=yes
dscale-antiring=0.7
scale-antiring=0.7
swapchain-depth=8
scaler-lut-size=10
# CHROMA SCALING
glsl-shader="~~/shaders/KrigBilateral.glsl" # High quality chroma upscaler.
cscale=spline64
cscale-blur=1
cscale-radius=3
scale-clamp=0.2
cscale-antiring=0.7
cscale-window=blackman
# BUILT-IN MOTION INTERPOLATION
interpolation=yes
override-display-fps=144 # For 144hz Screens
##override-display-fps=60 # For 60hz Screens
video-sync=display-resample-vdrop #Only works with v-sync on. This needs to be enabled so the motion interpolation kicks in; However it tends to break videos with no audio and some in windowed mode; This is the best solution! Do not use "display-resample" nor "display-resample-desync", as you want the audio to be as in-sync with video as possible.
##video-sync=audio #If the video speed breaks or you don't want motion interpolation; This is the best solution overall, however it doesn't allow motion interpolation (for obvious reasons). It does not require v-sync to be on.
video-sync-max-video-change=5
tscale-antiring=1.0
tscale-radius=1.1
tscale-blur=1.2
tscale-wblur=1.2
tscale-clamp=0.0
# DITHERING
dither-depth=auto
temporal-dither=yes
dither=error-diffusion # Requires large amount of shared memory to run, but will fallback to fruit automatically if not supported.
error-diffusion=sierra-lite
# DEBAND
## For Anime: 2-35-20-5.
## For Older DVD, Badly mastered BDs or WEB streams: 3-45-25-15
## For really old or bad quality videos: 4-60-30-30
## If you don't wanna change the .conf all the time, the following defaults should be okay for most cases:
deband=yes
deband-iterations=4 # Range 1-16. Higher = better quality but more GPU usage. >5 is redundant. [My Default: 4]
deband-threshold=48 # Range 0-4096. Deband Strength. (More = Less banding, but more detail loss) [My Default: 48]
deband-range=16 # Range 1-64. Range of deband. Too high may destroy details. [My Default: 16]
deband-grain=48 # Range 0-4096. Dynamic Grain: Inject grain to cover up bad banding, higher value needed for poor sources. Set to "0" if using the static grain shader [My Default: 48, otherwise, if it's too grainy change to 5]
# AUDIO OUTPUT
ao=wasapi #if on Windows
# AUDIO SETTINGS
volume=100
volume-max=200
af-add='dynaudnorm=g=5:f=250:r=0.9:p=0.5' # Normalize Audio
audio-normalize-downmix=yes
audio-stream-silence=yes
audio-pitch-correction=yes
gapless-audio=yes
audio-channels=2
# RESAMPLE AUDIO TO 96kHz 24bit!
##audio-resample-linear=yes
##Audio-samplerate=96000
##Audio-format=s32
##audio-resample-filter-size=32
##audio-resample-cutoff=0.0
##audio-resample-phase-shift=10
#AUDIO OPTIONALS
##audio-delay=+0.084 #Useful if you're watching with your headphones on PC, but output the video on your Television with a long HDMI cable (counter the delay)
##audio-delay=0.04 #For 50ms Input Lag
# SUBTITLES
sub-fix-timing=yes
blend-subtitles=yes
sub-ass-vsfilter-blur-compat=yes
sub-ass-scale-with-window=yes
sub-auto=fuzzy
sub-file-paths-append=ass
sub-file-paths-append=srt
sub-file-paths-append=sub
sub-file-paths-append=subs
sub-file-paths-append=subtitles
demuxer-mkv-subtitle-preroll
embeddedfonts=yes
sub-use-margins=yes
sub-ass-force-margins=yes
sub-ass-hinting=none
sub-ass-shaper=complex
##sub-ass-force-style=Kerning=yes # NO NOT ENABLE THIS unless you have to. Causes placement of signs that fade in/out with '\t' and 'alpha' tags to "shuffle" on screen. I.e Just no unless you have to. Allows you to override style parameters of ASS scripts
##sub-ass-override=force # Override all subtitle styling.
# FOLDER PATHS
icc-cache-dir="~~/cache/icc"
gpu-shader-cache-dir="~~/cache/shader"
watch-later-directory="~~/cache/watch_later"
# YT-DLP OPTIONS
ytdl=yes
##ytdl-format=(bestvideo[ext=webm]+bestaudio[ext=webm])/best #You may add [protocol!=http_dash_segments] before /best in case there are problems with finding the video
##ytdl-format=(bestvideo[ext=webm]/bestvideo[height>1080]/bestvideo[fps=60])[tbr<13000]+(bestaudio[acodec=opus]/bestaudio[ext=webm]/bestaudio)/best #Enable this if you want up to 1080p videos
ytdl-raw-options=sponsorblock-mark=all
ytdl-raw-options=ignore-errors=
ytdl-raw-options=no-check-certificate=
ytdl-raw-options=prefer-free-formats=
load-unsafe-playlists=yes
script-opts=ytdl_hook-ytdl_path=c:\\Program Files\\mpv.net\\youtube-dl.exe
# GIF FILE
[extension.gif]
cache=no
no-pause
loop-file=yes
# VapourSynth FILE
[extension.vpy]
demuxer-lavf-format = vapoursynth
[protocol.https]
osd-playing-msg = '${media-title}'