FunkyDeBlock
From Avisynth wiki
(Difference between revisions)
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> |
| − | + | ||
| − | + | ||
Revision as of 14: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
}