win10 mpv设置最小化快捷键
win10 mpv 设置窗口最小化快捷键
我接下来的配置只在win10下测试过,其他操作系统可能不生效。
mpv默认的快捷键配置里面没有窗口最小化的快捷键。
在potplayer中ESC键默认就是最小化并且停止播放的作用。而在mpv中ESC是退出全屏的作用,f键是切换全屏,所以这两个的功能就重复了。
修改ESC快捷键为最小化,使表现和potplayer一样。
input.conf和mpv.conf一样,放在mpv安装目录下的portable_config文件夹下面,lua脚本再创建一个scripts文件夹,放在里面即可。
需要在input.conf中加入这么一行
# 设置ESC为最小化快捷键
# ESC cycle window-minimized
ESC set window-minimized yes
这样按下ESC就会最小化,然后你用鼠标点击任务栏的图标就能恢复原来的大小。
但是只是最小化,似乎mpv的配置文件中不能给一个按键配置多个操作。所以很多操作都需要通过外置脚本来实现。
这里我们需要一个pause-when-minimize.lua
的脚本,可以直接去下面的网址下载,也可以把我下面的代码保存为utf8编码的lua文件即可。这样就可以支持最小化时暂停,点击任务栏恢复的时候继续播放。
https://raw.githubusercontent.com/mpv-player/mpv/master/TOOLS/lua/pause-when-minimize.lua
-- This script pauses playback when minimizing the window, and resumes playback
-- if it's brought back again. If the player was already paused when minimizing,
-- then try not to mess with the pause state.
local did_minimize = false
mp.observe_property("window-minimized", "bool", function(name, value)
local pause = mp.get_property_native("pause")
if value == true then
if pause == false then
mp.set_property_native("pause", true)
did_minimize = true
end
elseif value == false then
if did_minimize and (pause == true) then
mp.set_property_native("pause", false)
end
did_minimize = false
end
end)
相对于potplayer,mpv的默认操作更简洁,但是也导致了很多常用的功能需要通过外置脚本来实现。
除了这个最小化,最近还发现一个不算是太大的问题的差异。
mpv在全屏模式下使用ALT+0之类调节窗口大小的快捷键不会生效,只有在退出全屏后才生效。
而在potplayer的默认操作里面,全屏之后也可以用快捷键调节窗口大小。