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 |