AddGrainC
From Avisynth wiki
(Difference between revisions)
m |
m (add Deep_color_tools category) |
||
Line 1: | Line 1: | ||
− | {{ | + | {{FilterCat6|External_filters|Plugins|Plugins_x64|Adjustment_filters|Effects|Deep_color_tools}} |
{{Filter3 | {{Filter3 | ||
| | | | ||
Line 27: | Line 27: | ||
* [[FAQ_different_types_content#How_do_I_recognize_progressive.2C_interlaced.2C_telecined.2C_hybrid_and_blended_content.3F|Progressive]] input only | * [[FAQ_different_types_content#How_do_I_recognize_progressive.2C_interlaced.2C_telecined.2C_hybrid_and_blended_content.3F|Progressive]] input only | ||
* Supported color formats: [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]] | * Supported color formats: [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]] | ||
− | **AviSynth+: all planar formats (8/10/12/14/16bit and float, YUV/RGB with or without alpha) are supported. | + | **AviSynth+: all [[planar]] formats (8/10/12/14/16bit and float, YUV/RGB with or without alpha) are supported. |
<br> | <br> | ||
Revision as of 18:59, 25 June 2020
Abstract | |
---|---|
Author | |
Version | 1.8.1 |
Download | AddGrainC_v1.8.1.7z |
Category | Effects |
License | GPLv2 |
Discussion | Doom9 Thread |
Contents |
Description
Generate film-like grain or other effects (like rain) by adding random noise to a video clip. This noise may optionally be horizontally or vertically correlated to cause streaking.
AddGrain and AddGrainC are aliases for one another; there is no difference in functionality, only in syntax.
Note: self-registers as MT_NICE_FILTER in AviSynth+.
Requirements
- [x86]: AviSynth+ or AviSynth 2.6
- [x64]: AviSynth+
- Progressive input only
- Supported color formats: Y8, YV12, YV16, YV24, YV411
- AviSynth+: all planar formats (8/10/12/14/16bit and float, YUV/RGB with or without alpha) are supported.
Syntax and Parameters
- AddGrain (clip, float "var", float "hcorr", float "vcorr", float "uvar", int "seed", bool "constant", bool "sse2")
- AddGrainC (clip, float "var", float "uvar", float "hcorr", float "vcorr", int "seed", bool "constant", bool "sse2")
- clip =
- Input clip.
- clip =
- float var = 1.0
- The standard deviation (strength) of the luma noise, 0.0 is disabled.
- float var = 1.0
- float uvar = 0.0
- The standard deviation (strength) of the chroma noise, 0.0 is disabled.
- uvar does nothing in RGB mode.
- float uvar = 0.0
- float hcorr = 0.0
- float vcorr = 0.0
- Horizontal and vertical correlation, which causes a nifty streaking effect.
- Range: 0.0 - 1.0
- Horizontal and vertical correlation, which causes a nifty streaking effect.
- float hcorr = 0.0
- int seed = -1
- Specifies a repeatable grain sequence. Set to at least 0 to use.
- int seed = -1
- bool constant = false
- Specifies a constant grain pattern on every frame.
- bool constant = false
- bool sse2 = true
- Debug parameter, set to false for C routines
- bool sse2 = true
Examples
AddGrainC with default values:
AviSource("Blah.avi") AddGrainC(var=1.0, uvar=0.0, hcorr=0.0, vcorr=0.0, seed=-1, constant=false, sse2=true)
Changelog
Version Date Developer Changes
v1.8.1 2020/04/09 pinterf - AddGrain: original parameter order restored (compatibility) - bool sse2 parameter is restored as well. sse2 = false disables simd optimization. - simd: make internal noise block load unaligned.
v1.8 2020/04/09 pinterf - Plugin name changed back to AddGrainC - Fix output darkening (regression in VS port) - Add back documentation, credits - Add back SIMD optimization (SSE2, SSE4) - Add back version resource
2020/03/30 StvG - Backport to AviSynth+ - Changes to 1.7.1: * Support AviSynth+ high bit depth * Register Avisynth+ MT mode as MT_MULTI_INSTANCE * AddGrain parameter order made similar to AddGrainC: var, uvar, hcorr, vcorr, seed, constant (was: var, hcorr, vcorr, uvar, seed, constant) * Removed bool "sse2" parameter * Name is AddGrain * Removed SIMD optimization
2014-2018 HolyWu - VapourSynth port
1.7.1 2013/11/25 Firesledge - Added a 64-bit version. Compiled with MSVC 2012 (requires the 2012 runtime libraries) 1.7.0 2012/08/16 Firesledge - Supports Y8, YV16, YV24 and YV411 colorspaces. 1.6.1 2011/10/29 LaTo INV. - Automatic switch to MMX if SSE2 is not supported by the CPU. 1.6.0 2011/10/28 LaTo INV. - Added SSE2 code (50% faster than MMX) 1.5.4 2011/10/27 Firesledge - Fixed bad pixels on the last line in YV12 mode when constant=true, fixed potential problems with frame width > 4096 pixels and fixed several other minor things. 1.5.3 2011/10/26 Firesledge - Fixed coloring and bluring in RGB24 mode. 1.5.2 2011/10/26 Firesledge - Removed the SSE2 requirement. 1.5.1 2010/05/13 Firesledge - The source code compiles on Visual C++ versions older than 2008. 1.5 2010/05/07 Foxyshadis - Limit the initial seed generation to fix memory issues. 1.4 2006/08/11 Foxyshadis - Constant replaces seed, seed repeatable. 1.3 2006/06/10 Foxyshadis - Crashfix, noisegen optimization. 1.2 2006/06/06 Foxyshadis - Supports YUY2, RGB. Fix cache mess. 1.1 2006/06/01 Foxyshadis - Chroma grain + constant seed. 1.0 2003/06/18 Tom Barry - Initial Release
External Links
- Doom9 Forum - AddGrainC discussion.
- GitHub - Source code repository.
Back to External Filters ←