FunkyDeBlock: Difference between revisions

From Avisynth wiki
Jump to navigationJump to search
m 1 revision
m minor update
Line 1: Line 1:
function gauss (clip c,int "radius") {
{{FilterCat4|External_filters|Scripts|Restoration_filters|Deblockers}}
 
'''Doom9 Discussion''': http://forum.doom9.org/showthread.php?t=72431
 
 
<pre>function gauss (clip c,int "radius") {


radius=default(radius,1)
radius=default(radius,1)
Line 26: Line 31:
(depump==true) ? pump : nopump
(depump==true) ? pump : nopump


}
}</pre>
 
[[Category:External filters]]

Revision as of 15:54, 20 September 2014


Doom9 Discussion: http://forum.doom9.org/showthread.php?t=72431


function gauss (clip c,int "radius") {

radius=default(radius,1)

radius=radius*4
c.bilinearresize(4*(c.width/radius),4*(c.height/radius)).bicubicresize(c.width,c.height,1,0)

}

function funkydeblock (clip c,int "quant",int "th",int "radius", bool "deblock",bool "depump"){

quant=default(quant,4)
th=default(th,3)
radius=default(radius,4)
deblock=default(deblock,true)
depump=default(depump,true)

blurd = c.gauss(4)

highpass=subtract(blurd,c)
deblocked=(deblock==true) ? highpass.blindpp(quant=floor(quant),cpu=4) : highpass

nopump=subtract(blurd,deblocked)
pump=subtract(blurd.temporalsoften(radius,th,th,2*th,2),deblocked)

(depump==true) ? pump : nopump

}