diff --git a/extensions/amp-story/1.0/media-pool.js b/extensions/amp-story/1.0/media-pool.js index eb3b556d554a..f5c35ab1b845 100644 --- a/extensions/amp-story/1.0/media-pool.js +++ b/extensions/amp-story/1.0/media-pool.js @@ -850,6 +850,11 @@ export class MediaPool { return Promise.resolve(); } + // When a video is muted, reset its volume to the default value of 1. + if (mediaType == MediaType.VIDEO) { + domMediaEl.volume = 1; + } + return this.enqueueMediaElementTask_(poolMediaEl, new MuteTask()); } @@ -870,6 +875,16 @@ export class MediaPool { return Promise.resolve(); } + if (mediaType == MediaType.VIDEO) { + const ampVideoEl = domMediaEl.parentElement; + if (ampVideoEl) { + const volume = ampVideoEl.getAttribute('volume'); + if (volume) { + domMediaEl.volume = parseFloat(volume); + } + } + } + return this.enqueueMediaElementTask_(poolMediaEl, new UnmuteTask()); } diff --git a/extensions/amp-story/1.0/test/validator-amp-story-video-error.html b/extensions/amp-story/1.0/test/validator-amp-story-video-error.html index 1feb36b34405..a13b0cf6980c 100644 --- a/extensions/amp-story/1.0/test/validator-amp-story-video-error.html +++ b/extensions/amp-story/1.0/test/validator-amp-story-video-error.html @@ -32,6 +32,40 @@ + + + + + + Your browser doesn't support HTML5 video. + + + + + + + + + + + + Your browser doesn't support HTML5 video. + + + + + +
Your browser doesn't support HTML5 video.