Index: webrtc/modules/audio_mixer/source/new_audio_conference_mixer_impl.cc |
diff --git a/webrtc/modules/audio_mixer/source/new_audio_conference_mixer_impl.cc b/webrtc/modules/audio_mixer/source/new_audio_conference_mixer_impl.cc |
index 57d4a9d56a27d333e0588d21fe7eefe2f6346174..52dcba497e3c7be7ec3ea6163cebfb4cad7624d8 100644 |
--- a/webrtc/modules/audio_mixer/source/new_audio_conference_mixer_impl.cc |
+++ b/webrtc/modules/audio_mixer/source/new_audio_conference_mixer_impl.cc |
@@ -119,9 +119,9 @@ NewAudioConferenceMixerImpl::NewAudioConferenceMixerImpl(int id) |
additional_audio_source_list_(), |
num_mixed_audio_sources_(0), |
use_limiter_(true), |
- _timeStamp(0), |
- _timeScheduler(kProcessPeriodicityInMs), |
- _processCalls(0) {} |
+ _timeStamp(0) { |
+ thread_checker_.DetachFromThread(); |
+ } |
bool NewAudioConferenceMixerImpl::Init() { |
_crit.reset(CriticalSectionWrapper::CreateCriticalSection()); |
@@ -174,36 +174,9 @@ NewAudioConferenceMixerImpl::~NewAudioConferenceMixerImpl() { |
RTC_DCHECK_EQ(_audioFramePool, static_cast<MemoryPool<AudioFrame>*>(nullptr)); |
} |
-// Process should be called every kProcessPeriodicityInMs ms |
-int64_t NewAudioConferenceMixerImpl::TimeUntilNextProcess() { |
- int64_t timeUntilNextProcess = 0; |
- CriticalSectionScoped cs(_crit.get()); |
- if (_timeScheduler.TimeToNextUpdate(timeUntilNextProcess) != 0) { |
- WEBRTC_TRACE(kTraceError, kTraceAudioMixerServer, _id, |
- "failed in TimeToNextUpdate() call"); |
- // Sanity check |
- RTC_NOTREACHED(); |
- return -1; |
- } |
- return timeUntilNextProcess; |
-} |
- |
-void NewAudioConferenceMixerImpl::Process() { |
- // TODO(aleloi) Remove this method. |
- RTC_NOTREACHED(); |
-} |
- |
void NewAudioConferenceMixerImpl::Mix(AudioFrame* audio_frame_for_mixing) { |
size_t remainingAudioSourcesAllowedToMix = kMaximumAmountOfMixedAudioSources; |
- { |
- CriticalSectionScoped cs(_crit.get()); |
- RTC_DCHECK_EQ(_processCalls, 0); |
- _processCalls++; |
- |
- // Let the scheduler know that we are running one iteration. |
- _timeScheduler.UpdateScheduler(); |
- } |
- |
+ RTC_DCHECK(thread_checker_.CalledOnValidThread()); |
AudioFrameList mixList; |
AudioFrameList rampOutList; |
AudioFrameList additionalFramesList; |
@@ -223,8 +196,6 @@ void NewAudioConferenceMixerImpl::Mix(AudioFrame* audio_frame_for_mixing) { |
lowFreq = 32000; |
} |
if (lowFreq <= 0) { |
- CriticalSectionScoped cs(_crit.get()); |
- _processCalls--; |
return; |
} else { |
switch (lowFreq) { |
@@ -250,9 +221,6 @@ void NewAudioConferenceMixerImpl::Mix(AudioFrame* audio_frame_for_mixing) { |
break; |
default: |
RTC_NOTREACHED(); |
- |
- CriticalSectionScoped cs(_crit.get()); |
- _processCalls--; |
return; |
} |
} |
@@ -303,10 +271,6 @@ void NewAudioConferenceMixerImpl::Mix(AudioFrame* audio_frame_for_mixing) { |
ClearAudioFrameList(&mixList); |
ClearAudioFrameList(&rampOutList); |
ClearAudioFrameList(&additionalFramesList); |
- { |
- CriticalSectionScoped cs(_crit.get()); |
- _processCalls--; |
- } |
return; |
} |