Log in

View Full Version : Avisynth "look back" filter/command?


lordsmurf
27th January 2014, 05:53
I want to edit a filter to look at the previous 10 frames (max) only -- not the next ones. The next ones have too much jitter.

It's my belief that such a look-back-only filter would address jitter on "talking heads" type footage.

So far, I've not found what I need.

Any ideas? :thanks:

vampiredom
27th January 2014, 06:24
Reverse() ?

raffriff42
27th January 2014, 15:18
>I want to edit a filter to look at the previous 10 frames
What does "look at" mean here?
Get the frame exactly 10 frames previous?
Get an average of the last 10 frames?
Random access to the 10 previous frames?

Here is how I get a delayed version of a clip BlankClip(Last).Trim(0, x) + Last

Wrapped in a function, supporting advance or delay:#Last=something
delayed1=UUSlip(-1)
delayed10=UUSlip(-10)
return StackVertical(Last, delayed1, delayed10)

#######################################
### "slip" a clip in time.
##
## @ C - clip to be advanced or delayed
## @ offset - if positive, clip is advanced;
## if negative, clip is delayed
## @ P - clip to be used for padding (default = BlankClip)
##
function UUSlip(clip C, int offset, clip "P")
{
lenTrim = (offset > 0) ? offset : 0
lenPad = (offset < 0) ? -offset : 0

P = IsClip(P) ? P : BlankClip(C)

C = (lenPad==0) ? C
\ : P.Trim(0, -lenPad) + C

C = (lenTrim==0) ? C
\ : C.Trim(lenTrim, 0) + P.Trim(P.Framecount-lenTrim, -lenTrim)

return C
}