Index: webrtc/audio/audio_send_stream.h |
diff --git a/webrtc/audio/audio_send_stream.h b/webrtc/audio/audio_send_stream.h |
index 23a748501438178c1bfce5c1b9330be3a56f7314..a732f48f0f092b95a165422bee154dcdb7a2c30c 100644 |
--- a/webrtc/audio/audio_send_stream.h |
+++ b/webrtc/audio/audio_send_stream.h |
@@ -16,7 +16,9 @@ |
#include "webrtc/api/call/audio_send_stream.h" |
#include "webrtc/api/call/audio_state.h" |
#include "webrtc/base/constructormagic.h" |
+#include "webrtc/base/onetimeevent.h" |
#include "webrtc/base/thread_checker.h" |
+#include "webrtc/base/weak_ptr.h" |
#include "webrtc/call/bitrate_allocator.h" |
namespace webrtc { |
@@ -65,9 +67,12 @@ class AudioSendStream final : public webrtc::AudioSendStream, |
void SetTransportOverhead(int transport_overhead_per_packet); |
private: |
+ class AdaptCodecTask; |
+ |
VoiceEngine* voice_engine() const; |
bool SetupSendCodec(); |
+ void AdaptCodec(); |
rtc::ThreadChecker thread_checker_; |
rtc::TaskQueue* worker_queue_; |
@@ -76,6 +81,10 @@ class AudioSendStream final : public webrtc::AudioSendStream, |
std::unique_ptr<voe::ChannelProxy> channel_proxy_; |
BitrateAllocator* const bitrate_allocator_; |
+ OneTimeEvent first_update_bitrate_; |
+ |
+ rtc::WeakPtr<AudioSendStream> weak_ptr_; |
+ std::unique_ptr<rtc::WeakPtrFactory<AudioSendStream>> weak_ptr_factory_; |
RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(AudioSendStream); |
}; |