Audio stats now reset when AudioMixer is killed

This commit is contained in:
wangyix 2014-07-22 10:27:26 -07:00
parent f6ef61e76a
commit 847bc28990
3 changed files with 21 additions and 3 deletions

View file

@ -3338,7 +3338,7 @@ void Application::nodeKilled(SharedNodePointer node) {
_modelEditSender.nodeKilled(node);
if (node->getType() == NodeType::AudioMixer) {
QMetaObject::invokeMethod(&_audio, "resetIncomingMixedAudioSequenceNumberStats");
QMetaObject::invokeMethod(&_audio, "audioMixerKilled");
}
if (node->getType() == NodeType::VoxelServer) {

View file

@ -152,11 +152,28 @@ void Audio::reset() {
_starveCount = 0;
_consecutiveNotMixedCount = 0;
_outgoingAvatarAudioSequenceNumber = 0;
resetStats();
}
void Audio::resetStats() {
_audioMixerAvatarStreamAudioStats = AudioStreamStats();
_audioMixerInjectedStreamAudioStatsMap.clear();
_outgoingAvatarAudioSequenceNumber = 0;
_incomingMixedAudioSequenceNumberStats.reset();
_interframeTimeGapStats.reset();
_inputRingBufferFramesAvailableStats.reset();
_outputRingBufferFramesAvailableStats.reset();
_audioOutputBufferFramesAvailableStats.reset();
}
void Audio::audioMixerKilled() {
_outgoingAvatarAudioSequenceNumber = 0;
resetStats();
}
QAudioDeviceInfo getNamedAudioDeviceForMode(QAudio::Mode mode, const QString& deviceName) {

View file

@ -93,7 +93,8 @@ public slots:
void addSpatialAudioToBuffer(unsigned int sampleTime, const QByteArray& spatialAudio, unsigned int numSamples);
void handleAudioInput();
void reset();
void resetIncomingMixedAudioSequenceNumberStats() { _incomingMixedAudioSequenceNumberStats.reset(); }
void resetStats();
void audioMixerKilled();
void toggleMute();
void toggleAudioNoiseReduction();
void toggleToneInjection();