ReduceFlicker
Abstract | |
---|---|
Author | Chikuzen |
Version | v0.0.1 |
Download | ReduceFlicker-0.0.1.7z |
Category | Luma Equalization |
License | GPLv2 |
Discussion |
Contents |
Description
AviSynth 2.6 / AviSynth+ plugin to reduces temporal oscillations. This is a rewite of ReduceFlicker v0.5 which written by Rainer Wittmann.
This plugin has only ReduceFlicker()
. ReduceFluctuation()
and LockClense()
are not implemented.
ReduceFlicker performs controlled averaging of a frame with its two adjacent temporal neighbors. Controlled means that averaging only takes place in the presence of oscillations. Without such a restraint the filter would create massive ghosts.
ReduceFlicker is purely a temporal filter that can be used for all kinds of material, but it is are particularly useful for interlaced footage or progressive videos from digicams like my Canon Powershot S1 IS. It should be applied before deinterlacing. If done so, the motion detection of the deinterlacer is fooled less by flicker, whence more detail is preserved.
The type of flicker, which can be removed or at least reduced with ReduceFlicker, is more prevalent in camcorder material and the chroma of analog clips, especially clips captured from VHS tapes. In other words ReduceFlicker is suited for removing or reducing certain kinds of electronic noise, but it has virtually no effect on dust and film grain.
Requirements
- [x86]: AviSynth+ or AviSynth 2.6
- [x64]: AviSynth+
- Supported color formats: Y8, YV12, YV16, YV24, YV411
- *** vcredist_x86.exe is required for ReduceFlicker-x86
- *** vcredist_x64.exe is required for ReduceFlicker-x64
Syntax and Parameters
- ReduceFlicker (clip, int "strength", bool "aggressive", bool "grey", int "opt", bool "raccess")
- clip =
- Input clip.
- clip =
- int strength = 2
- Specify the strength of ReduceFlicker. Higher values mean more aggressive operation.
- 1 : makes use of 4(current + 2*previous + 1*next) frames.
- 2 : makes use of 5(current + 2*previous + 2*next) frames. (default)
- 3 : makes use of 7(current + 3*previous + 3*next) frames.
- Specify the strength of ReduceFlicker. Higher values mean more aggressive operation.
- int strength = 2
- bool aggressive = false
- If set to true, then a significantly more aggressive variant of the algorithm is selected.
- bool aggressive = false
- bool grey = false
- Whether chroma planes will be processed or not. If set to true, chroma planes will be garbage.
- bool grey = false
- int opt =
- Controls which cpu optimizations are used.
- Currently, this filter has three(C++, SSE2 and AVX2) routines.
- 0 : Use C++ routine.
- 1 : Use SSE2 routine.
- Others (default) : Use AVX2 routine if possible.
- If your machine does not have AVX2 or you are using AviSynth 2.6, fallback to 1.
- int opt =
- bool raccess = true
- Undocumented.
- bool raccess = true
Examples
ReduceFlicker with default settings:
ReduceFlicker(strength=2, aggressive=false, grey=false)
Changelog
Version Date Changes
v0.0.1 2020/05/13 - Changes by asd-g - Use AviSynth+ v8 interface v0.0.0 2016/05/05 - Initial release
External Links
Back to External Filters ←