Filter SDK/Compile AviSynth

From Avisynth wiki
Revision as of 21:49, 2 October 2015 by Admin (Talk | contribs)

Jump to: navigation, search

Contents

Introduction

All AviSynth versions up to 2.60 have code base that is explicitly for Visual C++ 6 with the Processor Pack add on. If you want to compile the DirectShowSource plugin you will also need to install the DirextX stuff.

Note that prior AviSynth 2.55, the DirectShowSource filter was not a separate plugin. This means that you needed to install the DirectX stuff to also compile AviSynth itself.

Since 2.61 newer compilers are supported. Solutions and project files are present for Microsoft Visual C/C++ 8 (2005), 9 (2008) and 10 (2010). It's sufficient to get the Express edition and for compiling the DirectShowSource plugin you will need to install a Windows SDK where the baseclasses are included. More information can be found below.

Compiling AviSynth with Visual C++ 6.0

Install Microsoft Visual Studio (containing VC6). You need the Professional or Enterprise edition, since the Student (Standard) edition is not enough. The reason is that you need the Processor Pack (with MASM for certain optimization code), which you can't install with the Student Edition. Also, you must not install SP6, as it does not support the Processor Pack (and will remove it).

... DX90SDK\Samples\C++\DirectShow\BaseClasses
... DX90SDK\Include
... MICROSOFT SDK\INCLUDE
... Microsoft Visual Studio\VC98\INCLUDE
... Microsoft Visual Studio\VC98\MFC\INCLUDE
... Microsoft Visual Studio\VC98\ATL\INCLUDE
and for Libraries:
... DX90SDK\SAMPLES\C++\DIRECTSHOW\BASECLASSES\RELEASE_UNICODE
... DX90SDK\SAMPLES\C++\DIRECTSHOW\BASECLASSES\DEBUG_UNICODE
... DX90SDK\Lib
... Microsoft SDK\Lib
... Microsoft Visual Studio\VC98\Lib
... Microsoft Visual Studio\VC98\Lib
... Microsoft Visual Studio\VC98\MFC\LIB
  • After successful compilation you may want to use NSIS to make an installer. Just run avisynth\distrib\AviSynth_2.5.nsi.

Compiling Avisynth with MS VC 2003

Using MS VC 2003 compilers is possible but will require some changes.

1.) get source zip or fresh cvs checkout (project file, libs, everything)

2.) opened workspace in vs.net 2003, and selected "yes to all" on the convert projects popup

3.) set configuration to release

4.) had to do the usual thing for the custom build step command line on the asm file "convert_a.asm", which is take out the quotation marks

5.) the SoundTouch lib still has problems, replace it with own build. Get source code (v1.3.1) at http://www.surina.net/soundtouch and compile the library. You will have to set the Runtime Library under C/C++ codegeneration to Multi-threaded DLL when you compile the SoundTouch lib with VS .NET 2003 (you should use the same compiler you want to compile avisynth with).

6.) compile and it works, has the usual warnings but those are fine

Compiling Avisynth with MS VC 2005

Using both 2005 and 2005 Express compilers is possible but will require some changes. Please feel free to openly discuss any issues you find so other may benefit from your experiences.

Be aware the 2005 RT environment changes the way system exceptions are handled and processed. So your builds may not respond as expected to error conditions.

AviSynth 2.6 move to VC2005 Express: http://forum.doom9.org/showthread.php?t=112138

Instruction to set VC2005 Express environment

Compiling Avisynth with MS VC++ 2008 Express and Professional Edition

xxx

Compiling Avisynth with MS VC++ 2010 Express and Professional Edition

xxx

Compiling Avisynth with ICC 11

See: http://forum.doom9.org/showthread.php?p=1388247#post1388247

Discussion topic about compiling AviSynth

Compiling Avisynth: http://forum.doom9.org/showthread.php?t=41913 yes to all

Personal tools