# 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 1 #MOUSE_BTN6 add volume -1 # 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 #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 #ESC quit #ESC {encode} quit #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 force # skip to next file or quit #< playlist_prev # skip to previous file #O osd # 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 -1 #/ add volume -1 #0 add volume 1 #* add volume 1 #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 #d cycle framedrop # cycle through framedrop modes # 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 ass-vsfilter-aspect-compat #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 #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 #POWER quit #MENU cycle osd #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 1 #VOLUME_DOWN add volume -1 #MUTE cycle mute #CLOSE_WIN quit #CLOSE_WIN {encode} quit #E cycle edition # next edition # 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 1 #AR_VUP_HOLD add chapter 1 #AR_VDOWN add volume -1 #AR_VDOWN_HOLD add chapter -1 # Joystick section # WARNING: joystick support has to be explicitly enabled at # compiletime with --enable-joystick # #JOY_AXIS0_PLUS seek 10 #JOY_AXIS0_MINUS seek -10 #JOY_AXIS1_MINUS seek 60 #JOY_AXIS1_PLUS seek -60 #JOY_BTN0 cycle pause #JOY_BTN1 cycle osd #JOY_BTN2 add volume 1 #JOY_BTN3 add volume -1 # For dvdnav:// and bdnav:// # navigation controls during playback #ENTER {discnav} discnav menu # DISCNAV MENU # BS {discnav} discnav prev # DISCNAV PREVIOUS menu (in the order chapter->title->root) # navigation controls when showing menu (additionally to the controls above) #UP {discnav-menu} discnav up # DISCNAV UP #DOWN {discnav-menu} discnav down # DISCNAV DOWN #LEFT {discnav-menu} discnav left # DISCNAV LEFT #RIGHT {discnav-menu} discnav right # DISCNAV RIGHT #ENTER {discnav-menu} discnav select # DISCNAV SELECT (ok) #MOUSE_BTN0 {discnav-menu} discnav mouse #MOUSE_MOVE {discnav-menu} discnav mouse_move # For tv:// #h cycle tv-channel -1 # previous channel #k cycle tv-channel +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) # # ? add sub-scale +0.1 # increase subtitle font size # ? add sub-scale -0.1 # decrease subtitle font size # ? sub_step -1 # immediately display next subtitle # ? sub_step +1 # previous # ? cycle_values window-scale 0.5 2 1 # switch between 1/2, 2x, unresized window size # ? cycle colormatrix # ? add audio-delay 0.100 # this changes audio/video sync # ? add audio-delay -0.100 # ? 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) # ? cycle quvi-format 1 # cycle streaming video quality (semi-broken) # ? cycle quvi-format -1