VST2SDK
A recreation of the popular Steinberg VST 2.x SDK.
Loading...
Searching...
No Matches
vst_effect_t Struct Reference

Plug-in Effect definition. More...

#include <vst.h>

Data Fields

int32_t magic_number
 VST Magic Number.
 
vst_effect_control_t control
 Control Function.
 
vst_effect_process_t process
 Process Function.
 
vst_effect_set_parameter_t set_parameter
 Set Parameter Function.
 
vst_effect_get_parameter_t get_parameter
 Get Parameter Function.
 
int32_t num_programs
 Number of available pre-defined programs.
 
int32_t num_params
 Number of available parameters.
 
int32_t num_inputs
 Number of available input streams.
 
int32_t num_outputs
 Number of available output streams.
 
int32_t flags
 Effect Flags.
 
void * _unknown_00
 
void * _unknown_01
 
int32_t delay
 Initial delay before processing of samples can actually begin in Samples.
 
int32_t _unknown_02
 
int32_t _unknown_03
 
float input_output_ratio
 Ratio of Input to Output production Defines how much output data is produced relative to input data when using 'process' instead of 'processFloat'.
 
void * effect_internal
 Effect Internal Pointer.
 
void * host_internal
 Host Internal Pointer.
 
int32_t unique_id
 Id of the plugin.
 
int32_t version
 Plugin version.
 
vst_effect_process_float_t process_float
 Process function for in-place single (32-bit float) processiong.
 
vst_effect_process_double_t process_double
 Process function for in-place double (64-bit float) processiong.
 
uint8_t _unknown [56]
 

Detailed Description

Plug-in Effect definition.

Definition at line 2956 of file vst.h.

Field Documentation

◆ _unknown

uint8_t vst_effect_t::_unknown[56]

Definition at line 3118 of file vst.h.

◆ _unknown_00

void* vst_effect_t::_unknown_00
Todo:

Definition at line 3034 of file vst.h.

◆ _unknown_01

void* vst_effect_t::_unknown_01
Todo:

Definition at line 3037 of file vst.h.

◆ _unknown_02

int32_t vst_effect_t::_unknown_02
Todo:

Definition at line 3049 of file vst.h.

◆ _unknown_03

int32_t vst_effect_t::_unknown_03
Todo:

Definition at line 3052 of file vst.h.

◆ control

vst_effect_control_t vst_effect_t::control

Control Function.

See also
vst_effect_control_t
VST_EFFECT_OPCODE

Definition at line 2969 of file vst.h.

◆ delay

int32_t vst_effect_t::delay

Initial delay before processing of samples can actually begin in Samples.

Note
The host can modify this at runtime so it is not safe.
Should be reinitialized when the effect is resumed.
See also
VST_HOST_OPCODE_IO_MODIFIED

Definition at line 3046 of file vst.h.

◆ effect_internal

void* vst_effect_t::effect_internal

Effect Internal Pointer.

You can freely set this to point at some sort of class or similar for use in your own effect. The host must never modify this or the data available through this.

Definition at line 3069 of file vst.h.

◆ flags

int32_t vst_effect_t::flags

Effect Flags.

See also
VST_EFFECT_FLAGS

Definition at line 3031 of file vst.h.

◆ get_parameter

vst_effect_get_parameter_t vst_effect_t::get_parameter

Get Parameter Function.

See also
vst_effect_get_parameter_t

Definition at line 2986 of file vst.h.

◆ host_internal

void* vst_effect_t::host_internal

Host Internal Pointer.

The host may set this to point at data related to your effect instance that the host needs. The effect must never modify this or the data available through this.

Definition at line 3076 of file vst.h.

◆ input_output_ratio

float vst_effect_t::input_output_ratio

Ratio of Input to Output production Defines how much output data is produced relative to input data when using 'process' instead of 'processFloat'.

Example: A ratio of 2.0 means we produce twice as much output as we receive input.

Range: >0.0 to Infinity Default: 1.0

Note
Ignored in VST 2.4 or with VST_EFFECT_FLAG_SUPPORTS_FLOAT.

Definition at line 3062 of file vst.h.

◆ magic_number

int32_t vst_effect_t::magic_number

VST Magic Number.

Should always be VST_FOURCC('VstP')

See also
VST_MAGICNUMBER

Definition at line 2963 of file vst.h.

◆ num_inputs

int32_t vst_effect_t::num_inputs

Number of available input streams.

See also
VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES
VST_HOST_OPCODE_IO_MODIFIED

Definition at line 3017 of file vst.h.

◆ num_outputs

int32_t vst_effect_t::num_outputs

Number of available output streams.

See also
VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES
VST_HOST_OPCODE_IO_MODIFIED

Definition at line 3025 of file vst.h.

◆ num_params

int32_t vst_effect_t::num_params

Number of available parameters.

All programs must have at least this many parameters.

See also
VST_HOST_OPCODE_IO_MODIFIED

Definition at line 3008 of file vst.h.

◆ num_programs

◆ process

vst_effect_process_t vst_effect_t::process

Process Function.

See also
vst_effect_process_t
Deprecated:
(VST 2.4+) Deprecated and practically unsupported in all VST 2.4 compatible hosts and may treat it as just another vst_effect_t::process_float.

Definition at line 2976 of file vst.h.

◆ process_double

vst_effect_process_double_t vst_effect_t::process_double

Process function for in-place double (64-bit float) processiong.

See also
vst_effect_process_double_t
Note
(VST 2.4+) Available from VST 2.4 and later.

Definition at line 3115 of file vst.h.

◆ process_float

vst_effect_process_float_t vst_effect_t::process_float

Process function for in-place single (32-bit float) processiong.

See also
vst_effect_process_single_t
Note
(VST 2.0+) Available from VST 2.0 and later.

Definition at line 3105 of file vst.h.

◆ set_parameter

vst_effect_set_parameter_t vst_effect_t::set_parameter

Set Parameter Function.

See also
vst_effect_set_parameter_t

Definition at line 2981 of file vst.h.

◆ unique_id

int32_t vst_effect_t::unique_id

Id of the plugin.

Due to this not being enough for uniqueness, it should not be used alone for indexing. Ideally you want to index like this: [unique_id][module_name][version][flags] If any of the checks after unique_id fail, you default to the first possible choice.

Used in combination with VST_EFFECT_CATEGORY_CONTAINER.

BUG: Some broken hosts rely on this alone to save information about VST plug-ins.

Definition at line 3089 of file vst.h.

◆ version

int32_t vst_effect_t::version

Plugin version.

Unrelated to the minimum VST Version, but often the same.

Definition at line 3095 of file vst.h.


The documentation for this struct was generated from the following file: