| 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 658 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 669 padding_packet, length, rtp_header, now_ms - capture_time_ms); | 669 padding_packet, length, rtp_header, now_ms - capture_time_ms); |
| 670 } | 670 } |
| 671 | 671 |
| 672 UpdateAbsoluteSendTime(padding_packet, length, rtp_header, now_ms); | 672 UpdateAbsoluteSendTime(padding_packet, length, rtp_header, now_ms); |
| 673 | 673 |
| 674 PacketOptions options; | 674 PacketOptions options; |
| 675 if (AllocateTransportSequenceNumber(&options.packet_id)) { | 675 if (AllocateTransportSequenceNumber(&options.packet_id)) { |
| 676 if (UpdateTransportSequenceNumber(options.packet_id, padding_packet, | 676 if (UpdateTransportSequenceNumber(options.packet_id, padding_packet, |
| 677 length, rtp_header)) { | 677 length, rtp_header)) { |
| 678 if (transport_feedback_observer_) | 678 if (transport_feedback_observer_) |
| 679 transport_feedback_observer_->AddPacket(options.packet_id, length, | 679 transport_feedback_observer_->AddPacket(options.packet_id, length); |
| 680 true); | |
| 681 } | 680 } |
| 682 } | 681 } |
| 683 | 682 |
| 684 if (!SendPacketToNetwork(padding_packet, length, options)) | 683 if (!SendPacketToNetwork(padding_packet, length, options)) |
| 685 break; | 684 break; |
| 686 | 685 |
| 687 bytes_sent += padding_bytes_in_packet; | 686 bytes_sent += padding_bytes_in_packet; |
| 688 UpdateRtpStats(padding_packet, length, rtp_header, over_rtx, false); | 687 UpdateRtpStats(padding_packet, length, rtp_header, over_rtx, false); |
| 689 } | 688 } |
| 690 | 689 |
| (...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 925 int64_t diff_ms = now_ms - capture_time_ms; | 924 int64_t diff_ms = now_ms - capture_time_ms; |
| 926 UpdateTransmissionTimeOffset(buffer_to_send_ptr, length, rtp_header, | 925 UpdateTransmissionTimeOffset(buffer_to_send_ptr, length, rtp_header, |
| 927 diff_ms); | 926 diff_ms); |
| 928 UpdateAbsoluteSendTime(buffer_to_send_ptr, length, rtp_header, now_ms); | 927 UpdateAbsoluteSendTime(buffer_to_send_ptr, length, rtp_header, now_ms); |
| 929 | 928 |
| 930 PacketOptions options; | 929 PacketOptions options; |
| 931 if (AllocateTransportSequenceNumber(&options.packet_id)) { | 930 if (AllocateTransportSequenceNumber(&options.packet_id)) { |
| 932 if (UpdateTransportSequenceNumber(options.packet_id, buffer_to_send_ptr, | 931 if (UpdateTransportSequenceNumber(options.packet_id, buffer_to_send_ptr, |
| 933 length, rtp_header)) { | 932 length, rtp_header)) { |
| 934 if (transport_feedback_observer_) | 933 if (transport_feedback_observer_) |
| 935 transport_feedback_observer_->AddPacket(options.packet_id, length, | 934 transport_feedback_observer_->AddPacket(options.packet_id, length); |
| 936 true); | |
| 937 } | 935 } |
| 938 } | 936 } |
| 939 | 937 |
| 940 if (!is_retransmit && !send_over_rtx) { | 938 if (!is_retransmit && !send_over_rtx) { |
| 941 UpdateDelayStatistics(capture_time_ms, now_ms); | 939 UpdateDelayStatistics(capture_time_ms, now_ms); |
| 942 UpdateOnSendPacket(options.packet_id, capture_time_ms, rtp_header.ssrc); | 940 UpdateOnSendPacket(options.packet_id, capture_time_ms, rtp_header.ssrc); |
| 943 } | 941 } |
| 944 | 942 |
| 945 bool ret = SendPacketToNetwork(buffer_to_send_ptr, length, options); | 943 bool ret = SendPacketToNetwork(buffer_to_send_ptr, length, options); |
| 946 if (ret) { | 944 if (ret) { |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1055 "capture_time_ms", corrected_time_ms); | 1053 "capture_time_ms", corrected_time_ms); |
| 1056 } | 1054 } |
| 1057 return 0; | 1055 return 0; |
| 1058 } | 1056 } |
| 1059 | 1057 |
| 1060 PacketOptions options; | 1058 PacketOptions options; |
| 1061 if (AllocateTransportSequenceNumber(&options.packet_id)) { | 1059 if (AllocateTransportSequenceNumber(&options.packet_id)) { |
| 1062 if (UpdateTransportSequenceNumber(options.packet_id, buffer, length, | 1060 if (UpdateTransportSequenceNumber(options.packet_id, buffer, length, |
| 1063 rtp_header)) { | 1061 rtp_header)) { |
| 1064 if (transport_feedback_observer_) | 1062 if (transport_feedback_observer_) |
| 1065 transport_feedback_observer_->AddPacket(options.packet_id, length, | 1063 transport_feedback_observer_->AddPacket(options.packet_id, length); |
| 1066 true); | |
| 1067 } | 1064 } |
| 1068 } | 1065 } |
| 1069 UpdateDelayStatistics(capture_time_ms, now_ms); | 1066 UpdateDelayStatistics(capture_time_ms, now_ms); |
| 1070 UpdateOnSendPacket(options.packet_id, capture_time_ms, rtp_header.ssrc); | 1067 UpdateOnSendPacket(options.packet_id, capture_time_ms, rtp_header.ssrc); |
| 1071 | 1068 |
| 1072 bool sent = SendPacketToNetwork(buffer, length, options); | 1069 bool sent = SendPacketToNetwork(buffer, length, options); |
| 1073 | 1070 |
| 1074 // Mark the packet as sent in the history even if send failed. Dropping a | 1071 // Mark the packet as sent in the history even if send failed. Dropping a |
| 1075 // packet here should be treated as any other packet drop so we should be | 1072 // packet here should be treated as any other packet drop so we should be |
| 1076 // ready for a retransmission. | 1073 // ready for a retransmission. |
| (...skipping 834 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1911 rtc::CritScope lock(&send_critsect_); | 1908 rtc::CritScope lock(&send_critsect_); |
| 1912 | 1909 |
| 1913 RtpState state; | 1910 RtpState state; |
| 1914 state.sequence_number = sequence_number_rtx_; | 1911 state.sequence_number = sequence_number_rtx_; |
| 1915 state.start_timestamp = start_timestamp_; | 1912 state.start_timestamp = start_timestamp_; |
| 1916 | 1913 |
| 1917 return state; | 1914 return state; |
| 1918 } | 1915 } |
| 1919 | 1916 |
| 1920 } // namespace webrtc | 1917 } // namespace webrtc |
| OLD | NEW |