OLD | NEW |
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 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
44 | 44 |
45 using SourceStatusList = std::vector<std::unique_ptr<SourceStatus>>; | 45 using SourceStatusList = std::vector<std::unique_ptr<SourceStatus>>; |
46 | 46 |
47 // AudioProcessing only accepts 10 ms frames. | 47 // AudioProcessing only accepts 10 ms frames. |
48 static const int kFrameDurationInMs = 10; | 48 static const int kFrameDurationInMs = 10; |
49 static const int kMaximumAmountOfMixedAudioSources = 3; | 49 static const int kMaximumAmountOfMixedAudioSources = 3; |
50 | 50 |
51 static rtc::scoped_refptr<AudioMixerImpl> Create(); | 51 static rtc::scoped_refptr<AudioMixerImpl> Create(); |
52 | 52 |
53 // TODO(aleloi): remove this when dependencies have updated to | 53 // TODO(aleloi): remove this when dependencies have updated to |
54 // use Create..AndLimiter instead. See bugs.webrtc.org/7167. | 54 // use Create(rate_calculator, limiter) instead. See bugs.webrtc.org/7167. |
55 RTC_DEPRECATED static rtc::scoped_refptr<AudioMixerImpl> | 55 RTC_DEPRECATED static rtc::scoped_refptr<AudioMixerImpl> |
56 CreateWithOutputRateCalculator( | 56 CreateWithOutputRateCalculator( |
57 std::unique_ptr<OutputRateCalculator> output_rate_calculator); | 57 std::unique_ptr<OutputRateCalculator> output_rate_calculator); |
58 | 58 |
59 static rtc::scoped_refptr<AudioMixerImpl> | 59 static rtc::scoped_refptr<AudioMixerImpl> Create( |
60 CreateWithOutputRateCalculatorAndLimiter( | |
61 std::unique_ptr<OutputRateCalculator> output_rate_calculator, | 60 std::unique_ptr<OutputRateCalculator> output_rate_calculator, |
62 bool use_limiter); | 61 bool use_limiter); |
63 | 62 |
64 ~AudioMixerImpl() override; | 63 ~AudioMixerImpl() override; |
65 | 64 |
66 // AudioMixer functions | 65 // AudioMixer functions |
67 bool AddSource(Source* audio_source) override; | 66 bool AddSource(Source* audio_source) override; |
68 void RemoveSource(Source* audio_source) override; | 67 void RemoveSource(Source* audio_source) override; |
69 | 68 |
70 void Mix(size_t number_of_channels, | 69 void Mix(size_t number_of_channels, |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 SourceStatusList audio_source_list_ GUARDED_BY(crit_); // May be mixed. | 111 SourceStatusList audio_source_list_ GUARDED_BY(crit_); // May be mixed. |
113 | 112 |
114 // Component that handles actual adding of audio frames. | 113 // Component that handles actual adding of audio frames. |
115 FrameCombiner frame_combiner_ GUARDED_BY(race_checker_); | 114 FrameCombiner frame_combiner_ GUARDED_BY(race_checker_); |
116 | 115 |
117 RTC_DISALLOW_COPY_AND_ASSIGN(AudioMixerImpl); | 116 RTC_DISALLOW_COPY_AND_ASSIGN(AudioMixerImpl); |
118 }; | 117 }; |
119 } // namespace webrtc | 118 } // namespace webrtc |
120 | 119 |
121 #endif // WEBRTC_MODULES_AUDIO_MIXER_AUDIO_MIXER_IMPL_H_ | 120 #endif // WEBRTC_MODULES_AUDIO_MIXER_AUDIO_MIXER_IMPL_H_ |
OLD | NEW |