Homepage Wilbert Dijkhof

AviSynth plugins

AviSynth is a great open source non-linear video editor. Besides much documentation, and some internal filters, I created several AviSynth plugins. They are listed below:

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. [discussion].

ColorMatrix: ColorMatrix corrects the colors of mpeg2 streams. More correctly, sometimes mpeg2 streams are encoded using a different set of color conversion coefficients as used by AviSynth's color conversion routines or by the standard renderers, with the result that DivX/XviD clips or mpeg2 clips encoded by TMPGEnc/CCE using AviSynth or VirtualDub are displayed with slighty off colors (which looks like a small difference in brightness). The plugin is updated by xx and the latest version can be downloaded on his homepage. [discussion].

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). It's based on E-Male's original version.

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. [discussion].

Hue: This plugin is a port of Donald Graft's VirtualDub Hue filter. [discussion].

Immaavs (v1.60): This plugin uses ImageMagick libraries to load pictures. The required ImageMagick dll's can be downloaded here. Put them in your system folder.

This plugin consists of two filters: ImmaRead and ImmaWrite. The former reads images and the latter writes images to your hard drive.

ImmaRead supports the following formats:

Note that raw files are not supported by ImmaRead, since they can be opened by the plugin RawSource.

ImmaWrite supports the following formats:

Note that ImmaWrite doesn't support svg, wmf, raw digital photos or multi-layer psd.

Grayscale images are opened as Y8. RGB images are opened as RGB32 (when there is an alpha channel present) or as RGB24 (if there is no alpha channel present). Other formats (such as CMYK) are converted to RGB.

For animations or multipage files, the number of frames will be equal to the number of images within the file.

You need the ImageMagick dll's in order to be able to use this plugin. They should be copied to some folder (any folder will do). You need to set the MAGICK_HOME variable to the location of ImageMagick dll's (under Settings -> System -> Advanced -> Environment Variables -> Add MAGICK_HOME as a user variable), or you need to provide it using the magick_home argument. Thus for example, magick_home = "C:\\WINNT\\system32".

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 string.
It's a conditional audio filter, so the computation is done framewise. [discussion].

Reinterpolate420: Usually, DV decoders upsample PAL DV (which is YV12) to YUY2 using point sampling. This plugin reinterpolates it the original chroma samples.
This plugin is updated by Fizick, and the latest version (v3) can be downloaded on his homepage. [discussion].

SplineResize: This plugin contrains two kinds of spline based resizers: 
The first ones are the (cubic) spline based resizers from Panorama tools that fit a spline through the sample points and then derives the filter kernel from the resulting blending polynomials. See this thread for the details. Spline100Resize (using 10 sample points) and Spline144Resize (using 12 sample points) are added here. Other ones are available in AviSynth itself.
The second ones are natural cubic splines that use the kernel itself as a spline. The theory can be found here.

VScope: This plugin is a port of a VirtualDub plugin called VScope. It shows waveform monitors and a vectorscope. [discussion].

A while ago i received the sources of most of mg262's plugins (they are GPL). I defined them as v1.0: I can't guarantee that they are compilable (ReverseBlend surely isn't compilable, so i hope someone can look at this). In case you are wondering i got the included dlls from this forum. Proper documentation will be added later (for now a text file is included with the relevant information). They can be downloaded here.

Video Editing World


I have written and helped writing several video editing related guies:

1) Encoding to AVI-DTS guide:

An AVI-DTS guide for muxing your avi/ogm with a dts track:
- AVI/OGM-DTS guide
- iviaudio45.ax

2) The analog capture guide, which can be found at doom9.org:

In this guide you will be able to learn how you can capture analogue video material to your computer, what kind of post processing should be done to get good quality and some links are given for the encoding and authoring of your processed video. The source will be a PAL or a NTSC system and you should end up with a DivX3/DivX5/FFVFW/XviD file for playback on a PC, or a DVD/SVCD/CVD/VCD for playback in a standalone DVD player.

3) Much of the documentation of AviSynth.

Video editing forums

I'm a moderator of several forums in doom9.org. Other forums I regularly participate in are

VirtualDub's forum
Neuron's forum

Some other high quality forums

AVS Forum


in five years' time...: So let's try to guess where the world of codecs, containers and amateur PC video will be in five years time. (...) A thread at Doom9's forum from 2003.

Some historical articles

Video related stuff

The truth about DVD CSS cracking.

Quote: "CSS ("Content Scrambling System") is an encryption system that most commercial DVDs use, and all DVD players need to understand. It's alleged purpose is to stop piracy, however it also enforces region coding, non-skippable FBI warnings or commercials and many other artificial restrictions. (...) The media generally refers to Jon Johansen as the one who cracked CSS, though this might not be so. In fact, the late DeCSS releases by MoRE ("Masters of Reverse Engineering") contain a text file that says quite the contrary: An anonymous german hacker was responsible for the CSS crack, and MoRE only claims credit for writing DeCSS, the software. Jon Johanson said the same again in a recent interview (link ?) with LinuxWorld. (It should be mentioned that one source casts Jon in a less favourable light. Read the text and make up your own mind, I withhold my judgement.)"

CSS and DeCSS: Reference of the quote above.
The Truth about DVD CSS cracking by MoRE and [dEZZY/DoD]: xxx

http://www.slyck.com/news.php?story=733 Recent interview with Jon.

The relation between XviD, DivX, OpenDivX and Project Mayo.

Quote: "In January 2001, DivXNetworks founded OpenDivX as part of Project Mayo, which was intended to be a home for open source multimedia projects. OpenDivX was an open-source MPEG4 video codec based on a stripped down version of the MoMuSys reference MPEG4 encoder, however the code was placed under a restrictive license and only members of the DivX Advanced Research Centre had write access to the project CVS. In early 2001, DARC member Sparky wrote an improved version of the encoding core called encore2, which was updated several times before, in April, it was removed from CVS without warning. The explanation given by Sparky was "We (our bosses) decided that we are not ready to have it in public yet".

In July 2001, developers started complaining about a lack of activity in the project: the last CVS commit was several months before, bugfixes were being ignored, and promised documentation had not turned up. Soon after, DARC released a beta version of their closed-source commercial DivX 4 codec, which was based on encore2, saying that "what the community really wants is a Winamp, not a Linux". Some people accused DivXNetworks of starting OpenDivX for the sole purpose of harvesting other people's ideas to use in their DivX 4 codec, some were disappointed that the codec had stagnated and wanted to continue working on it, while others were angry at the way DivXNetworks handled a so-called open source project. It was after this that a fork of OpenDivX was created, using the latest version of encore2 that a few people downloaded before it was removed. Since then all the OpenDivX code has been replaced and XviD is published under the GPL."

The name XviD is DivX spelled backwards. It is proposed by an anonymous person on Sep 11, 2001 in the Xvid.org Forum thread "cool name for the project?".

XviD: Reference of the quote above - wiki link.
XviD: Xvid.org.
project mayo forums: Questions about the source code of OpenDivX.
DivX Codec 4.0 Beta Release: Release of DivX 4.0 codec.
project mayo forums: The start of a codec what is later known as XviD.

x264 and hdot264 (h.264)



Other stuff

Announcement of Linux on Usenet by Linux

On Sunday 25th August 1991, Linus Torvalds posted this humble note on Usenet (comp.os.minix):
"I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. (...) It is NOT protable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(."