unlight 发表于 2021-1-6 20:24:04

Starlight 发表于 2021-1-6 18:44
试试看用这个脚本
i420只能8bit是吧?

Starlight 发表于 2021-1-6 20:27:32

unlight 发表于 2021-1-6 20:24
i420只能8bit是吧?
你换用我刚刚发的脚本应该可以10bit输出。画面的改变我不清楚因为我只有8位深的屏幕,看不出{:4_675:}

孤雨独火 发表于 2021-1-6 20:41:15

Starlight 发表于 2021-1-6 20:27
你换用我刚刚发的脚本应该可以10bit输出。画面的改变我不清楚因为我只有8位深的屏幕,看不出
...

我在svp manager里开关10bit,脚本参数完全不会变,我不清楚是bug还是帧间处理只支持8bit最后输出10bit{:4_675:}

Starlight 发表于 2021-1-6 20:52:23

孤雨独火 发表于 2021-1-6 20:41
我在svp manager里开关10bit,脚本参数完全不会变,我不清楚是bug还是帧间处理只支持8bit最后输出10bit{: ...


vo 那一行是p10,输出应该是10bit的,但是其他色深的比如8bit也会被提升至10bit,副作用不明。
我现在用的电脑不太行,无力测试。
svp manager改了设置新生成的vpy应该是有改变的,应该……

孤雨独火 发表于 2021-1-6 20:54:55

本帖最后由 孤雨独火 于 2021-1-6 21:02 编辑

Starlight 发表于 2021-1-6 20:52
vo 那一行是p10,输出应该是10bit的,但是其他色深的比如8bit也会被提升至10bit,副作用不明。
我现在用 ...
我的锅,绝了,扒了一下svp的论坛,有人反馈这个问题,居然10bit必须要硬件加速开启{:4_675:}

svpflow开启硬件加速的情况下,同时mpv解码端最好也是(xxxx-copy),似乎只需要改这一部分就行
    input_um = clip.resize.Point(format=vs.YUV420P10,dither_type="random")
    input_m = input_um
    input_m8 = input_m.resize.Point(format=vs.YUV420P8)

Starlight 发表于 2021-1-6 21:10:09

本帖最后由 Starlight 于 2021-1-6 21:18 编辑

孤雨独火 发表于 2021-1-6 20:54
我的锅,绝了,扒了一下svp的论坛,有人反馈这个问题,居然10bit必须要硬件加速开启

svpflow开 ...
会不会所有视频都被提升至10bit?
如果不会的话super analyse smooth分别传入了三个input中的哪一个?

dither_type="error_diffusion"应该能获取更高质量的结果?以及降低色深是否有抖动的必要?


孤雨独火 发表于 2021-1-6 21:37:47

本帖最后由 孤雨独火 于 2021-1-6 21:41 编辑

Starlight 发表于 2021-1-6 21:10
会不会所有视频都被提升至10bit?
如果不会的话super analyse smooth分别传入了三个input中的哪一个?


会,最好还是得分开写{:4_686:}
完整列出
import vapoursynth as vs
core = vs.get_core(threads=8)

clip = video_in

super_params   = "{scale:{up:0},gpu:1,rc:true}"
analyse_params   = "{block:{w:32},main:{search:{coarse:{type:2,distance:-6,bad:{sad:2000,range:24}},type:2}},refine:[{thsad:250}]}"
smoothfps_params = "{gpuid:21,gpu_qn:2,rate:{num:600000,den:10000,abs:true},algo:2,mask:{area:200},scene:{}}"

#gpuid默认为0,双显卡笔记本使用21

src_fps   = container_fps if container_fps>0.1 else 23.976
demo_mode   = 0
stereo_type = 0
nvof = 0


def interpolate(clip):
# input_um - original frame in 4:2:0
# input_m- cropped and resized (if needed) frame
# input_m8 - input_m converted to 8-bit
    input_um = clip.resize.Point(format=vs.YUV420P10,dither_type="random")
    input_m = input_um
    input_m8 = input_m.resize.Point(format=vs.YUV420P8)

    if nvof:
      smooth= core.svp2.SmoothFps_NVOF(input_m,smoothfps_params,nvof_src=input_m8,src=input_um,fps=src_fps)
    else:
      super   = core.svp1.Super(input_m8,super_params)
      vectors = core.svp1.Analyse(super["clip"],super["data"],input_m8,analyse_params)
      smooth= core.svp2.SmoothFps(input_m,super["clip"],super["data"],vectors["clip"],vectors["data"],smoothfps_params,src=input_um,fps=src_fps)


    if demo_mode==1:
      return demo(input_m,smooth)
    else:
      return smooth

if stereo_type == 1:
    lf = interpolate(core.std.CropRel(clip,0,(int)(clip.width/2),0,0))
    rf = interpolate(core.std.CropRel(clip,(int)(clip.width/2),0,0,0))
    smooth = core.std.StackHorizontal()
elif stereo_type == 2:
    lf = interpolate(core.std.CropRel(clip,0,0,0,(int)(clip.height/2)))
    rf = interpolate(core.std.CropRel(clip,0,0,(int)(clip.height/2),0))
    smooth = core.std.StackVertical()
else:
    smooth =interpolate(clip)
#


smooth.set_output()

unlight 发表于 2021-1-6 22:26:34

孤雨独火 发表于 2021-1-6 21:37
会,最好还是得分开写
完整列出
这个可以直接代替原本的SVP_Anime,当作常驻了吧(
确实可以正常插第二季不报错
不过input_um、m、m8这三个是什么关系?还是没太搞明白

unlight 发表于 2021-1-6 22:30:49

本帖最后由 unlight 于 2021-1-6 22:39 编辑

确实不行,这个根本不能用…正常视频也无法插
那个“能插”是假象,只是不报错,实际不工作
之前您发给我的那个“sp”也是,只是不报错,实际不工作

unlight 发表于 2021-1-6 22:35:20

Starlight 发表于 2021-1-6 18:44
试试看用这个脚本
这个只能插普通视频,不能插蔷薇少女第一季第一集和第二季
页: 33 34 35 36 37 38 39 40 41 42 [43] 44 45 46 47 48 49 50 51 52
查看完整版本: [MPV+] MPV_lazy 懒人包