Always unwrap VP9 TL0PicIdx forward if the frame is newer.
Bug: webrtc:12979 Change-Id: Idcc14f8f61b04f9eb194b55ffa40fb95319a881c Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/226463 Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Commit-Queue: Philip Eliasson <philipel@webrtc.org> Cr-Commit-Position: refs/heads/master@{#34513}
This commit is contained in:
@ -23,6 +23,7 @@ using ::testing::Matches;
|
||||
using ::testing::MatchResultListener;
|
||||
using ::testing::Pointee;
|
||||
using ::testing::Property;
|
||||
using ::testing::SizeIs;
|
||||
using ::testing::UnorderedElementsAreArray;
|
||||
|
||||
namespace webrtc {
|
||||
@ -661,6 +662,24 @@ TEST_F(RtpVp9RefFinderTest, GofTl0Jump) {
|
||||
Insert(Frame().Pid(1).SidAndTid(0, 0).Tl0(0).Gof(&ss));
|
||||
}
|
||||
|
||||
TEST_F(RtpVp9RefFinderTest, DontDiscardNewerFramesWithWrappedTl0) {
|
||||
GofInfoVP9 ss;
|
||||
ss.SetGofInfoVP9(kTemporalStructureMode1);
|
||||
|
||||
Insert(
|
||||
Frame().Pid(0).SidAndTid(0, 0).Tl0(0).SeqNum(0, 0).AsKeyFrame().Gof(&ss));
|
||||
// ... 254 frames are lost ...
|
||||
Insert(Frame()
|
||||
.Pid(255)
|
||||
.SidAndTid(0, 0)
|
||||
.Tl0(255)
|
||||
.SeqNum(255, 255)
|
||||
.AsKeyFrame()
|
||||
.Gof(&ss));
|
||||
|
||||
EXPECT_THAT(frames_, SizeIs(2));
|
||||
}
|
||||
|
||||
TEST_F(RtpVp9RefFinderTest, GofTidTooHigh) {
|
||||
const int kMaxTemporalLayers = 5;
|
||||
GofInfoVP9 ss;
|
||||
|
||||
Reference in New Issue
Block a user