在PotPlayer和MPV挂载SVP脚本进行补帧的部署方法

您所在的位置:网站首页 补帧方法的区别 在PotPlayer和MPV挂载SVP脚本进行补帧的部署方法

在PotPlayer和MPV挂载SVP脚本进行补帧的部署方法

2024-07-11 05:18| 来源: 网络整理| 查看: 265

Win下一直用的PotPlayer+SVP补帧+Anime4K看番, 听闻抛弃SVP的ffdshow, 在播放器里面直接使用AviSynth脚本效率会更好. 在折腾一番之后发现不少问题: 要么有bug, 要么效率低. 而且Anime4K在PotPlayer只能使用早期的HLSL格式. 经过度娘之后发现, MPV似乎是个更好的替代方案: 不仅支持更高效率的VapourSynth脚本补帧, 还支持最新的Anime4K....

(Tips: 默认已经打好常用VC库, 没有的话请度娘)

一. PotPlayer的AviSynth脚本部署方案

1. 安装Avisynth+

项目地址: https://github.com/AviSynth/AviSynthPlus/

安装最新的版本AviSynthPlus_3.7 (下载地址https://github.com/AviSynth/AviSynthPlus/releases/download/v3.7.0/AviSynthPlus_3.7.0_20210111.exe)

2. 添加svpflowlib

为了不安装SVP.直接使用其DLL(下载地址https://lee-7723.lanzous.com/ic71hqd 引用的https://www.bilibili.com/read/cv5884222/ 作者Lee-7723,此版本应该是4.3.0.156)

另外还有官方版的lib https://www.svp-team.com/zh/get/ 

(下载地址https://www.svp-team.com/files/gpl/svpflow-4.3.0.168.zip)

此版本需要SVP Manager在后台运行, 否则画面有红框, 不推荐使用.

还可以使用svp4-cracked里面的 (度娘一下), 不过版本是4.0.0.11有点旧

将64位的DLL放到AviSynth+安装目录下的plugins64+内

3.启用PotPlayer内的AviSynth

4. 附脚本

(个人精简, 具体参数含义可以查看 https://www.svp-team.com/wiki/Manual:SVPflow, 在这里可以生成参数和脚本https://bare7a.github.io/SVP-Flow-Script-Generator/advanced-generator.html,熟悉了可以直接改参数)

5. 可选:Anime4k配置 (适用于动漫的,非常棒的放大算法)

项目地址: https://github.com/bloc97/Anime4K/

①下载符合potplayer使用的版本, 并解压到PotPlayer的PxShader目录(https://github.com/bloc97/Anime4K/releases/download/v0.9/Anime4K_HLSL.zip)

②配置着色组合

③启用D3D11视频渲染 (为了Anime4K能正确着色)

④可选配置 PotPlayer硬件解码. (必须copyback--将解码数据放回内存,因为svp需要在内存中才能处理)

这样就可以享受高清60fps的番剧了.(还想要更好的画质.可以再添加MadVR渲染)

6. 使用过程中发现的问题:

启用的PotPlayer内置的AviSynth脚本后, 如果脚本被反复调用会导致显存不断增加. 当显存'爆'掉之后就会卡死PotPlayer, 对连续看番非常不友好.

问题复现的途径:

1.不关闭potplayer时,反复调用avs脚本 (打开关闭. 切换视频)

2.搜索重置勾选后. 反复切进度

显存增加示例

原因是AviSynth要在调用环境完全关闭才会释放其占用的显存.

解决方法:

要么每次播放一个视频就关闭一下PotPlayer, 要么等potplayer更新解决掉这个问题? 不过找不到提交问题的地方, 放弃了

另外可以模仿svp软件的流程: 强制PotPlayer使用指定滤镜, 由滤镜调用avs脚本的方案. 这样也不会出现显存问题

这里也提供一下方法

二. PotPlayer使用外部滤镜调用脚本的部署方案

1. 安装AviSynth Filter

项目地址:https://github.com/CrendKing/avisynth_filter

这里选择的是0.9版本 (下载地址https://github.com/CrendKing/avisynth_filter/releases/download/v0.9.0/AviSynthFilter.zip)

解压后选择install.bat进行安装 (不要解压在临时目录)

2. PotPlayer目录下配置avisynth_filter.ini

3. 强制PotPlayer使用滤镜

也可以在全局滤镜优先权里面添加

4. 附脚本

三. PotPlayer的VapourSynth脚本部署方案

不想放弃这个Potplayer的前提下. 又动起了试试VapourSynth脚本的心. 因为其基于python环境, 不会有显存占用问题. (不过PotPlayer里的VapourSynth脚本效率太低. 不推荐)

1. 部署VapourSynth运行环境:

vapoursynth项目地址https://github.com/vapoursynth/vapoursynth/releases

这里用了最新的R52便携版 (下载地址https://github.com/vapoursynth/vapoursynth/releases/download/R52/VapourSynth64-Portable-R52.7z)

python版本https://www.python.org/downloads/windows/

这里用的python-3.8.7 win64位版本 (下载地址https://www.python.org/ftp/python/3.8.7/python-3.8.7-embed-amd64.zip)

将两个压缩包解压到PotPlayer的\Module\VapourSynth目录

2. 添加svpflowlib

把svpflowlib对应VapourSynth的DLL放到PotPlayer的Module\VapourSynth\vapoursynth64\plugins目录下

(使用下面MPV懒人包里面提供的vapoursynth64\plugins,或者使用有红框的官方版lib-windows\vapoursynth)

3. 启用PotPlayer里面的VapourSynth

VapourSynth和AviSynth只能运行其一.

4. 附脚本

在PotPlayer里面运行效率有点低.还经常报错闪退... 

四. MPV部署

为了更爽的看番.经过一番度娘.发现了神器MPV: 开源, 跨平台, 但基于文件配置的播放器.

配置好一个MPV不是那么容易,特别是windows用户. 不过有大神提供了懒人包, 把SVP,  Anime4K等打包到MPV了, 提前写好了配置文件. 我们只需要下载下来, 即开即用.

(当我们学会怎么配置之后, 还可以尽情压榨电脑性能.)

项目地址https://github.com/hooke007/MPV_lazy/

最新的MPV-lazy版本下载地址https://hooke007.cowtransfer.com/s/9a34ac0484fb4c

在https://bbs.vcb-s.com/thread-5843-1-1.html 二楼的修改版懒人包集成了更好看的OSD界面.快捷键也预设成PotPlayer习惯. 虽然进度缩略图生成过程占CPU影响体验.还是不错的选择 (可以修改掉)

这里用的二楼修改的懒人包版本

1. 简易使用说明:

解压后可以选择install.bat安装,并关联格式.或者拿来就用:打开mpv.exe即可,

2. 快捷键及配置

①基础快捷键

可以在\portable_config\input.conf中进行修改,下面是常用的快捷键说明

根据需求自行修改, 自定义命令, 例如set window-minimized yes, set window-scale 1.0, 

快捷键可以配置成组合命令, 命令之间用;分隔

命令参考可以查看https://mpv.io/manual/stable/#command-interface

②其他脚本提供的快捷键:

ctrl+o 打开文件

在\portable_config\scripts\open-file-dialog.lua里面可以改快捷键. 我经常用这个快捷键打不开界面. 所以改成了PotPlayer惯用的F3

Shift+Enter 播放列表. 打开后可以用上下左右回车esc控制播放菜单. 在\portable_config\scripts\playlistmanager.lua里面可以改快捷键

③进度条缩略图:

如果需要使用此功能.默认的缩略图缓存位置最好修改一下portable_config\script-opts\mpv_thumbnail_script.conf

如果电脑性能不好的话. 进度条缩略图非常吃CPU资源. 可以选择去掉此功能.

去除方法: 删除\portable_config\scripts\osc_mod.lua内代码:

然后删除\portable_config\scripts\mpv_thumbnail_script_server.lua和\portable_config\script-opts\mpv_thumbnail_script.conf

3. 几个需要根据实际情况配置的参数 (性能吃紧可以选择性修改)

配置文件\portable_config\mpv.conf

①硬解方案

②因为使用SVP进行补帧. 所以最好关闭MPV默认的补帧算法

③放大算法:

④去除色带:

4. 补帧方案

作者非常贴心提供了几种方案. 放在了目录\portable_config下. 

mvtools-standard.vpy 标准的mvtools运动模糊方案. 但是不是对视频进行补帧. 只是让视频看起来丝滑一些. 可以用在一般电影. 

mvtools-high.vpy 加强版, 非常吃CPU.

svpflow-anime.vpy 动漫专用的补帧方案. 动漫必备

svpflow-movie.vpy 一般视频的补帧方案, 参数和脚本都可以再修改修改

附上个人简易的svpflow-anime.vpy说明, 可以对比作者的进行参考.也可以参考svp官方的说明: https://www.svp-team.com/wiki/Manual:SVPflow

5.Anime4K放大方案

预设的3个方案适合中高端显卡, 在\portable_config\input.conf的## glsl列表 ##可以查看

按Anime4k的项目说明, 对于低配来讲, 将上面的Anime4K_Upscale_CNN_L_x2_Denoise.glsl替换成Anime4K_Upscale_CNN_M_x2_Denoise.glsl会减少性能消耗, 但是我配合svp使用的话经常闪退. 折腾一番后试验出了这么一个低端方案: (仅供参考)

1080p视频放大到4K的方案

CTRL+ALT+1 change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl;~~/shaders/Anime4K_Deblur_DoG.glsl;~~/shaders/Anime4K_DarkLines_HQ.glsl;~~/shaders/Anime4K_ThinLines_HQ.glsl;~~/shaders/Anime4K_Upscale_DoG_x2_Deblur.glsl"

CTRL+ALT+2 change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl;~~/shaders/Anime4K_Deblur_DoG.glsl;~~/shaders/Anime4K_Upscale_DTD_x2.glsl"

CTRL+ALT+3 change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl;~~/shaders/Anime4K_Deblur_DoG.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"

二号相对会少点消耗, 线条过分'清楚'; 一号线条较二号模糊点, 资源消耗也多点; 三号资源一般,画质也一般

720p放大到4K的方案: 使用二次放大, 也可以选择上面1080p的, 消耗更小

CTRL+ALT+4 change-list glsl-shaders set "~~/shaders/Anime4K_Upscale_CNN_M_x2_Denoise.glsl;~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl;~~/shaders/Anime4K_Deblur_DoG.glsl;~~/shaders/Anime4K_Upscale_DTD_x2.glsl"

720p视频放大到4k的对比

Anime4K一般的流程是: 去噪denoise ->去模糊deblur->(可选:CNN放大upscale->auto_downscale)->放大upscale

组合方法可以参考里面各个算法的说明https://github.com/bloc97/Anime4K/wiki

但配置过程需要注意机器的性能. 显存容量等. 过分使用放大导致爆显存会造成绿屏.花屏.卡死,尝试时请谨慎选择适合自己机器性能的算法

另外亮度升频算法KrigBilateral.glsl个人体会不出打开前后的区别. 而且也吃不小资源, 可以选择不使用

总结:

尽管刚开始用MPV起来非常不顺手. 但是经过一番折腾上手之后, 觉得无论补帧还是放大算法都比PotPlayer靠谱, 真的是非常强大的一款播放器, 完全可以替代PotPlayer作为新的看番神器.



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3