webrtc/modules/desktop_capture
henrika dfd8f570cd Adds a WebRTC.DesktopCapture.Win.WgcDirtyRegionSupport UMA for diagnostic purposes.
Checks if the DirtyRegionMode property is present in GraphicsCaptureSession and logs a boolean histogram with the result.
Detecting support for this property means that the WGC API supports
dirty regions and it can be utilized to improve the capture
performance and the existing zero-herz support.

See also https://issues.chromium.org/issues/347991512 for more details
on how to detect support for dirty regions in WGC.

Bug: chromium:40259177
Change-Id: Ia316c4ece54bd93cfef1fa23c199675c64143f76
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/362240
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43015}
2024-09-12 19:41:44 +00:00
..
linux Migrate absl::optional to std::optional 2024-09-02 12:16:47 +00:00
mac Refactor WebRTC self assignments in if clauses 2024-08-26 15:56:43 +00:00
win Adds a WebRTC.DesktopCapture.Win.WgcDirtyRegionSupport UMA for diagnostic purposes. 2024-09-12 19:41:44 +00:00
blank_detector_desktop_capturer_wrapper.cc webrtc: Blank desktop capturer regards empty frame as a blank frame 2022-07-13 18:03:07 +00:00
blank_detector_desktop_capturer_wrapper.h getDisplayMedia shows black window on Youtube PiP in Windows. 2022-03-16 22:06:04 +00:00
blank_detector_desktop_capturer_wrapper_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
BUILD.gn Migrate absl::optional to std::optional 2024-09-02 12:16:47 +00:00
cropped_desktop_frame.cc Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
cropped_desktop_frame.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
cropped_desktop_frame_unittest.cc Make CroppedWindowCapturer more resilient 2021-10-01 18:23:59 +00:00
cropping_window_capturer.cc Make CroppedWindowCapturer more resilient 2021-10-01 18:23:59 +00:00
cropping_window_capturer.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
cropping_window_capturer_win.cc Fix WebRTC.Screenshare.DesktopCapturerFullscreenDetector logging issue 2023-02-15 12:40:12 +00:00
delegated_source_list_controller.h Add Observer for delegated source list events 2022-09-02 00:24:58 +00:00
DEPS New macOS screen-capturer which uses ScreenCaptureKit. 2024-06-18 21:12:12 +00:00
desktop_and_cursor_composer.cc Adds debug logs which warns about cursor flickering 2023-05-10 09:06:19 +00:00
desktop_and_cursor_composer.h base_capturer_pipewire: Send frames via callback 2023-01-28 03:37:46 +00:00
desktop_and_cursor_composer_unittest.cc Fix clearing of mouse cursor if display uses a scale factor 2022-06-20 09:51:13 +00:00
desktop_capture_metadata.h Reland "Split out generic portal / pipewire code" 2022-11-14 20:11:43 +00:00
desktop_capture_metrics_helper.cc Removes usage of the Magnifier API on Windows 2023-04-13 20:27:24 +00:00
desktop_capture_metrics_helper.h Add telemetry to measure usage, perf, and errors in Desktop Capturers. 2021-04-13 23:30:52 +00:00
desktop_capture_options.cc Move rtc::make_ref_counted to api/ 2022-06-15 09:47:38 +00:00
desktop_capture_options.h Add desktop-capture option for ScreenCaptureKit on macOS. 2024-06-20 22:31:41 +00:00
desktop_capture_types.h Desktop capture: introduce capturer requesting both screen and windows 2023-07-12 18:59:24 +00:00
desktop_capturer.cc Desktop capture: introduce capturer requesting both screen and windows 2023-07-12 18:59:24 +00:00
desktop_capturer.h Desktop capture: introduce capturer requesting both screen and windows 2023-07-12 18:59:24 +00:00
desktop_capturer_differ_wrapper.cc wayland: Add a common interface for screencast and remote desktop portal 2022-03-31 15:30:07 +00:00
desktop_capturer_differ_wrapper.h wayland: Add a common interface for screencast and remote desktop portal 2022-03-31 15:30:07 +00:00
desktop_capturer_differ_wrapper_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
desktop_capturer_wrapper.cc
desktop_capturer_wrapper.h
desktop_frame.cc DXGI now consumes may_contain_cursor 2023-04-03 08:30:59 +00:00
desktop_frame.h Adds SetFrameDataToBlack() and FrameDataIsBlack() to DesktopFrame 2023-03-10 21:48:11 +00:00
desktop_frame_generator.cc Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
desktop_frame_generator.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
desktop_frame_rotation.cc Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED 2021-11-15 21:44:59 +00:00
desktop_frame_rotation.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
desktop_frame_rotation_unittest.cc
desktop_frame_unittest.cc Format /modules 2023-04-20 02:02:45 +00:00
desktop_frame_win.cc Handle SharedMemory allocation failures 2021-09-22 23:49:50 +00:00
desktop_frame_win.h Reland "Remove RTC_DISALLOW_COPY_AND_ASSIGN usages completely" 2022-01-27 12:55:44 +00:00
desktop_geometry.cc Include menus & dialogs in frames captured by WindowCapturerWin 2019-08-21 07:55:07 +00:00
desktop_geometry.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
desktop_geometry_unittest.cc
desktop_region.cc Use backticks not vertical bars to denote variables in comments 2021-08-10 10:40:03 +00:00
desktop_region.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
desktop_region_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
differ_block.cc Conditionally include differ_vector_sse2.h only when on x86 platforms. 2022-09-01 17:22:47 +00:00
differ_block.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
differ_block_unittest.cc
differ_vector_sse2.cc
differ_vector_sse2.h
fake_desktop_capturer.cc Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
fake_desktop_capturer.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
fallback_desktop_capturer_wrapper.cc Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
fallback_desktop_capturer_wrapper.h
fallback_desktop_capturer_wrapper_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
full_screen_application_handler.cc Format /modules 2023-04-20 02:02:45 +00:00
full_screen_application_handler.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
full_screen_window_detector.cc Format /modules 2023-04-20 02:02:45 +00:00
full_screen_window_detector.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
mock_desktop_capturer_callback.cc
mock_desktop_capturer_callback.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
mouse_cursor.cc Replace assert() with RTC_DCHECK(). 2021-07-09 07:49:43 +00:00
mouse_cursor.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
mouse_cursor_monitor.h mouse_cursor_monitor: Annotate a method with RTC_EXPORT 2023-01-18 23:36:03 +00:00
mouse_cursor_monitor_linux.cc Implement MouseCursorMonitorPipeWire to track cursor changes separately 2022-02-15 23:03:41 +00:00
mouse_cursor_monitor_mac.mm Initialize last_cursor_ 2021-12-09 12:56:11 +00:00
mouse_cursor_monitor_null.cc Format almost everything. 2019-07-08 13:45:15 +00:00
mouse_cursor_monitor_win.cc Remove all #include <assert.h>/<cassert> and usage in Obj-C code. 2021-07-22 14:00:26 +00:00
OWNERS Replace desktop_capture OWNERS 2021-11-09 23:02:32 +00:00
resolution_tracker.cc
resolution_tracker.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
rgba_color.cc Format almost everything. 2019-07-08 13:45:15 +00:00
rgba_color.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
rgba_color_unittest.cc
screen_capture_frame_queue.h Remove unused headers ScreenCaptureFrameQueue 2022-08-17 18:44:29 +00:00
screen_capturer_darwin.mm Add desktop-capture option for ScreenCaptureKit on macOS. 2024-06-20 22:31:41 +00:00
screen_capturer_fuchsia.cc [fuchsia][sysmem2] move screen capturer to sysmem2 2024-07-08 19:53:25 +00:00
screen_capturer_fuchsia.h [fuchsia][sysmem2] move screen capturer to sysmem2 2024-07-08 19:53:25 +00:00
screen_capturer_helper.cc Format /modules 2023-04-20 02:02:45 +00:00
screen_capturer_helper.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
screen_capturer_helper_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
screen_capturer_integration_test.cc Removes usage of the Magnifier API on Windows 2023-04-13 20:27:24 +00:00
screen_capturer_linux.cc Improve Capturer Selection on Wayland 2022-10-25 20:12:30 +00:00
screen_capturer_mac_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
screen_capturer_null.cc
screen_capturer_unittest.cc Removes usage of the Magnifier API on Windows 2023-04-13 20:27:24 +00:00
screen_capturer_win.cc Removes usage of the Magnifier API on Windows 2023-04-13 20:27:24 +00:00
screen_drawer.cc
screen_drawer.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
screen_drawer_linux.cc Reland "Linux capturers: organize X11 and Wayland implementations into separate folders" 2021-12-14 03:20:34 +00:00
screen_drawer_lock_posix.cc Adopt absl::string_view in modules/desktop_capture/ 2022-08-18 09:14:30 +00:00
screen_drawer_lock_posix.h Adopt absl::string_view in modules/desktop_capture/ 2022-08-18 09:14:30 +00:00
screen_drawer_mac.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
screen_drawer_unittest.cc Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
screen_drawer_win.cc Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
shared_desktop_frame.cc Prepare for deleting implicit conversion from raw pointer to scoped_refptr. 2022-01-18 08:22:15 +00:00
shared_desktop_frame.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
shared_memory.cc
shared_memory.h Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/ 2022-01-24 11:50:20 +00:00
test_utils.cc
test_utils.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
test_utils_unittest.cc Don't crash the test process when X11 isn't available. 2019-12-16 09:57:59 +00:00
window_capturer_linux.cc Improve Capturer Selection on Wayland 2022-10-25 20:12:30 +00:00
window_capturer_mac.mm Remove NSApplicationActivateIgnoringOtherApps 2023-09-24 13:55:12 +00:00
window_capturer_null.cc Reland "Remove RTC_DISALLOW_COPY_AND_ASSIGN usages completely" 2022-01-27 12:55:44 +00:00
window_capturer_unittest.cc Temporarily skip tests that consistently fail on Linux MSan. 2021-07-08 08:11:50 +00:00
window_capturer_win.cc Disallow set_allow_wgc_capturer_fallback call on Win10. 2022-04-15 23:41:16 +00:00
window_finder.cc
window_finder.h Use backticks not vertical bars to denote variables in comments for /modules/desktop_capture 2021-08-09 13:12:52 +00:00
window_finder_mac.h
window_finder_mac.mm Implement handling for MS PowerPoint Presentation Mode. 2019-12-03 19:17:24 +00:00
window_finder_unittest.cc Reland "Linux capturers: organize X11 and Wayland implementations into separate folders" 2021-12-14 03:20:34 +00:00
window_finder_win.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
window_finder_win.h