9f0e7b422ff8d56742b5ec5a6696707442e7a833
.config/mpv
一套 mpv 播放器配置,集成 uosc 界面、多种着色器方案和自动更新机制。
Credits
原始仓库为 emoeem/mpv。根据我的需要精简了一些功能,同时做了一些修复。
结构
mpv.conf # 主配置(全局设置 + Profile 定义)
input.conf # 键位绑定与右键菜单
inputevent_key.conf # inputevent.lua 增强键位(单击/双击/长按)
profiles.conf # 场景预设(游戏/电影/动画/低功耗/直播等)
manager.json # 脚本和着色器的 git 自动更新源
scripts/ # Lua 脚本
script-opts/ # 脚本配置
shaders/ # GPU 着色器(NNEDI3/FSRCNNX/Ani4K/Anime4K/ravu/igv 等)
fonts/ # 字体
icc/ # ICC 色彩配置文件
主要功能
- 界面:uosc 界面 + 右键菜单 + 缩略图预览 + 命令面板
- 色彩管理:ICC / Target 双模式,HDR 直通与色调映射,动态峰值检测
- 着色器:NNEDI3、FSRCNNX、Ani4K、AniSD、Anime4K、ravu-zoom、SSIM
- 条件 Profile:根据分辨率 / HDR / 帧率 / 刷新率 / 网络等自动调整参数
- 字幕:自动加载、编码检测(GB18030)、在线搜索(assrt)、自动同步(autosubsync)
- 音频:96kHz 重采样、独占模式、多声道自动下混调节、ReplayGain
- 播放管理:历史记录(simplehistory)、进度保存、文件浏览器、播放列表管理
- 网络:yt-dlp 集成、浏览器 Cookie、自动缓存优化
- 更新:按 M 键通过 manager.lua 从 git 自动更新所有脚本和着色器
着色器方案
在 mpv.conf 的 Profile 激活区切换(取消注释对应行):
| Profile | 适用场景 | GPU 开销 |
|---|---|---|
| NNEDI3 | 通用 | 中 |
| NNEDI3+ | 通用(64 变体) | 高 |
| ravu-zoom | 通用 | 中 |
| FSRCNNX | HD 内容 | 中 |
| FSRCNNX+ | SD 内容去伪影 | 中 |
| Ani4K | 动画 | 极高 |
| AniSD | SD 动画 | 极高 |
| Anime4K | 动画 | 低 |
| SSIM | 低性能需求 | 低 |
其中:
- Ani4K / AniSD 着色器(
shaders/Ani4K/)来自 Sirosky/Upscale-Hub。 - nnedi3 / ravu 着色器(
shaders/nnedi3/,shaders/ravu/)来自 mpv-prescalers。
外部依赖
更新流程
- 在 mpv 中按
M触发 manager.lua,观察控制台输出,确认无FAILED条目。可能会有其他报错如[manager] Fehler: externes Repository manager existiert bereits.,这是正常的。只需要确保不出现全大写的FAILED即可。 - 将 manager.lua 在 dest 目录产生的嵌套
.git目录迁移到仓库内的.manager/(避免根仓库误判为 submodule,幂等可重复执行):REPO=$(git -C ~/.config/mpv rev-parse --show-toplevel) GITSTORE="$REPO/.manager" mkdir -p "$GITSTORE" find -L ~/.config/mpv -mindepth 2 -name .git -type d | while read gitdir; do dest="${gitdir%/.git}" rel="${dest#$REPO/}" name=$(echo "$rel" | tr '/' '-') mv "$gitdir" "$GITSTORE/$name" depth=$(echo "$rel" | tr -cd '/' | wc -c) ups=$(printf '../%.0s' $(seq 1 $((depth + 1)))) echo "gitdir: ${ups}.manager/$name" > "$dest/.git" done - 重启 mpv,检查控制台有无
unknown key或脚本加载失败的警告 - 若有
unknown key警告,说明对应脚本的配置项发生变化,找script-opts/下同名.conf对照脚本源码更新
Description
Languages
GLSL
96.1%
Lua
3.9%