External filters

From Avisynth wiki
Revision as of 14:49, 16 August 2016 by MWilson (Talk | contribs)

Jump to: navigation, search

Rough classification of third-party filters for AviSynth - a perpetual work in progress.

This page lists both scripts (see Import) and plugins (see Plugins).



Download sites

A large list of filters can be downloaded from the following sites but be aware that some plugins listed may be outdated, only recommended as a backup.

64-bit filters

A comprehensive list of 64-bit filters is available in the AviSynth+ page.

Outdated AviSynth plugins

External plugins (old) - these older plugins are not recommended, page is there mainly for historical purposes.

Using filters

Most scripts will apply filters in the following order:

  1. Create an AviSynth clip from a video file using a source filter.
  2. Correct or remove any unwanted features in the video (e.g. dot crawl, field blending or telecine).
  3. Denoise the video (optional).
  4. Manipulate the video into the desired format (by e.g. changing the size and frame rate).

Source Filters

Filter Description Color format Plugin / Script Author
BassAudio Bass Audio decoder. Supports wav, aiff, mp3, mp2, mp1, ogg. Support for aac, ac3, alac, ape, cd, flac, midi, mpc, ofr, spx, tta, wma, wv with additional included dll's. The filter is included in the Behappy package. N/A Plugin dimzon
CMVSource Load Dwarf Fortress CMV and CCMV movies. RGB32 Plugin Robert Martens
DGAVCDecode AVC/H.264 decoder plug-in. YV12 Plugin Donald Graft
DGDecode Decode MPEG1/MPEG2 streams from: DVD VOBs, captured transport streams, *.mpg/*.m2v/*.pva files, etc. Use this instead of MPEGDecoder/MPEG2Dec3. RGB24, YUY2, YV12, I420 Plugin Donald Graft
DGMVCSource MVC source filter for AviSynth. YV12 Plugin Donald Graft
DVInfo Grabs the timestamp and recording date info from a DV-AVI. See discussion. N/A Plugin Update WarpEnterprises
DVTimeStampEx Shows DV timestamp information over a DV clip. N/A Plugin - source code basilik
DSS2 DirectShowSource2 that uses the installed Haali Media Splitter along with its avss.dll AviSynth plugin. It can convert VFR files to CFR in order to support frame-accurate seeking. Not recommended due to the fact that Haali Media Splitter is considered outdated, use DDS2mod. RGB24, RGB32, YUY2, YV12 Plugin Haali
DSS2mod DirectShowSource2 mod, this version does not require Haali Media Splitter. RGB24, RGB32, YUY2, YV12 Plugin forclip
FFmpegSource Decodes all ffmpeg (libavcodec) supported A/V formats with frame accurate seeking in AVI, MKV and MP4. See discussion. RGB, YUY2, YV12, I420 Plugin Myrsloik, TheFluff, Plorkyeran, others
FRIMSource FRIMSource is an AviSynth plugin for sequential reading of elementary or transport streams (MPEG2, H.264 AVC/MVC-3D, VC1). YV12 Plugin videofan3d
HDVInfo Grabs the timestamp and recording date info out of a M2T-D2V file N/A Plugin paviko
ImageSequence Load png, jpg, bmp, pcx, tga and gif image sequences using the Corona Image I/O Library. CoronaSequence/RawSequence. RGB32 Plugin WarpEnterprises
Immaavs ImmaRead uses the ImageMagick libraries to read images. Many formats are supported including animations, multipage files, image sequences and images with different sizes. Plugin Wilbert Dijkhof
IUF Import Uncompressed File. Must be uncompressed! Supported uncompressed Formats: avi, omf(avid), pxr(pixar), mov(24/32bit quicktime), cineon. Can export as well. See discussion. RGB Plugin hanfrunz
JpegSource An advanced JPEG decoder for Avisynth 2.6. See discussion. Y8, YV12, YV16, YV24, YV411 Plugin SEt
LSMASHSource A source plugin for audio and video, it uses Libav (libavcodec) to decode all supported A/V formats. See discussion. RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411 Plugin VFR-maniac
NicAudio Audio Plugins for Audio: MPEGAudio/AC3/DTS/LPCM and other uncompressed formats. Formerly known As EvilMPASource. See discussion, continued discussion. N/A Plugin Nic
OmfSource Opens the AVID OMF file format (video only, and only works with captured files). See discussion. YUY2, YV12 Plugin tateu
QTSource Quicktime Import/Export Filter using an existing installation of Quicktime 6/7. See discussion. RGB32, RGB24, YUY2 Plugin tateu
R3DSource Redcode RAW source plugin to load R3D clips. See discussion. RGB32 Plugin Gábor Kertai
RawSource26 Loads raw video data directly from files. Further modifications (most raw formats, YUV4MPEG2 compatible with latest spec) discussion. RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411 Plugin Chikuzen

(function "RawReader")

Loads raw video data directly from files, similarly to RawSource, but also allows for skipping headers, and extra formats (long list to help anyone doing a search): GREY, Y8, interleaved RGB, BGR (which is RGB24), BGRA (which is RGB32), ARBG, ABGR, RGBA, interleaved YUV (which is YCbCr), YUY2, UYVY, AYUV, planar YUV formats YUV444, YUV422, YUV420 (as YV12), YUV420 (as IMC2), and some raw ImageMagick formats. Some supports for different bit-depths. Includes YUVInterleaved.avsi, InterleavedConversions.avsi, and PlanarConversions.avsi. Discussion. RGB24, RGB32, YUY2, YV12 Plugin with scripts PitifulInsect
VapourSource VapourSynth script reader for AviSynth2.6x. Discussion. RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24 Plugin Chikuzen
VideoInputSource Capture video frames from video capture card or webcam in real-time. RGB24 Plugin fieliapm

Restoration Filters

These remove effects or artifacts introduced (deliberately or accidentally) into the source video. Denoisers are classified separately.


Filter Description Color format Plugin / Script Author
DAA Anti-aliasing with contra-sharpening. YV12 Script Didée
mcDAA3 Motion-Compensated Anti-aliasing with contra-sharpening, can deal with ifade too, created because when applied daa3 to fixed scenes, it could damage some details and other issues. See discussion YV12 Script AmjadSONY
MAA2 Updated version of the MAA antialising script. Y8, YV12, YV24 Script line0
santiag Simple anti-aliasing with independent horizontal and vertical anti-aliasing strength. YV12 Script cretindesalpes
SharpAAMCmod High quality MoComped AntiAliasing script, also a line darkener since it uses edge masking to apply tweakable warp-sharpening, "normal" sharpening and line darkening with optional temporal stabilization of these edges. Part of AnimeIVTC. See [1] and [2] YV12 Script thetoof
TIsophote A level-set (isophote) smoothing filter. YUY2, YV12 Plugin tritical
xaa Versatile anti-aliasing script. Y8, YV12, YV24 Script Desbreko

Chroma correction

Filter Description Color format Plugin / Script Author
BT709ToBT601 Convert from BT.709 (HDTV) to BT.601 (SDTV) colorimetry. YV12 Plugin Tom Barry
caf Chromatic Aberration Fixer. YV12 Script Torchlight
ChromaShift This filter will shift the chrominance information by an even number of pixels, in either horizontal direction. It can also apply an overall vertical shift of the total chrominance information, up or down. It is primarily intended to correct improper colour registration. See discussion. YV12, YUY2, RGB32 Plugin Simon Walters
ChromaShiftSP This script can shift chroma in all directions with subpixel accuracy. YV12, YV16, YV24, YV411 Script IanB, McCauley
ColorMatrix ColorMatrix corrects the colors of MPEG-2 streams. More correctly, many MPEG-2 streams use slightly different coefficients (called Rec.709) for storing the color information than AviSynth's color conversion routines or the XviD/DivX decoders (called Rec.601) do, with the result that DivX/XviD clips or MPEG-2 clips encoded by TMPGEnc/QuEnc are displayed with slighty off colors. This can be checked by opening the MPEG-2 stream directly in VDubMod. See discussion. YV12, YUY2 Plugin Wilbert Dijkhof

tritical (v2.0+)

FixChromaBleeding Fixes area of chroma bleeding by shifting the chroma and lowering the saturation in the affected areas. See discussion YV12 Script Alex Jordan
FixChromaBleedingMod Fixes area of chroma bleeding by shifting the chroma and lowering the saturation in the affected areas. See discussion YV12, YUY2, YV411 Script AmjadSONY
FixChromaticAberration FixChromaticAberration resizes (and crops) the red/green/blue channels of the image separately. This helps to minimize the colored edges next to the image corners that result from lenses with chromatic aberration. See discussion. RGB24, RGB32 Script Martin Wagener
MoveChroma Chroma shifting filter; can be used to independently shift the U/V channels left or right. YUY2, YV12 Plugin apechironnup
ReInterpolate411 This is a fast and simple filter to correct the improper 4:1:1 => 4:2:2 conversion that seems to occur with some DV/4:1:1 codecs. YUY2 Plugin Tom Barry
ReInterpolate420 Usually, DV decoders upsample PAL DV (which is YV12) to YUY2 using point sampling. This plugin re-interpolates the original chroma samples. YUY2 Plugin Wilbert Dijkhof

Fizick (v3)


Filter Description Color format Plugin / Script Author
AdaptDBMC Luma / Fade / Blue adaptive debanding script. YV12 Script 06_taro
GradFun2db A simple and fast debanding filter. See Wikipedia: Color Banding YV12 Plugin Prunedtree
GradFun2DBmod An advanced debanding script based on GradFun2DB. YV12 Script LaTo
GradFun3 This debanding script, part of the Dither package, has several gradient smoothing algorithms, including a bilateral filter. It uses an ordered dithering, which has a good resilience to lossy compression. YV12, YV16, YV24, Y8, YV411 Script cretindesalpes
flash3kyuu_deband Fast debanding plugin ported from AviUtl. YV12, YUY2, YV16, YV24, Y8, YV411 Plugin SAPikachu
LumaDB Fast 8-bit debanding filter with luma-adaptive grain and mask. Used to process luma only. See discussion. YV12 Script 06_taro
LumaDBL Fast 16-bit debanding filter with luma-adaptive grain and mask. Used to process luma only. Works in 16-bit internally and can also input/output 16-bit. See discussion. YV12 Script 06_taro


Filter Description Color format Plugin / Script Author
BlockKiller Deblocking filter, see discussion. YUY2, YV12 Script Jawed
BlockTerminator Deblocking filter, see discussion. YUY2, YV12 Script foxyshadis
DeBlock Deblocking filter, see discussion, and updated version for AviSynth 2.6. DGDecode uses DeBlock. YUY2, YV12 Plugin Fizick / Manao
Deblock_QED "A postprocessed Deblock(): Uses full frequencies of Deblock's changes on block borders, but DCT-lowpassed changes on block interiours." Didée. See discussion. For updated Deblock QED see this discussion YV12 Script Didée
DeblockPP7 A port of the MPlayer PP7 deblocking filter. See discussion. YUY2, YV12 Plugin John Doe
FunkyDeBlock Deblocking script based on BlindPP and high/low pass separation. See discussion. YV12 Script Mug Funky
MDeblock Plugin for removing block artifacts, see homepage. YV12 Plugin Kassandro
SmoothD Filter to deblock frames while keeping high frequency detail. See discussion. YV12 Plugin Tobias Bergmann
SmoothD2 Deblocking filter. Rewrite of SmoothD. Faster, better detail preservation, optional chroma deblocking. See discussion. YV12 Plugin Jim Conklin
SmoothDeblock Slow and complex, but produces very good results - especially on severely blocky sources - in a similar manner to TempGaussMC and QTGMC. See discussion and an overall comment. YV12 Script
(alt source)
Unblock UnBlock is a filter that removes the "blockiness" of heavily or moderately compressed images with statistical approach. See discussion. YV12 Plugin Fizick


Filter Description Color format Plugin / Script Author
abcxyz Filter to remove halos. See discussion. YV12 Script Didée
BlindDeHalo3 Filter to remove edge enhancement artifacts. See discussion. YV12 Script Didée
DeHalo_alpha Very powerful filter to remove edge enhancement artifacts. See discussion. YV12 Script Didée
DeHaloHmod Another halo reducer, it includes lots of options to tweak for best performance. See discussion YV12 Script AmjadSONY
FineDehalo Halo removal script that uses DeHalo_alpha with a few masks and optional contra-sharpening to try remove halos without removing important details (like line edges). Y8, YV12, YV16, YV24 Script cretindesalpes
Mask_DHA A combination of the best of DeHalo_alpha and BlindDeHalo3, plus a few minor tweaks to the masking. See discussion. YV12 Script 'Orum
VHSHaloremover Quick & dirty halo removal. Will introduce some blurriness, but the halos are so huge you can’t avoid it. See [3] Y8, YV12, YV16, YV24 Script cretindesalpes
YAHR Basic filter with no variables to remove edge enhancement artifacts. See [4] YV12 Script Didée
YAHRmod Basic filter used to reduce halos in modern DVD and other cases. YV12 Script AmjadSONY

Deringing & Mosquito Noise

Filter Description Color format Plugin / Script Author
aWarpSharpDering Tries to clean up slight ringing around edges by heavily aWarpSharp-ing the image and then applying it only to the areas where the difference is small enough so detail isn't destroyed. YV12 Script Leak
BlindDeRing Deringing filter. YV12 Plugin krieger2005
EdgeCleaner A simple edge cleaning and weak dehaloing function. See discussion. YV12 Script canuckerfan
HQDering Applies deringing by using a smart smoother near edges (where ringing occurs) only. See here and here for details. YV12 Script mf
HQDering mod Applies deringing by using a smart smoother near edges (where ringing occurs) only. YV12 Script mawen1250
LazyDering Tries to clean up slight ringing around edges by applying aWarpSharp2 only to areas where the difference is small enough so detail isn't destroyed. YV12 Script Leak, RazorbladeByte
MosquitoNR A noise reduction filter designed for mosquito noise, which is often caused by lossy compression. Y8, YV411, YV12, YV16, YV24, YUY2 Plugin b_inary
ungibbs ungibbs, a gibbs artifact remover. YV12 Script *.mp4 guy
WarpDeRing Uses aWarpSharp2's flattening to clean out ringing/smaller halos, then runs some masks to preserve the edges and avoid the thinning. YV12 Script mirkosp
WarpDeRing_faster Same as WarpDeRing but may be a bit faster. YV12 Script mirkosp


Filter Description Color format Plugin / Script Author
Area A port of Gunnar Thalin's VirtualDub filter "Deinterlace - area based" to AviSynth. RGB32 Plugin Donald Graft // Gunnar Thalin
BlendBob Filter designed for use after a smart bob; blends every other frame with the closest matching neighbouring frame. See discussion. YV12 Plugin Kurt Prünner
DGBob This filter splits each field of the source into its own frame and then adaptively creates the missing lines either by interpolating the current field or by using the previous field's data. See discussion. RGB, YUY2, YV12 Plugin Donald Graft
Decomb The FieldDeinterlace filter provides functionality similar to the postprocessing function of Telecide. You can use it for pure interlaced streams (that is, those not containing telecined progressive frames). The name refers to the fact that field mode differencing is used. YUY2, YUY2 Plugin Donald Graft
EEDI2 EEDI2 resizes an image by 2x in the vertical direction by copying the existing image to 2*y(n) and interpolating the missing field. It is intended for edge-directed interpolation for deinterlacing (i.e. not really made for resizing a normal image, but can do that as well). YUY2, YV12 Plugin tritical
EEDI3 Another edge directed interpolation filter. Works by minimizing a cost functional involving every pixel in a scan line. eedi3 is good for deinterlacing and enlarging images by the powers of 2. RGB24, YUY2, YV12 Plugin tritical
FieldHint FieldHint combines arbitrary fields from the input clip, and optionally adds Telecide-compatible postprocessing hints. YV12 Plugin Loren Merritt
IBob Interpolating Bob works identically to the Avisynth built-in Bob filter except that it uses linear interpolation instead of bicubic resizing. See discussion. YUY2, YV12 Plugin Kevin Atkinson
KernelDeint This filter deinterlaces using a kernel approach. It gives greatly improved vertical resolution in deinterlaced areas compared to simple field discarding. Superceded by LeakKernelDeint, see the description below in this table. RGB, YUY2, YV12 Plugin Donald Graft
LeakKernelDeint This filter deinterlaces using a kernel approach. It gives greatly improved vertical resolution in deinterlaced areas compared to simple field discarding. Compared to KernelDeint, it is low-level optimized (for speed) and provides some useful new functionality. As the original author of KernelDeint() states, LeakKernelDeint() is the preferred version to use. RGB32, YUY2, YV12 Plugin Kurt Prünner
nnedi3 nnedi3 is an intra-field only deinterlacer. It takes in a frame, throws away one field, and then interpolates the missing pixels using only information from the kept field. It also has same rate and double rate modes. RGB24, YUY2, YV12 Plugin tritical
nnedi3ocl OpenCL rewrite of nnedi3. See discussion. Y8, YV12, YV16, YV24, YV411 Plugin SEt
QTGMC by -Vit- [5] A new deinterlacer based on TempGaussMC_beta2. It's faster and has a presets system for speed/quality selection. There are also several new features including progressive support and noise/grain processing. The script also contains extensive comments to better describe the settings and the workings of the TGMC algorithm. YUY2, YV12 Script -Vit-
SangNom2 Reimplementation of the old SangNom plugin. See discussion. Y8,YV12, YV16, YV24, YV411 Plugin tp7
SmoothDeinterlace This contains an adaptive deinterlacer plugin for (AVISynth). It is based on Gunnar Thalin's Smooth Deinterlace plugin for VirtualDub.

See also SmoothDeinterlaceFunctions

RGB32, YUY2, YV12 Plugin Gunnar Thalin
TDeint TDeint is a bi-directionally, motion adaptive (sharp) deinterlacer. It can also adaptively choose between using per-field and per-pixel motion adaptivity. It can use cubic interpolation, kernel interpolation (with temporal direction switching), or one of two forms of modified ELA interpolation which help to reduce "jaggy" edges in moving areas where interpolation must be used. TDeint also supports user overrides through an input file, and can act as a smart bobber or same frame rate deinterlacer, as well as an IVTC post-processor. See discussion. YUY2, YV12 Plugin tritical
TelecideHints The filter process the stats file to get the usual progressive matches and identify VFR sections. YUY2, YV12 Plugin Myrsloik
TempGaussMC Motion-compensated bob deinterlacer, based on temporal gaussian blurring. reduces noise/grain of the source and does NOT leave the original fields unchanged. Output is rich with details and very stable. Is SLOW YV12 Script Didée
Yadif Port of YADIF (Yet Another DeInterlacing Filter) from MPlayer by Michael Niedermayer (http://www.mplayerhq.hu). It check pixels of previous, current and next frames to re-create the missed field by some local adaptive method (edge-directed interpolation) and uses spatial check to prevent most artifacts. YUY2, YV12 Plugin Fizick
yadifmod Modified version of Fizick's avisynth filter port of yadif from mplayer. This version doesn't internally generate spatial predictions, but takes them from an external clip. It also is not an Avisynth_C plugin (just a normal one). YUY2, YV12 Plugin tritical
yadifmod2 Yadif + yadifmod for avisynth2.6/avisynth+. See discussion. YV24, YV16, YV12, YV411, Y8 Plugin Chikuzen

Duplicate Frame Detectors

Filter Description Color format Plugin / Script Author
ApparentFPS Shows underlying framerate where a clip has had many duplicates inserted, easier than counting unique frames. (see docs) Plugin StainlessS
Dup A robust duplicate frame detector; a frame that is determined to be close enough to its predecessor to be considered a duplicate will be replaced by a copy of the predecessor. This can significantly reduce the size of encoded clips with virtually no visual effect. Provides the capability to replace frames with a blend of all the duplicates, providing a valuable noise reduction. See original and continued discussion. YV12, YUY2 Plugin

Update (v2.32a)

Donald Graft
Dupped Another frame duplication function, similar to Dup, but hopefully more accurate. See discussion. YV12 Script Corran
DeDup Remove (drop) duplicate frames in the interest of compression quality and speed. Resulting clip will have a variable frame rate. YV12, YUY2 Plugin Loren Merritt
ExactDedup ExactDedup is a filter intended to remove frames that are exact duplicates of each other, leaving only the first and (optionally) last frames of a run intact, and generates a Matroska v2 timecodes file with timing information for the ensuing stream. See discussion. RGB24 RGB32, YV12 Plugin Steve Melenchuk, Arick Chan
GetDups Selecting unique duplicate frames from clip, it return frames which have copies only, by one from the series (group). Made for 8mm films. Y8, YUY2, YV12, YV16, YV24, YV411 Plugin Fizick
MorphDups Replace duplicate frames by interpolations. YV12 Script sven_x

Fieldblending and Frameblending removal

Filter Description Color format Plugin / Script Author
c_deblend c_deblend is a simple blend replacing function like unblend or removeblend. Superseded by srestore. YV12 Script MOmonster
Cdeint Restores 24fps FILM out of a fieldblended FILM -> Telecine -> NTSC -> Blendconversion -> PAL - Video (alternative for Restore24). YV12 Script MOmonster
Deblend See discussion. Script actionman133
ExBlend ExBlend is a plugin to repair damage caused by blend deinterlacing of telecined clips, which results in a double blend, every five frames, GGGBBGGGBBGGGBB etc where 'G' is good and 'B' is blend. See discussion YV12, YUY2 Plugin StainlessS
FixBlendIVTC A blend replacing/frame restoring function for doubleblends caused by blend-deinterlacing of telecined sources. Superseded by srestore. YV12 Script MOmonster
mrestore Uses conditional frame evaluation to undo standard conversions with blends. Superseded by srestore. YV12 Script MOmonster
RemoveBlend This filter is used to remove blended fields/frames. See discussion. YV12 Plugin violao
Restore24 Restore24 is an AviSynth filter that is able to do the nearly impossible: Restore 24fps FILM out of a fieldblended FILM -> Telecine -> NTSC -> Blendconversion -> PAL - Video. See discussion. YV12 Script scharfis_brain
RestoreFPS RestoreFPS reverses the kind of blending generated by ConvertFPS, restoring original framerate. It will work perfectly well on any regular blend pattern. YV12 Plugin mg262
Srestore Replacement function for mrestore, c_deblend, FixBlendIVTC and DupHq. YV12 script MOmonster
Specials Helps restore video with blended fields/frames using a reference source. See discussion and much more information here and here. YV12 Plugin wonkey_monkey
Unblend Unblend is based on warpenterprise's deblend algorithm and neuron2's decimate code, with YV12 support only. The aim is the same of deblend. See discussion. YV12 Plugin Bach

Film Damage correction

Filter Description Color format Plugin / Script Author
DeScratch DeScratch removes vertical scratches from films. Also it can be used for removing of horizontal noise lines such as drop-outs from analog VHS captures (after image rotation). YV12 Plugin Fizick
DeSpot This filter is designed to remove temporal noise in the form of dots (spots) and streaks found in some videos. The filter is also useful for restoration (cleaning) of old telecined 8mm (and other) films from spots (from dust) and some stripes (scratches). YV12 Plugin Fizick
deVCR deVCR eliminates (to a certain degree) the annoying horizontal lines that keep crawling around your VHS or Beta recorded video. See discussion here and here. Script Ricardo Garcia
VideoFred's Film Restoring A suite of scripts for film restoring. YV12 Script videoFred
RemoveDirt RemoveDirt is a temporal cleaner for AviSynth 2.5x. It has now become an AVS script function, which involves RestoreMotionBlocks and various filters from the RemoveGrain package. YV12, YUY2 Plugin Kassandro

Frequency Interference removal

Filter Description Color format Plugin / Script Author
DeFreq Defreq uses Fast Fourier Transform method for frequency selecting an removing. See discussion. YV12, YUY2 Plugin Fizick
FanFilter Regular vertical frequency interference is filtered in spatial domain. YV12, YUY2, RGB32, RGB24 Plugin V. C. Mohan

IVTC & Decimation

Filter Description Color format Plugin / Script Author
AnimeIVTC What it does:
  • High quality adaptative field matching for hard telecine
  • Bob, remove the blends and decimate back to the desired framerate for DHT/field-blended
  • Creating a VFR clip for hybrid sources
  • Bob the interlaced credits, blend-deinterlacing the background while doing minimal damage on the progressive credits, convert their framerate to match the episode's and splice them with it OR leave them @ 30p to create a VFR clip
  • Very good combing removal and anti-aliasing functions

See [6] and See [7] for mod version.

YV12 Script thetoof
BruteIVTC Some information here YV12 Plugin Marc FD
DOCI Destruction of Chroma Interlacing fixes a problem where you captured pulleddown video in YV12. In the combed frames, the chroma from two frames has been blended, leading to a ghosting effect when IVTC'd. This filter reconstructs the chroma exactly and fixes the problem. YV12 Script jmac698
FDecimate The FDecimate() filter provides extended decimation capabilities not available from Decimate(). It can remove frames from a clip to achieve the desired frame rate, while retaining audio/video synchronization. It preferentially removes duplicate frames where possible. ("FDecimate" stands for "Free Decimate", which implies that the output frame rate may be freely chosen, and is not limited to 1-in-N decimation). YUY2, YV12 Plugin Donald Graft
GreedyHMA GreedyHMA is an Avisynth filter that executes DScaler's Greedy/HM algorithm code to perform pulldown matching, filtering, and video deinterlace. It has pretty much been superseded by Donald Graft's DeComb package. However there may be occasions where it sometimes gives preferable results, especially with some bad PAL clips. YUY2 Plugin Tom Barry
IT Inverse Telecine plugin. YUY2, YV12 Plugin thejam79 / minamina
ivtc_txt60mc Deinterlaces telecined footage with that has been overlayed scrolling text at 60i. More information here (last post). YV12 Script cretindesalpes aka Firesledge
JIVTC JIVTC applies inverse telecine in a way to minimize artifacts often seen on Japanese TV broadcasts followed by recalculating the fields that might still contain some. YV12 Script lovesyk
MDec2 MDec2 is a 2 pass decimating filter, acting much like the MultiDecimate filter. RGB32, RGB24, ]YUY2, Y8, YV12, YV16, YV24, YV411 Plugin StainlessS
MultiDecimate Removes N out of every M frames, taking the frames most similar to their predecessors. See discussion. YUY2 Plugin Donald Graft
PFR PFR (Progressive Frame Restorer) is an Avisynth filter that attempts to produce progressive frames from a mixed progressive/interlaced/IVTCed source. YUY2 Plugin Simon Walters
ReMatch ReMatch is a field matching plugin, specifically for anime. YV12 Plugin Dan Donovan
RePal Discussion / repal_29.97Hz_mod YUY2, YV12 Plugin - Mod Bach
SmartDecimate Smart Decimate removes telecine by combining telecine fields and decimating at the same time, which is different from the traditional approach of matching telecine frames and then removing duplicates. See discussion. YUY2, YV12 Plugin Kevin Atkinson
Decomb The Telecide and Decimate filters can be combined to implement IVTC. YUY2, YV12 Plugin Donald Graft
TIVTC A package containing these 7 filters: TFM, TDecimate, MergeHints, FrameDiff, FieldDiff, ShowCombedTIVTC, and RequestLinear. Also contains these 3 conditional functions: IsCombedTIVTC, CFieldDiff, and CFrameDiff. Designed primarily for IVTC operations. Discussion YUY2, YV12 Plugin tritical
TPRIVTC TPRIVTC stands for TMPEG InVerse Telecine, i.e. the process where an 29.97fps interlaced NTSC clip is converted to 23.976fps while removing interlaced frames. Readme RGB24, RGB32, YUY2, YV12 Plugin daxab, Kurosu
UnComb Filter for matching up even and odd fields of properly telecined NTSC or PAL film source video. See discussion. YV12 Plugin Tom Barry
WeaveMan Remove arbitrary pulldown patterns manually; meant for perfectionists to undo non-standard 24->25 fps, 25->29.97 fps, etc. telecine conversions, along with other weird telecine anomalies created by broadcasters speeding up film-sourced content. See sample case here. YUY2, YV12 Plugin ChiDragon
IvtcBlend Waka demonstrated an IvtcBlend function that uses the information in the "extra" fields of a telecined source to help combat temporal noise. Script

Ghost Removal

Filter Description Color format Plugin / Script Author
FixVHSOversharp FixVHSOversharp attempts to repair the light and dark halos that follow high contrast edges found in VHS sources. See discussion. YUY2 Plugin MrTibs
GhostBuster Ghostbuster is an Avisynth filter for removing "ghosts" from a clip. A ghost in this context is a faint copy of the picture offset horizontally. It works by either subtracting or adding the image from itself at the specified offset. With some tweaking the result, while not perfect, can be very pleasing. See discussion here and here. YUY2 Plugin SansGrip
LGhost Plugin intended for ghost removal but can also reduce edge (ringing) artifacts. See discussion. YV12, YUY2 Plugin minamina

Logo Removal

Filter Description Color format Plugin / Script Author
DeKafka This fairly simple filter washes away those annoying bugs from broadcast clips. Any Script poptone
DeLogo DeLogo Filter for VirtualDub. Removes static elements, e.g. logos or watermarks, from the video stream. It can remove either opaque elements or alpha blended, the latter even without destroying the picture beneath. RGB32 Plugin & Script Karel Suhajda
InpaintFunc Script for logo removal using inpainting. Can remove alpha blended or opaque logos with a basic postprocessing to hide artifacts. RGB32, RGB24, YUY2, YV12 Script Reuf Toc
rm_logo Combination of deblending and inpainting to remove logos with adjustable postprocessing to further hide artifacts. See [8] YV12 Script Spuds
s_ExLogo De-logo function with clipping (Dekafka mod). YUY2 Script StainlessS
X-Logo X-Logo AviSynth plugin and VirtualDub filter. Removes opaque logos. See discussion and tutorial. RGB32, YUY2, YV12 Plugin Leuf

Luma Equalization

Filter Description Color format Plugin / Script Author
Antiflicker "A quick-and-dirty port of my VirtualDub filter (which sucks, by the way; it was one of my first filters)."

See discussion.

YUY2 Plugin Donald Graft
DeFlicker Can remove old film intensity flicker by temporal mean luma smoothing. Can also correct blinding of automatic gain control after flashes. YV12, YUY2 Plugin Fizick
Dumb Deflicker Gathers average luma of frames, smoothens that with TemporalSoften, and applies the obtained difference to the original input. It is pretty simple, read "dumb". See discussion YV12 Script Didée
EquLines Equalizes total luminosity in pairs of even and odd lines. Useful for removing inter-line differences from telecined films. YV12, YUY2 Plugin Fizick
LMFlicker LMFlicker is intended to reduce flickering in some film/VHS transfers. FieldFade is a similar concept, but applied on a per-field basis, to reduce combing in a video where fades were applied after telecine. YV12 Plugin Loren Merritt
Local Deflicker Deflickers only part of a frame. See discussion. YV12 Script prokhozhijj
ReduceFlicker Reduces temporal oscillations in clips; should be applied before deinterlacing. Contains ReduceFlicker, ReduceFluctuations, and LockClense. See discussion. YV12, YUY2 Plugin Kassandro
TimeLapseDF Designed to remove luminosity flicker in time lapse photography. Unlike most other flicker removal filters, utilizes cumulative distribution function in addition to average frame luminosity. See discussion. YV12, YUY2 32-Bit Plugin Denis Zhitenev
Vinverse A simple but effective plugin to remove residual combing. Y8, YV12, YV16, YV24, YV411 Plugin Didée, tritical, tp7
wdeflicker Modifies luma of a source clip by refering to a temporally super-smoothed clip. Heights of source and reference clips must match. YV12, YUY2 Plugin Osmiridium

Rainbow & Dot Crawl Removal

Filter Description Color format Plugin / Script Author
Bifrost Bifrost uses temporal blending to remove or at least reduce the effect of rainbows. YV12 Plugin Myrsloik, dubhater
CC Dot crawl and rainbow removal. YV12, YUY2 Plugin chiyo-clone
Checkmate Spatial-temporal dot crawl removal. See Checkmate for AviSynth 2.6. YV12 Plugin mf / prunedtree
ChubbyRain Spatial-temporal rainbow reducing script. YV12 Script Mug Funky
ChubbyRain2 Spatial-temporal rainbow reducing script based on ChubbyRain. YV12 Script Lothar
DeCrawl Spatial and temporal dot crawl removal, particularly for animated material. YV12 Plugin Dan Donovan
DeCross Cross Color Reduction. Also known as rainbows. YV12, YUY2 Plugin minamina
DeDot Removes dot crawl and may also be useful for rainbows. YV12, YUY2 Plugin thejam79 / minamina
DeRainbow A simple script to reduce rainbows. See discussion. YV12, YUY2 Script sh0dan
DFMDeRainbow Creates mask to process only edges; rainbows are removed by hitting chroma planes with two passes of FluxSmooth (hence "Double-Flux-Mask"). YV12 Script Scintilla
GuavaComb Removes dot crawl, rainbows, and some kinds of shimmering. See discussion YUY2 Plugin Lindsey Dubb
LUTDeCrawl Purely spatial; only targets pixels for dot crawl removal if luma is fluctuating and (optionally) chroma is not. YV12 Script Scintilla
LUTDeRainbow Purely spatial; only targets pixels for derainbowing if chroma is fluctuating and (optionally) luma is not. YV12 Script Scintilla
mfRainbow Derainbows in areas of high Y, U and V frequencies, which fluctuate heavily. YV12 Script mf
Rainbow_Smooth A small spatial derainbow function. It uses SmoothUV to smooth out chroma and edge masking to prevent color bleeding. YV12 Script MOmonster
SmartSSIQ SSIQ can alter the color on the entire picture. So this script first applies SSIQ to the entire picture. Then it locates the edges. Finally, it layers ONLY the de-rainbowed edges onto the original video. YV12 Script LB
SSIQ Rainbow remover. A port of the VirtualDub plugin Smart Smoother IQ. YV12, YUY2, RGB32 Plugin Myrsloik
TComb A temporal comb filter (it reduces cross-luminance (rainbowing) and cross-chrominance (dot crawl) artifacts in static areas of the picture). See TComb for AviSynth 2.6. YV12, YUY2 Plugin tritical
YARK Yet Another Rainbow Killer. Based on mfRainbow v0.31, chubbyrain2, and various other scripts shown here. YV12 Script jase99
ASTDR ASTDR uses mt_motion for motion and edge to deal with moving Rainbow and apply mask once more in the opposite way to keep around the lines as they are. It uses DeCross and other filters to remove Rainbow. ASTDRmc avoids chroma bleeding in moving scenes. See post on doom9.org. YV12 Script AmjadSONY


Filter Description Color format Plugin / Script Author
CelStabilize Script which holds a fixed background steady. Doesn't work well with pans or fades. YV12 Script mg262
DePan Tools for estimation and compensation of global motion (pan) .See [9] YUY2, YV12 Plugin Fizick
DepanSafe Another DePan stabilization script. YV12 Script tophf
Deshaker3D Experimental 3D image stabiliser (VDub Deshaker required). RGB32 Plugin wonkey_monkey
SpatialAlign Fix spatial alignment between two clips containing similar scenes. Any? Script StainlessS
Stab Simple but powerful script to remove small high frequency jitter that appears often on old/bad transfers. See [10] YV12 Script g-force
Stabilization Tools Pack A set of tools to work with common stabilization issues, mainly from telecine process. YV12 Script Dogway
TBC Stabilizes horizontal jitter in video from analog VCRs, similar to the function of a Time Base Corrector.(note: will cause SEt's Avisynth 2.6 MT to stop working) YV12 Script halifaxgeorge


Strength/Quality of Denoisers

(need subclassification)

Filter Description Color format Plugin / Script Author
AdaptiveMedian This is an adaptive Median Filter for eliminating certain types of noise. It uses local statistics (minimum, maximum and median values) of a moving local grid, and changes grid size depending on local statistics. RGB24, RGB32, Y8, YUY2, YV12, YV16, YV24, YV411 Plugin V. C. Mohan
Atc Alternate Temporal Cleaner; a fast temporal cleaner with some cool stuff. YV12 Plugin Marc FD
ColourizeSmooth ColourizeSmooth uses a general colourizing algorithm to smooth a given clip. ColourizeSmooth is based on this algorithm. See discussion YUY2, YV12 Plugin insanedesio
ConditionalTemporalMedian This filter is designed to remove temporal noise in the form of small dots and streaks found in some videos. A common cause of this is dirty VHS heads but I have also seen small black or white streaks in broadcast material. YV12 Plugin Kevin Atkinson
Deathray OpenCL GPU accelerated spatial/temporal non-local means de-noising. See readme and GitHub source code repository. YV12 Plugin Jawed
DeNoise This is an adaptive local noise reduction filter. It uses global variance of the noise, local mean and local variance in a moving grid of specified size. It tries to preserve edges as closely as possible. The global variance value can be specified or it can be computed from a window. The global variance can have one value for the entire clip or can vary frame to frame linearly or computed from a window with its coordinates linearly moving with frame numbers. RGB24, RGB32, YUY2, YV12 Plugin V. C. Mohan
DNR2 Dynamic Noise Reduction 2 is based on the VirtualDub DNR filter by Steve Don and Avery Lee. RGB32, YUY2, YV12 Plugin kiraru2002
DeSaltPepper Remove white and black noise. Any Plugin V. C. Mohan
ExtendedBilateral ExtendedBilateral extends the regular bilateral filtering process by adding an "initial estimation preprocess." It is similar in operation to TBilateral and offers many of the same options (though not all) while adding the preprocess. See discussion. YUY2, YV12 Plugin insanedesio
FFTQuiver Remove periodic noise. Useful for analog interference. Any Plugin V. C. Mohan
SmootherHiQ VirtualDub's Smart Smoother High Quality for AviSynth, see archived documentation. YV12 Plugin sh0dan
TNLMeans TNLMeans is an implementation of the NL-means denoising algorithm. - discussion - TNLMeans built with ICL10
  • TfNLMeans - an AviSynth 2.6 fork of TNLMeans 1.0.3
YV12, YUY2 Plugin tritical
KNLMeansCL KNLMeans is an optimized OpenCL implementation of the Non-local means denoising algorithm. See discussion.. View on GitHub. RGB32, Y8, YV12, YV16, YV24, YV411 Plugin Khanattila
xNLMeans xNLMeans is an AviSynth plugin implementation of the Non Local Means denoising proposition. This implementation provides several optimizations and extensions over the original proposition and other implementations. RGB24, RGB32, Y8, YUY2, YV12, YV16, YV24, YV411 Plugin martin53

Spatial Denoisers

Filter Description Color format Plugin / Script Author
_2DCleanYUY2 Averages pixels in a configurable radius around a source pixel that are within a configurable threshold of the central pixel. A port of the VirtualDub plugin 2D Cleaner. YV12, YUY2 Plugin kiraru2002, xeon533
DctFilter An experimental filter that operates on DCT coefficients. YV12, YUY2 Plugin Tom Barry
DCTFun A fast spatial denoiser that does a hard thresholding of a complete 4x4 ICT transform. YV12 Plugin Prunedtree
eDeen eDeen is a ultra powerfull spatial denoiser for very experienced encoders only. YV12 Plugin Marc FD
frfun3b Fractal denoising. See discussion YV12 Plugin prunedtree
frfun3d Fractal denoising; frfun3d is a quality optimized frfun3b. See discussion YV12 Plugin prunedtree
frfun7 Fractal denoising. See discussion YV12 Plugin prunedtree
GPUBilateral In short, bilateral filter is a edge-preserving smooth filter. See discussion. RGB32 Plugin Sompon Virojanadara
Kuwahara This filter is an edge preserving spatial noise reduction filter. It applies spatial smoothing while preserving the edges. See discussion RGB24, RGB32 Plugin Wilbert Dijkhof
Msmooth Masked smoother, designed specifically for anime. YV12, RGB32 Plugin Donald Graft
SmoothUV A spatial denoising plugin based on Smart Smoother and Smart Smooth HiQ. YV12 Plugin Kurosu
SPresso A fast script to make SD content compress better while keeping the "original look". YV12 Script Didée
TBilateral TBilateral is a spatial smoothing filter that uses the bilateral filtering algorithm. It does a nice job of smoothing while retaining picture structure. YV12, YUY2 Plugin tritical
UnDot UnDot is a simple median filter for removing dots, that is stray orphan pixels and mosquito noise. It clips each pixel value to stay within min and max of its eight surrounding neighbors. See discussion. YUY2, YV12 Plugin Tom Barry
VagueDenoiser This is a Wavelet based Denoiser. Basically, it transforms each frame from the video input into the wavelet domain, using various wavelet filters. Then it applies some filtering to the obtained coefficients. See discussion. YV12, YUY2, RGB32 Plugin Lefungus, Kurosu, Fizick
VerticalCleaner Fast vertical cleaner. Parameter information here. Explanation of mode 2 here. YV12, YUY2 Plugin Kassandro

Temporal Denoisers

Filter Description Color format Plugin / Script Author
Cnr2 A fast chroma denoiser. Very effective against stationary rainbows and huge analogic chroma activity. Useful to filter VHS/TV caps. See discussion. YV12, YUY2 Plugin Marc FD, tritical
FluxSmooth Examines each pixel and compares it to the corresponding pixel in the previous and last frame. YV12, YUY2 Plugin SansGrip, sh0dan
GrapeSmoother This filter averages out visual noise between frames. YUY2 Plugin Lindsey Dubb
MVDegrain Strong and effective temporal denoiser. Part of the MVTools package. YV12, YUY2 Plugin Fizick
TemporalCleaner TemporalCleaner is an AviSynth port of the original port of the VirtualDub filter TemporalCleaner made by Jim Casaburi. YV12, YUY2 Plugin vlad59
TTempSmooth TTempSmooth is a motion adaptive (it only works on stationary parts of the picture), temporal smoothing filter. YV12, YUY2 Plugin tritical
Temporal Degrain SLOW but very effective at removing most grain from video sources. YV12 Script Didée, Sagekilla

Spatio-Temporal Denoisers

Filter Description Color format Plugin / Script Author
Convolution3D Convolution3D is a spatio-temporal smoother, it applies a 3D convolution filter to all pixels of consecutive frames. See discussion, continued. YV12 Plugin Sébastien Lucas
Deen Deen is a set of assembly-optimised denoisers, like various 3d and 2d convolutions. YV12 Plugin Marc FD
DenoiseMF A fast and accurate denoiser for a Full HD video from a H.264 camera. See discussion. YV12 Script rean
dfttest A 2D/3D frequency domain denoiser. See discussion. YUY2, YV12, YV16, YV24 Plugin tritical
dfttestMC A script that motion compensates dfttest. See discussion. YV12 Script thewebchat
DeGrainMedian Two stage Spatio-Temporal Limited Median filter for grain removal. See YV12, YUY2 Plugin Fizick
FFT3DFilter A 3D Frequency Domain filter - gives strong denoising and moderate sharpening. See discussion. FFT3DFilter built with Intel ICL10 compiler[11]. YV12, YUY2 Plugin Fizick
FFT3DGPU Similar algorithm to FFT3DFilter, but uses graphics hardware for increased speed. See discussion. YUY2, YV12 Plugin tsp
hqdn3d High Quality DeNoise 3D is an Avisynth 2.5 port of the MPlayer filter of the same name. It performs a 3-way low-pass filter, which can completely remove high-frequency noise while minimizing blending artifacts. YV12 Plugin Loren Merritt
MC_Spuds Motion compensated noise removal with sharpening. Extremely slow, but extremely effective. YV12 Script Spuds, Didée
MCTemporalDenoise Another high quality motion compensated noise removal script with an accompanying post-processing component (with loads of excess feature such as MC-Post-sharpening, MC-antialiasing, deblock, edgeclean and much more) YV12 Script LaTo
MipSmooth MipSmooth is a reinvention of SmoothHiQ and Convolution3D. MipSmooth was made to enable smoothing of larger pixel areas than 3x3(x3), to remove blocks and smoothing out low-frequency noise. See discussion. YV12 Plugin sh0dan
NoMoSmooth NoMoSmooth temporally denoises relatively static areas and a spatially denoises moving parts. In addition to this motion-based approach, NoMoSmooth employs another technique to try to retain as much existing detail as possible: only pixels that are "fluctuating" are smoothed. See discussion. YUY2 Plugin SansGrip
PeachSmoother PeachSmoother was designed to cope with the oddities of analog broadcast TV. YV12 Plugin Lindsey Dubb
RemoveDirtMC See discussion. YV12 Script Nephilis/A.SONY
RemoveGrain RemoveGrain is a plugin package containing various plugins for spatial and temporal denoising, repairing, sharpening, deinterlacing, and other utility functions. YV12, YUY2 Plugin Kassandro
RemoveGrainHD RemoveGrainHD is like RemoveGrain but intended for high definition content. It includes various spatial and temporal functions. See documentation. YV12, YUY2 Plugin Kassandro
RemoveNoiseMC Motion compensated filter for removing noise, larger spots and other dirt. Written as an alternative to the old Dust. Last update Nov 2006. It uses mvtools v1. Jenyok collected together all RemoveNoise and various filters functions and adapted to MVTools v2. YV12 Script Heini011
RgTools Modern rewrite of RemoveGrain, Repair, BackwardClense, Clense, ForwardClense and VerticalCleaner all in a single plugin. Y8, YV12, YV16, YV24, YV411 Plugin tp7
SMDegrain SMDegrain is a convenience function for using MDegrain, including 16bit and interlaced support, with extra capabilities for light sharpening and spatial filtering. YUY2, YV12 Script Dogway
STMedianFilter STMedianFilter is a (slightly motion compensated) spatial/temporal median filter. It fairly very fine grained, using only adjacent pixels in space and time, so it looks at the adjacent 26 locations to filter each location. YUY2, YV12 Plugin Tom Barry, Fizick
STPresso A fast script to make SD/720p content compress better without losing detail and original grain structure. See discussion. YV12 Script Didée
zzz_denoise Simple wrapper around a combination of dfttest and MDegrain3. Requires the Dither package. YV12 Script cretindesalpes

Adjustment Filters


Filter Description Color format Plugin / Script Author
Average A simple plugin that calculates weighted frame-by-frame average from multiple clips. Y8, YV12, YV16, YV24, YV411 Plugin tp7, mg262
AviSynthGimpLayer AviSynth Gimp-style Layer merge plugin. RGB24, RGB32 Plugin panzerboy66
BlockAverage A simple filter that just averages the Y values of each 2x2 pixel block in a YV12 image – U and V values are left alone as they already common to each 2x2 block in a progressive YV12 image. Just made to see if it satifies the requirements in this thread. YV12 Plugin Simon Walters
CheckMask A YV12 spatial dot finding filter for AviSynth. YV12 Plugin Dan Donovan
ColourMask Creates colour masks. YV12 Plugin mg262
CombMask A filter to create and process comb masks. These filters were written from scratch, but most of logic comes from tritical's TIVTC plugin. Y8, YV12, YV16, YV24, YV411 Plugin Chikuzen
Fusion Pyramidal image processing for video, it uses image pyramids to blend clips together (more commonly used in the creation of HDR images and image stitching). RGB32 Plugin wonkey_monkey
GraMaMa Gradient Mask Maker: Creates a mask (either a gradient or black/white) given a prescribed shape (such as circle, ellipse, line, square or rectangle). YV12 Plugin E-Male,

Wilbert Dijkhof

ImasMultiColorKeying Chroma keying filter (Japanese) RGB32 Plugin Umezawa Takeshi
MasksPack This is a set of functions related to masks, so localized filtering will be able, giving you finer control on how and where to filter or protect certain zones. YV12 Script Dogway
Median A filter plugin for AviSynth which generates a pixel-by-pixel median of several clips. This is particularly useful for filtering out noise and glitches from multiple VHS/SVHS/8mm/Hi8 tape captures, but can be used for other purposes also. VideoHelp discussion RGB32, RGB24, YUY2, YV12 Plugin ajk
ParameterisedBlend ParameterisedBlend allows you to blend any number of frames within a clip, or blend any number of different clips together. You can use it as an extended, gamma-aware replacement for Merge(). YV12 Plugin PitifulInsect
Polygon The very raw beginning of a plugin for drawing high quality polygons (mainly to be used as masks) in AviSynth. RGB32 Plugin wonkey_monkey
RedAverage Frame-by-frame merging of multiple clips. Includes a masked average, weighted average, and a merge filter. YV12 Plugin redfordxx
ShapeMask A filter plugin for AviSynth that identifies bright areas such as projector screens at conferences and creates a mask out of them. The use case for which it was created is to deal with overly bright lectures, such as screen casts or talks where the speaker or producer hasn't followed presentation 101; Use light text on a dark background! See discussion. RGB32, RGB24, YUY2, YV12 Plugin jojje
TColorMask A simple color masking plugin for AviSynth. See discussion YV12, YV16, YV24, YV411 Plugin tp7
TCombMask TCombMask is a simple filter that creates a comb map that can (could) be used by other filters. It currently supports optional motion adaption, optional spatial adaption, optional luma <-> chroma linking, different thresholds for chroma and luma, and much more. YUY2, YV12 Plugin tritical
TMaskCleaner A really simple mask cleaning plugin for AviSynth based on mt_hysteresis. See discussion Y8, YV12, YV16, YV24, YV411 Plugin tp7
TMM TMM builds a motion-mask for TDeint, which TDeint uses via its 'emask' parameter. See discussion. YUY2, YV12 Plugin tritical
TMM2 A rewrite of TMM Y8, YV12, YV16, YV24 Plugin Chikuzen
Unpremultiply This plugin convert the input RGBA clip from premultiplied alpha to straight matted alpha. See discussion. RGB32 Plugin Josh Sutinen
uu_mt_blend Blend (Overlay, Layer) two clips using MaskTools. Wide selection of blend modes. YV12,RGB24,RGB32 Script rafriff42


Filter Description Color format Plugin / Script Author
BucketMedian BucketMedian is an implementation of spatial median filter adapting bucket (counting) sort algorithm. Y8, YV411, YV12, YV16, YV24 Plugin Chikuzen
GBlur Gaussian blur. Any Plugin V. C. Mohan
MedianBlur A plugin with 5 different types of median blur filters. See discussion. YV12 Plugin tsp
MedianBlur2 Implementation of constant time median filter for AviSynth 2.6, similar to MedianBlur. Y8, YV12, YV16, YV24, YV411 Plugin tp7
VariableBlur VariableBlur is a Gaussian, binomial or average blur filter with a variable radius (variance). RGB24, RGB32, YUY2, YV12, Plugin tsp, tritical
VariableMedian A simple median filter. See discussion RGB32 Plugin Simon Walters

Borders and Cropping

Filter Description Color format Plugin / Script Author
BorderControl It's designed to allow you to manipulate the regions at the top, bottom and sides of a frame. Set a black border, set a border region to be faded out and you can "smear" the border to save having to crop and resize the whole frame for the sake of a few pixels. Each border (top,bottom.left and right) can be manipulated independently. See discussion and documentation. YUY2, YV12 Plugin Simon Walters
FillMargins FillMargins is a simple AviSynth filter that fills the four margins of a video clip with the outer pixels of the unfilled portion. It takes integer 4 parameters specifying the size of the left, top, right, and bottom margins. These may be any value and do not have to be any particular multiple. See discussion here and here, additional documentation YV12 Plugin Tom Barry
Padding Duplicate edge pixels to the outside with PointResize. See discussion. RGB24, RGB32, YUY2, Y8, YV16, YV24, YV411 Script Didée

Filter Description Color format Plugin / Script Author
AutoCrop Automatically crops black borders (wikipedia:Letterbox, wikipedia:Pillar box, wikipedia:Windowbox) from a clip. Operates in preview mode (overlays the recommended cropping information) or cropping mode. Can also ensure width and height are multiples of specified numbers. See original discussion and updated AutoCrop discussion YUY2, YV12 Plugin Glenn Bussell, len0x
CropDetect Plugin to detect black bounding box in video and crop it easily. See discussion RGB32 plugin slavanap
RoboCrop RoboCrop is an automatic cropping solution to crop black borders from video clips, loosely based on (but using no code from) AutoCrop by Glenn Bussell. See discussion. RGB24, RGB32, YUY2, Y8, YV16, YV24, YV411 Plugin StainlessS

Colourspace Conversion

Filter Description Color format Plugin / Script Author
AutoYUY2 This filter is correctly converts YV12 to YUY2 without color bias. YV12 Plugin Donald Graft
Cnv2 Universal ConvertTo...() wrapper with some additional features. Requires GScript RGB24, RGB32, YUY2, Y8, YV12, YV16, YV24, YV411 Script martin53
ConvertToYCgCo Converts to the YCgCo colorspace. See discussion. RGB24, RGB32 Plugin xv
InterleavedConversions Tools for interleaving and de-interleaving 2, 3, and 4-channel data. Script PitifulInsect
ManualColorMatrix Can perform any matrix-based color conversion. See discussion. RGB24, RGB32, YV24 Plugin xv
nnedi3_resize16 An advanced script for high quality 16-bit image resizing and colorspace conversion. RGB24, RGB32, Y8, YV12, YV16, YV24 Script mawen1250
PlanarTools This plugin is a set of filters that offers converting packed(interleaved) formats to planar formats and vice versa. RGB24, RGB32, YUY2, YV16 Plugin Chikuzen
YUY2inRGB A quick filter that stuffs YUY2 into RGB24. See discussion. YUY2 Plugin Trevlac
YUY2toRGB219 Converts YUY2 to studioRGB. With this kind of conversion, luma will not change, meaning no quantization error on luma. See discussion. YUY2 Plugin Trevlac
YV12To422 YV12 to YV16/YUY2 converter for AviSynth 2.6. YV12 Plugin Chikuzen


Filter Description Color format Plugin / Script Author
AddGrainC Generates film like grain or other effects (like rain) by adding random noise to clip. Noise can be horizontally or vertically correlated causing streaking. Contains AddGrain & AddGrainC RGB24, RGB32, YUY2,

Y8, YV411, YV12, YV16, YV24

Plugin Tom Barry, Foxyshadis

LaTo, cretindesalpes

AddStaticGrainM This function adds static grain in dark areas based on a mask. YV12 Script Daiz
AddNoise/Blockbuster Makes encoder allocate more bits to darker areas, thus eliminating DCT blocks by decreasing the clips compressibility. Plugin Ross Thomas
AviShader generic plugin that uses your 3D card's hardware to assist with rendering RGB32 Plugin Antitorgo
ColorLooks This plugin is based on Trev's VDub filter Colorlooks and Donald Graft's Colorize (well it works a bit similar). I also added some new stuff. The plugin contains the following filters: Technicolor, Colorize, Sepia and Posterize. YV12, YUY2, RGB24, RGB32 Plugin Wilbert Dijkhof
crt_display CRT emulation with scanline and phosphor effects. crt_display emulates a CRT display using aperture grille (Trinitron) or Cromaclear technologies. See discussion. RGB24, RGB32 Script cretindesalpes
EffectsMany Creates 34 types of special "animated" effects. Effects act on the input clip in the range of the frame numbers specified. The Audio is not affected. YV12, YUY2, RGB24, RGB32 Plugin V. C. Mohan
f3kgrain Another 8/16-bit luma adaptive grain generator. Y8, YV12, YV16, YV24 Script 06_taro
GNoise Adds random noise to a clip. See duscussion. YV12 Plugin mf
GrainFactory3 Noise generator that tries to simulate the behavior of silver grain on film. See discussion. YV12 Script Didée
GrainFactory3mod Luma adaptive grain generating filter in 8-bit precision. Based on Didée's GrainFactory3 script. YV12 Script 06_taro
GrainFactoryLite Luma adaptive grain generating filter with stacked 16-bit input/output support. Based on Didée's GrainFactory3 script, processing in 16-bit precision, and some commonly unused parameters removed. YV12 Script 06_taro
HollywoodSQ Creates popup album, akin to Hollywood squares TV show YV12, YUY2, RGB24, RGB32 Plugin V. C. Mohan
KenBurnsEffect Given clip, zooms, pans & rotates clip. See wikipedia:Ken Burns Effect YV12, YUY2, RGB24, RGB32 Script mikeytown2
MPlayerNoise Noise Generator ported from MPlayer. See discussion. YV12 Plugin bergi
NoiseGenerator Newer function based off of Blockbuster. Adds random noise to clip. YV12, YUY2, RGB24, RGB32 Plugin Shubin
Scanlines Add Scanlines (black horizontal bars) to a video. see wikipedia:Scan Line YV12 Plugin turulo
StaticNoiseC Generates static grain using the Mersenne Twister random number generator. See discussion. YV12 Plugin histamine
TurnsTile Applies mosaic and/or palette effects to a clip. YV12, YUY2, RGB24, RGB32 Plugin Robert Martens

Field Order

Filter Description Color format Plugin / Script Author
PFR Tries to restore the original progressive field order of a movie (or any predominantly filmed material transferred to video) where the field order changes at scene changes in a seemingly random fashion! See discussion. YV12, YUY2 Plugin Simon Walters
ReverseFieldDominance This filter is intended to reverse the field dominance of PAL DV video. See discussion. YUY2, RGB24, RGB32 Plugin Simon Walters

Frame Rate Conversion

Filter Description Color format Plugin / Script Author
AlterFPS AlterFPS can be used to speed up or slow down a video by adding or removing fields. It works like the 3:2 pulldown of NTSC film material, except you can choose your new speed. It can also blend frames for progressive frame results, and blend fields like ConvertFPS. Any Script actionman133
convert60ito24p convert60ito24p converts a 60fps interlaced NTSC Video into a 24fps progressive Video using different blending techniques. RGB32, RGB24, YUY2 Script scharfis_brain
FPSDown This filter reduces the framerate of a video by 1/2, by blending odd and even frames together. However, it does this in a smart way such that in case of duplicate frames, it will do the smart thing to remove unnecessary blurring in the output video. RGB32 Plugin arkeet
FrameDbl FrameDbl will generate extra frames to double the frame rate. It does this using a motion compensated approach to interpolating between frames. See discussion. YV12 Plugin Tom Barry
InterFrame Frame rate conversion script. Interframe works very well at converting 24FPS to 60FPS; converts videos to higher frame rates like newer TVs do. Common names are frame doubling, smooth motion, among others. See discussion. YV12 Script SubJunk
MSU_FRC The filter is intended for video frame rate up-conversion. It increases the frame rate integer times. It allows, for example, to convert a video with 15 fps into a video with 30 fps. YV12 Plugin Dmitriy Vatolin, et al.
Motion Fast true-motion motion-compensation functions for AviSynth. Discussion, Documentation YV12 plugin mg262
NTSC tools Automatic NTSC to PAL conversion with 24p, 30p, 60i detection. See discussion. YV12 Script Mug Funky
SalFPS3 A modded version of MotionProtectedFPS for extra protection. YV12 Script Mug Funky, Didée
SVPflow SVPflow provides fast and high quality GPU accelerated frame rate interpolation. See discussion. YV12 Plugin SVP Team
tc2cfr This plugin that can read a timecode file and convert a given video clip in to one with a constant framerate by adding duplicate frames. YV12 Plugin gnaggnoyil
TimecodeFPS Converts clip from VFR to CFR. Timing information from clip is discarded, and matroska v2 timecodes from the timecodes file are used instead. Any Plugin natt
VFRtoCFR Converts a variable frame rate (VFR) video to a constant frame rate (CFR) video with the help of Matroska Version 2 Timecodes. YV12 Plugin Aktan
VfrToCfr This plugin converts variable frame rate clips to constant frame rate by introducing null frames. GitHub repository YV12 Plugin joyje
YFRC Yushko Frame Rate Converter - doubles the frame rate with strong artifact detection and scene change detection. YV12 Script Oleg Yushko

Frame Replacement/Range Processing

Filter Description Color format Plugin / Script Author
ApplyEvery A collection of AviSynth functions that operate at regular intervals in a clip. Plugin James D. Lin (stickboy)
BadFrames Replaces given bad frames by neighbors or blend (interpolation). Useful for frames with very large defects. Plugin Fizick
ClipClop Clipclop is a simple plugin to replace ranges in a source clip with the same range, from a replacement clip. Supports up to 255 replacement clips, with unlimited number of replacements into output clip. Plugin StainlessS
FrameRepeat FrameRepeat() is a simple plugin to select frames to repeat. Requires AviSynth 2.6. Plugin StainlessS
FrameSel/FrameRep FrameSel() is a simple plugin to select individual frames from a clip. Can select frames numbers by direct arguments to filter, or in a string, or in a command file. Plugin StainlessS
MatchFrames/LocateFrames MatchFrames, intended for matched frames extraction,LocateFrames, intended to be usable by other scripts to identify matches. Plugin StainlessS
RemapFrames A collection of functions to rearrange frames between clips. Remaps the frame indices in a clip or from a second clip as specified by an input text file or by an input string. Efficient alternatives to long chains of FreezeFrame, DeleteFrame, or ApplyRange. Plugin James D. Lin (stickboy), cretindesalpes
Prune Prune is a simple plugin to trim() multiple source clips and splice the results into a new clip. Supports up to 256 source clips, with unlimited number of trims/splices into output clip. Prune can fade Audio (to reduce clicks between splices) for supported audio formats. The plugin will do AlignedSplice only. Plugin StainlessS

Levels and Chroma

Filter Description Color format Plugin / Script Author
AutoAdjust A high quality automatic adjustement filter. It calculates statistics of clip, averages them temporally to stabilize data and uses them to adjust luminance gain & color balance. AutoAdjust has a smoothing & dithering algorithm to avoid banding issue. Calculations are made in 32bits float to avoid rounding errors and can also input/output 16-bits. AutoAdjust is internally multithreaded and SSE2 optimized. Y8, YV12, YV16, YV24, YV411 Plugin LaTo
AutoContrast Auto contrast adjustment. RGB24, RGB32, Y8, YUY2, YV12, YV16, YV24, YV411 Script StainlessS
Autolevels Improvement of the ColorYUV filter's autogain feature. It stretches the luma histogram to use the entire specified range, averaging the amount of "gain" over consecutive frames to better handle flashes and to avoid flickering. Discuss RGB24, RGB32, YUY2, YV12 Plugin frustum & Theodor Anschütz
AWB Automatic white balance for real world footage, similar to the known function in digital cameras. See discussion. YV12 Script martin53
ChanMix Creates a grayscale image from an RGB24 source, it has 3 parameters to specify how much of each color-channel is used. RGB24 Plugin E-Male
ChannelMixer Very similar to the ChannelMixer function found in Photoshop. 9 Adjustments are possible, 3 for each color channel. RGB24, RGB32 Plugin Gustaf Ullberg
ChromaJig Automatic Colorization. YV12 [12] MWilson
ColorBalance Same tool that is found in Gimp & Cinepaint. See discussion. RGB24, RGB32 Plugin Gavino & mikeytown2
ColorLooks This plugin is based on Trev's VDub filter Colorlooks and Donald Graft's Colorize (well it works a bit similar). I also added some new stuff. The plugin contains the following filters: Technicolor, Colorize, Sepia and Posterize. See discussion RGB24, RGB32, YUY2, YV12 Plugin Wilbert Dijkhof
ColorYUV2 YUV color adjustment plugin with a graffer. YV12 Plugin StainlessS
ColourLike Makes a clip look like a 'reference' clip by adjusting each colour mask. Updated documentation YV12 Plugin mg262
ExpLabo ExpSat apply a non-linear transformation of saturation, Colorize change the image color dominance in a flexible manner, HLSnoise adds a noise to the image separately to the HLS dimensions. See discussion. RGB24, RGB32 Plugin brabbudu
Exposure Exposure function for AviSynth. RGB24 Plugin Matt Pierce
FlimsYlevels Luma adjustment function to give a more "film-ish" look. (Based on Didée's Ylevels). YV12 Script FlimsyFeet
GamMac Useful to correct color cast on old 8mm films. RGB32, RGB24 Plugin StainlessS
GiCocu Use GIMP/Photoshop curve files, see documentation. RGB24, RGB32 Plugin E-Male
Gray_Balance A gray balance script, which is based on Black/White/Gray balance picker. RGB24, YUY2, YV12 Script Kisa_AG
HDRAGC High Dynamic Range Automatic Gain Control - Increase dynamic range of video clips (enhance shadows). It's "simply" gaining (brightening) dark areas of image without causing blow of highlights. Amount of gain is calculated automatically, but can be influenced by parameters. See discussion. YUY2, YV12 Plugin paviko
HighlightLimiter "Darkening highlight". Works well on over exposed clips. It can also be combined with ContrastMask to create HDR effect YV12 Script javlak
HistogramAdjust Adjusts the histogram of a frame by either equalizing it or by matching with histogram of another image, or with given histogram table of values. YV12, YUY2 Plugin V. C. Mohan
Histograms in RGB & CMY Similar to Histogram("levels") but for RGB and CMY instead of YUV. It also includes a RGB parade color scope. RGB24, RGB32, Y8, YUY2, YV12, YV16, YV24, YV411 Script -Vit-
HSVAdjust HSVAdjust/HSLAdjust/HSIAdjust let's you rotate hues, control the strength of color (saturation), or modify the brightness of a clip. The type of brightness depends on the filter. It's value for HSVAdjust, lightness for HSLAdjust or intensity for HSIAdjust. See discussion RGB24, RGB32 Plugin Wilbert Dijkhof
Hue This plugin is a port of Donald Graft's VirtualDub Hue filter. See discussion RGB24, RGB32 Plugin Wilbert Dijkhof
MatchHistogram Tries to modify the histogram of the input clip to match that of a reference clip. Should be used for analysis only, not for production. See discussion Y8, YV12, YV16, YV24, YV411 Plugin LaTo
OutRange A simple function to scan the whole video and output a log file, in which out-of-tv-range frames are logged. Y8, YV12, YV16, YV24, YV411 Script 06_taro
RGBAdapt Another RGB color correction plugin, it also also includes a graffer. RGB24, RGB32 Plugin StainlessS
RgbAmplifier An AviSynth forensic plugin to amplify color shifts. RGB24, RGB32 Plugin StainlessS
SGradation SGradation is much like a gamma function, but '2nd order'. Y8, YV12, YV16, YV24, YV411 Script martin53
ShowChannels Simple plugin whose only function is to display the average Y,U and V values for a YUV frame or R,G, and B for an RGB frame. Also shows accumulated average for all frames visited so far. RGB24, RGB32, Y8, YUY2, YV12, YV16, YV24, YV411 Plugin StainlessS
ShowOverRange Shows illegal "TV range" by painting pixels blue for anything less than 16 and red for anything greater than 235. YUY2, YV12 Plugin SAPikachu
SmoothAdjust SmoothAdjust is a set of 5 plugins to make YUV adjustements. These 5 plugins have a smoothing & dithering algorithm to avoid banding issue. Calculations are made in 32bits float to avoid rounding errors and artifacts. SmoothAdjust is multithreaded (up to 16 threads) and SSE2 optimized. SmoothAdjust is SmoothLevels' successor. Y8, YV12, YV16, YV24, YV411 Plugin LaTo
Tint Tints the image toward a specified colour. YUY2, YV12 Script actionman133
TweakColor Target specific hue and saturation ranges for hue and saturation adjustments. YV12, YUY2 Plugin Trevlac
VideoScope Similar to Histogram("classic") but with additional features, it shows waveform monitors and a vectorscope. YUY2 Plugin Randy French
WhiteBalance Correct the white balance of a clip with a large degree of control and accuracy over other methods of correcting white balance. See discussion. YV12, YUY2, RGB24, RGB32 Plugin SomeJoe
Ylevels A simple replacement for Avisynth's internal Levels command, with a few neat differences. YV12 Script Didée

Line Darkening

Filter Description Color format Plugin / Script Author
FastLineDarkenMOD Line darkening script. See original discussion. Updated script. Additional information. YV12 Script Vectrangle / Didée
LineDarkenToon LineDarkenToon use the idea of mf_toon (0.5) for linedarken. I wanted a really small fast code like FastLineDarken but with similar output like mf_toon and this is the result. YV12 Script MOmonster
mfToon mfToon darkens cartoon edges. In default operation, it performs line darkening, Xsharpening, and warp sharpening.

See discussion. Additional information here and here

YV12 Script mf
proToon Line darkening script, used to be known as vmToon and before that mfToon. YV12 Script TheProfileth
SuperToon An attempt to optimize/speed up the previous versions of mfToon, vmToon, etc. See discussion YV12 Script Hadien
Toon Simple and fast line darkener. YV12 Plugin mf
ToonLite It's the same as Toon, just without the warpsharp processing.. YV12 Plugin mf
vmToon The successor to mfToon. Darkens lines, thins lines, and does supersampled sharpening all in one, but slow. YV12 Script Vectrangle


Filter Description Color format Plugin / Script Author
AreaResize An area-average resizer plugin; only use to downscale. RGB24, RGB32, Y8, YV12, YV16, YV24, YV411 Plugin Chikuzen
Debicubic This filter is designed to reverse the effects of bicubic upsampling. RGB24, RGB32, YV12 Plugin Prunedtree
Debilinear This filter is designed to reverse the effects of bilinear upsampling. RGB24, RGB32, YV12 Plugin Prunedtree
edi_rpow2 An improved rpow2 function for nnedi3, nnedi3ocl, eedi3, and eedi2. Requires ResizeX RGB24, YUY2, Y8, YV12, YV16, YV24, YV411 Script Desbreko
JincResize Jinc (EWA Lanczos) Resampler Plugin for Avisynth/Avisynth+. See discussion. Y8, YV12, YV16, YV24, YV411 Plugin innocenat
Lanczosplusv3 Very slow, but high quality resizer. See [13] Script *.mp4 guy
nnedi3_rpow2 Enlarge images by the powers of 2 using Neural Network New-Edge Directed Interpolation ; nnedi3_rpow2 is a function included in nnedi3. RGB24, YUY2, YV12 Plugin tritical
nnedi3x_rpow2 Enlarge images by the powers of 2 using Neural Network New-Edge Directed Interpolation ; nnedi3x_rpow2 is a script function included in nnedi3ocl. RGB24, YUY2, Y8, YV12, YV16, YV24, YV411 Script and Plugin SeT
nnedi3_resize16 An advanced script for high quality image resizing and colorspace conversion. RGB24, RGB32, Y8, YV12, YV16, YV24 Script mawen1250
PointSize A set of pixel art resizers; Includes Scale2x/3x, LQ2x/3x/4x, HQ2x/3x/4x, xBRZ (2x to 6x). See discussion. RGB32 Plugin `Orum
ResampleHQ ResampleHQ provides gamma-aware resizing and colorspace conversion. YV12, YUY2, RGB24, RGB32 Plugin Cory Nelson
Resize8 Resize8() works just like AviSynth's internal resizers but with some extra features. It had correct chroma placement, optional adaptive anti-ringing algorithm and few other features. RGB24, RGB32, Y8, YV12, YV16, YV24 Script mawen1250
ResizeX ResizeX is a wrapper function for AviSynth's internal resizers and Dither_resize16 that corrects for the chroma shift caused by the internal resizers when they're used on horizontally subsampled chroma with MPEG2 placement. RGB24, YUY2, Y8, YV12, YV16, YV24, YV411 Script Desbreko
Seamer Seam Carving/Liquid Rescale for Content-Aware Image Resizing. See wikipedia:Seam Carving RGB24, RGB32 Plugin V. C. Mohan
SincResize SincResize is an experimental plugin that uses DCT to perform resizing. See discussion, read on for more information. YV12 Plugin CAFxX
SimpleResize Resizing plugin with 4 filters: SimpleResize, WarpResize, InterlacedResize and InterlacedWarpedResize. YV12, YUY2 Plugin Tom Barry
SplineResize SplineResize contains two kinds of spline based resizers: The first ones are the (cubic) spline based resizers from Panorama tools: Spline100Resize (using 10 sample points) and Spline144Resize (using 12 sample points) are examples. Other ones are available in AviSynth itself. The second ones are natural cubic splines that use the kernel itself as a spline. YV12, YUY2, RGB24, RGB32 Plugin Wilbert Dijkhof
waifu2x Single-Image Super-Resolution for anime/fan-art using Deep Convolutional Neural Networks. Y8, YV12, YV16, YV24 Plugin sunnyone
ZoomBox Replacement for ResizeKAR. Resizes clip Keeping the Aspect Ratio. Can set Source/Target PAR/DAR, option to zoom in/out in order to hide/show black borders. Script mikeytown2


Filter Description Color format Plugin / Script Author
aSharp Simple unsharp mask filter with optional adaptive sharpening. See discussion. YV12 Plugin Marc FD
AVSShock This Shock Filter sharpens edges of images by applying erosions or dilations depending on the sign of the Laplacian (or the so called Haralick-Canny edge detector). YUY2, YV12 Plugin AMSS0815
aWarpSharp2 A modern rewrite of aWarpSharp with several bugfixes and optimizations. See discussion Y8, YV12, YV16, YV24 Plugin SEt
blah Sharpening. See discussion. YV12 Script *.mp4 guy
FineSharp Small and relatively fast realtime-sharpening function, designed for 1080p, or after scaling 720p -> 1080p during playback (to make 720p look more being like 1080p). See discussion. YV12 Script Didée
LimitedSharpen LimitedSharpen can be used like a traditional sharpener, but producing much less artifacts. It can be used as a replacement for the common "resize(x4)-XSharpen-resize(x1)" combo, with very similar results (perhaps even better) - but at least 2 times faster, since it requires much less oversampling. YV12 Script Didée
LSFmod A LimitedSharpenFaster mod with a lot of new features and optimizations. YV12 Script LaTo
MCLS_16 Motion Compensate Limited Sharpen 16bit YV12 Script Motenai Yoda
MedSharp Soft thresholded median sharpening function. See discussion. YV12 Script *.mp4 guy
MSharpen MSharpen is a very simple masked sharpening plugin for AviSynth. This version is a reimplementation of neuron2's old MSharpen plugin. See discussion. RGB32, Y8, YV12, YV16, YV24, YV411 Plugin tp7
NonlinUSM Non-linear Unsharp Masking. YV12 Script Didée
pSharpen Performs two-point sharpening to avoid overshoot. See discussion. YV12 Script ilpippo80, colours
ReCon ReConvolution - makes things sharp by mixing pixels together. See discussion. YV12 Script *.mp4 guy
SeeSaw SeeSaw uses a balance of denoising and sharpening to enhance a clip. The aim is to enhance weak detail without over-sharpening or creating jaggies on strong detail, and produce a result that is temporally stable without detail shimmering. YV12 Script Didée
SharpenComplex2 Port of MPC-HC's Sharpen Complex 2 to AviSynth. Despite the name, this script is very simple, see discussion. YV12 Script
SSXSharpen Included in SharpTools. Sharpens the picture using supersampling techniques. YV12 Script mf, Didée
SSSharp Also known as Super Slow Sharpen - a very slow, but high quality sharpener. See discussion YV12 Script *.mp4 guy
TUnsharp TUnsharp is a basic sharpening filter that uses a couple different variations of unsharp masking and allows for controlled sharpening based on edge magnitude and min/max neighborhood value clipping. See discussion. YUY2, YV12 Plugin tritical
UnFilter This filter softens/sharpens a clip. It implements horizontal and vertical filters designed to (slightly) reverse previous efforts at softening or edge enhancement that are common (but ugly) in DVD mastering. See discussion. YUY2, YV12 Plugin Tom Barry
UnsharpHQ A strong and fast unsharp mask with some new features. See discussion. YV12 Plugin list
WarpSharp WarpSharp contains these sharpeners: UnsharpMask, WarpSharp, Xsharpen. YUY2, YV12 Plugin ???, seraphy


Filter Description Color format Plugin / Script Author
DeBarrel Remove barrel and pincushion distortion, where straight lines appear curved. Any Plugin V. C. Mohan
Defish Barrel and pincushion distortion correction filter. Old discussion RGB32 Plugin wonkey_monkey
Defish Different Projections Defish with different map projections, like Lambert Cylindrical Equal Area, Mercator and Miller projections. RGB32 Script Kisa_AG
FTurn Fast implementation of TurnLeft(), TurnRight() and Turn180() AviSynth functions. See discussion. Y8, YV12,YV24 Plugin tp7
Quad An Avisynth plugin to perform quadrilateral transformations. RGB32 Plugin -- no SSE wonkey_monkey
Reform Skewed images are corrected or vice versa, useful if video is recorded with slightly incorrectly located camera. Sometimes refered to as perspective correction. RGB32, RGB24, YUY2, YV12 Plugin V. C. Mohan
Reformer Perspective correction and warping. Any Plugin V. C. Mohan
Rotate Rotate or shear on any given angle. See discussion. RGB32, YV12 Plugin Fizick
Spinner Spinner plugin rotates a frame or selected part of it about the given axis coordinates in floating point precision. RGB24, RGB32, YUY2, YV12 Plugin V. C. Mohan
xyremap xyremap is a filter for remapping pixels using formulae written in reverse Polish notation. RGB32 Plugin wonkey_monkey
Zoom Zoom, Pan & Rotate Clip. Adds alpha layer to clip. RGB32 Plugin WarpEnterprises


Filter Description Color format Plugin / Script Author
AssRender Libass-based subtitle renderer. See discussion. Updated version; only source code available. RGB32, RGB24, YV24, YV12, Y8 C Plugin lachs0r, TheFluff
sub3d Plugin for rendering subtitles on 3D video with correct depth. RGB32 Plugin slavanap
SubtitleEx Similar to the original Subtitle function but can do more: apply text to range; effects - bold, underline, italic, center, fading, motion, blur, emboss, etc...; alpha channel. Plugin update (Japanese) RGB32 Plugin / .chm (help) basilik
SUPtext Overlays SUP-subtitles on a video clip. RGB32, YV12 Plugin emmel
SupTitle Blu-ray PGS .SUP Subtitle Renderer Plugin for AviSynth. See discussion YV12 Plugin ZachSaw
VSFilter Supported Subtitle Formats: VOBsub (.sub/.idx), SubStation Alpha/Advanced SubStation Alpha (.ssa/.ass), SubRip (.srt), MicroDVD (.sub), SAMI (.smi), PowerDivX (.psb), Universal Subtitle Format (.usf), Structured Subtitle Format (.ssf). See [14] Plugin
VSFilterMod VSFilterMod is modification of original VSFilter subtitle renderer by Gabest. This mod brings up new features and some minor bugfixes. Plugin
xy-VSFilter High performance VSFilter compatible subtitle filters. See discussion Plugin cyberbeing


Filter Description Color format Plugin / Script Author
DissolveAGG Wipe Transition with a soft edge. See discussion.

Note: There exist multiple variants of the script as the result of the interaction between authors in that discussion.

Script (v1)

Script (v2) Script (v3)

zemog, mikeytown2, Gavino and others
JDL_MaskTransition Combines two clips using the specified mask clip. The audio tracks are blended during the transition. About any transition can be made with this function. Script James D. Lin (stickboy)
TransAll Around 150 distinct transitions can be created with this plugin. RGB, YUY2, YV12 Plugin V. C. Mohan
Transition (Albert Gasset) Various Wipe and Random Block modes. Has 19 built in patterns or it can use an external file. Plugin Albert Gasset
Transition (shubin) Contains 2 modes: circle and line. In circle mode the area has radius R and center xCenter,yCenter. In line mode the line passes through xCenter,yCenter with slope R. Plugin Shubin

Other Filters

Debugging/Diagnostic Filters

Filter Description Color format Plugin / Script Author
AVInfo AVIInfo gives information about the streams in the clip without loading any frames. filename can be a WAV file or an AVI file with several audio streams (it won't open AVI files with embedded subtitles though). It will return the info as a string. Plugin trevlac, wilbert
Avisynth Info Tool This program gathers all available info about the installed Avisynth version. It should be useful for troubleshooting since especially novice users don't always know which Avisynth version they have installed, what DLLs/DLL-versions reside in their plugin directory, etc. The tool also helps resolve problems with plugin DLL dependencies like missing Microsoft runtime libraries. Groucho2004
AVSMeter AVSMeter is a CLI (command line interface) tool that "runs" an Avisynth script with virtually no overhead, displays clip info, CPU and memory usage and the minimum, maximum and average frames processed per second. It measures how fast Avisynth can serve frames to a client application (x264, for example) and comes in handy when testing filters/plugins to evaluate their performance and memory requirements. Command line executable Groucho2004
ColorDiff ColorDiff makes a greyscale (Y8) frame according to the input frame's pixels' "distance" from a specified color. The diff is calculated by simply getting the diff of the individual color components from the desired color's components and summing them up. Also, weights can be set for the individual diffs. Documentation is at the beginning of the source file. This is a C Plugin! RGB32, RGB24, YUY2, YV12 C Plugin Ignus2
DumpPixelValues Samples the colors from selected pixels for every frame in a video source and outputs the data to a text or binary file. See homepage. RGB32, YUY2 Plugin McPoodle
GrainEvaluate A script to analyze and log the strength of grain for each frame. See discussion. YV12 Script 06_taro
Glitch Analyzer Glitch Analyzer generates a diagnostic video, then analyzes the recorded version of it, to detect swapped, dropped, or repeated fields. YUY2, YV12 Script jmac698
Grid Overlays a grid, useful for pixel counting. Any Plugin V. C. Mohan
Measure Measures luminence of greyscale bars and prints results on-screen. Can be used to set brightness/contrast in capture settings accurately. YV12 Script halifaxgeorge
SegmentDisplayOCR SegmentDisplayOCR is a seven-segment display recognition filter for AviSynth. It has built in logging functionality (it will log frame recognition results) and also can be used in AviSynth conditional filters. The main purpose of this filter is to process readings of various digital instruments (e.g. digital multimeters) captured on video. So if your favourite instrument lacks interface for connecting it to PC you can capture it's readings on cam and convert them to computer readable format with SegmentDisplayOCR filter. YV12, YV16, YV24, YV411 Plugin lcferrum
SSIM A filter that compute an objective video quality metric between two videos. Based on SSIM work from Zhou Wang. It has been created with the help of Mfa. YV12 Plugin / source Lefungus
ShowPixelValues This filter displays the actual Y U and V (or R G and B) values from pixels within a frame. See discussion and homepage. RGB32, YUY2 Plugin Simon Walters
Testpatterns This filter creates a sinewave frequency sweep directly in YV12, useful to measuring video response. YV12 Script halifaxgeorge
TMonitor TMonitor is a filter very similar to AVSMon. It enables monitoring of an Avisynth clip via previewing the video, viewing clip information (such as video width, height, colorspace, number of frames, audio samples, sample rate, number of audio channels, and more), and adjusting the audio delay. It also supports multiple instances per script, allowing viewing of differences between different parts of a processing chain. RGB24, RGB32, YUY2, YV12 Plugin tritical
ViewFields/UnViewFields UnViewFields, ViewFields Plugin Simon Walters
Comptest The script Compressibility test can be used for a compressibility test on a clip. Script
SeeTheDifference SeeTheDifference just makes the difference visible between an encoded and an original videoclip. So you can see what you really "lose" when encoding a video. Script

Edge Detection

Filter Description Color format Plugin / Script Author
aSobel Sobel edge dectecion filter included in aWarpSharp2. Y8, YV12, YV16, YV24 Plugin SEt
mt_edge Edge detection filter included in MaskTools2. Y8, YV12, YV16, YV24, YV411 Plugin Manao
tcanny Contains a canny edge detection filter and distance transform filter. YUY2, YV12 Plugin tritical
TCannyMod Canny edge detection filter for Avisynth 2.6. Reimplementation of tcanny. See discussion Y8, YV12, YV16, YV24, YV411 Plugin Chikuzen
TEdgeMask TEdgeMask creates an edge mask based off gradient vector magnitude. YUY2, YV12 Plugin tritical
TEMmod TEdgeMask modified for Avisynth 2.6. It creates an edge mask using gradient vector magnitude. See discussion Y8, YV12, YV16, YV24, YV411 Plugin Chikuzen

Export Filters

These filters can write directly to media files.

Filter Description Color format Plugin / Script Author
Immaavs ImmaWrite uses the ImageMagick libraries to write images. Many formats are supported including animations and multipage files. Plugin Wilbert Dijkhof
TWriteAVI Serve AVI file to program requesting it as well as write an avi file. Useful for speeding up 2 pass encodes at the cost of hard drive space. Update for AviSynth 2.6. Usage. Old mod by squid_80. RGB32, RGB24, YUY2, YV12 Plugin tritical

(function "RawWriter")

Sashimi writes (and reads) almost any regular raw uncompressed data format you can define. You'll find a fuller description under Source Filters. RGB, YUY2,YV12 Plugin with scripts PitifulInsect
SoundOut SoundOut is a GUI driven sound file output module for AviSynth (it exports audio to several compressors). All audio. Plugin sh0dan

Import Filters

These filters are used to import filters written for other audio and video packages.

Filter Description Color format Plugin / Script Author
FreeFrame Allows freeframe filters (mostly effects) to be used directly in AviSynth. RGB24, RGB32 Plugin Myrsloik


These filters are primarily designed to be used with other filters, to restrict or augment their effect.

Filter Description Color format Plugin / Script Author
AVSTP A library for multithreaded plug-in development Any Plugin cretindesalpes
MP_Pipeline Run parts of an AviSynth script in external processes. Any Plugin SAPikachu
MT MT is a filter that enables other filters to run multithreaded. This should hopefully speed up processing on hyperthreaded/multicore processors or multiprocessor systems. See [15] Any Plugin tsp
MVTools MVTools provides filters for estimation and compensation of objects' motion in video clips. Motion compensation may be used for strong temporal denoising, advanced framerate conversions, image restoration and other tasks. See [16] YUY2, YV12 Plugin Fizick
SoraThread Sora's avs multi-process/multi-thread plugin package Any Plugin leiming2006
ThreadRequest Yet another plugin for multithread processing. Archive homepage (Japanese) Any Plugin lantis

Multipurpose Filters

Filter Description Color format Plugin / Script Author
HybridFuPP An adaptive processor, allowing picture cleaning and compressibility gain. Original discussion. YV12 Script Fupp
MaskTools2 This plugin provides tools for the creation, enhancement and manipulation of masks for each YUV component. Y8, YV12, YV16, YV24 Plugin Manao, tp7
MVTools This plugin provides a collection of functions for motion estimation and compensation. YV12, YUY2 Plugin Various

Scene Change Detection

Filter Description Color format Plugin / Script Author
DBSC A scene change detection tool set/kit/box (work-in-progress). All Script StainlessS
EDLmaker Simple scenechange detector that writes to EDL file. YV12 Script Mug Funky
MSCDetection Part of MVTools2; MSCDetection creates a scene detection mask clip from motion vectors data. YV12, YUY2 Plugin Fizick
SCDetect Detect scene change and output scene change frames to a file. YV12 Script 06_taro
SceneChangeLavc SClavc is an AviSynth plugin intended to allow access to libavcodec's scene-change metrics. See homepage. YV12 Plugin Loren Merritt
SCXvid SCXvid produces first pass Xvid logs from AviSynth at the equivalent of the default VFW preset. These logs are primarily intended to get scene change information from but may have other uses. YV12 Plugin Myrsloik
SCXvidMask A tiny AviSynth plugin that reads an SCXvid log and creates a binary mask based on it. Y8, YV12, YV16, YV24, YV411 Plugin tp7

Support filters

These filters are primarily designed to augment the creation of custom script-based filters.

Filter Description Color format Plugin / Script Author
ApplyInterlacedFilter ApplyInterlacedFilter safely processes interlaced video with spatial and temporal filters. Script
ArcFuns This plugin expands the available numerical functions with missing inverse trig functions. N/A Plugin Gavino
AvsMotion AviSynth plugin for animating clips with AAE motion tracking data. Y8, YV12, YV16, YV24, YV411 Plugin tp7
Call Call an external program from the script. N/A Plugin Nic, DDogg
CallCmd Plugin to execute command on selectable frames or at startup or closedown. Based on Call by Nic. N/A Plugin StainlessS
ClipBoard Get text from Clipboard. N/A Plugin StainlessS
FrameCache Frame cache plugin. It helps greatly increase performance, especially in combination with another plugins, like SmoothDeinterlace. Usage FrameCache( [number of frames to remember], (path to log file) ). any johny5 dot coder via gmail Evgeny
GetSystemEnv An AviSynth plug-in to retrieve information from the system. N/A Plugin James D. Lin (stickboy)
GRunT Extends AviSynth's Runtime Environment, making it easier to use, especially inside script functions. Any Plugin Gavino
GScript Extends the Avisynth scripting language to provide additional control-flow constructs: multi-line conditionals (if-then-else blocks), 'while' loops and 'for' loops. Any Plugin Gavino
LoadDLL Used to manually load dll files in AviSynth. Useful if a filter relies on an external dll that is not in the system PATH. N/A Plugin tsp
PlaneMinMax Frame-based YV12 plane Min/Max/Avg functions without ConditionalFilter. YV12 Plugin Bart Silverstein
pop A filter to get values from variables that may not yet be initialized. Any Plugin tsp
Rt_Stats Compile-time/Runtime Functions. N/A Plugin mirror StainlessS

Deepcolor Filters

(also check the High Bit-Depth page and the Deep Color Tools category)

Filter Description Color format Plugin / Script Author
Dither Generates video with up to 16 bits per component after denoising and dithers back to 8 bits for storage. Primarily written to smooth fine gradients to remove color banding during/after denoising. Can also recover high bitdepth data potentially contained in a noisy clip; dither a high bitdepth picture into a standard YV12; and perform basic operations (masking, curves...) on high bitdepth pictures, as they cannot be manipulated safely with conventional AviSynth filters. Planar colorspaces Plugin + scripts cretindesalpes

3D Filters

Filter Description Color format Plugin / Script Author
Analglyph This filter produces analglyph video from a stereo pair. Analglyph is a 3d viewing method which uses colored glasses. The plugin supports the advanced Dubois algorithm, which is able to reduce the ghosting effect that is possible in the conversion. RGB24, RGB32, YUY2, YV12 Plugin / mirror Gábor Kertai
Anaglypher A plugin for combining stereopairs into single anaglyph image. RGB32, RGB24 Plugin Shura Luberetsky
Displace / McM_2D_to_3D Plugin and script that enables you to convert 2d to 3d stereo with bidirectional pulfrich effect + add depth to stationary objects. RGB32 Plugin/Script Mcmount
fauxD 2D to stereo-3D conversion in real-time. RGB24, RGB32 Plugin eslave
Pantarheon 3D AviSynth Toolbox The Toolbox contains a number of basic functions which allow you to multiplex the left and right views found in two separate videos into one video, using several of the common methods currently in use. YUY2, YV12 Script G. Adam Stanislav


Filter Description Color format Plugin / Script Author
AVSLib General purpose toolkit/extension library enhancing AviSynths ability to perform complex linear and non-linear video editing tasks. Includes support for Array containers & operators, debugging tools, math & string functions, filters and many more. AVSLib gzarkadas

Audio Filters

Filter Description Color format Plugin / Script Author
AddAudio A function that adds silent audio to a clip. Needed for CCE 2.50 users. N/A Script
AudioGraph Displays the audio waveform superimposed on the video. Intended to help with editing rather than for final output. Useful for finding specific dialog or sound, and for checking A/V sync. Doom9 discussion. Ihor Bobalo added a few additional features to AudioGraph, only the source code is provided: SourceForge repository. RGB32, RGB24, YUY2 Plugin Richard Ling, sh0dan
AudioLimiter To increase volume for silent sounds a lot, to increase volume for middle-volume sounds a little and to keep hi-volume sounds untoched. N/A Plugin dimzon
AudioTimeline Displays a audio timeline track under the frame. It is especially suited for thumbsheets, where it allows to estimate the audio track of the thumbnailed clip. RGB24, RGB32, Y8, YV16, YV24, YV411 Plugin martin53
BeFa Band Eliminate Filter for Audio. See English documentation (translated from the original Japanese documentation). N/A Plugin kiraru2002
FindAudioSyncScript FindAudioSyncScript helps you to find the appropriate audio delays, if you have desync'ed audio. N/A Script IanB
MinMaxAudio Computes the root mean square, maximal or minimal value over all samples in all channels,or just over all samples in channel, and outputs the value (in decibels) as a float[17]. It's a conditional audio filter, so the computation is done framewise. See discussion N/A Plugin Wilbert Dijkhof
Normalize2 Audio normalizing plugin. The main difference between this plugin and the built-in normalizing plugin Normalize() is that this plugin can store the peak level value in an external file and uses a lookup table to do the actual normalizing (for speed). N/A Plugin jcsston
Sox Audio Effect Filter Use SOX effects within AviSynth. Most effects are supported, and multiple effects can be stacked after each other. N/A Plugin sh0dan
Spectrogram Linear spectrogram for AviSynth 2.6. Any Plugin innocenat
SwitchByAudio Plugin to switch video source based on audio. See discussion RGB32, RGB24, YUY2, YV12 Plugin V. C. Mohan
TimeStretchPlugin TimeStretch with multichannel support and updated SoundTouch library. N/A Plugin Wilbert Dijkhof
ViewAudio Includes two filters: ViewAudio and CacheAudio. YUY2, YV12 Plugin minamina
Waveform Displays audio waveforms superimposed on the video, similar to AudioGraph below but with multi-channel support and consistent support for all colourspaces. See discussion RGB32, RGB24, YUY2, YV12 Plugin wonkey_monkey

As Yet Unclassified

Filter Description Color format Plugin / Script Author
Adjust Generic Y-Channel mapping. Can define a function for the Y Channel. See discussion. RGB24, RGB32, YUY2 Plugin WarpEnterprises
Adaptive Lens Blur Repair This function adaptively repairs video damaged by lens blur, using a frame-adaptive repair mask, a selection of sharpeners and multi-stage motion-compensated artifact removal. YV12 Script fvisagie
amp Inspired by RgbAmplifier, it performs temporal smoothing, then (optionally) enhances the difference between the windowed average and the current frame. RGB24, RGB32, YUY2, YV12 Plugin wonkey_monkey
AutoTraceFilter An intentionally useless plugin that uses AutoTrace to trace and then resize a source video, rendering the result using GDI+. RGB24 Plugin Xenoveritas
ave A set of experimental audio/video filters. RGB24, RGB32 Plugin nutbread
AviSynth Shader This plugin allows running HLSL pixel shaders within AviSynth. This gives access to various HLSL filters that haven't been programmed in AviSynth. RGB32, YV24, YV12 Plugin MysteryX
BeforeAfter See the difference before and after; similar discussion here. (missing BeforeAfterDiff and BeforeAfterLine scripts.) any Script Corran
ccc A plugin specifically designed for Cross-Conversion Correction. YV12 Plugin Daemon404
CLExpr AviSynth Expr filter implemented in OpenCL for runtime calculation of expressions on 8 and 16-bit depths clips. Makes mt_lutxy and mt_lutxyz possible on 16-bit. More information here. Y8, YV12, YV16, YV24, YV411 Plugin tp7
Colorit Color a black and white image or recolor a color image. See discussion. RGB32, RGB24, YUY2, YV12 Plugin V. C. Mohan
CutFrames Cut a range of frames from a single a/v clip. Opposite of Trim with extras. Script mikeytown2
DCT Plugin with the following functions: IDCT, IDCT2, FDCT, FDCT2. See discussion YUY2 Plugin lcld
DDigit DDigit Plugin Text Rendering Pack for Plugin writers. See discussion. Plugin StainlessS
DeBlot Color Blot Reduction. YUY2,YV12 Plugin minamina
DeJump This is a specific filter which might be used to stabilize some "jumpy" video sources captured from VHS. YUY2 Plugin dinstun
ExInpaint Exemplar-Based Image Inpainting - removing large objects from images. RGB32, RGB24, YUY2, YV12 Plugin Fizick
FFAvisynth A plugin which lets you directly use ffdshow video and audio filters from AviSynth scripts. YV12, YUY2, RGB24, RGB32 Plugin Milan Cutka
FLuaG FLuaG (Floating Lua Graphics) is an AviSynth plugin for video/audio data editing via Lua scripting. See discussion RGB32 Plugin Youka
FritzPhoto Use Avisynth to process still images. FritzPhoto
FSubstitute Tries to automate the task of replacing bad frames using adjacent or close-by frames. YV12 Script martin53
GrainOptimizer The only temporal-only grain reducer! See discussion for more information. Related topics: x264: Film Grain Optimization, [18] YV12 Plugin Dark Shikari
KPassFilterCL KPassFilterCL is a set of tools in the frequency domain. Y8, YV12, YV16, YV24, YV411 Plugin Khanattila
LVS LVS (Lua Video Sync) is a video frameserver plugin to edit video frames with the capability of scripting language Lua + 2D image processing functionality. See discussion RGB32, RGB24 Plugin Youka
NeuralNet Neural networks through back propagation learn and filter some types of noise. Classification and linear type networks are included. RGB32, RGB24, YUY2, YV12 Plugin V. C. Mohan
PseudoColor This filter first converts clip to b/w, then colors it to pseudorandom colors according to brightness. See discussion. RGB32, RGB24, YV12 Plugin Shubin
QRCodeSource AviSynth plugin to provide a means to embed QR codes in video. RGB32 Plugin jeremypoulter
rgba_rpn A filter for manipulating the pixels of RGB (and also YUV) clips using reverse Polish notation. RGB32, RGB24, YUY2, YV12 Plugin wonkey_monkey
SegmentedAmp Image is segmented with watershed algorithm for smoothing and/or sharpening. RGB32, RGB24, YUY2, Y8, YV12, YV16, YV24, YV411 Plugin V. C. Mohan
SmoothSkip In tribute to tritical's awesome filter, this one tackles the inverse problem of TDecimate; allowing for addressing frames that have non-smooth, skippy motion. For source code see GitHub repository. YUY2, YV12 Plugin jojje
Soothe Lessens the temporal instability and aliasing caused by sharpening, by comparing the original and sharpened clip, leaving a smoother and slightly softer output. See discussion. YV12 Script Didée
Tracking Use computer vision to track objects in the video, and produce ConditionalReader input. Demo at Youtube. RGB24 Plugin Shlomo Matichin
UnSmooth What does it do. It amplifies noise, small detail, and artifacts. Doesn't sound very attractive, but there can still be some detail left in over smoothed encodes. See discussion. YV12 Script mf
Watermark Creates a transparent deformation in the video akin to a watermark. The watermark is defined by a black and white image which may be a dynamic image. The intensity of the effect is controlled by several parameters. RGB32 Plugin DrPhill
WaterShed Assuming image grey values to be elevations, it is segmented into basins and watershed lines. Useful in certain medical image analysis and recoloring work. RGB32, RGB24, YUY2, Y8, YV12, YV16, YV24, YV411 AviSynth 2.5.8: Plugin

AviSynth 2.6.0: Plugin

V. C. Mohan
xvplugins This is simply a bunch of AviSynth stuff that isn't (really) possible using plain AviSynth and instead required a plugin. RGB32 Plugin Xenoveritas

Personal tools