From Avisynth wiki
Jump to: navigation, search
Author Marc FD
Version v2.6.1_avs26
Category Temporal Denoisers
License GPLv2
Discussion Doom9 Thread



This filter is a Chroma Stabilizer for analog sources. It's a temporal filter and it's very effective against two chroma artifacts: Stationary rainbows and huge analog chroma activity.
Cnr2 was inspired by the VirtualDub filter Chroma Noise Reduction 1.1 by Gilles Mouchard.

Note: vsCnr2 is recommended as a modern replacement for Cnr2.


*** vcredist_x86.exe is required for Cnr2-x86
*** vcredist_x64.exe is required for Cnr2-x64

Syntax and Parameters

Cnr2 (clip, string "mode", float "scdthr", int "ln", int "lm", int "un", int "um", int "vn", int "vm", bool "log", bool "sceneChroma")

clip   =
Input clip.

string  mode = "oxx"
Mode of each components, "YUV":
  • o : wide
  • x : narrow; this mode is more sensible to variations, and less effective.

float  scdthr = 10.0
Scene change detection threshold (as percentage of maximum possible change):
If sceneChroma is set to true, then it is the maximum possible change including both luma and chroma.
If sceneChroma is set to false then it is the maximum possible change considering luma only (luma only is more reliable).
Lower it to make scene change detection more sensible. If a scene change is detected, Cnr2 will reset the filtering for the new scene.

int  ln = 35
int  lm = 192
int  un = 47
int  um = 255
int  vn = 47
int  vm = 255
l parameters control the luma channel, u and v corresponds to the U/V chroma channels respectively.
The n values are the movement sensibility; higher values will denoise more, but could produce ghosting artifacts.
The m values are the maximum effectiveness of the denoiser; lower them to reduce the denoising effect.
Range: 0 to 255

bool  log = false
Log the scene change stats (output them using OutputDebugString). You can use DebugView to see it.
It will simply list the detected change, the maximum allowable change for the current scdthr setting, and the ratio (at 1.0 or greater a scene change has occurred).

bool  sceneChroma = false
Sets whether or not both chroma and luma are considered on scene change detection (true), or only luma (false).
Luma only detection tends to be more reliable.


Cnr2 with default settings:

Cnr2(mode="oxx", scdthr=10.0, n=35, lm=192, un=47, um=255, vn=47, vm=255, log=false, sceneChroma=false)


Version           Date            Developer       Changes
v2.6.1_avs26 2016/06/26 Chikuzen - Update to AviSynth 2.6 api - x64 binary - Compiled with Microsoft Visual Studio C++ 2015 v2.6.1 2004/06/30 tritical - YUY2 opts as I had slowed it down v2.6 2004/06/29 tritical - Some bug fixes and some code cleanup and rewriting v2.51 2003/11/18 Klaus Post - Further bug fixes v2.5 2003/11/13 Klaus Post - Bug fixes v2.4 2002/12/15 Marc FD - Bug fixes v2.3 2002/11/13 Marc FD - YV12 mode, scd (scene change detection) v2.2 2002/08/01 Marc FD - Ugly bug fixed v2.1 2002/07/31 Marc FD - Bug Fixes (thanks to dividee ;) v2.0 2002/07/20 Marc FD - Initial release; AviSynth filter coded (from scratch)

Archived Downloads

Version Download Mirror

External Links

Back to External Filters

Personal tools