| OLD | NEW | 
|   1 /* |   1 /* | 
|   2  *  Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |   2  *  Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. | 
|   3  * |   3  * | 
|   4  *  Use of this source code is governed by a BSD-style license |   4  *  Use of this source code is governed by a BSD-style license | 
|   5  *  that can be found in the LICENSE file in the root of the source |   5  *  that can be found in the LICENSE file in the root of the source | 
|   6  *  tree. An additional intellectual property rights grant can be found |   6  *  tree. An additional intellectual property rights grant can be found | 
|   7  *  in the file PATENTS.  All contributing project authors may |   7  *  in the file PATENTS.  All contributing project authors may | 
|   8  *  be found in the AUTHORS file in the root of the source tree. |   8  *  be found in the AUTHORS file in the root of the source tree. | 
|   9  */ |   9  */ | 
|  10  |  10  | 
|  11 #ifndef WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_ |  11 #ifndef WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_ | 
|  12 #define WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_ |  12 #define WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_ | 
|  13  |  13  | 
|  14 #include <memory> |  14 #include <memory> | 
|  15  |  15  | 
|  16 #include "webrtc/base/constructormagic.h" |  16 #include "webrtc/base/constructormagic.h" | 
|  17 #include "webrtc/base/thread_checker.h" |  17 #include "webrtc/base/thread_checker.h" | 
|  18 #include "webrtc/call/audio_send_stream.h" |  18 #include "webrtc/call/audio_send_stream.h" | 
|  19 #include "webrtc/call/audio_state.h" |  19 #include "webrtc/call/audio_state.h" | 
|  20 #include "webrtc/call/bitrate_allocator.h" |  20 #include "webrtc/call/bitrate_allocator.h" | 
|  21  |  21  | 
|  22 namespace webrtc { |  22 namespace webrtc { | 
|  23 class CongestionController; |  | 
|  24 class VoiceEngine; |  23 class VoiceEngine; | 
|  25 class RtcEventLog; |  24 class RtcEventLog; | 
|  26 class RtcpRttStats; |  25 class RtcpRttStats; | 
|  27 class PacketRouter; |  26 class RtpTransportControllerSenderInterface; | 
|  28  |  27  | 
|  29 namespace voe { |  28 namespace voe { | 
|  30 class ChannelProxy; |  29 class ChannelProxy; | 
|  31 }  // namespace voe |  30 }  // namespace voe | 
|  32  |  31  | 
|  33 namespace internal { |  32 namespace internal { | 
|  34 class AudioSendStream final : public webrtc::AudioSendStream, |  33 class AudioSendStream final : public webrtc::AudioSendStream, | 
|  35                               public webrtc::BitrateAllocatorObserver { |  34                               public webrtc::BitrateAllocatorObserver { | 
|  36  public: |  35  public: | 
|  37   AudioSendStream(const webrtc::AudioSendStream::Config& config, |  36   AudioSendStream(const webrtc::AudioSendStream::Config& config, | 
|  38                   const rtc::scoped_refptr<webrtc::AudioState>& audio_state, |  37                   const rtc::scoped_refptr<webrtc::AudioState>& audio_state, | 
|  39                   rtc::TaskQueue* worker_queue, |  38                   rtc::TaskQueue* worker_queue, | 
|  40                   PacketRouter* packet_router, |  39                   RtpTransportControllerSenderInterface* transport, | 
|  41                   CongestionController* congestion_controller, |  | 
|  42                   BitrateAllocator* bitrate_allocator, |  40                   BitrateAllocator* bitrate_allocator, | 
|  43                   RtcEventLog* event_log, |  41                   RtcEventLog* event_log, | 
|  44                   RtcpRttStats* rtcp_rtt_stats); |  42                   RtcpRttStats* rtcp_rtt_stats); | 
|  45   ~AudioSendStream() override; |  43   ~AudioSendStream() override; | 
|  46  |  44  | 
|  47   // webrtc::AudioSendStream implementation. |  45   // webrtc::AudioSendStream implementation. | 
|  48   void Start() override; |  46   void Start() override; | 
|  49   void Stop() override; |  47   void Stop() override; | 
|  50   bool SendTelephoneEvent(int payload_type, int payload_frequency, int event, |  48   bool SendTelephoneEvent(int payload_type, int payload_frequency, int event, | 
|  51                           int duration_ms) override; |  49                           int duration_ms) override; | 
| (...skipping 17 matching lines...) Expand all  Loading... | 
|  69  |  67  | 
|  70   bool SetupSendCodec(); |  68   bool SetupSendCodec(); | 
|  71  |  69  | 
|  72   rtc::ThreadChecker thread_checker_; |  70   rtc::ThreadChecker thread_checker_; | 
|  73   rtc::TaskQueue* worker_queue_; |  71   rtc::TaskQueue* worker_queue_; | 
|  74   const webrtc::AudioSendStream::Config config_; |  72   const webrtc::AudioSendStream::Config config_; | 
|  75   rtc::scoped_refptr<webrtc::AudioState> audio_state_; |  73   rtc::scoped_refptr<webrtc::AudioState> audio_state_; | 
|  76   std::unique_ptr<voe::ChannelProxy> channel_proxy_; |  74   std::unique_ptr<voe::ChannelProxy> channel_proxy_; | 
|  77  |  75  | 
|  78   BitrateAllocator* const bitrate_allocator_; |  76   BitrateAllocator* const bitrate_allocator_; | 
|  79   CongestionController* const congestion_controller_; |  77   RtpTransportControllerSenderInterface* const transport_; | 
|  80  |  78  | 
|  81   RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(AudioSendStream); |  79   RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(AudioSendStream); | 
|  82 }; |  80 }; | 
|  83 }  // namespace internal |  81 }  // namespace internal | 
|  84 }  // namespace webrtc |  82 }  // namespace webrtc | 
|  85  |  83  | 
|  86 #endif  // WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_ |  84 #endif  // WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_ | 
| OLD | NEW |