#compdef mpv

# mpv zsh completion

_x_arguments -C -s \
  '--ad:String (default\: -spdif:*)': \
  '--ad-lavc-ac3drc:Float (0 to 2) (default\: 1.000000)': \
  '--ad-lavc-downmix:Flag (default\: yes)': \
  '--ad-lavc-o:String (default\: )': \
  '--ad-lavc-threads:Integer (1 to 16) (default\: 1)': \
  '--ad-spdif-dtshd:Flag (default\: no)': \
  '--af:Object settings list (default\: ):->af': \
  '--af-defaults:Object settings list (default\: )': \
  '--aid:Choices\: no auto (or an integer) (1 to 8190) (default: auto)': \
  '--alang:String list (default\: )': \
  '--ao:Object settings list (default\: ):->ao': \
  '--ao-defaults:Object settings list (default\: )': \
  '--ass-force-style:String list (default\: )': \
  '--ass-hinting:Choices\: none light normal native (default: none)': \
  '--ass-line-spacing:Float (-1000 to 1000) (default\: 0.000000)': \
  '--ass-shaper:Choices\: simple complex (default: complex)': \
  '--ass-style-override:Choices\: no yes force (default: yes)': \
  '--ass-styles:String (default\: )': \
  '--ass-use-margins:Flag (default\: no)': \
  '--ass-vsfilter-aspect-compat:Flag (default\: yes)': \
  '--ass-vsfilter-blur-compat:Flag (default\: yes)': \
  '--ass-vsfilter-color-compat:Choices\: no basic full force-601 (default: basic)': \
  '--audio-channels:Audio channels or channel map (0 to any)': \
  '--audio-delay:Float (-100 to 100) (default\: 0.000000)': \
  '--audio-demuxer:String (default\: )': \
  '--audio-display:Choices\: no attachment (default: attachment)': \
  '--audio-file:String list (default\: )': \
  '--audio-format:Audio format': \
  '--audio-samplerate:Integer (1000 to 384000) (default\: 0)': \
  '--autofit:Window size': \
  '--autofit-larger:Window size': \
  '--autosync:Choices\: no (or an integer) (0 to 10000) (default: 0)': \
  '--bluray-angle:Integer (0 to 999) (default\: 0)': \
  '--bluray-device:String (default\: )': \
  '--border:Flag (default\: yes)': \
  '--brightness:Integer (-100 to 100) (default\: 1000)': \
  '--cache:Choices\: no auto (or an integer) (32 to 2147483647) (default: auto)': \
  '--cache-default:Choices\: no (or an integer) (32 to 2147483647) (default: 25000)': \
  '--cache-file:String (default\: )': \
  '--cache-file-size:Integer (0 to 2147483647) (default\: 1048576)': \
  '--cache-initial:Integer (0 to 2147483647) (default\: 0)': \
  '--cache-pause-below:Choices\: no (or an integer) (0 to 2147483647) (default: 50)': \
  '--cache-pause-restart:Integer (0 to 2147483647) (default\: 100)': \
  '--cache-seek-min:Integer (0 to 2147483647) (default\: 500)': \
  '--chapter:Int[-Int]': \
  '--chapter-merge-threshold:Integer (0 to 10000) (default\: 100)': \
  '--chapter-seek-threshold:Double (default\: 5.000000)': \
  '--colormatrix:Choices\: auto BT.601 BT.709 SMPTE-240M BT.2020-NCL BT.2020-CL YCgCo (default: auto)': \
  '--colormatrix-input-range:Choices\: auto limited full (default: auto)': \
  '--colormatrix-output-range:Choices\: auto limited full (default: auto)': \
  '--colormatrix-primaries:Choices\: auto BT.601-525 BT.601-625 BT.709 BT.2020 (default: auto)': \
  '--config:Flag (default\: yes) [global] [nocfg]': \
  '--config-dir:String (default\: ) [global] [nocfg]': \
  '--contrast:Integer (-100 to 100) (default\: 1000)': \
  '--cookies:Flag (default\: no)': \
  '--cookies-file:String (default\: )': \
  '--correct-pts:Flag (default\: yes)': \
  '--cursor-autohide:Choices\: no always (or an integer) (0 to 30000) (default: 1000)': \
  '--cursor-autohide-fs-only:Flag (default\: no)': \
  '--deinterlace:Choices\: auto no yes  (default: auto)': \
  '--demuxer:String (default\: )': \
  '--demuxer-lavf-allow-mimetype:Flag (default\: yes)': \
  '--demuxer-lavf-analyzeduration:Float (0 to 3600) (default\: 0.000000)': \
  '--demuxer-lavf-buffersize:Integer (1 to 10485760) (default\: 32768)': \
  '--demuxer-lavf-cryptokey:String (default\: )': \
  '--demuxer-lavf-format:String (default\: )': \
  '--demuxer-lavf-genpts-mode:Choices\: lavf no (default: no)': \
  '--demuxer-lavf-o:String (default\: )': \
  '--demuxer-lavf-probescore:Integer (0 to 100) (default\: 0)': \
  '--demuxer-lavf-probesize:Integer (32 to 2147483647) (default\: 0)': \
  '--demuxer-mkv-subtitle-preroll:Flag (default\: no)': \
  '--demuxer-rawaudio-channels:Audio channels or channel map (1 to any)': \
  '--demuxer-rawaudio-format:Audio format': \
  '--demuxer-rawaudio-rate:Integer (1000 to 384000) (default\: 44100)': \
  '--demuxer-rawvideo-codec:String (default\: )': \
  '--demuxer-rawvideo-format:FourCC': \
  '--demuxer-rawvideo-fps:Float (0.001 to 1000) (default\: 25.000000)': \
  '--demuxer-rawvideo-h:Integer (1 to 8192) (default\: 720)': \
  '--demuxer-rawvideo-mp-format:Image format': \
  '--demuxer-rawvideo-size:Integer (1 to 268435456) (default\: 0)': \
  '--demuxer-rawvideo-w:Integer (1 to 8192) (default\: 1280)': \
  '--dtshd:Flag (default\: no)': \
  '--dump-stats:String (default\: ) [global]': \
  '--dvbin-card:Integer (1 to 4) (default\: 1)': \
  '--dvbin-prog:String (default\: )': \
  '--dvbin-timeout:Integer (1 to 30) (default\: 30)': \
  '--dvd-angle:Integer (1 to 99) (default\: 1)': \
  '--dvd-device:String (default\: )': \
  '--dvd-speed:Integer (default\: 0)': \
  '--edition:Choices\: auto (or an integer) (0 to 8190) (default: auto)': \
  '--embeddedfonts:Flag (default\: yes)': \
  '--end:Relative time or percent position': \
  '--field-dominance:Choices\: auto top bottom (default: auto)': \
  '--fixed-vo:Flag (default\: yes) [global]': \
  '--force-rgba-osd-rendering:Flag (default\: no)': \
  '--force-window:Flag (default\: no) [global]': \
  '--force-window-position:Flag (default\: no)': \
  '--fps:Double (0 to any) (default\: 0.000000)': \
  '--framedrop:Choices\: no yes hard (default: no)': \
  '--frames:Choices\: all (or an integer) (0 to 2147483647) (default: all)': \
  '--fs:Flag (default\: no)': \
  '--fs-screen:Choices\: all current (or an integer) (0 to 32) (default: current)': \
  '--fullscreen:Flag (default\: no)': \
  '--gamma:Integer (-100 to 100) (default\: 1000)': \
  '--gapless-audio:Choices\: no yes  weak (default: no)': \
  '--geometry:Window geometry': \
  '--h:Print [global] [nocfg]': \
  '--heartbeat-cmd:String (default\: )': \
  '--heartbeat-interval:Float (0 to any) (default\: 30.000000)': \
  '--help:Print [global] [nocfg]': \
  '--hr-seek:Choices\: no absolute always yes (default: absolute)': \
  '--hr-seek-demuxer-offset:Float (-9 to 99) (default\: 0.000000)': \
  '--hr-seek-framedrop:Flag (default\: yes)': \
  '--http-header-fields:String list (default\: )': \
  '--hue:Integer (-100 to 100) (default\: 1000)': \
  '--hwdec:Choices\: no auto vdpau vda vaapi vaapi-copy (default: no)': \
  '--hwdec-codecs:String (default\: h264,vc1,wmv3)': \
  '--idle:Flag (default\: no) [global]': \
  '--include:String (default\: )': \
  '--index:Choices\: default recreate (default: default)': \
  '--initial-audio-sync:Flag (default\: yes)': \
  '--input-ar-delay:Integer (default\: 200) [global]': \
  '--input-ar-rate:Integer (default\: 40) [global]': \
  '--input-cmdlist:Print [global] [nocfg]': \
  '--input-conf:String (default\: ) [global]': \
  '--input-cursor:Flag (default\: yes) [global]': \
  '--input-default-bindings:Flag (default\: yes) [global]': \
  '--input-doubleclick-time:Integer (0 to 1000) (default\: 300)': \
  '--input-file:String (default\: ) [global]': \
  '--input-joystick:Flag (default\: no) [global]': \
  '--input-js-dev:String (default\: ) [global]': \
  '--input-key-fifo-size:Integer (2 to 65000) (default\: 7) [global]': \
  '--input-keylist:Print [global] [nocfg]': \
  '--input-lirc:Flag (default\: yes) [global]': \
  '--input-lirc-conf:String (default\: ) [global]': \
  '--input-right-alt-gr:Flag (default\: yes) [global]': \
  '--input-terminal:Flag (default\: yes) [global]': \
  '--input-test:Flag (default\: no) [global]': \
  '--keep-open:Flag (default\: no)': \
  '--keepaspect:Flag (default\: yes)': \
  '--leak-report:Flag [global] [nocfg]': \
  '--length:Relative time or percent position': \
  '--list-options:Flag [nocfg]': \
  '--list-properties:Print [global] [nocfg]': \
  '--load-scripts:Flag (default\: yes) [global]': \
  '--load-unsafe-playlists:Flag (default\: no)': \
  '--loop:Choices\: no 1 inf (or an integer) (2 to 10000) (default: no) [global]': \
  '--loop-file:Flag (default\: no)': \
  '--lua:String list (default\: ) [global]': \
  '--lua-opts:Key/value list (default\: ) [global]': \
  '--mc:Float (0 to 100) (default\: -1.000000)': \
  '--merge-files:Flag (default\: no)': \
  '--mf-fps:Double (default\: 1.000000)': \
  '--mf-type:String (default\: )': \
  '--mkv-subtitle-preroll:Flag (default\: no)': \
  '--monitoraspect:Float (0 to 9) (default\: 0.000000)': \
  '--monitorpixelaspect:Float (0.2 to 9) (default\: 1.000000)': \
  '--msg-color:Flag (default\: yes) [global]': \
  '--msg-level:Output verbosity levels (default\: ) [global]': \
  '--msg-module:Flag (default\: no) [global]': \
  '--msg-time:Flag (default\: no) [global]': \
  '--mute:Choices\: auto no yes  (default: auto)': \
  '--native-keyrepeat:Flag (default\: no)': \
  '--no-audio:Flag': \
  '--no-sub:Flag': \
  '--no-video:Flag': \
  '--no-video-aspect:Flag': \
  '--o:String (default\: ) [global] [nocfg]': \
  '--oac:String (default\: ) [global]': \
  '--oacopts:String list (default\: ) [global]': \
  '--oafirst:Flag (default\: no) [global]': \
  '--oaoffset:Float (-1000000 to 1000000) (default\: 0.000000) [global]': \
  '--oautofps:Flag (default\: no) [global]': \
  '--ocopyts:Flag (default\: no) [global]': \
  '--of:String (default\: ) [global]': \
  '--ofopts:String list (default\: ) [global]': \
  '--ofps:Float (0 to 1000000) (default\: 0.000000) [global]': \
  '--oharddup:Flag (default\: no) [global]': \
  '--omaxfps:Float (0 to 1000000) (default\: 0.000000) [global]': \
  '--ometadata:Flag (default\: yes) [global]': \
  '--oneverdrop:Flag (default\: no) [global]': \
  '--ontop:Flag (default\: no)': \
  '--orawts:Flag (default\: no) [global]': \
  '--ordered-chapters:Flag (default\: yes)': \
  '--ordered-chapters-files:String (default\: )': \
  '--osc:Flag (default\: yes) [global]': \
  '--osd-back-color:Color': \
  '--osd-bar:Flag (default\: yes)': \
  '--osd-bar-align-x:Float (-1 to 1) (default\: 0.000000)': \
  '--osd-bar-align-y:Float (-1 to 1) (default\: 0.500000)': \
  '--osd-bar-h:Float (0.1 to 50) (default\: 3.125000)': \
  '--osd-bar-w:Float (1 to 100) (default\: 75.000000)': \
  '--osd-blur:Float (0 to 20) (default\: 0.000000)': \
  '--osd-border-color:Color': \
  '--osd-border-size:Float (0 to 10) (default\: 2.500000)': \
  '--osd-color:Color': \
  '--osd-duration:Integer (0 to 3600000) (default\: 1000)': \
  '--osd-font:String (default\: sans-serif)': \
  '--osd-font-size:Float (1 to 9000) (default\: 45.000000)': \
  '--osd-fractions:Flag (default\: no)': \
  '--osd-level:Choices\: 0 1 2 3 (default: 1)': \
  '--osd-margin-x:Integer (0 to 300) (default\: 25)': \
  '--osd-margin-y:Integer (0 to 600) (default\: 10)': \
  '--osd-scale:Float (0 to 100) (default\: 1.000000)': \
  '--osd-scale-by-window:Flag (default\: yes)': \
  '--osd-shadow-color:Color': \
  '--osd-shadow-offset:Float (0 to 10) (default\: 0.000000)': \
  '--osd-spacing:Float (-10 to 10) (default\: 0.000000)': \
  '--osd-status-msg:String (default\: )': \
  '--ovc:String (default\: ) [global]': \
  '--ovcopts:String list (default\: ) [global]': \
  '--ovfirst:Flag (default\: no) [global]': \
  '--ovoffset:Float (-1000000 to 1000000) (default\: 0.000000) [global]': \
  '--panscan:Float (0 to 1) (default\: 0.000000)': \
  '--pause:Flag (default\: no)': \
  '--playlist:String (1 to any) (default\: ) [nocfg]': \
  '--profile:String list (default\: )': \
  '--pts-association-mode:Choices\: auto decoder sort (default: decoder)': \
  '--pvr-abitrate:Integer (default\: 0)': \
  '--pvr-alayer:Integer (default\: 0)': \
  '--pvr-amode:String (default\: )': \
  '--pvr-arate:Integer (default\: 0)': \
  '--pvr-aspect:Integer (default\: 0)': \
  '--pvr-fmt:String (default\: )': \
  '--pvr-vbitrate:Integer (default\: 0)': \
  '--pvr-vmode:String (default\: )': \
  '--pvr-vpeak:Integer (default\: 0)': \
  '--quiet:Flag (default\: no) [global]': \
  '--quvi-fetch-subtitles:Flag (default\: no)': \
  '--quvi-format:String (default\: )': \
  '--really-quiet:Flag [global]': \
  '--referrer:String (default\: )': \
  '--reset-on-next-file:String list (default\: ) [global]': \
  '--resume-playback:Flag (default\: yes)': \
  '--rtsp-transport:Choices\: lavf udp tcp http (default: tcp)': \
  '--saturation:Integer (-100 to 100) (default\: 1000)': \
  '--save-position-on-quit:Flag (default\: no)': \
  '--screen:Choices\: default (or an integer) (0 to 32) (default: default)': \
  '--screenshot-format:String (default\: jpg)': \
  '--screenshot-jpeg-baseline:Flag (default\: yes)': \
  '--screenshot-jpeg-dpi:Integer (1 to 99999) (default\: 72)': \
  '--screenshot-jpeg-optimize:Integer (0 to 100) (default\: 100)': \
  '--screenshot-jpeg-progressive:Flag (default\: no)': \
  '--screenshot-jpeg-quality:Integer (0 to 100) (default\: 90)': \
  '--screenshot-jpeg-smooth:Integer (0 to 100) (default\: 0)': \
  '--screenshot-png-compression:Integer (0 to 9) (default\: 7)': \
  '--screenshot-png-filter:Integer (0 to 5) (default\: 5)': \
  '--screenshot-template:String (default\: )': \
  '--secondary-sid:Choices\: no auto (or an integer) (1 to 8190) (default: no)': \
  '--show-profile:String (default\: ) [nocfg]': \
  '--shuffle:Flag (default\: no) [global] [nocfg]': \
  '--sid:Choices\: no auto (or an integer) (1 to 8190) (default: auto)': \
  '--slang:String list (default\: )': \
  '--slave-broken:Flag (default\: no) [global]': \
  '--softsleep:Flag (default\: no)': \
  '--softvol:Choices\: no yes auto (default: auto)': \
  '--softvol-max:Float (10 to 10000) (default\: 200.000000)': \
  '--speed:Double (0.01 to 100) (default\: 1.000000)': \
  '--sstep:Double (0 to any) (default\: 0.000000)': \
  '--start:Relative time or percent position': \
  '--stop-screensaver:Flag (default\: yes)': \
  '--stream-capture:String (default\: )': \
  '--stream-dump:String (default\: )': \
  '--stretch-dvd-subs:Flag (default\: no)': \
  '--sub-ass:Flag (default\: yes)': \
  '--sub-auto:Choices\: no exact fuzzy all (default: exact)': \
  '--sub-codepage:String (default\: enca)': \
  '--sub-delay:Float (default\: 0.000000)': \
  '--sub-demuxer:String (default\: )': \
  '--sub-file:String list (default\: )': \
  '--sub-fix-timing:Flag (default\: yes)': \
  '--sub-forced-only:Flag (default\: no)': \
  '--sub-fps:Float (default\: 0.000000)': \
  '--sub-gauss:Float (0 to 3) (default\: 0.000000)': \
  '--sub-gray:Flag (default\: no)': \
  '--sub-paths:String list (default\: )': \
  '--sub-pos:Integer (0 to 100) (default\: 100)': \
  '--sub-scale:Float (0 to 100) (default\: 1.000000)': \
  '--sub-scale-with-window:Flag (default\: no)': \
  '--sub-speed:Float (default\: 1.000000)': \
  '--sub-text-back-color:Color': \
  '--sub-text-blur:Float (0 to 20) (default\: 0.000000)': \
  '--sub-text-border-color:Color': \
  '--sub-text-border-size:Float (0 to 10) (default\: 2.500000)': \
  '--sub-text-color:Color': \
  '--sub-text-font:String (default\: sans-serif)': \
  '--sub-text-font-size:Float (1 to 9000) (default\: 45.000000)': \
  '--sub-text-margin-x:Integer (0 to 300) (default\: 25)': \
  '--sub-text-margin-y:Integer (0 to 600) (default\: 10)': \
  '--sub-text-shadow-color:Color': \
  '--sub-text-shadow-offset:Float (0 to 10) (default\: 0.000000)': \
  '--sub-text-spacing:Float (-10 to 10) (default\: 0.000000)': \
  '--sub-visibility:Flag (default\: yes)': \
  '--sws-cgb:Float (0 to 100) (default\: 0.000000)': \
  '--sws-chs:Integer (default\: 0)': \
  '--sws-cs:Float (-100 to 100) (default\: 0.000000)': \
  '--sws-cvs:Integer (default\: 0)': \
  '--sws-lgb:Float (0 to 100) (default\: 0.000000)': \
  '--sws-ls:Float (-100 to 100) (default\: 0.000000)': \
  '--sws-scaler:Choices\: fast-bilinear bilinear bicubic x point area bicublin gauss sinc lanczos spline (default: bicubic)': \
  '--term-osd:Choices\: force auto no (default: auto)': \
  '--term-osd-bar:Flag (default\: no)': \
  '--term-osd-bar-chars:String (default\: [-+-])': \
  '--term-playing-msg:String (default\: )': \
  '--term-status-msg:String (default\: )': \
  '--terminal:Flag (default\: yes) [global]': \
  '--title:String (default\: mpv - ${media-title})': \
  '--tls-ca-file:String (default\: )': \
  '--tls-verify:Flag (default\: no)': \
  '--tv-adevice:String (default\: )': \
  '--tv-alsa:Flag (default\: no)': \
  '--tv-amode:Integer (0 to 3) (default\: -1)': \
  '--tv-audio:Flag (default\: yes)': \
  '--tv-audioid:Integer (0 to 9) (default\: 0)': \
  '--tv-audiorate:Integer (default\: 44100)': \
  '--tv-automute:Integer (0 to 255) (default\: 0)': \
  '--tv-balance:Integer (0 to 65535) (default\: -1)': \
  '--tv-bass:Integer (0 to 65535) (default\: -1)': \
  '--tv-brightness:Integer (-100 to 100) (default\: 0)': \
  '--tv-buffersize:Integer (16 to 1024) (default\: -1)': \
  '--tv-chanlist:String (default\: europe-east)': \
  '--tv-channel:String (default\: )': \
  '--tv-channels:String list (default\: )': \
  '--tv-contrast:Integer (-100 to 100) (default\: 0)': \
  '--tv-decimation:Integer (1 to 4) (default\: 2)': \
  '--tv-device:String (default\: )': \
  '--tv-driver:String (default\: )': \
  '--tv-forceaudio:Flag (default\: no)': \
  '--tv-forcechan:Integer (1 to 2) (default\: -1)': \
  '--tv-fps:Float (default\: -1.000000)': \
  '--tv-freq:String (default\: )': \
  '--tv-gain:Integer (-1 to 100) (default\: -1)': \
  '--tv-height:Integer (0 to 4096) (default\: -1)': \
  '--tv-hue:Integer (-100 to 100) (default\: 0)': \
  '--tv-immediatemode:Flag (default\: yes)': \
  '--tv-input:Integer (default\: 0)': \
  '--tv-mjpeg:Flag (default\: no)': \
  '--tv-norm:String (default\: pal)': \
  '--tv-normid:Integer (default\: -1)': \
  '--tv-outfmt:FourCC': \
  '--tv-quality:Integer (0 to 100) (default\: 90)': \
  '--tv-saturation:Integer (-100 to 100) (default\: 0)': \
  '--tv-scan-autostart:Flag (default\: no)': \
  '--tv-scan-period:Float (0.1 to 2) (default\: 0.500000)': \
  '--tv-scan-threshold:Integer (1 to 100) (default\: 50)': \
  '--tv-treble:Integer (0 to 65535) (default\: -1)': \
  '--tv-volume:Integer (0 to 65535) (default\: -1)': \
  '--tv-width:Integer (0 to 4096) (default\: -1)': \
  '--untimed:Flag (default\: no)': \
  '--use-filedir-conf:Flag (default\: no) [global]': \
  '--user-agent:String (default\: mpv 0.4.0)': \
  '--v:Flag [global] [nocfg]': \
  '--V:Print [global] [nocfg]': \
  '--vd:String (default\: )': \
  '--vd-lavc-bitexact:Flag (default\: no)': \
  '--vd-lavc-check-hw-profile:Flag (default\: yes)': \
  '--vd-lavc-fast:Flag (default\: no)': \
  '--vd-lavc-o:String (default\: )': \
  '--vd-lavc-show-all:Flag (default\: no)': \
  '--vd-lavc-skipframe:Choices\: none default nonref bidir nonkey all (default: default)': \
  '--vd-lavc-skipidct:Choices\: none default nonref bidir nonkey all (default: default)': \
  '--vd-lavc-skiploopfilter:Choices\: none default nonref bidir nonkey all (default: default)': \
  '--vd-lavc-threads:Integer (0 to 16) (default\: 0)': \
  '--version:Print [global] [nocfg]': \
  '--vf:Object settings list (default\: ):->vf': \
  '--vf-defaults:Object settings list (default\: )': \
  '--vid:Choices\: no auto (or an integer) (1 to 8190) (default: auto)': \
  '--video-align-x:Float (-1 to 1) (default\: 0.000000)': \
  '--video-align-y:Float (-1 to 1) (default\: 0.000000)': \
  '--video-aspect:Float (-1 to 10) (default\: -1.000000)': \
  '--video-pan-x:Float (-3 to 3) (default\: 0.000000)': \
  '--video-pan-y:Float (-3 to 3) (default\: 0.000000)': \
  '--video-rotate:Choices\: no (or an integer) (0 to 359) (default: 0)': \
  '--video-unscaled:Flag (default\: no)': \
  '--video-zoom:Float (-20 to 20) (default\: 0.000000)': \
  '--vo:Object settings list (default\: ):->vo': \
  '--vo-defaults:Object settings list (default\: )': \
  '--volstep:Integer (0 to 100) (default\: 3)': \
  '--volume:Float (-1 to 100) (default\: -1.000000)': \
  '--volume-restore-data:String (default\: )': \
  '--wid:Integer64 (default\: -1) [global]': \
  '--window-dragging:Flag (default\: yes) [global]': \
  '--write-filename-in-watch-later-:Flag (default\: no)': \
  '--x11-name:String (default\: )': \
  '--x11-netwm:Flag (default\: yes)': \
  '--{:Flag [nocfg]': \
  '--}:Flag [nocfg]': \
  '*:files:->mfiles'

case $state in
  ao)
    local -a values
    values=(
      'pulse:PulseAudio audio output' \
      'alsa:ALSA-0.9.x-1.x audio output' \
      'oss:OSS/ioctl audio output' \
      'jack:JACK audio output' \
      'sdl:SDL Audio' \
      'null:Null audio output' \
      'pcm:RAW PCM/WAVE file writer audio output' \
    )

    _describe -t values 'audio outputs' values
  ;;

  vo)
    local -a values
    values=(
      'vdpau:VDPAU with X11' \
      'opengl:Extended OpenGL Renderer' \
      'xv:X11/Xv' \
      'sdl:SDL 2.0 Renderer' \
      'opengl-old:OpenGL (legacy VO, may work better on older GPUs)' \
      'vaapi:VA API with X11' \
      'x11:X11 ( XImage/Shm )' \
      'null:Null video output' \
      'image:Write video frames to image files' \
      'opengl-hq:Extended OpenGL Renderer (high quality rendering preset)' \
      'wayland:Wayland SHM video output' \
    )

    _describe -t values 'video outputs' values
  ;;

  af)
    local -a values
    values=(
      'dummy:dummy' \
      'delay:Delay audio filter' \
      'channels:Insert or remove channels' \
      'format:Force audio format' \
      'volume:Volume control audio filter' \
      'equalizer:Equalizer audio filter' \
      'pan:Panning audio filter' \
      'surround:Surround decoder filter' \
      'sub:Audio filter for adding a sub-base channel' \
      'export:Sound export filter' \
      'drc:Dynamic range compression filter' \
      'extrastereo:Increase difference between audio channels' \
      'lavcac3enc:runtime encode to ac3 using libavcodec' \
      'lavrresample:Sample frequency conversion using libavresample' \
      'sweep:sine sweep' \
      'hrtf:HRTF Headphone' \
      'ladspa:LADSPA plugin loader' \
      'center:Audio filter for adding a center channel' \
      'sinesuppress:Sine Suppress' \
      'karaoke:Simple karaoke/voice-removal audio filter' \
      'scaletempo:Scale audio tempo while maintaining pitch' \
      'bs2b:Bauer stereophonic-to-binaural audio filter' \
      'lavfi:libavfilter bridge' \
      'convert24:Convert between 24 and 32 bit sample format' \
      'convertsignendian:Convert between sample format sign/endian' \
    )

    _describe -t values 'audio filters' values
  ;;

  vf)
    local -a values
    values=(
      'crop:cropping' \
      'expand:expanding' \
      'scale:software scaling' \
      'format:force output format' \
      'noformat:disallow one output format' \
      'flip:flip image upside-down' \
      'rotate:rotate' \
      'mirror:horizontal mirror' \
      'lavfi:libavfilter bridge' \
      'screenshot:screenshot to file' \
      'noise:noise generator' \
      'eq:Software equalizer' \
      'gradfun:gradient deband' \
      'unsharp:unsharp mask & gaussian blur' \
      'swapuv:UV swapper' \
      'hqdn3d:High Quality 3D Denoiser' \
      'ilpack:4\:2:0 planar -> 4:2:2 packed reinterlacer' \
      'dsize:reset displaysize/aspect' \
      'softpulldown:mpeg2 soft 3\:2 pulldown' \
      'pullup:pullup (from field sequence to frames)' \
      'delogo:simple logo remover' \
      'phase:phase shift fields' \
      'divtc:inverse telecine for deinterlaced video' \
      'sub:Render subtitles' \
      'yadif:Yet Another DeInterlacing Filter' \
      'stereo3d:stereoscopic 3d view' \
      'dlopen:Dynamic library filter' \
      'vavpp:VA-API Video Post-Process Filter' \
      'vdpaupp:vdpau postprocessing' \
    )

    _describe -t values 'video filters' values
  ;;

  mfiles)
    _tags files urls
    while _tags; do
      _requested files expl 'media file' _files -g \
         "*.(#i)(asf|asx|avi|flac|flv|m1v|m2p|m2v|m4v|mjpg|mka|mkv|mov|mp3|mp4|mpe|mpeg|mpg|ogg|ogm|ogv|qt|rm|ts|vob|wav|webm|wma|wmv)(-.)" && ret=0
      if _requested urls; then
        while _next_label urls expl URL; do
          _urls "$expl[@]" && ret=0
          compadd -S '' "$expl[@]" {dvd,vcd,cdda,cddb,tv}:// && ret=0
        done
      fi
      (( ret )) || return 0
    done
  ;;
esac
