ManageFrameH264 for temporal layers (PART 3/3)
Bug: webrtc:10579 Change-Id: Iec54f6b1231d34c2018f22841c3614ddd0b05612 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/86200 Commit-Queue: Sergey Silkin <ssilkin@webrtc.org> Reviewed-by: Sergey Silkin <ssilkin@webrtc.org> Reviewed-by: Stefan Holmer <stefan@webrtc.org> Cr-Commit-Position: refs/heads/master@{#27820}
This commit is contained in:
@ -384,10 +384,13 @@ std::vector<std::unique_ptr<RtpFrameObject>> PacketBuffer::FindFrames(
|
||||
VideoFrameType::kVideoFrameDelta;
|
||||
}
|
||||
|
||||
// If this is not a keyframe, make sure there are no gaps in the
|
||||
// packet sequence numbers up until this point.
|
||||
if (!is_h264_keyframe && missing_packets_.upper_bound(start_seq_num) !=
|
||||
missing_packets_.begin()) {
|
||||
// With IPPP, if this is not a keyframe, make sure there are no gaps
|
||||
// in the packet sequence numbers up until this point.
|
||||
const uint8_t h264tid =
|
||||
data_buffer_[start_index].video_header.frame_marking.temporal_id;
|
||||
if (h264tid == kNoTemporalIdx && !is_h264_keyframe
|
||||
&& missing_packets_.upper_bound(start_seq_num)
|
||||
!= missing_packets_.begin()) {
|
||||
uint16_t stop_index = (index + 1) % size_;
|
||||
while (start_index != stop_index) {
|
||||
sequence_buffer_[start_index].frame_created = false;
|
||||
|
Reference in New Issue
Block a user