mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 14:29:03 +02:00
don't use usecTimestampNow for per second actions
This commit is contained in:
parent
b1c6d1d256
commit
97cd65cf80
3 changed files with 6 additions and 8 deletions
|
@ -82,7 +82,6 @@ AudioMixer::AudioMixer(ReceivedMessage& message) :
|
||||||
_performanceThrottlingRatio(0.0f),
|
_performanceThrottlingRatio(0.0f),
|
||||||
_attenuationPerDoublingInDistance(DEFAULT_ATTENUATION_PER_DOUBLING_IN_DISTANCE),
|
_attenuationPerDoublingInDistance(DEFAULT_ATTENUATION_PER_DOUBLING_IN_DISTANCE),
|
||||||
_noiseMutingThreshold(DEFAULT_NOISE_MUTING_THRESHOLD),
|
_noiseMutingThreshold(DEFAULT_NOISE_MUTING_THRESHOLD),
|
||||||
_lastPerSecondCallbackTime(usecTimestampNow()),
|
|
||||||
_sendAudioStreamStats(false),
|
_sendAudioStreamStats(false),
|
||||||
_datagramsReadPerCallStats(0, READ_DATAGRAMS_STATS_WINDOW_SECONDS),
|
_datagramsReadPerCallStats(0, READ_DATAGRAMS_STATS_WINDOW_SECONDS),
|
||||||
_timeSpentPerCallStats(0, READ_DATAGRAMS_STATS_WINDOW_SECONDS),
|
_timeSpentPerCallStats(0, READ_DATAGRAMS_STATS_WINDOW_SECONDS),
|
||||||
|
@ -689,10 +688,11 @@ void AudioMixer::broadcastMixes() {
|
||||||
++framesSinceCutoffEvent;
|
++framesSinceCutoffEvent;
|
||||||
}
|
}
|
||||||
|
|
||||||
quint64 now = usecTimestampNow();
|
static const int FRAMES_PER_SECOND = int(ceilf(1.0f / AudioConstants::NETWORK_FRAME_SECS));
|
||||||
if (now - _lastPerSecondCallbackTime > USECS_PER_SECOND) {
|
|
||||||
|
// check if it has been approximately one second since our last call to perSecondActions
|
||||||
|
if (nextFrame % FRAMES_PER_SECOND == 0) {
|
||||||
perSecondActions();
|
perSecondActions();
|
||||||
_lastPerSecondCallbackTime = now;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
nodeList->eachNode([&](const SharedNodePointer& node) {
|
nodeList->eachNode([&](const SharedNodePointer& node) {
|
||||||
|
|
|
@ -113,8 +113,6 @@ private:
|
||||||
static bool _printStreamStats;
|
static bool _printStreamStats;
|
||||||
static bool _enableFilter;
|
static bool _enableFilter;
|
||||||
|
|
||||||
quint64 _lastPerSecondCallbackTime;
|
|
||||||
|
|
||||||
bool _sendAudioStreamStats;
|
bool _sendAudioStreamStats;
|
||||||
|
|
||||||
// stats
|
// stats
|
||||||
|
|
|
@ -27,8 +27,8 @@ namespace AudioConstants {
|
||||||
const int NETWORK_FRAME_SAMPLES_STEREO = NETWORK_FRAME_BYTES_STEREO / sizeof(AudioSample);
|
const int NETWORK_FRAME_SAMPLES_STEREO = NETWORK_FRAME_BYTES_STEREO / sizeof(AudioSample);
|
||||||
const int NETWORK_FRAME_BYTES_PER_CHANNEL = 512;
|
const int NETWORK_FRAME_BYTES_PER_CHANNEL = 512;
|
||||||
const int NETWORK_FRAME_SAMPLES_PER_CHANNEL = NETWORK_FRAME_BYTES_PER_CHANNEL / sizeof(AudioSample);
|
const int NETWORK_FRAME_SAMPLES_PER_CHANNEL = NETWORK_FRAME_BYTES_PER_CHANNEL / sizeof(AudioSample);
|
||||||
const float NETWORK_FRAME_MSECS = (AudioConstants::NETWORK_FRAME_SAMPLES_PER_CHANNEL
|
const float NETWORK_FRAME_SECS = (AudioConstants::NETWORK_FRAME_SAMPLES_PER_CHANNEL / float(AudioConstants::SAMPLE_RATE));
|
||||||
/ (float)AudioConstants::SAMPLE_RATE) * 1000.0f;
|
const float NETWORK_FRAME_MSECS = NETWORK_FRAME_SECS * 1000.0f;
|
||||||
|
|
||||||
// be careful with overflows when using this constant
|
// be careful with overflows when using this constant
|
||||||
const int NETWORK_FRAME_USECS = static_cast<int>(NETWORK_FRAME_MSECS * 1000.0f);
|
const int NETWORK_FRAME_USECS = static_cast<int>(NETWORK_FRAME_MSECS * 1000.0f);
|
||||||
|
|
Loading…
Reference in a new issue