Update the host so that it provides the information necessary so that the client can have more control over which display is shown. It should provide a list of active displays (with geometry) and allow one (or all) to be selected.
Initial cl: https://chromium-review.googlesource.com/c/chromium/src/+/1352730
Webrtc change to add OnDisplayChange callback: https://webrtc-review.googlesource.com/c/src/+/114020/3
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/d1208c26b1cdb536fdec942207033711101d5d26 commit d1208c26b1cdb536fdec942207033711101d5d26 Author: Gary Kacmarcik <garykac@chromium.org> Date: Tue Dec 18 21:56:48 2018 Desktop capturer: Add OnDisplayChanged callback This adds support for a new DesktopCapturer::Callback method OnDisplayChanged that is sent at the start of a desktop capture session and whenever the display geometry changes. This cl adds the basic structure to call this api at the start of the capture session. Currently Windows only. A follow-up cl will add support to call this whenever the display geometry changes. Bug: webrtc:10122, chromium:915411 Change-Id: Ie7283be5992454180daab1a60f58a3b2efdfed56 Reviewed-on: https://webrtc-review.googlesource.com/c/114020 Commit-Queue: Gary Kacmarcik <garykac@chromium.org> Reviewed-by: Brave Yao <braveyao@webrtc.org> Cr-Commit-Position: refs/heads/master@{#26053} [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/blank_detector_desktop_capturer_wrapper.cc [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/blank_detector_desktop_capturer_wrapper.h [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/cropping_window_capturer.cc [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/cropping_window_capturer.h [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/desktop_capturer.h [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/desktop_capturer_differ_wrapper.cc [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/desktop_capturer_differ_wrapper.h [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/fallback_desktop_capturer_wrapper.cc [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/fallback_desktop_capturer_wrapper.h [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/win/screen_capture_utils.cc [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/win/screen_capture_utils.h [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/win/screen_capturer_win_directx.cc [modify] https://crrev.com/d1208c26b1cdb536fdec942207033711101d5d26/modules/desktop_capture/win/screen_capturer_win_gdi.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/45e536a9674fabe334db2fe58c1f5cd0b9757425 commit 45e536a9674fabe334db2fe58c1f5cd0b9757425 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Wed Dec 19 15:00:07 2018 Roll src/third_party/webrtc 503da9435084..aabac232b1a3 (6 commits) https://webrtc.googlesource.com/src.git/+log/503da9435084..aabac232b1a3 git log 503da9435084..aabac232b1a3 --date=short --no-merges --format='%ad %ae %s' 2018-12-19 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision 638370e07d..7ebbeeebe7 (617680:617780) 2018-12-19 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision eaca19bda5..638370e07d (617557:617680) 2018-12-19 steveanton@webrtc.org [Unified Plan] Support legacy endpoints that do not use a=mid 2018-12-18 garykac@chromium.org Desktop capturer: Add OnDisplayChanged callback 2018-12-18 steveanton@webrtc.org Use unique_ptr in webrtcsdp.cc 2018-12-18 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision 640d842b5c..eaca19bda5 (617449:617557) Created with: gclient setdep -r src/third_party/webrtc@aabac232b1a3 The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng BUG=chromium:None,chromium:None,chromium:915411,chromium:None,chromium:None TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: Ibd8821d63fca53cca649a152d7ae4b3701b0bf9c Reviewed-on: https://chromium-review.googlesource.com/c/1384147 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#617832} [modify] https://crrev.com/45e536a9674fabe334db2fe58c1f5cd0b9757425/DEPS
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/ef77ef35731249f58ffe25479f00a2795fd6854d commit ef77ef35731249f58ffe25479f00a2795fd6854d Author: Brave Yao <braveyao@webrtc.org> Date: Sat Dec 22 00:10:40 2018 Revert "Desktop capturer: Add OnDisplayChanged callback" This reverts commit d1208c26b1cdb536fdec942207033711101d5d26. Reason for revert: This cl causes the crashing issue as in chromium:916961 at starting desktop capture on Windows. Original change's description: > Desktop capturer: Add OnDisplayChanged callback > > This adds support for a new DesktopCapturer::Callback method > OnDisplayChanged that is sent at the start of a desktop capture > session and whenever the display geometry changes. > > This cl adds the basic structure to call this api at the start > of the capture session. Currently Windows only. > > A follow-up cl will add support to call this whenever the display > geometry changes. > > Bug: webrtc:10122, chromium:915411 > Change-Id: Ie7283be5992454180daab1a60f58a3b2efdfed56 > Reviewed-on: https://webrtc-review.googlesource.com/c/114020 > Commit-Queue: Gary Kacmarcik <garykac@chromium.org> > Reviewed-by: Brave Yao <braveyao@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#26053} TBR=jamiewalch@chromium.org,braveyao@webrtc.org,braveyao@chromium.org,garykac@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: webrtc:10122, chromium:915411, chromium:916961 Change-Id: Id0471e01bb90bb5accdf58262ae2b130cf343ecd Reviewed-on: https://webrtc-review.googlesource.com/c/115433 Commit-Queue: Brave Yao <braveyao@webrtc.org> Reviewed-by: Brave Yao <braveyao@webrtc.org> Cr-Commit-Position: refs/heads/master@{#26095} [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/blank_detector_desktop_capturer_wrapper.cc [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/blank_detector_desktop_capturer_wrapper.h [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/cropping_window_capturer.cc [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/cropping_window_capturer.h [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/desktop_capturer.h [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/desktop_capturer_differ_wrapper.cc [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/desktop_capturer_differ_wrapper.h [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/fallback_desktop_capturer_wrapper.cc [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/fallback_desktop_capturer_wrapper.h [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/win/screen_capture_utils.cc [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/win/screen_capture_utils.h [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/win/screen_capturer_win_directx.cc [modify] https://crrev.com/ef77ef35731249f58ffe25479f00a2795fd6854d/modules/desktop_capture/win/screen_capturer_win_gdi.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/40f202cb60a5a9b2427607e5c57b7accebfdc534 commit 40f202cb60a5a9b2427607e5c57b7accebfdc534 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Sat Dec 22 10:09:55 2018 Roll src/third_party/webrtc 06e88361c90c..35a9c6df4446 (3 commits) https://webrtc.googlesource.com/src.git/+log/06e88361c90c..35a9c6df4446 git log 06e88361c90c..35a9c6df4446 --date=short --no-merges --format='%ad %ae %s' 2018-12-22 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision f0099863fc..5f9e4ce628 (618597:618699) 2018-12-22 braveyao@webrtc.org Revert "Desktop capturer: Add OnDisplayChanged callback" 2018-12-21 amithi@webrtc.org Removing redundant argument for SSRCs from ctor of RtpVideoSender. Created with: gclient setdep -r src/third_party/webrtc@35a9c6df4446 The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng BUG=chromium:None,chromium:915411,chromium:916961,chromium:None TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: I1b84ee48d8a97b850475baeb739739c096070ea9 Reviewed-on: https://chromium-review.googlesource.com/c/1389659 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#618748} [modify] https://crrev.com/40f202cb60a5a9b2427607e5c57b7accebfdc534/DEPS
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0c56fda3fda6fedb4b23b8cb4a050590a9566412 commit 0c56fda3fda6fedb4b23b8cb4a050590a9566412 Author: Gary Kacmarcik <garykac@chromium.org> Date: Thu Jan 17 03:10:12 2019 [Chromoting] Add host support for SelectSource message from client. This message is piped through to WebRtc's SelectSource to select which display to show. Bug: 915411 Change-Id: I30f10c8f94b15ebcff1c0fc0981385cbb8b7bc74 Reviewed-on: https://chromium-review.googlesource.com/c/1410229 Commit-Queue: Gary Kacmarcik <garykac@chromium.org> Reviewed-by: Dominick Ng <dominickn@chromium.org> Reviewed-by: Joe Downing <joedow@chromium.org> Cr-Commit-Position: refs/heads/master@{#623544} [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/chromoting_messages.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/client_session.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/client_session.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/desktop_capturer_proxy.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/desktop_session_agent.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/desktop_session_agent.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/desktop_session_proxy.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/desktop_session_proxy.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/host/ipc_video_frame_capturer.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/proto/control.proto [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/proto/internal.proto [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/client_control_dispatcher.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/client_control_dispatcher.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/fake_connection_to_client.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/fake_connection_to_client.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/host_control_dispatcher.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/host_stub.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/protocol_mock_objects.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/video_frame_pump.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/video_frame_pump.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/video_stream.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/webrtc_video_stream.cc [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/protocol/webrtc_video_stream.h [modify] https://crrev.com/0c56fda3fda6fedb4b23b8cb4a050590a9566412/remoting/test/fake_connection_event_logger.cc
Comment 1 by garykac@chromium.org
, Dec 15