Skip to main content

Crate vst_audio_protocol

Crate vst_audio_protocol 

Source
Expand description

Control framing and deterministic host supervision from ADR 0021.

Re-exports§

pub use editor::EditorAction;
pub use editor::EditorImage;
pub use editor::EditorPlatform;
pub use editor::EditorReply;
pub use editor::EditorStatus;
pub use editor::ParentWindow;
pub use processing::BusConfiguration;
pub use processing::Capabilities;
pub use processing::ProcessingSetup;

Modules§

editor
Framework-independent native editor operations. Unsupported native features return RequestError; no operation falls back to loading code in the parent.
layout
Speaker order is ascending VST 3 speaker bit, never channel-count guessing.
processing
Shared processing configuration. Native bus indices are never collapsed.
state
Versioned VST 3 state envelope. VST 2 chunks retain their native representation.

Structs§

Bus
BusInfo
A bus as the plugin declares it, before any is activated.
ClassInfo
Frame
HostWatch
Parameter
PluginError
StateHistory
Two committed state blobs. A failed restore of the newest blob selects the previous blob without destroying either copy.
UnknownFrame

Enums§

Action
What the caller does next. Kill, a crash’s EnterFallback and Disable all leave the engine on the fallback path until a later LeaveFallback. Disable also ends the process if it is still alive (the third failure can be a hang).
BusKind
What a declared audio bus is for.
CodecError
DecodedFrame
DisableReason
EditPhase
KillReason
Message
PluginFormat
Received
RequestKind
SampleFormat
WatchState

Constants§

MAGIC
MAX_MESSAGE_BYTES
MAX_STATE_BYTES
MAX_STRING_BYTES
Longest UTF-8 string in a message. Windows long paths are why it is above MAX_PATH.
PROTOCOL_MAJOR
PROTOCOL_MINOR

Functions§

decode_frame
duration_ms
encode_frame
read_frame
Reads one frame. Its 8-byte metadata is read first, and the declared length is rejected before allocating the body. Ok(None) is a clean EOF before a new frame; a partial frame is an error.
write_frame