-
Notifications
You must be signed in to change notification settings - Fork 0
/
input.conf
276 lines (246 loc) · 9.91 KB
/
input.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
# 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
# encode mapping
Ctrl+k script-binding set-timestamp
# Toggles info/progress overlay.
Ctrl+t script-binding webtorrent/toggle-info
ctrl+alt+K script-binding mpv_open_kinopoisk_page
### zones.lua # LMB
## volume
# "top-middle: add volume +5"
# "bottom-middle: add volume -5"
## contrast
# "top-left: add contrast +10"
# "bottom-left: add contrast -10"
## seek
# "middle-left: seek -10"
# "middle-right: seek +10"
## play/pause
# "middle-middle: cycle pause"
## toggle dynamic normalization
# "top-right: script-binding toggle-drcbox"
# "bottom-right: script-binding skip-to-silence"
# =>
MBTN_LEFT script_message_to zones commands "top-middle: add volume +5" "bottom-middle: add volume -5" "top-left: add contrast +10" "bottom-left: add contrast -10" "middle-left: seek -10" "middle-right: seek +10" "middle-middle: cycle pause" "top-right: script-binding toggle-drcbox" "bottom-right: script-binding skip-to-silence"
# MBTN_LEFT cycle pause
# MBTN_LEFT_DBL cycle fullscreen # toggle fullscreen on/off
MBTN_RIGHT cycle fullscreen
MBTN_MID cycle mute
#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 +10
LEFT seek -10
i seek +10
h seek -10
Shift+RIGHT seek +60
Shift+LEFT seek -60
Shift+i seek +60
Shift+h seek -60
Shift+Alt+RIGHT seek +300
Shift+Alt+LEFT seek -300
Shift+Alt+i seek +300
Shift+Alt+h seek -300
Shift+Ctrl+RIGHT seek +600
Shift+Ctrl+LEFT seek -600
Shift+Ctrl+i seek +600
Shift+Ctrl+h seek -600
# Do smaller, always exact (non-keyframe-limited)
# Don't show them on the OSD (no-osd).
Alt+RIGHT no-osd seek +2 exact
Alt+LEFT no-osd seek -2 exact
Alt+i no-osd seek +2 exact
Alt+h no-osd seek -2 exact
Ctrl+RIGHT no-osd seek +5 exact
Ctrl+LEFT no-osd seek -5 exact
Ctrl+i no-osd seek +5 exact
Ctrl+h no-osd seek -5 exact
UP add volume +5
DOWN add volume -5
e add volume +5
n add volume -5
# move subtitles up/down
Alt+UP add sub-pos -1
Alt+DOWN add sub-pos +1
Alt+Ctrl+UP add sub-scale +1
Alt+Ctrl+DOWN add sub-scale -1
# Skip to previous/next subtitle (subject to some restrictions; see manpage)
Alt+Ctrl+LEFT no-osd sub-seek -1
Alt+Ctrl+RIGHT no-osd sub-seek 1
Alt+Ctrl+h no-osd sub-seek -1
Alt+Ctrl+i no-osd sub-seek 1
MBTN_BACK no-osd sub-seek -1
MBTN_FORWARD 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
[ add speed -0.1
] add speed +0.1
{ add speed -0.5
} add speed +0.5
BS set speed 1.0 # reset speed to normal
\ cycle-values speed 1.5 2.0
#Shift+BS revert-seek # undo previous (or marked) seek
#Shift+Ctrl+BS revert-seek mark # mark position for revert-seek
q quit 4 # quit & return signal -> to use like explicit exit for scripts
Q quit-watch-later
#q {encode} quit 4
ESC set fullscreen no
. frame-step # advance one frame and pause
, frame-back-step # go back by one frame and pause
alt+. no-osd seek +.1 exact
alt+, no-osd seek -.1 exact
ctrl+. no-osd seek +.5 exact
ctrl+, no-osd seek -.5 exact
SPACE cycle pause
> playlist-next # skip to next file
< playlist-prev # skip to previous file
; no-osd cycle-values osd-level 3 1 # cycle through OSD mode
y script-binding stats/display-stats-toggle
Ctrl+V cycle-values volume 45 85 100
Z cycle video-unscaled
z add sub-delay -0.1 # subtract 100 ms delay from subs
x add sub-delay +0.1 # same as previous binding (discouraged)
= add audio-delay 0.100 # this changes audio/video sync
- add audio-delay -0.100
+ set audio-delay 0
m cycle mute
1 add contrast -10
2 add contrast +10
3 add brightness -10
4 add brightness +10
5 add gamma -10
6 add gamma +10
7 add saturation -10
8 add saturation +10
Alt+1 add contrast -1
Alt+2 add contrast +1
Alt+3 add brightness -1
Alt+4 add brightness +1
Alt+5 add gamma -1
Alt+6 add gamma +1
Alt+7 add saturation -1
Alt+8 add saturation +1
Ctrl+1 no-osd add contrast +10; add gamma -10
Ctrl+2 no-osd add contrast -10; add gamma +10
#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
Shift+Alt+Ctrl+RIGHT no-osd cycle-values video-rotate "90" "180" "270" "0" # Rotate by 90 degrees clockwise
Shift+Alt+Ctrl+LEFT no-osd cycle-values video-rotate "270" "180" "90" "0" # Rotate by 90 degrees counterclockwise
#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
V script-binding cycle-visualizer
# 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
O cycle-values sub-ass-override "force" "no"
ctrl+b script-binding download_subs
ctrl+B script-binding download_subs2
s cycle sub # cycle through subtitles
#J cycle sub down # ...backwards
a cycle audio # switch audio streams
#_ cycle video
T script-binding generate-thumbnails # for mpv_thumbnail_script
t cycle ontop # toggle video window ontop of other windows
f cycle fullscreen # toggle fullscreen
Ctrl+s async screenshot # take a screenshot
Ctrl+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
# dynamic range compression | but i prefer drcbox.lua ctrl+N
# c cycle-values af "" "lavfi=[dynaudnorm=f=8000:g=5:r=0.0]" "lavfi=[alimiter=level_in=10:level_out=0.3:limit=1:attack=5:release=8000]"
# convert source audio 5.1 to 3.1
S af toggle "lavfi=[pan=5.1|FC=FC|FL=FL+0.5*FC+0.7*SL|FR=FR+0.5*FC+0.7*SR|LFE=0.5*LFE]"
# convert source to simple stereo (not always works (on specific sources))
alt+S af toggle "lavfi=[pan=stereo|c0=FL|c1=FR]"
# convert source audio to Mono
M cycle_values options/audio-channels mono stereo auto-safe
alt+M af toggle "lavfi=[pan=1c|c0=0.5*c0+0.5*c1]"
# partial audio pan change (left, right)
9 af toggle "lavfi=[pan=stereo|c0=0.7*c0|c1=0.3*c1]"
0 af toggle "lavfi=[pan=stereo|c1=0.7*c1|c0=0.3*c0]"
# full audio pan change (left, right)
alt+9 cycle_values options/audio-channels fl stereo
alt+0 cycle_values options/audio-channels fr stereo
( script-binding balance-to-left
) script-binding balance-to-right
* script-binding balance-reset
#E cycle edition # next edition
' ab-loop # Set/clear A-B loop points
r playlist-unshuffle
R playlist-shuffle
L cycle-values loop-file "inf" "no" # toggle infinite file looping
alt+L cycle-values loop "inf" "no" # toggle infinite playlist looping
l script-message osc-visibility always
u script-message osc-visibility auto
o script-message osc-visibility never
# c script-message osc-visibility cycle # cycle OSC display
D cycle-values hwdec "auto" "no" # cycle hardware decoding
F3 script-binding toggle_skip_to_silence
F7 show-text "[${playlist-pos-1}/${playlist-count}] [${duration}] ${media-title}" 2000
F8 show_text "${playlist}" 2000 # show playlist
F9 show_text ${track-list} # show list of audio/sub streams