2.1 KiB
2.1 KiB
VST2
FFI
dispatch(opcode: i32, index: i32, value: isize, ptr: *mut c_void, opt: f32) -> isize- Dispatch an event with an opcode.Get VST API Version- Return the VST API version.Shutdown- Shut down the plugin.SetSampleRate- Set the sample rate toopt.StateChanged- (Is this a call to reset the plugin I assume?)GetParameterName- Store the name of the parameter atindexinto `ptr. Return 0 for success.GetParameterLabel- Store the label of the parameter atindexinto `ptr. Return 0 for success.GetParameterDisplay- (Not sure what this does)CanBeAutomated- (Not sure what this does)GetEffectName- Store the effect name intoptr. Return 1 for success.GetProductName- Store the product name intoptr. Return 1 for success.GetVendorName- Store the vendor name intoptr. Return 1 for success.GetCurrentPresetName- (Incomplete I assume?)ProcessEvent- (Not sure what this does)GetData- (Not sure what this does)SetData- (Not sure what this does)EditorGetRect- Store initial plugin window size intoptr. The host may call this before opening the plugin editor window. Returning the correct size based on DPI scaling can be acheived by first a VST extension, second from a user-supplied config-file, and third from guessing the DPI scaling of the system.EditorOpen- Open the editor window. (Isptra handle to the window?)EditorClose- Close the editor window.UnhandledOpCode- Print the unhandled opcode.
get_parameter(index: i32) -> f32- Retreive the current value of the parameter atindex.set_parameter(index: i32, val: f32)- Set the value of the parameter atindex.get_musical_time() -> MusicalTime { bmp: f64, beat: f64 }- Retreive musical time information.process_replacing(in_buffers: *const *const f32, out_buffers: *mut *mut f32, nframes: i32)- Process buffers.
VST3
FFI
- (commands)
AU
FFI
- (commands)
LV2
FFI
- (commands)