Issue metadata
Sign in to add a comment
|
Unmute video not allowed inside cross domain iframe (AMP Ad)
Reported by
ronan.dr...@teads.tv,
May 23 2018
|
||||||||||||||||||||||
Issue descriptionSteps to reproduce the problem: 1. go to https://amp.teads.tv 2. scroll to the video ad 3. click on the unmute button What is the expected behavior? the video sound should be unmuted, as the user explicitly request for it (we listen for a click on the unmute button and trigger a video.volume = 1) What went wrong? the browser block the unmuting, pause the video, and trigger a warn in the console "Unmuting failed and the element was paused instead because the user didn't interact with the document before" Did this work before? Yes 65 Does this work in other browsers? Yes Chrome version: 66.0.3359.158 Channel: stable OS Version: Oreo API 27 Flash Version: Is this because the button and the video are not in the same frame ? Or because the Ad is in a cross domain iframe ? 1) the first level is a cross domain iframe (AMP Ad) 2) then we have the sound button 3) and near the sound button we have an other iframe (friendly -> not cross domain) which is containing the video node Thanks !
,
May 24 2018
,
May 24 2018
Tested the issue using #66.0.3359.158 on Android Pixel 2; 8.1.0 and could not reproduce the issue as per the steps mentioned below. Steps: 1. Launched Browser 2. Navigated to https://amp.teads.tv 3. Scrolled to the video ad 4. Click on the unmute button 5. Able to hear the audio and video is also playing @Reporter: Could you please find the above observations and help us with details of your device and attach a screencast as well for further triaging of the issue. Thanks!!
,
May 24 2018
Sure ! you can find attached two screencast, one on chrome 65 which is "working", and one on chrome 66 which is not (video go on pause when unmuting) Thanks for your help !
,
May 24 2018
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 25 2018
Tested the issue in Android and able to reproduce the issue. Steps Followed: 1. Launch Chrome. 2. Navigate go to https://amp.teads.tv 3. scroll to the video ad 4. click on the unmute button 5. Observed video is getting paused Chrome versions tested: 66.0.3359.158(Stable), 68.0.3439.0(Canary) OS: Android 6.0.1 Android Devices: Nexus 5 Using the per-revision bisect providing the bisect results, Good Build - 66.0.3327.0 Bad Build - 66.0.3328.0 MANUAL CHANGELOG URL: https://chromium.googlesource.com/chromium/src/+log/66.0.3327.0..66.0.3328.0?pretty=fuller&n=10000 Unable to provide tool bisect info as builds are not invoking using bisect script. Requesting someone from dev team to take a look at this issue Please navigate to below link for log's and video-- go/chrome-androidlogs/845817 Thanks!
,
May 25 2018
Andrew, do you why the script was not invoking, any recent changes?
,
May 25 2018
What errors are you encountering with the script? Please email me with command line used and errors you saw. I do see there are available builds to bisect.
,
May 25 2018
Device: Samsung Galaxy S9 / 8.0.0 1. Navigte to https://amp.teads.tv 2. Scroll down and play the add video. 3. Unmute the audio button. Results: Video will pause. Bisect Info: Good build:65.0.3325.229 Bad Build: 66.0.3327.0 Regression range: https://chromium.googlesource.com/chromium/src/+log/65.0.3325.229..66.0.3327.0?pretty=fuller&n=10000 Could not find culprit CL Audio mute/unmute button in M67 and M68 is not available.
,
May 25 2018
The bisect in #9 seems to be incorrect. Ramine, was 66.0.3326.0 a good chrome version? Was trying to compare with the one in #6. Sandeep, can you please attach the error log.
,
May 25 2018
66.0.3326.0 has no apk's to install.
,
May 25 2018
The closest patch from #6 is: https://chromium.googlesource.com/chromium/src/+/e2b494cbfd02c3e97176c9e53e5b620c8f8eb42e Jinsuk, would you mind confirming.Adding an RB label since this is a recent regression.
,
May 25 2018
This is a workaround to video pause when the audio button is pressed. 1. Visit https://amp.teads.tv 2. scroll down and press the audio button. (video should pause as described in step 4 comment #6) 3. Play the advertising in full screen. 4. Press the back soft key on phone Results: Advertising video will Play when audio button toggles to pause/start.
,
May 25 2018
As per #1, mine might not be the culprit if this also happens on desktop, since my change only affects Android.
,
May 27 2018
If the mute/unmute button is in the main frame and the ad is in a x-origin iframe, clicking the button will not be enough to allow the ad to unmute. You will have to add `allow=autoplay` on the iframe in order to delegate autoplay privileges. See this article for more info: https://developers.google.com/web/updates/2017/09/autoplay-policy-changes
,
May 27 2018
,
May 29 2018
Hi @mlamouri ! Thanks for your time Sorry but as described in my issue, the video is in a friendly iframe (not cross domain) just near the button (cf attached screenshot) the entire ad (video + components like sound button) are IN the cross domain iframe (AMP Ad component) but then, not iframe cross domain anymore inside this one. Only friendly iframe Thanks for your help !
,
May 30 2018
New Bisect Info: Good build: 65.0.3305.0 Bad Build: 65.0.3306.0 Regression range: https://chromium.googlesource.com/chromium/src/+log/65.0.3305.0..65.0.3306.0?pretty=fuller&n=10000 Good CL: 526240 Bad CL: 526241 Culprit CL: https://chromium.googlesource.com/chromium/src/+/12c615ca3716162f32341c597d581b3a6d6b7f95
,
May 31 2018
This is a website's bug. The flow isn't compatible with the autoplay policy. The website has changed and I can't get to see the "unmute" button anymore so I can't advise more about how to fix this.
,
May 31 2018
Hi @mlamouri ! Could you please elaborate "The flow isn't compatible with the autoplay policy"? so we can take action on our side if needed. Also, the website didn't changed (the ad appears after a small delay, please don't scroll down during the delay 2/3sec) Thanks for your help
,
May 31 2018
There are more information about the autoplay policy here: https://developers.google.com/web/updates/2017/09/autoplay-policy-changes I tried again and the only ad I get doesn't have an unmute button. If all the iframes you have have allow=autoplay and a gesture, unmuting should work. If you could isolate the issue to a test page, I would be happy to help you further.
,
Jun 1 2018
Hi all, @nourdine, looking at https://github.com/ampproject/amphtml/issues/15730 and investigating, internally your video and unmute are in different frames. See attached picture. That being said, I still don't understand why `allow=autoplay` would be needed for manual unmute. There are three layers of iframe here and non have `allow=autoplay` yet the video is autoplaying muted just fine. A explicit user action to unmute should always work, no? Isn't unmute = playing a video (regardless of autoplay status)?
,
Jun 1 2018
"If the mute/unmute button is in the main frame and the ad is in a x-origin iframe, clicking the button will not be enough to allow the ad to unmute." Is that a new change? user-intent used to carry over postMessages and per regular policy, unmuted play is allowed if tied to a user action. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by ronan.dr...@teads.tv
, May 23 2018