Issue metadata
Sign in to add a comment
|
WebRTC call from browser generates Aw, Snap! page
Reported by
moy...@gmail.com,
Feb 7 2018
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Steps to reproduce the problem: 1. make video call from Chrome to S6 Samsung device 2. Device accepts call as video 3. Chrome crashes What is the expected behavior? Video call established and video is visible What went wrong? Previous versions of Chrome had no issue. This version produces Aw, Snap! page. Cannot see any issues in JavaScript. Did this work before? Yes 63 Does this work in other browsers? Yes Chrome version: 64.0.3282.140 Channel: stable OS Version: 10.0 Flash Version: Attached Chrome trace log. Thanks.
,
Feb 8 2018
,
Feb 8 2018
Thanks for filing the issue! Checked the issue on reported chrome version 64.0.3282.140 and on the latest canary 66.0.3343.0 using Windows 10 Desktop and Surface Pro. We are able to connect the call through WebRTC and video is proper. @Reporter: Could you please mention whether the issue is specific to mobile device and please let us know whether Chrome in Windows is crashing or on Mobile. Your Feedback helps us to triage the issue in a better way. Thanks!
,
Feb 22 2018
moysha@: Is it possible to send any crash ID? They are available in chrome://crashes
,
Feb 23 2018
Answer for comment 3: the crash is on Chrome for windows 10. I was just upgraded to Version 64.0.3282.167 (Official Build) (64-bit). It took four calls to get it to crash. Answer for comment 4: here's a crash id: Uploaded Crash Report ID 8b922958d2c886e2 (Local Crash ID: 16bf9389-bf1d-4089-906d-f33c0f6bbaad) Crash report captured on Thursday, February 22, 2018 at 8:46:50 PM, uploaded on Thursday, February 22, 2018 at 8:46:51 PM Contact me, I can help you recreate the problem.
,
Feb 23 2018
,
Feb 23 2018
Seems related to injectable video codecs. Anders, you seem to have been working on this, can you take a look?
,
Feb 23 2018
holmer@ - can you point to what makes you think this is related to injectable video codecs (injectable SW codecs I guess?). I looked at the crash report and the log attached in this thread but couldn't find anything relevant.
,
Feb 23 2018
,
Feb 23 2018
Ok, now I see. If we hit that check it means that we are trying to create two identical decoders. Can we get the log for the SDP negotiation? Would we ever want to support creating e.g. two identical VP8 decoders? We could probably easily support that if we change the map to a multimap, but I would like to understand the use case first. Or is this bug easy to reproduce?
,
Feb 24 2018
You have been busy. I just tried version 64.0.3282.186, so far it hasn't crashed yet. I'm attaching a file with offer/answer SDP's, per your request. Thank you for your hard work. I will keep testing and let you know the results.
,
Feb 26 2018
I just realized that we have not mentioned the case that we change profile ID in SDP before setting local description. We had issues with Samsung devices and in version 63 changed profile ID to 42e01f. That worked well since 63 had only one codec section with one profile ID. In 64 I noticed that it has 4 codec sections with 4 different profile IDs. So, our logic changed all profile IDs to the hard coded value. Set local description was successful, but after setting remote description we got this crash. If we do not change profile IDs, then no crash. But Samsung devices have green video screen.
,
Feb 26 2018
,
Feb 26 2018
,
Feb 27 2018
Ok, that's why it's crashing - it's assuming there are no duplicate codecs. We should fix that. For now, can you make sure you don't create duplicate codecs when you modify the profile IDs? That should solve your problem.
,
Feb 27 2018
We did it already. However, this change causes green video screen on all Samsung devices. S6/S7/S8. How do we solve this?
,
Feb 28 2018
The green video is a separate issue from the crash reported here. I sounds like it's a problem with the HW encoder on Android encoding H264 high profile. Can you file a separate bug for the green video issue and assign it to braveyao@ who works with the Android HW encoder? I looked at the SDP a bit more and the SDP answer which you say is generated by Macbook pro, Electron client (Chromium 59), returns profile-level-id=42C00C, which is H264 Constrained Baseline, but it's using the payload 100 which in the offer (from Windows 10, Chrome Version 64) is H264 Baseline. What kind of code is generating this answer? It doesn't seem to be correct. Maybe that's related to the problems you are seeing.
,
Feb 28 2018
I will file a new bug for green screen. Thanks.
,
Feb 28 2018
I submitted new issue for green screen: Issue 817403. But i do not see how to assign it to someone.
,
Mar 5 2018
Here is SDP exchange between Win10 Chrome 64.0.3282.186 and Samsung S6+ Edge. S6 is native video over LTE. The same issue is applicable for Samsung S 7/8. Please note that only test 4 is successful when i force profile to 42e01f. 1) Test1.log Chrome 64 makes a video call to S6. No profile changes. Video OK on Chrome, green screen on S6 2) Test2.log Chrome 64 makes a video call to S6. With profile changes. Chrome crashes. 3) Test3.log S6 makes a video call to Chrome 64. No profile changes. Video on Chrome OK, S6 green screen 4) Test4.log S6 makes a video call to Chrome 64. With profile changes. Video OK on both sides.
,
Mar 6 2018
It's crashing in 2) because of the duplicate codecs. The reason it works in 4) is because there is only one H264 codec. Anders will land a fix for the crash soon, but that will only help newer version of Chrome. If you want a short term workaround, you can change your SDP filtering so you remove all H264 codecs except one. The issue with the green screen is tracked in the other bug. The difference between 1) and 4) is that H264 Baseline profile is negotiated in 1) while H264 Constrained Baseline Profile is negotiated in 4). I added this information to the other bug.
,
Mar 6 2018
Thanks for your help. I will try your suggestion for sort term workaround.
,
Mar 6 2018
Do you have Chrome version that will have this crash fix?
,
Mar 7 2018
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/7dbb701076f33e459cd3bc89a49bfec43b359545 commit 7dbb701076f33e459cd3bc89a49bfec43b359545 Author: Anders Carlsson <andersc@webrtc.org> Date: Wed Mar 07 09:57:16 2018 Fix crash when setting duplicate receive codecs. Instead of crashing, log a warning. Bug: chromium:810173 Change-Id: I7e43889fdab429fcb231657f5770b0ff26f34a8f Reviewed-on: https://webrtc-review.googlesource.com/59020 Reviewed-by: Magnus Jedvert <magjed@webrtc.org> Commit-Queue: Anders Carlsson <andersc@webrtc.org> Cr-Commit-Position: refs/heads/master@{#22322} [modify] https://crrev.com/7dbb701076f33e459cd3bc89a49bfec43b359545/media/engine/webrtcvideoengine.cc
,
Mar 7 2018
The fix just landed and will go into Chrome 67. I'm going to mark this issue as fixed since the green screen issue is tracked in a separate bug. It would be nice if you can verify that the fix is working. You can download Chrome Canary on Mac and try it out.
,
Mar 7 2018
Thanks. Will do.
,
Mar 7 2018
Do you have Chrome Canary for Win10 available with this fix?
,
Mar 8 2018
Yes, you can download it from here: https://www.google.com/chrome/browser/canary.html |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by moy...@gmail.com
, Feb 7 201818.0 KB
18.0 KB View Download