diff --git a/CHANGELOG.md b/CHANGELOG.md index 4306ffac..a21f80cb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,8 @@ Versioning](https://semver.org/spec/v2.0.0.html). by getting rid of all memory allocations during audio processing. - Changed the way mutual recursion in VST3 plugins on the plugin side works to counter any potential GUI related timing issues with VST3 plugins. +- The deserialization part of yabridge's communication is now slightly faster by + skipping some unnecessary checks. ### Fixed diff --git a/src/common/communication/common.h b/src/common/communication/common.h index 3021f773..ebc09594 100644 --- a/src/common/communication/common.h +++ b/src/common/communication/common.h @@ -35,11 +35,26 @@ #include "../logging/common.h" #include "../utils.h" -template -using OutputAdapter = bitsery::OutputBufferAdapter; +namespace bitsery { +struct LittleEndianConfig { + // In case we ever want to bridge from some big-endian architecture to + // x86_64 Windows, then we should make sure we always encode data using the + // same endianness + static constexpr EndiannessType Endianness = EndiannessType::LittleEndian; + // Since we provide the data on both sides, we can safely disable these + // checks + static constexpr bool CheckDataErrors = false; + static constexpr bool CheckAdapterErrors = false; +}; +} // namespace bitsery template -using InputAdapter = bitsery::InputBufferAdapter; +using OutputAdapter = + bitsery::OutputBufferAdapter; + +template +using InputAdapter = + bitsery::InputBufferAdapter; /** * Serialize an object using bitsery and write it to a socket. This will write