New issue
Advanced search Search tips

Issue 716070 link

Starred by 6 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

Local Cameras do not show on Huawei Mate 9 (Android 7.0.0) when connected to WebRTC in Pexip or using Pexip Connect app (based on Chromium)

Reported by chris.sw...@pexip.com, Apr 27 2017

Issue description

Steps to reproduce the problem:
1. Connect the device to WebRTC running on Pexip, or open the native Pexip Connect app (based on Chromium), and view settings

What is the expected behavior?
You should see a live view of the selected camera

What went wrong?
You only see a placeholder. 

Did this work before? N/A 

Chrome version: 56.0.2924.87  Channel: n/a
OS Version: 7.0.0
Flash Version: 

The first attached file shows a screenshot of the Pexip Connect app. The second screenshot show the Firefox browser on the same phone working correctly. Chrome does not work, although I have no screenshot of that. 

A bug was raised in WebRTC at https://bugs.chromium.org/p/webrtc/issues/detail?id=7521, however, they have asked that this be raise here under OS>Kernel>Camera.
 
Screenshot_20170330-094548.png
113 KB View Download
Screenshot_20170331-FirefoxOK.png
733 KB View Download

Comment 1 by rbyers@chromium.org, Apr 27 2017

Components: Blink>WebRTC
Cc: chfremer@chromium.org
Owner: braveyao@chromium.org
Status: Assigned (was: Unconfirmed)
braveyao@ can you help with triage?
chris@, I'm a little confused about the reproduction method.

- "Connect the device to WebRTC running on Pexip", do you mean you open a url(which offers WebRTC) with Chrome on Mate9?
- "native Pexip Connect app (based on Chromium)", how does your native app be based on chromium, but not native WebRTC? What's the set of API do you use for WebRTC functionality, JavaScript or C++?

Anyway, is the problem specified to Mate 9?
I don't have a Mate 9 in my hand. Could you please help to collect some info first?
When you open https://appr.tc on Mate9 with Chrome, can you get the local preview? If you can't, could you please help to collect the logcat of the test?
@braveyao, I am awaiting feedback from our customer as to what happens with https://appr.tc. WRT Pexip, you are free to test the Pexip Connect App from the Play store - you do NOT need to connect to anything, simply open up the Settings page which allows you to configure various client elements such as which camera you would like to use. The same is true if you browse to a Pexip based site (for example htpps://pexipdemo.com), and click the setting button. 

I am not one of the devs in Pexip (rather support), but will get the information you require with regard to how the WebApp and Connect client interact with the WebRTC APIs

Typo - https://pexipdemo.com
@braveyao - The API's use to interact with WevRTC use JavaScript 
OK. Know how to reproduce steps now. Need to get a Mate9 to test with then.
@braveyao, were you abel to make any progress on this?
Not yet. I checked our inventory and they don't have Mate9.

Comment 10 by xima...@gmail.com, Jun 8 2017

same behavior on my Huawai P10. Firefox is working, chrome not (only black screen) -> tested with https://appr.tc/

find attached the output of chrome://gpu
chrome_gpu_info.txt
6.2 KB View Download
As a matter of fact, we don't have any Huawei phone. So I wonder if anyone can help on some debugging to address this problem?

First of all, can anyone try Duo on Mate9/P10 to see if it could work while Chrome can't. (The native app and Chrome access the camera with a little different way.)

Comment 12 by xima...@gmail.com, Jun 14 2017

Duo is preinstalled and working on my Huawei P10.
Thanks for the info. Then we need to know what's wrong in Chrome. Need the chrome log to begin with:

1. on a Linux or Mac machine, start logcat in terminal: adb logcat, and clear all the previous logs.
2. on cell phone, open appr.tc and join a room. There should be no camera capture.
3. copy all the logs to me.

If possible, it's better to test with Canary

Comment 14 by xima...@gmail.com, Jun 14 2017

Installed Chrome Canary.. appr.tc is working there ;)

Find attached the logs made with chrome stable.
chrome_log2.log
967 KB View Download
Thanks for the log and good to know that Canary works! Wondering whether Chrome Beta/Dev can work or not.

The log doesn't show any direct error. At least we can see that camera has been successfully allocated, started and released as expect. The possible errors may be as below:
06-14 21:41:29.962   521 14490 I AntiBanding: antiBandingCalcTheoryInfo() exit, theory_banding_number is 0 !!!
06-14 21:41:29.987   523   644 W Watchdog: Timeout at int hw::Camera3Device::wait4RoomLocked()(2278): instance[0xe8edb1c0] tid[14477]. 
06-14 21:41:29.987   523   644 W ImagingSystem: invalid invoke, virtual TRetCode hw::CWatchdog::CCheckPointBase::cancelCheckTimeLocked()(3987): instance[0xe8eafbc0]. 
06-14 21:41:30.026   521 14495 W         : virtual void hw::COutMetaSplit::ConvertFaceDetectionInfo(face_pos_md_t *, face_info_md_t *)(227), face pose invalid(0).
06-14 21:41:30.028   521 14491 E ImagingGraphicStream: void hw::CImagingGraphicStream::bufferDone(hw::IBuffer *): the buffer(0x764b60ef50) type is wrong!. instance[0x7619947a00] 
06-14 21:41:30.028   521 14493 W IppFrameImpl: [HWA_CAM3]getDepthAddr, have no depth buf
06-14 21:41:30.031   521 14493 I SmartAE : SmartAE_HISI,mFrameCnt:173,mISPStableCnt:3,mSmartAECnt:5,mStableFrameBegin:171,cameraID:1,isSaliencyOrChOver:0,SAE_EVComp:0,mSetEVComp:0,T:14,ISO:1161,isAEStable:1,aeLock:0,mIsSetEVComp:1,mYTotalMean:109,isDiffYMean:0,mStable:1,mImageStable:1,msnapShotMode:1,faceNum:1,mTouched:0,faceTouchEVComp:1291,isDualHDR:0,isHDR:0,hdrLevel:0,HDRFrameNum:0,HDREV:0 0 0 0,NL_EVComLevel:0,mCurrentScene:10
06-14 21:41:30.032   521 14493 I contrastCal: [smartAf]contrast_cal_process: giNumFlagDoAF = 173, focus_stage = 0
06-14 21:41:30.032   521 14490 I AntiBanding: antiBandingCalcTheoryInfo() exit, theory_banding_number is 0 !!!
06-14 21:41:30.074   521 14472 E ImagingServer: void hw::CCfgPipeline::onHALSuspend(): No HAL requests for a long time!

Which may imply that the camera service on Huawei phone failed to generate captured frames. But not quite sure. Maybe get a log of successful case with Canary on the same device to have a comparison is good idea.

Maybe not quite related: I see that there are quite a few modifications to video capture on Android recently, which are about to set all kinds of camera configurations. This problem might be introduced(if this is a regression issue) and fixed(at least Canary works) within all the changes, as a side effect on Huawei devices.
I'm having the same issue with one of our test tablets.

Chrome will not access the camera (tested with appr.tc) firefox works, canary works, chrome beta works

Android OS: 6.0.1; 9015B Build/MMB29M
Chrome 58.0.3029.83
Hardware: Alcatel Pop7 LTE

This worked before updating chrome (not sure exactly what version it had before)

I was going to update a logcat from carany but now everytime I go back to appr.tc it auto blocks access to the camera and mic (only in canary, stable still allows access but shows no picture)

stable.txt
3.1 MB View Download
Dev Works and I have a logcat of that (Same equipment)
dev.txt
8.4 MB View Download
Got it ... if I run from the app store on first install canary allows camera access

Here is the log cat of that working 
canary.txt
9.0 MB View Download
Thanks anthony.selby@ for your logs. It seems your problem may be fixed by  issue718823 . I suppose you can verify by holding your device in landscape position and testing with Chrome 58. I guess the video should work then.

If landscape mode works, then it implies that Huawei device will fail to portrait frame(i.e. 480x640) request, while other devices still can output some sort of frame sizes.


Turned the device on while holding it landscape launched chrome stable 58 navigated to appr.tc still just a black screen :-/ 

Sorry ... appears this is not the bug you are looking for 
Thanks anthony.selby@ for the testing.
No, the  issue718823  is not related after reading it more carefully. It's hard to tell the root cause without debugging into details.

For now, since Chrome M59 is already the Stable and all later versions work, we can still consider this issue has been 'fixed'.

chris.swinney@ and ximatra@, could you please also help to verify?

Comment 22 by xima...@gmail.com, Jun 19 2017

Working:
Chrome Canary (61.0.3135.0) and Dev (61.0.3129.3).

Not Working:
Chrome Beta (60.0.3112.33) and Chrome Stable (58.0.3029.83)
Status: Fixed (was: Assigned)
The tablet in #16 runs with old Camera API, while P10/Mate9 runs with Camera2 API. So the 'fix' would be different. It's pity that we can't nail down the root cause to see if the 'fix' is solid or not.

Anyway, please always test with Canary or Dev. Then the problem will be spotted out and fixed in an earlier stage before it hits Stable.

I think it's OK to close this issue for now. Please reopen it if there is regression in the future.
Cc: braveyao@chromium.org
 Issue 736585  has been merged into this issue.
Braveyao@ 

This issue still exists for me on Chrome 61.0.3163.98 (stable), How would you like to me processed (new ticket ?)
How about other chrome versions? Beta/Dev/Canary?

Yes you can file a new ticket. But since we don't have any Huawei phone for testing, there is less we can do at present.

Sign in to add a comment