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

Unified Diff: webrtc/modules/audio_mixer/audio_mixer_impl.h

Issue 2402283003: Cleanup of the mixer interface. (Closed)
Patch Set: Minimized diff Created 4 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: webrtc/modules/audio_mixer/audio_mixer_impl.h
diff --git a/webrtc/modules/audio_mixer/audio_mixer_impl.h b/webrtc/modules/audio_mixer/audio_mixer_impl.h
index 7da282f00dd43c8caf9e046996284964d94ac006..5aa697865ff61e43fad1372d69196fadf184b3a3 100644
--- a/webrtc/modules/audio_mixer/audio_mixer_impl.h
+++ b/webrtc/modules/audio_mixer/audio_mixer_impl.h
@@ -11,7 +11,6 @@
#ifndef WEBRTC_MODULES_AUDIO_MIXER_AUDIO_MIXER_IMPL_H_
#define WEBRTC_MODULES_AUDIO_MIXER_AUDIO_MIXER_IMPL_H_
-#include <map>
aleloi 2016/10/10 12:54:39 Unused since the changes in the mixing algorithm.
the sun 2016/10/10 13:46:07 Acknowledged.
#include <memory>
#include <vector>
@@ -42,41 +41,35 @@ class AudioMixerImpl : public AudioMixer {
// AudioProcessing only accepts 10 ms frames.
static const int kFrameDurationInMs = 10;
+ static const int kDefaultFrequency = 48000;
- static std::unique_ptr<AudioMixerImpl> Create(int id);
+ static std::unique_ptr<AudioMixerImpl> Create();
~AudioMixerImpl() override;
// AudioMixer functions
int32_t SetMixabilityStatus(Source* audio_source, bool mixable) override;
- bool MixabilityStatus(const Source& audio_source) const override;
- int32_t SetAnonymousMixabilityStatus(Source* audio_source,
- bool mixable) override;
void Mix(int sample_rate,
size_t number_of_channels,
AudioFrame* audio_frame_for_mixing) override;
- bool AnonymousMixabilityStatus(const Source& audio_source) const override;
// Returns true if the source was mixed last round. Returns
// false and logs an error if the source was never added to the
// mixer.
- bool GetAudioSourceMixabilityStatusForTest(Source* audio_source);
+ bool GetAudioSourceMixabilityStatusForTest(Source* audio_source) const;
private:
- AudioMixerImpl(int id, std::unique_ptr<AudioProcessing> limiter);
+ explicit AudioMixerImpl(std::unique_ptr<AudioProcessing> limiter);
// Set/get mix frequency
- int32_t SetOutputFrequency(const Frequency& frequency);
- Frequency OutputFrequency() const;
+ void SetOutputFrequency(int frequency);
+ int OutputFrequency() const;
// Compute what audio sources to mix from audio_source_list_. Ramp
// in and out. Update mixed status. Mixes up to
// kMaximumAmountOfMixedAudioSources audio sources.
AudioFrameList GetNonAnonymousAudio() EXCLUSIVE_LOCKS_REQUIRED(crit_);
- // Return the AudioFrames that should be mixed anonymously. Ramp in
- // and out. Update mixed status.
- AudioFrameList GetAnonymousAudio() EXCLUSIVE_LOCKS_REQUIRED(crit_);
// Add/remove the MixerAudioSource to the specified
// MixerAudioSource list.
@@ -87,25 +80,16 @@ class AudioMixerImpl : public AudioMixer {
bool LimitMixedAudio(AudioFrame* mixed_audio) const;
- // Output level functions for VoEVolumeControl.
- int GetOutputAudioLevel() override;
-
- int GetOutputAudioLevelFullRange() override;
rtc::CriticalSection crit_;
- const int32_t id_;
-
// The current sample frequency and sample size when mixing.
- Frequency output_frequency_ ACCESS_ON(&thread_checker_);
+ int output_frequency_ ACCESS_ON(&thread_checker_);
size_t sample_size_ ACCESS_ON(&thread_checker_);
// List of all audio sources. Note all lists are disjunct
SourceStatusList audio_source_list_ GUARDED_BY(crit_); // May be mixed.
- // Always mixed, anonymously.
- SourceStatusList additional_audio_source_list_ GUARDED_BY(crit_);
-
size_t num_mixed_audio_sources_ GUARDED_BY(crit_);
// Determines if we will use a limiter for clipping protection during
// mixing.
@@ -119,9 +103,6 @@ class AudioMixerImpl : public AudioMixer {
// Used for inhibiting saturation in mixing.
std::unique_ptr<AudioProcessing> limiter_ ACCESS_ON(&thread_checker_);
- // Measures audio level for the combined signal.
- voe::AudioLevel audio_level_ ACCESS_ON(&thread_checker_);
-
RTC_DISALLOW_COPY_AND_ASSIGN(AudioMixerImpl);
};
} // namespace webrtc

Powered by Google App Engine
This is Rietveld 408576698