# mpv keybindings # # Location of user-defined bindings: ~/.config/mpv/input.conf # # Lines starting with # are comments. Use SHARP to assign the # key. # Copy this file and uncomment and edit the bindings you want to change. # # List of commands and further details: DOCS/man/input.rst # List of special keys: --input-keylist # Keybindings testing mode: mpv --input-test --force-window --idle # # Use 'ignore' to unbind a key fully (e.g. 'ctrl+a ignore'). # # Strings need to be quoted and escaped: # KEY show-text "This is a single backslash: \\ and a quote: \" !" # # You can use modifier-key combinations like Shift+Left or Ctrl+Alt+x with # the modifiers Shift, Ctrl, Alt and Meta (may not work on the terminal). # # The default keybindings are hardcoded into the mpv binary. # You can disable them completely with: --no-input-default-bindings # Developer note: # On compilation, this file is baked into the mpv binary, and all lines are # uncommented (unless '#' is followed by a space) - thus this file defines the # default key bindings. # If this is enabled, treat all the following bindings as default. #default-bindings start #MOUSE_BTN0 ignore # don't do anything #MOUSE_BTN0_DBL cycle fullscreen # toggle fullscreen on/off #MOUSE_BTN2 cycle pause # toggle pause on/off #MOUSE_BTN3 seek 10 #MOUSE_BTN4 seek -10 #MOUSE_BTN5 add volume -2 #MOUSE_BTN6 add volume 2 # Mouse wheels, touchpad or other input devices that have axes # if the input devices supports precise scrolling it will also scale the # numeric value accordingly #AXIS_UP seek 10 #AXIS_DOWN seek -10 #AXIS_LEFT seek 5 #AXIS_RIGHT seek -5 ## Seek units are in seconds, but note that these are limited by keyframes #RIGHT seek 5 #LEFT seek -5 #UP seek 60 #DOWN seek -60 # Do smaller, always exact (non-keyframe-limited), seeks with shift. # Don't show them on the OSD (no-osd). #Shift+RIGHT no-osd seek 1 exact #Shift+LEFT no-osd seek -1 exact #Shift+UP no-osd seek 5 exact #Shift+DOWN no-osd seek -5 exact # Skip to previous/next subtitle (subject to some restrictions; see manpage) #Ctrl+LEFT no-osd sub-seek -1 #Ctrl+RIGHT no-osd sub-seek 1 #PGUP add chapter 1 # skip to next chapter #PGDWN add chapter -1 # skip to previous chapter #Shift+PGUP seek 600 #Shift+PGDWN seek -600 #[ multiply speed 0.9091 # scale playback speed #] multiply speed 1.1 #{ multiply speed 0.5 #} multiply speed 2.0 #BS set speed 1.0 # reset speed to normal #q quit #Q quit-watch-later #q {encode} quit 4 #ESC set fullscreen no #ESC {encode} quit 4 #p cycle pause # toggle pause/playback mode #. frame-step # advance one frame and pause #, frame-back-step # go back by one frame and pause #SPACE cycle pause #> playlist-next # skip to next file #ENTER playlist-next # skip to next file #< playlist-prev # skip to previous file #O no-osd cycle-values osd-level 3 1 # cycle through OSD mode #o show-progress #P show-progress #I show-text "${filename}" # display filename in osd #z add sub-delay -0.1 # subtract 100 ms delay from subs #x add sub-delay +0.1 # add #ctrl++ add audio-delay 0.100 # this changes audio/video sync #ctrl+- add audio-delay -0.100 #9 add volume -2 #/ add volume -2 #0 add volume 2 #* add volume 2 #m cycle mute #1 add contrast -1 #2 add contrast 1 #3 add brightness -1 #4 add brightness 1 #5 add gamma -1 #6 add gamma 1 #7 add saturation -1 #8 add saturation 1 #Alt+0 set window-scale 0.5 #Alt+1 set window-scale 1.0 #Alt+2 set window-scale 2.0 # toggle deinterlacer (automatically inserts or removes required filter) #d cycle deinterlace #r add sub-pos -1 # move subtitles up #t add sub-pos +1 # down #v cycle sub-visibility # stretch SSA/ASS subtitles with anamorphic videos to match historical #V cycle sub-ass-vsfilter-aspect-compat # switch between applying no style overrides to SSA/ASS subtitles, and # overriding them almost completely with the normal subtitle style #u cycle-values sub-ass-style-override "force" "no" #j cycle sub # cycle through subtitles #J cycle sub down # ...backwards #SHARP cycle audio # switch audio streams #_ cycle video #T cycle ontop # toggle video window ontop of other windows #f cycle fullscreen # toggle fullscreen #s screenshot # take a screenshot #S screenshot video # ...without subtitles #Ctrl+s screenshot window # ...with subtitles and OSD, and scaled #Alt+s screenshot each-frame # automatically screenshot every frame #w add panscan -0.1 # zoom out with -panscan 0 -fs #e add panscan +0.1 # in # cycle video aspect ratios; "-1" is the container aspect #A cycle-values video-aspect "16:9" "4:3" "2.35:1" "-1" #POWER quit #PLAY cycle pause #PAUSE cycle pause #PLAYPAUSE cycle pause #STOP quit #FORWARD seek 60 #REWIND seek -60 #NEXT playlist-next #PREV playlist-prev #VOLUME_UP add volume 2 #VOLUME_DOWN add volume -2 #MUTE cycle mute #CLOSE_WIN quit #CLOSE_WIN {encode} quit 4 #E cycle edition # next edition #l ab-loop # Set/clear A-B loop points #L cycle-values loop "inf" "no" # toggle infinite looping #ctrl+c quit 4 # Apple Remote section #AR_PLAY cycle pause #AR_PLAY_HOLD quit #AR_CENTER cycle pause #AR_CENTER_HOLD quit #AR_NEXT seek 10 #AR_NEXT_HOLD seek 120 #AR_PREV seek -10 #AR_PREV_HOLD seek -120 #AR_MENU show-progress #AR_MENU_HOLD cycle mute #AR_VUP add volume 2 #AR_VUP_HOLD add chapter 1 #AR_VDOWN add volume -2 #AR_VDOWN_HOLD add chapter -1 # For tv:// #h cycle tv-channel -1 # previous channel #k cycle tv-channel +1 # next channel # For dvb:// #H cycle dvb-channel-name -1 # previous channel #K cycle dvb-channel-name +1 # next channel # # Legacy bindings (may or may not be removed in the future) # #! add chapter -1 # skip to previous chapter #@ add chapter 1 # next # # Not assigned by default # (not an exhaustive list of unbound commands) # B add sub-scale +0.1 # increase subtitle font size b add sub-scale -0.1 # decrease subtitle font size # ? sub-step -1 # immediately display next subtitle # ? sub-step +1 # previous # ? cycle angle # switch DVD/Bluray angle # ? add balance -0.1 # adjust audio balance in favor of left # ? add balance 0.1 # right # ? cycle sub-forced-only # toggle DVD forced subs # ? cycle program # cycle transport stream programs # ? stop # stop playback (quit or enter idle mode) l seek 5 h seek -5 j seek -60 k seek 60 Shift+l no-osd seek 1 exact Shift+h no-osd seek -1 exact Shift+k no-osd seek 5 exact Shift+j no-osd seek -5 exact Ctrl+h no-osd sub-seek -1 Ctrl+l no-osd sub-seek 1 Alt+j cycle sub Alt+J cycle sub down Alt+l ab-loop # Set/clear A-B loop points Alt+L cycle-values loop "inf" "no" # toggle infinite looping i show-text "${media-title}" I show-text "${filename}" # display filename in osd c show-text "${chapter-list}" M show-text "${metadata}" p show-text "${video-params}"