/*! * MediaElement.js * http://www.mediaelementjs.com/ * * Wrapper that mimics native HTML5 MediaElement (audio and video) * using a variety of technologies (pure JavaScript, Flash, iframe) * * Copyright 2010-2017, John Dyer (http://j.hn/) * License: MIT * */ !function n(l,o,s){function d(t,e){if(!o[t]){if(!l[t]){var i="function"==typeof require&&require;if(!e&&i)return i(t,!0);if(c)return c(t,!0);var a=new Error("Cannot find module '"+t+"'");throw a.code="MODULE_NOT_FOUND",a}var r=o[t]={exports:{}};l[t][0].call(r.exports,function(e){return d(l[t][1][e]||e)},r,r.exports,n,l,o,s)}return o[t].exports}for(var c="function"==typeof require&&require,e=0;e',n.addEventListener("click",function(){r.media.originalNode.webkitShowPlaybackTargetPicker()});var t=r.media.originalNode.getAttribute("x-webkit-airplay");t&&"allow"===t||r.media.originalNode.setAttribute("x-webkit-airplay","allow"),r.media.originalNode.addEventListener("webkitcurrentplaybacktargetiswirelesschanged",function(){var e=r.media.originalNode.webkitCurrentPlaybackTargetIsWireless?"Started":"Stopped",t=r.media.originalNode.webkitCurrentPlaybackTargetIsWireless?"active":"",i=n.querySelector("button"),a=mejs.Utils.createEvent("airplay"+e,r.media);r.media.dispatchEvent(a),"active"===t?mejs.Utils.addClass(i,"active"):mejs.Utils.removeClass(i,"active")}),r.media.originalNode.addEventListener("webkitplaybacktargetavailabilitychanged",function(e){"available"===e.availability&&r.addControlElement(n,"airplay")})}}})},{}]},{},[1]);/*! * MediaElement.js * http://www.mediaelementjs.com/ * * Wrapper that mimics native HTML5 MediaElement (audio and video) * using a variety of technologies (pure JavaScript, Flash, iframe) * * Copyright 2010-2017, John Dyer (http://j.hn/) * License: MIT * */ !function s(o,n,c){function l(t,e){if(!n[t]){if(!o[t]){var a="function"==typeof require&&require;if(!e&&a)return a(t,!0);if(d)return d(t,!0);var r=new Error("Cannot find module '"+t+"'");throw r.code="MODULE_NOT_FOUND",r}var i=n[t]={exports:{}};o[t][0].call(i.exports,function(e){return l(o[t][1][e]||e)},i,i.exports,s,o,n,c)}return n[t].exports}for(var d="function"==typeof require&&require,e=0;e',a.chromecastLayer.style.display="none",t.insertBefore(a.chromecastLayer,t.firstChild),s.className=i.options.classPrefix+"button "+i.options.classPrefix+"chromecast-button",s.innerHTML='',s.style.display="none",i.addControlElement(s,"chromecast"),i.castButton=s,a.chromecastLayer.innerHTML='
'+mejs.i18n.t("mejs.chromecast-legend")+'
',r.originalNode.getAttribute("poster")&&(a.chromecastLayer.innerHTML+='',a.chromecastLayer.querySelector("img").addEventListener("click",function(){if(a.options.clickToPlayPause){var e=i.container.querySelector("."+i.options.classPrefix+"overlay-button"),t=e.getAttribute("aria-pressed");a.paused?a.play():a.pause(),e.setAttribute("aria-pressed",!!t),a.container.focus()}})),window.__onGCastApiAvailable=function(e){var t=mejs.Utils.getTypeFromFile(r.originalNode.src).toLowerCase(),a=t&&-1<["application/x-mpegurl","application/vnd.apple.mpegurl","application/dash+xml","video/mp4","audio/mp3","audio/mp4"].indexOf(t);e&&a&&i._initializeCastPlayer()},window.cast){var n=i.controls.querySelector("."+i.options.classPrefix+"chromecast-button>button");return n&&"none"!==n.style.display&&(i.controls.querySelector("."+i.options.classPrefix+"chromecast-button").style.display=""),void i._initializeCastPlayer()}mejs.Utils.loadScript("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1")},cleanchromecast:function(e){if(window.cast){var t=cast.framework.CastContext.getInstance().getCurrentSession();t&&t.endSession(!0)}e.castButton&&e.castButton.remove(),e.chromecastLayer&&e.chromecastLayer.remove()},_initializeCastPlayer:function(){var e=this,t=void 0;switch(this.options.castPolicy){case"tab":t="TAB_AND_ORIGIN_SCOPED";break;case"page":t="PAGE_SCOPED";break;default:t="ORIGIN_SCOPED"}var a=cast.framework.CastContext.getInstance(),r=a.getCurrentSession();if(a.setOptions({receiverApplicationId:e.options.castAppID||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:chrome.cast.AutoJoinPolicy[t]}),a.addEventListener(cast.framework.CastContextEventType.CAST_STATE_CHANGED,e._checkCastButtonStatus.bind(e)),e.remotePlayer=new cast.framework.RemotePlayer,e.remotePlayerController=new cast.framework.RemotePlayerController(e.remotePlayer),e.remotePlayerController.addEventListener(cast.framework.RemotePlayerEventType.IS_CONNECTED_CHANGED,e._switchToCastPlayer.bind(this)),r){var i=a.getCastState(),s=e.controls.querySelector("."+e.options.classPrefix+"chromecast-button");s&&i===cast.framework.CastState.NO_DEVICES_AVAILABLE?s.style.display="none":s&&(e.chromecastLayer&&(e.chromecastLayer.style.display=i===cast.framework.CastState.CONNECTED?"":"none"),s.style.display=""),e._switchToCastPlayer()}},_checkCastButtonStatus:function(e){var t=this,a=t.controls.querySelector("."+t.options.classPrefix+"chromecast-button");a&&e.castState===cast.framework.CastState.NO_DEVICES_AVAILABLE?a.style.display="none":a&&(t.chromecastLayer&&(t.chromecastLayer.style.display=e.castState===cast.framework.CastState.CONNECTED?"":"none"),a.style.display=""),setTimeout(function(){t.setPlayerSize(t.width,t.height),t.setControlsSize()},0)},_switchToCastPlayer:function(){var e=this;if((e.proxy&&e.proxy.pause(),cast&&cast.framework)&&(cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.CAST_STATE_CHANGED,e._checkCastButtonStatus.bind(e)),e.remotePlayer.isConnected))return void e._setupCastPlayer();e._setDefaultPlayer()},_setupCastPlayer:function(){var r=this,s=cast.framework.CastContext.getInstance().getCurrentSession(),e=r.layers.querySelector("."+r.options.classPrefix+"chromecast-info");!0!==r.loadedChromecast&&(r.loadedChromecast=!0,r.proxy=new o.default(r.remotePlayer,r.remotePlayerController,r.media,r.options),e&&(e.querySelector(".device").innerText=s.getCastDevice().friendlyName),r.chromecastLayer&&(r.chromecastLayer.style.display=""),!0===r.options.castEnableTracks&&function(){var i=void 0!==r.captionsButton?r.captionsButton.querySelectorAll("input[type=radio]"):null;if(null!==i)for(var e=function(r,e){i[r].addEventListener("click",function(){var e=parseInt(i[r].id.replace(/^.*?track_(\d+)_.*$/,"$1")),t="none"===i[r].value?[]:[e],a=new chrome.cast.media.EditTracksInfoRequest(t);s.getMediaSession().editTracksInfo(a,function(){},function(e){console.error(e)})})},t=0,a=i.length;t=i.getDuration()&&(i.endedMedia=!0,setTimeout(function(){var e=mejs.Utils.createEvent("ended",i.media);i.media.dispatchEvent(e)},50))}),i.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED,function(){i.setMuted(i.player.isMuted)}),i.load(),i}return r(s,[{key:"getSrc",value:function(){return this.media.originalNode.src}},{key:"setSrc",value:function(e){this.media.originalNode.src="string"==typeof e?e:e[0].src,this.load()}},{key:"setCurrentTime",value:function(e){this.player.currentTime=e,this.controller.seek();var t=mejs.Utils.createEvent("timeupdate",this.media);this.media.dispatchEvent(t)}},{key:"getCurrentTime",value:function(){return this.player.currentTime}},{key:"getDuration",value:function(){return this.player.duration}},{key:"setVolume",value:function(e){this.player.volumeLevel=e,this.controller.setVolumeLevel();var t=mejs.Utils.createEvent("volumechange",this.media);this.media.dispatchEvent(t)}},{key:"getVolume",value:function(){return this.player.volumeLevel}},{key:"play",value:function(){if(this.player.isPaused){this.controller.playOrPause();var e=mejs.Utils.createEvent("play",this.media);this.media.dispatchEvent(e)}}},{key:"pause",value:function(){if(!this.player.isPaused){this.controller.playOrPause();var e=mejs.Utils.createEvent("pause",this.media);this.media.dispatchEvent(e)}}},{key:"load",value:function(){var a=this,e=this.media.originalNode.src,t=mejs.Utils.getTypeFromFile(e),r=new chrome.cast.media.MediaInfo(e,t),i=cast.framework.CastContext.getInstance().getCurrentSession();if(e!==window.location.href&&i){if(!0===a.enableTracks){for(var s=[],o=a.media.originalNode.children,n=1,c=0,l=o.length;c';else{var c=r.render(u);null!=c&&(n+='
'+c+"
")}}u.contextMenu.innerHTML=n;var s=u.contextMenu.offsetWidth,l=u.contextMenu.offsetHeight,a=e.pageX,d=e.pageY,f=document.documentElement,m=(window.pageXOffset||f.scrollLeft)-(f.clientLeft||0),x=(window.pageYOffset||f.scrollTop)-(f.clientTop||0),M=a+s>window.innerWidth+m?a-s:a,p=d+l>window.innerHeight+x?d-l:d;u.contextMenu.style.display="",u.contextMenu.style.left=M+"px",u.contextMenu.style.top=p+"px";for(var v=u.contextMenu.querySelectorAll("."+u.options.classPrefix+"contextmenu-item"),h=function(e,n){var t=v[e],o=parseInt(t.getAttribute("data-itemindex"),10),i=u.options.contextMenuItems[o];void 0!==i.show&&i.show(t,u),t.addEventListener("click",function(){void 0!==i.click&&i.click(u),u.contextMenu.style.display="none"})},y=0,j=v.length;y'+o.options.jumpForwardInterval+"",o.addControlElement(u,"jumpforward"),u.addEventListener("click",function(){var r=isNaN(n.duration)?o.options.jumpForwardInterval:n.duration;if(r){var t=n.currentTime===1/0?0:n.currentTime;n.setCurrentTime(Math.min(t+o.options.jumpForwardInterval,r)),this.querySelector("button").blur()}})}})},{}]},{},[1]);/*! * MediaElement.js * http://www.mediaelementjs.com/ * * Wrapper that mimics native HTML5 MediaElement (audio and video) * using a variety of technologies (pure JavaScript, Flash, iframe) * * Copyright 2010-2017, John Dyer (http://j.hn/) * License: MIT * */ !function s(o,a,c){function p(e,t){if(!a[e]){if(!o[e]){var i="function"==typeof require&&require;if(!t&&i)return i(e,!0);if(u)return u(e,!0);var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}var r=a[e]={exports:{}};o[e][0].call(r.exports,function(t){return p(o[e][1][t]||t)},r,r.exports,s,o,a,c)}return a[e].exports}for(var u="function"==typeof require&&require,t=0;t'+r.options.skipBackInterval+"",r.addControlElement(a,"skipback"),a.addEventListener("click",function(){if(isNaN(n.duration)?r.options.skipBackInterval:n.duration){var t=n.currentTime===1/0?0:n.currentTime;n.setCurrentTime(Math.max(t-r.options.skipBackInterval,0)),this.querySelector("button").blur()}})}})},{}]},{},[1]);