# mpv 0.26.0
### LOOKUP TABLES AND CACHES ###
declare _mpv_xrandr_cache
declare -A _mpv_fargs
declare -A _mpv_pargs
### HELPER FUNCTIONS ###
_mpv_uniq(){
  local -A w
  local o=""
  for ww in "$@"; do
    if [[ -z "${w[$ww]}" ]]; then
      o="${o}${ww} "
      w[$ww]=x
    fi
  done
  printf "${o% }"
}
_mpv_profiles(){
  type mpv &>/dev/null || return 0;
  local p=$(mpv --profile help)
  echo "${p##*:}"
}
_mpv_drm_connectors(){
  type mpv &>/dev/null || return 0;
  local conn=$(mpv --no-config --drm-connector help \
                | awk '/\<connected\>/{ print $1 ; }')
  echo "${conn}"
}
_mpv_xrandr(){
  if [[ -z "$_mpv_xrandr_cache" && -n "$DISPLAY" ]] && type xrandr &>/dev/null; then
    _mpv_xrandr_cache=$(xrandr|while read l; do
      [[ $l =~ ([0-9]+x[0-9]+) ]] && echo "${BASH_REMATCH[1]}"
    done)
    _mpv_xrandr_cache=$(_mpv_uniq $_mpv_xrandr_cache)
  fi
  printf "$_mpv_xrandr_cache"
}
_mpv_s(){
  local cmp=$1
  local cur=$2
  COMPREPLY=($(compgen -W "$cmp" -- "$cur"))
}
_mpv_objarg(){
  local prev=${1#--} p=$2 r s t k f
  shift 2
  # Parameter arguments I:
  # All available parameters
  if [[ $p =~ : && $p =~ =$ ]]; then
    # current filter
    s=${p##*,}
    s=${s%%:*}
    # current parameter
    t=${p%=}
    t=${t##*:}
    # index key
    k="$prev@$s@$t"
    if [[ ${_mpv_pargs[$k]+x} ]]; then
      for q in ${_mpv_pargs[$k]}; do
        r="${r}${p}${q} "
      done
    fi

  # Parameter arguments II:
  # Fragment completion
  elif [[ ${p##*,} =~ : && ${p##*:} =~ = ]]; then
    # current filter
    s=${p##*,}
    s=${s%%:*}
    # current parameter
    t=${p%=}
    t=${t##*:}
    t=${t%%=*}
    # index key
    k="$prev@$s@$t"
    # fragment
    f=${p##*=}
    if [[ ${_mpv_pargs[$k]+x} ]]; then
      for q in ${_mpv_pargs[$k]}; do
        if [[ $q =~ ^${f} ]]; then
          r="${r}${p%=*}=${q} "
        fi
      done
    fi

  # Filter parameters I:
  # Suggest all available parameters
  elif [[ $p =~ :$ ]]; then
    # current filter
    s=${p##*,}
    s=${s%%:*}
    # index key
    k="$prev@$s"
    for q in ${_mpv_fargs[$k]}; do
      r="${r}${p}${q} "
    done

  # Filter parameters II:
  # Complete fragment
  elif [[ ${p##*,} =~ : ]]; then
    s=${p##*,}
    s=${s%%:*}
    # current argument
    t=${p##*:}
    # index key
    k="$prev@$s"
    for q in ${_mpv_fargs[$k]}; do
      if [[ $q =~ ^${t} ]]; then
        r="${r}${p%:*}:${q} "
      fi
    done

  # Filter list I:
  # All available filters
  elif [[ $p =~ ,$ ]]; then
    for q in "$@"; do
      r="${r}${p}${q} "
    done

  # Filter list II:
  # Complete fragment
  else
    s=${p##*,}
    for q in "$@"; do
      if [[ $q =~ ^${s} ]]; then
        r="${r}${p%,*},${q} "
      fi
    done
  fi
  printf "${r% }"
}
### COMPLETION ###
_mpv(){
  local cur=${COMP_WORDS[COMP_CWORD]}
  local prev=${COMP_WORDS[COMP_CWORD-1]}
  # handle --option=a|b|c and --option a=b=c
  COMP_WORDBREAKS=${COMP_WORDBREAKS/=/}
  # handle --af filter=arg,filter2=arg
  COMP_WORDBREAKS=${COMP_WORDBREAKS/:/}
  COMP_WORDBREAKS=${COMP_WORDBREAKS/,/}
if [[ -n $cur ]]; then case "$cur" in
--really-quiet=*)_mpv_s '--really-quiet=yes --really-quiet=no' "$cur"; return;;
--sws-scaler=*)_mpv_s '--sws-scaler=bicubic --sws-scaler=fast-bilinear --sws-scaler=bilinear --sws-scaler=x --sws-scaler=point --sws-scaler=area --sws-scaler=bicublin --sws-scaler=gauss --sws-scaler=sinc --sws-scaler=lanczos --sws-scaler=spline' "$cur"; return;;
--index=*)_mpv_s '--index=default --index=recreate' "$cur"; return;;
--resume-playback=*)_mpv_s '--resume-playback=yes --resume-playback=no' "$cur"; return;;
--dither-depth=*)_mpv_s '--dither-depth=-1 --dither-depth=no --dither-depth=auto' "$cur"; return;;
--keepaspect=*)_mpv_s '--keepaspect=yes --keepaspect=no' "$cur"; return;;
--vd-lavc-bitexact=*)_mpv_s '--vd-lavc-bitexact=yes --vd-lavc-bitexact=no' "$cur"; return;;
--native-keyrepeat=*)_mpv_s '--native-keyrepeat=yes --native-keyrepeat=no' "$cur"; return;;
--osd-bar=*)_mpv_s '--osd-bar=yes --osd-bar=no' "$cur"; return;;
--sub-ass=*)_mpv_s '--sub-ass=yes --sub-ass=no' "$cur"; return;;
--sub-ass-vsfilter-color-compat=*)_mpv_s '--sub-ass-vsfilter-color-compat=basic --sub-ass-vsfilter-color-compat=no --sub-ass-vsfilter-color-compat=full --sub-ass-vsfilter-color-compat=force-601' "$cur"; return;;
--edition=*)_mpv_s '--edition=0 --edition=auto' "$cur"; return;;
--taskbar-progress=*)_mpv_s '--taskbar-progress=yes --taskbar-progress=no' "$cur"; return;;
--stop-playback-on-init-failure=*)_mpv_s '--stop-playback-on-init-failure=yes --stop-playback-on-init-failure=no' "$cur"; return;;
--target-trc=*)_mpv_s '--target-trc=auto --target-trc=bt.1886 --target-trc=srgb --target-trc=linear --target-trc=gamma1.8 --target-trc=gamma2.2 --target-trc=gamma2.8 --target-trc=prophoto --target-trc=pq --target-trc=hlg --target-trc=v-log --target-trc=s-log1 --target-trc=s-log2' "$cur"; return;;
--ff-aid=*)_mpv_s '--ff-aid=0 --ff-aid=auto --ff-aid=no' "$cur"; return;;
--vd-lavc-skiploopfilter=*)_mpv_s '--vd-lavc-skiploopfilter=default --vd-lavc-skiploopfilter=none --vd-lavc-skiploopfilter=nonref --vd-lavc-skiploopfilter=bidir --vd-lavc-skiploopfilter=nonkey --vd-lavc-skiploopfilter=all' "$cur"; return;;
--osd-scale-by-window=*)_mpv_s '--osd-scale-by-window=yes --osd-scale-by-window=no' "$cur"; return;;
--x11-bypass-compositor=*)_mpv_s '--x11-bypass-compositor=fs-only --x11-bypass-compositor=no --x11-bypass-compositor=yes --x11-bypass-compositor=never' "$cur"; return;;
--sub-align-x=*)_mpv_s '--sub-align-x=center --sub-align-x=left --sub-align-x=right' "$cur"; return;;
--ontop-level=*)_mpv_s '--ontop-level=0 --ontop-level=window --ontop-level=system' "$cur"; return;;
--sub-ass-scale-with-window=*)_mpv_s '--sub-ass-scale-with-window=yes --sub-ass-scale-with-window=no' "$cur"; return;;
--vo-vaapi-scaled-osd=*)_mpv_s '--vo-vaapi-scaled-osd=yes --vo-vaapi-scaled-osd=no' "$cur"; return;;
--input-right-alt-gr=*)_mpv_s '--input-right-alt-gr=yes --input-right-alt-gr=no' "$cur"; return;;
--window-dragging=*)_mpv_s '--window-dragging=yes --window-dragging=no' "$cur"; return;;
--screen=*)_mpv_s '--screen=0 --screen=default' "$cur"; return;;
--correct-downscaling=*)_mpv_s '--correct-downscaling=yes --correct-downscaling=no' "$cur"; return;;
--jack-autostart=*)_mpv_s '--jack-autostart=yes --jack-autostart=no' "$cur"; return;;
--oautofps=*)_mpv_s '--oautofps=yes --oautofps=no' "$cur"; return;;
--screenshot-high-bit-depth=*)_mpv_s '--screenshot-high-bit-depth=yes --screenshot-high-bit-depth=no' "$cur"; return;;
--demuxer-rawaudio-format=*)_mpv_s '--demuxer-rawaudio-format=s16le --demuxer-rawaudio-format=u8 --demuxer-rawaudio-format=s8 --demuxer-rawaudio-format=u16le --demuxer-rawaudio-format=u16be --demuxer-rawaudio-format=s16be --demuxer-rawaudio-format=u24le --demuxer-rawaudio-format=u24be --demuxer-rawaudio-format=s24le --demuxer-rawaudio-format=s24be --demuxer-rawaudio-format=u32le --demuxer-rawaudio-format=u32be --demuxer-rawaudio-format=s32le --demuxer-rawaudio-format=s32be --demuxer-rawaudio-format=floatle --demuxer-rawaudio-format=floatbe --demuxer-rawaudio-format=doublele --demuxer-rawaudio-format=doublebe --demuxer-rawaudio-format=u16 --demuxer-rawaudio-format=s16 --demuxer-rawaudio-format=u24 --demuxer-rawaudio-format=s24 --demuxer-rawaudio-format=u32 --demuxer-rawaudio-format=s32 --demuxer-rawaudio-format=float --demuxer-rawaudio-format=double' "$cur"; return;;
--oharddup=*)_mpv_s '--oharddup=yes --oharddup=no' "$cur"; return;;
--dvbin-full-transponder=*)_mpv_s '--dvbin-full-transponder=yes --dvbin-full-transponder=no' "$cur"; return;;
--msg-time=*)_mpv_s '--msg-time=yes --msg-time=no' "$cur"; return;;
--sub-auto=*)_mpv_s '--sub-auto=exact --sub-auto=no --sub-auto=fuzzy --sub-auto=all' "$cur"; return;;
--sub-filter-sdh-harder=*)_mpv_s '--sub-filter-sdh-harder=yes --sub-filter-sdh-harder=no' "$cur"; return;;
--input-terminal=*)_mpv_s '--input-terminal=yes --input-terminal=no' "$cur"; return;;
--opengl-sw=*)_mpv_s '--opengl-sw=yes --opengl-sw=no' "$cur"; return;;
--load-scripts=*)_mpv_s '--load-scripts=yes --load-scripts=no' "$cur"; return;;
--write-filename-in-watch-later-config=*)_mpv_s '--write-filename-in-watch-later-config=yes --write-filename-in-watch-later-config=no' "$cur"; return;;
--alpha=*)_mpv_s '--alpha=blend-tiles --alpha=no --alpha=yes --alpha=blend' "$cur"; return;;
--icc-profile-auto=*)_mpv_s '--icc-profile-auto=yes --icc-profile-auto=no' "$cur"; return;;
--vid=*)_mpv_s '--vid=0 --vid=auto --vid=no' "$cur"; return;;
--vd-lavc-show-all=*)_mpv_s '--vd-lavc-show-all=yes --vd-lavc-show-all=no' "$cur"; return;;
--opengl-debug=*)_mpv_s '--opengl-debug=yes --opengl-debug=no' "$cur"; return;;
--vd-lavc-software-fallback=*)_mpv_s '--vd-lavc-software-fallback=1 --vd-lavc-software-fallback=3 --vd-lavc-software-fallback=no --vd-lavc-software-fallback=yes' "$cur"; return;;
--hidpi-window-scale=*)_mpv_s '--hidpi-window-scale=yes --hidpi-window-scale=no' "$cur"; return;;
--vo-image-format=*)_mpv_s '--vo-image-format=jpg --vo-image-format=jpeg --vo-image-format=png' "$cur"; return;;
--pause=*)_mpv_s '--pause=yes --pause=no' "$cur"; return;;
--sid=*)_mpv_s '--sid=0 --sid=auto --sid=no' "$cur"; return;;
--osd-align-x=*)_mpv_s '--osd-align-x=left --osd-align-x=center --osd-align-x=right' "$cur"; return;;
--ad-lavc-downmix=*)_mpv_s '--ad-lavc-downmix=yes --ad-lavc-downmix=no' "$cur"; return;;
--audio-pitch-correction=*)_mpv_s '--audio-pitch-correction=yes --audio-pitch-correction=no' "$cur"; return;;
--oneverdrop=*)_mpv_s '--oneverdrop=yes --oneverdrop=no' "$cur"; return;;
--vo-tct-algo=*)_mpv_s '--vo-tct-algo=half-blocks --vo-tct-algo=plain' "$cur"; return;;
--vd-lavc-skipidct=*)_mpv_s '--vd-lavc-skipidct=default --vd-lavc-skipidct=none --vd-lavc-skipidct=nonref --vd-lavc-skipidct=bidir --vd-lavc-skipidct=nonkey --vd-lavc-skipidct=all' "$cur"; return;;
--replaygain-clip=*)_mpv_s '--replaygain-clip=yes --replaygain-clip=no' "$cur"; return;;
--vo-image-tag-colorspace=*)_mpv_s '--vo-image-tag-colorspace=yes --vo-image-tag-colorspace=no' "$cur"; return;;
--vd-lavc-fast=*)_mpv_s '--vd-lavc-fast=yes --vd-lavc-fast=no' "$cur"; return;;
--alsa-resample=*)_mpv_s '--alsa-resample=yes --alsa-resample=no' "$cur"; return;;
--sub-gray=*)_mpv_s '--sub-gray=yes --sub-gray=no' "$cur"; return;;
--sub-align-y=*)_mpv_s '--sub-align-y=bottom --sub-align-y=top --sub-align-y=center' "$cur"; return;;
--cuda-decode-device=*)_mpv_s '--cuda-decode-device=0 --cuda-decode-device=auto' "$cur"; return;;
--ovfirst=*)_mpv_s '--ovfirst=yes --ovfirst=no' "$cur"; return;;
--sub-ass-force-margins=*)_mpv_s '--sub-ass-force-margins=yes --sub-ass-force-margins=no' "$cur"; return;;
--opengl-waitvsync=*)_mpv_s '--opengl-waitvsync=yes --opengl-waitvsync=no' "$cur"; return;;
--merge-files=*)_mpv_s '--merge-files=yes --merge-files=no' "$cur"; return;;
--cache-pause=*)_mpv_s '--cache-pause=yes --cache-pause=no' "$cur"; return;;
--demuxer-lavf-probe-info=*)_mpv_s '--demuxer-lavf-probe-info=auto --demuxer-lavf-probe-info=no --demuxer-lavf-probe-info=yes' "$cur"; return;;
--list-options=*)_mpv_s '--list-options=yes --list-options=no' "$cur"; return;;
--snap-window=*)_mpv_s '--snap-window=yes --snap-window=no' "$cur"; return;;
--vo-vdpau-chroma-deint=*)_mpv_s '--vo-vdpau-chroma-deint=yes --vo-vdpau-chroma-deint=no' "$cur"; return;;
--demuxer-mkv-subtitle-preroll=*)_mpv_s '--demuxer-mkv-subtitle-preroll=index --demuxer-mkv-subtitle-preroll=no --demuxer-mkv-subtitle-preroll=yes' "$cur"; return;;
--vd-lavc-framedrop=*)_mpv_s '--vd-lavc-framedrop=nonref --vd-lavc-framedrop=none --vd-lavc-framedrop=default --vd-lavc-framedrop=bidir --vd-lavc-framedrop=nonkey --vd-lavc-framedrop=all' "$cur"; return;;
--image-subs-video-resolution=*)_mpv_s '--image-subs-video-resolution=yes --image-subs-video-resolution=no' "$cur"; return;;
--input-default-bindings=*)_mpv_s '--input-default-bindings=yes --input-default-bindings=no' "$cur"; return;;
--ff-vid=*)_mpv_s '--ff-vid=0 --ff-vid=auto --ff-vid=no' "$cur"; return;;
--force-rgba-osd-rendering=*)_mpv_s '--force-rgba-osd-rendering=yes --force-rgba-osd-rendering=no' "$cur"; return;;
--audio-fallback-to-null=*)_mpv_s '--audio-fallback-to-null=yes --audio-fallback-to-null=no' "$cur"; return;;
--loop-file=*)_mpv_s '--loop-file=0 --loop-file=no --loop-file=yes --loop-file=inf' "$cur"; return;;
--ao-pcm-append=*)_mpv_s '--ao-pcm-append=yes --ao-pcm-append=no' "$cur"; return;;
--demuxer-lavf-genpts-mode=*)_mpv_s '--demuxer-lavf-genpts-mode=no --demuxer-lavf-genpts-mode=lavf' "$cur"; return;;
--audio-file-auto=*)_mpv_s '--audio-file-auto=no --audio-file-auto=exact --audio-file-auto=fuzzy --audio-file-auto=all' "$cur"; return;;
--input-test=*)_mpv_s '--input-test=yes --input-test=no' "$cur"; return;;
--msg-module=*)_mpv_s '--msg-module=yes --msg-module=no' "$cur"; return;;
--save-position-on-quit=*)_mpv_s '--save-position-on-quit=yes --save-position-on-quit=no' "$cur"; return;;
--jack-connect=*)_mpv_s '--jack-connect=yes --jack-connect=no' "$cur"; return;;
--prefetch-playlist=*)_mpv_s '--prefetch-playlist=yes --prefetch-playlist=no' "$cur"; return;;
--audio-spdif=*)_mpv_s '--audio-spdif=ac3 --audio-spdif=dts-hd --audio-spdif=dts' "$cur"; return;;
--interpolation=*)_mpv_s '--interpolation=yes --interpolation=no' "$cur"; return;;
--sub-ass-justify=*)_mpv_s '--sub-ass-justify=yes --sub-ass-justify=no' "$cur"; return;;
--stretch-dvd-subs=*)_mpv_s '--stretch-dvd-subs=yes --stretch-dvd-subs=no' "$cur"; return;;
--xv-ck=*)_mpv_s '--xv-ck=cur --xv-ck=use --xv-ck=set' "$cur"; return;;
--sub-ass-vsfilter-aspect-compat=*)_mpv_s '--sub-ass-vsfilter-aspect-compat=yes --sub-ass-vsfilter-aspect-compat=no' "$cur"; return;;
--vo-image-high-bit-depth=*)_mpv_s '--vo-image-high-bit-depth=yes --vo-image-high-bit-depth=no' "$cur"; return;;
--embeddedfonts=*)_mpv_s '--embeddedfonts=yes --embeddedfonts=no' "$cur"; return;;
--target-prim=*)_mpv_s '--target-prim=auto --target-prim=bt.601-525 --target-prim=bt.601-625 --target-prim=bt.709 --target-prim=bt.2020 --target-prim=bt.470m --target-prim=apple --target-prim=adobe --target-prim=prophoto --target-prim=cie1931 --target-prim=dci-p3 --target-prim=v-gamut --target-prim=s-gamut' "$cur"; return;;
--osd-bold=*)_mpv_s '--osd-bold=yes --osd-bold=no' "$cur"; return;;
--sub-ass-vsfilter-blur-compat=*)_mpv_s '--sub-ass-vsfilter-blur-compat=yes --sub-ass-vsfilter-blur-compat=no' "$cur"; return;;
--cdda-cdtext=*)_mpv_s '--cdda-cdtext=yes --cdda-cdtext=no' "$cur"; return;;
--hwdec=*)_mpv_s '--hwdec=no --hwdec=auto --hwdec=yes --hwdec=auto-copy --hwdec=vdpau --hwdec=vdpau-copy --hwdec=videotoolbox --hwdec=videotoolbox-copy --hwdec=vaapi --hwdec=vaapi-copy --hwdec=dxva2 --hwdec=dxva2-copy --hwdec=d3d11va --hwdec=d3d11va-copy --hwdec=rpi --hwdec=rpi-copy --hwdec=mediacodec --hwdec=cuda --hwdec=cuda-copy --hwdec=crystalhd' "$cur"; return;;
--opengl-rectangle-textures=*)_mpv_s '--opengl-rectangle-textures=yes --opengl-rectangle-textures=no' "$cur"; return;;
--ao-null-untimed=*)_mpv_s '--ao-null-untimed=yes --ao-null-untimed=no' "$cur"; return;;
--sub-fix-timing=*)_mpv_s '--sub-fix-timing=yes --sub-fix-timing=no' "$cur"; return;;
--demuxer-mkv-probe-start-time=*)_mpv_s '--demuxer-mkv-probe-start-time=yes --demuxer-mkv-probe-start-time=no' "$cur"; return;;
--gapless-audio=*)_mpv_s '--gapless-audio=weak --gapless-audio=no --gapless-audio=yes' "$cur"; return;;
--hr-seek-framedrop=*)_mpv_s '--hr-seek-framedrop=yes --hr-seek-framedrop=no' "$cur"; return;;
--ometadata=*)_mpv_s '--ometadata=yes --ometadata=no' "$cur"; return;;
--opengl-pbo=*)_mpv_s '--opengl-pbo=yes --opengl-pbo=no' "$cur"; return;;
--screenshot-tag-colorspace=*)_mpv_s '--screenshot-tag-colorspace=yes --screenshot-tag-colorspace=no' "$cur"; return;;
--keep-open-pause=*)_mpv_s '--keep-open-pause=yes --keep-open-pause=no' "$cur"; return;;
--demuxer-mkv-probe-video-duration=*)_mpv_s '--demuxer-mkv-probe-video-duration=no --demuxer-mkv-probe-video-duration=yes --demuxer-mkv-probe-video-duration=full' "$cur"; return;;
--autoload-files=*)_mpv_s '--autoload-files=yes --autoload-files=no' "$cur"; return;;
--autosync=*)_mpv_s '--autosync=0 --autosync=no' "$cur"; return;;
--ocopyts=*)_mpv_s '--ocopyts=yes --ocopyts=no' "$cur"; return;;
--input-vo-keyboard=*)_mpv_s '--input-vo-keyboard=yes --input-vo-keyboard=no' "$cur"; return;;
--jack-std-channel-layout=*)_mpv_s '--jack-std-channel-layout=waveext --jack-std-channel-layout=any' "$cur"; return;;
--vd-lavc-skipframe=*)_mpv_s '--vd-lavc-skipframe=default --vd-lavc-skipframe=none --vd-lavc-skipframe=nonref --vd-lavc-skipframe=bidir --vd-lavc-skipframe=nonkey --vd-lavc-skipframe=all' "$cur"; return;;
--osc=*)_mpv_s '--osc=yes --osc=no' "$cur"; return;;
--input-cursor=*)_mpv_s '--input-cursor=yes --input-cursor=no' "$cur"; return;;
--demuxer-lavf-allow-mimetype=*)_mpv_s '--demuxer-lavf-allow-mimetype=yes --demuxer-lavf-allow-mimetype=no' "$cur"; return;;
--opengl-fbo-format=*)_mpv_s '--opengl-fbo-format=auto --opengl-fbo-format=rgb8 --opengl-fbo-format=rgba8 --opengl-fbo-format=rgb10 --opengl-fbo-format=rgb10_a2 --opengl-fbo-format=rgb16 --opengl-fbo-format=rgb16f --opengl-fbo-format=rgb32f --opengl-fbo-format=rgba12 --opengl-fbo-format=rgba16 --opengl-fbo-format=rgba16f --opengl-fbo-format=rgba32f' "$cur"; return;;
--untimed=*)_mpv_s '--untimed=yes --untimed=no' "$cur"; return;;
--sub-scale-by-window=*)_mpv_s '--sub-scale-by-window=yes --sub-scale-by-window=no' "$cur"; return;;
--deinterlace=*)_mpv_s '--deinterlace=auto --deinterlace=no --deinterlace=yes' "$cur"; return;;
--ao-pcm-waveheader=*)_mpv_s '--ao-pcm-waveheader=yes --ao-pcm-waveheader=no' "$cur"; return;;
--opengl-dumb-mode=*)_mpv_s '--opengl-dumb-mode=auto --opengl-dumb-mode=yes --opengl-dumb-mode=no' "$cur"; return;;
--sub-visibility=*)_mpv_s '--sub-visibility=yes --sub-visibility=no' "$cur"; return;;
--force-seekable=*)_mpv_s '--force-seekable=yes --force-seekable=no' "$cur"; return;;
--quiet=*)_mpv_s '--quiet=yes --quiet=no' "$cur"; return;;
--audio-stream-silence=*)_mpv_s '--audio-stream-silence=yes --audio-stream-silence=no' "$cur"; return;;
--osd-fractions=*)_mpv_s '--osd-fractions=yes --osd-fractions=no' "$cur"; return;;
--ordered-chapters=*)_mpv_s '--ordered-chapters=yes --ordered-chapters=no' "$cur"; return;;
--video-unscaled=*)_mpv_s '--video-unscaled=no --video-unscaled=yes --video-unscaled=downscale-big' "$cur"; return;;
--video-rotate=*)_mpv_s '--video-rotate=0 --video-rotate=no' "$cur"; return;;
--cdda-skip=*)_mpv_s '--cdda-skip=yes --cdda-skip=no' "$cur"; return;;
--force-window-position=*)_mpv_s '--force-window-position=yes --force-window-position=no' "$cur"; return;;
--pulse-buffer=*)_mpv_s '--pulse-buffer=1 --pulse-buffer=250 --pulse-buffer=native' "$cur"; return;;
--alsa-ignore-chmap=*)_mpv_s '--alsa-ignore-chmap=yes --alsa-ignore-chmap=no' "$cur"; return;;
--scaler-resizes-only=*)_mpv_s '--scaler-resizes-only=yes --scaler-resizes-only=no' "$cur"; return;;
--video-osd=*)_mpv_s '--video-osd=yes --video-osd=no' "$cur"; return;;
--shuffle=*)_mpv_s '--shuffle=yes --shuffle=no' "$cur"; return;;
--temporal-dither=*)_mpv_s '--temporal-dither=yes --temporal-dither=no' "$cur"; return;;
--access-references=*)_mpv_s '--access-references=yes --access-references=no' "$cur"; return;;
--framedrop=*)_mpv_s '--framedrop=vo --framedrop=no --framedrop=decoder --framedrop=decoder+vo' "$cur"; return;;
--cursor-autohide=*)_mpv_s '--cursor-autohide=0 --cursor-autohide=1000 --cursor-autohide=no --cursor-autohide=always' "$cur"; return;;
--term-osd-bar=*)_mpv_s '--term-osd-bar=yes --term-osd-bar=no' "$cur"; return;;
--tls-verify=*)_mpv_s '--tls-verify=yes --tls-verify=no' "$cur"; return;;
--use-filedir-conf=*)_mpv_s '--use-filedir-conf=yes --use-filedir-conf=no' "$cur"; return;;
--cache=*)_mpv_s '--cache=32 --cache=auto --cache=no --cache=yes' "$cur"; return;;
--fit-border=*)_mpv_s '--fit-border=yes --fit-border=no' "$cur"; return;;
--initial-audio-sync=*)_mpv_s '--initial-audio-sync=yes --initial-audio-sync=no' "$cur"; return;;
--frames=*)_mpv_s '--frames=0 --frames=all' "$cur"; return;;
--msg-color=*)_mpv_s '--msg-color=yes --msg-color=no' "$cur"; return;;
--term-osd=*)_mpv_s '--term-osd=auto --term-osd=force --term-osd=no' "$cur"; return;;
--osd-justify=*)_mpv_s '--osd-justify=auto --osd-justify=left --osd-justify=center --osd-justify=right' "$cur"; return;;
--vo-image-jpeg-source-chroma=*)_mpv_s '--vo-image-jpeg-source-chroma=yes --vo-image-jpeg-source-chroma=no' "$cur"; return;;
--opengl-es=*)_mpv_s '--opengl-es=auto --opengl-es=no --opengl-es=yes --opengl-es=force2' "$cur"; return;;
--blend-subtitles=*)_mpv_s '--blend-subtitles=no --blend-subtitles=yes --blend-subtitles=video' "$cur"; return;;
--stretch-image-subs-to-screen=*)_mpv_s '--stretch-image-subs-to-screen=yes --stretch-image-subs-to-screen=no' "$cur"; return;;
--ytdl=*)_mpv_s '--ytdl=yes --ytdl=no' "$cur"; return;;
--orawts=*)_mpv_s '--orawts=yes --orawts=no' "$cur"; return;;
--pulse-latency-hacks=*)_mpv_s '--pulse-latency-hacks=yes --pulse-latency-hacks=no' "$cur"; return;;
--sub-use-margins=*)_mpv_s '--sub-use-margins=yes --sub-use-margins=no' "$cur"; return;;
--mute=*)_mpv_s '--mute=no --mute=auto --mute=yes' "$cur"; return;;
--keepaspect-window=*)_mpv_s '--keepaspect-window=yes --keepaspect-window=no' "$cur"; return;;
--opengl-glfinish=*)_mpv_s '--opengl-glfinish=yes --opengl-glfinish=no' "$cur"; return;;
--audio-normalize-downmix=*)_mpv_s '--audio-normalize-downmix=yes --audio-normalize-downmix=no' "$cur"; return;;
--vo-wayland-rgb565=*)_mpv_s '--vo-wayland-rgb565=yes --vo-wayland-rgb565=no' "$cur"; return;;
--vo-tct-256=*)_mpv_s '--vo-tct-256=yes --vo-tct-256=no' "$cur"; return;;
--audio-exclusive=*)_mpv_s '--audio-exclusive=yes --audio-exclusive=no' "$cur"; return;;
--config=*)_mpv_s '--config=yes --config=no' "$cur"; return;;
--cookies=*)_mpv_s '--cookies=yes --cookies=no' "$cur"; return;;
--ao-null-broken-eof=*)_mpv_s '--ao-null-broken-eof=yes --ao-null-broken-eof=no' "$cur"; return;;
--rebase-start-time=*)_mpv_s '--rebase-start-time=yes --rebase-start-time=no' "$cur"; return;;
--vo-vdpau-force-yuv=*)_mpv_s '--vo-vdpau-force-yuv=yes --vo-vdpau-force-yuv=no' "$cur"; return;;
--sub-forced-only=*)_mpv_s '--sub-forced-only=yes --sub-forced-only=no' "$cur"; return;;
--gamma-auto=*)_mpv_s '--gamma-auto=yes --gamma-auto=no' "$cur"; return;;
--fullscreen=*)_mpv_s '--fullscreen=yes --fullscreen=no' "$cur"; return;;
--load-unsafe-playlists=*)_mpv_s '--load-unsafe-playlists=yes --load-unsafe-playlists=no' "$cur"; return;;
--hr-seek=*)_mpv_s '--hr-seek=absolute --hr-seek=no --hr-seek=yes --hr-seek=always' "$cur"; return;;
--x11-netwm=*)_mpv_s '--x11-netwm=auto --x11-netwm=no --x11-netwm=yes' "$cur"; return;;
--ignore-path-in-watch-later-config=*)_mpv_s '--ignore-path-in-watch-later-config=yes --ignore-path-in-watch-later-config=no' "$cur"; return;;
--demuxer-thread=*)_mpv_s '--demuxer-thread=yes --demuxer-thread=no' "$cur"; return;;
--secondary-sid=*)_mpv_s '--secondary-sid=0 --secondary-sid=no --secondary-sid=auto' "$cur"; return;;
--video-stereo-mode=*)_mpv_s '--video-stereo-mode=mono --video-stereo-mode=no --video-stereo-mode=sbs2l --video-stereo-mode=ab2r --video-stereo-mode=ab2l --video-stereo-mode=checkr --video-stereo-mode=checkl --video-stereo-mode=irr --video-stereo-mode=irl --video-stereo-mode=icr --video-stereo-mode=icl --video-stereo-mode=arcc --video-stereo-mode=sbs2r --video-stereo-mode=agmc --video-stereo-mode=al --video-stereo-mode=ar' "$cur"; return;;
--ff-sid=*)_mpv_s '--ff-sid=0 --ff-sid=auto --ff-sid=no' "$cur"; return;;
--v=*)_mpv_s '--v=yes --v=no' "$cur"; return;;
--ontop=*)_mpv_s '--ontop=yes --ontop=no' "$cur"; return;;
--sub-filter-sdh=*)_mpv_s '--sub-filter-sdh=yes --sub-filter-sdh=no' "$cur"; return;;
--on-all-workspaces=*)_mpv_s '--on-all-workspaces=yes --on-all-workspaces=no' "$cur"; return;;
--aid=*)_mpv_s '--aid=0 --aid=auto --aid=no' "$cur"; return;;
--playlist-start=*)_mpv_s '--playlist-start=0 --playlist-start=auto --playlist-start=no' "$cur"; return;;
--alsa-non-interleaved=*)_mpv_s '--alsa-non-interleaved=yes --alsa-non-interleaved=no' "$cur"; return;;
--screenshot-jpeg-source-chroma=*)_mpv_s '--screenshot-jpeg-source-chroma=yes --screenshot-jpeg-source-chroma=no' "$cur"; return;;
--vo-vdpau-pullup=*)_mpv_s '--vo-vdpau-pullup=yes --vo-vdpau-pullup=no' "$cur"; return;;
--vo-vdpau-composite-detect=*)_mpv_s '--vo-vdpau-composite-detect=yes --vo-vdpau-composite-detect=no' "$cur"; return;;
--keep-open=*)_mpv_s '--keep-open=no --keep-open=yes --keep-open=always' "$cur"; return;;
--hls-bitrate=*)_mpv_s '--hls-bitrate=0 --hls-bitrate=max --hls-bitrate=no --hls-bitrate=min' "$cur"; return;;
--rtsp-transport=*)_mpv_s '--rtsp-transport=tcp --rtsp-transport=lavf --rtsp-transport=udp --rtsp-transport=http' "$cur"; return;;
--video-aspect-method=*)_mpv_s '--video-aspect-method=container --video-aspect-method=hybrid --video-aspect-method=bitstream' "$cur"; return;;
--sub-clear-on-seek=*)_mpv_s '--sub-clear-on-seek=yes --sub-clear-on-seek=no' "$cur"; return;;
--sub-bold=*)_mpv_s '--sub-bold=yes --sub-bold=no' "$cur"; return;;
--opengl-early-flush=*)_mpv_s '--opengl-early-flush=auto --opengl-early-flush=no --opengl-early-flush=yes' "$cur"; return;;
--sub-scale-with-window=*)_mpv_s '--sub-scale-with-window=yes --sub-scale-with-window=no' "$cur"; return;;
--player-operation-mode=*)_mpv_s '--player-operation-mode=cplayer --player-operation-mode=pseudo-gui' "$cur"; return;;
--sub-justify=*)_mpv_s '--sub-justify=auto --sub-justify=left --sub-justify=center --sub-justify=right' "$cur"; return;;
--oafirst=*)_mpv_s '--oafirst=yes --oafirst=no' "$cur"; return;;
--osd-level=*)_mpv_s '--osd-level=1 --osd-level=0 --osd-level=2 --osd-level=3' "$cur"; return;;
--video-sync=*)_mpv_s '--video-sync=audio --video-sync=display-resample --video-sync=display-resample-vdrop --video-sync=display-resample-desync --video-sync=display-adrop --video-sync=display-vdrop --video-sync=display-desync --video-sync=desync' "$cur"; return;;
--ao-null-broken-delay=*)_mpv_s '--ao-null-broken-delay=yes --ao-null-broken-delay=no' "$cur"; return;;
--linear-scaling=*)_mpv_s '--linear-scaling=yes --linear-scaling=no' "$cur"; return;;
--sub-italic=*)_mpv_s '--sub-italic=yes --sub-italic=no' "$cur"; return;;
--fs-screen=*)_mpv_s '--fs-screen=0 --fs-screen=current --fs-screen=all' "$cur"; return;;
--sub-ass-shaper=*)_mpv_s '--sub-ass-shaper=complex --sub-ass-shaper=simple' "$cur"; return;;
--deband=*)_mpv_s '--deband=yes --deband=no' "$cur"; return;;
--border=*)_mpv_s '--border=yes --border=no' "$cur"; return;;
--cursor-autohide-fs-only=*)_mpv_s '--cursor-autohide-fs-only=yes --cursor-autohide-fs-only=no' "$cur"; return;;
--cache-default=*)_mpv_s '--cache-default=32 --cache-default=75000 --cache-default=no' "$cur"; return;;
--force-window=*)_mpv_s '--force-window=no --force-window=yes --force-window=immediate' "$cur"; return;;
--sub-ass-hinting=*)_mpv_s '--sub-ass-hinting=none --sub-ass-hinting=light --sub-ass-hinting=normal --sub-ass-hinting=native' "$cur"; return;;
--demuxer-lavf-hacks=*)_mpv_s '--demuxer-lavf-hacks=yes --demuxer-lavf-hacks=no' "$cur"; return;;
--list-properties=*)_mpv_s '--list-properties=yes --list-properties=no' "$cur"; return;;
--vd-lavc-check-hw-profile=*)_mpv_s '--vd-lavc-check-hw-profile=yes --vd-lavc-check-hw-profile=no' "$cur"; return;;
--stop-screensaver=*)_mpv_s '--stop-screensaver=yes --stop-screensaver=no' "$cur"; return;;
--osd-italic=*)_mpv_s '--osd-italic=yes --osd-italic=no' "$cur"; return;;
--screenshot-format=*)_mpv_s '--screenshot-format=jpg --screenshot-format=jpeg --screenshot-format=png' "$cur"; return;;
--dither=*)_mpv_s '--dither=fruit --dither=ordered --dither=no' "$cur"; return;;
--idle=*)_mpv_s '--idle=no --idle=once --idle=yes' "$cur"; return;;
--correct-pts=*)_mpv_s '--correct-pts=yes --correct-pts=no' "$cur"; return;;
--xv-ck-method=*)_mpv_s '--xv-ck-method=man --xv-ck-method=none --xv-ck-method=bg --xv-ck-method=auto' "$cur"; return;;
--sigmoid-upscaling=*)_mpv_s '--sigmoid-upscaling=yes --sigmoid-upscaling=no' "$cur"; return;;
--vo-wayland-alpha=*)_mpv_s '--vo-wayland-alpha=yes --vo-wayland-alpha=no' "$cur"; return;;
--replaygain=*)_mpv_s '--replaygain=no --replaygain=track --replaygain=album' "$cur"; return;;
--osd-align-y=*)_mpv_s '--osd-align-y=top --osd-align-y=center --osd-align-y=bottom' "$cur"; return;;
--video-output-levels=*)_mpv_s '--video-output-levels=auto --video-output-levels=limited --video-output-levels=full' "$cur"; return;;
--vo-vaapi-scaling=*)_mpv_s '--vo-vaapi-scaling=default --vo-vaapi-scaling=fast --vo-vaapi-scaling=hq --vo-vaapi-scaling=nla' "$cur"; return;;
--loop-playlist=*)_mpv_s '--loop-playlist=1 --loop-playlist=no --loop-playlist=inf --loop-playlist=yes --loop-playlist=force' "$cur"; return;;
--hdr-tone-mapping=*)_mpv_s '--hdr-tone-mapping=mobius --hdr-tone-mapping=clip --hdr-tone-mapping=reinhard --hdr-tone-mapping=hable --hdr-tone-mapping=gamma --hdr-tone-mapping=linear' "$cur"; return;;
--terminal=*)_mpv_s '--terminal=yes --terminal=no' "$cur"; return;;
--audio-display=*)_mpv_s '--audio-display=attachment --audio-display=no' "$cur"; return;;
--sub-ass-override=*)_mpv_s '--sub-ass-override=yes --sub-ass-override=no --sub-ass-override=force --sub-ass-override=scale --sub-ass-override=strip' "$cur"; return;;
esac; fi
if [[ -n $prev && ( $cur =~ , || $cur =~ : ) ]]; then case "$prev" in
--vf-defaults)_mpv_s "$(_mpv_objarg "$prev" "$cur" crop expand scale format noformat flip mirror lavfi lavfi-bridge rotate gradfun pullup yadif stereo3d eq dsize sub buffer vapoursynth vapoursynth-lazy: vavpp vdpaupp)" "$cur";return;;
--ao)_mpv_s "$(_mpv_objarg "$prev" "$cur" pulse alsa oss jack null pcm)" "$cur";return;;
--af)_mpv_s "$(_mpv_objarg "$prev" "$cur" channels format volume equalizer pan lavcac3enc lavrresample rubberband scaletempo lavfi lavfi-bridge)" "$cur";return;;
--af-defaults)_mpv_s "$(_mpv_objarg "$prev" "$cur" channels format volume equalizer pan lavcac3enc lavrresample rubberband scaletempo lavfi lavfi-bridge)" "$cur";return;;
--vo)_mpv_s "$(_mpv_objarg "$prev" "$cur" opengl vdpau wayland xv vaapi x11 null image tct caca drm)" "$cur";return;;
--vf)_mpv_s "$(_mpv_objarg "$prev" "$cur" crop expand scale format noformat flip mirror lavfi lavfi-bridge rotate gradfun pullup yadif stereo3d eq dsize sub buffer vapoursynth vapoursynth-lazy: vavpp vdpaupp)" "$cur";return;;
esac; fi
if [[ -n $prev ]]; then case "$prev" in
--input-conf|--input-ipc-server|--log-file|--dvd-device|--tls-cert-file|--sub-ass-styles|--input-file|--cookies-file|--icc-profile|--ao-pcm-file|--o|--include|--bluray-device|--tls-ca-file|--tls-key-file|--stream-dump|--record-file|--playlist|--dvbin-file|--ordered-chapters-files|--cdrom-device|--chapters-file|--cache-file)_filedir;return;;
--profile)_mpv_s "$(_mpv_profiles)" "$cur";return;;
--drm-connector)_mpv_s "$(_mpv_drm_connectors)" "$cur";return;;
--screenshot-directory|--config-dir|--icc-cache-dir|--vo-image-outdir|--watch-later-directory)_filedir -d;return;;
--cache-seek-min)_mpv_s '0 2147483647 500' "$cur"; return;;
--tscale-param2)_mpv_s 'nan' "$cur"; return;;
--network-timeout)_mpv_s '0' "$cur"; return;;
--external-files)_mpv_s '' "$cur"; return;;
--dscale-param2)_mpv_s 'nan' "$cur"; return;;
--cdda-toc-bias)_mpv_s '0' "$cur"; return;;
--vd-lavc-threads)_mpv_s '0' "$cur"; return;;
--tscale-clamp)_mpv_s '0 1' "$cur"; return;;
--hwdec-codecs)_mpv_s 'h264,vc1,wmv3,hevc,mpeg2video,vp9' "$cur"; return;;
--video-align-x)_mpv_s '-1 0 1' "$cur"; return;;
--scale-taper)_mpv_s '0 1' "$cur"; return;;
--sws-cvs)_mpv_s '0' "$cur"; return;;
--sub-shadow-offset)_mpv_s '0 10' "$cur"; return;;
--cscale-clamp)_mpv_s '0 1' "$cur"; return;;
--dscale-clamp)_mpv_s '0 1' "$cur"; return;;
--cscale-param2)_mpv_s 'nan' "$cur"; return;;
--gamma)_mpv_s '-100 0 100' "$cur"; return;;
--audio-demuxer)_mpv_s 'cue demuxer: disc edl lavf mf mkv null playlist rar rawaudio rawvideo' "$cur"; return;;
--demuxer-readahead-secs)_mpv_s '1' "$cur"; return;;
--term-status-msg)_mpv_s '' "$cur"; return;;
--demuxer-rawvideo-h)_mpv_s '1 720 8192' "$cur"; return;;
--dvd-speed)_mpv_s '0' "$cur"; return;;
--vo-vdpau-deint)_mpv_s '-4 0 4' "$cur"; return;;
--tscale-wblur)_mpv_s '0' "$cur"; return;;
--opengl-backend)_mpv_s 'auto drm drm-egl vdpauglx wayland x11 x11egl x11probe' "$cur"; return;;
--oss-mixer-device)_mpv_s '/dev/mixer' "$cur"; return;;
--ao-null-speed)_mpv_s '0 1 10000' "$cur"; return;;
--cscale-wblur)_mpv_s '0' "$cur"; return;;
--dscale-wblur)_mpv_s '0' "$cur"; return;;
--cscale-window)_mpv_s 'bartlett blackman box gaussian hamming hanning jinc kaiser quadric sinc sphinx triangle tukey welch' "$cur"; return;;
--ao-null-channel-layouts)_mpv_s '' "$cur"; return;;
--dvbin-timeout)_mpv_s '1 30' "$cur"; return;;
--osd-shadow-offset)_mpv_s '0 10' "$cur"; return;;
--sub-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--end)_mpv_s '-60 50% 60' "$cur"; return;;
--tscale-window)_mpv_s '' "$cur"; return;;
--vo-vdpau-hqscaling)_mpv_s '0 9' "$cur"; return;;
--cache-initial)_mpv_s '0 2147483647' "$cur"; return;;
--scaler-lut-size)_mpv_s '10 4 6' "$cur"; return;;
--lavfi-complex)_mpv_s '' "$cur"; return;;
--sws-chs)_mpv_s '0' "$cur"; return;;
--screenshot-jpeg-quality)_mpv_s '0 100 90' "$cur"; return;;
--ad-lavc-ac3drc)_mpv_s '0 6' "$cur"; return;;
--ovoffset)_mpv_s '-1000000 0 1000000' "$cur"; return;;
--ao)_mpv_s 'alsa jack null oss pcm pulse' "$cur"; return;;
--referrer)_mpv_s '' "$cur"; return;;
--ao-null-buffer)_mpv_s '0 0.2 100' "$cur"; return;;
--demuxer-lavf-probesize)_mpv_s '0 2147483647 32' "$cur"; return;;
--cache-backbuffer)_mpv_s '0 2147483647 75000' "$cur"; return;;
--window-scale)_mpv_s '0.001 1 100' "$cur"; return;;
--screenshot-png-compression)_mpv_s '0 7 9' "$cur"; return;;
--h)_mpv_s '' "$cur"; return;;
--audio-wait-open)_mpv_s '0 60' "$cur"; return;;
--length)_mpv_s '-60 50% 60' "$cur"; return;;
--dvbin-card)_mpv_s '0 1 4' "$cur"; return;;
--input-doubleclick-time)_mpv_s '0 1000 300' "$cur"; return;;
--af-defaults)_mpv_s 'channels equalizer format lavcac3enc lavfi lavfi-bridge lavrresample pan rubberband scaletempo volume' "$cur"; return;;
--demuxer-lavf-o)_mpv_s '' "$cur"; return;;
--sws-cgb)_mpv_s '0 100' "$cur"; return;;
--title)_mpv_s '${?media-title:${media-title}}${!media-title:No file} - mpv' "$cur"; return;;
--tscale-param1)_mpv_s 'nan' "$cur"; return;;
--vf-defaults)_mpv_s 'buffer crop dsize eq expand flip format gradfun lavfi lavfi-bridge mirror noformat pullup rotate scale stereo3d sub vapoursynth vapoursynth-lazy: vavpp vdpaupp yadif' "$cur"; return;;
--osd-bar-h)_mpv_s '0.1 3.125 50' "$cur"; return;;
--cdda-overlap)_mpv_s '-1 0 75' "$cur"; return;;
--osd-msg3)_mpv_s '' "$cur"; return;;
--audio-format)_mpv_s '' "$cur"; return;;
--demuxer-rawvideo-fps)_mpv_s '0.001 1000 25' "$cur"; return;;
--monitoraspect)_mpv_s '0 9' "$cur"; return;;
--xv-adaptor)_mpv_s '-1' "$cur"; return;;
--vo-image-jpeg-quality)_mpv_s '0 100 90' "$cur"; return;;
--vo-vdpau-fps)_mpv_s '0' "$cur"; return;;
--opengl-gamma)_mpv_s '0.1 1 2' "$cur"; return;;
--sub-border-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--scale-antiring)_mpv_s '0 1' "$cur"; return;;
--deband-threshold)_mpv_s '0 4096 64' "$cur"; return;;
--drm-mode)_mpv_s '0' "$cur"; return;;
--sub-font)_mpv_s 'sans-serif' "$cur"; return;;
--sharpen)_mpv_s '0' "$cur"; return;;
--opengl-check-pattern)_mpv_s 'j-k' "$cur"; return;;
--balance)_mpv_s '-1 0 1' "$cur"; return;;
--speed)_mpv_s '0.01 1 100' "$cur"; return;;
--sub-spacing)_mpv_s '-10 0 10' "$cur"; return;;
--slang)_mpv_s '' "$cur"; return;;
--xv-port)_mpv_s '0' "$cur"; return;;
--vo-image-png-compression)_mpv_s '0 7 9' "$cur"; return;;
--sub-fps)_mpv_s '0' "$cur"; return;;
--hr-seek-demuxer-offset)_mpv_s '0' "$cur"; return;;
--vo-vdpau-queuetime-fs)_mpv_s '50' "$cur"; return;;
--temporal-dither-period)_mpv_s '1 128' "$cur"; return;;
--sub-delay)_mpv_s '0' "$cur"; return;;
--sub-ass-line-spacing)_mpv_s '-1000 0 1000' "$cur"; return;;
--teletext-page)_mpv_s '1 100 999' "$cur"; return;;
--osd-margin-y)_mpv_s '0 22 600' "$cur"; return;;
--vo)_mpv_s 'caca drm image null opengl tct vaapi vdpau wayland x11 xv' "$cur"; return;;
--cscale-param1)_mpv_s 'nan' "$cur"; return;;
--dscale-param1)_mpv_s 'nan' "$cur"; return;;
--oac)_mpv_s 'aac ac3 ac3_fixed adpcm_adx adpcm_ima_qt adpcm_ima_wav adpcm_ms adpcm_swf adpcm_yamaha alac comfortnoise dca eac3 flac g722 g723_1 g726 libgsm libgsm_ms libmp3lame libopus libspeex libtwolame libvorbis mlp mp2 mp2fixed nellymoser opus pcm_alaw pcm_f32be pcm_f32le pcm_f64be pcm_f64le pcm_mulaw pcm_s16be pcm_s16be_planar pcm_s16le pcm_s16le_planar pcm_s24be pcm_s24daud pcm_s24le pcm_s24le_planar pcm_s32be pcm_s32le pcm_s32le_planar pcm_s64be pcm_s64le pcm_s8 pcm_s8_planar pcm_u16be pcm_u16le pcm_u24be pcm_u24le pcm_u32be pcm_u32le pcm_u8 real_144 roq_dpcm s302m sonic sonicls truehd tta vorbis wavpack wmav1 wmav2' "$cur"; return;;
--sub-codepage)_mpv_s 'auto' "$cur"; return;;
--ofps)_mpv_s '0 1000000' "$cur"; return;;
--input-key-fifo-size)_mpv_s '2 65000 7' "$cur"; return;;
--video-sync-max-audio-change)_mpv_s '0 0.125 1' "$cur"; return;;
--user-agent)_mpv_s 'mpv 0.26.0' "$cur"; return;;
--sub-ass-force-style)_mpv_s '' "$cur"; return;;
--osd-border-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--term-osd-bar-chars)_mpv_s '[-+-]' "$cur"; return;;
--dvd-angle)_mpv_s '1 99' "$cur"; return;;
--deband-grain)_mpv_s '0 4096 48' "$cur"; return;;
--sub-speed)_mpv_s '1' "$cur"; return;;
--audio-delay)_mpv_s '0' "$cur"; return;;
--cscale-taper)_mpv_s '0 1' "$cur"; return;;
--contrast)_mpv_s '-100 0 100' "$cur"; return;;
--dscale-taper)_mpv_s '0 1' "$cur"; return;;
--stream-lavf-o)_mpv_s '' "$cur"; return;;
--msg-level)_mpv_s 'all=debug all=error all=fatal all=info all=no all=status all=trace all=v all=warn' "$cur"; return;;
--tscale-blur)_mpv_s '0' "$cur"; return;;
--dither-size-fruit)_mpv_s '2 6 8' "$cur"; return;;
--tscale-taper)_mpv_s '0 1' "$cur"; return;;
--deband-iterations)_mpv_s '1 16' "$cur"; return;;
--sws-cs)_mpv_s '-100 0 100' "$cur"; return;;
--sub-border-size)_mpv_s '0 10 3' "$cur"; return;;
--ovc)_mpv_s 'a64multi a64multi5 alias_pix amv apng asv1 asv2 avrp avui ayuv bmp cinepak cljr dnxhd dpx dvvideo ffv1 ffvhuff flashsv flashsv2 flv gif h261 h263 h263p h264_nvenc h264_vaapi hevc_nvenc hevc_vaapi huffyuv jpeg2000 jpegls libopenjpeg libschroedinger libtheora libvpx libvpx-vp9 libwebp libwebp_anim ljpeg mjpeg mjpeg_vaapi mpeg1video mpeg2_vaapi mpeg2video mpeg4 msmpeg4 msmpeg4v2 msvideo1 nvenc nvenc_h264 nvenc_hevc pam pbm pcx pgm pgmyuv png ppm prores prores_aw prores_ks qtrle r10k r210 rawvideo roqvideo rv10 rv20 sgi snow sunrast svq1 targa tiff utvideo v210 v308 v408 v410 vc2 vp8_vaapi wmv1 wmv2 wrapped_avframe xbm xface xwd y41p yuv4 zlib zmbv' "$cur"; return;;
--dscale-blur)_mpv_s '0' "$cur"; return;;
--opengl-tex-pad-y)_mpv_s '0 4096' "$cur"; return;;
--deband-range)_mpv_s '1 16 64' "$cur"; return;;
--cscale-blur)_mpv_s '0' "$cur"; return;;
--panscan)_mpv_s '0 1' "$cur"; return;;
--vo-vdpau-queuetime-windowed)_mpv_s '50' "$cur"; return;;
--sub-margin-x)_mpv_s '0 25 300' "$cur"; return;;
--opengl-vsync-fences)_mpv_s '0 10' "$cur"; return;;
--osd-duration)_mpv_s '0 1000 3600000' "$cur"; return;;
--scale-blur)_mpv_s '0' "$cur"; return;;
--vo-tct-width)_mpv_s '0' "$cur"; return;;
--jack-port)_mpv_s '' "$cur"; return;;
--osd-playing-msg)_mpv_s '' "$cur"; return;;
--ab-loop-a)_mpv_s '00:00:00' "$cur"; return;;
--script-opts)_mpv_s '' "$cur"; return;;
--ab-loop-b)_mpv_s '00:00:00' "$cur"; return;;
--start)_mpv_s '-60 50% 60' "$cur"; return;;
--scale)_mpv_s 'bilinear' "$cur"; return;;
--heartbeat-interval)_mpv_s '30' "$cur"; return;;
--ad-lavc-o)_mpv_s '' "$cur"; return;;
--sub-file-paths)_mpv_s '' "$cur"; return;;
--jack-name)_mpv_s 'mpv' "$cur"; return;;
--opengl-tex-pad-x)_mpv_s '0 4096' "$cur"; return;;
--oacopts)_mpv_s '' "$cur"; return;;
--sub-files)_mpv_s '' "$cur"; return;;
--osd-shadow-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--scripts)_mpv_s '' "$cur"; return;;
--video-sync-adrop-size)_mpv_s '0 0.02 1' "$cur"; return;;
--audio-channels)_mpv_s 'auto-safe' "$cur"; return;;
--tscale-antiring)_mpv_s '0 1' "$cur"; return;;
--tscale-wparam)_mpv_s 'nan' "$cur"; return;;
--ofopts)_mpv_s '' "$cur"; return;;
--osd-bar-align-y)_mpv_s '-1 0.5 1' "$cur"; return;;
--tscale)_mpv_s 'mitchell' "$cur"; return;;
--demuxer-rawaudio-channels)_mpv_s 'stereo' "$cur"; return;;
--demuxer-rawvideo-mp-format)_mpv_s '0bgr 0rgb abgr argb ayuv64 ayuv64be bayer bggr16 bggr16be bggr8 bgr0 bgr24 bgr4 bgr444 bgr444be bgr48 bgr48be bgr555 bgr555be bgr565 bgr565be bgr8 bgra bgra64 bgra64be byte cuda d3d11 d3d11va dxva2 gbrap gbrap10 gbrap10be gbrap12 gbrap12be gbrap16 gbrap16be gbrg16 gbrg16be gbrg8 gbrp gbrp10 gbrp10be gbrp12 gbrp12be gbrp14 gbrp14be gbrp16 gbrp16be gbrp9 gbrp9be gray gray10 gray10be gray12 gray12be gray16 gray16be grbg16 grbg16be grbg8 h264 idct mediacodec mmal moco monob monow mpeg1 mpeg2 mpeg4 nv12 nv16 nv20 nv20be nv21 output p010 p010be p016 p016be pal8 qsv rgb rgb0 rgb24 rgb4 rgb444 rgb444be rgb48 rgb48be rgb555 rgb555be rgb565 rgb565be rgb8 rgba rgba64 rgba64be rggb16 rggb16be rggb8 uyvy422 uyyvyy411 vaapi vc1 vda vdpau videotoolbox vl vld wmv3 xvmcidct xvmcmc xyz12 xyz12be ya16 ya16be ya8 yuv410p yuv411p yuv420p yuv420p10 yuv420p10be yuv420p12 yuv420p12be yuv420p14 yuv420p14be yuv420p16 yuv420p16be yuv420p9 yuv420p9be yuv422p yuv422p10 yuv422p10be yuv422p12 yuv422p12be yuv422p14 yuv422p14be yuv422p16 yuv422p16be yuv422p9 yuv422p9be yuv440p yuv440p10 yuv440p10be yuv440p12 yuv440p12be yuv444p yuv444p10 yuv444p10be yuv444p12 yuv444p12be yuv444p14 yuv444p14be yuv444p16 yuv444p16be yuv444p9 yuv444p9be yuva420p yuva420p10 yuva420p10be yuva420p16 yuva420p16be yuva420p9 yuva420p9be yuva422p yuva422p10 yuva422p10be yuva422p16 yuva422p16be yuva422p9 yuva422p9be yuva444p yuva444p10 yuva444p10be yuva444p16 yuva444p16be yuva444p9 yuva444p9be yuvj411p yuvj422p yuvj440p yuyv422 yvyu422' "$cur"; return;;
--replaygain-preamp)_mpv_s '-15 0 15' "$cur"; return;;
--screenshot-template)_mpv_s 'mpv-shot%n' "$cur"; return;;
--audio-client-name)_mpv_s 'mpv' "$cur"; return;;
--osd-font-size)_mpv_s '1 55 9000' "$cur"; return;;
--ovcopts)_mpv_s '' "$cur"; return;;
--saturation)_mpv_s '-100 0 100' "$cur"; return;;
--volume)_mpv_s '-1 100 1000' "$cur"; return;;
--cache-file-size)_mpv_s '0 1048576 2147483647' "$cur"; return;;
--reset-on-next-file)_mpv_s '' "$cur"; return;;
--cscale-wparam)_mpv_s 'nan' "$cur"; return;;
--osd-margin-x)_mpv_s '0 25 300' "$cur"; return;;
--hue)_mpv_s '-100 0 100' "$cur"; return;;
--demuxer-mkv-subtitle-preroll-secs)_mpv_s '1' "$cur"; return;;
--scale-param2)_mpv_s 'nan' "$cur"; return;;
--demuxer-lavf-format)_mpv_s '' "$cur"; return;;
--sub-blur)_mpv_s '0 20' "$cur"; return;;
--ao-null-latency)_mpv_s '0 100' "$cur"; return;;
--mf-type)_mpv_s '' "$cur"; return;;
--input-ar-rate)_mpv_s '40' "$cur"; return;;
--audio-device)_mpv_s 'auto' "$cur"; return;;
--video-pan-y)_mpv_s '-3 0 3' "$cur"; return;;
--help)_mpv_s '' "$cur"; return;;
--demuxer-rawvideo-codec)_mpv_s '' "$cur"; return;;
--osd-msg1)_mpv_s '' "$cur"; return;;
--oss-mixer-channel)_mpv_s '' "$cur"; return;;
--video-pan-x)_mpv_s '-3 0 3' "$cur"; return;;
--cdda-sector-size)_mpv_s '0 1 100' "$cur"; return;;
--xv-buffers)_mpv_s '1 10 2' "$cur"; return;;
--chapter-seek-threshold)_mpv_s '5' "$cur"; return;;
--chapter-merge-threshold)_mpv_s '0 100 10000' "$cur"; return;;
--cscale)_mpv_s 'bilinear' "$cur"; return;;
--x11-name)_mpv_s '' "$cur"; return;;
--audio-file-paths)_mpv_s '' "$cur"; return;;
--sub-shadow-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--tone-mapping-param)_mpv_s 'nan' "$cur"; return;;
--osd-blur)_mpv_s '0 20' "$cur"; return;;
--ytdl-raw-options)_mpv_s '' "$cur"; return;;
--sws-lgb)_mpv_s '0 100' "$cur"; return;;
--ytdl-format)_mpv_s '' "$cur"; return;;
--osd-msg2)_mpv_s '' "$cur"; return;;
--dump-stats)_mpv_s '' "$cur"; return;;
--sub-back-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--screenshot-png-filter)_mpv_s '0 5' "$cur"; return;;
--vo-vdpau-output-surfaces)_mpv_s '15 2 3' "$cur"; return;;
--alang)_mpv_s '' "$cur"; return;;
--dvbin-prog)_mpv_s '' "$cur"; return;;
--display-tags)_mpv_s 'Artist,Album,Album_Artist,Comment,Composer,Genre,Performer,Title,Track,icy-title,service_name' "$cur"; return;;
--of)_mpv_s '' "$cur"; return;;
--force-media-title)_mpv_s '' "$cur"; return;;
--demuxer-lavf-buffersize)_mpv_s '1 10485760 32768' "$cur"; return;;
--vo-vdpau-denoise)_mpv_s '0 1' "$cur"; return;;
--icc-3dlut-size)_mpv_s '64x64x64' "$cur"; return;;
--cdda-speed)_mpv_s '0 1 100' "$cur"; return;;
--replaygain-fallback)_mpv_s '-200 0 60' "$cur"; return;;
--video-align-y)_mpv_s '-1 0 1' "$cur"; return;;
--image-display-duration)_mpv_s '1' "$cur"; return;;
--opengl-shaders)_mpv_s '' "$cur"; return;;
--osd-font)_mpv_s 'sans-serif' "$cur"; return;;
--sub-font-size)_mpv_s '1 55 9000' "$cur"; return;;
--vo-null-fps)_mpv_s '0 10000' "$cur"; return;;
--osd-bar-align-x)_mpv_s '-1 0 1' "$cur"; return;;
--http-header-fields)_mpv_s '' "$cur"; return;;
--osd-status-msg)_mpv_s '' "$cur"; return;;
--omaxfps)_mpv_s '0 1000000' "$cur"; return;;
--demuxer)_mpv_s 'cue demuxer: disc edl lavf mf mkv null playlist rar rawaudio rawvideo' "$cur"; return;;
--monitorpixelaspect)_mpv_s '0.2 1 9' "$cur"; return;;
--opengl-hwdec-interop)_mpv_s '(other auto cuda vaapi-egl vaapi-glx vdpau-glx' "$cur"; return;;
--sub-demuxer)_mpv_s 'cue demuxer: disc edl lavf mf mkv null playlist rar rawaudio rawvideo' "$cur"; return;;
--dscale-antiring)_mpv_s '0 1' "$cur"; return;;
--show-profile)_mpv_s '' "$cur"; return;;
--vo-image-png-filter)_mpv_s '0 5' "$cur"; return;;
--opengl-swapinterval)_mpv_s '1' "$cur"; return;;
--cdda-toc-offset)_mpv_s '0' "$cur"; return;;
--tscale-wtaper)_mpv_s '0 1' "$cur"; return;;
--cscale-antiring)_mpv_s '0 1' "$cur"; return;;
--mc)_mpv_s '-1 0 100' "$cur"; return;;
--audio-samplerate)_mpv_s '0 1000 768000' "$cur"; return;;
--alsa-mixer-device)_mpv_s 'default' "$cur"; return;;
--scale-cutoff)_mpv_s '0 0.001 1' "$cur"; return;;
--dscale-cutoff)_mpv_s '0 0.001 1' "$cur"; return;;
--cscale-cutoff)_mpv_s '0 0.001 1' "$cur"; return;;
--vd-lavc-o)_mpv_s '' "$cur"; return;;
--af)_mpv_s 'channels equalizer format lavcac3enc lavfi lavfi-bridge lavrresample pan rubberband scaletempo volume' "$cur"; return;;
--demuxer-rawvideo-format)_mpv_s 'I420 UYVY YUY2 YV12 other' "$cur"; return;;
--osd-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--audio-buffer)_mpv_s '0 0.2 10' "$cur"; return;;
--vf)_mpv_s 'buffer crop dsize eq expand flip format gradfun lavfi lavfi-bridge mirror noformat pullup rotate scale stereo3d sub vapoursynth vapoursynth-lazy: vavpp vdpaupp yadif' "$cur"; return;;
--osd-border-size)_mpv_s '0 10 3' "$cur"; return;;
--vo-vdpau-colorkey)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--dscale-wtaper)_mpv_s '0 1' "$cur"; return;;
--cscale-wtaper)_mpv_s '0 1' "$cur"; return;;
--background)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--vo-tct-height)_mpv_s '0' "$cur"; return;;
--cdda-span)_mpv_s 'j-k' "$cur"; return;;
--osd-back-color)_mpv_s '#ffffff 1.0/1.0/1.0/1.0' "$cur"; return;;
--osd-spacing)_mpv_s '-10 0 10' "$cur"; return;;
--xv-colorkey)_mpv_s '65280' "$cur"; return;;
--osd-bar-w)_mpv_s '1 100 75' "$cur"; return;;
--interpolation-threshold)_mpv_s '0.0001' "$cur"; return;;
--alsa-mixer-name)_mpv_s 'Master' "$cur"; return;;
--wid)_mpv_s '-1' "$cur"; return;;
--term-playing-msg)_mpv_s '' "$cur"; return;;
--scale-clamp)_mpv_s '0 1' "$cur"; return;;
--sigmoid-center)_mpv_s '0 0.75 1' "$cur"; return;;
--demuxer-rawvideo-size)_mpv_s '0 1 268435456' "$cur"; return;;
--tone-mapping-desaturate)_mpv_s '2' "$cur"; return;;
--dscale-wparam)_mpv_s 'nan' "$cur"; return;;
--demuxer-lavf-analyzeduration)_mpv_s '0 3600' "$cur"; return;;
--scale-wparam)_mpv_s 'nan' "$cur"; return;;
--video-sync-max-video-change)_mpv_s '1' "$cur"; return;;
--alsa-mixer-index)_mpv_s '0 99' "$cur"; return;;
--sws-ls)_mpv_s '-100 0 100' "$cur"; return;;
--dscale-window)_mpv_s 'bartlett blackman box gaussian hamming hanning jinc kaiser quadric sinc sphinx triangle tukey welch' "$cur"; return;;
--mf-fps)_mpv_s '1' "$cur"; return;;
--video-zoom)_mpv_s '-20 0 20' "$cur"; return;;
--sub-scale)_mpv_s '0 1 100' "$cur"; return;;
--scale-wtaper)_mpv_s '0 1' "$cur"; return;;
--demuxer-rawvideo-w)_mpv_s '1 1280 8192' "$cur"; return;;
--icc-intent)_mpv_s '1' "$cur"; return;;
--ad-lavc-threads)_mpv_s '0 1 16' "$cur"; return;;
--osd-scale)_mpv_s '0 1 100' "$cur"; return;;
--ao-null-outburst)_mpv_s '1 100000 256' "$cur"; return;;
--tscale-cutoff)_mpv_s '0 1' "$cur"; return;;
--dscale-radius)_mpv_s '0 0.5 16' "$cur"; return;;
--cscale-radius)_mpv_s '0 0.5 16' "$cur"; return;;
--cdda-paranoia)_mpv_s '0 2' "$cur"; return;;
--opengl-shader-cache-dir)_mpv_s '' "$cur"; return;;
--audio-files)_mpv_s '' "$cur"; return;;
--dscale)_mpv_s 'bcspline bicubic bicubic_fast bilinear box catmull_rom ewa_ginseng ewa_hanning ewa_lanczos ewa_lanczossharp ewa_lanczossoft ewa_robidoux ewa_robidouxsharp gaussian ginseng haasnsoft jinc lanczos mitchell nearest oversample robidoux robidouxsharp sinc spline16 spline36 spline64 triangle' "$cur"; return;;
--icc-contrast)_mpv_s '0 100000' "$cur"; return;;
--sub-margin-y)_mpv_s '0 22 600' "$cur"; return;;
--demuxer-mkv-subtitle-preroll-secs-index)_mpv_s '10' "$cur"; return;;
--input-ar-delay)_mpv_s '200' "$cur"; return;;
--scale-window)_mpv_s 'bartlett blackman box gaussian hamming hanning jinc kaiser quadric sinc sphinx triangle tukey welch' "$cur"; return;;
--scale-wblur)_mpv_s '0' "$cur"; return;;
--ad)_mpv_s '8svx_exp 8svx_fib aac aac_fixed aac_latm ac3 ac3_fixed adpcm_4xm adpcm_adx adpcm_afc adpcm_aica adpcm_ct adpcm_dtk adpcm_ea adpcm_ea_maxis_xa adpcm_ea_r1 adpcm_ea_r2 adpcm_ea_r3 adpcm_ea_xas adpcm_ima_amv adpcm_ima_apc adpcm_ima_dat4 adpcm_ima_dk3 adpcm_ima_dk4 adpcm_ima_ea_eacs adpcm_ima_ea_sead adpcm_ima_iss adpcm_ima_oki adpcm_ima_qt adpcm_ima_rad adpcm_ima_smjpeg adpcm_ima_wav adpcm_ima_ws adpcm_ms adpcm_mtaf adpcm_psx adpcm_sbpro_2 adpcm_sbpro_3 adpcm_sbpro_4 adpcm_swf adpcm_thp adpcm_thp_le adpcm_vima adpcm_xa adpcm_yamaha alac als amrnb amrwb ape atrac1 atrac3 atrac3al atrac3plus atrac3plusal binkaudio_dct binkaudio_rdft bmv_audio comfortnoise cook dca dsd_lsbf dsd_lsbf_planar dsd_msbf dsd_msbf_planar dsicinaudio dss_sp dst dvaudio eac3 evrc flac g722 g723_1 g726 g726le g729 gsm gsm_ms iac imc interplay_dpcm interplayacm libcelt libgsm libgsm_ms libopus libspeex libvorbis mace3 mace6 metasound mlp mp1 mp1float mp2 mp2float mp3 mp3adu mp3adufloat mp3float mp3on4 mp3on4float mpc7 mpc8 nellymoser on2avc opus paf_audio pcm_alaw pcm_bluray pcm_dvd pcm_f16le pcm_f24le pcm_f32be pcm_f32le pcm_f64be pcm_f64le pcm_lxf pcm_mulaw pcm_s16be pcm_s16be_planar pcm_s16le pcm_s16le_planar pcm_s24be pcm_s24daud pcm_s24le pcm_s24le_planar pcm_s32be pcm_s32le pcm_s32le_planar pcm_s64be pcm_s64le pcm_s8 pcm_s8_planar pcm_u16be pcm_u16le pcm_u24be pcm_u24le pcm_u32be pcm_u32le pcm_u8 pcm_zork qcelp qdm2 qdmc ralf real_144 real_288 roq_dpcm s302m sdx2_dpcm shorten sipr smackaud sol_dpcm sonic tak truehd truespeech tta twinvq vmdaudio vorbis wavesynth wavpack wmalossless wmapro wmav1 wmav2 wmavoice ws_snd1 xan_dpcm xma1 xma2' "$cur"; return;;
--brightness)_mpv_s '-100 0 100' "$cur"; return;;
--demuxer-max-bytes)_mpv_s '0 2147483647 419430400' "$cur"; return;;
--display-fps)_mpv_s '0' "$cur"; return;;
--tscale-radius)_mpv_s '0 0.5 16' "$cur"; return;;
--sstep)_mpv_s '0' "$cur"; return;;
--scale-radius)_mpv_s '0 0.5 16' "$cur"; return;;
--oaoffset)_mpv_s '-1000000 0 1000000' "$cur"; return;;
--scale-param1)_mpv_s 'nan' "$cur"; return;;
--vo-vdpau-sharpen)_mpv_s '-1 0 1' "$cur"; return;;
--pulse-host)_mpv_s '' "$cur"; return;;
--fps)_mpv_s '0' "$cur"; return;;
--sub-pos)_mpv_s '0 100' "$cur"; return;;
--vd)_mpv_s '012v 4xm 8bps aasc aic alias_pix amv anm ansi apng asv1 asv2 aura aura2 avrn avrp avs avui ayuv bethsoftvid bfi binkvideo bintext bmp bmv_video brender_pix c93 camstudio camtasia cavs cdgraphics cdxl cfhd cinepak clearvideo cljr cllc cpia cyuv dds dfa dirac dnxhd dpx dsicinvideo dvvideo dxa dxtory dxv eacmv eamad eatgq eatgv eatqi escape124 escape130 exr ffv1 ffvhuff fic flashsv flashsv2 flic flv fmvc fraps frwu g2m gif h261 h263 h263i h263p h264 h264_cuvid hap hevc hevc_cuvid hnm4video hq_hqa hqx huffyuv idcinvideo idf iff indeo2 indeo3 indeo4 indeo5 interplayvideo jpeg2000 jpegls jv kgv1 kmvc lagarith libopenjpeg libschroedinger libvpx libvpx-vp9 loco m101 magicyuv mdec mimic mjpeg mjpeg_cuvid mjpegb mmvideo motionpixels mpeg1_cuvid mpeg1video mpeg2_cuvid mpeg2video mpeg4 mpeg4_cuvid mpegvideo msa1 msmpeg4 msmpeg4v1 msmpeg4v2 msrle mss1 mss2 msvideo1 mszh mts2 mvc1 mvc2 mxpeg nuv paf_video pam pbm pcx pgm pgmyuv pictor pixlet png ppm prores prores_lgpl psd ptx qdraw qpeg qtrle r10k r210 rawvideo rl2 roqvideo rpza rscc rv10 rv20 rv30 rv40 sanm scpr screenpresso sgi sgirle sheervideo smackvid smc smvjpeg snow sp5x speedhq sunrast svq1 svq3 targa targa_y216 tdsc theora thp tiertexseqvideo tiff tmv truemotion1 truemotion2 truemotion2rt tscc2 txd ultimotion utvideo v210 v210x v308 v408 v410 vb vble vc1 vc1_cuvid vc1image vcr1 vmdvideo vmnc vp3 vp5 vp6 vp6a vp6f vp7 vp8 vp8_cuvid vp9 vp9_cuvid vqavideo webp wmv1 wmv2 wmv3 wmv3image wnv1 xan_wc3 xan_wc4 xbin xbm xface xl xpm xwd y41p ylc yop yuv4 zerocodec zlib zmbv' "$cur"; return;;
--sub-gauss)_mpv_s '0 3' "$cur"; return;;
--demuxer-rawaudio-rate)_mpv_s '1000 384000 44100' "$cur"; return;;
--sigmoid-slope)_mpv_s '1 20 6.5' "$cur"; return;;
--cache-secs)_mpv_s '10' "$cur"; return;;
--volume-max)_mpv_s '100 1000 130' "$cur"; return;;
--demuxer-lavf-probescore)_mpv_s '1 100 26' "$cur"; return;;
--autofit)_mpv_s "$(_mpv_xrandr)" "$cur";return;;
--autofit-larger)_mpv_s "$(_mpv_xrandr)" "$cur";return;;
--geometry)_mpv_s "$(_mpv_xrandr)" "$cur";return;;
--autofit-smaller)_mpv_s "$(_mpv_xrandr)" "$cur";return;;
esac; fi
if [[ $cur =~ ^- ]]; then
_mpv_s '--really-quiet= --sws-scaler= --index= --resume-playback= --dither-depth= --keepaspect= --vd-lavc-bitexact= --native-keyrepeat= --osd-bar= --sub-ass= --sub-ass-vsfilter-color-compat= --edition= --taskbar-progress= --stop-playback-on-init-failure= --target-trc= --ff-aid= --vd-lavc-skiploopfilter= --osd-scale-by-window= --x11-bypass-compositor= --sub-align-x= --ontop-level= --sub-ass-scale-with-window= --vo-vaapi-scaled-osd= --input-right-alt-gr= --window-dragging= --screen= --correct-downscaling= --jack-autostart= --oautofps= --screenshot-high-bit-depth= --demuxer-rawaudio-format= --oharddup= --dvbin-full-transponder= --msg-time= --sub-auto= --sub-filter-sdh-harder= --input-terminal= --opengl-sw= --load-scripts= --write-filename-in-watch-later-config= --alpha= --icc-profile-auto= --vid= --vd-lavc-show-all= --opengl-debug= --vd-lavc-software-fallback= --hidpi-window-scale= --vo-image-format= --pause= --sid= --osd-align-x= --ad-lavc-downmix= --audio-pitch-correction= --oneverdrop= --vo-tct-algo= --vd-lavc-skipidct= --replaygain-clip= --vo-image-tag-colorspace= --vd-lavc-fast= --alsa-resample= --sub-gray= --sub-align-y= --cuda-decode-device= --ovfirst= --sub-ass-force-margins= --opengl-waitvsync= --merge-files= --cache-pause= --demuxer-lavf-probe-info= --list-options= --snap-window= --vo-vdpau-chroma-deint= --demuxer-mkv-subtitle-preroll= --vd-lavc-framedrop= --image-subs-video-resolution= --input-default-bindings= --ff-vid= --force-rgba-osd-rendering= --audio-fallback-to-null= --loop-file= --ao-pcm-append= --demuxer-lavf-genpts-mode= --audio-file-auto= --input-test= --msg-module= --save-position-on-quit= --jack-connect= --prefetch-playlist= --audio-spdif= --interpolation= --sub-ass-justify= --stretch-dvd-subs= --xv-ck= --sub-ass-vsfilter-aspect-compat= --vo-image-high-bit-depth= --embeddedfonts= --target-prim= --osd-bold= --sub-ass-vsfilter-blur-compat= --cdda-cdtext= --hwdec= --opengl-rectangle-textures= --ao-null-untimed= --sub-fix-timing= --demuxer-mkv-probe-start-time= --gapless-audio= --hr-seek-framedrop= --ometadata= --opengl-pbo= --screenshot-tag-colorspace= --keep-open-pause= --demuxer-mkv-probe-video-duration= --autoload-files= --autosync= --ocopyts= --input-vo-keyboard= --jack-std-channel-layout= --vd-lavc-skipframe= --osc= --input-cursor= --demuxer-lavf-allow-mimetype= --opengl-fbo-format= --untimed= --sub-scale-by-window= --deinterlace= --ao-pcm-waveheader= --opengl-dumb-mode= --sub-visibility= --force-seekable= --quiet= --audio-stream-silence= --osd-fractions= --ordered-chapters= --video-unscaled= --video-rotate= --cdda-skip= --force-window-position= --pulse-buffer= --alsa-ignore-chmap= --scaler-resizes-only= --video-osd= --shuffle= --temporal-dither= --access-references= --framedrop= --cursor-autohide= --term-osd-bar= --tls-verify= --use-filedir-conf= --cache= --fit-border= --initial-audio-sync= --frames= --msg-color= --term-osd= --osd-justify= --vo-image-jpeg-source-chroma= --opengl-es= --blend-subtitles= --stretch-image-subs-to-screen= --ytdl= --orawts= --pulse-latency-hacks= --sub-use-margins= --mute= --keepaspect-window= --opengl-glfinish= --audio-normalize-downmix= --vo-wayland-rgb565= --vo-tct-256= --audio-exclusive= --config= --cookies= --ao-null-broken-eof= --rebase-start-time= --vo-vdpau-force-yuv= --sub-forced-only= --gamma-auto= --fullscreen= --load-unsafe-playlists= --hr-seek= --x11-netwm= --ignore-path-in-watch-later-config= --demuxer-thread= --secondary-sid= --video-stereo-mode= --ff-sid= --v= --ontop= --sub-filter-sdh= --on-all-workspaces= --aid= --playlist-start= --alsa-non-interleaved= --screenshot-jpeg-source-chroma= --vo-vdpau-pullup= --vo-vdpau-composite-detect= --keep-open= --hls-bitrate= --rtsp-transport= --video-aspect-method= --sub-clear-on-seek= --sub-bold= --opengl-early-flush= --sub-scale-with-window= --player-operation-mode= --sub-justify= --oafirst= --osd-level= --video-sync= --ao-null-broken-delay= --linear-scaling= --sub-italic= --fs-screen= --sub-ass-shaper= --deband= --border= --cursor-autohide-fs-only= --cache-default= --force-window= --sub-ass-hinting= --demuxer-lavf-hacks= --list-properties= --vd-lavc-check-hw-profile= --stop-screensaver= --osd-italic= --screenshot-format= --dither= --idle= --correct-pts= --xv-ck-method= --sigmoid-upscaling= --vo-wayland-alpha= --replaygain= --osd-align-y= --video-output-levels= --vo-vaapi-scaling= --loop-playlist= --hdr-tone-mapping= --terminal= --audio-display= --sub-ass-override= --input-conf --input-ipc-server --log-file --dvd-device --tls-cert-file --sub-ass-styles --input-file --cookies-file --icc-profile --ao-pcm-file --o --include --bluray-device --tls-ca-file --tls-key-file --stream-dump --record-file --playlist --dvbin-file --ordered-chapters-files --cdrom-device --chapters-file --cache-file --profile --drm-connector --screenshot-directory --config-dir --icc-cache-dir --vo-image-outdir --watch-later-directory --cache-seek-min --tscale-param2 --network-timeout --external-files --dscale-param2 --cdda-toc-bias --vd-lavc-threads --tscale-clamp --hwdec-codecs --video-align-x --scale-taper --sws-cvs --sub-shadow-offset --cscale-clamp --dscale-clamp --cscale-param2 --gamma --audio-demuxer --demuxer-readahead-secs --term-status-msg --demuxer-rawvideo-h --dvd-speed --vo-vdpau-deint --tscale-wblur --opengl-backend --oss-mixer-device --ao-null-speed --cscale-wblur --dscale-wblur --cscale-window --ao-null-channel-layouts --dvbin-timeout --osd-shadow-offset --sub-color --end --tscale-window --vo-vdpau-hqscaling --cache-initial --scaler-lut-size --lavfi-complex --sws-chs --screenshot-jpeg-quality --ad-lavc-ac3drc --ovoffset --ao --referrer --ao-null-buffer --demuxer-lavf-probesize --cache-backbuffer --window-scale --screenshot-png-compression --h --audio-wait-open --length --dvbin-card --input-doubleclick-time --af-defaults --demuxer-lavf-o --sws-cgb --title --tscale-param1 --vf-defaults --osd-bar-h --cdda-overlap --osd-msg3 --audio-format --demuxer-rawvideo-fps --monitoraspect --xv-adaptor --vo-image-jpeg-quality --vo-vdpau-fps --opengl-gamma --sub-border-color --scale-antiring --deband-threshold --drm-mode --sub-font --sharpen --opengl-check-pattern --balance --speed --sub-spacing --slang --xv-port --vo-image-png-compression --sub-fps --hr-seek-demuxer-offset --vo-vdpau-queuetime-fs --temporal-dither-period --sub-delay --sub-ass-line-spacing --teletext-page --osd-margin-y --vo --cscale-param1 --dscale-param1 --oac --sub-codepage --ofps --input-key-fifo-size --video-sync-max-audio-change --user-agent --sub-ass-force-style --osd-border-color --term-osd-bar-chars --dvd-angle --deband-grain --sub-speed --audio-delay --cscale-taper --contrast --dscale-taper --stream-lavf-o --msg-level --tscale-blur --dither-size-fruit --tscale-taper --deband-iterations --sws-cs --sub-border-size --ovc --dscale-blur --opengl-tex-pad-y --deband-range --cscale-blur --panscan --vo-vdpau-queuetime-windowed --sub-margin-x --opengl-vsync-fences --osd-duration --scale-blur --vo-tct-width --jack-port --osd-playing-msg --ab-loop-a --script-opts --ab-loop-b --start --scale --heartbeat-interval --ad-lavc-o --sub-file-paths --jack-name --opengl-tex-pad-x --oacopts --sub-files --osd-shadow-color --scripts --video-sync-adrop-size --audio-channels --tscale-antiring --tscale-wparam --ofopts --osd-bar-align-y --tscale --demuxer-rawaudio-channels --demuxer-rawvideo-mp-format --replaygain-preamp --screenshot-template --audio-client-name --osd-font-size --ovcopts --saturation --volume --cache-file-size --reset-on-next-file --cscale-wparam --osd-margin-x --hue --demuxer-mkv-subtitle-preroll-secs --scale-param2 --demuxer-lavf-format --sub-blur --ao-null-latency --mf-type --input-ar-rate --audio-device --video-pan-y --help --demuxer-rawvideo-codec --osd-msg1 --oss-mixer-channel --video-pan-x --cdda-sector-size --xv-buffers --chapter-seek-threshold --chapter-merge-threshold --cscale --x11-name --audio-file-paths --sub-shadow-color --tone-mapping-param --osd-blur --ytdl-raw-options --sws-lgb --ytdl-format --osd-msg2 --dump-stats --sub-back-color --screenshot-png-filter --vo-vdpau-output-surfaces --alang --dvbin-prog --display-tags --of --force-media-title --demuxer-lavf-buffersize --vo-vdpau-denoise --icc-3dlut-size --cdda-speed --replaygain-fallback --video-align-y --image-display-duration --opengl-shaders --osd-font --sub-font-size --vo-null-fps --osd-bar-align-x --http-header-fields --osd-status-msg --omaxfps --demuxer --monitorpixelaspect --opengl-hwdec-interop --sub-demuxer --dscale-antiring --show-profile --vo-image-png-filter --opengl-swapinterval --cdda-toc-offset --tscale-wtaper --cscale-antiring --mc --audio-samplerate --alsa-mixer-device --scale-cutoff --dscale-cutoff --cscale-cutoff --vd-lavc-o --af --demuxer-rawvideo-format --osd-color --audio-buffer --vf --osd-border-size --vo-vdpau-colorkey --dscale-wtaper --cscale-wtaper --background --vo-tct-height --cdda-span --osd-back-color --osd-spacing --xv-colorkey --osd-bar-w --interpolation-threshold --alsa-mixer-name --wid --term-playing-msg --scale-clamp --sigmoid-center --demuxer-rawvideo-size --tone-mapping-desaturate --dscale-wparam --demuxer-lavf-analyzeduration --scale-wparam --video-sync-max-video-change --alsa-mixer-index --sws-ls --dscale-window --mf-fps --video-zoom --sub-scale --scale-wtaper --demuxer-rawvideo-w --icc-intent --ad-lavc-threads --osd-scale --ao-null-outburst --tscale-cutoff --dscale-radius --cscale-radius --cdda-paranoia --opengl-shader-cache-dir --audio-files --dscale --icc-contrast --sub-margin-y --demuxer-mkv-subtitle-preroll-secs-index --input-ar-delay --scale-window --scale-wblur --ad --brightness --demuxer-max-bytes --display-fps --tscale-radius --sstep --scale-radius --oaoffset --scale-param1 --vo-vdpau-sharpen --pulse-host --fps --sub-pos --vd --sub-gauss --demuxer-rawaudio-rate --sigmoid-slope --cache-secs --volume-max --demuxer-lavf-probescore --autofit --autofit-larger --geometry --autofit-smaller --fs --video-aspect --audio-file --sub --audio --external-file --script --input-cmdlist --video --list-protocols --opengl-shader --{ --input-keylist --} --sub-file --V --version' "$cur"; return;
fi
_filedir
}
complete -o nospace -F _mpv mpv
