# This file is baked into the mpv binary at compile time, and automatically
# loaded at early initialization time. Some of the profiles are automatically
# applied at later stages during loading.

# Note: this contains profiles only. The option defaults for normal options
#       (i.e. the default profile) are defined in C code. Do NOT set any
#       options in the default profile here. It won't work correctly in subtle
#       ways.
#
# To see the normal option defaults, run: mpv --list-options

[pseudo-gui]
player-operation-mode=pseudo-gui

[builtin-pseudo-gui]
terminal=no
force-window=yes
idle=once
screenshot-directory=~~desktop/

[libmpv]
config=no
idle=yes
terminal=no
input-terminal=no
osc=no
input-default-bindings=no
input-vo-keyboard=no
# OSX/Cocoa global input hooks
input-media-keys=no

[encoding]
vo=lavc
ao=lavc
keep-open=no
force-window=no
gapless-audio=yes
resume-playback=no
load-scripts=no
osc=no
framedrop=no

[gpu-hq]
scale=spline36
cscale=spline36
dscale=mitchell
dither-depth=auto
correct-downscaling=yes
linear-downscaling=yes
sigmoid-upscaling=yes
deband=yes

[low-latency]
audio-buffer=0          # minimize extra audio buffer (can lead to dropouts)
vd-lavc-threads=1       # multithreaded decoding buffers extra frames
cache-pause=no          # do not pause on underruns
demuxer-lavf-o-add=fflags=+nobuffer # can help for weird reasons
demuxer-lavf-probe-info=nostreams   # avoid probing unless absolutely needed
demuxer-lavf-analyzeduration=0.1    # if it probes, reduce it
video-sync=audio        # DS currently requires reading ahead a frame
interpolation=no        # requires reference frames (more buffering)
video-latency-hacks=yes # typically 1 or 2 video frame less latency
stream-buffer-size=4k   # minimal buffer size; normally not needed

[sw-fast]
# For VOs which use software scalers, also affects screenshots and others.
sws-scaler=bilinear
sws-fast=yes
zimg-scaler=bilinear
zimg-dither=no

# Compatibility alias (deprecated)
[opengl-hq]
profile=gpu-hq
