| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2  *  Copyright (c) 2013 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 | 
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 44 #include "webrtc/video/video_send_stream.h" | 44 #include "webrtc/video/video_send_stream.h" | 
| 45 #include "webrtc/video/vie_remb.h" | 45 #include "webrtc/video/vie_remb.h" | 
| 46 #include "webrtc/voice_engine/include/voe_codec.h" | 46 #include "webrtc/voice_engine/include/voe_codec.h" | 
| 47 | 47 | 
| 48 namespace webrtc { | 48 namespace webrtc { | 
| 49 | 49 | 
| 50 const int Call::Config::kDefaultStartBitrateBps = 300000; | 50 const int Call::Config::kDefaultStartBitrateBps = 300000; | 
| 51 | 51 | 
| 52 namespace internal { | 52 namespace internal { | 
| 53 | 53 | 
| 54 class Call : public webrtc::Call, public PacketReceiver, | 54 class Call : public webrtc::Call, | 
| 55              public BitrateObserver { | 55              public PacketReceiver, | 
|  | 56              public CongestionController::Observer { | 
| 56  public: | 57  public: | 
| 57   explicit Call(const Call::Config& config); | 58   explicit Call(const Call::Config& config); | 
| 58   virtual ~Call(); | 59   virtual ~Call(); | 
| 59 | 60 | 
| 60   PacketReceiver* Receiver() override; | 61   PacketReceiver* Receiver() override; | 
| 61 | 62 | 
| 62   webrtc::AudioSendStream* CreateAudioSendStream( | 63   webrtc::AudioSendStream* CreateAudioSendStream( | 
| 63       const webrtc::AudioSendStream::Config& config) override; | 64       const webrtc::AudioSendStream::Config& config) override; | 
| 64   void DestroyAudioSendStream(webrtc::AudioSendStream* send_stream) override; | 65   void DestroyAudioSendStream(webrtc::AudioSendStream* send_stream) override; | 
| 65 | 66 | 
| (...skipping 619 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 685   uint32_t pacer_bitrate_bps = | 686   uint32_t pacer_bitrate_bps = | 
| 686       std::max(target_bitrate_bps, allocated_bitrate_bps); | 687       std::max(target_bitrate_bps, allocated_bitrate_bps); | 
| 687   { | 688   { | 
| 688     rtc::CritScope lock(&bitrate_crit_); | 689     rtc::CritScope lock(&bitrate_crit_); | 
| 689     // We only update these stats if we have send streams, and assume that | 690     // We only update these stats if we have send streams, and assume that | 
| 690     // OnNetworkChanged is called roughly with a fixed frequency. | 691     // OnNetworkChanged is called roughly with a fixed frequency. | 
| 691     estimated_send_bitrate_sum_kbits_ += target_bitrate_bps / 1000; | 692     estimated_send_bitrate_sum_kbits_ += target_bitrate_bps / 1000; | 
| 692     pacer_bitrate_sum_kbits_ += pacer_bitrate_bps / 1000; | 693     pacer_bitrate_sum_kbits_ += pacer_bitrate_bps / 1000; | 
| 693     ++num_bitrate_updates_; | 694     ++num_bitrate_updates_; | 
| 694   } | 695   } | 
| 695   congestion_controller_->UpdatePacerBitrate( | 696   congestion_controller_->SetAllocatedSendBitrate(allocated_bitrate_bps, | 
| 696       target_bitrate_bps / 1000, | 697                                                   pad_up_to_bitrate_bps); | 
| 697       PacedSender::kDefaultPaceMultiplier * pacer_bitrate_bps / 1000, |  | 
| 698       pad_up_to_bitrate_bps / 1000); |  | 
| 699 } | 698 } | 
| 700 | 699 | 
| 701 void Call::ConfigureSync(const std::string& sync_group) { | 700 void Call::ConfigureSync(const std::string& sync_group) { | 
| 702   // Set sync only if there was no previous one. | 701   // Set sync only if there was no previous one. | 
| 703   if (voice_engine() == nullptr || sync_group.empty()) | 702   if (voice_engine() == nullptr || sync_group.empty()) | 
| 704     return; | 703     return; | 
| 705 | 704 | 
| 706   AudioReceiveStream* sync_audio_stream = nullptr; | 705   AudioReceiveStream* sync_audio_stream = nullptr; | 
| 707   // Find existing audio stream. | 706   // Find existing audio stream. | 
| 708   const auto it = sync_stream_mapping_.find(sync_group); | 707   const auto it = sync_stream_mapping_.find(sync_group); | 
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 842   // thread. Then this check can be enabled. | 841   // thread. Then this check can be enabled. | 
| 843   // RTC_DCHECK(!configuration_thread_checker_.CalledOnValidThread()); | 842   // RTC_DCHECK(!configuration_thread_checker_.CalledOnValidThread()); | 
| 844   if (RtpHeaderParser::IsRtcp(packet, length)) | 843   if (RtpHeaderParser::IsRtcp(packet, length)) | 
| 845     return DeliverRtcp(media_type, packet, length); | 844     return DeliverRtcp(media_type, packet, length); | 
| 846 | 845 | 
| 847   return DeliverRtp(media_type, packet, length, packet_time); | 846   return DeliverRtp(media_type, packet, length, packet_time); | 
| 848 } | 847 } | 
| 849 | 848 | 
| 850 }  // namespace internal | 849 }  // namespace internal | 
| 851 }  // namespace webrtc | 850 }  // namespace webrtc | 
| OLD | NEW | 
|---|