New issue
Advanced search Search tips
Starred by 6 users

Issue metadata

Status: Fixed
Owner:
Closed: Feb 15
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 326740



Sign in to add a comment
link

Issue 896333: Add audio capture capability to getDisplayMedia()

Reported by emir...@chromium.org, Oct 17 Project Member

Issue description

See https://github.com/w3c/mediacapture-screen-share/issues/61. Screen Capture API spec allows audio capture. Although other browser are not planning to implement, we want to expose the current audio capture capabilities given by extensions so that getDisplayMedia() is on par.
 

Comment 1 by jesperth...@gmail.com, Nov 15

As far as I'm aware, system audio capturing only works on Windows right now. Sharing tab audio works on every platform though.

Comment 3 by bugdroid, Jan 28

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e0cf90a85e6a054c9c360c0c57e0fd9e6d589270

commit e0cf90a85e6a054c9c360c0c57e0fd9e6d589270
Author: Emircan Uysaler <emircan@chromium.org>
Date: Mon Jan 28 21:17:26 2019

Add MEDIA_DISPLAY_AUDIO_CAPTURE enum for getDisplayMedia with audio

This CL adds a new enum to handle audio capture requests originating from
getDisplayMedia(). Also adds the corresponding mojom enum for passing it between
renderer and browser processes.

See https://chromium-review.googlesource.com/c/chromium/src/+/1432752 for a
playground CL where audio capture is hooked through.

Bug:  896333 
Change-Id: I197995a255961f4523a360629efc239539a1fc34
Reviewed-on: https://chromium-review.googlesource.com/c/1437520
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Weiyong Yao <braveyao@chromium.org>
Commit-Queue: Emircan Uysaler <emircan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#626734}

Comment 4 by bugdroid, Jan 30

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2ca96c0b2dfd701769021803ba4c053c5710c8bb

commit 2ca96c0b2dfd701769021803ba4c053c5710c8bb
Author: Emircan Uysaler <emircan@chromium.org>
Date: Wed Jan 30 06:43:16 2019

Allow audio requests in DisplayMediaAccessHandler

This CL adds cases to allow for MEDIA_DISPLAY_AUDIO_CAPTURE requests, which are
expected to originate from getDisplayMedia({audio:true}) calls. In picker UI,
we reuse the existing extensions based picker implementation and offer audio
share option as a radio button. See design doc in the below bug for more
details.

Bug:  896333 
Change-Id: Ibde7c011db6806cad52c126f8855b2c3dff5ee74
Reviewed-on: https://chromium-review.googlesource.com/c/1440905
Commit-Queue: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#627334}
[modify] https://crrev.com/2ca96c0b2dfd701769021803ba4c053c5710c8bb/chrome/browser/media/capture_access_handler_base.cc
[modify] https://crrev.com/2ca96c0b2dfd701769021803ba4c053c5710c8bb/chrome/browser/media/webrtc/display_media_access_handler.cc
[modify] https://crrev.com/2ca96c0b2dfd701769021803ba4c053c5710c8bb/chrome/browser/media/webrtc/display_media_access_handler_unittest.cc

Comment 5 by bugdroid, Feb 1

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c0ba18e18a3970b72a53f329e0a02da44427fd9c

commit c0ba18e18a3970b72a53f329e0a02da44427fd9c
Author: Emircan Uysaler <emircan@chromium.org>
Date: Fri Feb 01 17:11:24 2019

Allow audio requests in getDisplayMedia() calls from blink

This CL adds cases to allow for getDisplayMedia({video:true, audio:true}) calls.
- Remove the earlier checks in blink that adds exceptions for audio requests.
- Reject audio-only requests.
- Set up UserMediaRequest appropriately and allow for settings in
MediaStreamManager.
- Add a FakeUI case to create a dummy AudioDevice.
- Add unit tests and layout tests.

Bug:  896333 
Change-Id: I627c8ce84d752528430c4d46c0c5f472b39706d1
Reviewed-on: https://chromium-review.googlesource.com/c/1444353
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Emircan Uysaler <emircan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#628366}
[modify] https://crrev.com/c0ba18e18a3970b72a53f329e0a02da44427fd9c/content/browser/renderer_host/media/media_stream_manager.cc
[modify] https://crrev.com/c0ba18e18a3970b72a53f329e0a02da44427fd9c/content/browser/renderer_host/media/media_stream_manager_unittest.cc
[modify] https://crrev.com/c0ba18e18a3970b72a53f329e0a02da44427fd9c/content/renderer/media/stream/user_media_processor.cc
[modify] https://crrev.com/c0ba18e18a3970b72a53f329e0a02da44427fd9c/content/renderer/media/stream/user_media_processor.h
[modify] https://crrev.com/c0ba18e18a3970b72a53f329e0a02da44427fd9c/third_party/blink/renderer/modules/mediastream/user_media_request.cc
[modify] https://crrev.com/c0ba18e18a3970b72a53f329e0a02da44427fd9c/third_party/blink/web_tests/external/wpt/screen-capture/getdisplaymedia.https-expected.txt
[modify] https://crrev.com/c0ba18e18a3970b72a53f329e0a02da44427fd9c/third_party/blink/web_tests/external/wpt/screen-capture/getdisplaymedia.https.html

Comment 6 by bugdroid, Feb 6

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bc55c4cc2a5ccb5556ee60e6f9607b4927ca10e3

commit bc55c4cc2a5ccb5556ee60e6f9607b4927ca10e3
Author: Emircan Uysaler <emircan@chromium.org>
Date: Wed Feb 06 23:29:35 2019

Add audio capture to WebRtcGetDisplayMediaBrowserTest

This CL adds more tests to WebRtcGetDisplayMediaBrowserTest covering audio cases.

Bug:  896333 
Change-Id: I6124237ceb43d18c3e3ecf9f2adc59b86952c19a
Reviewed-on: https://chromium-review.googlesource.com/c/1450853
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Henrik Boström <hbos@chromium.org>
Commit-Queue: Emircan Uysaler <emircan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#629778}
[modify] https://crrev.com/bc55c4cc2a5ccb5556ee60e6f9607b4927ca10e3/chrome/browser/media/webrtc/webrtc_getdisplaymedia_browsertest.cc
[modify] https://crrev.com/bc55c4cc2a5ccb5556ee60e6f9607b4927ca10e3/chrome/test/data/webrtc/webrtc_getdisplaymedia_test.html
[modify] https://crrev.com/bc55c4cc2a5ccb5556ee60e6f9607b4927ca10e3/content/browser/renderer_host/media/media_stream_manager.cc

Comment 7 by bugdroid, Feb 11

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8

commit a97583c9b4117f3bb559b218f6eb2ae065dd5fe8
Author: Emircan Uysaler <emircan@chromium.org>
Date: Mon Feb 11 21:58:44 2019

Do not allow audio to be approved by default for getDisplayMedia()

This CL changed picker UI behavior for getDisplayMedia() such that audio checkbox
is not ticked by default. This is a restriction defined in the spec.

Bug:  896333 
Change-Id: I63709e895818a0cca6264cdb76528537828bc372
Reviewed-on: https://chromium-review.googlesource.com/c/1450854
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Weiyong Yao <braveyao@chromium.org>
Commit-Queue: Emircan Uysaler <emircan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#630946}
[modify] https://crrev.com/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8/chrome/browser/media/webrtc/desktop_media_picker.h
[modify] https://crrev.com/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8/chrome/browser/media/webrtc/display_media_access_handler.cc
[modify] https://crrev.com/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8/chrome/browser/ui/cocoa/media_picker/desktop_media_picker_cocoa.mm
[modify] https://crrev.com/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8/chrome/browser/ui/cocoa/media_picker/desktop_media_picker_controller.h
[modify] https://crrev.com/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8/chrome/browser/ui/cocoa/media_picker/desktop_media_picker_controller.mm
[modify] https://crrev.com/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8/chrome/browser/ui/cocoa/media_picker/desktop_media_picker_controller_unittest.mm
[modify] https://crrev.com/a97583c9b4117f3bb559b218f6eb2ae065dd5fe8/chrome/browser/ui/views/desktop_capture/desktop_media_picker_views.cc

Comment 8 by emir...@chromium.org, Feb 15 (3 days ago)

Status: Fixed (was: Started)
Marking it as fixed. Feel free to open bugs for possible issues that comes up in tests.

Sign in to add a comment