New issue
Advanced search Search tips

Issue 864268 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Sep 7
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

getUserMedia breaks WebXR but only on some devices

Reported by goo...@awe.media, Jul 16

Issue description

Steps to reproduce the problem:
1. Open Chrome Canary on Galaxy S7 (and possibly other devices on 8.0.0) and make sure #webxr and #webxr-hit-test flags are enabled
2. Open https://awe.media/static/webxr-gum/index-gum.html
3. Tap on the "Start Augmented Reality" button

What is the expected behavior?
You should see the camera stream in the background - but this never displays.

To compare you can try opening https://awe.media/static/webxr-gum/index.html which does work as expected.

If you try index-gum.html on a Pixel XL running 8.1.0 then that works too (as index.html does too).

What went wrong?
The index-gum.html page has minimal getUserMedia coded added which requests a camerastream from the local device.

On the S7 this seems to prevent WebXR from working.

On the Pixel XL it works ok (except see these 2 possibly related bugs https://bugs.chromium.org/p/chromium/issues/detail?id=862028 & https://bugs.chromium.org/p/chromium/issues/detail?id=862055).

Did this work before? Yes 69.0.3492.0 on Pixel XL (Android 8.1.0: Pixel XL Build/OPM4.171019.021.P1)

Does this work in other browsers? Yes

Chrome version: 69.0.3492.0 (Official Build) canary (32-bit)  Channel: canary
OS Version: Android 8.0.0: SM-G930F Build/R16NW
Flash Version: N/A

NOTE 1: S7 is running on Android 8.0.0: SM-G930F Build/R16NW.

NOTE 2: The code in the attached example index.html is simply the code from the Google WebXR Code Lab with the 3D model changed out. And the index-gum.html has very minimal getUserMedia code added to this to show this isolated issue.

NOTE 3: The camerastream you see in the background when using index.html is provided by WebXR and runs through the gl.FRAMEBUFFER pipeline. This is not the getUserMedia provided stream which is simply attached to a hidden video element.
 
webxr-gum.zip
2.8 MB Download
Since the other two bugs you reported were related to the video capture service, this one might be as well. Unfortunately my test phone does not support ARCore, so I'll have to get a different device for testing.

Could you do me a favor and try launching Chrome Canary with command-line flag --disable-features=MojoVideoCapture and let me know if that fixes the issue? This flag disables the video capture service.
Sorry we don't have any suitable devices that are rooted at the moment.

Thanks for fixing up the other bugs so quickly 8)

Shout if there's anything else we can do to help.
Labels: Needs-triage-Mobile
Components: -Blink>WebRTC Blink>GetUserMedia>Webcam
Cc: jbanavatu@chromium.org
Labels: -Type-Bug-Regression M-69 Triaged-Mobile Target-69 FoundIn-69 Type-Bug
Status: Untriaged (was: Unconfirmed)
Tested the issue on Android and able to reproduce this issue.

Steps followed:
1.Enabled #webxr and #webxr-hit-test flags 
2.Launch chrome and navigate to https://awe.media/static/webxr-gum/index-gum.html
3.Tap on the "Start Augmented Reality" button
4.Observed that pop up appears requesting to access camera.

Chrome versions tested:
60.0.3072.0, 67.0.3396.87(Stable), 69.0.3496.0(Canary)

OS:
Android 8.1.0

Android Devices:
Nexus 6P

This seems to be a Non-Regression issue as same behavior is seen since M-60. Leaving the issue as Untriaged for further input's on this issue.

Please navigate to below link for log's --
go/chrome-androidlogs/864268
 
Thanks
AFAIK #webxr-hit-test and the ARCore features of #webxr (as opposed to the VR features) were only introduced in 69.
Tested in 70.0.3498.0 and lgtm now we've added environmentIntegration:true to requestSession()

Not sure which update fixed it but thanks! 8)
Status: WontFix (was: Untriaged)

Sign in to add a comment