站点图标 姿势小王子

mpv——开源简约却强大的视频播放器,windows端配置

对于视频播放器,懒得折腾的可以使用vlc,potplayer等等。如果喜欢使用mpv这类开源播放器,但是也懒的折腾,也可以去使用懒人版,大佬做了很多修改,可能会比较符合一些人的使用习惯。

或者根据自己的喜欢折腾一个。

1、下载mpv及一些依赖:

1.1、mpv官方没有已经编译好的版本,都是别人编译好的,下载:https://mpv.io/installation/

如果想集成到右键菜单,点击视频播放就可以选择mpv就需要管理员运行mpv-install.bat。

1.2、tcl,如果想要右键菜单,就需要,一些已经编译好的版本可能会少依赖,导致中文乱码,所以自己也是从懒人包里拿来用的。tclsh.exe: http://download.zsxwz.com/f/16220046-647672303-3e4473?p=zsxwz (访问密码: zsxwz)

1.3、ffmpeg生成缩略图等等功能可能需要,mpv生成的速度可能比较慢,下载之后一样放到环境变量文件夹:https://ffmpeg.org/download.html

1.4、yt-dlp或者youtubel-dl一些插件可能有需要,可以自己安装python之后pip安装,或者下载已经编译好的版本放到系统文件夹。https://github.com/yt-dlp/yt-dlp/releases

环境变量添加,右键此电脑——属性——高级系统设置——环境变量——path,新建一个地址比如:D:\bin\mpv,把mpv.exe,yt-dlp.exe,ffmpeg.exe等等放在这个文件夹就好了。

2、文件目录。

Windows系统中,默认情况下,mpv会加载存放在%APPDATA%\mpv\mpv.conf的配置文件。而当mpv.exe所在的目录下存在名为portable_config的文件夹时,所有的配置文件将从portable_config中加载。

mpv.conf 用户配置文件
input.conf 键盘快捷键
fonts.conf 字体配置文件
fonts 存放字幕需要使用的字体
scrpits 存放用户外挂脚本插件
scrpit-opts 存放外置脚本插件配置文件

3、插件,原生的mpv实在是太简陋了,好在支持各种视频,音频,字幕等等插件。

自己用的几个插件:

插件和插件配置文件就在上文提到的文件夹,就不多说了,觉得麻烦可以在mpv.exe相同文件夹现金一个portable_config文件夹,把各种配置文件,脚本放这个文件夹即可。

3.1、mpv_thumbnail_script.lua:osc上显示缩略图插件,需要fmpeg支持。

下载两个插件:mpv_thumbnail_script_client_osc.lua,mpv_thumbnail_script_server.lua

新建一个配置文件:mpv_thumbnail_script.conf,自己根据自己需求修改一下缩略图保存目录,是否使用ffmpeg等等:https://github.com/marzzzello/mpv_thumbnail_script#configuration

3.2、playlist-view,文件列表预览,也同样需要ffmpeg。

下载github项目上的所有文件,移动到portable_config文件夹就可以了。默认按g,文件列表预览,按c,视频缩略图预览。然后修改配置文件contact_sheet.conf,gallery_worker.conf,修改一下缓存目录,和是否使用ffmpeg生成缩略图。

3.3、osc-style:视频控制,进度条等等简版显示的控制台,一些魔改版可能和缩略图插件冲突,这个是根据官方的该的,兼容性稍微好点。

下载osc-default-blue-box-bar-or-knob-45.lua或者其他几个插件,重命名osc.lua,放到脚本文件夹即可,然后在脚本配置文件夹,新建一个osc.conf配置文件:

layout=bottombar #box或者bottombar,osc样式
seekbarstyle=knob #bar或者knob,进度条样式,
boxalpha=45 #20-600之间,osc透明度范围

3.4、contextmenu_gui:右键菜单脚本。

这个稍微比较麻烦,需要tcl支持,上面下载好之后放到环境变量文件夹。

下载脚本群组的文件夹到mpv的设置文件夹,即 contextmenu_gui 文件夹位于 scripts 内:https://github.com/hooke007/MPV_lazy/tree/main/portable_config/scripts/contextmenu_gui

两个脚本配置文件,contextmenu_gui_engine.conf 该文件设定菜单所用的默认字体,其中,必须保证 tcltkBin 指向你实际下载使用的tcl/tk二进制文件 默认值为 tclsh

contextmenu_gui.conf 提供了可自定义的空档位滤镜/着色器各十个,可以根据示例和说明进行适配你的本机修改。

编辑input.conf键盘快捷键配置,添加:

#右键唤起菜单,也可以根据自己的喜好换成别的按键。
MOUSE_BTN2 script-message-to contextmenu_gui contextmenu_tk

两个外挂脚本,load_plus.lua,调用系统资源管理器打开文件的插件。

playlistmanager.lua,视频文件列表插件。这个和上面的playlist-view有点冲突了,自己是修改了一下脚本,调用了playlist-view做文件列表预览,你也可以修改contextmenu_gui\main.lua脚本,如果需要添加或者删除菜单也是修改这个脚本。

自己修改了二级菜单——导航,播放列表为调用playlist-view-toggle:

{COMMAND, "播放列表", "", "script-binding playlist-view-toggle", "", false},

3.5、其他一些插件。

visualizer:音频可视化插件。

ontop-playback:赞同取消置顶插件

mpv-peerflix-hookwebtorrent-hook,两个磁力链接hook相关插件。

ytdl-preload:在线视频预加载插件,需要yt-dlp支持。

autosub.lua:自动加载字幕插件。

autoload.lua:动加载当前播放文件目录里的视频文件到播放列表,也就是自动连播和load_plus.lua冲突。

更多插件可以自己去插件列表找。

4、个人配置。仅供参考,有些配置是个人习惯,看注释修改,

mpv.conf:

#设置置顶播放
ontop=yes
#设置窗口大小
autofit-larger=50%x50%
#设置启动窗口位置,屏幕右下角
#geometry=100%:100%
#开启gpu渲染
profile=gpu-hq
# 关闭窗口装饰(无边框)
#no-border
# 设定程序启动后的默认音量
volume=100
# 使字幕输出在黑边上
sub-ass-force-margins=yes
# 开启色彩管理
icc-profile-auto
blend-subtitles=video
#启用 interpolation 来消除帧率问题造成的卡顿
video-sync=display-resample
interpolation
tscale=oversample
# 关闭软解
hwdec=no
# 硬解
hwdec=auto-safe
# 记忆上次播放的位置
save-position-on-quit
# 优化4k视频播放
opengl-pbo=yes
# 启用校色,默认64x64x64。
icc-profile-auto
icc-3dlut-size=256x256x256
# 音轨配置
audio-file-auto=fuzzy
alang=jpn,ja,eng,en
#设置ua,对于一些流媒体可能比较好一点
user-agent="Mozilla/5.0"
#开启脚本支持,部分脚本需要关闭底部的默认自带的进度条
osc=no
#空闲待机(中止播放或所有文件播放后依旧保持mpv运行)
idle=yes

# 截图 #
 screenshot-format=png  # <默认 jpg|(同前)jpeg|png|webp|jxl>
 screenshot-jpeg-quality=100  # <0-100> JPEG的质量,默认 90
 screenshot-jpeg-source-chroma=no   # 用与源视频相同的色度半采样写入JPEG,默认 yes
 screenshot-png-compression=5    # <0-9> PNG压缩等级,过高的等级影响性能,默认 7
#screenshot-png-filter         = 0    # <0-5> PNG的压缩过滤器。默认值 5 即可实现最佳压缩率
 screenshot-webp-lossless=yes  # 无损WEBP,默认 no
 screenshot-webp-quality=100  # <0-100> [当 --screenshot-webp-lossless=no 时生效] 有损WEBP的质量,默认 75
 screenshot-webp-compression=3    # <0-6> WEBP压缩等级,使用有损WEBP时进一步降低图片质量,默认 4
#screenshot-tag-colorspace     = yes  # 使用适当的色彩空间标记屏幕截图(并非所有格式受支持)默认 no
#screenshot-high-bit-depth     = no   # 主要影响PNG/JXL,尽可能使用和视频输出时近似的位深,默认 yes

 # OSD #
 #######
##⇘⇘OSD 即 On-Screen-Display ,通常为屏幕上弹出显示的信息。 OSC 即 on-screen-controller ,MPV中指的是简易操控界面
 osd-on-seek              = msg-bar     # <no,bar,msg,msg-bar> 在跳转时间轴时显示的信息类型
#osd-blur                 = 0
 osd-bar-w                = 100
 osd-bar-h                = 1
 osd-bar-align-y          = -1
#osd-color                = "#B300FFFF"
#osd-border-color         = "#B3008B8B"
 osd-border-size          = 1
 osd-font-size            = 40         # 更改OSD字体大小(全局,影响多个功能显示的文本),默认 55
 osd-fractions            = yes         # 以秒为单位显示OSD时间(毫秒精度),有助于查看视频帧的确切时间戳
 osd-playing-msg          = "${filename}"
                                        # 每个文件开始播放时短暂显示的信息。预设显示文件名
 osd-duration             = 2000        # 设置(全局)OSD文本信息的持续时间(毫秒),默认 1000

input.conf

# 全屏切换(回车键及小键盘确认键)
Enter    cycle fullscreen
KP_ENTER  cycle fullscreen
# 双击左键 播放/暂停
MBTN_LEFT_DBL  cycle pause
# 滚轮上下滑动调节音量
WHEEL_UP      add volume 5
WHEEL_DOWN    add volume -5
# 空格键 播放/暂停
SPACE cycle pause
# 静音
m cycle mute
# 查看文件信息
TAB script-binding stats/display-stats

#右键菜单
MOUSE_BTN2 script-message-to contextmenu_gui contextmenu_tk

打包了一份根据自己喜欢,设置修改的mpv配置,有需要的可能参考一下。解压到d盘或者什么盘都可以,比如D:\bin\mpv文件夹,注意一下mpv.exe,ffmpeg.exe要在这个文件夹,然后设置一下环境变量就可以使用了,如果要集成到系统右键菜单等等,mpv-install.bat安装一下即可,不需要就卸载。

mpv: http://download.zsxwz.com/d/16220046-50625166-79c380?p=zsxwz (访问密码: zsxwz)

退出移动版