This project has moved and is read-only. For the latest updates, please go here.

DX VST supported?

Topics: Plugin Development
Nov 7, 2012 at 10:49 AM

I'm wondering if DirextX VSTs are supported? I think DX VSTs don't export main and VSTPluginMain. I would like to wrap-around a DX VST plugin using C#. Any ideas? TIA.

Nov 7, 2012 at 11:42 AM

Do you mean:

  1. Loading DX plugins as a managed Host application?
  2. Writing a managed Plugin that is seen as a DX plugin by a(ny) (unmanaged) Host?

I am not familiar with DX and never bothered to look at it. I gathered that it was a dying breed anyway...?

Nov 7, 2012 at 5:17 PM

Thanks for a quick reply.

Being able to do #1 would be nice. If that is hard, I want to write a managed Plugin (DX or VST with main/VSTPluginMain) but forward functionality calls to an existing DX plugin. The reason why I want to do this is there are many free DX plugins out there and I want to reuse but add more functionalities (i.e. change the Plugin parameters automatically based on some conditions exposed by a web service). If, as I Host, I can load a DX plugin, I believed my host can then communicate w/ the web service to get the parameters and then command the DX plugin to act on the new paramters (this is #1). Or if I can write a new Plugin that get hosted by a host (i.e. Reaper) and my Plugin can communicate with the web service to get the parameters and turn around and call the DX plugin to do the actual DSP work (this is #2).

Is it possible to do the above w/ the current VST.NET?

Nov 7, 2012 at 6:24 PM
Edited Nov 7, 2012 at 6:24 PM

Option 1 is probably the simplest. If I'm correct, DX is COM, right? So that would need a whole new interop layer - and thats a lot of work.

Once you have option 1, you can wrap any DX plugin and host it in a VST wrapper plugin, which in turn is hosted in a 3rd party host application. This allows you to focus on the main task of controlling the wrapped plugin. See also the WrapperPlugin Sample plugin.

I would suggest you create an item in the Issue Tracker and preferable list some resources on DX explaining how to host those DX plugins...

Nov 7, 2012 at 8:00 PM

I'm not sure if DX plugins are COMs or not. I know it doesn't export main/VSTPluginMain methods though. They are getting out of date but there are many free ones out there to use. I'll do some research on DX plugin and create a new Tracker with hopefully enough info for you to take a look.


BTW, are you saying that if I have a third party VST Plugin (w/ main/VSTPluginMain), I can use the code similar to the "WrapperPlugin sample" to create a new VST Plugin and wrap-around the this 3rd party plugin (#2 on my list)? This is a neat feature.

I played around w/ the sample Host application and I don't see where to specify the Input and Output WDM devices. Any ideas?

Nov 8, 2012 at 6:23 AM

Also get people to vote for your DX plugin idea (in the Issue Tracker). If there are a couple of votes I will seriously look into it.

Yes, exactly. The Wrapper Plugin sample does exactly that. Take a look at it, its pretty simple (for the part you have to write ;-)

The Host sample is not a working application. It only demonstrates how to use some of the VST.NET API's. I would suggest you ask this question in a separate discussion item - there are a couple of Host devs on this site that may be able to get you started quickly.