WDL/IPlug "Tale" Edition

Cockos WDL (whittle) is a free and open-source C++ library, created and maintained by the guys that make REAPER. WDL previously included IPlug, a cross-platform VST/AU plug-in framework for Windows and Mac OS X, on which you can build audio plug-in effects and instruments. This webpage will help you setup WDL/IPlug, so you can start coding/hacking your own plug-ins.

Note that, although Cockos has removed IPlug from its WDL repository, it is still included (and maintained) here.

What do I need?

  1. C++ compiler
  2. Git
  3. WDL/IPlug
  4. VST SDK

Which C++ compiler should I use?

IPlug includes project files for Visual Studio (Express), Code::Blocks (Windows 32-bit only), and Xcode, and the "Tale" edition also includes Windows makefiles to build IPlug from the command line using either Visual Studio or the free Windows SDK.

I personally use the Windows SDK command-line compiler, and Xcode 3 on Mac OS X.

What is Git?

Git is a powerful distributed source code management tool. You will need it to download (fetch) the WDL/IPlug source repository, but I would recommend to also use Git for your own projects. There is Git for Windows and Git for OS X. On OS X you might already have Git if you are running Xcode 4.

How do I download WDL/IPlug?

From the command line do:

mkdir myproject
cd myproject
git clone http://www.taletn.com/WDL.git .

This will clone (fork) the source code repository into myproject. You will then find WDL in myproject/WDL, and IPlug in myproject/WDL/IPlug.

+ Alternative (recommended) method
+ WDL/IPlug repositories

Where do I download the VST SDK?

Actually you don't need the entire SDK, you only need two files. However, you will still need to register with Steinberg and download the entire VST Audio Plug-Ins SDK (Version 2.4). Once you have downloaded the SDK, extract aeffect.h and aeffectx.h from vstsdk2.4/pluginterfaces/vst2.x in the ZIP file, and store them in myproject/VST_SDK.

How do I build the IPlug example project?

IPlugExample
The IPlug example project in action

In Visual Studio you should build the myproject/WDL/IPlug/IPlug.sln solution, which will build LICE, IPlug, and the IPlugExample. In Xcode you should build the myproject/WDL/IPlug/Example/IPlugExample.xcodeproj project, which includes LICE and IPlug.

When using the Windows SDK or Visual Studio command-line compiler do:

cd myproject\WDL\lice
nmake /f Makefile.msc
cd ..\IPlug
nmake /f Makefile.msc
cd Example
nmake /f Makefile.msc

Is there any documentation?

Not really. But the code is pretty easy to read.

Oli Larkin has posted a couple great instruction videos showing you how to set up WDL-OL (his version of WDL/IPlug) on Windows and Mac OS X. And then there is the excellent Making Audio Plugins tutorial series by Martin Finke.

Where can I get support?

You are welcome to discuss WDL/IPlug on the Cockos WDL forum with the rest of us.

Which (commercial) plug-ins are using WDL/IPlug?

Martinic Combo Model V & F are built on WDL/IPlug "Tale" edition. For a gallery of other IPlug-based plug-ins, check out this topic on the Cockos WDL forum.