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}
diff --git a/modules/video_coding/jitter_buffer_unittest.cc b/modules/video_coding/jitter_buffer_unittest.cc
index 2863efb..68a4b84 100644
--- a/modules/video_coding/jitter_buffer_unittest.cc
+++ b/modules/video_coding/jitter_buffer_unittest.cc
@@ -240,15 +240,15 @@
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 @@
// 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;
diff --git a/modules/video_coding/packet.cc b/modules/video_coding/packet.cc
index 1113a6d..5b826e8 100644
--- a/modules/video_coding/packet.cc
+++ b/modules/video_coding/packet.cc
@@ -11,7 +11,6 @@
#include "modules/video_coding/packet.h"
#include "api/rtp_headers.h"
-#include "modules/include/module_common_types.h"
namespace webrtc {
@@ -33,16 +32,6 @@
}
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,
const RTPVideoHeader& videoHeader,
diff --git a/modules/video_coding/packet.h b/modules/video_coding/packet.h
index 835bfdf..cd4b330 100644
--- a/modules/video_coding/packet.h
+++ b/modules/video_coding/packet.h
@@ -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,
diff --git a/modules/video_coding/video_receiver.cc b/modules/video_coding/video_receiver.cc
index 20eff5e..e2bac95 100644
--- a/modules/video_coding/video_receiver.cc
+++ b/modules/video_coding/video_receiver.cc
@@ -394,7 +394,9 @@
// 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