From e7fee26d1a1e62195d0412e848cf1142f8c467bc Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Tue, 7 Jul 2015 14:50:05 -0700 Subject: [PATCH] give specific packet size for audio env packet --- assignment-client/src/audio/AudioMixer.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/assignment-client/src/audio/AudioMixer.cpp b/assignment-client/src/audio/AudioMixer.cpp index 055294b9bf..654c5dd169 100644 --- a/assignment-client/src/audio/AudioMixer.cpp +++ b/assignment-client/src/audio/AudioMixer.cpp @@ -509,18 +509,26 @@ void AudioMixer::sendAudioEnvironmentPacket(SharedNodePointer node) { if (sendData) { auto nodeList = DependencyManager::get(); - auto envPacket = NLPacket::create(PacketType::AudioEnvironment); unsigned char bitset = 0; + + int packetSize = sizeof(bitset); + + if (hasReverb) { + packetSize += sizeof(reverbTime) + sizeof(wetLevel); + } + + auto envPacket = NLPacket::create(PacketType::AudioEnvironment, packetSize); + if (hasReverb) { setAtBit(bitset, HAS_REVERB_BIT); } - envPacket.write(&bitset, sizeof(unsigned char)); + envPacket.write(&bitset, sizeof(bitset)); if (hasReverb) { - envPacket.write(&reverbTime, sizeof(float)); - envPacket.write(&wetLevel, sizeof(float)); + envPacket.write(&reverbTime, sizeof(reverb)); + envPacket.write(&wetLevel, sizeof(wetLevel)); } nodeList->sendPacket(envPacket, node); }