Index: webrtc/modules/desktop_capture/screen_capturer_win.cc |
diff --git a/webrtc/modules/desktop_capture/screen_capturer_win.cc b/webrtc/modules/desktop_capture/screen_capturer_win.cc |
index 1d05961affa9e2879894aa4b60e88522d407bc5b..00a512bdc7f72c1a46eed50df7d7f93eb0a05614 100644 |
--- a/webrtc/modules/desktop_capture/screen_capturer_win.cc |
+++ b/webrtc/modules/desktop_capture/screen_capturer_win.cc |
@@ -42,4 +42,22 @@ ScreenCapturer* ScreenCapturer::Create(const DesktopCaptureOptions& options) { |
return capturer.release(); |
} |
+// static |
+std::unique_ptr<DesktopCapturer> DesktopCapturer::CreateRawScreenCapturer( |
+ const DesktopCaptureOptions& options) { |
+ std::unique_ptr<DesktopCapturer> capturer; |
+ if (options.allow_directx_capturer() && |
+ ScreenCapturerWinDirectx::IsSupported()) { |
+ capturer.reset(new ScreenCapturerWinDirectx(options)); |
+ } else { |
+ capturer.reset(new ScreenCapturerWinGdi(options)); |
+ } |
+ |
+ if (options.allow_use_magnification_api()) { |
+ capturer.reset(new ScreenCapturerWinMagnifier(std::move(capturer))); |
+ } |
+ |
+ return capturer; |
+} |
+ |
} // namespace webrtc |