Hallo zusammen, kann mir jemand helfen Rainbows zu entfernen?
Mein aktuelles Script sieht wie folgt aus, allerdings bekomme ich immer die fehlermeldung:
AviSynth script error:
Script error: There is no function named 'mt_merge',
(D:\Downloads\MeGUI-2715-32\tools\avisynth_plugin\DeRainbow.avsi"), line 22)
Script:
Code
LoadPlugin("D:\Downloads\MeGUI-2715-32\tools\dgindex\DGDecode.dll")LoadPlugin("D:\Downloads\MeGUI-2715-32\tools\avisynth_plugin\MSharpen.dll")LoadPlugin("D:\Downloads\MeGUI-2715-32\tools\avisynth_plugin\MipSmooth.dll")Import("D:\Downloads\MeGUI-2715-32\tools\avisynth_plugin\DeRainbow.avsi")LoadPlugin("D:\Downloads\MeGUI-2715-32\tools\avisynth_plugin\aWarpsharp.dll")LoadPlugin("D:\Downloads\MeGUI-2715-32\tools\avisynth_plugin\ColorMatrix.dll")DGDecode_mpeg2source("D:\VIDEO_TS\DVD_VTO_01_VTS_03_1.d2v", info=3)ColorMatrix(hints=true, threads=0)DeRainbow()crop(0, 0, 0, -2)LanczosResize(720,538) # Lanczos (Sharp)#denoise
DeRainbow.avsi:
Code
# Update: https://avisynth.nl/index.php/DeRainbow
function DeRainbow(clip org, int "thresh", bool "interlaced")
{
assert(org.isYV12(),"DeRainbow() requires YV12 input!")
thresh = default(thresh, 10)
interlaced = default(interlaced, false)
org = interlaced==true? org.separatefields() : org
org_u = utoy(org)
org_v = vtoy(org)
msharpen(org, threshold = thresh, mask=true)
reduceby2()
greyscale()
uv = blur(1.5).levels(0,2.0,255,0,255, coring=false).blur(1.5).blur(1.5).levels(50,2.0,255,0,255, coring=false)
filtered_u = org_u.mipsmooth(spatial=255, temporal=255, scenechange=3, show=false, method="strong", scalefactor=0.5)
filtered_v = org_v.mipsmooth(spatial=255, temporal=255, scenechange=3, show=false, method="strong", scalefactor=0.5)
u_final = mt_merge(org_u, filtered_u, uv)
v_final = mt_merge(org_v, filtered_v, uv)
return ytouv(u_final, v_final, org)
output = interlaced==true? last.weave() : last
return output
}
function DeRainbowYUY2(clip org, int "thresh", bool "interlaced")
{
assert(org.isyuy2(),"DeRainbowYUY2() requires YUY2 input!")
thresh = default(thresh, 10)
interlaced = default(interlaced, false)
org = interlaced==true? org.separatefields() : org
org_yv12 = org.converttoyv12()
org_u = utoy(org).converttoyv12()
org_v = vtoy(org).converttoyv12()
msharpen(org_yv12, threshold = thresh, mask=true)
bilinearresize(last.width/2, last.height)
greyscale()
uv = blur(1.5).levels(0,2.0,255,0,255, coring=false).blur(1.5).blur(1.5).levels(50,2.0,255,0,255, coring=false)
filtered_u = org_u.mipsmooth(spatial=255, temporal=255, scenechange=3, show=false, method="superstrong", scalefactor=0.5)
filtered_v = org_v.mipsmooth(spatial=255, temporal=255, scenechange=3, show=false, method="superstrong", scalefactor=0.5)
u_final = mt_merge(org_u, filtered_u, uv).converttoyuy2()
v_final = mt_merge(org_v, filtered_v, uv).converttoyuy2()
return ytouv(u_final, v_final, org)
output = interlaced==true? last.weave() : last
return output
}
Alles anzeigen