AddGrainC

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (add x64 category)
(Changelog: add newer versions)
Line 62: Line 62:
 
== Changelog ==
 
== Changelog ==
 
  Version      Date            Developer      Changes<br>
 
  Version      Date            Developer      Changes<br>
  [http://ldesoras.free.fr/src/avs/AddGrainC-1.7.1.7z 1.7.1]      2013/11/25      Firesledge      Added a 64-bit version. Compiled with MSVC 2012 (requires the 2012 runtime libraries)  
+
v1.8        2020/04/09      pinterf        - Plugin name changed back to AddGrainC
  [http://ldesoras.free.fr/src/avs/AddGrainC-1.7.0.7z 1.7.0]      2012/08/16      Firesledge      Supports Y8, YV16, YV24 and YV411 colorspaces.
+
                                              - Fix output darkening (regression in VS port)
  [http://latoninf.free.fr/d9/AddGrainC-1.6.1.7z 1.6.1]      2011/10/29      LaTo INV.        Automatic switch to MMX if SSE2 is not supported by the CPU.
+
                                              - Add back documentation, credits
  [http://forum.doom9.org/showpost.php?p=1534699&postcount=55 1.6.0]      2011/10/28      LaTo INV.        Added SSE2 code (50% faster than MMX)
+
                                              - Add back SIMD optimization (SSE2, SSE4)
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.4.7z 1.5.4]      2011/10/27      Firesledge      Fixed bad pixels on the last line in YV12 mode when constant=true,
+
                                              - Add back version resource<br>
                                              fixed potential problems with frame width > 4096 pixels
+
              2020/03/30      StvG            - Backport to AviSynth+
                                              and fixed several other minor things.
+
                                              - Changes to 1.7.1:
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.3.7z 1.5.3]      2011/10/26      Firesledge      Fixed coloring and bluring in RGB24 mode.
+
                                                * Support AviSynth+ high bit depth
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.2.7z 1.5.2]      2011/10/26      Firesledge      Removed the SSE2 requirement.
+
                                                * Register Avisynth+ MT mode as MT_MULTI_INSTANCE
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.1.7z 1.5.1]      2010/05/13      Firesledge      The source code compiles on Visual C++ versions older than 2008.
+
                                                * AddGrain parameter order made similar to AddGrainC:
  [http://forum.doom9.org/showpost.php?p=1398231&postcount=36 1.5]        2010/05/07      Foxyshadis      Limit the initial seed generation to fix memory issues.
+
                                                  var, uvar, hcorr, vcorr, seed, constant (was: var, hcorr, vcorr, uvar, seed, constant)
  1.4          2006/08/11      Foxyshadis     Constant replaces seed, seed repeatable.
+
                                                * Removed bool "sse2" parameter
  [http://forum.doom9.org/showpost.php?p=838887&postcount=18 1.3]        2006/06/10      Foxyshadis      Crashfix, noisegen optimization.
+
                                                * Name is AddGrain
  [http://forum.doom9.org/showpost.php?p=837288&postcount=14 1.2]        2006/06/06      Foxyshadis      Supports YUY2, RGB. Fix cache mess.
+
                                                * Removed SIMD optimization<br>
  [http://forum.doom9.org/showpost.php?p=835592&postcount=9 1.1]        2006/06/01      Foxyshadis      Chroma grain + constant seed.
+
              2014-2018      HolyWu          - VapourSynth port<br>
  [http://neuron2.net/trbarry/AddGrain.zip 1.0]        2003/06/18      Tom Barry        Initial Release
+
  [http://ldesoras.free.fr/src/avs/AddGrainC-1.7.1.7z 1.7.1]      2013/11/25      Firesledge      - Added a 64-bit version. Compiled with MSVC 2012 (requires the 2012 runtime libraries)  
 +
  [http://ldesoras.free.fr/src/avs/AddGrainC-1.7.0.7z 1.7.0]      2012/08/16      Firesledge      - Supports Y8, YV16, YV24 and YV411 colorspaces.
 +
  [http://latoninf.free.fr/d9/AddGrainC-1.6.1.7z 1.6.1]      2011/10/29      LaTo INV.        - Automatic switch to MMX if SSE2 is not supported by the CPU.
 +
  [http://forum.doom9.org/showpost.php?p=1534699&postcount=55 1.6.0]      2011/10/28      LaTo INV.        - Added SSE2 code (50% faster than MMX)
 +
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.4.7z 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.
 +
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.3.7z 1.5.3]      2011/10/26      Firesledge      - Fixed coloring and bluring in RGB24 mode.
 +
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.2.7z 1.5.2]      2011/10/26      Firesledge      - Removed the SSE2 requirement.
 +
  [http://ldesoras.free.fr/src/avs/old/AddGrainC-1.5.1.7z 1.5.1]      2010/05/13      Firesledge      - The source code compiles on Visual C++ versions older than 2008.
 +
  [http://forum.doom9.org/showpost.php?p=1398231&postcount=36 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.
 +
  [http://forum.doom9.org/showpost.php?p=838887&postcount=18 1.3]        2006/06/10      Foxyshadis      - Crashfix, noisegen optimization.
 +
  [http://forum.doom9.org/showpost.php?p=837288&postcount=14 1.2]        2006/06/06      Foxyshadis      - Supports YUY2, RGB. Fix cache mess.
 +
  [http://forum.doom9.org/showpost.php?p=835592&postcount=9 1.1]        2006/06/01      Foxyshadis      - Chroma grain + constant seed.
 +
  [http://neuron2.net/trbarry/AddGrain.zip 1.0]        2003/06/18      Tom Barry        - Initial Release
 +
 
 
==External Links ==
 
==External Links ==
 
*[http://forum.doom9.org/showthread.php?t=111849 Doom9 Forum] - AddGrainC discussion.
 
*[http://forum.doom9.org/showthread.php?t=111849 Doom9 Forum] - AddGrainC discussion.

Revision as of 15:05, 9 April 2020

Abstract
Author
Version 1.7.1
Download AddGrainC-1.7.1.7z Archived
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.

Requirements

* These additional planar colorspaces are not available in AviSynth 2.5.8.


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.


float  var = 1.0
The standard deviation (strength) of the luma noise, 0.0 is disabled.


float  uvar = 0.0
The standard deviation (strength) of the chroma noise, 0.0 is disabled.
uvar does nothing in RGB mode.


float  hcorr = 0.0
float  vcorr = 0.0
Horizontal and vertical correlation, which causes a nifty streaking effect.
Range: 0.0 - 1.0


int  seed = -1
Specifies a repeatable grain sequence. Set to at least 0 to use.


bool  constant = false
Specifies a constant grain pattern on every frame.


bool  sse2 = true
Enable SSE2 optimization if available. 1.5x faster than MMX.


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 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




Back to External Filters

Personal tools