|
VST2SDK
A recreation of the popular Steinberg VST 2.x SDK.
|
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] |
| vst_effect_control_t vst_effect_t::control |
Control Function.
| int32_t vst_effect_t::delay |
Initial delay before processing of samples can actually begin in Samples.
| void* vst_effect_t::effect_internal |
| int32_t vst_effect_t::flags |
| vst_effect_get_parameter_t vst_effect_t::get_parameter |
| void* vst_effect_t::host_internal |
| 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
| int32_t vst_effect_t::magic_number |
| int32_t vst_effect_t::num_inputs |
Number of available input streams.
| int32_t vst_effect_t::num_outputs |
Number of available output streams.
| int32_t vst_effect_t::num_params |
Number of available parameters.
All programs must have at least this many parameters.
| int32_t vst_effect_t::num_programs |
Number of available pre-defined programs.
| vst_effect_process_t vst_effect_t::process |
Process Function.
| vst_effect_process_double_t vst_effect_t::process_double |
Process function for in-place double (64-bit float) processiong.
| vst_effect_process_float_t vst_effect_t::process_float |
| vst_effect_set_parameter_t vst_effect_t::set_parameter |
| 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.
| int32_t vst_effect_t::version |