diff --git a/mpv/mpv.conf b/mpv/mpv.conf new file mode 100644 index 0000000..abdd395 --- /dev/null +++ b/mpv/mpv.conf @@ -0,0 +1,609 @@ +# vim: syntax=config + +########### +# General # +########### +fullscreen=yes + +priority=high + +input-ipc-server=/tmp/mpvsocket # listen for IPC on this socket +load-stats-overlay=yes # use local stats.lua +#save-position-on-quit # handled by a script + +no-border # no window title bar +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 +pause # no autoplay +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 +msg-color=yes # Colors! + +# Fit fps to movies +correct-pts=yes + +# Higher quality screenshots +screenshot-format=png +screenshot-png-compression=8 +screenshot-tag-colorspace=yes +screenshot-directory=C:/Users/Shabbir Hasan/Pictures +screenshot-high-bit-depth=yes +screenshot-template=C:/Users/Shabbir Hasan/Pictures/%F-%P-shot-%04n +#screenshot-template='~/Desktop/%F (%P) %n' + +hls-bitrate=max # use max quality for HLS streams + +########### +# YTDL # +########### + +ytdl=yes + +#[ytdl-desktop] +#profile-desc=cond:is_desktop() +#ytdl-format=bestvideo[height<=?1080]+bestaudio/best + +#[ytdl-laptop] +#profile-desc=cond:is_laptop() +#ytdl-format=bestvideo[height<=?1080][fps<=?30][vcodec!=?vp9][protocol!=http_dash_segments]+bestaudio/best + +#[default] +#ytdl-format=(bestvideo[vcodec=vp9.2]/bestvideo[vcodec=vp9][fps>30]/bestvideo[vcodec=vp9][height>=1080]/bestvideo[fps>30]/bestvideo[height>720])+(bestaudio[acodec=opus]/bestaudio)/best + +# Audio: +# 251 opus @ 160k 48kHz +# 140 m4a @ 128k 44kHz +# 171 ogg @ 128k 44kHz +# 249 opus @ 50k 48kHz +# 250 opus @ 70k 48kHz + +# Video: +# 315 vp9 @ 2160p 60fps +# 266 avc1 @ 2160p 30fps +# 313 vp9 @ 2160p 30fps +# 308 vp9 @ 1440p 60fps +# 264 avc1 @ 1440p 30fps +# 271 vp9 @ 1440p 30fps +# 299 avc1 @ 1080p 60fps +# 303 vp9 @ 1080p 60fps +# 137 avc1 @ 1080p 30fps +# 248 vp9 @ 1080p 30fps +# 298 avc1 @ 720p 60fps +# 302 vp9 @ 720p 60fps +# 136 avc1 @ 720p 30fps +# 247 vp9 @ 720p 30fps + +ytdl-format=315+251/315+140/315+171/266+251/266+140/266+171/313+251/313+140/313+171/308+251/308+140/308+171/264+251/264+140/264+171/271+251/271+140/271+171/299+251/299+140/299+171/303+251/303+140/303+171/137+251/137+140/137+171/248+251/248+140/248+171/298+251/298+140/298+171/302+251/302+140/302+171/136+251/136+140/136+171/247+251/247+140/247+171/best + +######### +# Cache # +######### + +# Configure the cache to be really big (multiple GBs) +# We have a lot of memory, so why not use it for something + +cache=yes +cache-default=4000000 # size in KB +cache-backbuffer=250000 # size in KB +demuxer-seekable-cache=yes +#demuxer-max-bytes=1147483647 # ~1 GiB in bytes +demuxer-max-bytes=2147483647 # ~2 GiB in bytes +demuxer-max-back-bytes=1147483647 + + +############# +# 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='Fira Code' +osd-font-size=32 +osd-color='#CCFFFFFF' # ARGB format +osd-border-color='#DD322640' # ARGB format +#osd-shadow-offset=1 # pixel width for osd text and progress bar +osd-bar-align-y=0 # 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=60 # width of " " " + + +############# +# Subtitles # +############# + +sub-auto=all # external subs don't have to match the file name exactly to autoload +sub-file-paths=ass:srt:sub:subs:subtitles # search for external subs in the listed subdirectories +demuxer-mkv-subtitle-preroll # try to correctly show embedded subs when seeking +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="Source Sans Pro Semibold" +# sub-font-size=36 +# sub-color="#FFFFFFFF" +# sub-border-color="#FF262626" +# sub-border-size=3.2 +# sub-shadow-offset=1 +# sub-shadow-color="#33000000" +# sub-spacing=0.5 + + +############# +# Languages # +############# + +slang=enm,en,eng,de,deu,ger # automatically select these subtitles (decreasing priority) +alang=ja,jp,jpn,en,eng,de,deu,ger # automatically select these audio tracks (decreasing priority) +ytdl-raw-options=sub-lang="en,eng,enUS,en-US",write-sub= + +######### +# Audio # +######### + +# WASAPI Audio Output (Windows) +# Change the audio output accordingly for other systems +ao=wasapi +#audio-exclusive=yes +#audio-delay=0.04 # second. Projector 50ms input lag. Audio 10ms buffer. +# Forcibly resample to 96kHz, 24bit (audio device hardware support required). note! Not necessary! Do not need to resample comment below the two lines +#Audio-samplerate=96000 +#Audio-format=s32 + +audio-device=auto +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=200 # maximum volume in %, everything above 100 results in amplification +volume=100 # default volume, 100 = unchanged +#pulse-buffer=50 # using a large buffer causes seeking issues +audio-channels=stereo +audio-normalize-downmix=yes + +# DTS-MA decoding +ad=lavc:libdcadec +autosync=30 + +# Output some video stats +term-playing-msg='Resolution: ${width}x${height}, Framerate: ${fps} Hz' + +## For some weird reason, that appears to be needed on on some system, even though it semms to be properly auto-detected? +## I have disabled it by default and I have the common 60(fps/hz) as an example +#display-fps = 60 + +# I don't want to wait ages for the window to finally show up before I can move my focus around again +[protocol.http] +force-window=yes + +[protocol.https] +force-window=yes + +################ +# Video Output # +################ + +# Active VOs (and some other options) are set conditionally +# See here for more information: https://github.com/wm4/mpv-scripts/blob/master/auto-profiles.lua +# on_battery(), is_laptop() and is_dektop() are my own additional functions imported from scripts/auto-profiles-functions.lua +# Specify default video driver (see --vo=help for a list). +# vo=libmpv,gpu,direct3d +# gpu-api=d3d11,opengl,vulkan +# gpu-context=angle,d3d11,win,winvk,dxinterop +# spirv-compiler=auto,shaderc,nvidia +# high quality video output, require rather fast video card +# Defaults for all profiles + +profile=gpu-hq +vo=gpu +gpu-api=vulkan +gpu-context=winvk +#vo=direct3d +#gpu-api=d3d11 +#gpu-context=d3d11 +#gpu-api=opengl +#gpu-context=dxinterop +spirv-compiler=auto +#fbo-format=rgba16hf + +# 32-bit floating-point precision processing like madVR +fbo-format=rgba32f +vd-lavc-dr=yes +vd-lavc-fast=yes +vd-lavc-threads=0 +ad-lavc-threads=0 + +gpu-dumb-mode=yes + +vulkan-async-compute=yes +vulkan-async-transfer=yes +vulkan-queue-count=8 + +opengl-early-flush=no +opengl-pbo=yes # "yes" is currently bugged: https://github.com/mpv-player/mpv/issues/4988 +opengl-glfinish=yes #can reduce buffering in the graphics driver +vulkan-swap-mode=immediate +opengl-swapinterval=0 +icc-profile-auto=yes +icc-3dlut-size=256x256x256 # The default is 64x64x64. Will delay mpv startup slightly +gamma-auto=yes +d3d11-sync-interval=0 +d3d11va-zero-copy=yes +d3d11-warp=yes + +# Color correction related +#target-prim=bt.709 +#target-prim=bt.2020 +#target-trc=bt.1886 +target-prim=auto +target-trc=auto +gamma-auto +icc-profile-auto +vf=format=colorlevels=full:colormatrix=auto #:colormatrix-input-range=full:colormatrix-output-range=full +video-output-levels=full +#framedrop=vo + +# Misc video settings +#deband-iterations=2 +#deband-range=12 +#Activate dither (value depends on your screen bitdepth) +#Can lead to ugly outputs, just leave it "auto" +dither-depth=8 +#dither-depth=auto +temporal-dither=yes +vf-defaults=yadif:interlaced-only=no +dither-size-fruit=7 # Default 6. Will delay mpv startup slightly + +# Debanding +# For opengl-hq, debanding is enabled by default +deband=yes # Activate debanding +deband-iterations=4 # 1 Deband steps (More = Better quality, but higher GPU cost) +deband-threshold=50 # 70 Deband strength (More = Less banding, but more detail loss) +deband-range=16 # Deband range (More = Less banding, but higher GPU cost) +deband-grain=5 # 5 Dynamic Grain (More = More dynamic grain) + +#If you use shaders like “nnedi3” or “ravu”, make sure you run this shader before them! +#glsl-shaders-clr +#Luma +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_luma.hook" +#Chroma +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_chroma.hook" +#Grain & Resizer +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_56-28-4-1.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_56-16-4-1.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_16-0-4-1.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_16-0-4-1_SSIM.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\nnedi3-nns32-win8x4.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\SSimDownscaler.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\KrigBilateral.glsl" + +################# +# Interpolation # [, ..., ] +################# [oversample, linear (triangle), catmull_rom, mitchell, gaussian, bicubic] +interpolation=yes +tscale=oversample # [sharpest] oversample <-> [sharper] linear (triangle) <-> [sharp] catmull_rom <-> mitchell <-> gaussian <-> bicubic [smoothest] +tscale-antiring=0.7 +video-sync=display-resample +video-sync-max-video-change=5 +blend-subtitles=yes + +############# see: https://github.com/mpv-player/mpv/wiki/Upscaling +# Upscaling # +############# +# [bilinear, lanczos, mitchell, spline16, spline36, spline64, ewa_lanczos (:scale-radius=float), +# ewa_lanczossharp, ewa_lanczossoft, robidoux, robidouxsharp, ewa_ginseng, ewa_hanning, bicubic, +# gaussian, catmull_rom, nearest, oversample, sharpen3, sharpen5, sinc:scale-radius=R] + +#Resizer +#scale=ewa_lanczossharp +#scale=haasnsoft +#scale-clamp=0.2 +#dscale=ewa_lanczos +#dscale=mitchell +#cscale=mitchell +#cscale=haasnsoft +#cscale=ewa_lanczossharp +#cscale=ewa_lanczossoft +#cscale=sinc +#cscale-window=blackman +#cscale-radius=3 + +#Luma upscale deringing (Higher = Less rining, but more detail loss) +scale-antiring=0.7 #0 #0.5 #1.0 +#Luma downscale deringing (Higher = Less rining, but more detail loss) +dscale-antiring=0.7 #0 #0.5 #1.0 +#Chroma upscale deringing (Higher = Less rining, but more detail loss) +cscale-antiring=0.7 #0 #0.5 #1.0 + +correct-downscaling=yes +sigmoid-upscaling=yes +scaler-resizes-only=yes + +#hwdec=d3d11va +hwdec=d3d11va-copy +#hwdec=dxva2 +#hwdec=dxva2-copy +#hwdec=auto +#hwdec=auto-copy +hwdec-codecs=all + +icc-cache-dir="C:\Program Files\MPV\mpv\mpv-icc\" +gpu-shader-cache-dir="C:\Program Files\MPV\mpv\mpv-shaders\" + +#Autodetect if deinterlace is needed +#deinterlace=auto + +# If you want to insert other video filters, such as deint or SVP, you should remove the comment of the following line +hr-seek-framedrop=no + +hdr-compute-peak=yes # If you don't have a blue screen, you can leave it on. This may help HDR->SDR + +script-opts=autospeed-nircmd=true,autospeed-speed=false,autospeed-nircmdc="C:\nircmd\nircmdc.exe",autospeed-monitor=0,autospeed-dwidth=1366,autospeed-dheight=768,autospeed-bdepth=32,autospeed-rates="23;24;25;29;30;48;60",autospeed-exitrate=60,autospeed-minspeed=0.9,autospeed-maxspeed=1.1,autospeed-osd=true,autospeed-osdtime=10,autospeed-osdkey=y,autospeed-estfps=false,autospeed-spause=4 + +# If you want to see the log, uncomment this line. Mpv.log will be saved to the desktop +log-file="C:\Program Files\MPV\mpv.log" + +# Following different resolutions and video frame rate settings up / down algorithm, in order to obtain the best results can not drop the frame + +# 1080 * 1.414213 / 4 = 381.8 +[low] # 240p 360p, enable double up to 4x. +profile-desc=cond:(get("video-params/w", -math.huge)<=678 and get("video-params/h", -math.huge)<=381) +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_luma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_chroma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\KrigBilateral.glsl" +glsl-shaders-append="C:\Program Files\MPV\shaders\nnedi3-nns32-win8x4.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\nnedi3-nns32-win8x4.hook" +scale=ewa_lanczossharp +scale-clamp=0.2 +dscale=mitchell +cscale=ewa_lanczossharp +cscale-window=blackman +cscale-radius=3 +glsl-shaders-append="C:\Program Files\MPV\shaders\adaptive-antiringing.glsl" + +# 1080 / 16 * 9 = 607.5 +[SD] # 480p 576p +profile-desc=cond:((get("video-params/w", -math.huge)<1080 and get("video-params/h", -math.huge)<608) and (get("video-params/w", -math.huge)>678 or get("video-params/h", -math.huge)>381)) +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_luma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_chroma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\KrigBilateral.glsl" +glsl-shaders-append="C:\Program Files\MPV\shaders\nnedi3-nns64-win8x4.hook" +scale=ewa_lanczossharp +scale-clamp=0.2 +dscale=mitchell +cscale=ewa_lanczossharp +cscale-window=blackman +cscale-radius=3 +glsl-shaders-append="C:\Program Files\MPV\shaders\adaptive-antiringing.glsl" + +# 1080 * 1.414213 / 2 = 763.7 +[HD30] # 640p 720p 30fps +profile-desc=cond:((get("video-params/w", -math.huge)<1358 and get("video-params/h", -math.huge)<764) and (get("video-params/w", -math.huge)>=1080 or get("video-params/h", -math.huge)>=608) and get("container-fps", -math.huge)<31 and get("estimated-vf-fps", -math.huge)<31) +fbo-format=rgba16hf +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_luma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_chroma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\KrigBilateral.glsl" +glsl-shaders-append="C:\Program Files\MPV\shaders\nnedi3-nns32-win8x4.hook" +scale=ewa_lanczossharp +scale-clamp=0.2 +dscale=mitchell +cscale=haasnsoft +cscale-window=blackman +cscale-radius=3 + +[HD60] # 640p 720p 60fps +profile-desc=cond:((get("video-params/w", -math.huge)<1358 and get("video-params/h", -math.huge)<764) and (get("video-params/w", -math.huge)>=1080 or get("video-params/h", -math.huge)>=608) and ((get("container-fps", -math.huge)<31 and get("estimated-vf-fps", -math.huge)>=31) or get("container-fps", -math.huge)>=31)) +fbo-format=rgba16hf +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_luma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_chroma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_16-0-4-1_SSIM.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-chroma-left-smoothtest1.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-rgb-smoothtest1.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-yuv-smoothtest1.hook" +scale=ewa_lanczossharp +scale-clamp=0.2 +dscale=mitchell +cscale=haasnsoft +cscale-window=blackman +cscale-radius=3 +glsl-shaders-append="C:\Program Files\MPV\shaders\adaptive-antiringing.glsl" + +[FHD] # 1080p +profile-desc=cond:((get("video-params/w", -math.huge)<=1920 and get("video-params/h", -math.huge)<=1080) and (get("video-params/w", -math.huge)>= 1358 or get("video-params/h", -math.huge)>=764)) +fbo-format=rgba16hf +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_luma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_chroma.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_56-28-4-1.glsl" +glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_16-0-4-1_SSIM.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-chroma-left-smoothtest1.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-chroma-left.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-rgb-smoothtest1.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-yuv-smoothtest1.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-yuv.hook" +scale=ewa_lanczossharp +scale-clamp=0.2 +dscale=mitchell +cscale=haasnsoft +cscale-window=blackman +cscale-radius=3 +glsl-shaders-append="C:\Program Files\MPV\shaders\adaptive-antiringing.glsl" +vd-lavc-threads=16 + +[2K30] # 1440p +profile-desc=cond:((get("video-params/w", -math.huge)<=2560 and get("video-params/h", -math.huge)<=1440) and (get("video-params/w", -math.huge)>1920 or get("video-params/h", -math.huge)>1080) and get("container-fps", -math.huge)<31 and get("estimated-vf-fps", -math.huge)<31) +fbo-format=rgba16hf +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_luma.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\noise_static_chroma.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_56-28-4-1.glsl" +glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_16-0-4-1_SSIM.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-chroma-left-smoothtest1.hook" +#glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-rgb-smoothtest1.hook" +glsl-shaders-append="C:\Program Files\MPV\shaders\ravu-r4-yuv-smoothtest1.hook" +scale=ewa_lanczossharp +scale-clamp=0.2 +dscale=mitchell +cscale=haasnsoft +cscale-window=blackman +cscale-radius=3 +vd-lavc-threads=32 + +# 4K videos +[4K30] # low fps: use SSIM to downscale +profile-desc=cond:((get("video-params/w", -math.huge)>2560 or get("video-params/h", -math.huge)>1440) and get("container-fps", -math.huge)<31 and get("estimated-vf-fps", -math.huge)<31) +fbo-format=rgba16hf +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_56-28-4-1.glsl" +#glsl-shaders-append="C:\Program Files\MPV\shaders\SSimDownscaler.glsl" +scale=ewa_lanczossharp +scale-clamp=0.2 +dscale=mitchell +cscale=ewa_lanczossharp +vd-lavc-threads=32 +fullscreen=yes + +[UHD60] # high fps: use no glsl-shaders +profile-desc=cond:((get("video-params/w", -math.huge)>1920 or get("video-params/h", -math.huge)>1080) and ((get("container-fps", -math.huge)<31 and get("estimated-vf-fps", -math.huge)>=31) or get("container-fps", -math.huge)>=31)) +fbo-format=rgba16hf +glsl-shaders-clr +glsl-shaders-append="C:\Program Files\MPV\shaders\FSRCNNX_x2_56-28-4-1.glsl" +scale=haasnsoft +scale-clamp=0.2 +dscale=mitchell +cscale=haasnsoft +vd-lavc-threads=32 +#fullscreen=yes + +#[4K] +#profile-desc=cond:get('width', -math.huge) >= 3840 +#fullscreen=yes +#deband=no +#vd-lavc-fast=yes +#vd-lavc-threads=32 +#ad-lavc-threads=0 +#fbo-format=rgba16hf + +#[4K-inverted] +#profile-desc=cond:get('width', -math.huge) < 3840 +#vd-lavc-fast=yes +#vd-lavc-threads=0 +#ad-lavc-threads=0 + +[default] + + +################################### +# Protocol Specific Configuration # +################################### + +[protocol.http] +cache=yes +no-cache-pause # if the player should pause when the cache runs low +user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:57.0) Gecko/20100101 Firefox/58.0' +force-window=immediate + +[protocol.https] +cache=yes +no-cache-pause # if the player should pause when the cache runs low +user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:57.0) Gecko/20100101 Firefox/58.0' +force-window=immediate + +[protocol.ytdl] +profile=protocol.http + +# Play a youtube playlist in reverse +[reverse] +ytdl-raw-options=playlist-reverse= + +# Fix up broken color ranges +[fixtv] +contrast=9 +brightness=-7 + +[nodir] +sub-auto=no +audio-file-auto=no + +# Image files (e.g. for using mpv as a pseudo image viewer) +[image] +profile=nodir +glsl-shaders-clr +mute=yes +scale=ewa_lanczos +background=0.1 +input-conf=~~/input-image.conf +video-unscaled=yes +title="mvi - ${?media-title:${media-title}}${!media-title:No file}" +image-display-duration=inf +loop-file=yes + +[extension.gif] +interpolation=no + +# Ignore aspect ratio information for PNG and JPG, because it's universally bust +[extension.png] +video-aspect=no + +[extension.jpg] +video-aspect=no + +[extension.jpeg] +profile=extension.jpg + +[nocms] +profile=image +icc-profile-auto=no + +[web] +#profile=normalize +loop-file=yes +sub-visibility=no + +[booru] +gpu-api=opengl +profile=image +#profile=normalize +video-unscaled=no +force-window=immediate + +# Higher quality screenshots. Low compression rate to speed up saving, +# since I'm saving to tmpfs anyway +[scrot] +screenshot-format=png +screenshot-png-compression=0 +screenshot-png-filter=0 +screenshot-tag-colorspace=yes +screenshot-high-bit-depth=yes + +[bench] +audio=no +untimed=yes +video-sync=display-desync +vulkan-swap-mode=immediate +opengl-swapinterval=0 +osd-msg1="FPS: ${estimated-display-fps}" + +# Fake HDR simulation profile +[hdr] +icc-profile="C:\Windows\System32\spool\drivers\color\hdr.icc" +icc-profile-auto=no +icc-contrast=1000000 +tone-mapping=mobius +fbo-format=rgba16hf +target-peak=300