| Index: webrtc/voice_engine/transmit_mixer.cc
|
| diff --git a/webrtc/voice_engine/transmit_mixer.cc b/webrtc/voice_engine/transmit_mixer.cc
|
| index 1204b04b5013ee0e9e9d211e517ff3d30fbb5750..14903501f6d4a99bbfcdf938ea2b5ecba7d67db8 100644
|
| --- a/webrtc/voice_engine/transmit_mixer.cc
|
| +++ b/webrtc/voice_engine/transmit_mixer.cc
|
| @@ -13,7 +13,6 @@
|
| #include "webrtc/base/format_macros.h"
|
| #include "webrtc/base/logging.h"
|
| #include "webrtc/modules/utility/include/audio_frame_operations.h"
|
| -#include "webrtc/system_wrappers/include/critical_section_wrapper.h"
|
| #include "webrtc/system_wrappers/include/event_wrapper.h"
|
| #include "webrtc/system_wrappers/include/trace.h"
|
| #include "webrtc/voice_engine/channel.h"
|
| @@ -37,7 +36,7 @@ TransmitMixer::OnPeriodicProcess()
|
| bool send_typing_noise_warning = false;
|
| bool typing_noise_detected = false;
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| if (_typingNoiseWarningPending) {
|
| send_typing_noise_warning = true;
|
| typing_noise_detected = _typingNoiseDetected;
|
| @@ -45,7 +44,7 @@ TransmitMixer::OnPeriodicProcess()
|
| }
|
| }
|
| if (send_typing_noise_warning) {
|
| - CriticalSectionScoped cs(&_callbackCritSect);
|
| + rtc::CritScope cs(&_callbackCritSect);
|
| if (_voiceEngineObserverPtr) {
|
| if (typing_noise_detected) {
|
| WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| @@ -71,7 +70,7 @@ TransmitMixer::OnPeriodicProcess()
|
| // Modify |_saturationWarning| under lock to avoid conflict with write op
|
| // in ProcessAudio and also ensure that we don't hold the lock during the
|
| // callback.
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| saturationWarning = _saturationWarning;
|
| if (_saturationWarning)
|
| _saturationWarning = false;
|
| @@ -79,7 +78,7 @@ TransmitMixer::OnPeriodicProcess()
|
|
|
| if (saturationWarning)
|
| {
|
| - CriticalSectionScoped cs(&_callbackCritSect);
|
| + rtc::CritScope cs(&_callbackCritSect);
|
| if (_voiceEngineObserverPtr)
|
| {
|
| WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| @@ -118,7 +117,7 @@ void TransmitMixer::PlayFileEnded(int32_t id)
|
|
|
| assert(id == _filePlayerId);
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| _filePlaying = false;
|
| WEBRTC_TRACE(kTraceStateInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| @@ -134,14 +133,14 @@ TransmitMixer::RecordFileEnded(int32_t id)
|
|
|
| if (id == _fileRecorderId)
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| _fileRecording = false;
|
| WEBRTC_TRACE(kTraceStateInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| "TransmitMixer::RecordFileEnded() => fileRecorder module"
|
| "is shutdown");
|
| } else if (id == _fileCallRecorderId)
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| _fileCallRecording = false;
|
| WEBRTC_TRACE(kTraceStateInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| "TransmitMixer::RecordFileEnded() => fileCallRecorder"
|
| @@ -193,8 +192,6 @@ TransmitMixer::TransmitMixer(uint32_t instanceId) :
|
| _fileRecording(false),
|
| _fileCallRecording(false),
|
| _audioLevel(),
|
| - _critSect(*CriticalSectionWrapper::CreateCriticalSection()),
|
| - _callbackCritSect(*CriticalSectionWrapper::CreateCriticalSection()),
|
| #ifdef WEBRTC_VOICE_ENGINE_TYPING_DETECTION
|
| _typingNoiseWarningPending(false),
|
| _typingNoiseDetected(false),
|
| @@ -226,7 +223,7 @@ TransmitMixer::~TransmitMixer()
|
| DeRegisterExternalMediaProcessing(kRecordingAllChannelsMixed);
|
| DeRegisterExternalMediaProcessing(kRecordingPreprocessing);
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| if (_fileRecorderPtr)
|
| {
|
| _fileRecorderPtr->RegisterModuleFileCallback(NULL);
|
| @@ -249,8 +246,6 @@ TransmitMixer::~TransmitMixer()
|
| _filePlayerPtr = NULL;
|
| }
|
| }
|
| - delete &_critSect;
|
| - delete &_callbackCritSect;
|
| }
|
|
|
| int32_t
|
| @@ -276,7 +271,7 @@ TransmitMixer::RegisterVoiceEngineObserver(VoiceEngineObserver& observer)
|
| {
|
| WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| "TransmitMixer::RegisterVoiceEngineObserver()");
|
| - CriticalSectionScoped cs(&_callbackCritSect);
|
| + rtc::CritScope cs(&_callbackCritSect);
|
|
|
| if (_voiceEngineObserverPtr)
|
| {
|
| @@ -340,7 +335,7 @@ TransmitMixer::PrepareDemux(const void* audioSamples,
|
| samplesPerSec);
|
|
|
| {
|
| - CriticalSectionScoped cs(&_callbackCritSect);
|
| + rtc::CritScope cs(&_callbackCritSect);
|
| if (external_preproc_ptr_) {
|
| external_preproc_ptr_->Process(-1, kRecordingPreprocessing,
|
| _audioFrame.data_,
|
| @@ -388,7 +383,7 @@ TransmitMixer::PrepareDemux(const void* audioSamples,
|
| // --- Record to file
|
| bool file_recording = false;
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| file_recording = _fileRecording;
|
| }
|
| if (file_recording)
|
| @@ -397,7 +392,7 @@ TransmitMixer::PrepareDemux(const void* audioSamples,
|
| }
|
|
|
| {
|
| - CriticalSectionScoped cs(&_callbackCritSect);
|
| + rtc::CritScope cs(&_callbackCritSect);
|
| if (external_postproc_ptr_) {
|
| external_postproc_ptr_->Process(-1, kRecordingAllChannelsMixed,
|
| _audioFrame.data_,
|
| @@ -520,7 +515,7 @@ int TransmitMixer::StartPlayingFileAsMicrophone(const char* fileName,
|
| return 0;
|
| }
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| // Destroy the old instance
|
| if (_filePlayerPtr)
|
| @@ -597,7 +592,7 @@ int TransmitMixer::StartPlayingFileAsMicrophone(InStream* stream,
|
| return 0;
|
| }
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| // Destroy the old instance
|
| if (_filePlayerPtr)
|
| @@ -654,7 +649,7 @@ int TransmitMixer::StopPlayingFileAsMicrophone()
|
| return 0;
|
| }
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| if (_filePlayerPtr->StopPlayingFile() != 0)
|
| {
|
| @@ -686,7 +681,7 @@ int TransmitMixer::StartRecordingMicrophone(const char* fileName,
|
| "TransmitMixer::StartRecordingMicrophone(fileName=%s)",
|
| fileName);
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| if (_fileRecording)
|
| {
|
| @@ -764,7 +759,7 @@ int TransmitMixer::StartRecordingMicrophone(OutStream* stream,
|
| WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| "TransmitMixer::StartRecordingMicrophone()");
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| if (_fileRecording)
|
| {
|
| @@ -841,7 +836,7 @@ int TransmitMixer::StopRecordingMicrophone()
|
| WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| "TransmitMixer::StopRecordingMicrophone()");
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| if (!_fileRecording)
|
| {
|
| @@ -903,7 +898,7 @@ int TransmitMixer::StartRecordingCall(const char* fileName,
|
| format = kFileFormatCompressedFile;
|
| }
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| // Destroy the old instance
|
| if (_fileCallRecorderPtr)
|
| @@ -981,7 +976,7 @@ int TransmitMixer::StartRecordingCall(OutStream* stream,
|
| format = kFileFormatCompressedFile;
|
| }
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| // Destroy the old instance
|
| if (_fileCallRecorderPtr)
|
| @@ -1032,7 +1027,7 @@ int TransmitMixer::StopRecordingCall()
|
| return -1;
|
| }
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
|
|
| if (_fileCallRecorderPtr->StopRecording() != 0)
|
| {
|
| @@ -1062,7 +1057,7 @@ int TransmitMixer::RegisterExternalMediaProcessing(
|
| WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| "TransmitMixer::RegisterExternalMediaProcessing()");
|
|
|
| - CriticalSectionScoped cs(&_callbackCritSect);
|
| + rtc::CritScope cs(&_callbackCritSect);
|
| if (!object) {
|
| return -1;
|
| }
|
| @@ -1082,7 +1077,7 @@ int TransmitMixer::DeRegisterExternalMediaProcessing(ProcessingTypes type) {
|
| WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId, -1),
|
| "TransmitMixer::DeRegisterExternalMediaProcessing()");
|
|
|
| - CriticalSectionScoped cs(&_callbackCritSect);
|
| + rtc::CritScope cs(&_callbackCritSect);
|
| if (type == kRecordingAllChannelsMixed) {
|
| external_postproc_ptr_ = NULL;
|
| } else if (type == kRecordingPreprocessing) {
|
| @@ -1127,7 +1122,7 @@ bool TransmitMixer::IsRecordingCall()
|
|
|
| bool TransmitMixer::IsRecordingMic()
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| return _fileRecording;
|
| }
|
|
|
| @@ -1162,7 +1157,7 @@ void TransmitMixer::GenerateAudioFrame(const int16_t* audio,
|
| int32_t TransmitMixer::RecordAudioToFile(
|
| uint32_t mixingFrequency)
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| if (_fileRecorderPtr == NULL)
|
| {
|
| WEBRTC_TRACE(kTraceWarning, kTraceVoice, VoEId(_instanceId, -1),
|
| @@ -1189,7 +1184,7 @@ int32_t TransmitMixer::MixOrReplaceAudioWithFile(
|
|
|
| size_t fileSamples(0);
|
| {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| if (_filePlayerPtr == NULL)
|
| {
|
| WEBRTC_TRACE(kTraceWarning, kTraceVoice,
|
| @@ -1267,7 +1262,7 @@ void TransmitMixer::ProcessAudio(int delay_ms, int clock_drift,
|
| // Store new capture level. Only updated when analog AGC is enabled.
|
| _captureLevel = agc->stream_analog_level();
|
|
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| // Triggers a callback in OnPeriodicProcess().
|
| _saturationWarning |= agc->stream_is_saturated();
|
| }
|
| @@ -1282,11 +1277,11 @@ void TransmitMixer::TypingDetection(bool keyPressed)
|
|
|
| bool vadActive = _audioFrame.vad_activity_ == AudioFrame::kVadActive;
|
| if (_typingDetection.Process(keyPressed, vadActive)) {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| _typingNoiseWarningPending = true;
|
| _typingNoiseDetected = true;
|
| } else {
|
| - CriticalSectionScoped cs(&_critSect);
|
| + rtc::CritScope cs(&_critSect);
|
| // If there is already a warning pending, do not change the state.
|
| // Otherwise set a warning pending if last callback was for noise detected.
|
| if (!_typingNoiseWarningPending && _typingNoiseDetected) {
|
|
|