New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 751815 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug
Team-Security-UX



Sign in to add a comment

poor support for navigator.getUserMedia

Reported by cal...@gmail.com, Aug 2 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36

Steps to reproduce the problem:
1. Run following JavaScript code over HTTPS
2. Chrome will prompt you, permission popup with 'Allow' and 'Block' options
3. you select allow or block

Problem 1 - Once you select allow or block, chrome will not prompt you permission popup again. Even if you call navigator.getUserMedia({video: true}, handleVideo, videoError) again or reload the page.

problem 2 - Sometime by default chrome picks up 'Block' option without even pointing the permission popup.

navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia || navigator.oGetUserMedia;

if (navigator.getUserMedia) {
    navigator.getUserMedia({video: true}, handleVideo, videoError);
}

function handleVideo(stream) {}

function videoError(e) {}

What is the expected behavior?
Chrome browser should prompt the user option to allow and block the webcam access every time  navigator.getUserMedia is called. 

What went wrong?
user wants to change the previous selection?
OR
What if user by mistake selects one option and now whats to selects another option? 

There is no way to fix this. 

Did this work before? N/A 

Chrome version: 59.0.3071.115  Channel: n/a
OS Version: 6.1 (Windows 7, Windows Server 2008 R2)
Flash Version:
 
Components: -Blink Blink>Media
Status: Untriaged (was: Unconfirmed)
Not sure if this is actually UX-related, but sorting into the Blink>Media label for now.
Components: -Blink>Media UI>Browser>Permissions>Prompts Blink>WebRTC
Labels: Needs-Feedback
Problem 1 is intended behavior. This is a feature, not a bug. Chrome prompts the first time a new domain requests permission to access the camera. Permissions per domain can be managed via content settings (chrome://settings/content/camera).

Problem 2 sounds like a bug. Can you provide reproduction instructions?


Cc: guidou@chromium.org raymes@chromium.org

Comment 5 by cal...@gmail.com, Aug 10 2017

Problem 2 - steps to reproduce

Steps
1 - Start the webcam by running the code above
2 - when the webcam is running clear your cache
3 - refresh the page which is running the webcam
4 - you will get the error, web cam is not able to connect.


Comment 6 by cal...@gmail.com, Aug 10 2017

1cb103ed-5424-4856-923c-cfe1187214b5.png
13.8 KB View Download

Comment 7 by guidou@chromium.org, Aug 11 2017

Components: -Blink>WebRTC Blink>GetUserMedia

Comment 8 by guidou@chromium.org, Aug 11 2017

caleem@: I cannot reproduce any error following the steps in #5.
I used https://webrtc.github.io/samples/src/content/getusermedia/gum/ to access the camera.

Can you be more provide more details?
In particular, wow do you "clear your cache"?
Also, what version of Chrome are you using?
Owner: dominickn@chromium.org
Status: Assigned (was: Untriaged)
Assign to UI>Browser>Permissions>Prompts triage owner.
dominickn@, feel free to re-assign if you see fit.
Status: WontFix (was: Assigned)
As mentioned in c#3, Chrome persists your decision to allow or block access to mediastream devices on a per-origin basis.

Until there is a concrete reproduction case for problem 2, I'm going to WontFix this. Please reopen if you can provide us a concrete reproduction case, thanks!

Comment 11 by cal...@gmail.com, Aug 21 2017

Thank you for your response, 

I see in your github example that you are using  'navigator.mediaDevices.getUserMedia'.

where as I am facing this problem use I use 'Navigator.getUserMedia()'

Comment 12 by cal...@gmail.com, Aug 31 2017

any update on this issue ?
Nothing to update.

As we have already said. The reported problem 1 is not a bug, but a feature.
There are not specific repro instructions for problem 2 and we have been unable to reproduce it in any way, so it is not actionable. 
As for comment #11, the various versions of getUserMedia run the same code and the only difference is that one returns the result via a promise and the other one via callbacks.

Perhaps you were experiencing blocked permissions without getting a permission prompt on an http site. In that case getUserMedia will not work because it only works on secure origins. This is intended and not a bug.

Feel free to reopen or to file a new bug if you have specific repro instructions.

Sign in to add a comment