# 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 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 screenshot-format=png screenshot-png-compression=8 screenshot-template='~/Desktop/%F (%P) %n' hls-bitrate=max # use max quality for HLS streams [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] #########c # 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-max-bytes=1147483647 # ~1 GiB in bytes ############# # 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='Source Sans Pro' 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=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 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) ######### # 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=200 # maximum volume in %, everything above 100 results in amplification volume=45 # default volume, 100 = unchanged ################ # 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 # Defaults for all profiles #vo=gpu #gpu-api=opengl 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 icc-profile-auto [high-quality] profile-desc=cond:is_high(get('width', math.huge), get('height', math.huge), get('estimated-vf-fps', math.huge)) # hanning with this radius is broken on OSX due to OpenGL driver bug #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 hwdec=no [mid-quality] profile-desc=cond:is_mid(get('width', math.huge), get('height', math.huge), get('estimated-vf-fps', math.huge)) scale=spline36 cscale=spline36 dscale=mitchell scale-antiring=1.0 cscale-antiring=1.0 dither-depth=auto correct-downscaling=yes sigmoid-upscaling=yes deband=yes hwdec=no [low-quality] profile-desc=cond:is_low(get('width', math.huge), get('height', math.huge), get('estimated-vf-fps', math.huge)) scale=bilinear cscale=bilinear dscale=bilinear scale-antiring=0 cscale-antiring=0 dither-depth=no correct-downscaling=no sigmoid-upscaling=no deband=no hwdec=no [4K] profile-desc=cond:get('width', -math.huge) >= 3840 vd-lavc-threads=32 [4K-inverted] profile-desc=cond:get('width', math.huge) < 3840 vd-lavc-threads=0 [default] ################################### # Protocol Specific Configuration # ################################### [protocol.https] cache=yes user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:57.0) Gecko/20100101 Firefox/58.0' [protocol.http] cache=yes user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:57.0) Gecko/20100101 Firefox/58.0'