BASS.NET API for the Un4seen BASS Audio Library

Un4seen.Bass.AddOn.Vst Namespace

BASS.NET API for the Un4seen BASS Audio Library
This namespace contains all classes, delegates and enumerations to support the native bass_vst.dll. BASS_VST is an extension enabling the use of VST effect plugins with BASS.

All BASS_VST API calls are contained in the main class BassVst and have been implemented as static methods. So there is NO need to create an instance of the BassVst class!

All BASS_VST structures have been implemented as real classes (named in capital letters). This because they are much easier to use and reflect exactly what BASS_VST would expect. Those classes needs to be instantiated before their use.

If you use BASS_VST in your projects, you should add the following disclaimer:

"BASS_VST by Bjoern Petersen for
VST PlugIn Technology by Steinberg Media Technologies GmbH"

(at least the second line!) to your project and you must not charge anything for this feature.

Moreover, if you use this - or any other - VST technology in your projects, you may need a (free) licenence for this from Steinberg.

BASS_VST is VST host compatible up to the new VST 2.4 implementation and (hopefully) implements all needed features - incl. the new double precision processing.


Basic VST Effect class as returned in the aeffect member of the BASS_VST_INFO class as obtained by BASS_VST_GetInfo(Int32, BASS_VST_INFO).

See the VST SDK for more informaton.

This class is only needed if you subclass the audioMaster callback using BASS_VST_AUDIO_MASTER in the VSTPROC (see the VST DSK for more information).
Public classBASS_VST_INFO
BASS_VST_GetInfo(Int32, BASS_VST_INFO) writes some information about a vstHandle returned by BASS_VST_ChannelSetDSP(Int32, String, BASSVSTDsp, Int32) to this BASS_VST_INFO structure.
Common information structure about an editable parameter to a VST plugin parameter to be used with BASS_VST_GetParamInfo(Int32, Int32, BASS_VST_PARAM_INFO).
Public classBassVst

Requires: bass_vst.dll - VST plugin support Add-On.


Public delegateVST_AEFFECT_Dispatcher
The general VST plugin dispatcher callback delegate).
Public delegateVST_AEFFECT_GetParameter
Gets a value of automatable parameter.
Public delegateVST_AEFFECT_Process
The VST plugin process callback delegate. Accumulating process mode is deprecated in VST 2.4, use VST_AEFFECT_ProcessReplacing instead.

See Steinberg VST SDK documentaion for more information.

Public delegateVST_AEFFECT_ProcessDoubleProc
The VST plugin process callback delegate (non accumulating, double-precision).

See Steinberg VST SDK documentaion for more information.

Public delegateVST_AEFFECT_ProcessReplacing
The VST plugin process callback delegate (non accumulating).

See Steinberg VST SDK documentaion for more information.

Public delegateVST_AEFFECT_SetParameter
Set new value of automatable parameter.
Public delegateCode exampleVSTPROC
User defined VST callback method to be used with BASS_VST_SetCallback(Int32, VSTPROC, IntPtr).

Public enumerationBASSVSTAction
VST action parameters as used within the VSTPROC callback.

See also BASS_VST_SetCallback(Int32, VSTPROC, IntPtr).

Public enumerationBASSVSTAEffectFlags
Public enumerationBASSVSTDispatcherOpCodes
VST Dispatcher OpCodes to be used within the VST_AEFFECT_Dispatcher callback when using BASS_VST_AEFFECT.

For more info see the Steinberg VST SDK documentation.

Public enumerationBASSVSTDsp
VST DSP flags to be used within the BASS_VST_ChannelSetDSP(Int32, String, BASSVSTDsp, Int32) method.