This commit is contained in:
Atlante45 2014-10-24 14:56:56 -07:00
parent 847ef64b66
commit 12f0237dc7
3 changed files with 14 additions and 16 deletions

View file

@ -722,7 +722,7 @@ void AudioMixer::run() {
char* mixDataAt; char* mixDataAt;
if (streamsMixed > 0) { if (streamsMixed > 0) {
// pack headers // pack header
int numBytesMixPacketHeader = populatePacketHeader(clientMixBuffer, PacketTypeMixedAudio); int numBytesMixPacketHeader = populatePacketHeader(clientMixBuffer, PacketTypeMixedAudio);
mixDataAt = clientMixBuffer + numBytesMixPacketHeader; mixDataAt = clientMixBuffer + numBytesMixPacketHeader;
@ -741,8 +741,7 @@ void AudioMixer::run() {
// find reverb properties // find reverb properties
for (int i = 0; i < _zoneReverbSettings.size(); ++i) { for (int i = 0; i < _zoneReverbSettings.size(); ++i) {
AudioMixerClientData* data = static_cast<AudioMixerClientData*>(node->getLinkedData()); AudioMixerClientData* data = static_cast<AudioMixerClientData*>(node->getLinkedData());
AvatarAudioStream* stream = data->getAvatarAudioStream(); glm::vec3 streamPosition = data->getAvatarAudioStream()->getPosition();
glm::vec3 streamPosition = stream->getPosition();
if (_audioZones[_zoneReverbSettings[i].zone].contains(streamPosition)) { if (_audioZones[_zoneReverbSettings[i].zone].contains(streamPosition)) {
hasReverb = true; hasReverb = true;
reverbTime = _zoneReverbSettings[i].reverbTime; reverbTime = _zoneReverbSettings[i].reverbTime;
@ -754,12 +753,14 @@ void AudioMixer::run() {
bool dataChanged = (stream->hasReverb() != hasReverb) || bool dataChanged = (stream->hasReverb() != hasReverb) ||
(stream->hasReverb() && (stream->getRevebTime() != reverbTime || (stream->hasReverb() && (stream->getRevebTime() != reverbTime ||
stream->getWetLevel() != wetLevel)); stream->getWetLevel() != wetLevel));
if (dataChanged) {
// Update stream // Update stream
if (hasReverb) { if (hasReverb) {
stream->setReverb(reverbTime, wetLevel); stream->setReverb(reverbTime, wetLevel);
} else { } else {
stream->clearReverb(); stream->clearReverb();
} }
}
// Send at change or every so often // Send at change or every so often
float CHANCE_OF_SEND = 0.01f; float CHANCE_OF_SEND = 0.01f;
@ -770,7 +771,6 @@ void AudioMixer::run() {
char* envDataAt = clientEnvBuffer + numBytesEnvPacketHeader; char* envDataAt = clientEnvBuffer + numBytesEnvPacketHeader;
unsigned char bitset = 0; unsigned char bitset = 0;
setAtBit(bitset, HAS_DATA_BIT);
if (hasReverb) { if (hasReverb) {
setAtBit(bitset, HAS_REVERB_BIT); setAtBit(bitset, HAS_REVERB_BIT);
} }

View file

@ -13,7 +13,6 @@
#include "InboundAudioStream.h" #include "InboundAudioStream.h"
#include "PacketHeaders.h" #include "PacketHeaders.h"
#include <SharedUtil.h>
const int STARVE_HISTORY_CAPACITY = 50; const int STARVE_HISTORY_CAPACITY = 50;

View file

@ -45,9 +45,8 @@ const int DEFAULT_WINDOW_SECONDS_FOR_DESIRED_CALC_ON_TOO_MANY_STARVES = 50;
const int DEFAULT_WINDOW_SECONDS_FOR_DESIRED_REDUCTION = 10; const int DEFAULT_WINDOW_SECONDS_FOR_DESIRED_REDUCTION = 10;
const bool DEFAULT_REPETITION_WITH_FADE = true; const bool DEFAULT_REPETITION_WITH_FADE = true;
// Mixed Audio bitset // Audio Env bitset
const int HAS_DATA_BIT = 0; // 1st bit const int HAS_REVERB_BIT = 0; // 1st bit
const int HAS_REVERB_BIT = 1; // 2nd bit
class InboundAudioStream : public NodeData { class InboundAudioStream : public NodeData {
Q_OBJECT Q_OBJECT