diff --git a/src/js/big-play-button.js b/src/js/big-play-button.js index f8f78eb3f..bf0f1842f 100644 --- a/src/js/big-play-button.js +++ b/src/js/big-play-button.js @@ -4,6 +4,7 @@ import Button from './button.js'; import Component from './component.js'; import {isPromise, silencePromise} from './utils/promise'; +import * as browser from './utils/browser.js'; /** * The initial play button that shows before the video has played. The hiding of the @@ -46,8 +47,16 @@ class BigPlayButton extends Button { // exit early if clicked via the mouse if (this.mouseused_ && event.clientX && event.clientY) { + const sourceIsEncrypted = this.player_.usingPlugin('eme') && + this.player_.eme.sessions && + this.player_.eme.sessions.length > 0; + silencePromise(playPromise); - if (this.player_.tech(true)) { + if (this.player_.tech(true) && + // We've observed a bug in IE and Edge when playing back DRM content where + // calling .focus() on the video element causes the video to go black, + // so we avoid it in that specific case + !((browser.IE_VERSION || browser.IS_EDGE) && sourceIsEncrypted)) { this.player_.tech(true).focus(); } return;