New issue
Advanced search Search tips

Issue 900193 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug


Show other hotlists

Hotlists containing this issue:
Bugs


Sign in to add a comment

Chrome does not throw getUserMedia error when any other application is using camera on Windows

Reported by ke...@quavermusic.com, Oct 30

Issue description

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

Steps to reproduce the problem:
Using the following console code:
function sampleCode() {
  var mediaRecorder;

  navigator.mediaDevices.getUserMedia({
      audio: true,
      video: true
    })
    .then(function(stream) {
      window.stream = stream;
    })
    .then(function() {
      mediaRecorder = new MediaRecorder(window.stream, {
        "mimeType": "video/webm;codecs=vp8"
      });

    })
    .catch(function(err) {
      throw new Error(err.toString());
    });
}

1) Open Firefox, run the sampleCode method, accept the prompts
2) Open Chrome, run the sampleCode method, prompts show
3) Accept the prompts, no errors thrown even though the camera is in use by another application

What is the expected behavior?
Should get some error so the end user can be notified that the webcam is possibly in use by another application

What went wrong?
No errors were thrown, and if the steps are taken to preview the webcam feed, it results in a black screen

Did this work before? N/A 

Does this work in other browsers? Yes

Chrome version: 70.0.3538.77  Channel: stable
OS Version: 10.0
Flash Version: 

I think this is a regression, but it's difficult to test old versions of chrome (while accessing the webcam) with my setup.
 
Components: -Blink>WebRTC Blink>GetUserMedia
Owner: guidou@chromium.org
Status: Assigned (was: Unconfirmed)
Actually, to see the behavior above, I think the only code needed to put in console is this (not wrapped in a function):

navigator.mediaDevices.getUserMedia({
      audio: true,
      video: true
    })
    .then(function(stream) {
      window.stream = stream;
    })
    .then(function() {
      mediaRecorder = new MediaRecorder(window.stream, {
        "mimeType": "video/webm;codecs=vp8"
      });

    })
    .catch(function(err) {
      throw new Error(err.toString());
    });
I could reproduce on Windows on M69 and M70.
However, with Canary M72 I get NotReadableError, so this might have been fixed already.
On Linux I got NotReadableError on M70 and M72.

kevin@: Can you try with a recent Chrome Canary?
Ah, yes, I got the correct NotReadableError on canary 72.0.3596.0.

When do you suppose that will make its way back into Chrome stable?
This will make it to stable once 72 makes it to stable.
According to https://chromiumdash.appspot.com/schedule, that's January 29.

Status: Closed (was: Assigned)
Closing as per #4.
I just checked Chrome 71, currently in Beta and it works correctly, so it will be available sooner.
As far as I can tell, this issue is happening again...tested on current 70.0.3538.110 and canary 72.0.3624.0

Status: Assigned (was: Closed)
reopening as per #8. Will take a look later.

Sign in to add a comment