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

Side by Side Diff: webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.cc

Issue 2007743003: Add sender controlled playout delay limits (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@cleanup_rtp_hdr_extensions
Patch Set: Remove notion of max and current header length Created 4 years, 6 months 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) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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 21 matching lines...) Expand all
32 if (extension == RtpExtension::kTimestampOffsetUri) 32 if (extension == RtpExtension::kTimestampOffsetUri)
33 return kRtpExtensionTransmissionTimeOffset; 33 return kRtpExtensionTransmissionTimeOffset;
34 if (extension == RtpExtension::kAudioLevelUri) 34 if (extension == RtpExtension::kAudioLevelUri)
35 return kRtpExtensionAudioLevel; 35 return kRtpExtensionAudioLevel;
36 if (extension == RtpExtension::kAbsSendTimeUri) 36 if (extension == RtpExtension::kAbsSendTimeUri)
37 return kRtpExtensionAbsoluteSendTime; 37 return kRtpExtensionAbsoluteSendTime;
38 if (extension == RtpExtension::kVideoRotationUri) 38 if (extension == RtpExtension::kVideoRotationUri)
39 return kRtpExtensionVideoRotation; 39 return kRtpExtensionVideoRotation;
40 if (extension == RtpExtension::kTransportSequenceNumberUri) 40 if (extension == RtpExtension::kTransportSequenceNumberUri)
41 return kRtpExtensionTransportSequenceNumber; 41 return kRtpExtensionTransportSequenceNumber;
42 if (extension == RtpExtension::kPlayoutDelayUri)
43 return kRtpExtensionPlayoutDelay;
42 RTC_NOTREACHED() << "Looking up unsupported RTP extension."; 44 RTC_NOTREACHED() << "Looking up unsupported RTP extension.";
43 return kRtpExtensionNone; 45 return kRtpExtensionNone;
44 } 46 }
45 47
46 RtpRtcp::Configuration::Configuration() 48 RtpRtcp::Configuration::Configuration()
47 : audio(false), 49 : audio(false),
48 receiver_only(false), 50 receiver_only(false),
49 clock(nullptr), 51 clock(nullptr),
50 receive_statistics(NullObjectReceiveStatistics()), 52 receive_statistics(NullObjectReceiveStatistics()),
51 outgoing_transport(nullptr), 53 outgoing_transport(nullptr),
(...skipping 863 matching lines...) Expand 10 before | Expand all | Expand 10 after
915 return; 917 return;
916 } 918 }
917 // Use RTT from RtcpRttStats class if provided. 919 // Use RTT from RtcpRttStats class if provided.
918 int64_t rtt = rtt_ms(); 920 int64_t rtt = rtt_ms();
919 if (rtt == 0) { 921 if (rtt == 0) {
920 rtcp_receiver_.RTT(rtcp_receiver_.RemoteSSRC(), NULL, &rtt, NULL, NULL); 922 rtcp_receiver_.RTT(rtcp_receiver_.RemoteSSRC(), NULL, &rtt, NULL, NULL);
921 } 923 }
922 rtp_sender_.OnReceivedNACK(nack_sequence_numbers, rtt); 924 rtp_sender_.OnReceivedNACK(nack_sequence_numbers, rtt);
923 } 925 }
924 926
927 void ModuleRtpRtcpImpl::OnReceivedRtcpReceiverReport(
928 const ReportBlockList& report_blocks) {
929 rtp_sender_.OnReceivedRtcpReceiverReport(report_blocks);
930 }
931
925 bool ModuleRtpRtcpImpl::LastReceivedNTP( 932 bool ModuleRtpRtcpImpl::LastReceivedNTP(
926 uint32_t* rtcp_arrival_time_secs, // When we got the last report. 933 uint32_t* rtcp_arrival_time_secs, // When we got the last report.
927 uint32_t* rtcp_arrival_time_frac, 934 uint32_t* rtcp_arrival_time_frac,
928 uint32_t* remote_sr) const { 935 uint32_t* remote_sr) const {
929 // Remote SR: NTP inside the last received (mid 16 bits from sec and frac). 936 // Remote SR: NTP inside the last received (mid 16 bits from sec and frac).
930 uint32_t ntp_secs = 0; 937 uint32_t ntp_secs = 0;
931 uint32_t ntp_frac = 0; 938 uint32_t ntp_frac = 0;
932 939
933 if (!rtcp_receiver_.NTP(&ntp_secs, 940 if (!rtcp_receiver_.NTP(&ntp_secs,
934 &ntp_frac, 941 &ntp_frac,
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
987 void ModuleRtpRtcpImpl::RegisterSendChannelRtpStatisticsCallback( 994 void ModuleRtpRtcpImpl::RegisterSendChannelRtpStatisticsCallback(
988 StreamDataCountersCallback* callback) { 995 StreamDataCountersCallback* callback) {
989 rtp_sender_.RegisterRtpStatisticsCallback(callback); 996 rtp_sender_.RegisterRtpStatisticsCallback(callback);
990 } 997 }
991 998
992 StreamDataCountersCallback* 999 StreamDataCountersCallback*
993 ModuleRtpRtcpImpl::GetSendChannelRtpStatisticsCallback() const { 1000 ModuleRtpRtcpImpl::GetSendChannelRtpStatisticsCallback() const {
994 return rtp_sender_.GetRtpStatisticsCallback(); 1001 return rtp_sender_.GetRtpStatisticsCallback();
995 } 1002 }
996 } // namespace webrtc 1003 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698