obiwanjacobi / vst.net

Virtual Studio Technology (VST) for .NET. Plugins and Host applications.
https://obiwanjacobi.github.io/vst.net/index.html
GNU Lesser General Public License v2.1
420 stars 52 forks source link

VST3 #20

Closed pzandvoort closed 4 years ago

pzandvoort commented 4 years ago

Your comment in the VST3 section of the code says IT FAILED . The interop looks solid... How did it fail?

obiwanjacobi commented 4 years ago

The VST3 interfaces are binary compatible with COM interfaces. The idea was to use .NET COM support to marshal calls to the .NET counterparts. I never got that working. I cannot remember the details but I think it had to do with the threading-mode (apartment-threading) of the main thread. I remember making several SO questions. I also wanted it to be cross-platform and so I tried to use mono and experimented with using some internal API -can't remember the details- that also failed and back then the mono community was not very helpful.

pzandvoort commented 4 years ago

I had the same thought - it looks binary compatible with COM so .net should be able to do all the marshalling for me. I got to the point where the host would load the plugin, create the AudioProcessor but then crash on initializing the EditController, like it's missing a required interface or something. Did you get farther than that?

obiwanjacobi commented 4 years ago

I really don't remember, sorry. It was a long time ago and I have done many other things since. But look at the SO questions I posted during that time - you may find something useful:

Hope it helps...

pzandvoort commented 4 years ago

No worries - thanks a lot.