Michael Schnell wrote:
Did anybody ever do a "VST plugin" by means of Lazarus/fpc ?

==============================
A VST plugin is a DLL, that can receive and send MIDI and/or Audio data streams and features a GUI ( -> http://en.wikipedia.org/wiki/Virtual_Studio_Technology ). There are hundreds of VST plugins (commercial and non-commercial) and there are a lot of (commercial and non-commercial) programs that can host such VST plugins, on Windows and on Mac.

The API of such DLL is defined (by Steinberg) as well for Windows as for MAC (but not for Linux), as well for 32 Bit as for 64 Bit systems. Steinberg provides a C SDK that allows for easily creating such VSTs.

Some years ago someone did a (freely available) Delphi SDK for creating 32 Bit VSTs for Windows. I already tried same with "Turbo Delphi" and was able to get something working.
==============================

Question:
What about doing such VST plugins with Lazarus ?

In fact I would like to do some 64 Bit VSTs for Windows.

Are there any obvious problems to do that (e.g. porting the SDK to Lazarus, porting the API interface unit to 64 Bit and/or doing a DLL that provides it's stand alone GUI.)

Any comments ?

I've played with special-purpose MIDI filters in a DLL/so, but the only GUI element was that menu entries were copied from a form in the DLL to the main form. There's been a couple of threads in this list about VST, I presume that this is the SDK you mentioned above.

Below from an older thread:

> Christian Budde set up DelphiAsioVST
> (http://sourceforge.net/projects/delphiasiovst/) to help with VST
> development in Object Pascal. It has alot of classes which you can use,
> or you can just use Frederick Vanmol's translation of the SDK, and
> implement everything yourself.
>
> Over the last couple of years there have been some problems, but mostly
> you can use FPC now. However, at the moment these will only be able to
> use the host's default UI. I am mid flow sorting out the code so that a
> plugin can supply it's own UI, then full XPlatform VST development will
> be possible using Laz/FPC :-)

Also:

- VST is in Lazarus-CCR, but an older v4 version. VST porting is hindered by
  not accepting changes (like a sane IFDEF system) upstream, which makes
  every port an one off change.

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to