Remove RtpPacketToSend::GetHeader as almost unused.
Merge rtp::Packet::GetHeader into RtpPacketReceived::GetHeader removing error-prone code where latter shadow former version BUG=None Review-Url: https://codereview.webrtc.org/3012983002 Cr-Commit-Position: refs/heads/master@{#19784}
This commit is contained in:
parent
a827c087fa
commit
ce25181714
@ -118,6 +118,7 @@ rtc_static_library("rtp_rtcp") {
|
||||
"source/rtp_packet.h",
|
||||
"source/rtp_packet_history.cc",
|
||||
"source/rtp_packet_history.h",
|
||||
"source/rtp_packet_received.cc",
|
||||
"source/rtp_packet_received.h",
|
||||
"source/rtp_packet_to_send.h",
|
||||
"source/rtp_payload_registry.cc",
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
#include "webrtc/common_types.h"
|
||||
#include "webrtc/modules/rtp_rtcp/include/rtp_header_extension_map.h"
|
||||
#include "webrtc/modules/rtp_rtcp/source/byte_io.h"
|
||||
#include "webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h"
|
||||
#include "webrtc/rtc_base/checks.h"
|
||||
#include "webrtc/rtc_base/logging.h"
|
||||
#include "webrtc/rtc_base/random.h"
|
||||
@ -145,43 +144,6 @@ std::vector<uint32_t> Packet::Csrcs() const {
|
||||
return csrcs;
|
||||
}
|
||||
|
||||
void Packet::GetHeader(RTPHeader* header) const {
|
||||
header->markerBit = Marker();
|
||||
header->payloadType = PayloadType();
|
||||
header->sequenceNumber = SequenceNumber();
|
||||
header->timestamp = Timestamp();
|
||||
header->ssrc = Ssrc();
|
||||
std::vector<uint32_t> csrcs = Csrcs();
|
||||
header->numCSRCs = csrcs.size();
|
||||
for (size_t i = 0; i < csrcs.size(); ++i) {
|
||||
header->arrOfCSRCs[i] = csrcs[i];
|
||||
}
|
||||
header->paddingLength = padding_size();
|
||||
header->headerLength = headers_size();
|
||||
header->payload_type_frequency = 0;
|
||||
header->extension.hasTransmissionTimeOffset =
|
||||
GetExtension<TransmissionOffset>(
|
||||
&header->extension.transmissionTimeOffset);
|
||||
header->extension.hasAbsoluteSendTime =
|
||||
GetExtension<AbsoluteSendTime>(&header->extension.absoluteSendTime);
|
||||
header->extension.hasTransportSequenceNumber =
|
||||
GetExtension<TransportSequenceNumber>(
|
||||
&header->extension.transportSequenceNumber);
|
||||
header->extension.hasAudioLevel = GetExtension<AudioLevel>(
|
||||
&header->extension.voiceActivity, &header->extension.audioLevel);
|
||||
header->extension.hasVideoRotation =
|
||||
GetExtension<VideoOrientation>(&header->extension.videoRotation);
|
||||
header->extension.hasVideoContentType =
|
||||
GetExtension<VideoContentTypeExtension>(
|
||||
&header->extension.videoContentType);
|
||||
header->extension.has_video_timing =
|
||||
GetExtension<VideoTimingExtension>(&header->extension.video_timing);
|
||||
GetExtension<RtpStreamId>(&header->extension.stream_id);
|
||||
GetExtension<RepairedRtpStreamId>(&header->extension.repaired_stream_id);
|
||||
GetExtension<RtpMid>(&header->extension.mid);
|
||||
GetExtension<PlayoutDelayLimits>(&header->extension.playout_delay);
|
||||
}
|
||||
|
||||
size_t Packet::headers_size() const {
|
||||
return payload_offset_;
|
||||
}
|
||||
|
||||
@ -18,7 +18,6 @@
|
||||
#include "webrtc/rtc_base/copyonwritebuffer.h"
|
||||
|
||||
namespace webrtc {
|
||||
struct RTPHeader;
|
||||
class RtpHeaderExtensionMap;
|
||||
class Random;
|
||||
|
||||
@ -49,10 +48,6 @@ class Packet {
|
||||
uint32_t Ssrc() const;
|
||||
std::vector<uint32_t> Csrcs() const;
|
||||
|
||||
// TODO(danilchap): Remove this function when all code update to use RtpPacket
|
||||
// directly. Function is there just for easier backward compatibilty.
|
||||
void GetHeader(RTPHeader* header) const;
|
||||
|
||||
size_t headers_size() const;
|
||||
|
||||
// Payload.
|
||||
@ -127,7 +122,7 @@ class Packet {
|
||||
explicit Packet(const ExtensionManager* extensions);
|
||||
Packet(const Packet&);
|
||||
Packet(const ExtensionManager* extensions, size_t capacity);
|
||||
virtual ~Packet();
|
||||
~Packet();
|
||||
|
||||
Packet& operator=(const Packet&) = default;
|
||||
|
||||
|
||||
56
webrtc/modules/rtp_rtcp/source/rtp_packet_received.cc
Normal file
56
webrtc/modules/rtp_rtcp/source/rtp_packet_received.cc
Normal file
@ -0,0 +1,56 @@
|
||||
/*
|
||||
* Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
* tree. An additional intellectual property rights grant can be found
|
||||
* in the file PATENTS. All contributing project authors may
|
||||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
#include "webrtc/modules/rtp_rtcp/source/rtp_packet_received.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "webrtc/modules/rtp_rtcp/source/rtp_header_extensions.h"
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
void RtpPacketReceived::GetHeader(RTPHeader* header) const {
|
||||
header->markerBit = Marker();
|
||||
header->payloadType = PayloadType();
|
||||
header->sequenceNumber = SequenceNumber();
|
||||
header->timestamp = Timestamp();
|
||||
header->ssrc = Ssrc();
|
||||
std::vector<uint32_t> csrcs = Csrcs();
|
||||
header->numCSRCs = csrcs.size();
|
||||
for (size_t i = 0; i < csrcs.size(); ++i) {
|
||||
header->arrOfCSRCs[i] = csrcs[i];
|
||||
}
|
||||
header->paddingLength = padding_size();
|
||||
header->headerLength = headers_size();
|
||||
header->payload_type_frequency = payload_type_frequency();
|
||||
header->extension.hasTransmissionTimeOffset =
|
||||
GetExtension<TransmissionOffset>(
|
||||
&header->extension.transmissionTimeOffset);
|
||||
header->extension.hasAbsoluteSendTime =
|
||||
GetExtension<AbsoluteSendTime>(&header->extension.absoluteSendTime);
|
||||
header->extension.hasTransportSequenceNumber =
|
||||
GetExtension<TransportSequenceNumber>(
|
||||
&header->extension.transportSequenceNumber);
|
||||
header->extension.hasAudioLevel = GetExtension<AudioLevel>(
|
||||
&header->extension.voiceActivity, &header->extension.audioLevel);
|
||||
header->extension.hasVideoRotation =
|
||||
GetExtension<VideoOrientation>(&header->extension.videoRotation);
|
||||
header->extension.hasVideoContentType =
|
||||
GetExtension<VideoContentTypeExtension>(
|
||||
&header->extension.videoContentType);
|
||||
header->extension.has_video_timing =
|
||||
GetExtension<VideoTimingExtension>(&header->extension.video_timing);
|
||||
GetExtension<RtpStreamId>(&header->extension.stream_id);
|
||||
GetExtension<RepairedRtpStreamId>(&header->extension.repaired_stream_id);
|
||||
GetExtension<RtpMid>(&header->extension.mid);
|
||||
GetExtension<PlayoutDelayLimits>(&header->extension.playout_delay);
|
||||
}
|
||||
|
||||
} // namespace webrtc
|
||||
@ -22,10 +22,9 @@ class RtpPacketReceived : public rtp::Packet {
|
||||
explicit RtpPacketReceived(const ExtensionManager* extensions)
|
||||
: Packet(extensions) {}
|
||||
|
||||
void GetHeader(RTPHeader* header) const {
|
||||
Packet::GetHeader(header);
|
||||
header->payload_type_frequency = payload_type_frequency();
|
||||
}
|
||||
// TODO(danilchap): Remove this function when all code update to use RtpPacket
|
||||
// directly. Function is there just for easier backward compatibilty.
|
||||
void GetHeader(RTPHeader* header) const;
|
||||
|
||||
// Time in local time base as close as it can to packet arrived on the
|
||||
// network.
|
||||
|
||||
@ -500,9 +500,6 @@ TEST_P(RtpSenderTestWithoutPacer, WritesTimestampToTimingExtension) {
|
||||
packet->SetExtension<VideoTimingExtension>(kVideoTiming);
|
||||
EXPECT_TRUE(rtp_sender_->AssignSequenceNumber(packet.get()));
|
||||
size_t packet_size = packet->size();
|
||||
webrtc::RTPHeader rtp_header;
|
||||
|
||||
packet->GetHeader(&rtp_header);
|
||||
|
||||
const int kStoredTimeInMs = 100;
|
||||
fake_clock_.AdvanceTimeMilliseconds(kStoredTimeInMs);
|
||||
@ -513,10 +510,10 @@ TEST_P(RtpSenderTestWithoutPacer, WritesTimestampToTimingExtension) {
|
||||
EXPECT_EQ(1, transport_.packets_sent());
|
||||
EXPECT_EQ(packet_size, transport_.last_sent_packet().size());
|
||||
|
||||
transport_.last_sent_packet().GetHeader(&rtp_header);
|
||||
EXPECT_TRUE(rtp_header.extension.has_video_timing);
|
||||
EXPECT_EQ(kStoredTimeInMs,
|
||||
rtp_header.extension.video_timing.pacer_exit_delta_ms);
|
||||
VideoSendTiming video_timing;
|
||||
EXPECT_TRUE(transport_.last_sent_packet().GetExtension<VideoTimingExtension>(
|
||||
&video_timing));
|
||||
EXPECT_EQ(kStoredTimeInMs, video_timing.pacer_exit_delta_ms);
|
||||
|
||||
fake_clock_.AdvanceTimeMilliseconds(kStoredTimeInMs);
|
||||
rtp_sender_->TimeToSendPacket(kSsrc, kSeqNum, capture_time_ms, false,
|
||||
@ -525,10 +522,9 @@ TEST_P(RtpSenderTestWithoutPacer, WritesTimestampToTimingExtension) {
|
||||
EXPECT_EQ(2, transport_.packets_sent());
|
||||
EXPECT_EQ(packet_size, transport_.last_sent_packet().size());
|
||||
|
||||
transport_.last_sent_packet().GetHeader(&rtp_header);
|
||||
EXPECT_TRUE(rtp_header.extension.has_video_timing);
|
||||
EXPECT_EQ(kStoredTimeInMs * 2,
|
||||
rtp_header.extension.video_timing.pacer_exit_delta_ms);
|
||||
EXPECT_TRUE(transport_.last_sent_packet().GetExtension<VideoTimingExtension>(
|
||||
&video_timing));
|
||||
EXPECT_EQ(kStoredTimeInMs * 2, video_timing.pacer_exit_delta_ms);
|
||||
}
|
||||
|
||||
TEST_P(RtpSenderTest, TrafficSmoothingWithExtensions) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user