Log in

View Full Version : [VirtualDub] Compiling VirtualDub with VC++ Express - how I did it


wonkey_monkey
14th February 2010, 18:21
I've been meaning to post this here for a while - I hope will be of use to someone.

I was a little trepidatious at the thought of trying to compile my own build of VirtualDub, but I really needed to make a tiny tweak to the source code.

After a bit of struggling (not helped by a hopelessly out-of-date page at Virtualdub's site which led me to install VC 6!), and a bit of help from old posts in the unofficial VDub forum, I've successfully compiled VirtualDub, and thought I'd post my notes in case they were of any use. Hopefully it isn't relying on something that I installed a while ago and forgot about...

1. (already installed) Visual C++ 2008 Express Edition
2. Installed the lastest Windows SDK from http://www.microsoft.com/downloads/details...&displaylang=en (http://www.microsoft.com/downloads/details.aspx?FamilyId=E6E1C3DF-A74F-4207-8586-711EBE331CDC&displaylang=en)
3. Installed the latest DirectX SDK from http://www.microsoft.com/downloads/details...splaylang=en#dx (http://www.microsoft.com/downloads/details.aspx?FamilyID=b66e14b8-8505-4b17-bf80-edb2df5abad4&displaylang=en#dx)
4. Downloaded and extracted the Vdub 1.9.7 source, and took off the Read only attribute on all files
5. Opening the .sln file prompts VC++ 2008 to convert the file from 2005 format. It will ask if you want to "permanently remove the source control bindings from the projects" - I said Yes.
6. Added the DX include folder (C:\Program Files (x86)\Microsoft DirectX SDK (August 2009)\Include on my system) to VC's "Include files" directory (Tools->Options->Projects and Solutions->VC++ Directories)
7. Added the DX lib folder (C:\Program Files (x86)\Microsoft DirectX SDK (August 2009)\Lib\x86 on my system) to VC's "Library files" directory (as above)
8. Swapped a single use of "MIIM_FTYPE" in src\system\source\w32assist.cpp to the integer value "0x100" - this may not be the best way to fix it, but I was going for simplicity.
9. Copied the dummy dxtrans.h file from http://www.riseoftheants.com/mmx/mjpeg.zip into DirectX's Include folder above - apparently it's been missing from the DX SDK for some time.
10. Downloaded yasm from http://www.tortall.net/projects/yasm/ and put it in C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin (renamed to yasm.exe)

And that was it!

David

splayerfan
31st January 2012, 04:50
So can your version handle MP4 video or Flash. Not quite sure what all your integration provides in layman's terms for those of us doing some basic editing and conversions.
Thanks davidhorman it looks like you put allot of time into this.

sundansx
26th May 2013, 22:29
Davidhorman - thanks for posting this, it was a very helpful contribution to my efforts.
splayerfan - this is for developers...not for you.

StainlessS
27th December 2014, 13:13
VirtualDub source on SourceForge.
Here link to what looks like all versions of VirtualDub, about 70 different versions from v1.4 onwards.
http://sourceforge.net/projects/virtualdub/files/virtualdub-win/

v1.3c, missing from above link is available from http://www.doom9.org/ homepage/Downloads, via 'source codes' link.

StainlessS
15th October 2015, 22:33
Step 9) above.
yasm-1.3.0-win32.exe (renamed to yasm.exe), produces error for Platform ie 'Win32', as seems to be case significant now and requires 'win32'.
Downloaded older yasm-1.2.0-win32.exe, works as expected.
Issue reported here:- https://code.google.com/p/webm/issues/detail?id=843