# 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 #MBTN_LEFT ignore # don't do anything #MBTN_LEFT_DBL cycle fullscreen # toggle fullscreen on/off #MBTN_RIGHT cycle pause # toggle pause on/off # 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 #WHEEL_UP seek 10 #WHEEL_DOWN seek -10 #WHEEL_LEFT add volume -2 #WHEEL_RIGHT add volume 2 ## 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 # Adjust timing to previous/next subtitle #Ctrl+Shift+LEFT sub-step -1 #Ctrl+Shift+RIGHT sub-step 1 # Move video rectangle #Alt+left add video-pan-x 0.1 #Alt+right add video-pan-x -0.1 #Alt+up add video-pan-y 0.1 #Alt+down add video-pan-y -0.1 # Zoom/unzoom video #Alt++ add video-zoom 0.1 #Alt+- add video-zoom -0.1 # Reset video zoom/pan settings #Alt+BS set video-zoom 0 ; set video-pan-x 0 ; set video-pan-y 0 #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 1/1.1 # scale playback speed #] multiply speed 1.1 #{ multiply speed 0.5 #} multiply speed 2.0 #BS set speed 1.0 # reset speed to normal #Shift+BS revert-seek # undo previous (or marked) seek #Shift+Ctrl+BS revert-seek mark # mark position for revert-seek #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 script-binding stats/display-stats #I script-binding stats/display-stats-toggle #z add sub-delay -0.1 # subtract 100 ms delay from subs #Z add sub-delay +0.1 # add #x add sub-delay +0.1 # same as previous binding (discouraged) #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 #R add sub-pos +1 # down #t add sub-pos +1 # same as previous binding (discouraged) #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-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 async screenshot # take a screenshot #S async screenshot video # ...without subtitles #Ctrl+s async 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 #W add panscan +0.1 # in #e add panscan +0.1 # same as previous binding (discouraged) # 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-file "inf" "no" # toggle infinite looping #ctrl+c quit 4 #DEL script-binding osc/visibility # cycle OSC display #ctrl+h cycle-values hwdec "auto" "no" # cycle hardware decoding #F8 show_text ${playlist} # show playlist #F9 show_text ${track-list} # show list of audio/sub streams # 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 # # 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) # # ? add sub-scale +0.1 # increase subtitle font size # ? add sub-scale -0.1 # decrease subtitle font size # ? cycle angle # switch DVD/Bluray angle # ? cycle sub-forced-only # toggle DVD forced subs # ? cycle program # cycle transport stream programs # ? stop # stop playback (quit or enter idle mode)