mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-08 04:20:13 +02:00
Fix speaker arrangement bitsets
The sizes were wrong, and Blue Cat Audio's VST3 plugins seem to use the upper bits to store the channel configuration, which thus got read out incorrectly.
This commit is contained in:
+13
-10
@@ -915,9 +915,10 @@ bool Vst3Logger::log_request(
|
||||
if (!first) {
|
||||
message << ", ";
|
||||
}
|
||||
message << "SpeakerArrangement: 0b"
|
||||
<< std::bitset<sizeof(Steinberg::Vst::SpeakerArrangement)>(
|
||||
arrangement);
|
||||
message
|
||||
<< "SpeakerArrangement: 0b"
|
||||
<< std::bitset<sizeof(Steinberg::Vst::SpeakerArrangement) * 8>(
|
||||
arrangement);
|
||||
first = false;
|
||||
}
|
||||
|
||||
@@ -927,9 +928,10 @@ bool Vst3Logger::log_request(
|
||||
if (!first) {
|
||||
message << ", ";
|
||||
}
|
||||
message << "SpeakerArrangement: 0b"
|
||||
<< std::bitset<sizeof(Steinberg::Vst::SpeakerArrangement)>(
|
||||
arrangement);
|
||||
message
|
||||
<< "SpeakerArrangement: 0b"
|
||||
<< std::bitset<sizeof(Steinberg::Vst::SpeakerArrangement) * 8>(
|
||||
arrangement);
|
||||
first = false;
|
||||
}
|
||||
|
||||
@@ -1778,10 +1780,11 @@ void Vst3Logger::log_response(
|
||||
log_response_base(is_host_vst, [&](auto& message) {
|
||||
message << response.result.string();
|
||||
if (response.result == Steinberg::kResultOk) {
|
||||
message << ", <SpeakerArrangement: 0b"
|
||||
<< std::bitset<sizeof(Steinberg::Vst::SpeakerArrangement)>(
|
||||
response.arr)
|
||||
<< ">";
|
||||
message
|
||||
<< ", <SpeakerArrangement: 0b"
|
||||
<< std::bitset<sizeof(Steinberg::Vst::SpeakerArrangement) * 8>(
|
||||
response.arr)
|
||||
<< ">";
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user