婆罗门
精华
|
战斗力 鹅
|
回帖 0
注册时间 2003-6-6
|
本帖最后由 zmw_831110 于 2024-10-23 12:44 编辑
大致思路就是
找到MPV路径里.vpy放置的文件夹.
新建.vpy文件,修改你想要的组合.
把input.conf里原本超分的.vpy改成这个.vpy,就可以同时插帧+ 超分了。
ESRGAN里model号对应的关系,比较通用的是5010,动画定向优化的是5007
RIFE的model号对应关系,46很差,建议4151起
现在没电脑,晚上会去看看,当时我怎么改的.
因为我是4070TiS,最终发现我超分我只能搞到1080p然后再RIFE,否则我就别想视频加速播放了.
我最终是改出几个菜单.
仅RIFE模型4151 2.5X --对应24→60FPS
仅RIFE模型4151 2.4X --对应25→60FPS
仅RIFE模型4151 2X --对应30→60FPS
仅超分到1440p模型5007
仅超分到1440p模型5010
超分到1080p模型5007+RIFE模型4151 2X
超分到1080p模型5010+RIFE模型4151 2X
RIFE和ESRGAN配置:
下面的脚本的参数都是默认状态的,你根据自己的需求自己改
单独开启RIFE用的MEMC_RIFE_NV.vpy
- ### [url]https://github.com/hooke007/MPV_lazy/wiki/3_K7sfunc[/url]
- ### RIFE (v4+) 补帧,性能要求较高,N卡专用
- import vapoursynth as vs
- from vapoursynth import core
- import k7sfunc as k7f
- clip = video_in
- ############
- # 用户选项 #
- ############
- H_Pre = 1440
- Lt_D2k = False
- Model = 46
- Ext_Proc = False
- #Ext_Proc = True
- T_Tta = False
- Fps_Num = 2
- Fps_Den = 1
- Sc_Mode = 1
- Gpu = 0
- Gpu_T = 2
- St_Eng = False
- Ws_Size = 0
- Lk_Fmt = False
- ## 整数,预降低处理源高度(填你的显示器高度)
- ## <True|False> 是否对超过DCI2K分辨率的源进行补帧
- ## <46|415|4151> 使用的模型
- ## <True|False> 是否使用外部的填充裁切处理
- ## <True|False> 是否使用ensemble版模型
- ## 整数,Fps_Num/Fps_Den 的值即帧率倍数
- ## 整数
- ## <0|1|2> 场景切换检测的模式,0为禁用
- ## 使用的显卡序号,0为排序一号
- ## <1|2|3> 显卡线程数
- ## <True|False> 是否使用静态引擎(需要对不同分辨率的源各进行预处理);动态引擎自适应不同分辨率(QVGA→DCI4K)
- ## 整数,约束显存(MiB),静态引擎的最小值为128(动态引擎自动双倍),设为低于此数的值即最大化利用
- ## <True|False> 锁定像素格式为yuv420p8
- ret = k7f.FPS_CTRL(clip, fps_in=container_fps, fps_ret=True)
- clip = k7f.FMT_CTRL(clip, h_max=H_Pre, fmt_pix=1 if Lk_Fmt else 0)
- clip = k7f.RIFE_NV(clip, lt_d2k=Lt_D2k, model=Model, ext_proc=Ext_Proc, t_tta=T_Tta, fps_in=container_fps, fps_num=Fps_Num, fps_den=Fps_Den, sc_mode=Sc_Mode, gpu=Gpu, gpu_t=Gpu_T, st_eng=St_Eng, ws_size=Ws_Size)
- clip.set_output()
复制代码
单独开启ESRGAN用的SR_ESRGAN_NV.vpy
- ### [url]https://github.com/hooke007/MPV_lazy/wiki/3_K7sfunc[/url]
- ### Real-ESRGAN 放大或降噪,性能要求极高,N卡专用
- import vapoursynth as vs
- from vapoursynth import core
- import k7sfunc as k7f
- clip = video_in
- ############
- # 用户选项 #
- ############
- H_Pre = 720
- Lt_Hd = False
- Model = 5005
- Gpu = 0
- Gpu_T = 2
- St_Eng = False
- Ws_Size = 0
- H_Max = 1440
- Lk_Fmt = False
- ## 整数,预降低处理源高度
- ## <True|False> 是否对超过HD分辨率(720P)的源进行处理
- ## <0|2|5005|5006|5007> 使用的模型
- ## 使用的显卡序号,0为排序一号
- ## <1|2|3> 使用的显卡线程数
- ## <True|False> 是否使用静态引擎(需要对不同分辨率的源各进行预处理);动态引擎自适应不同分辨率(64²→DCI2K)
- ## <0~1024> 约束显存(MiB),静态引擎的最小值为128(动态引擎自动双倍),设为低于此数的值即为不限制
- ## 整数,输出高度限制(填你的显示器高度)
- ## <True|False> 是否锁定像素格式为yuv420p8
- ret = k7f.FMT_CTRL(clip, h_max=1200, h_ret=True)
- clip = k7f.FMT_CTRL(clip, h_max=H_Pre, fmt_pix=1 if Lk_Fmt else 0)
- clip = k7f.ESRGAN_NV(clip, lt_hd=Lt_Hd, model=Model, gpu=Gpu, gpu_t=Gpu_T, st_eng=St_Eng, ws_size=Ws_Size)
- clip = k7f.FMT_CTRL(clip, h_max=H_Max, fmt_pix=1 if Lk_Fmt else 0)
- clip.set_output()
复制代码
同时开启RIFE+ESRGAN用的MEMC_RIFE_NV_SR_ESRGAN_NV.vpy
有引用上面的2个文件
- import k7sfunc as k7f
- clip = video_in
- if clip.height <= 1080 :
- clip = k7f.FMT_CTRL(clip, h_max=720, fmt_pix=1)
- clip = k7f.ESRGAN_NV(clip, lt_hd=True, gpu=0)
- clip = k7f.FMT_CTRL(clip, h_max=1440)
- if container_fps <= 32 :
- clip = k7f.FMT_CTRL(clip, h_max=1440, fmt_pix=1)
- clip = k7f.RIFE_NV(clip, lt_d2k=True, model=46, gpu=0)
- if not (clip == video_in) :
- clip.set_output()
复制代码
|
评分
-
查看全部评分
|