Chromium Code Reviews

Unified Diff: webrtc/voice_engine/shared_data.h

Issue 2665693002: Moves channel-dependent audio input processing to separate encoder task queue (Closed)
Patch Set: Increased prio of queue Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Index: webrtc/voice_engine/shared_data.h
diff --git a/webrtc/voice_engine/shared_data.h b/webrtc/voice_engine/shared_data.h
index e3014194547c5bac84444c68d98b2322a47cbf8f..5a86434542809679bb7eedf9c43bd1a64b38db86 100644
--- a/webrtc/voice_engine/shared_data.h
+++ b/webrtc/voice_engine/shared_data.h
@@ -15,6 +15,7 @@
#include "webrtc/base/criticalsection.h"
#include "webrtc/base/scoped_ref_ptr.h"
+#include "webrtc/base/task_queue.h"
#include "webrtc/modules/audio_device/include/audio_device.h"
#include "webrtc/modules/audio_processing/include/audio_processing.h"
#include "webrtc/modules/utility/include/process_thread.h"
@@ -46,6 +47,7 @@ public:
OutputMixer* output_mixer() { return _outputMixerPtr; }
rtc::CriticalSection* crit_sec() { return &_apiCritPtr; }
ProcessThread* process_thread() { return _moduleProcessThreadPtr.get(); }
+ rtc::TaskQueue* encoder_queue() { return &encoder_queue_; }
int NumOfSendingChannels();
int NumOfPlayingChannels();
@@ -66,6 +68,9 @@ protected:
TransmitMixer* _transmitMixerPtr;
std::unique_ptr<AudioProcessing> audioproc_;
std::unique_ptr<ProcessThread> _moduleProcessThreadPtr;
+ // |encoder_queue| is defined last to ensure all pending tasks are cancelled
+ // and deleted before any other members.
+ rtc::TaskQueue encoder_queue_;
aleloi 2017/03/23 13:33:21 The queue needs to be alive when methods in Channe
henrika_webrtc 2017/03/23 14:02:17 All channels are deleted before shared data (and t
SharedData();
virtual ~SharedData();

Powered by Google App Engine