实时补帧+提升画质~ Archlinux 使用 Vapoursynth 插件 MVTools/RIFE 实时补帧,使用 Anime4K 实时超分
0.前言
这里有一键配置方案了
vapoursynth plugin rife ncnn vulkan 的错误已经不需要修复 只需从 aur 安装 vapoursynth-plugin-rife-ncnn-vulkan-git 并配置 vpy 即可
Windows 已经有了一键解决方案 mpv-lazy
但 Linux 就需要手动配置啦 本文会教你如何干爆电脑硬件猛超画质帧率成为盯帧
另外,RIFE 实时补帧对于 Linux 基本上是没什么用的 配置好之后建议使用命令行补帧 笔者的 RTX3070Laptop 成功把 24f/s 的动画实时补到了 20f/s
1.安装 mpv-vapoursynth,使用 mvtools 进行实时补帧
1.由于 AUR 中 mpv 并不自带 vapoursynth,所以我们需要移除 mpv,安装 mpv-vapoursynth
2.接下来安装 vapoursynth mvtools 插件
3.接下来你需要选择一个 vpy,以启用 mvtools 补帧
这里推荐phiresky的范本
4.这个 vpy 在 Linux 中有些小问题,我们将它修改
在第 10 行中,把 core = vapoursynth.get_core()
替换为 core = vapoursynth.core
5.编辑 ~/.config/mpv/mpv.conf
填入基本播放参数
6.编辑 ~/.config/mpv/input.conf
,设定启用 mvtools 的快捷键
这样 x 就成为了 启用 mvtools 的快捷键 你可以修改为自己想要的
7.如果你想要一打开/调用 mpv 播放视频就启用 mvtools 进行补帧,在mpv.conf
中加入这些内容
8.修改你的目标帧数
在motioninterpolation.vpy
文件中dst_fps = display_fps
设定了目标帧数等于你屏幕的显示帧数
这会对带有高刷新率屏幕的电脑带给很高压力(CPU:你礼貌吗)
如果你想把它改成 60 帧
只需把 display_fps
修改为 60
即可
9.确认修改是否成功
1.打开任意一帧率不足 60 帧的视频
2.按下你设置的启用 mvtools 的快捷键(x)
3.按下 shift+i
查看显示信息 已经能看出来了吧
2.加入 Anime4K 着色器实时超分
1.获取 GLSL 并复制到 mpv 的 shaders 目录
2.在 ~/.config/mpv/input.conf
写入快捷键
平常的动漫超分只需要 CTRL+4 就够了 清除着色器只需 CTRL+0
3.按下 shift+i
查看效果
3.使用 RIFE(不建议)
RIFE 对于显卡的要求十分高,虽然效果较好但通常仅用于补帧后观看
这里给出 RIFE 进行实时补帧的用法
如果你直接在 AUR 中安装vapoursynth-plugin-rife-ncnn-vulkan-git,会有不能 build 的错误 参考这里
1.安装 vulkan-headers meson
2.安装 VapourSynth-RIFE-ncnn-Vulkan
3.它报错了
4.全剧终 我们修复一下这个报错
这个报错是 -fno-exceptions
引起的 (我不懂 cmake,有其他想法欢迎批评指正)
Linux 下确实会出现这个问题
1.进入 ~/VapourSynth-RIFE-ncnn-Vulkan/build/ninja.build
2.把里面的 -fno-exceptions
全部替换为空 (使用你的 IDE) 虽说颇为暴力,但实际上 -fno-exceptions
这种东西有点过于极端了全删掉也大丈夫
-fno-exceptions
这种东西有点过于极端了全删掉也大丈夫3.继续安装
5.写一份 vpy 放入 ~/.config/mpv/xxx.vpy
这里给出一个示例仅供参考