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

Side by Side Diff: webrtc/call/call.cc

Issue 2437503004: Set actual transport overhead in rtp_rtcp (Closed)
Patch Set: Response to comments of honghaiz3 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 unified diff | Download patch
OLDNEW
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 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 const PacketTime& packet_time) override; 95 const PacketTime& packet_time) override;
96 96
97 // Implements RecoveredPacketReceiver. 97 // Implements RecoveredPacketReceiver.
98 bool OnRecoveredPacket(const uint8_t* packet, size_t length) override; 98 bool OnRecoveredPacket(const uint8_t* packet, size_t length) override;
99 99
100 void SetBitrateConfig( 100 void SetBitrateConfig(
101 const webrtc::Call::Config::BitrateConfig& bitrate_config) override; 101 const webrtc::Call::Config::BitrateConfig& bitrate_config) override;
102 102
103 void SignalChannelNetworkState(MediaType media, NetworkState state) override; 103 void SignalChannelNetworkState(MediaType media, NetworkState state) override;
104 104
105 void SignalTransportOverheadChange(
106 MediaType media,
107 int transport_overhead_per_packet) override;
108
105 void OnNetworkRouteChanged(const std::string& transport_name, 109 void OnNetworkRouteChanged(const std::string& transport_name,
106 const rtc::NetworkRoute& network_route) override; 110 const rtc::NetworkRoute& network_route) override;
107 111
108 void OnSentPacket(const rtc::SentPacket& sent_packet) override; 112 void OnSentPacket(const rtc::SentPacket& sent_packet) override;
109 113
110 // Implements BitrateObserver. 114 // Implements BitrateObserver.
111 void OnNetworkChanged(uint32_t bitrate_bps, uint8_t fraction_loss, 115 void OnNetworkChanged(uint32_t bitrate_bps, uint8_t fraction_loss,
112 int64_t rtt_ms) override; 116 int64_t rtt_ms) override;
113 117
114 // Implements BitrateAllocator::LimitObserver. 118 // Implements BitrateAllocator::LimitObserver.
(...skipping 544 matching lines...) Expand 10 before | Expand all | Expand 10 after
659 ReadLockScoped read_lock(*receive_crit_); 663 ReadLockScoped read_lock(*receive_crit_);
660 for (auto& kv : audio_receive_ssrcs_) { 664 for (auto& kv : audio_receive_ssrcs_) {
661 kv.second->SignalNetworkState(audio_network_state_); 665 kv.second->SignalNetworkState(audio_network_state_);
662 } 666 }
663 for (auto& kv : video_receive_ssrcs_) { 667 for (auto& kv : video_receive_ssrcs_) {
664 kv.second->SignalNetworkState(video_network_state_); 668 kv.second->SignalNetworkState(video_network_state_);
665 } 669 }
666 } 670 }
667 } 671 }
668 672
673 void Call::SignalTransportOverheadChange(MediaType media,
674 int transport_overhead_per_packet) {
675 switch (media) {
676 case MediaType::AUDIO: {
677 ReadLockScoped read_lock(*send_crit_);
678 for (auto& kv : audio_send_ssrcs_) {
679 kv.second->SetTransportOverhead(transport_overhead_per_packet);
680 }
681 break;
682 }
683 case MediaType::VIDEO: {
684 ReadLockScoped read_lock(*send_crit_);
685 for (auto& kv : video_send_ssrcs_) {
686 kv.second->SetTransportOverhead(transport_overhead_per_packet);
687 }
688 break;
689 }
690 case MediaType::ANY:
691 case MediaType::DATA:
692 RTC_NOTREACHED();
693 break;
694 }
695 }
696
669 // TODO(honghaiz): Add tests for this method. 697 // TODO(honghaiz): Add tests for this method.
670 void Call::OnNetworkRouteChanged(const std::string& transport_name, 698 void Call::OnNetworkRouteChanged(const std::string& transport_name,
671 const rtc::NetworkRoute& network_route) { 699 const rtc::NetworkRoute& network_route) {
672 RTC_DCHECK(configuration_thread_checker_.CalledOnValidThread()); 700 RTC_DCHECK(configuration_thread_checker_.CalledOnValidThread());
673 // Check if the network route is connected. 701 // Check if the network route is connected.
674 if (!network_route.connected) { 702 if (!network_route.connected) {
675 LOG(LS_INFO) << "Transport " << transport_name << " is disconnected"; 703 LOG(LS_INFO) << "Transport " << transport_name << " is disconnected";
676 // TODO(honghaiz): Perhaps handle this in SignalChannelNetworkState and 704 // TODO(honghaiz): Perhaps handle this in SignalChannelNetworkState and
677 // consider merging these two methods. 705 // consider merging these two methods.
678 return; 706 return;
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
952 uint32_t ssrc = ByteReader<uint32_t>::ReadBigEndian(&packet[8]); 980 uint32_t ssrc = ByteReader<uint32_t>::ReadBigEndian(&packet[8]);
953 ReadLockScoped read_lock(*receive_crit_); 981 ReadLockScoped read_lock(*receive_crit_);
954 auto it = video_receive_ssrcs_.find(ssrc); 982 auto it = video_receive_ssrcs_.find(ssrc);
955 if (it == video_receive_ssrcs_.end()) 983 if (it == video_receive_ssrcs_.end())
956 return false; 984 return false;
957 return it->second->OnRecoveredPacket(packet, length); 985 return it->second->OnRecoveredPacket(packet, length);
958 } 986 }
959 987
960 } // namespace internal 988 } // namespace internal
961 } // namespace webrtc 989 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698