Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(312)

Side by Side Diff: webrtc/voice_engine/output_mixer.h

Issue 1607353002: Swap use of CriticalSectionWrapper with rtc::CriticalSection in voice_engine/ (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #ifndef WEBRTC_VOICE_ENGINE_OUTPUT_MIXER_H_ 11 #ifndef WEBRTC_VOICE_ENGINE_OUTPUT_MIXER_H_
12 #define WEBRTC_VOICE_ENGINE_OUTPUT_MIXER_H_ 12 #define WEBRTC_VOICE_ENGINE_OUTPUT_MIXER_H_
13 13
14 #include "webrtc/base/criticalsection.h"
14 #include "webrtc/common_audio/resampler/include/push_resampler.h" 15 #include "webrtc/common_audio/resampler/include/push_resampler.h"
15 #include "webrtc/common_types.h" 16 #include "webrtc/common_types.h"
16 #include "webrtc/modules/audio_conference_mixer/include/audio_conference_mixer.h " 17 #include "webrtc/modules/audio_conference_mixer/include/audio_conference_mixer.h "
17 #include "webrtc/modules/audio_conference_mixer/include/audio_conference_mixer_d efines.h" 18 #include "webrtc/modules/audio_conference_mixer/include/audio_conference_mixer_d efines.h"
18 #include "webrtc/modules/utility/include/file_recorder.h" 19 #include "webrtc/modules/utility/include/file_recorder.h"
19 #include "webrtc/voice_engine/dtmf_inband.h" 20 #include "webrtc/voice_engine/dtmf_inband.h"
20 #include "webrtc/voice_engine/level_indicator.h" 21 #include "webrtc/voice_engine/level_indicator.h"
21 #include "webrtc/voice_engine/voice_engine_defines.h" 22 #include "webrtc/voice_engine/voice_engine_defines.h"
22 23
23 namespace webrtc { 24 namespace webrtc {
24 25
25 class AudioProcessing; 26 class AudioProcessing;
26 class CriticalSectionWrapper;
27 class FileWrapper; 27 class FileWrapper;
28 class VoEMediaProcess; 28 class VoEMediaProcess;
29 29
30 namespace voe { 30 namespace voe {
31 31
32 class Statistics; 32 class Statistics;
33 33
34 class OutputMixer : public AudioMixerOutputReceiver, 34 class OutputMixer : public AudioMixerOutputReceiver,
35 public FileCallback 35 public FileCallback
36 { 36 {
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 void RecordFileEnded(int32_t id); 101 void RecordFileEnded(int32_t id);
102 102
103 private: 103 private:
104 OutputMixer(uint32_t instanceId); 104 OutputMixer(uint32_t instanceId);
105 int InsertInbandDtmfTone(); 105 int InsertInbandDtmfTone();
106 106
107 // uses 107 // uses
108 Statistics* _engineStatisticsPtr; 108 Statistics* _engineStatisticsPtr;
109 AudioProcessing* _audioProcessingModulePtr; 109 AudioProcessing* _audioProcessingModulePtr;
110 110
111 // owns 111 rtc::CriticalSection _callbackCritSect;
112 CriticalSectionWrapper& _callbackCritSect;
113 // protect the _outputFileRecorderPtr and _outputFileRecording 112 // protect the _outputFileRecorderPtr and _outputFileRecording
114 CriticalSectionWrapper& _fileCritSect; 113 rtc::CriticalSection _fileCritSect;
115 AudioConferenceMixer& _mixerModule; 114 AudioConferenceMixer& _mixerModule;
116 AudioFrame _audioFrame; 115 AudioFrame _audioFrame;
117 // Converts mixed audio to the audio device output rate. 116 // Converts mixed audio to the audio device output rate.
118 PushResampler<int16_t> resampler_; 117 PushResampler<int16_t> resampler_;
119 // Converts mixed audio to the audio processing rate. 118 // Converts mixed audio to the audio processing rate.
120 PushResampler<int16_t> audioproc_resampler_; 119 PushResampler<int16_t> audioproc_resampler_;
121 AudioLevel _audioLevel; // measures audio level for the combined signal 120 AudioLevel _audioLevel; // measures audio level for the combined signal
122 DtmfInband _dtmfGenerator; 121 DtmfInband _dtmfGenerator;
123 int _instanceId; 122 int _instanceId;
124 VoEMediaProcess* _externalMediaCallbackPtr; 123 VoEMediaProcess* _externalMediaCallbackPtr;
125 bool _externalMedia; 124 bool _externalMedia;
126 float _panLeft; 125 float _panLeft;
127 float _panRight; 126 float _panRight;
128 int _mixingFrequencyHz; 127 int _mixingFrequencyHz;
129 FileRecorder* _outputFileRecorderPtr; 128 FileRecorder* _outputFileRecorderPtr;
130 bool _outputFileRecording; 129 bool _outputFileRecording;
131 }; 130 };
132 131
133 } // namespace voe 132 } // namespace voe
134 133
135 } // namespace werbtc 134 } // namespace werbtc
136 135
137 #endif // VOICE_ENGINE_OUTPUT_MIXER_H_ 136 #endif // VOICE_ENGINE_OUTPUT_MIXER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698