Home
RecentChanges

Search:

» AviSynth is a powerful video FrameServer for Win32.

AviSynth Links:
»Download
»Learn to script
»FAQ
»Manual
»Discussion fora
»Project page
»External filters
»FeedBack

» You can add pages to this website immediately. No login required.
Edit this document

» AboutAviSynth

 

Avisynth 
Logo

Section 3: Filters, plugins and colorspaces

( Diese Seite in flag-germany.gif Deutsch )

Q3.1: What is RGB/YUV-colorspace ?

A: These are two different ways to represent colors: YUV colorspace and RGB colorspace. In YUV colorspace there is one component that represent lightness (luma) and two other components that represent color (chroma). As long as the luma is conveyed with full detail, detail in the chroma components can be reduced by subsampling (filtering, or averaging) which can be done in several ways (thus there are multiple formats for storing a picture in YUV colorspace). In RGB colorspace there are three components, one for the amount of Red, one for the amount of Green and one for the amount of Blue. Also in this colorspace there are multiple formats for storing a picture which differ in the amount of samples are used for one of the three colors.

Information can be found here: [YUV Formats], [RGB Formats], [MSDN YUV Formats] and [Chroma subsampling by Charles Poyton].

As of AviSynth v1.0x/v2.0x, RGB24, RGB32, and YUY2 are supported. In AviSynth v2.5x there is also support for YV12. Have a look at DataStorageInAviSynth for more info.

Q3.2: In which colorspaces do AviSynth and the internal filters work ?

A: AviSynth works in RGB and YUV using the RGB32, RGB24, YUY2 and YV12 formats. Most of the internal filters work in any of these formats, too. Which color format a filter requires, can be found [here].

Q3.3: How do I load a plugin in to AviSynth ?

A: Starting from v2.05 you can use its auto-plugin loading feature. The path of the plugin directory is set during install. But if you want to change it for some reason, change or add the following lines:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Avisynth]
"PluginDir"="c:\\program files\\avisynth 2.5\\plugins"

Change the path above if necessary and make sure you created the plugin-dir as well. Save it as install_autoplugin.reg, and merge it to your registry file by right-clicking on it in your explorer. Finally move all your plugins/script-functions into the plugin directory. If you want to load plugins manually, use "LoadPlugin". An example script:

LoadPlugin("d:\mpeg2dec.dll")
mpeg2source("d:\filename.d2v")
Q3.4: Where can I download external filters for AviSynth v1.0x/v2.0x ?

A: From all over. But below you will find links to most of them. If you know of a plugin which is missing, please feel free to add it to the list using the "Edit this document" link to the left.

Most of these plugins work in YUY2. If you can't find the plugin (the attachments are still disabled), you can download the plugins at [WarpEnterprises] homepage.

DeInterlacing & Pulldown Removal:

All PAL, NTSC, and SECAM video is interlaced, which means that only every other line is broadcast at each refresh interval. Deinterlacing filters let you take care of any problems caused by this. IVTC (inverse telecine, aka pulldown removal) filters undo the telecine process, which comes from differences between the timing of your video and its original source.
  1. [Decomb Filter package (by Donald Graft)]: This package of plugin functions for AviSynth provides the means to remove combing artifacts from telecined progressive streams, interlaced streams, and mixtures thereof. Functions can be combined to implement inverse telecine for both NTSC and PAL streams. [YUY2]
  2. [ViewFields/UnViewFields (by Simon Walters)]: ViewFields and UnViewFields are a complementary pair of filters to display and identify top and bottom fields from an interlaced source. [YUY2, RGB]
  3. [GreedyHMA plugin (by Tom Barry)]: DScaler's Greedy/HM algorithm code to perform pulldown matching, filtering, and video deinterlacing. [YUY2]
  4. [Motion compensated deinterlace filter \"TomsMoComp\" (by Tom Barry)]: This filter uses motion compensation and adaptive processing to deinterlace video source (not for NTSC film). [YUY2]
  5. [SmoothDeinterlacer (by Gunnar Thalin, ported to AviSynth by Xesdeeni)]: A port of the VirtualDub [Smooth Deinterlacer] filter. [YUY2, RGB]
  6. IVTC plugin v2.2 (by "Wizard_FL", Doom9 download section): This plugin reverses the telecine process. [YUY2]
  7. [\"IT\" (by thejam79)]: Inverse telecine plugin. Translation of README
  8. [\"AntiComb\" (by ?)]: This filter removes combing (interlace artifacts). Translation of README
  9. Also see Auto24FPS and AutoDeint in the Misc Plugins section, below. [YUY2]

Spatio-Temporal Smoothers:

These filters use color similarities and differences both within and between frames to reduce noise and improve compressed size. They can greatly improve noisy video, but some care should be taken with them to avoid blurred movement and loss of detail.
  1. [Peach Smoother (by Lindsey Dubb)]: An adaptive smoother optimized for TV broadcasts: [documentation]; [discussion]. The Peach works by looking for good pixels and gathering orange smoke from them. When it has gathered enough orange smoke, it sprinkles that onto the bad pixels, making them better. Works only on computers with SSE instructions (Athlons, Pentium 3 or 4, recent Celerons, or later). [YUY2]
  2. [Motion Adaptive Mixer \"MAM\" (by Marc FD)]: This filter uses movement detection to adapt the denoising method used; In still areas it uses temporal filtering and in moving areas it uses spatial filtering with any spatial and temporal filter you want. It is no longer developed but can temporarily be downloaded from [this site]. [YUY2]
  3. [NoMoSmooth (by SansGrip)]: A motion adaptive spatio-temporal smoother: [documentation]; [discussion]. [YUY2]
  4. [Dust (by Steady)]: A noise remover. [YUY2, RGB]
  5. [SpatioTemporal Median Filter \"STMedianFilter\" (by Tom Barry)]: STMedianFilter is a (slightly motion compensated) spatial/temporal median filter. [YUY2]
  6. [Convolution3D (by Vlad59)]: Convolution3D is a spatio-temporal smoother. It applies a 3D convolution to similar pixels in consecutive frames. [YUY2]

Spatial Smoothers:

These use color similarities and differences within a frame to improve the picture and reduce compressed size. They can smooth out noise very well, but overly aggressive settings for them can cause a loss of detail.
  1. [Masked Smoother \"msmooth\" (by Donald Graft)]: This filter removes mosquito noise and smoothes flat areas. This works especially well in anime. (currently in the repair shop) [RGB] [Old info]
  2. [Smoother HiQ(uality) plugin (by Klaus Post)]: This filter performs spatial smoothing on video material to eliminate noise and MPEG artifacts. [YUY2]
  3. [msoften (by Marc FD)]: This filter is a spatial denoiser like 2dcleaner. Some discussion can be found [here]. [YUY2]
  4. [General convolution plugin (by Richard Berg)]: A spatial smoother: [description]. This plugin is a built-in function starting with AviSynth v2.01. [YUY2, RGB]
  5. [Wavelet Noise Reduction (by thejam)]: This can remove single frequency noise in three different frequency bands, independently for horizontal and vertical directions and for the Y, Cr and Cb color planes. [documentation] This filter only works for PCs with SSE instructions. [YUY2]
  6. [Dynamical Noise Reduction 2 filter \"DNR2\"] [YUY2, RGB]
  7. [2D Cleaner Noise Reduction filter \"_2DClenYUY2\"] [YUY2]
  8. [SpatialSoften2 is faster version of SpatialSoften] [YUY2]
  9. Also see KenKunNR in the Misc Plugins section, below. [YUY2]

Temporal Smoothers:

These filters use color similarities and differences between frames to improve the picture and reduce compressed size. They can get rid of most noise in stationary areas without losing detail, but overly strong settings can cause moving areas to be blurred.
  1. [TemporalSoften2 plugin (by Dividee)]: This plugin is better than the built-in TemporalSoften up to v2.02; it removes noise from a video clip by selectively blending pixels. It is built into v2.03 and all subsequent versions (it replaces the old function and it is called the same: TemporalSoften). [YUY2]
  2. [TemporalSmoother plugin (by Dividee)]: This filter is an adaptive noise reducer, working along the time axis. [YUY2]
  3. [TemporalCleaner (by Jim Casaburi; ported to AviSynth by Vlad59)]: A simple but very fast temporal denoiser, aimed to improve compressibility. [YUY2]
  4. [Grape Smoother (by Lindsey Dubb)]: [documentation]; [discussion]; When colors change just a little, the filter decides that it is probably noise, and only slightly changes the color from the previous frame. As the change in color increases, the filter becomes more and more convinced that the change is due to motion rather than noise, and the new color gets more and more weight. [YUY2]
  5. [Chroma Noise Reducer (by Marc FD)]: Reduces the noise on the chroma (UV) and preserves the luma (Y). [YUY2]
  6. Also see KenKunNRT in the Misc Plugins section, below. [YUY2]

Sharpen/Soften Plugins:

These are closely related to the Spatial Smoothers, above. They attempt to improve image quality by sharpening or softening edges.
  1. [Smart sharpening filter \"MSharpen\" (by Donald Graft)]: This filter is very effective at sharpening important edges without amplifying noise. [YUY2, RGB]
  2. [Sharpen/Blur filter \"Focus2\" (by Marc FD)]: Sharpen2 and Blur2 are MMX optimisations of the built in Sharpen and Blur functions. Starting from v.25 it will replace the Sharpen and Blur functions. [YUY2, RGB]
  3. [Unfilter plugin (by Tom Barry)]: A filter which softens/sharpens a clip: [description]. [YUY2]
  4. Also see WarpSharp, Xsharpen, and UnsharpMask in the Misc Plugins section, below. [YUY2]

Resizers:

  1. [Lanczos resize filter (Implemented by Nic)]: Starting from v2.06 AviSynth will have faster a built-in lanczos3 resizer. [YUY2, RGB]
  2. [SimpleResize plugin (by Tom Barry)]: Very simple and fast 2 tap linear interpolation. It is unfiltered which means it will not soften much. [YUY2]

Subtitles:

  1. [VobSub plugin (by Gabest)]: A plugin for importing your subtitles. [YUY2, RGB]

MPEG Decoder (source) Plugins:

  1. [MPEG2DEC (by dividee)]: Mpeg2dec is a plugin which lets AviSynth import D2V (dvd2avi) files.
  2. [MPEG2DEC2 (by Tom Barry)]: A MPEG2DEC.DLL substitute. This is the same MPEG2DEC.DLL with SSE2 optimization. Faster with Pentium IV CPUs.
  3. [MPEG2DEC3 (by Marc FD)]: A MPEG2DEC.DLL modification with deblocking and deringing, [dicussion].
  4. [MpegDecoder (by Nic)]: A MPEG2DEC.DLL substitute. Can also read MPEG-2 Transport Streams (VOB) and works very quickly. [YUY2]

MPA Decoder (source) Plugins:

  1. [MPASource (by Warpenterprises)]: A mp1/mp2/mp3 audio decoder plugin, [discussion].

Broadcast Video Plugins:

These are meant to take care of various problems which show up when over the air video is captured. Some help with luma/chroma separation; Others reduce interference problems or compensate for overscan.
  1. [AntiBlink (by Kurosu)]: Tries to diminish shimmering (rainbow effects) in areas with sharp changes in luminance (for instance, letters). [YUY2]
  2. [Guava Comb (by Lindsey Dubb)]: This is a comb filter, meant to get rid of rainbows, dot crawl, and shimmering in stationary parts of an image. [documentation]; [discussion] [YUY2]
  3. [Ghostbuster (by SansGrip)]: This filter removes "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. This filter is based on Krzysztof Wojdon's [Exorcist] VirtualDub filter. [YUY2]
  4. [BorderControl plugin (by Simon Walters)]: After capturing video you might want to crop your video to get rid of rubbish. BorderControl enables you to smear borders instead of cropping and adding solid borders. This can be visually more pleasing and give less compression related artefacts. [YUY2]
  5. [AutoCrop plugin (by CropsyX)]: Automatically crops black borders from a clip. [discussion] [YUY2]

Misc Plugins:

  1. [ImageSequence plugin (by Bzzz2)]: A plugin that lets you open image sequences.
  2. [Robust duplicate frame detector \"Dup\" (by Donald Graft)]: This filter reduces the size of anime movies by "removing" duplicated frames. [YUY2]
  3. [Tweak plugin (by Donald Graft)]: Adjusts hue, saturation, brightness, and contrast. This is a built in function starting with AviSynth v2.01. [YUY2]
  4. [WarpSharp, Xsharpen, UnsharpMask, KenKunNR, KenKunNRT, UVTimingH, UVTimingV, LoadAviUtlInputPlugin, LoadAviUtlFilterPlugin, ConvertYUY2ToAviUtlYC, ConvertAviUtlYCToYUY2, EraseGhost, SearchGhost, EraseGhostV, SearchGhostV, Auto24FPS, AutoDeint, FrameCache, AVIEncodeVideo, LoadPlugin (by ???)]: Ported VirtualDub filters and AviUtl filters. Last version can be found [here]. [YUY2]
  5. [AviSynth monitor \"avsmon\" (by johann.Langhofer)]: This plugin enables you to preview the video during the conversion and to determine the exact audio delay. [YUY2, RGB?]
  6. [MergeLuma/MergeChroma plugin (by Klaus Post)]: This plugin is a built-in function starting with AviSynth v2.01. [YUY2]
  7. [Call (by Nic)]: A plugin which enables you to call and pass parameters to a external commandline program like Besweet.
  8. [Blockbuster (by SansGrip)]: With this filter one can use several methods to reduce or eliminate DCT blocks: adding noise (Gaussian distributed), sharpening, or blurring. Some discussion can be found [here]. [YUY2, RGB ?]
  9. [ChromaShift (by Simon Walters)]: ChromaShift shifts the chrominance information in any direction, to compensate for incorrect Y/UV registration. [YUY2]
  10. [Chr.dll (by WarpEnterprises)]: Let's you add ASCII CHaRacters and starting time.
  11. [TurnLeft and TurnRight (by Warpenterprises)]: Rotates your clip -90 or 90 degrees. [RGB]
  12. [Spray (by WarpEnterprises)]: It takes pixels from "nearby" and sprays them around, so you can spray pixel from outside the logo area randomly inside. [RGB32]
  13. [Zoom \"Pan/Zoom/Rotate\" (by WarpEnterprises)]: A plugin for Pan/Zoom/Rotate your clip. [RGB32]''
  14. [MJPEGcorrect plugin]: Luma (brightness) in MJPEG decoders is often decoded incorrectly to the YUV luma range. This is a special purpose plugin written to fix this issue with MJPEG videos. [description]. [YUY2]
  15. Many VirtualDub filters, see S4: Importing filters from VirtualDub [RGB32]

Q3.5: Where can I download external filters for AviSynth v2.5x ?

A: Most of them can be found in the AviSynth section at Doom9. But below you will find links to most of them. If you know of a plugin which is missing, please feel free to add it to the list using the "Edit this document" link to the left. Most of these plugins work in YUY2. If you can't find the plugin (the attachments are still disabled), you can download the plugins at [WarpEnterprises] homepage.

DeInterlacing & Pulldown Removal:

All PAL, NTSC, and SECAM video is interlaced, which means that only every other line is broadcast at each refresh interval. Deinterlacing filters let you take care of any problems caused by this. IVTC (inverse telecine, aka pulldown removal) filters undo the telecine process, which comes from differences between the timing of your video and its original source.
  1. [Unblend (by Bach)]: A plugin based on Warpenterprise's deblend algorithm and Neuron2's decimate code. It's for messed up NTSC->PAL conversions. [YV12]
  2. [rePal (by Bach)]: A useful plugin for doing a 30->25 IVTC conversion. It must be used in conjunction with a (smart)bob. It can be used when your source is PAL telecined material. [YV12, YUY2]
  3. [Area based deinterlacer (by Donald Graft)]: Port of the Virtuldub filter. [RGB32]
  4. [Decomb Filter package (by Donald Graft)]: This package of plugin functions for AviSynth provides the means to remove combing artifacts from telecined progressive streams, interlaced streams, and mixtures thereof. Functions can be combined to implement inverse telecine for both NTSC and PAL streams. [discussion] [YV12, YUY2]
  5. [DGBob (by Donald Graft)]: 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. [discussion] [YV12, YUY2, RGB]
  6. [KernelDeint (by Donald Graft)]: This filter deinterlaces using a kernel approach. It gives greatly improved vertical resolution in deinterlaced areas compared to simple field discarding. [discussion]. [YV12, YUY2, RGB]
  7. [MultiDecimate (by Donald Graft)]: Removes N out of every M frames, taking the frames most similar to their predecessors. [discussion] [YUY2]
  8. [Smoothdeinterlacer (recompiled by Donald Graft)]: A port of the VirtualDub [Smooth Deinterlacer] filter. [RGB32, YUY2]
  9. [Interpolation Bob (by kevina20723)]: This filter works identically to the AviSynth built-in Bob filter except that it uses linear interpolation instead of bicubic resizing (C-plugin). [YV12, YUY2]
  10. [SmartDecimate (by kevina20723)]: It should be very good at handling irregular telecines, and will also handle hybrid clips fairly well without any excessive jerkiness or blurring (C-plugin). [discussion]. [YV12, YUY2]
  11. [TPRIVTC (by Kurosu)]: It uses the IVTC information from Tsunami MPEG Encoder Project Files. [YV12, YUY2]
  12. [Progressive Frame Restorer \"PFR\" (by Simon Walters)]: Recover original progressive film frames that have undergone the telecine to NTSC 30fps to PAL 25fps process whilst trying to maintain correct temporal field order. Now works also in Win2k/XP! [discussion] [YUY2, YV12]
  13. [GreedyHMA (by Tom Barry)]: DScaler's Greedy/HM algorithm code to perform pulldown matching, filtering, and video deinterlacing. [discussion] [YUY2]
  14. [Motion compensated deinterlace filter \"TomsMoComp\" (by Tom Barry)]: This filter uses motion compensation and adaptive processing to deinterlace video source (not for NTSC film). [discussion] [YV12, YUY2]
  15. [UnComb IVTC (by Tom Barry)]: Filter for matching up even and odd fields of properly telecined NTSC or PAL film source video. [discussion] [YV12]
  16. [\"IT\" (by thejam79, recompiled by Donald Graft)]: Inverse telecine plugin. Translation of README. [YUY2]
  17. Also see Auto24FPS and AutoDeint in the Misc Plugins section, below. [YUY2]

Spatio-Temporal Smoothers:

These filters use color similarities and differences both within and between frames to reduce noise and improve compressed size. They can greatly improve noisy video, but some care should be taken with them to avoid blurred movement and loss of detail.
  1. [PeachSmoother (by Lindsey Dubb)]: An adaptive smoother optimized for TV broadcasts: [documentation], [discussion]. The Peach works by looking for good pixels and gathering orange smoke from them. When it has gathered enough orange smoke, it sprinkles that onto the bad pixels, making them better. Works only on computers with SSE instructions (Athlons, Pentium 3 or 4, recent Celerons, or later). [YUY2]
  2. [FluxSmooth (by SansGrip)]: spatio-temporal smoother, [discussion]. [YV12]
  3. [MipSmooth filter (by Sh0dan)]: It takes the source frame, and creates three new versions, each half the size of the previous. They are scaled back to original size. They are compared to the original, and if the difference is below the threshold, the information is used to form the final pixel. [YV12]
  4. [SpatioTemporal Median Filter \"STMedianFilter\" (by Tom Barry)]: STMedianFilter is a (slightly motion compensated) spatial/temporal median filter. [YV12, YUY2]
  5. [Convolution3D (by Vlad59)]: Convolution3D is a spatio-temporal smoother. It applies a 3D convolution to similar pixels in consecutive frames. [dicussion] [YV12]

Spatial Smoothers:

These use color similarities and differences within a frame to improve the picture and reduce compressed size. They can smooth out noise very well, but overly aggressive settings for them can cause a loss of detail.
  1. [Masked Smoother \"MSmooth\" (by Donald Graft)]: This filter is effective at removing mosquito noise as well as effectively smoothing flat areas in anime. [discussion] [YV12, RGB32]
  2. [SmoothUV (by Kurosu)]: This filter can be used to reduce rainbows, as done by SmartSmoothIQ. [discussion]. [YV12]
  3. [VagueDenoiser (by Lefungus)]: A simple denoiser that uses wavelets. [YV12]
  4. [Deen (by Marc FD)]: Several denoisers. [dicussion]. This filter can cause memory leaks, so use at your own risk. [YV12]
  5. [eDeen (by Marc FD)]: Spatial monster. This filter can cause memory leaks, so use at your own risk. [YV12]
  6. [SmoothHiQ (recompiled by Richard)]: [YUY2]
  7. [Dynamical Noise Reduction 2 filter \"DNR2\"] [YV12]
  8. [2D Cleaner Noise Reduction filter \"_2DClenYUY2\"] [YUY2]
  9. Also see KenKunNR in the Misc Plugins section, below. [YV12, YUY2]

Temporal Smoothers:

These filters use color similarities and differences between frames to improve the picture and reduce compressed size. They can get rid of most noise in stationary areas without losing detail, but overly strong settings can cause moving areas to be blurred.
  1. [TemporalCleaner (by Jim Casaburi; ported to AviSynth by Vlad59)]: A simple but very fast temporal denoiser, aimed to improve compressibility. [YV12]
  2. [Grape Smoother (by Lindsey Dubb)]: [documentation], [discussion]. When colors change just a little, the filter decides that it is probably noise, and only slightly changes the color from the previous frame. As the change in color increases, the filter becomes more and more convinced that the change is due to motion rather than noise, and the new color gets more and more weight. [YUY2]
  3. [Chroma Noise Reducer (by Marc FD)]: Reduces the noise on the chroma (UV) and preserves the luma (Y), [discussion]. [YV12, YUY2]
  4. [atc (by Marc FD)]: Temporal cleaner. [YV12]
  5. Also see KenKunNRT in the Misc Plugins section, below. [YV12, YUY2]

Sharpen/Soften Plugins:

These are closely related to the Spatial Smoothers, above. They attempt to improve image quality by sharpening or softening edges.
  1. [MSharpen (by Donald Graft)]: This plugin for Avisynth implements an unusual concept in spatial sharpening. Although designed specifically for anime, it also works quite well on normal video. The filter is very effective at sharpening important edges without amplifying noise. [discussion] [YV12, YUY2, RGB]
  2. [asharp (by Marc FD)]: adaptive sharpening filter, [discussion]. [YV12]
  3. [Unfilter plugin (by Tom Barry)]: This filter softens/sharpens a clip. It implements horizontal and vertical filters designed to (slightly) reverse previous efforts at softening or edge enhancment that are common (but ugly) in DVD mastering. [discussion] [YV12, YUY2]
  4. Also see WarpSharp, Xsharpen, and UnsharpMask in the Misc Plugins section, below. [YV12, YUY2]

Resizers:

  1. [bicublinresize (by Marc FD)]: This is a set of resamplers: FastBilinear (similar to trbarry's simpleresize), FastBicubic (an unfiltered Bicubic resampler) and Bicublin (uses bicubic on Y plane and bilinear on UV planes). [discussion] [YV12]
  2. [ReduceBy2 replacement for TMPGEnc (by scmccarthy)]: This filter is only useful as a replacement for ReduceBy for users who need to convert to the RGB color space anyway. It avoids the interpolation of the chroma planes needed to convert to RGB by resizing the luma plane instead. [RGB]
  3. [SimpleResize (by Tom Barry)]: Very simple and fast two tap linear interpolation. It is unfiltered which means it will not soften much. [YV12, YUY2]
  4. [YV12InterlacedReduceBy2 (by Tom Barry)]: InterlacedReduceBy2 is a fast Reduce By 2 filter, usefull as a very fast downsize of an interlaced clip. [discussion] [YV12]

Subtitles:

  1. [VSFilter (by Gabest)]: For the subtitle fans! [discussion]

MPEG Decoder (source) Plugins:

  1. [MPEG2DEC (by dividee)] Mpeg2dec is a plugin which lets AviSynth import D2V (dvd2avi) files. (outputs to YUY2)
  2. [MPEG2DEC3 (by Marc FD and others)]: A MPEG2DEC.DLL modification with deblocking and deringing. Note that the colorspace information of dvd2avi is ignored when using mpeg2dec.
  3. [Mpegdecoder (by Nic)]: This DLL lets you load VOB/MPEG-2/MPEG-1 files to be loaded directly into Avisynth. [discussion]

MPA Decoder (source) Plugins:

  1. [evilMPASource (by Nic)]: MPASource with MPEG1/2 input support.
  2. [MPASource (by Warpenterprises)]: A mp1/mp2/mp3 audio decoder plugin, [discussion].

Plugins to compare video quality using specific video quality metrics:

  1. [SSIM (by Lefungus)]: Filter to compare video quality (similar as psnr, but using a different video quality metric). [YV12]
  2. [VqmCalc (by Lefungus)]: Filter to compare video quality (similar as psnr, but using a different video quality metric). [YV12]
  3. [VideoQualityStudio (by everwicked)]: Application to compare video quality using various metrics. Not a filter but accepts avisynth input.

Broadcast Video Plugins:

These are meant to take care of various problems which show up when over the air video is captured. Some help with luma/chroma separation; Others reduce interference problems or compensate for overscan.
  1. [Super8Equal (by Belgabor)]: One problem of the transfer of Super8 films to digital media is the inhomogenous brightness produced by projectors. Usually the brighness drops in a circular fashion from the center to the rim. This filter was written to counteract this problem. [YV12, YUY2, RGB]
  2. [AutoCrop plugin (by CropsyX)]: Automatically crops black borders from a clip. [discussion] [YUY2, YV12]
  3. [Declick (by Donald Graft)]: Removes light horizontal clicks. [YUY2]
  4. [Deflicker filter (by Donald Graft, port of the VirtualDub filter)]: This filter corrects video that has frame luminance variations over time, what we might generically call flickering. [discussion] [YUY2]
  5. [Conditional Temporal Median Filter (by kevina20723)]: Removes temporal noise in the form of small dots and streaks (C-plugin). [YV12]
  6. [X-Logo (by Leuf)]: A filter to remove logos. (Note there's an internal conversion to RGB32 and back.) [YV12, YUY2, RGB]
  7. [Guava Comb (by Lindsey Dubb)]: This is a comb filter, meant to get rid of rainbows, dot crawl, and shimmering in stationary parts of an image. [documentation], [discussion]. [YUY2]
  8. [FixVHSOversharp (by MrTibs)]: Repairs the light and dark halos that follow high contrast edges found in VHS sources. [discussion]. [YUY2]
  9. [BorderControl (by Simon Walters)]: After capturing video you might want to crop your video to get rid of rubbish. BorderControl enables you to smear added borders instead of adding solid borders preventing artefacts between picture and border. [YUY2, YV12]
  10. [FillMargins (by Tom Barry)]: A similar filter as BorderControl. [discussion] [YV12]
  11. [Reinterpolate411 (by Tom Barry)]: It seems that even chroma pixels are just being duplicated in the MainConcept? codec (NTSC). The new filter will help that by discarding the odd chroma pixels and recreating them as the average of the 2 adjacent even pixels. [discussion] [YUY2]

Misc Plugins:

  1. [Imagesequence plugin (by Bzzz, modified by Warpenterprises and Sh0dan)]: Let's you import image sequences like .TIF, .TGA and .JPG files (images need to be 24 or 32 bits per pixel). This plugin is built in starting from AviSynth v2.52, and it is called ImageReader.
  2. [Dup (by Donald Graft)]: This is intended for use in clips that have a significant number of duplicate content frames, but which differ due to noise. Typically anime has many such duplicates. By replacing noisy duplicates with exact duplicates, a bitrate reduction can be achieved. [discussion] [YV12, YUY2]
  3. [Convert3d (by hanfrunz)]: Converts interlaced 3D Movies (one field left, other field right picture) to anaglyph (red/cyan) format using photoshops "screen"-blend method. [YUY2, RGB]
  4. [AviSynth monitor \"avsmon\" (by johann.Langhofer)]: This plugin enables you to preview the video during the conversion and to determine the exact audio delay. [YV12, YUY2?, RGB?]
  5. [AVISynth C API (by kevina20723)]: C-plugins must be loaded with LoadCPlugin? using AviSynth v2.52 or older versions, and can also be loaded with LoadPlugin starting from AviSynth v2.53. Advice: keep this plugin outside your auto plugin loading directory to prevent crashes. [discussion]
  6. [MaskTools (by Kurosu)]: Some general mask tools. [YV12]
  7. [Call (by Nic)]: A plugin which enables you to call and pass parameters to an external commandline program like Besweet.
  8. [AudioGraph (by Richard Ling, modified by Sh0dan)]: Displays the audio waveform on top of the video. [YUY2, RGB]
  9. [Blockbuster (by Sansgrip, recompiled by CruNcher)]: With this filter one can use several methods to reduce or eliminate DCT blocks: adding noise (Gaussian distributed), sharpening, or blurring. [YUY2]
  10. [CompareYV12 (by Shalcker)]: YV12 version of the internal filter "Compare". [url=http://forum.doom9.org/showthread.php?s=&threadid=58187 discussion]. [YV12]
  11. [ChromaShift (by Simon Walters)]: ChromaShift shifts the chrominance information in any direction, to compensate for incorrect Y/UV registration. [YUY2]
  12. [ReverseFieldDominance (by Simon Walters)]: Intended to switch DV PAL material from bottom to top field first but will work with any interlaced material. It just moves the whole frame up or down by one line to achieve this. [YUY2, RGB]
  13. [SelectByString (by stickboy)]: This filter can be used to create wrapper functions to specify presets to other filters (C-plugin). [YV12, YUY2, RGB]
  14. [AddGrain (by Tom Barry)]: AddGrain generates film like grain or other effects (like rain) by adding random noise to a video clip. This noise may optionally be horizontally or vertically correlated to cause streaking. [YV12]
  15. [BT709ToBT601 (by Tom Barry)]: Converts HDTV (BT.709) to SDTV (BT.601) color space. [discussion] [YV12]
  16. [DctFilter (by Tom Barry)]: Reduces high frequency noise components using Discrete Cosine Transform and its inverse. Results in a high compressibility gain, when it is used at the end of your script. Height/width must be a multiple of 16. [dicussion]. [YV12, YUY2]
  17. [FrameDbl (by Tom Barry)]: A motion compensated frame doubler, made from STMedianFilter?. [discussion] [YV12]
  18. [Undot (by Tom Barry)]: UnDot is a simple median filter for removing dots, that is stray orphan pixels and mosquito noise. It basicly just clips each pixel value to stay within min and max of its eight surrounding neighbours. [discussion] [YV12, YUY2]
  19. [Chr.dll (by WarpEnterprises)]: Let's you add ASCII CHaRacters and starting time.
  20. [DVinfo (by WarpEnterprises)]: This filter grabs the timestamp and recording date info out of a DV-AVI. It should work with Type-1 and Type-2, standard AVI and openDML.
  21. [Zoom 'Pan/Zoom/Rotate' (by WarpEnterprises)]: A plugin for Pan/Zoom/Rotate your clip. [RGB32]
  22. [WarpSharp, Xsharpen, UnsharpMask, KenKunNR, KenKunNRT, UVTimingH, UVTimingV, LoadAviUtlInputPlugin, LoadAviUtlFilterPlugin, ConvertYUY2ToAviUtlYC, ConvertAviUtlYCToYUY2, EraseGhost, SearchGhost, EraseGhostV, SearchGhostV, Auto24FPS, AutoDeint, FrameCache, AVIEncodeVideo, LoadPluginEx (by our Japanese friend)]: Ported VirtualDub filters and AviUtl filters. Some documentation can be found [here]. You need to copy the [msvcp71.dll/msvcr71.dll] (Microsoft C Runtime Library, v7) to your windows system directory. [YV12, YUY2]

Q3.6: Where can I download utilities for AviSynth ?

A: Several utilities are available:

  • [AvsTimer (by kassandro)]: A small filter with virtually no overhead, which allows one to measure the performance of plugins or groups of plugins.
  • [AVISynth BatchScripting]: A little Batch file for creating fastly "AVS AviSynth Script files". With available presets: 1:1-VGA to VCD, DVB/DVD-PAL to 1:1-VGA and DVB/DVD-PAL to VCD. (Batches runs under WinNT?/2000/XP only)

Q3.7: How do I convert between the colorspaces ?

A:

converting to YV12:

ConvertToYV12()

converting to YUY2:

ConvertToYUY2()

converting to RGB:

ConvertToRGB()

Note that converting between colorspaces isn't completely lossless, and doing several conversions back and forth may degrade your signal. The first conversion back and forth does not hurt your source, but if you use three or more, it may. Starting with version v2.03, there is a ConvertBackToYUY2 which offers better symmetry if your RGB source was previously converted from YUY2.

Q3.8: What/when do I care when filter X works in RGB- or YUV-space ?

A: The main reason why you should care is the improvement in speed you can obtain by not unnecessarily changing between colorspaces. If your source is YV12 (when encoding DVD's for example, or captures from digital sources) try to use only filters/plugins which work in YV12-space. On the other hand if your source is in RGB (for example from analog captures) try to use only filters/plugins which work in RGB-space.

Speed is also quite different between the different colorspaces, because each colorspace takes up different amounts of memory. The slowest colorspace is usually RGB24, because every pixel has an odd alignment in memory, avoid using this mode. The fastest mode is usually YV12 (followed by YUY2), because data only takes up half as much space as RGB32. So if you have to process your video a lot, try using ConvertToYV12 or ConvertToYUY2 before you do your filtering. Note that ConvertToRGB converts to RGB32 if the source is YV12/YUY2 - use ConvertToRGB32 to force a RGB24 to RGB32 conversion.

You should also consider your destination colorspace. If you plan on converting to DivX/XviD/Huffyuv in VirtualDub without applying filters in VirtualDub, "Fast Recompress" will deliver the YUY-data directly to the codec, saving you another colorspace conversion. On the other hand, if you plan using TMPGEnc or VirtualDub in "Full Processing" mode, you may consider delivering the source as RGB.

Q3.9: How do I use and where can I get the "Subtitler" and "BMP Loader" plugins ?

A: These dll files are created by DVD2SVCD and only DVD2SVCD is using them. But you can also use them in AviSynth. Have a look in this [thread].

Back to AviSynthFaq

SourceForge Logo

 


Edit this document | View document history
Document last modified Tue, 11 Jan 2005 14:47:54