Revert of Request keyframes more frequently on stream start/decoding error. (patchset #1 id:1 of https://codereview.webrtc.org/2993793002/ )
Reason for revert:
Broke downstream test that was waiting for 5 keyframes to be received within 10 seconds. Maybe the issue is that "stats_callback_->OnCompleteFrame(frame->num_references == 0, ..." was changed to "frame->is_keyframe()"?
Original issue's description:
> Request keyframes more frequently on stream start/decoding error.
>
> In this CL:
> - Added FrameObject::is_keyframe() convinience function.
> - Moved logic to request keyframes on decoding error from VideoReceived to
> VideoReceiveStream.
> - Added keyframe_required as a parameter to FrameBuffer::NextFrame.
>
> BUG=webrtc:8074
>
> Review-Url: https://codereview.webrtc.org/2993793002
> Cr-Commit-Position: refs/heads/master@{#19280}
> Committed: https://chromium.googlesource.com/external/webrtc/+/26b48043581735eed6e36b95fae6f5b1bcf8cfb5
TBR=terelius@webrtc.org,stefan@webrtc.org,noahric@chromium.org,philipel@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:8074
Review-Url: https://codereview.webrtc.org/2994043002
Cr-Commit-Position: refs/heads/master@{#19295}
diff --git a/webrtc/modules/video_coding/frame_buffer2_unittest.cc b/webrtc/modules/video_coding/frame_buffer2_unittest.cc
index 95a879b..d85f1cf 100644
--- a/webrtc/modules/video_coding/frame_buffer2_unittest.cc
+++ b/webrtc/modules/video_coding/frame_buffer2_unittest.cc
@@ -167,12 +167,11 @@
return buffer_.InsertFrame(std::move(frame));
}
- void ExtractFrame(int64_t max_wait_time = 0, bool keyframe_required = false) {
+ void ExtractFrame(int64_t max_wait_time = 0) {
crit_.Enter();
if (max_wait_time == 0) {
std::unique_ptr<FrameObject> frame;
- FrameBuffer::ReturnReason res =
- buffer_.NextFrame(0, &frame, keyframe_required);
+ FrameBuffer::ReturnReason res = buffer_.NextFrame(0, &frame);
if (res != FrameBuffer::ReturnReason::kStopped)
frames_.emplace_back(std::move(frame));
crit_.Leave();
@@ -541,18 +540,5 @@
EXPECT_EQ(2, InsertFrame(2, 0, 3000, false, 1));
}
-TEST_F(TestFrameBuffer2, KeyframeRequired) {
- EXPECT_EQ(1, InsertFrame(1, 0, 1000, false));
- EXPECT_EQ(2, InsertFrame(2, 0, 2000, false, 1));
- EXPECT_EQ(3, InsertFrame(3, 0, 3000, false));
- ExtractFrame();
- ExtractFrame(0, true);
- ExtractFrame();
-
- CheckFrame(0, 1, 0);
- CheckFrame(1, 3, 0);
- CheckNoFrame(2);
-}
-
} // namespace video_coding
} // namespace webrtc