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

Unified Diff: webrtc/audio/audio_state.h

Issue 2436033002: Replace AudioConferenceMixer with AudioMixer. (Closed)
Patch Set: Added errors and logs to AudioTransport. 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/audio/audio_state.h
diff --git a/webrtc/audio/audio_state.h b/webrtc/audio/audio_state.h
index 31892d04faaa5141b9e25d9486553da4ce101b11..d3c4e5c04feaf50216d50df04a6e77196aa476b7 100644
--- a/webrtc/audio/audio_state.h
+++ b/webrtc/audio/audio_state.h
@@ -11,11 +11,16 @@
#ifndef WEBRTC_AUDIO_AUDIO_STATE_H_
#define WEBRTC_AUDIO_AUDIO_STATE_H_
+#include <memory>
+
+#include "webrtc/api/audio/audio_mixer.h"
#include "webrtc/api/call/audio_state.h"
+#include "webrtc/audio/audio_transport_proxy.h"
the sun 2016/10/27 10:06:46 You can get away with forward-declaring the AudioT
aleloi 2016/11/01 15:17:35 Style guide (https://engdoc.corp.google.com/eng/do
#include "webrtc/audio/scoped_voe_interface.h"
#include "webrtc/base/constructormagic.h"
#include "webrtc/base/criticalsection.h"
#include "webrtc/base/thread_checker.h"
+#include "webrtc/modules/audio_device/include/audio_device_defines.h"
#include "webrtc/voice_engine/include/voe_base.h"
namespace webrtc {
@@ -28,6 +33,10 @@ class AudioState final : public webrtc::AudioState,
~AudioState() override;
VoiceEngine* voice_engine();
+
+ // The Audio Device currently connected or nullptr.
+ AudioDeviceModule* audio_device();
the sun 2016/10/27 10:06:46 This is an internal util, make it private.
aleloi 2016/11/01 15:17:35 Missed that! I used it previously in audio_receive
+ rtc::scoped_refptr<AudioMixer> mixer() const;
bool typing_noise_detected() const;
private:
@@ -53,6 +62,11 @@ class AudioState final : public webrtc::AudioState,
// Reference count; implementation copied from rtc::RefCountedObject.
mutable volatile int ref_count_ = 0;
+ rtc::scoped_refptr<AudioMixer> mixer_;
the sun 2016/10/27 10:06:46 This should really live in the AudioState::Config,
aleloi 2016/11/01 15:17:35 Moved in dependence CL.
+ // Transports mixed audio from the mixer to the audio device and
+ // recorded audio to the VoE AudioTransport.
+ std::unique_ptr<AudioTransportProxy> audio_transport_proxy_;
+
RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(AudioState);
};
} // namespace internal

Powered by Google App Engine
This is Rietveld 408576698