~/.config/mpv/mpv.conf
# vim: syntax=config
###############################################################################
# Mpv --version : mpv 0.28.0
# FFmpeg -version : 3.4.2
#
# Write your default config options here ! : ~/.config/mpv/mpv.conf
# mpv manual manual link : http://mpv.io/manual/master/ or $ man mpv
#
# last modified : 2018.08.11
# by nietz
#target-prim=bt.2020
#target-trc=pq
#tone-mapping=mobius
###############################################################################
### Default config ###########################################################
use-filedir-conf=yes
# load config file from file directory, useful for overriding ass styles for
# entire series
#prefetch-playlist=yes
#save-position-on-quit
# Always save the current playback position on quit. When this file is played
# again later, the player will seek to the old playback position
# on start. This does not happen if playback of a file is stopped in any
# other way than quitting. For example, going to the next file in the playlist
# will not save the position, and start playback at beginning the next time the
# file is played. This behavior is disabled by default, but is always available
# when quitting the player with Shift+Q.
video-output-levels=full
# RGB color levels used with YUV to RGB conversion. Normally, output
# devices such as PC monitors use full range color levels. However, some
# TVs and video monitors expect studio RGB levels. Providing full range
# output to a device expecting studio level input results in crushed
# blacks and whites, the reverse in dim gray blacks and dim whites.
# Available color ranges are: auto, limited, full
#How the player synchronizes audio and video.
#video-sync=display-resample
video-sync=audio
# If you use this option, you usually want to set it to display-resample
# to enable a timing mode that tries to not skip or repeat frames when
# for example playing 24fps video on a 24Hz screen.
#
# The modes starting with display- try to output video frames completely
# synchronously to the display, using the detected display vertical
# refresh rate as a hint how fast frames will be displayed on average.
# These modes change video speed slightly to match the display. See
# --video-sync-... options for fine tuning. The robustness of this mode
# is further reduced by making a some idealized assumptions, which may
# not always apply in reality. Behavior can depend on the VO and the
# system's video and audio drivers. Media files must use constant fram‐
# erate. Section-wise VFR might work as well with some container formats
# (but not e.g. mkv). If the sync code detects severe A/V desync, or the
# framerate cannot be detected, the player automatically reverts to audio
# mode for some time or permanently. These modes also require a vsync
# blocked presentation mode. For OpenGL, this translates to
# --opengl-swapinterval=1. For Vulkan, it translates to
# --vulkan-swap-mode=fifo (or fifo-relaxed).
#
# The modes with desync in their names do not attempt to keep audio/video
# in sync. They will slowly (or quickly) desync, until e.g. the next seek
# happens. These modes are meant for testing, not serious use.
#
# audio Time video frames to audio. This is the most robust mode,
# because the player doesn't have to assume anything about how the
# display behaves. The disadvantage is that it can lead to occa‐
# sional frame drops or repeats. If audio is disabled, this uses
# the system clock. This is the default mode.
#
# display-resample
# Resample audio to match the video. This mode will also try to
# adjust audio speed to compensate for other drift. (This means
# it will play the audio at a different speed every once in a
# while to reduce the A/V difference.)
#
# display-resample-vdrop
# Resample audio to match the video. Drop video frames to compen‐
# sate for drift.
#
# display-resample-desync
# Like the previous mode, but no A/V compensation.
#
# display-vdrop
# Drop or repeat video frames to compensate desyncing video.
# (Although it should have the same effects as audio, the imple‐
# mentation is very different.)
#
# display-adrop
# Drop or repeat audio data to compensate desyncing video. See
# --video-sync-adrop-size. This mode will cause severe audio arti‐
# facts if the real monitor refresh rate is too different from the
# reported or forced rate.
#
# display-desync
# Sync video to display, and let audio play on its own.
#
# desync Sync video according to system clock, and let audio play on its
# own.
#hwdec=vaapi
# 하드웨어 가속 옵션
# vaapi : Intel, AMD 독점드라이버
# vdpau : NVIDIA, AMD Radeon 오픈소스 드라이버
#
# --hwdec=
# Specify the hardware video decoding API that should be used if possible.
# Whether hardware decoding is actually done depends on the video codec. If
# hardware decoding is not possible, mpv will fall back on software decoding.
#
# can be one of the following:
# no: always use software decoding (default)
# auto: see below
# vdpau: requires --vo=vdpau or --vo=opengl (Linux only)
# vaapi: requires --vo=opengl or --vo=vaapi (Linux only)
# vaapi-copy: copies video back into system RAM (Linux with Intel GPUs only)
# videotoolbox: requires --vo=opengl (OS X 10.8 and up only)
# dxva2-copy: copies video back to system RAM (Windows only)
# rpi: requires --vo=rpi (Raspberry Pi only - default if available)
#
# auto tries to automatically enable hardware decoding using the first
# available method. This still depends what VO you are using. For example, if
# you are not using --vo=vdpau or --vo=opengl, vdpau decoding will never be
# enabled. Also note that if the first found method doesn't actually work, it
# will always fall back to software decoding, instead of trying the next method
# (might matter on some Linux systems).
#
# The vaapi mode, if used with --vo=opengl, requires Mesa 11 and most likely
# works with Intel GPUs only. It also requires the opengl EGL backend
# (automatically used if available). You can also try the old GLX backend by
# forcing it with --vo=opengl:backend=x11, but the vaapi/GLX interop is said to
# be slower than vaapi-copy.
#
# The vaapi-copy mode allows you to use vaapi with any VO. Because this copies
# the decoded video back to system RAM, it's likely less efficient than the
# vaapi mode.
#
# Note:
# When using this switch, hardware decoding is still only done for some codecs.
# See --hwdec-codecs to enable hardware decoding for more codecs.
## Deprecated
#vo=opengl:backend=drm-egl,drm,opengl-hq:interpolation
#vo=opengl:interpolation:tscale=sinc:tscale-clamp=yes,opengl-backend=drm,drm,xv
#vo=opengl:backend=drm-egl,drm,opengl:interpolation:tscale=sinc:tscale-clamp=yes
#vo=opengl:backend=drm-egl,drm,opengl-hq:scale=ewa_lanczossharp:scale-antiring=1.0:interpolation
# May help performance
#opengl-pbo
#vo=opengl-hq:deband=no:interpolation:tscale=sinc:tscale-clamp=yes,opengl-backend=drm,drm,xv
#profile=opengl-hq
#profile-desc=cond:is_laptop() and get('container-fps', 0) >= 59
#deband=no
#interpolation=yes
#tscale=sinc # The filter used for interpolating the temporal axis (frames). --tscale=help
#tscale-clamp=yes
#scale=bilinear
#cscale=bilinear
# Time-scale interpolation (a.k.a. smoothmotion)
#interpolation
#tscale=sinc # $ mpv --tscale=help for possible options
#tscale-clamp
vo=drm,gpu,tct
# 비디오 출력 드라이버
# values :
# xv (X11 only)
# x11 (X11 only)
# vdpau (X11 only)
# direct3d_shaders (Windows only)
# direct3d (Windows only)
# opengl
# opengl-hq
# sdl
# vaapi
# null
# caca
# image
# wayland (Wayland only)
# opengl-cb
# rpi (Raspberry Pi)
# drm (Direct Rendering Manager)
#
# vo=vaapi 는 인텔만 가능
# Intel VA API video output driver with support for hardware decoding. Note
# that there is absolutely no reason to use this, other than wanting to use
# hardware decoding to save power on laptops, or possibly preventing video
# tearing with some setups.
#
# Note:
# This driver is for compatibility with crappy systems. You can use vaapi
# hardware decoding with --vo=opengl too.
# vo는 opengl 계열로 설정하는 것이 화질상 좋다는 결론
#
#vo=opengl
#vo="opengl-hq" # Requires at least OpenGL 2.1.
#vo="opengl-cb"
#vo="opengl:scale=spline36:scale-down=mitchell:dither-depth=auto:fbo-format=rgb32f:fancy-downscaling:sigmoid-upscaling,xv"
#vo="opengl:scale=spline36:dscale=mitchell:dither-depth=auto:fbo-format=rgb32f:fancy-downscaling:sigmoid-upscaling,xv"
#
# Note :
# that some cheaper LCDs do dithering that gravely interferes with
# opengl's dithering. Disabling dithering with dither-depth=no helps.
#
# Unlike opengl, opengl-hq makes use of FBOs by default. Sometimes you can
# achieve better quality or performance by changing the fbo-format suboption to
# rgb16f, rgb32f or rgb. Known problems include Mesa/Intel not accepting rgb16,
# Mesa sometimes not being compiled with float texture support, and some OS X
# setups being very slow with rgb16 but fast with rgb32f.
# $ mpv -vo=opengl:scale=help
#hwdec-codecs="h264,mpeg2video"
#hwdec-codecs="all"
# all=하드웨어 가속 코덱 가능한거 전부
#deinterlace="auto"
# values : auto, yes, no
# 재생시 deinterlace 토글 단축키 : D (shift+d)
# yes로 놓았을시 하드웨어 가속 옵션이 no(꺼져 있으면 있으면,
# yadif 소프트웨어 디인터레이스 필터가 적용
# yes로 놓앗을시 하드웨어 가속 옵션이 껴져 있으면 해당 카드에 맞는
# 하드웨어 디인터레이스 필터가 적용된다.
# * vdpau 가속일 경우, 하드웨어 디인터레이스 적용방법 예시
# --vf-defaults=vdpaupp:deint-mode=temporal
# or
# --vo=vdpau:deint-mode=temporal
#
# --deinterlace=<yes|no|auto>
# Enable or disable interlacing (default: auto, which usually means no).
# Interlaced video shows ugly comb-like artifacts, which are visible on fast
# movement. Enabling this typically inserts the yadif video filter in order to
# deinterlace the video, or lets the video output apply deinterlacing if
# supported.
#
# This behaves exactly like the deinterlace input property (usually mapped to
# Shift+D).
#
# auto is a technicality. Strictly speaking, the default for this option is
# deinterlacing disabled, but the auto case is needed if yadif was added to the
# filter chain manually with --vf. Then the core shouldn't disable
# deinterlacing just because the --deinterlace was not set.
#
# --field-dominance=<auto|top|bottom>
# Set first field for interlaced content. Useful for deinterlacers that double
# the framerate: --vf=yadif=field and --vo=vdpau:deint.
#
# auto:
# (default) If the decoder does not export the appropriate information, it
# falls back on top (top field first).
#
# top:
# top field first
#
# bottom:
# bottom field first
#
# Note:
# Setting either top or bottom will flag all frames as interlaced.
#
# * vaapi 가속일 경우, 하드웨어 디인터레이스 적용방법 예시
# Select deinterlacing algorithm. Note that by default deinterlacing is
# initially always off, and needs to be enabled with the D key (default key
# binding for cycle deinterlace).
# This option doesn't apply if libva supports video post processing (vpp). In
# this case, the default for deint-mode is no, and enabling deinterlacing via
# user interaction using the methods mentioned above actually inserts the vavpp
# video filter. If vpp is not actually supported with the libva backend in use,
# you can use this option to forcibly enable VO based deinterlacing.
# --vf-defaults=vavpp:deint-mode=bob ????
#framedrop="vo"
# Skip displaying some frames to maintain A/V sync on slow systems, or playing
# high framerate video on video outputs that have an upper framerate limit.
#
# The argument selects the drop methods, and can be one of the following:
#
# Disable any framedropping.
#
# Drop late frames on video output (default).
# This still decodes and filters all frames, but doesn't render them on the VO.
# It tries to query the display FPS (X11 only, not correct on multi-monitor
# systems), or assumes infinite display FPS if that fails. Drops are indicated
# in the terminal status line as D: field. If the decoder is too slow, in
# theory all frames would have to be dropped (because all frames are too late)
# - to avoid this, frame dropping stops if the effective framerate is below 10
# FPS.
#
# Old, decoder-based framedrop mode. (This is the same as
# --framedrop=yes in mpv 0.5.x and before.) This tells the decoder to skip
# frames (unless they are needed to decode future frames). May help with slow
# systems, but can produce unwatchable choppy output, or even freeze the
# display completely. Not recommended. The --vd-lavc-framedrop option controls
# what frames to drop.
# <decoder+vo>
# Enable both modes. Not recommended.
#
# Note:
# --vo=vdpau has its own code for the vo framedrop mode. Slight differences to
# other VOs are possible.
#
# 디코딩 성능이 딸려서 싱크 에러 뜰경우, 허용으로 바꾼다 A-V: -0.000 0이거나
# 0에 가까운 값이어야 한다 이 수치가 증가하면 프레임 드롭이 발생 A/V 싱크 에러,
# 재생시 문제가 발생할 소지가 있다(avsync property)
### Youtube-dl ################################################################
hls-bitrate=max # use max quality for HLS streams
ytdl="yes" # yutube-dl
#ytdl-format="bestvideo+bestaudio" # default=best => 720p
#ytdl-format=bestvideo[height<=?1080][vcodec!=vp9]+bestaudio/best # for Haswall hardware decoding
#ytdl-format="((bestvideo[vcodec^=vp9]/bestvideo)+(bestaudio[acodec=opus]/bestaudio[acodec=vorbis]/bestaudio[acodec=aac]/bestaudio))/best" # best quality open codecs (VP9 and Opus),
ytdl-format="bestvideo[height<=?2160][fps<=?60][protocol!=http_dash_segments][ext=mp4]+(bestaudio[acodec=opus]/bestaudio[acodec=vorbis]/bestaudio[acodec=aac]/bestaudio/bestaudio[ext=webm])/bestvideo+bestaudio/best[ext=mp4]/best"
#ytdl-raw-options=format="[protocol!=http_dash_segments][protocol!=rtmp]" # 720p
#
# $ youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=webm]/best[ext=mp4]/best' --all-subs '유투브 플레이리스트 URL'
# $ youtube-dl -F URL 로 포멧코드 확인 후, $ mpv --ytdl-format=[포맷코드] url
# 보통의 video:1080p mp4, Audio:128k m4a 인경우
# $ mpv --ytdl-format=137+140 https://www.youtube.com/watch?v=q6f-LLM1H6U
#
# 실사용 예시
# 1. 해당 youtube url 클립보드로 복사
# 2. $ mpv $(xclip -o)
# 3. "mpv $(xclip -o)" 명령줄을 윈도우 매니저의 단축키 설정을 통해
# 특정 키로 키바인딩
#
# ex) xmonad
# ManageHook
# className =? mpv --> doRectFloat (W.RationalRect 0.759 0.758 0.24 0.24)
# or
# Layout
# circle
# Keybinding
# ((modMask x, xK_y), submap . M.fromList $
# [.
# ((0, xK_u), spawn "mpv $(xclip -o)")
# ]
### Audio #####################################################################
#ao=pulse,pulse,oss
pulse-latency-hacks
# 오디오 출력 드라이버 pulse, alsa, oss 순으로
# If this is enabled (default), playing with a speed different from normal automatically inserts the
# scaletempo audio filter. For details, see audio filter section.
audio-pitch-correction=no # default: yes
# Example for ALSA
#
# MPlayer and mplayer2 required you to replace any ',' with '.' and any ':' with '=' in the
# ALSA device name. For example, to use the device named dmix:default, you had to do:
# -ao alsa:device=dmix=default
#
# In mpv you could instead use:
# --audio-device=alsa/dmix:defaul
audio-device=auto
# --audio-channels=<auto-safe|auto|layouts>
# Control which audio channels are output (e.g. surround vs. stereo). There are the following possi‐
# bilities:
audio-channels=auto
# --audio-file-auto=<no|exact|fuzzy|all>, --no-audio-file-auto
# Load additional audio files matching the video filename. The parameter specifies how external
# audio files are matched. exact is enabled by default.
audio-file-auto=fuzzy
alang="ko,kor,en,eng,jp,jpn,und"
#mute=yes #소리 끄고 시작
mute=no
volume=100 #softvol="yes" is deprecated
volume-max=300 #softvol-max=300 is deprecated
#볼륨 증폭
### Window ###################################################################
#title="Filename: ${filename}"
# Set the window title(윈도우 창이름 해당 형태로 변경)
# shows the filename of the current file when pressing the i key.
# [Warning] There is a danger of this causing significant CPU usage,
# depending on the properties used. Changing the window title is often a slow
# operation, and if the title changes every frame, playback can be ruined.
screen=2
fs-screen=all
# --fs-screen=<all|current|0-32>
# 듀얼 모니터인 경우 전체화면 F 키 누르면 2개 모니터에 걸친 전체 화면
# Note (X11)
# This option does works properly only with window managers which understand the
# EWMH _NET_WM_FULLSCREEN_MONITORS hint.
# 우분투에선 unity(gnome compiz), xmonad 윈도우 매니저에서 동작 확인함
# --screen=<default|0-32>
# In multi-monitor configurations (i.e. a single desktop that spans across
# multiple displays), this option tells mpv which screen to display the video
# on.
# Note (X11)
# This option does not work properly with all window managers. In these cases,
# you can try to use --geometry to position the window explicitly. It's also
# possible that the window manager provides native features to control which
# screens application windows should use.
ontop
# 다른 윈도우 창들보다 더 위에
border="no"
# disable the standard window decorations
#autofit-larger="67%x75%"
## 창이 화면에 해당 크기 이상으로 커지지 않게 설정.전체화면 제외
cursor-autohide=1000
# --cursor-autohide=<number|no|always>
# Make mouse cursor automatically hide after given number of
# milliseconds. no will disable cursor autohide. always means
# the cursor will stay hidden.
#cursor-autohide-fs-only="yes"
# fullscreen에서만 마우스 커서 숨기기
#fixed-vo="no"
no-keepaspect
#keepaspect
# 윈도우 창크기 변경시 위아래,좌우로 꽉 차게 풀로 알아서 늘려 준다
#keepaspect-window
#monitoraspect=16:9
stop-screensaver="yes"
x11-netwm="auto"
# --x11-bypass-compositor=<yes|no|fs-only|never>
# If set to yes, then ask the compositor to unredirect the mpv window (default: fs-only).
# This uses the _NET_WM_BYPASS_COMPOSITOR hint.
#
# fs-only asks the window manager to disable the compositor only in fullscreen mode.
#
# no sets _NET_WM_BYPASS_COMPOSITOR to 0, which is the default value as declared
# by the EWMH specification, i.e. no change is done.
#
# never asks the window manager to never disable the compositor.
x11-bypass-compositor=no
#geometry=3840x1080+0+0
#geometry=99%x95%
geometry=72%x72%
### OSD & Subtitles ###########################################################
demuxer-mkv-subtitle-preroll=yes
# try to correctly show embedded subs when seeking
#sub-codepage="utf8:cp949"
sub-codepage="cp949"
# utf8 형식으로 자말 로딩 시도하고, 없으면 cp949(EUC-KR)형식의 자막 로딩을 시도
#sub-codepage="enca:kr:cp949"
# enca:한국 인코딩셋으로 추정 시도. 실패하면 명시된 cp949로 fall back
#sub-codepage= "enca"
# universal detection 시도, 실패하면 UTF-8로 fall back
slang="kor,ko,jp,jpn,en,eng,und" # kor:embedded, ko:enternal
# Specify a priority list of subtitle languages to use. Different container
# formats employ different language codes. DVDs use ISO 639-1 two
# letter language codes, Matroska uses ISO 639-2 three letter language codes
# while OGM uses a free-form identifier. See also --sid.
sid=auto
# --sid=<ID|auto|no>
# Display the subtitle stream specified by . auto selects the default,
# no disables subtitles
sub-scale="1"
# 자막 폰트 사이즈
# values : <0-100> (default 1)
# Note : This affects ASS subtitles as well, and may lead to incorrect subtitle
# rendering. Use with care, or use --sub-text-font-size instead.
embeddedfonts="yes"
# --no-embeddedfonts
# Use fonts embedded in Matroska container files and ASS scripts
# (default: enabled). These fonts can be used for SSA/ASS subtitle rendering.
sub-pos="95"
# <0-100> 자막 위치 The value is the vertical position of the subtitle in % of
# the screen height.
# Note :
# This affects ASS subtitles as well, and may lead to incorrect subtitle
# rendering. Use with care, or use --sub-text-margin-y instead.
sub-ass=yes
# ass 자막 사용
# disble retarded VSFilter compatibility
sub-ass-force-style=Kerning=yes
sub-ass-force-margins
sub-use-margins
# Enables placing toptitles and subtitles in black borders when they are
# available, if the subtitles are in a plain text format
# (or ASS if --sub-ass-style-override is set high enough).
#
# Default: yes.
#
# Renamed from --sub-ass-use-margins. To place ASS subtitles in the borders too
# (like the old option did), also add --sub-ass-force-margins.
sub-auto="fuzzy"
#sub-auto="all"
# 자막 로딩 자동 설정 values : no, exact(default), fuzzy, all
# --sub-auto=<no|exact|fuzzy|all>, --no-sub-auto
# Load additional subtitle files matching the video filename. The
# parameter specifies how external subtitle files are matched. exact is enabled
# by default.
#
# no Don't automatically load external subtitle files.
#
# exact Load the media filename with subtitle file extension (default).
#
# fuzzy Load all subs containing media filename.
#
# all Load all subs in the current and --sub-paths directories.
#
sub-file-paths=ass:srt:sub:subs:subtitles
# Specify extra directories to search for subtitles matching the video.
# Multiple directories can be separated by ":" (";" on Windows). Paths
# can be relative or absolute. Relative paths are interpreted relative to
# video file directory. If the file is a URL, only absolute paths and
# sub configuration subdirectory will be scanned.
#
# Example
#
# Assuming that /path/to/video/video.avi is played and
# --sub-file-paths=sub:subtitles is specified, mpv searches for
# subtitle files in these directories:
#
# · /path/to/video/
#
# · /path/to/video/sub/
#
# · /path/to/video/subtitles/
#
# · the sub configuration subdirectory (usually ~/.config/mpv/sub/)
#
# This is a list option. See List Options for details.
# 자막 폰트, default is sans-serif
#sub-text-font="/usr/share/fonts/TTF/NanumGothicCoding-Bold.ttf"
#sub-text-font="NanumGothicCoding:style=Bold"
#sub-text-font="NanumGothicBold"
#sub-text-font="NanumGothicCoding-Bold"
#sub-text-font="/usr/share/fonts/TTF/Spoqa Han Sans Bold.ttf"
#sub-text-font="SpoqaHanSansJP"
sub-font="SpoqaHanSans"
sub-bold=yes
sub-blur="0.3"
# <0..20.0> Gaussian blur factor. 0 means no blur applied (default)
sub-font-size=100
# sub-scale 중복, 위 sub-scale 설명 참조
# ARGB color format
sub-color='#c0a79a'
sub-shadow-color='#783e57'
sub-shadow-offset=4
#--osd-color=, --sub-text-color=
# Specify the color used for OSD/unstyled text subtitles.
#
# The color is specified in the form r/g/b, where each color component is specified
# as number in the range 0.0 to 1.0. It's also possible to specify the transparency
# by using r/g/b/a, where the alpha value 0 means fully transparent, and 1.0 means
# opaque. If the alpha component is not given, the color is 100% opaque.
#
# Passing a single number to the option sets the OSD to gray, and the form gray/a
# lets you specify alpha additionally.
#
# Examples
#
# · --osd-color=1.0/0.0/0.0 set OSD to opaque red
#
# · --osd-color=1.0/0.0/0.0/0.75 set OSD to opaque red with 75% alpha
#
# · --osd-color=0.5/0.75 set OSD to 50% gray with 75% alpha
#
# Alternatively, the color can be specified as a RGB hex triplet in the form #RRGGBB,
# where each 2-digit group expresses a color value in the range 0 (00) to 255 (FF).
# For example, #FF0000 is red. This is similar to web colors. Alpha is given with
# #AARRGGBB.
#
# Examples
#
# · --osd-color='#FF0000' set OSD to opaque red
#
# · --osd-color='#C0808080' set OSD to 50% gray with 75% alpha
#sub-text-border-size="1"
sub-border-size="0"
osc=no
# Do not load the on-screen-controller (default: yes).
osd-duration=2500 # default 1000 ms
#osd-font="NanumGothic:style=Bold"
#osd-font="/usr/share/fonts/TTF/NanumGothicBold.ttf"
#osd-font="Spoqa Han Sans JP Bold"
#osd-font="NanumGothicBold"
osd-font="Noto Sans"
# Specify font to use for OSD and for subtitles that do not themselves specify
# a particular font. The default is sans-serif.
# NOTE:
# The --sub-text-font option(and most other --sub-text- option) are ignored
# when ASS-subtitles are renderad, unless the --no-sub-ass option is specified
osd-font-size=30
# BGR color format
#osd-msg1='${time-pos}-${=time-pos} / ${duration} (${percent-pos}%) #${estimated-frame-number} frame\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1} ${osd-sym-cc}${osd-ass-cc/0}{\\1c&H725761&}{\\b1}\t${media-title}\n${osd-ass-cc/0}{\\1c&H573E78&}{\\b1}${osd-sym-cc} Subtitles: ${sid}\n\n${osd-ass-cc/0}{\\1c&H725761&}{\\fs8}${video-params}${osd-ass-cc/0}\n${osd-ass-cc/0}{\\1c&H573E78&}{\\fs12}{\\b1}'
osd-msg2='${time-pos}-${=time-pos} / ${duration} (${percent-pos}%) #${estimated-frame-number} frame\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1} ${osd-sym-cc}${osd-ass-cc/0}{\\1c&H725761&}{\\b1}\t${media-title}\nFilename: ${filename}\n${osd-ass-cc/0}{\\1c&H573E78&}{\\b1}${osd-sym-cc} Subtitles: ${sid}\n\n${osd-sym-cc}\tTrack List\n${track-list}\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1}{\\1pos(189,6,167,12&}${sub-text}'
#osd-msg3=''
osd-status-msg='${time-pos}-${=time-pos} / ${duration} (${percent-pos}%) #${estimated-frame-number} frame\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1} ${osd-sym-cc}${osd-ass-cc/0}{\\1c&H725761&}{\\b1}\t${media-title}\n ${osd-ass-cc/0}{\\1c&H573E78&}{\\b1}${osd-sym-cc} Subtitles: ${sid}\n ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}{\\fs10}\n Resolution: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${?current-vo:${width}x${height}}${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}, Name of Displays: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${display-names}${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}, File Size: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${file-size}\n ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Format: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${file-format}(video: ${video-format}${?audio-codec-name:, audio: ${audio-codec-name}})${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}, Pixel Format: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${video-params/pixelformat} ${video-params/average-bpp}bpp ${?video-params/plane-depth:${video-params/plane-depth}bit}\n ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Colormatirx: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${colormatrix}${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}, Primaries: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${colormatrix-primaries}${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}, Gamma: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${video-params/gamma}${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}\n Input-Range: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${colormatrix-input-range}${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}, Output-Range: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${video-output-levels}\n\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Hwdec: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${hwdec} ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}| Hwdec-Current: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${hwdec-current} ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}| Hwdec-Interop: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${hwdec-interop} ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}| Auto Deinterlace: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${deinterlace} ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}| Fullscreen: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${fullscreen} ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}| Framedrop: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${framedrop}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Video Codec: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${video-codec} \n ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Audio Codec: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?audio-codec:${audio-codec}}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Video-bitrate: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?video-bitrate:${video-bitrate}}${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}, Audio-bitrate: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?audio-bitrate:${audio-bitrate}} ${?audio-params/channels:(${audio-params/channels})}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Container FPS: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${container-fps} fps\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Estimated/measured FPS: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${estimated-vf-fps} fps\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} The refresh rate of the current display: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?estimated-display-fps:${estimated-display-fps}} / ${display-fps} fps\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} A/V synchronizaion difference: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?avsync:${avsync}} \n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Total A-V sync correction done: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?total-avsync-change:${total-avsync-change}}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} ${?current-vo:Decoder Frame Dropped / Frame Dropped (by VO) / VO Delayed Frame: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?decoder-frame-drop-count: ${decoder-frame-drop-count}} / ${?frame-drop-count:${frame-drop-count}} / ${?vo-delayed-frame-count:${vo-delayed-frame-count}}${osd-ass-cc/0}{\\1c&H573E57&}{\\b1}{\\fs12}\n\n${osd-ass-cc/0}{\\1c&H573E57&}{\\b1} Volume: ${volume}%, Contrast: ${contrast}, Brightness: ${brightness}, Gamma: ${gamma}, Saturation: ${saturation}, Hue: ${hue} \n${osd-ass-cc/0}{\\1c&H573E57&}{\\b1} Output Driver: ${?current-vo:VO [${current-vo}]} ${?current-ao:, AO [${current-ao}]}{\\1c&H573E57&}{\\b1} {osd-ass-cc/0}{\\1c&H009aa7c0&}{\\b1}{\\an7}\n\n Mpv version: ${mpv-version}\n FFmpeg version: ${ffmpeg-version}'
#osd-status-msg='${media-title} ${osd-sym-cc} Current Pos ${time-pos}-${=time-pos} / ${duration} (${percent-pos}%) #${estimated-frame-number} frame \n${osd-sym-cc} Resolution: ${width}x${height} | Name of Displays: ${display-names}\n${osd-sym-cc} format: ${file-format}(video: ${video-format}, audio: ${audio-codec-name}) | pixel format: ${video-params/pixelformat} | ${video-params/average-bpp}bpp ${video-params/plane-depth}bit\n${osd-sym-cc} colormatirx: ${colormatrix}, primaries: ${colormatrix-primaries}, gamma: ${video-params/gamma}, input-range: ${colormatrix-input-range}, output-range: ${colormatrix-output-range} \n\n@ hwdec: ${hwdec} | hwdec-active: ${hwdec-active} | deinterlace: ${deinterlace} | fullscreen: ${fullscreen} | framedrop: ${framedrop} | mute: ${mute}\n\n| Video-bitrate: ${video-bitrate}, Audio-bitrate: ${audio-bitrate} \n| Container FPS: ${fps} fps\n| Estimated/measured FPS: ${estimated-vf-fps} fps\n| The refresh rate of the current display: ${display-fps} fps\n| A/V synchronizaion difference: ${avsync} \n| Total A-V sync correction done: ${total-avsync-change}'
#osd-status-msg='${media-title}\n${osd-sym-cc} format: ${file-format}(video:${video-format},audio:${audio-format}) ${video-params/average-bpp}bpp ${video-params/plane-depth}bit \n${osd-sym-cc} colormatirx:${colormatrix} input-range:${colormatrix-input-range} output-range:${colormatrix-output-range} primaries:${colormatrix-primaries}\n\n@ pixel format: | hwdec: ${hwdec} | deinterlace: ${deinterlace} | fullscreen: ${fullscreen} | framderop: ${framedrop}\n${video-params}\n\n| A/V synchronizaion difference: ${avsync} \n| Total A-V sync correction done: ${total-avsync-change}'
#osd-status-msg='${time-pos}-${=time-pos} / ${duration} (${percent-pos}%) #${estimated-frame-number} frame\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1} ${osd-sym-cc}${osd-ass-cc/0}{\\1c&H725761&}{\\b1}\t${media-title}\n${osd-ass-cc/0}{\\1c&H573E78&}{\\b1}${osd-sym-cc} Subtitles: ${sid}\n\n${osd-ass-cc/0}{\\1c&H725761&}{\\fs8}${video-params}${osd-ass-cc/0}\n${osd-ass-cc/0}{\\1c&H573E78&}{\\fs12}{\\b1}'
osd-playing-msg='file: ${filename}'
osd-level=1 # =1
#osd-border-size=1
osd-border-size=0
# make the OSD progress bar be big and bottom like in mplayer and mplayer2
osd-bar-align-y=1
osd-bar-w=100
osd-bar-h=3
# ARGB color format
#osd-color='#CCFFFFFF'
osd-color='#CC783E57'
osd-border-color='#99000000'
#osd-back-color='#97312E39'
# Show OSD times with fractions of seconds (in millisecond precision). Useful to see the exact time‐
# stamp of a video frame.
osd-fractions=yes
### Screenshot ################################################################
screenshot-format=jpg
# Set the image file type used for saving screenshots.
# Available choices:
# png: PNG
# ppm: PPM
# pgm: PGM
# pgmyuv: PGM with YV12 pixel format
# tga: TARGA
# jpg: JPEG (default)
# jpeg: JPEG (same as jpg, but with .jpeg file ending)
screenshot-tag-colorspace=yes
# Tag screenshots with the appropriate colorspace.
# Note that not all formats are supported.
# Default: no.
screenshot-high-bit-depth=yes
# --screenshot-high-bit-depth=<yes|no>
# If possible, write screenshots with a bit
# depth similar to the source video (default: yes). This is interesting in
# particular for PNG, as this sometimes triggers writing 16 bit PNGs with huge
# file sizes.
screenshot-template="/home/nietz/screenshot/mpv_screenshot/%f (%P) #%n"
#screenshot-template="/home/nietz/screenshot/mpv_screenshot/%f (%P) #%n %tY-%tm-%td-%tH%tM%tS"
# http://mpv.io/manual/master/#screenshot
# 저장위치/파일이름(혹장자포함)_재생시점(시-분-초-마이크로초)
# -#0001~0012순번째_캡쳐시간(년-월-일-시분초)
#screenshot-directory="/home/nietz/screenshot/mpv_screenshot/"
# PSEUDO GUI MODE 에서만 적용되는 듯
# This mode implicitly adds --profile=pseudo-gui to the command line, with the
# pseudo-gui profile being predefined with the following contents:
# [pseudo-gui]
# terminal=no
# force-window=yes
# idle=once
# screenshot-directory=~~desktop/
screenshot-jpeg-quality=100
# Set the JPEG quality level. Higher means better quality. The default is 90.
#screenshot-jpeg-source-chroma=yes
# Write JPEG files with the same chroma subsampling as the video (default:yes).
# If disabled, the libjpeg default is used.
screenshot-png-compression=0
# Set the PNG compression level. Higher means better compression. This will
# affect the file size of the written screenshot file and the time it takes to
# write a screenshot. Too high compression might occupy enough CPU time to
# interrupt playback. The default is 7.
# default=7 최대=9 수치가 높을수록 고압축 CPU 많이 씀
# 0=무압축(용량은 커지나 안정적인 캡쳐)
screenshot-png-filter=0
# Set the filter applied prior to PNG compression. 0 is none, 1 is "sub", 2 is
# "up", 3 is "average", 4 is "Paeth", and 5 is "mixed". This affects the level
# of compression that can be achieved. For most images, "mixed" achieves the
# best compression ratio, hence it is the default.
### Network ####################################################################
cache=auto #네트워크 파일을 재생을 위한 default : 25000 kb
#cache=yes
#cache-default=8000000 # size in KB
#cache-backbuffer=25000 # size in KB
#cache-initial=0 # start playback when your cache is filled up with x kB
#cache-secs=10 # how many seconds of audio/video to prefetch if the cache is active
load-unsafe-playlists
### SVP4 #######################################################################
input-ipc-server=/tmp/mpvsocket
#vo=opengl-hq
vo=drm,gpu,tct
#profile=gpu-hq
#vo=opengl
#hwdec=no
#hwdec=vaapi
#hwdec=auto-copy
hwdec=vaapi-copy
#hwdec-codecs=all
hr-seek-framedrop=no
#vf=yadif=mode=frame:interlaced-only=yes,vapoursynth=~/.config/mpv/vapoursynth/svp4.vpy,vapoursynth=~/.config/mpv/vapoursynth/f3k_db.vpy
#
#vf=yadif=mode=frame:interlaced-only=yes,vapoursynth=~/.config/mpv/vapoursynth/mvtools.vpy,vapoursynth=~/.config/mpv/vapoursynth/flash3kyuu.vpy
#
#vf=yadif=mode=frame:interlaced-only=yes,vapoursynth=~/.config/mpv/vapoursynth/f3k_db.vpy,vapoursynth=~/.config/mpv/vapoursynth/mvtools.vpy
#
#vf=yadif=mode=frame:interlaced-only=yes,vapoursynth=/home/nietz/.config/mpv/vapoursynth/mvtools.vpy
#메인 프로필
vf="lavfi=[bwdif=mode=send_frame:parity=auto:deint=interlaced],vapoursynth=/home/nietz/.config/mpv/vapoursynth/mvtools.vpy"
#vf="vapoursynth=/run/media/nietz/data_01/svp4.py"
#vf="vapoursynth=/home/nietz/.config/mpv/vapoursynth/svp4gpu.vpy"
#
#vf=vapoursynth=/home/nietz/.config/mpv/vapoursynth/svp4.vpy
#
#vf=yadif=mode=frame:interlaced-only=yes
#
#vf=lavfi=graph=[cropdetect=limit=24:round=2:reset=0],crop=1920:1076:0:4,yadif=mode=frame:interlaced-only=yes,vapoursynth=~/.config/mpv/vapoursynth/mvtools.vpy
### Script #####################################################################
#script-opts=osc-layout=bottombar,osc-seekbarstyle=bar
### Terminal ###################################################################
# Vapoursynth by default shows too many errors, live tv ffmpeg/video too.
msg-level=vapoursynth=fatal,ffmpeg/video=fatal,ffmpeg/demuxer=fatal,osd/libass=fatal,mpv_lastfm=fatal
# Prepend module name to each console message
msg-module=no
# En/Dis-able colorful console output on terminals
msg-color=yes
term-osd-bar=yes
# output some video stats
#term-playing-msg='[원본] Resolution: ${width}x${height}, Framerate: ${container-fps} Hz \n[최종]--> Resoution: ${dwidth}x${dheight}, Framerate: ${estimated-vf-fps} Hz'
### Profile ####################################################################
[svp]
profile-desc="profile for live tv, hardware decoding deinterlace, no vapoursynth"
input-ipc-server=/tmp/mpvsocket
#hwdec=no
hwdec=auto-copy
hwdec-codecs=all
#no-resume-playback
# normal top-level option
fullscreen=no
cache=auto
demuxer-readahead-secs=20
#vo=opengl # deprecated
vo=drm,gpu
#opengl-es
#vf-clr
interpolation=no
video-sync=audio
tscale=linear # The filter used for interpolating the temporal axis (frames). --tscale=help
tscale-clamp=0
scale=bilinear
cscale=bilinear
[tv]
profile-desc="profile for live tv, hardware decoding deinterlace, no vapoursynth"
# normal top-level option
fullscreen=no
no-resume-playback
cache=auto
demuxer-readahead-secs=20
profile=opengl-hq
#vo=opengl-hq:interpolation:tscale=sinc:tscale-clamp=yes
#vo=opengl-cb:correct-downscaling
#vo=opengl:scale=ewa_lanczos:scale-radius=16
correct-downscaling
hwdec=vaapi
vf-clr
vf=vavpp=deint=bob
[tvv]
profile-desc="profile for live tv, no hardware decoding, yadif=frame, vapoursynth debanding 60fps"
# normal top-level option
fullscreen=no
no-resume-playback
cache=auto
demuxer-readahead-secs=20
#vo=opengl:interpolation
#vo=opengl-hq:interpolation
#vo=opengl:scale=ewa_lanczos:scale-radius=16
interpolation-threshold=8
hwdec=no
vf-clr
#vf=yadif=mode=frame:interlaced-only=yes,vapoursynth=/home/nietz/.config/mpv/vapoursynth/mvtools.vpy
#vf=yadif=mode=frame:interlaced-only=yes,vapoursynth=/home/nietz/.config/mpv/vapoursynth/svp4tv.vpy,vapoursynth=/home/nietz/.config/mpv/vapoursynth/flash3kyuu.vpy
#vf=yadif=mode=frame:interlaced-only=yes,vapoursynth=/home/nietz/.config/mpv/vapoursynth/svp4tv.vpy
vf=crop=1920:1076:0:4,lavfi=graph="bwdif=mode=send_frame:parity=auto:deint=interlaced",vapoursynth="/home/nietz/.config/mpv/vapoursynth/svp4tv.vpy"
[workmode]
profile-desc="profile for working mode. If hardware accrelation is possible, then on"
#vo=opengl
vf-clr
hwdec=vaapi
osd-status-msg='${time-pos}-${=time-pos} / ${duration} (${percent-pos}%) #${estimated-frame-number} frame\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1} ${osd-sym-cc}${osd-ass-cc/0}{\\1c&H725761&}{\\b1}\t${media-title}\nFilename: ${filename}\n${osd-ass-cc/0}{\\1c&H573E78&}{\\b1}${osd-sym-cc} Subtitles: ${sid}\n\n${osd-sym-cc}\tTrack List\n${track-list}\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1}{\\1pos(189,6,167,12&}${sub-text}'
[mpsyt]
profile-desc="profile for mpsyt. xmonad doIgonre layout"
screen=0
#geometry=556x313+1363+750
#geometry=560x320+1360+742
#geometry=568x320+1352+742
geometry=480x262+1440+802
[high-quality]
profile-desc=cond:is_desktop() and get('width', math.huge) < 3840
scale=ewa_lanczossharp
cscale=ewa_lanczossoft
dscale=mitchell
scale-antiring=0.0 #0.7
cscale-antiring=0.0 #0.7
dither-depth=auto
correct-downscaling=yes
sigmoid-upscaling=yes
deband=yes
[mid-quality]
profile-desc=cond:(is_laptop() and not on_battery() and get('width', math.huge) < 1920) or (is_desktop() and get('width', math.huge) >= 3840)
scale=spline36
cscale=bilinear
dscale=mitchell
scale-antiring=0.0 # 1.0
cscale-antiring=0.0 # 1.0
dither-depth=auto
correct-downscaling=yes
sigmoid-upscaling=yes
deband=yes
[low-quality]
profile-desc=cond:is_laptop() and (on_battery() or get('width', math.huge) >= 1920)
scale=bilinear
cscale=bilinear
dscale=bilinear
scale-antiring=0.0 # 1.0
cscale-antiring=0.0 # 1.0
dither-depth=no
correct-downscaling=no
sigmoid-upscaling=no
deband=no
[60FPS]
profile-desc=cond:is_laptop() and get('container-fps', 0) >= 59
scale=bilinear
cscale=bilinear
[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
[jjal]
profile-desc="profile for make animated-gif"
# normal top-level option
fullscreen=no
hwdec=no
vf-clr
keepaspect
geometry=
osd-status-msg='${time-pos}-${=time-pos} / ${duration} (${percent-pos}%) #${estimated-frame-number} frame\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1} ${osd-sym-cc}${osd-ass-cc/0}{\\1c&H725761&}{\\b1}\t${media-title}\nFilename: ${filename}'
[nodir]
sub-auto=no
audio-file-auto=no
[image]
profile=nodir
profile=opengl-hq
mute=yes
scale=ewa_lanczossharp
background=0.1
input-conf=~/.config/mpv/input-image.conf
video-unscaled=yes
title="mvi - ${?media-title:${media-title}}${!media-title:No file}"
image-display-duration=inf
loop-file=yes
geometry=
### Protocol Specific ##########################################################
[protocol.https]
#cache=yes
#cache-default=500000 # size in KB
#cache-backbuffer=250000 # size in KB
cache-secs=100 # # how many seconds of audio/video to prefetch
# http://www.whoishostingthis.com/tools/user-agent/
user-agent='Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.112 Safari/537.36 Vivaldi/1.91.867.48'
[protocol.http]
#cache=yes
#cache-default=500000 # size in KB
#cache-backbuffer=250000 # size in KB
cache-secs=100 # # how many seconds of audio/video to prefetch
user-agent='Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.112 Safari/537.36 Vivaldi/1.91.867.48'
### Extension Specific #########################################################
[extension.mkv]
profile=mid-quality
video-sync=audio
[extension.mp3]
hwdec=no
vf-clr
x11-name=music
ontop
border=no
geometry=15%
target-prim=auto
target-trc=srgb
video-output-levels=full
display-tags=album,artist,title,lyrics-kor,lyrics-eng
term-osd-bar=yes
osd-status-msg='${time-pos}-${=time-pos} / ${duration} (${percent-pos}%)\n${osd-ass-cc/0}{\\1c&H725761&}{\\b1} ${osd-sym-cc}${osd-ass-cc/0}{\\1c&H725761&}{\\b1}\t${media-title}\n ${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}{\\fs10}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} File Size: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${file-size}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Format: ${osd-ass-cc/0}{\\1c&HFFFFFF&}{\\b1}${file-format}{?audio-codec-name:${audio-codec-name}}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1}\n Audio Codec: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?audio-codec:${audio-codec}}\n${osd-ass-cc/0}{\\1c&HA3A3A3&}{\\b1} Audio-bitrate: ${osd-ass-cc/0}{\\1c&H725761&}{\\b1}${?audio-bitrate:${audio-bitrate}} ${?audio-params/channels:(${audio-params/channels})}\n\n${osd-ass-cc/0}{\\1c&H573E57&}{\\b1} Output Driver: ${?current-ao: AO [${current-ao}]}{\\1c&H573E57&}{\\b1} {osd-ass-cc/0}{\\1c&H009aa7c0&}{\\b1}{\\an7}\n\n Mpv version: ${mpv-version}\n FFmpeg version: ${ffmpeg-version}'
osd-msg2='${osd-ass-cc/0}{\\r}{\\pos(100,10)}{\\1c&H573e78&}{\\b1}{\\fs10}\n ${filtered-metadata/title} by ${filtered-metadata/artist} ( ${filtered-metadata/album})${osd-ass-cc/0}{\\1c&H009aa7c0&}{\\b1}{\\fs6}\n\n ${?filtered-metadata/lyrics-kor:${filtered-metadata/lyrics-kor}}${?filtered-metadata/lyrics-eng:${filtered-metadata/lyrics-eng}}'
[extension.flac]
profile=extension.mp3
[extension.m4a]
no-video
# equal to --vid=no, If video is disabled, mpv will try to download the audio only if media is streamed
# with youtube-dl, because it saves bandwidth. This is done by setting the ytdl_format to "bestaudio/best"
# in the ytdl_hook.lua script.
display-tags=album,artist,title,lyrics-kor,lyrics-eng # display-tags=*
term-osd-bar=yes
[extension.swf]
vf-clr
loop-file=yes
[extension.webm]
loop-file=inf
keepaspect
geometry=
vf-clr
interpolation=no
[extension.gif]
cache=no
no-pause
loop-file=yes
keepaspect
keep-open=yes
geometry=
target-prim=auto
target-trc=srgb
video-output-levels=full
vf-clr
interpolation=no
[extension.webp]
cache=no
no-pause
loop-file=yes
vf-clr
keepaspect
geometry=
# Ignore aspect ratio information for PNG and JPG, because it's universally bust
[extension.png]
video-aspect-override=no
keepaspect
pause
keep-open=yes
geometry=
vf-clr
[extension.jpg]
video-aspect-override=no
keepaspect
pause
keep-open=yes
geometry=
vf-clr
[extension.jpeg]
profile=extension.jpg