OLD | NEW |
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 1075 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1086 std::unique_ptr<RtpPacketToSend> RTPSender::AllocatePacket() const { | 1086 std::unique_ptr<RtpPacketToSend> RTPSender::AllocatePacket() const { |
1087 rtc::CritScope lock(&send_critsect_); | 1087 rtc::CritScope lock(&send_critsect_); |
1088 std::unique_ptr<RtpPacketToSend> packet( | 1088 std::unique_ptr<RtpPacketToSend> packet( |
1089 new RtpPacketToSend(&rtp_header_extension_map_, max_payload_length_)); | 1089 new RtpPacketToSend(&rtp_header_extension_map_, max_payload_length_)); |
1090 packet->SetSsrc(ssrc_); | 1090 packet->SetSsrc(ssrc_); |
1091 packet->SetCsrcs(csrcs_); | 1091 packet->SetCsrcs(csrcs_); |
1092 // Reserve extensions, if registered, RtpSender set in SendToNetwork. | 1092 // Reserve extensions, if registered, RtpSender set in SendToNetwork. |
1093 packet->ReserveExtension<AbsoluteSendTime>(); | 1093 packet->ReserveExtension<AbsoluteSendTime>(); |
1094 packet->ReserveExtension<TransmissionOffset>(); | 1094 packet->ReserveExtension<TransmissionOffset>(); |
1095 packet->ReserveExtension<TransportSequenceNumber>(); | 1095 packet->ReserveExtension<TransportSequenceNumber>(); |
| 1096 if (playout_delay_oracle_.send_playout_delay()) { |
| 1097 packet->SetExtension<PlayoutDelayLimits>( |
| 1098 playout_delay_oracle_.playout_delay()); |
| 1099 } |
1096 return packet; | 1100 return packet; |
1097 } | 1101 } |
1098 | 1102 |
1099 bool RTPSender::AssignSequenceNumber(RtpPacketToSend* packet) { | 1103 bool RTPSender::AssignSequenceNumber(RtpPacketToSend* packet) { |
1100 rtc::CritScope lock(&send_critsect_); | 1104 rtc::CritScope lock(&send_critsect_); |
1101 if (!sending_media_) | 1105 if (!sending_media_) |
1102 return false; | 1106 return false; |
1103 RTC_DCHECK_EQ(packet->Ssrc(), ssrc_); | 1107 RTC_DCHECK_EQ(packet->Ssrc(), ssrc_); |
1104 packet->SetSequenceNumber(sequence_number_++); | 1108 packet->SetSequenceNumber(sequence_number_++); |
1105 | 1109 |
(...skipping 657 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1763 rtc::CritScope lock(&send_critsect_); | 1767 rtc::CritScope lock(&send_critsect_); |
1764 | 1768 |
1765 RtpState state; | 1769 RtpState state; |
1766 state.sequence_number = sequence_number_rtx_; | 1770 state.sequence_number = sequence_number_rtx_; |
1767 state.start_timestamp = timestamp_offset_; | 1771 state.start_timestamp = timestamp_offset_; |
1768 | 1772 |
1769 return state; | 1773 return state; |
1770 } | 1774 } |
1771 | 1775 |
1772 } // namespace webrtc | 1776 } // namespace webrtc |
OLD | NEW |