Delete VCMPacket constructor with WebRtcRTPHeader

Bug: webrtc:10397
Change-Id: I8f51616d6953af6b2d3bdfdf46b748b2a78702ea
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/127240
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27079}
This commit is contained in:
Niels Möller
2019-03-12 12:29:22 +01:00
committed by Commit Bot
parent c4b391a257
commit 075e7fdd00
5 changed files with 30 additions and 39 deletions

View File

@ -109,14 +109,6 @@ class LossNotificationSender {
bool decodability_flag) = 0;
};
// Used to indicate if a received packet contain a complete NALU (or equivalent)
enum VCMNaluCompleteness {
kNaluUnset = 0, // Packet has not been filled.
kNaluComplete = 1, // Packet can be decoded as is.
kNaluStart, // Packet contain beginning of NALU
kNaluIncomplete, // Packet is not beginning or end of NALU
kNaluEnd, // Packet is the end of a NALU
};
} // namespace webrtc
#endif // MODULES_INCLUDE_MODULE_COMMON_TYPES_H_

View File

@ -240,15 +240,15 @@ class TestBasicJitterBuffer : public ::testing::TestWithParam<std::string>,
i += 3;
}
}
WebRtcRTPHeader rtpHeader;
memset(&rtpHeader, 0, sizeof(rtpHeader));
rtpHeader.header.sequenceNumber = seq_num_;
rtpHeader.header.timestamp = timestamp_;
rtpHeader.header.markerBit = true;
rtpHeader.frameType = kVideoFrameDelta;
rtpHeader.video_header().codec = kVideoCodecGeneric;
rtpHeader.video_header().is_first_packet_in_frame = true;
packet_.reset(new VCMPacket(data_, size_, rtpHeader));
RTPHeader rtp_header;
RTPVideoHeader video_header;
rtp_header.sequenceNumber = seq_num_;
rtp_header.timestamp = timestamp_;
rtp_header.markerBit = true;
video_header.codec = kVideoCodecGeneric;
video_header.is_first_packet_in_frame = true;
packet_.reset(new VCMPacket(data_, size_, rtp_header, video_header,
kVideoFrameDelta, /*ntp_time_ms=*/0));
}
VCMEncodedFrame* DecodeCompleteFrame() {
@ -763,13 +763,14 @@ TEST_F(TestBasicJitterBuffer, TestReorderingWithPadding) {
// Add in the padding. These are empty packets (data length is 0) with no
// marker bit and matching the timestamp of Frame B.
WebRtcRTPHeader rtpHeader;
memset(&rtpHeader, 0, sizeof(rtpHeader));
rtpHeader.header.sequenceNumber = seq_num_ + 2;
rtpHeader.header.timestamp = timestamp_ + (33 * 90);
rtpHeader.header.markerBit = false;
rtpHeader.video_header().codec = kVideoCodecGeneric;
VCMPacket empty_packet(data_, 0, rtpHeader);
RTPHeader rtp_header;
RTPVideoHeader video_header;
rtp_header.sequenceNumber = seq_num_ + 2;
rtp_header.timestamp = timestamp_ + (33 * 90);
rtp_header.markerBit = false;
video_header.codec = kVideoCodecGeneric;
VCMPacket empty_packet(data_, 0, rtp_header, video_header,
VideoFrameType::kEmptyFrame, /*ntp_time_ms=*/0);
EXPECT_EQ(kOldPacket,
jitter_buffer_->InsertPacket(empty_packet, &retransmitted));
empty_packet.seqNum += 1;

View File

@ -11,7 +11,6 @@
#include "modules/video_coding/packet.h"
#include "api/rtp_headers.h"
#include "modules/include/module_common_types.h"
namespace webrtc {
@ -32,16 +31,6 @@ VCMPacket::VCMPacket()
video_header.playout_delay = {-1, -1};
}
VCMPacket::VCMPacket(const uint8_t* ptr,
const size_t size,
const WebRtcRTPHeader& rtpHeader)
: VCMPacket(ptr,
size,
rtpHeader.header,
rtpHeader.video_header(),
rtpHeader.frameType,
rtpHeader.ntp_time_ms) {}
VCMPacket::VCMPacket(const uint8_t* ptr,
size_t size,
const RTPHeader& rtp_header,

View File

@ -15,19 +15,26 @@
#include <stdint.h>
#include "absl/types/optional.h"
#include "api/rtp_headers.h"
#include "common_types.h" // NOLINT(build/include)
#include "modules/include/module_common_types.h"
#include "modules/rtp_rtcp/source/rtp_generic_frame_descriptor.h"
#include "modules/rtp_rtcp/source/rtp_video_header.h"
namespace webrtc {
// Used to indicate if a received packet contain a complete NALU (or equivalent)
enum VCMNaluCompleteness {
kNaluUnset = 0, // Packet has not been filled.
kNaluComplete = 1, // Packet can be decoded as is.
kNaluStart, // Packet contain beginning of NALU
kNaluIncomplete, // Packet is not beginning or end of NALU
kNaluEnd, // Packet is the end of a NALU
};
class VCMPacket {
public:
VCMPacket();
VCMPacket(const uint8_t* ptr, size_t size, const WebRtcRTPHeader& rtpHeader);
VCMPacket(const uint8_t* ptr,
size_t size,
const RTPHeader& rtp_header,

View File

@ -394,7 +394,9 @@ int32_t VideoReceiver::IncomingPacket(const uint8_t* incomingPayload,
// TODO(holmer): We should fix this in the jitter buffer.
payloadLength = 0;
}
const VCMPacket packet(incomingPayload, payloadLength, rtpInfo);
const VCMPacket packet(incomingPayload, payloadLength, rtpInfo.header,
rtpInfo.video_header(), rtpInfo.frameType,
rtpInfo.ntp_time_ms);
int32_t ret = _receiver.InsertPacket(packet);
// TODO(holmer): Investigate if this somehow should use the key frame