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

Unified Diff: content/browser/renderer_host/media/media_stream_manager.cc

Issue 2291893002: Let Contraints Controll Mute/Unmute Audio Local Playback For Desktop Sharing (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rename To DisableLocalEcho Created 4 years, 3 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: content/browser/renderer_host/media/media_stream_manager.cc
diff --git a/content/browser/renderer_host/media/media_stream_manager.cc b/content/browser/renderer_host/media/media_stream_manager.cc
index 66f0eb7e001439028fb9bcbe06db2df69e40c2b2..3c966e20e67fb5af4010c2c9011a5b0513bdff24 100644
--- a/content/browser/renderer_host/media/media_stream_manager.cc
+++ b/content/browser/renderer_host/media/media_stream_manager.cc
@@ -258,7 +258,7 @@ class MediaStreamManager::DeviceRequest {
requesting_process_id, requesting_frame_id, page_request_id,
ConvertToGURL(security_origin), user_gesture, request_type,
requested_audio_device_id, requested_video_device_id, audio_type_,
- video_type_));
+ video_type_, controls.disable_local_echo));
}
// Creates a tab capture specific MediaStreamRequest object that is used by
@@ -271,7 +271,7 @@ class MediaStreamManager::DeviceRequest {
ui_request_.reset(new MediaStreamRequest(
target_render_process_id, target_render_frame_id, page_request_id,
ConvertToGURL(security_origin), user_gesture, request_type, "", "",
- audio_type_, video_type_));
+ audio_type_, video_type_, controls.disable_local_echo));
}
bool HasUIRequest() const { return ui_request_.get() != nullptr; }
@@ -1308,11 +1308,9 @@ bool MediaStreamManager::SetupTabCaptureRequest(DeviceRequest* request) {
}
// Customize controls for a WebContents based capture.
- int target_render_process_id = 0;
- int target_render_frame_id = 0;
-
- bool has_valid_device_id = WebContentsMediaCaptureId::ExtractTabCaptureTarget(
- capture_device_id, &target_render_process_id, &target_render_frame_id);
+ content::WebContentsMediaCaptureId web_id;
+ bool has_valid_device_id =
+ WebContentsMediaCaptureId::Parse(capture_device_id, &web_id);
if (!has_valid_device_id ||
(request->audio_type() != MEDIA_TAB_AUDIO_CAPTURE &&
request->audio_type() != MEDIA_NO_SERVICE) ||
@@ -1320,16 +1318,19 @@ bool MediaStreamManager::SetupTabCaptureRequest(DeviceRequest* request) {
request->video_type() != MEDIA_NO_SERVICE)) {
return false;
}
- request->tab_capture_device_id = capture_device_id;
+ web_id.disable_local_echo = request->controls.disable_local_echo;
+
+ request->tab_capture_device_id = web_id.ToString();
- request->CreateTabCaptureUIRequest(target_render_process_id,
- target_render_frame_id);
+ request->CreateTabCaptureUIRequest(web_id.render_process_id,
+ web_id.main_render_frame_id);
DVLOG(3) << "SetupTabCaptureRequest "
- << ", {capture_device_id = " << capture_device_id << "}"
- << ", {target_render_process_id = " << target_render_process_id
+ << ", {capture_device_id = " << capture_device_id << "}"
+ << ", {target_render_process_id = " << web_id.render_process_id
<< "}"
- << ", {target_render_frame_id = " << target_render_frame_id << "}";
+ << ", {target_render_frame_id = " << web_id.main_render_frame_id
+ << "}";
return true;
}

Powered by Google App Engine
This is Rietveld 408576698