Introduction
This website is mainly dedicated to several programming techniques for
VST (Virtual Studio Technology) -
a software technology developed by Steinberg, Media Technologies. We are
not a part of the Steinberg development team.
The VST interface is a very popular open standard for realtime digital
audio processing, adapted by most serious audio applications. VST plugins
can be plugged into any VST compliable host application and so provide
a wide range of additional Digital Signal Processing (DSP) services from
simple effects to highly complex sound rendering, manipulation and analysis.
Our intention is to take some looks at the possibilities of this interesting
technology and discover some new and fascinating ways of implementation
and extension. We will examine, how we can connect other available programming
technologies to VST, especially how we can implement advanced user interfaces
into VST plugins. Also we will take a look at DSP programming in general
and show some ways of optimizations for streaming audio.
Currently the following articles are available:
Article 1: "Designing VST plugins completely
'visual' with Borland C++Builder®"
Article 2: "Building and implementing graphical
user interfaces for VST plugins with Macromedia Flash®"
Article 3: "Optimising streamed floating point
processing with Inline Assembler using SIMD instruction sets"
Article 4: "Micro surgical implementation
of a 4 pole low pass filter with Inline Assembler"
The article series will be extended step by step. Additionally the plan
is to provide a collection of useful links to programming resources and
information for C/C++ and Assembler programmers addicted to VST programming.
If you are interested, you can join the team and publish your own articles
on this website.
Contact: developers@klangformer.de
News: New
Horizon for Plug-Ins
Steinberg recently released a new MIDI programming interface for Cubase
SX, the VST Module Architecture. With this new interface it is possible
to develop MIDI effects and all kind of other MIDI processing plugins
for hosts, supporting this new technology. In this way those hosts can
be extended to provide all kind of useful and/or specialised additional
MIDI services.
A few days after release of the new SDK we have started to develop a
new VCL component for our !j development VST® ToolKit for Borland
C++Builder®.
With this component and the base VST components, you can design new MIDI
plugins for Steinbergs VST Module Architecture on the fly. The usage differs
not so much from the development of normal VST plugins with our component
package.
You design MIDI modules completely visual with C++Builder, using the VSTGUILib
in realtime.
We also will prepare an instantly usable startup template for "compile
on the fly" VST Module plugins.
The first project we prepare (as an example application) is the Remote
desktop plugin for the Access® Virus b©* synthesizer. With this
plugin it will be possible to automate a Virus b synthesizer directly
from within the host application. Additional there is planned a variety
of functionality to manage sound banks and SysEx dumps of the Virus b
hardware synthesizer with this interface.
It is also possible to use this module to automate our Klangformer synthesizer
alternatively in realtime.
Here some screens of the first results:
Furthermore is thinkable to develop a generic remote desktop plugin,
which the user can modify via a string based *.ini file, to build its
own skinable MIDI automation plugins. The plan is to prepare a single
plugin, which can be very easy used to design all kind of MIDI remote
applications for all possible hardware inside a studio setup.
Such a plugin would be actually very useful, because Steinberg has dropped
the complete former Studio Module of the older Cubase versions in SX without
any replacement.
A generic Studio Module based on the new Module Architecture would close
an important productivity hole with the current Nuendo-based host applications
by Steinberg.
[*] = Access and Virus b are registered trademarks of Access Music Electronics,
Germany
© 2003 !j development
division programming & audio
|