View Single Post
Old 17th March 2013, 23:48   #3  |  Link
Pesmontis
Registered User
 
Join Date: Mar 2013
Posts: 1
Hello Roger,

I've tested your project, because ffmpeg wasn't able to load my AviSynth scripts.
One of these scripts included the AviSynth 'Layer' function, the other used the 'RCAnaglyph' function from the "Pantarheon 3D AviSynth Toolbox".

I'm happy to write that I've been able to compile your code on Windows Server 2003 32-bit, with VC++ 2010.
Compilation was quite a hassle, therefor I'd like to suggest you might have added a binary in the source code directories.
Your source additionally required:
- streams.h
- strmbasd.lib

These are DirectX 9 files, so I think that the "AviSynth directshow capture device" project requires at least the include directory of the latest Microsoft DirectX SDK. Nevertheless, these two files are NOT in that SDK (!), and I had to install the "Windows SDK for Windows Server 2008 and .NET Framework 3.5" to get 'streams.h'. So my additional include directories are:
- <DirectX SDK>\Include
- <Windows SDK>\samples\Multimedia\DirectShow\BaseClasses

In order to get 'strmbasd.lib', it is required to compile the project 'baseclasses'.
This is a VC++ 2008 project, by default set to compile for an x64 platform.
This causes trouble when this project is converted by VC++ 2010 on Win2003 32-bit.
Using Notepad, I manually removed the references to all x64 environments in the .sln and .vcproj files, before VC++ 2010 could successfully convert and compile 'baseclasses'.

After this compilation, I added the directory of 'strmbasd.lib' to the library directories of the "AviSynth directshow capture device" project.
Now I compiled both the debug version and the release version of the project's binary 'avisynth-as-dshow.dll'.

In order to register and use the debug version, two additional DLLs are required in the <Windows>\system32 directory:
- msvcp100d.dll
- msvcr100d.dll
These two files can simply be copied to that location, they don't need registration.

Then run either:

> regsvr32 <path to 'avisynth-as-directshow-capture'\source_code\Win32\Debug\avisynth-as-dshow.dll

or:
> regsvr32 <path to 'avisynth-as-directshow-capture'\source_code\Win32\Release\avisynth-as-dshow.dll

Next I found - in my opinion - very strange Java + Ruby setup files. Are these required because of GitHub?
The ONLY additional thing for running 'avisynth-as-dshow.dll' is the registry entry (string value):
HKCU\Software\avisynth-as-dshow-capture\avs_filename_to_read

The parameter value should be the directory and the name of the AviSynth script file to run.
This might be accomplished with a batch file or something, but I sincerely have my doubts about using Java + Ruby for this.

I tested the debug version with VLC, but that first try didn't work.
The release version however works in VLC and in Skype,
so now I have a 3D webcam in Skype!
(Thanks to your software, yes sir).
Pesmontis is offline   Reply With Quote