You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 27, 2024. It is now read-only.
But we are still requiring plugins to own a SendEventBuffer to be able to send midi events. This requires plugin authors to know about the SendEventBuffer and introduces more friction than what could be possible: The SendEventBuffer for each plugin could be an implementation detail, hidden from the plugin author, by storing it in the plugin cache, just like we do with the plugin's Info struct: https://github.com/rust-dsp/rust-vst/blob/6dab92fbbf327837f468de9910414f9ea3e5fffc/src/cache.rs#L3-L4
And then sending midi events would be as simple as:
Right now, sending midi events is already quite simple:
https://github.com/rust-dsp/rust-vst/blob/6dab92fbbf327837f468de9910414f9ea3e5fffc/examples/fwd_midi.rs#L20
But we are still requiring plugins to own a
SendEventBuffer
to be able to send midi events. This requires plugin authors to know about theSendEventBuffer
and introduces more friction than what could be possible: TheSendEventBuffer
for each plugin could be an implementation detail, hidden from the plugin author, by storing it in the plugin cache, just like we do with the plugin'sInfo
struct:https://github.com/rust-dsp/rust-vst/blob/6dab92fbbf327837f468de9910414f9ea3e5fffc/src/cache.rs#L3-L4
And then sending midi events would be as simple as:
with a method
send_events()
onHostCallback
that usesAEffect::get_cache()
:https://github.com/rust-dsp/rust-vst/blob/04258d15fa49e0aec5d38bcbe1839a635aeed7f4/src/api.rs#L163
It already has the
AEffect
pointer:https://github.com/rust-dsp/rust-vst/blob/4b19b1772a7c8a375498dbbe7f58ebf42cf9da68/src/plugin.rs#L751-L754
What do you think?
The text was updated successfully, but these errors were encountered: