Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(799)

Unified Diff: webrtc/modules/video_coding/packet_buffer.cc

Issue 2613833003: Don't detect a new frame if a previous packet is used in a previous frame. (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/modules/video_coding/packet_buffer.cc
diff --git a/webrtc/modules/video_coding/packet_buffer.cc b/webrtc/modules/video_coding/packet_buffer.cc
index 03aeb5a4a9691e7fd867aada0b97628e272fd71c..e68bf623a47947ec7abf1f9240cea0f258d2bcac 100644
--- a/webrtc/modules/video_coding/packet_buffer.cc
+++ b/webrtc/modules/video_coding/packet_buffer.cc
@@ -40,7 +40,6 @@ PacketBuffer::PacketBuffer(Clock* clock,
size_(start_buffer_size),
max_size_(max_buffer_size),
first_seq_num_(0),
- last_seq_num_(0),
first_packet_received_(false),
is_cleared_to_first_seq_num_(false),
data_buffer_(start_buffer_size),
@@ -65,7 +64,6 @@ bool PacketBuffer::InsertPacket(VCMPacket* packet) {
if (!first_packet_received_) {
first_seq_num_ = seq_num;
- last_seq_num_ = seq_num;
first_packet_received_ = true;
} else if (AheadOf(first_seq_num_, seq_num)) {
// If we have explicitly cleared past this packet then it's old,
@@ -100,9 +98,6 @@ bool PacketBuffer::InsertPacket(VCMPacket* packet) {
}
}
- if (AheadOf(seq_num, last_seq_num_))
- last_seq_num_ = seq_num;
-
sequence_buffer_[index].frame_begin = packet->isFirstPacket;
sequence_buffer_[index].frame_end = packet->markerBit;
sequence_buffer_[index].seq_num = packet->seqNum;
@@ -186,6 +181,8 @@ bool PacketBuffer::PotentialNewFrame(uint16_t seq_num) const {
return true;
if (!sequence_buffer_[prev_index].used)
return false;
+ if (sequence_buffer_[prev_index].frame_created)
stefan-webrtc 2017/01/10 11:50:00 It's not clear to me why this is needed. Why can't
philipel 2017/01/10 12:03:36 This check covers this case: p1: seqnum 1 first
+ return false;
if (sequence_buffer_[prev_index].seq_num !=
sequence_buffer_[index].seq_num - 1) {
return false;

Powered by Google App Engine
This is Rietveld 408576698