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

Side by Side Diff: chrome/browser/media/media_capture_devices_dispatcher.cc

Issue 649543002: Replacing MEDIA_LOOPBACK_AUDIO_CAPTURE with MEDIA_DESKTOP_AUDIO_CAPTURE (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase the patchset Created 6 years, 1 month 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 unified diff | Download patch
« no previous file with comments | « no previous file | content/browser/renderer_host/media/media_stream_manager.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/media/media_capture_devices_dispatcher.h" 5 #include "chrome/browser/media/media_capture_devices_dispatcher.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "base/prefs/pref_service.h" 10 #include "base/prefs/pref_service.h"
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
164 const base::string16& registered_extension_name) { 164 const base::string16& registered_extension_name) {
165 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 165 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
166 scoped_ptr<content::MediaStreamUI> ui; 166 scoped_ptr<content::MediaStreamUI> ui;
167 167
168 // Add selected desktop source to the list. 168 // Add selected desktop source to the list.
169 devices->push_back(content::MediaStreamDevice( 169 devices->push_back(content::MediaStreamDevice(
170 content::MEDIA_DESKTOP_VIDEO_CAPTURE, media_id.ToString(), "Screen")); 170 content::MEDIA_DESKTOP_VIDEO_CAPTURE, media_id.ToString(), "Screen"));
171 if (capture_audio) { 171 if (capture_audio) {
172 // Use the special loopback device ID for system audio capture. 172 // Use the special loopback device ID for system audio capture.
173 devices->push_back(content::MediaStreamDevice( 173 devices->push_back(content::MediaStreamDevice(
174 content::MEDIA_LOOPBACK_AUDIO_CAPTURE, 174 content::MEDIA_DESKTOP_AUDIO_CAPTURE,
175 media::AudioManagerBase::kLoopbackInputDeviceId, "System Audio")); 175 media::AudioManagerBase::kLoopbackInputDeviceId, "System Audio"));
176 } 176 }
177 177
178 // If required, register to display the notification for stream capture. 178 // If required, register to display the notification for stream capture.
179 if (display_notification) { 179 if (display_notification) {
180 if (application_title == registered_extension_name) { 180 if (application_title == registered_extension_name) {
181 ui = ScreenCaptureNotificationUI::Create(l10n_util::GetStringFUTF16( 181 ui = ScreenCaptureNotificationUI::Create(l10n_util::GetStringFUTF16(
182 IDS_MEDIA_SCREEN_CAPTURE_NOTIFICATION_TEXT, 182 IDS_MEDIA_SCREEN_CAPTURE_NOTIFICATION_TEXT,
183 application_title)); 183 application_title));
184 } else { 184 } else {
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 } 321 }
322 322
323 void MediaCaptureDevicesDispatcher::ProcessMediaAccessRequest( 323 void MediaCaptureDevicesDispatcher::ProcessMediaAccessRequest(
324 content::WebContents* web_contents, 324 content::WebContents* web_contents,
325 const content::MediaStreamRequest& request, 325 const content::MediaStreamRequest& request,
326 const content::MediaResponseCallback& callback, 326 const content::MediaResponseCallback& callback,
327 const extensions::Extension* extension) { 327 const extensions::Extension* extension) {
328 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 328 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
329 329
330 if (request.video_type == content::MEDIA_DESKTOP_VIDEO_CAPTURE || 330 if (request.video_type == content::MEDIA_DESKTOP_VIDEO_CAPTURE ||
331 request.audio_type == content::MEDIA_LOOPBACK_AUDIO_CAPTURE) { 331 request.audio_type == content::MEDIA_DESKTOP_AUDIO_CAPTURE) {
332 ProcessDesktopCaptureAccessRequest( 332 ProcessDesktopCaptureAccessRequest(
333 web_contents, request, callback, extension); 333 web_contents, request, callback, extension);
334 } else if (request.video_type == content::MEDIA_TAB_VIDEO_CAPTURE || 334 } else if (request.video_type == content::MEDIA_TAB_VIDEO_CAPTURE ||
335 request.audio_type == content::MEDIA_TAB_AUDIO_CAPTURE) { 335 request.audio_type == content::MEDIA_TAB_AUDIO_CAPTURE) {
336 ProcessTabCaptureAccessRequest( 336 ProcessTabCaptureAccessRequest(
337 web_contents, request, callback, extension); 337 web_contents, request, callback, extension);
338 } else { 338 } else {
339 #if defined(ENABLE_EXTENSIONS) 339 #if defined(ENABLE_EXTENSIONS)
340 bool is_whitelisted = 340 bool is_whitelisted =
341 extension && (extension->is_platform_app() || 341 extension && (extension->is_platform_app() ||
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
517 517
518 bool loopback_audio_supported = false; 518 bool loopback_audio_supported = false;
519 #if defined(USE_CRAS) || defined(OS_WIN) 519 #if defined(USE_CRAS) || defined(OS_WIN)
520 // Currently loopback audio capture is supported only on Windows and ChromeOS. 520 // Currently loopback audio capture is supported only on Windows and ChromeOS.
521 loopback_audio_supported = true; 521 loopback_audio_supported = true;
522 #endif 522 #endif
523 523
524 // Audio is only supported for screen capture streams. 524 // Audio is only supported for screen capture streams.
525 bool capture_audio = 525 bool capture_audio =
526 (media_id.type == content::DesktopMediaID::TYPE_SCREEN && 526 (media_id.type == content::DesktopMediaID::TYPE_SCREEN &&
527 request.audio_type == content::MEDIA_LOOPBACK_AUDIO_CAPTURE && 527 request.audio_type == content::MEDIA_DESKTOP_AUDIO_CAPTURE &&
528 loopback_audio_supported); 528 loopback_audio_supported);
529 529
530 ui = GetDevicesForDesktopCapture( 530 ui = GetDevicesForDesktopCapture(
531 &devices, media_id, capture_audio, true, 531 &devices, media_id, capture_audio, true,
532 GetApplicationTitle(web_contents, extension), 532 GetApplicationTitle(web_contents, extension),
533 base::UTF8ToUTF16(original_extension_name)); 533 base::UTF8ToUTF16(original_extension_name));
534 534
535 callback.Run(devices, content::MEDIA_DEVICE_OK, ui.Pass()); 535 callback.Run(devices, content::MEDIA_DEVICE_OK, ui.Pass());
536 } 536 }
537 537
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
627 #if defined(OS_CHROMEOS) 627 #if defined(OS_CHROMEOS)
628 screen_id = content::DesktopMediaID::RegisterAuraWindow( 628 screen_id = content::DesktopMediaID::RegisterAuraWindow(
629 ash::Shell::GetInstance()->GetPrimaryRootWindow()); 629 ash::Shell::GetInstance()->GetPrimaryRootWindow());
630 #else // defined(OS_CHROMEOS) 630 #else // defined(OS_CHROMEOS)
631 screen_id = 631 screen_id =
632 content::DesktopMediaID(content::DesktopMediaID::TYPE_SCREEN, 632 content::DesktopMediaID(content::DesktopMediaID::TYPE_SCREEN,
633 webrtc::kFullDesktopScreenId); 633 webrtc::kFullDesktopScreenId);
634 #endif // !defined(OS_CHROMEOS) 634 #endif // !defined(OS_CHROMEOS)
635 635
636 bool capture_audio = 636 bool capture_audio =
637 (request.audio_type == content::MEDIA_LOOPBACK_AUDIO_CAPTURE && 637 (request.audio_type == content::MEDIA_DESKTOP_AUDIO_CAPTURE &&
638 loopback_audio_supported); 638 loopback_audio_supported);
639 639
640 // Unless we're being invoked from a component extension, register to 640 // Unless we're being invoked from a component extension, register to
641 // display the notification for stream capture. 641 // display the notification for stream capture.
642 bool display_notification = !component_extension; 642 bool display_notification = !component_extension;
643 643
644 ui = GetDevicesForDesktopCapture(&devices, screen_id, capture_audio, 644 ui = GetDevicesForDesktopCapture(&devices, screen_id, capture_audio,
645 display_notification, application_title, 645 display_notification, application_title,
646 application_title); 646 application_title);
647 DCHECK(!devices.empty()); 647 DCHECK(!devices.empty());
(...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after
1105 1105
1106 void MediaCaptureDevicesDispatcher::SetTestAudioCaptureDevices( 1106 void MediaCaptureDevicesDispatcher::SetTestAudioCaptureDevices(
1107 const MediaStreamDevices& devices) { 1107 const MediaStreamDevices& devices) {
1108 test_audio_devices_ = devices; 1108 test_audio_devices_ = devices;
1109 } 1109 }
1110 1110
1111 void MediaCaptureDevicesDispatcher::SetTestVideoCaptureDevices( 1111 void MediaCaptureDevicesDispatcher::SetTestVideoCaptureDevices(
1112 const MediaStreamDevices& devices) { 1112 const MediaStreamDevices& devices) {
1113 test_video_devices_ = devices; 1113 test_video_devices_ = devices;
1114 } 1114 }
OLDNEW
« no previous file with comments | « no previous file | content/browser/renderer_host/media/media_stream_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698