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

Unified Diff: webrtc/audio/audio_state.h

Issue 2454373002: Added an empty AudioTransportProxy to AudioState. (Closed)
Patch Set: No heap transport, WillOnce, comparison with constants. Created 4 years, 1 month 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..0efb17f92c898162c59fd5b7f209907bced98275 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>
the sun 2016/11/09 09:41:52 not needed?
aleloi 2016/11/09 16:37:00 Done.
+
+#include "webrtc/api/audio/audio_mixer.h"
#include "webrtc/api/call/audio_state.h"
+#include "webrtc/audio/audio_transport_proxy.h"
#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"
the sun 2016/11/09 09:41:52 No need.
aleloi 2016/11/09 16:37:00 You're right! Removed.
#include "webrtc/voice_engine/include/voe_base.h"
namespace webrtc {
@@ -28,6 +33,8 @@ class AudioState final : public webrtc::AudioState,
~AudioState() override;
VoiceEngine* voice_engine();
+
+ rtc::scoped_refptr<AudioMixer> mixer() const;
bool typing_noise_detected() const;
private:
@@ -38,6 +45,9 @@ class AudioState final : public webrtc::AudioState,
// webrtc::VoiceEngineObserver implementation.
void CallbackOnError(int channel_id, int err_code) override;
+ // The Audio Device currently connected or nullptr.
+ AudioDeviceModule* audio_device();
the sun 2016/11/09 09:41:52 Remove this method.
aleloi 2016/11/09 16:37:00 Right, because we removed the device from AudioSta
+
rtc::ThreadChecker thread_checker_;
rtc::ThreadChecker process_thread_checker_;
const webrtc::AudioState::Config config_;
@@ -53,6 +63,10 @@ class AudioState final : public webrtc::AudioState,
// Reference count; implementation copied from rtc::RefCountedObject.
mutable volatile int ref_count_ = 0;
+ // Transports mixed audio from the mixer to the audio device and
+ // recorded audio to the VoE AudioTransport.
+ AudioTransportProxy audio_transport_proxy_;
+
RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(AudioState);
};
} // namespace internal

Powered by Google App Engine
This is Rietveld 408576698