diff --git a/src/common/events.h b/src/common/events.h index 8fb19bb8..86d3ccea 100644 --- a/src/common/events.h +++ b/src/common/events.h @@ -257,6 +257,9 @@ auto passthrough_event(AEffect* plugin, F callback) { [&](DynamicVstEvents& events) -> void* { return &events.as_c_events(); }, + [&](DynamicSpeakerArrangement& speaker_arrangement) -> void* { + return &speaker_arrangement.as_c_speaker_arrangement(); + }, [&](WantsChunkBuffer&) -> void* { return string_buffer.data(); }, diff --git a/src/common/logging.cpp b/src/common/logging.cpp index e6c13e92..0f3121d5 100644 --- a/src/common/logging.cpp +++ b/src/common/logging.cpp @@ -183,6 +183,10 @@ void Logger::log_event(bool is_dispatch, [&](const DynamicVstEvents& events) { message << "<" << events.events.size() << " midi_events>"; }, + [&](const DynamicSpeakerArrangement& speaker_arrangement) { + message << "<" << speaker_arrangement.speakers.size() + << " speakers>"; + }, [&](const WantsChunkBuffer&) { message << ""; }, diff --git a/src/common/serialization.h b/src/common/serialization.h index 750ead55..931f4c78 100644 --- a/src/common/serialization.h +++ b/src/common/serialization.h @@ -333,6 +333,7 @@ using EventPayload = std::variant