Back to the Avisynth main page
In theory, any application which reads AVI files through the AVIFile interface or through DirectShow should be compatible with Avisynth. However, some applications roll their own AVI-reading code, and some seem to assume that only files with the extension .AVI are AVI files. The following is a list of applications that I (or someone else) have tested with Avisynth, and information on how to get them to work if it's not obvious.
Please email me if you have information that's not in this table, so that I can add it for everyone's benefit. (Click on the link at the bottom of this page to email me.)
Avery Lee has modified VirtualDub's AVIFile proxy mode to recognize Avisynth scripts. This will allow you to open Avisynth scripts even if they have the AVI extension, provided you have VirtualDub's frame client installed in proxy mode. In order for your Avisynth scripts to be recognized by the frame client, you must begin them with the following line:
#avisynth
I assume the new proxy will be included in VirtualDub 1.3e, but for now you can download it here. The vdremote.dll file in this archive should replace the existing copy in your windows\system directory.
Alternatively, if you'd prefer to keep the AVS extension for Avisynth scripts, you can use a little utility I wrote called "avs_patch." What this utility does is search through an executable file for suspicious strings like ".avi", "*.avi", and so on, and replace the "avi" part with "avs". The modified application is put in a new file with "_avisynth" added to its name. The original executable is not modified. This usually works like a charm, but the downside is that the modified application only supports AVS files, and will no longer accept AVI files. I've never wanted to use plain AVI files since I switched to Avisynth, so I don't see this as a big problem. If necessary you can use the original version of the application when necessary, or else make a dummy AVS script that just loads the real AVI file with the AVISource filter.
Here's the avs_patch executable (~3K). It is a command-line utility. Source code is not included, but is available on request.
Seems to work fine.
AVI2MPG2_VFW.EXE uses the AVIFile interface to read AVI files. However, it assumes that files with extensions other than AVI are play lists. It works with VirtualDub's proxy server or once patched with "avs_patch" (see above).
AVI2MPG2.EXE uses DirectShow to read AVI files. However, it does not work with AVS files: it complains that the DirectShow handler doesn't support seeking. For all I know, this is true; Microsoft wrote that handler, not me. I haven't managed to fix this problem.
LSX uses the standard AVIFile interface, but for some reason it specifically checks that the file you open has a .AVI extension and rejects it if not, without even trying to open it. It works with VirtualDub's proxy server or once patched with avs_patch (see above).
I haven't managed to get this to work. It seems to use external import DLLs (in the vio folder) so in principle one could be added for AVS, but I have no idea how hard it would be or if the VIO format is even documented anywhere.
Seems to work fine.
Premiere uses its own custom code to read AVI files, but it apparently suffers from a 2GB limit anyway. Good job, guys. I wrote a Premiere import plugin for AVS and VDR files, which can be downloaded from the Premiere plugins page.
Seems to work fine.
Rather to my surprise, Sound Forge reads AVS files without any problems. I wouldn't try saving to them, though.
TMPGEnc has its own AVI-reading code to allow for OpenDML support. It doesn't seem to support AVS files. However, it does allow for custom file import filters, so I wrote a simple AVS import filter. I also made the filter support VirtualDub VDR files while I was at it. Here is the DLL with source code (~5K), distributed under the GPL of course.
I haven't tested the new 0.11f yet. The release notes say it supports VDR files natively now.
VirtualDub 1.3d and earlier can open AVS files, but unfortunately it's difficult. Avery Lee has informed me that it'll be easier in version 1.3e. In the mean time, I made a custom build of VirtualDub 1.3d (~372K) with full support for AVS files. The source code diffs are available by request. Email me via the link at the bottom of this page.
Opens AVS files without problems, except that it hangs if there's no video stream. (This is a known Avisynth bug.)
Reportedly doesn't work with VirtualDub's proxy, but works with avs_patch (see above). You can do better than this encoder, though. Try bbMPEG or TMPGEnc.