######################################################

For a more detailed documentation click HERE. I only offer a tl;dr version.

If you want to take a look at my mpv.conf, you can view it HERE.

Last tested (and recommended) build: mpv-x86_64-20180421-git-65f0825


Stuff you need for some options:

Copy the .hook or .glsl files into the „Shaders“ folder inside the mpv folder (create it, if it doesn’t exist)

Copy the .lua files into the „Scripts“ folder inside the mpv folder (create it, if it doesn’t exist).


General:
#The default profile you use for your stuff. Always use this one
profile=gpu-hq

#The called API. Vulkan is highly recommended. 
#Use "opengl" if you have compatibility problems
gpu-api=vulkan

#The backend with the API. Leave it "auto"
#Or use "winvk" with "gpu-api=vulkan" or "win" / "angle" with "gpu-api=opengl"
gpu-context=auto

#Choose the compiler for translating glsl code for Vulkan. Leave it "auto"
#Or use "shaderc" with a nVidia/AMD/Intel GPU or "nvidia" with a nVidia GPU
spirv-compiler=auto

#Decoding API for 8bit h264 (or whatever your CPU supports) content
#Only should be used when you get many frame drops
hwdec=dxva2-copy

Tweaks:
#Cursor hide in ms
cursor-autohide=1000

#Don't close the player after finishing the video
keep-open=yes

Priority:
#Audio language
alang=ja,jp,jpn,en,eng,de,deu,ger

#Subtitle language
slang=en,eng,de,deu,ger

Subs:
#Forces showing subtitles while seeking through the video
demuxer-mkv-subtitle-preroll=yes

#Backward compatibility for vsfilter fansubs
sub-ass-vsfilter-blur-compat=yes

#Fixing the timing for overlaps/gaps when the difference is smaller than 210ms
sub-fix-timing=yes

Volume:
#Default volume when starting the player
volume=100

#Max volume of the player
volume-max=200

Screenshot:
#Output format
screenshot-format=png

#Same output bitdepth as the video
#Set it "=no" if you want to save disc space
screenshot-high-bit-depth=yes

#Compression of the picture (0-10)
#Higher value means better compression
#Set it "1" if you want to take screenshots while playback
screenshot-png-compression=10

#Output directory
screenshot-directory="C:\Users\<your_name>\Desktop"

You make screenshots with the “s” hotkey.


Dither:
#Activate dither (value depends on your screen bitdepth)
#Can lead to ugly outputs, just leave it "auto"
dither-depth=8

Deband & Dynamic Grain:

For an explanation what debanding is, click HERE.
For an explanation what grain is, click HERE.

#Activate deband
#Set it "no" if you rather handle it with profiles
deband=yes

#Deband steps (More = Better quality, but higher GPU cost)
deband-iterations=4

#Deband strength (More = Less banding, but more detail loss)
deband-threshold=50

#Deband range (More = Less banding, but higher GPU cost)
deband-range=16

#Dynamic Grain (More = More dynamic grain)
deband-grain=0

You activate debanding with the “h” hotkey.

You can also set it up automatically for some sources (for example with “HorribleSubs”):

[horriblesubs]
profile-desc=cond:string.match(p.filename, "HorribleSubs")~=nil
deband=yes

[horriblesubs-revert]
profile-desc=cond:string.match(p.filename, "HorribleSubs")==nil
deband=no

(Static) Grain:

For an explanation what static grain is, click HERE.

#Luma
glsl-shader="C:\mpv\Shaders\noise_static_luma.hook"

#Chroma
glsl-shader="C:\mpv\Shaders\noise_static_chroma.hook"

If you use shaders like “nnedi3” or “ravu”, make sure you run this shader before them!


Resizer:

For an explanation what a resizer is, click HERE.
With the “i” hotkey you can see how many delayed and dropped frames you have.

PRESETS LUMA
UPSCALE
LUMA
DOWNSCALE
CHROMA
UP- & DOWNSCALE
Overkill FSRCNNX SSimDownscaler KrigBilateral
Very High ravu ewa_lanczos ravu
High ewa_lanczos ewa_lanczos ewa_lanczos
Medium spline16 spline16 sinc (with blackman)
Low catmull_rom catmull_rom catmull_rom
Very Low bilinear bilinear bilinear

Normal: Regular scaler

Italic: Irregular scaler
Look at (4*) for sinc (with blackman)

Italic & Underlined: Based on a shader
Look at (1*) for FSRCNNX, look at (2*) for SSimDownscaler, look at (3*) for KrigBilateral
Regular scaler:

#Luma upscale 
scale=... 

#Luma downscale 
dscale=... 

#Chroma up- & downscale
cscale=... 

Luma (scale/dscale) = Brightness (black & white) information
Chroma (cscale) = Colour information
Luma is more visible for the human eye.
A better resizer means higher GPU cost.

 

Irregular scaler:
(4*)

sinc (with blackman):

cscale=sinc
cscale-window=blackman
cscale-radius=3

 

Based on a shader:

#Shaders which override "scale"/"dscale"/"cscale" to a certain point (depending on the shader you use)
glsl-shader= ...

(1*) nnedi3 and ravu are only upscaling the video with a power of 2. For example, if your clip is 1280×720 and your screen 1920×1080, the video gets upscaled to 2560×1440. That means “someone” still needs to downscale it. In that case, the “dscale” you set up.

FSRCNNX:

glsl-shader="C:\mpv\Shaders\FSRCNNX_x2_r1_16-0-2-2.glsl"
scale=ewa_lanczos

nnedi3:
Higher “nns” means more neurons (better quality).
Don’t use “win8x6”, always use “win8x4”.

glsl-shader="C:\mpv\Shaders\nnedi3-nns32-win8x4.hook"
scale=ewa_lanczos

ravu:
Higher “r” means higher radius (better quality).

glsl-shader="C:\mpv\Shaders\ravu-r4.hook"
scale=ewa_lanczos

(without addition)= only luma
-chroma-center = only center chroma
-chroma-left = only left chroma
-yuv = luma and chroma

(2*)

SSimDownscaler:

glsl-shader="C:\mpv\Shaders\SSimDownscaler.glsl"
dscale=mitchell

(3*)

KrigBilateral:

glsl-shader="C:\mpv\Shaders\KrigBilateral.glsl"
cscale=mitchell

Anti-Ringing:

For an explanation what anti-ringing is, click HERE.

#Luma upscale deringing (Higher = Less rining, but more detail loss)
scale-antiring=0.7

#Luma downscale deringing (Higher = Less rining, but more detail loss)
dscale-antiring=0.7

#Chroma upscale deringing (Higher = Less rining, but more detail loss)
cscale-antiring=0.7

Interpolation:

For an explanation what interpolation is, click HERE.

#Subtitle blending in scenechanges (smoother effect)
blend-subtitles=yes

#Set same fps as max. Hz of your monitor 
video-sync=display-resample

#Activate interpolation
interpolation=yes

#Interpolation method [look at the table above]
tscale=...

If you have playback issues, deactivate interpolation.

Smoothness/Sharpness Interpolation
Sharpest oversample
Sharper linear
Sharp catmull_rom
Smooth mitchell
Smoother gaussian
Smoothest bicubic

Deinterlace:

For an explanation what deinterlace is, click HERE.

#Autodetect if deinterlace is needed
deinterlace=auto

You activate deinterlace with the “g” hotkey (“d” if you don’t use my input.conf).
Only use it with interlaced sources (like MPEG2/h264 .ts files)

Advertisements