On Friday 03 Nov 2006 16:39, Leonard Ritter wrote:
what is required here to solve the problem is to
simply take the vst
headers and write a new implementation that is binary compatible. these
headers can be used for hosts.
The difficulty is that the VST SDK licensing agreement expressly forbids this.
You could argue for hours about the scope and enforceability of its
no-reverse-engineering clause, but I don't think it would be proper to just
ignore it. The header would presumably have to be reimplemented by someone
who had not agreed to the agreement, i.e. had never obtained the SDK.
I think it would probably be fine for one developer who had agreed to the SDK
license to implement and publish an open source (BSD or similar) VST host, as
source and binary but omitting the VST SDK headers, that loaded an arbitrary
plugin and printed out information about the protocol codes it was sending
and receiving, for the purposes of debugging it with third-party plugins.
And then it would probably be fine for another developer who had never
downloaded the SDK to independently take that host and work out what would
need to be filled in to make it compile and run (i.e. resynthesise the SDK
headers based on the "spec" that is the working host). If those two things
independently came to pass, the result would presumably be an unencumbered
(if partial) API.
Not that I really know what I'm talking about, especially in legal terms.
Chris