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

Unified Diff: media/cast/sender/video_sender_unittest.cc

Issue 688423003: [Cast] VideoFrameFactory interface to vend frames with encoder affinity. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 1 month 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: media/cast/sender/video_sender_unittest.cc
diff --git a/media/cast/sender/video_sender_unittest.cc b/media/cast/sender/video_sender_unittest.cc
index 120d8c7678b624c30f2317f327607fc66617b083..7a13e16d7496534df7e6bf72c19ef8e2be95e8be 100644
--- a/media/cast/sender/video_sender_unittest.cc
+++ b/media/cast/sender/video_sender_unittest.cc
@@ -128,6 +128,20 @@ class PeerVideoSender : public VideoSender {
base::Bind(&IgnorePlayoutDelayChanges)) {}
using VideoSender::OnReceivedCastFeedback;
};
+
+void CreateFrameAndMemsetPlane(VideoFrameFactory* const video_frame_factory) {
+ auto video_frame = video_frame_factory->CreateFrame(base::TimeDelta());
+ ASSERT_TRUE(video_frame.get());
+ EXPECT_EQ(VideoFrame::I420, video_frame->format());
+ auto size = video_frame->coded_size();
+ EXPECT_EQ(kWidth, size.width());
+ EXPECT_EQ(kHeight, size.height());
+ memset(video_frame->data(VideoFrame::kYPlane),
+ 0xfe,
+ video_frame->rows(VideoFrame::kYPlane) *
+ video_frame->stride(VideoFrame::kYPlane));
+}
+
} // namespace
class VideoSenderTest : public ::testing::Test {
@@ -536,5 +550,15 @@ TEST_F(VideoSenderTest, AcksCancelRetransmits) {
EXPECT_EQ(0, transport_.number_of_rtp_packets());
}
+TEST_F(VideoSenderTest, CheckVideoFrameFactory) {
+ EXPECT_EQ(STATUS_VIDEO_INITIALIZED, InitEncoder(false, true));
+ auto video_frame_factory = video_sender_->video_frame_factory();
+ ASSERT_TRUE(video_frame_factory.get());
+ CreateFrameAndMemsetPlane(video_frame_factory.get());
+ video_sender_.reset(NULL);
+ task_runner_->RunTasks();
+ CreateFrameAndMemsetPlane(video_frame_factory.get());
+}
+
} // namespace cast
} // namespace media

Powered by Google App Engine
This is Rietveld 408576698