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

Issue 637999 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Aug 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Regression: Screensharing is not working in windows picker and desktop capture stand alone extensions

Project Member Reported by srcv@chromium.org, Aug 15 2016

Issue description

Version:54.0.2826.0 
OS:Chrome 8708.0.0 dev

What steps will reproduce the problem?
1. Install the latest extension for http://test.webrtc.org/manual/peer2peer/ in Chrome M54 Dev
2. Turn on "Desktop Share with tab source" flag in chrome://flags
3. Go to https://test.webrtc.org/manual/peer2peer/, and click on 'Screen Capture' button
4. Select any window from the three available tabs :Your Entire screen, Application Window, Chrome Tab and click on "Share"

Expected result:
1. Selected window should be captured and visible in the "Local Preview" of the extension
2. "Screensharing Extension is sharing your screen with test.webrtc.org" dialog box should be displayed in lower right hand side of the test page


Actual result:
1. Selected window is not visible in the "Local Preview" of the extension
2. "Screensharing Extension is sharing your screen and audio with test.webrtc.org" dialog box is displayed in lower right hand side of the test page
3. Javascript logs displays this error :
"main.js:1120 Uncaught Error: [object MediaStream] MediaStreamTrack.onmute event has fired, no frames to the track.(…)printHandler_ @ main.js:1120error_ @ main.js:1107stream.getVideoTracks.onmute @ main.js:866"

Note:
1. This issue is not seen for the first time when "Your Entire screen" is selected for screensharing. Sharing any further windows will not be visible in "Local Preview" of the extenstion
2. This issue is also seen in the stand alone desktop capture extension
3. Reference bug : https://bugs.chromium.org/p/chromium/issues/detail?id=635944


 
Screensharing_not_working_in_windows_picker_Extension_M54_CrOS 2016-08-15 .png
111 KB View Download
Status: Assigned (was: Untriaged)
Setting to Assigned status since an owner is assigned.


Platform? 

I cannot reproduce on my veyron_speedy.

P.S. The "Uncaught Error: ..." is expected, as the "stop" is not initiated from the website. It is in some sense as if we unplug the camera.

Comment 4 by srcv@chromium.org, Aug 16 2016

I was able to reproduce this issue on veyron-minnie with M54 54.0.2826.0 /  8708.0.0 dev

Note that screensharing works as expected in windows picker extension, when any screen is selected for screensharing for the first time (as described in the video mentioned in comment#1)

Comment 5 by srcv@chromium.org, Aug 18 2016

Summary: Regression: Screensharing is not working in windows picker and desktop capture stand alone extensions (was: Screensharing is not working in windows picker and desktop capture stand alone extensions)
Update:

Only after sharing the full screen with audio, then the following sharing will fail.

After sharing anything without audio, the following sharing will be fine.

So this issue is related to the system audio share.
Update:

If you do not click "Stop", but just start the next sharing, it looks fine.

Sounds interesting, I think the issue might be that we did not handle stop event for system audio stream correctly.
Update for my own reference:

Commenting line [1] will hide this issue. This means something goes wrong in that Stop call, and it seems this Stop call leads to the failure of device_task_runner_ in AudioInputDeviceManager.
Update:
Yes, the device thread hangs, and thus not responsive to future tasks.
The statement that hangs device thread is [2], which is a ChromeOS api.
Thus I think the problem is underlying in ChromeOS.

I've verified that on old version R54-8560, there isn't such issue.
I'll verify for the most recent chromeOS(R54-8721) to see whether the issue is still there or not. In case yes, we need to report to chromeOS team to take care of it.

[2] https://cs.chromium.org/chromium/src/media/audio/cras/cras_input.cc?type=cs&q=cras_input&sq=package:chromium&l=125
The problem persists in R54-8721.
niklase@: do you know how we can notify chromeOS people about this issue?
Cc: qiangchen@chromium.org
Owner: dgreid@chromium.org
Dylan, can you take a look or reassign to the right person?
Components: -Blink>GetUserMedia>Desktop OS>Kernel>Audio
Status: Started (was: Assigned)
Cc: srcv@chromium.org
Status: Fixed (was: Started)
srcv@: Can you verify the fix made by dgreid@?
Project Member

Comment 17 by bugdroid1@chromium.org, Aug 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/adhd/+/b762efeec1bff7f3927a920d49a3722c9783f30a

commit b762efeec1bff7f3927a920d49a3722c9783f30a
Author: Dylan Reid <dgreid@chromium.org>
Date: Mon Aug 22 21:19:33 2016

CRAS: client - Add missing rdlock unlock

Missed one early-return case when the lock was added.

BUG= chromium:637999 
TEST=screen cast as per mentioned bug.

Change-Id: I2a3670736fc6699a4ce30ac103dd816ba8d1e78a
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/374038
Reviewed-by: Ben Zhang <benzh@chromium.org>

[modify] https://crrev.com/b762efeec1bff7f3927a920d49a3722c9783f30a/cras/src/libcras/cras_client.c

Comment 18 by srcv@chromium.org, Aug 26 2016

Status: Verified (was: Fixed)
Verified that screensharing is working in windows picker and stand alone extensions on chrome devices with M54 54.0.2837.0 / 8743.0.0 dev 

https://pantheon.corp.google.com/storage/browser/chromiumos-test-logs/bugfiles/cr/637999/

Sign in to add a comment