Control Netflix video playback using keyboard shortcuts
This script lets you control video playback, language, subtitles and more on Netflix with keyboard shortcuts.
A few are inspired by the YouTube shortcuts, and provide consistency with that player (like j
/k
/l
for example).
All the key bindings are documented here and in the script, and are easy to change.
This script is now a free Chrome extension
This script was converted to a full Chrome extension, available for free here: https://chrome.google.com/webstore/detail/netflix-keyboard-shortcut/mjpponglbellandpimdbmmhbhmakcgji
Going forward this script will still be available but will no longer be maintained; only the Netflix Keyboard Shortcuts extension will receive updates. Both will remain free forever.
Key bindings
All key bindings are configurable. By default, the following shortcuts are used:
k
switches between playing and paused
l
moves ahead by 10 seconds
j
moves back by 10 seconds
N
goes to the very end of the video (as in “next episode”)
,
when paused: moves back by one frame
.
when paused: moves ahead by one frame
>
makes the video play faster
<
makes the video play more slowly
c
switches subtitles on or off (you can also configure which language to select automatically the first time you switch them on)
s
changes the size of subtitles (Netflix provides 3 sizes, so it cycles between small/medium/large)
v
changes the subtitles track, moving to the next one in the list
a
changes the audio track, moving to the next one in the list
p
turns “picture-in-picture” mode on or off
m
is already set to mute/unmute by Netflix, but you can configure the script to also let you use a different key
Page Up
increases the audio volume by 5% – unfortunately we can’t use Up Arrow
here since Netflix catches the key press event for it.
Page Down
decreases the audio volume by 5% – unfortunately we can’t use Down Arrow
here either.
0
to 9
jump to 0% of the video (the start) to 90% in 10% increments (so pressing 5
jumps to 50%, etc.)
d
enables or disables Netflix’s diagnostics panel, similar to YouTube’s “stats for nerds” option.
Pre-configured time skips:
l
moves ahead by 10 seconds
j
moves back by 10 seconds
L
moves ahead by 60 seconds (capital L
as opposed to lowercase l
listed above)
J
moves back by 60 seconds
]
moves ahead by 5 seconds
[
moves back by 5 seconds
Other configuration
- Change by how many seconds
l
, j
, and others jump forward or back by updating the values in TIME_SCRUB_KEYS
(10 seconds by default).
- Configure any single key to go forward or back by any number of seconds simply by adding a new entry in
TIME_SCRUB_KEYS
.
- Change by how much the volume changes when you press
Up Arrow
or Down Arrow
(5% by default) with VOLUME_DELTA
.
- Change which language to use for subtitles the first time you press
c
(English by default) with DEFAULT_SUBTITLES_LANGUAGE
. If you select a different language with v
, pressing c
again will switch between “Off” and that new language.
- The caret keys
<
and >
let you slow down on speed up playback. Change PLAYBACK_SPEED_INCREMENTS
to use different playback speeds; by default it covers the following steps: 0.5x
, 0.75x
, 0.9x
, 1x
, 1.1x
, 1.25x
, 1.5x
, 2.0x
, 2.5x
.
- Some actions cause text to be displayed briefly on the screen to provide user feedback. The constants ending with
_SHOW
control whether to display this text for various actions (e.g. PLAY_PAUSE_SHOW
, PLAYBACK_SPEED_CHANGE_SHOW
, etc.)
The script also has a debug mode, disabled by default. Enabling it provides debug information for anyone trying to modify it.