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

Unified Diff: webrtc/modules/desktop_capture/blank_detector_desktop_capturer_wrapper_unittest.cc

Issue 2726983005: Revert of BlankDetectorDesktopCapturerWrapper to detect a blank DesktopFrame (Closed)
Patch Set: Created 3 years, 10 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/desktop_capture/blank_detector_desktop_capturer_wrapper_unittest.cc
diff --git a/webrtc/modules/desktop_capture/blank_detector_desktop_capturer_wrapper_unittest.cc b/webrtc/modules/desktop_capture/blank_detector_desktop_capturer_wrapper_unittest.cc
deleted file mode 100644
index bce82ddc25a7b1dca82b3e78c68e95af97f2be86..0000000000000000000000000000000000000000
--- a/webrtc/modules/desktop_capture/blank_detector_desktop_capturer_wrapper_unittest.cc
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-#include "webrtc/modules/desktop_capture/blank_detector_desktop_capturer_wrapper.h"
-
-#include <memory>
-#include <utility>
-
-#include "webrtc/modules/desktop_capture/desktop_capturer.h"
-#include "webrtc/modules/desktop_capture/desktop_frame.h"
-#include "webrtc/modules/desktop_capture/desktop_frame_generator.h"
-#include "webrtc/modules/desktop_capture/fake_desktop_capturer.h"
-#include "webrtc/test/gtest.h"
-
-namespace webrtc {
-
-class BlankDetectorDesktopCapturerWrapperTest
- : public testing::Test,
- public DesktopCapturer::Callback {
- public:
- BlankDetectorDesktopCapturerWrapperTest();
- ~BlankDetectorDesktopCapturerWrapperTest() override;
-
- protected:
- void PerfTest(DesktopCapturer* capturer);
-
- const int frame_width_ = 1024;
- const int frame_height_ = 768;
- std::unique_ptr<BlankDetectorDesktopCapturerWrapper> wrapper_;
- DesktopCapturer* capturer_ = nullptr;
- BlackWhiteDesktopFramePainter painter_;
- int num_frames_captured_ = 0;
- DesktopCapturer::Result last_result_ = DesktopCapturer::Result::SUCCESS;
- std::unique_ptr<DesktopFrame> last_frame_;
-
- private:
- // DesktopCapturer::Callback interface.
- void OnCaptureResult(DesktopCapturer::Result result,
- std::unique_ptr<DesktopFrame> frame) override;
-
- PainterDesktopFrameGenerator frame_generator_;
-};
-
-BlankDetectorDesktopCapturerWrapperTest::
-BlankDetectorDesktopCapturerWrapperTest() {
- frame_generator_.size()->set(frame_width_, frame_height_);
- frame_generator_.set_desktop_frame_painter(&painter_);
- std::unique_ptr<DesktopCapturer> capturer(new FakeDesktopCapturer());
- FakeDesktopCapturer* fake_capturer =
- static_cast<FakeDesktopCapturer*>(capturer.get());
- fake_capturer->set_frame_generator(&frame_generator_);
- capturer_ = fake_capturer;
- wrapper_.reset(new BlankDetectorDesktopCapturerWrapper(
- std::move(capturer), RgbaColor(0, 0, 0, 0)));
- wrapper_->Start(this);
-}
-
-BlankDetectorDesktopCapturerWrapperTest::
-~BlankDetectorDesktopCapturerWrapperTest() = default;
-
-void BlankDetectorDesktopCapturerWrapperTest::OnCaptureResult(
- DesktopCapturer::Result result,
- std::unique_ptr<DesktopFrame> frame) {
- last_result_ = result;
- last_frame_ = std::move(frame);
- num_frames_captured_++;
-}
-
-void BlankDetectorDesktopCapturerWrapperTest::PerfTest(
- DesktopCapturer* capturer) {
- for (int i = 0; i < 10000; i++) {
- capturer->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, i + 1);
- }
-}
-
-TEST_F(BlankDetectorDesktopCapturerWrapperTest, ShouldDetectBlankFrame) {
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 1);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::ERROR_TEMPORARY);
- ASSERT_FALSE(last_frame_);
-}
-
-TEST_F(BlankDetectorDesktopCapturerWrapperTest, ShouldPassBlankDetection) {
- painter_.updated_region()->AddRect(DesktopRect::MakeXYWH(0, 0, 100, 100));
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 1);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::SUCCESS);
- ASSERT_TRUE(last_frame_);
-
- painter_.updated_region()->AddRect(
- DesktopRect::MakeXYWH(frame_width_ - 100, frame_height_ - 100, 100, 100));
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 2);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::SUCCESS);
- ASSERT_TRUE(last_frame_);
-
- painter_.updated_region()->AddRect(
- DesktopRect::MakeXYWH(0, frame_height_ - 100, 100, 100));
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 3);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::SUCCESS);
- ASSERT_TRUE(last_frame_);
-
- painter_.updated_region()->AddRect(
- DesktopRect::MakeXYWH(frame_width_ - 100, 0, 100, 100));
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 4);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::SUCCESS);
- ASSERT_TRUE(last_frame_);
-
- painter_.updated_region()->AddRect(DesktopRect::MakeXYWH(
- (frame_width_ >> 1) - 50, (frame_height_ >> 1) - 50, 100, 100));
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 5);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::SUCCESS);
- ASSERT_TRUE(last_frame_);
-}
-
-TEST_F(BlankDetectorDesktopCapturerWrapperTest,
- ShouldNotCheckAfterANonBlankFrameReceived) {
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 1);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::ERROR_TEMPORARY);
- ASSERT_FALSE(last_frame_);
-
- painter_.updated_region()->AddRect(
- DesktopRect::MakeXYWH(frame_width_ - 100, 0, 100, 100));
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, 2);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::SUCCESS);
- ASSERT_TRUE(last_frame_);
-
- for (int i = 0; i < 100; i++) {
- wrapper_->CaptureFrame();
- ASSERT_EQ(num_frames_captured_, i + 3);
- ASSERT_EQ(last_result_, DesktopCapturer::Result::SUCCESS);
- ASSERT_TRUE(last_frame_);
- }
-}
-
-// There is no perceptible impact by using BlankDetectorDesktopCapturerWrapper.
-// i.e. less than 0.2ms per frame.
-// [ OK ] DISABLED_Performance (10210 ms)
-// [ OK ] DISABLED_PerformanceComparison (8791 ms)
-TEST_F(BlankDetectorDesktopCapturerWrapperTest, DISABLED_Performance) {
- PerfTest(wrapper_.get());
-}
-
-TEST_F(BlankDetectorDesktopCapturerWrapperTest,
- DISABLED_PerformanceComparison) {
- capturer_->Start(this);
- PerfTest(capturer_);
-}
-
-} // namespace webrtc
« no previous file with comments | « webrtc/modules/desktop_capture/blank_detector_desktop_capturer_wrapper.cc ('k') | webrtc/modules/desktop_capture/rgba_color.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698