mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-15 13:00:02 +02:00
💥 Reimplement VST2 audio processing
We now use shared memory to store the input and output audio buffers. This means that we have to copy less data every processing cycle, since a single copy to and a single copy from the shared memory object suffices now. This should reduce the DSP load for VST2 plugins (especially when used in a plugin group) marginally to significantly depending on the plugins used and the system configuration.
This commit is contained in:
@@ -437,6 +437,9 @@ void Vst2Logger::log_event(
|
||||
message << "<writable_buffer>";
|
||||
},
|
||||
[&](const WantsAEffectUpdate&) { message << "<nullptr>"; },
|
||||
[&](const WantsAudioShmBufferConfig&) {
|
||||
message << "<nullptr>";
|
||||
},
|
||||
[&](const WantsChunkBuffer&) {
|
||||
message << "<writable_buffer>";
|
||||
},
|
||||
@@ -500,7 +503,12 @@ void Vst2Logger::log_event_response(
|
||||
[&](const ChunkData& chunk) {
|
||||
message << ", <" << chunk.buffer.size() << " byte chunk>";
|
||||
},
|
||||
[&](const AEffect&) { message << ", <AEffect_object>"; },
|
||||
[&](const AEffect&) { message << ", <AEffect object>"; },
|
||||
[&](const AudioShmBuffer::Config& config) {
|
||||
message << ", <shared memory configuration for \""
|
||||
<< config.name << "\", " << config.size
|
||||
<< " bytes>";
|
||||
},
|
||||
[&](const DynamicSpeakerArrangement& speaker_arrangement) {
|
||||
message << ", <" << speaker_arrangement.speakers.size()
|
||||
<< " output_speakers>";
|
||||
|
||||
Reference in New Issue
Block a user