Proyectos de Subversion Moodle

Rev

Autoría | Ultima modificación | Ver Log |

/**
 * videojs-ogvjs
 * @version 1.0.0
 * @copyright 2023 Huong Nguyen <huongnv13@gmail.com>
 * @license MIT
 */
define("media_videojs/videojs-ogvjs-lazy",["media_videojs/video-lazy","./local/ogv/ogv"],(function(videojs,ogv){const OGVCompat=ogv.OGVCompat,OGVLoader=ogv.OGVLoader,OGVPlayer=ogv.OGVPlayer,Tech=videojs.getComponent("Tech"),getDeviceOS=()=>{const ua=navigator.userAgent;return/android/i.test(ua)?"Android":/iPad|iPhone|iPod/.test(ua)?"iPhoneOS":"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1?"iPadOS":"Other"};class OgvJS extends Tech{constructor(options,ready){super(options,ready),this.el_.src=options.source.src,OgvJS.setIfAvailable(this.el_,"autoplay",options.autoplay),OgvJS.setIfAvailable(this.el_,"loop",options.loop),OgvJS.setIfAvailable(this.el_,"poster",options.poster),OgvJS.setIfAvailable(this.el_,"preload",options.preload),this.on("loadedmetadata",(()=>{if("iPhoneOS"===getDeviceOS()){const canvas=this.el_.getElementsByTagName("canvas")[0];canvas.style.removeProperty("width"),canvas.style.removeProperty("margin")}})),this.triggerReady()}createEl(){const options=this.options_;if(!options.base)throw new Error("Please specify the base for the ogv.js library");OGVLoader.base=options.base;const el=new OGVPlayer(options);return el.className+=" vjs-tech",options.tag=el,el}play(){this.el_.play()}playbackRate(){return this.el_.playbackRate||1}setPlaybackRate(val){this.el_.hasOwnProperty("playbackRate")&&(this.el_.playbackRate=val)}played(){return this.el_.played}pause(){this.el_.pause()}paused(){return this.el_.paused}currentTime(){return this.el_.currentTime}setCurrentTime(seconds){try{this.el_.currentTime=seconds}catch(e){videojs.log(e,"Media is not ready. (Video.JS)")}}duration(){return this.el_.duration&&this.el_.duration!==1/0?this.el_.duration:0}buffered(){return this.el_.buffered}volume(){return this.el_.hasOwnProperty("volume")?this.el_.volume:1}setVolume(percentAsDecimal){"iPhoneOS"!==getDeviceOS()&&"iPadOS"!==getDeviceOS()&&this.el_.hasOwnProperty("volume")&&(this.el_.volume=percentAsDecimal)}muted(){return this.el_.muted}setMuted(muted){this.el_.muted=!!muted}defaultMuted(){return this.el_.defaultMuted||!1}width(){return this.el_.offsetWidth}height(){return this.el_.offsetHeight}videoWidth(){return this.el_.videoWidth}videoHeight(){return this.el_.videoHeight}src(src){if(void 0===src)return this.el_.src;this.el_.src=src}load(){this.el_.load()}currentSrc(){return this.currentSource_?this.currentSource_.src:this.el_.currentSrc}poster(){return this.el_.poster}setPoster(url){this.el_.poster=url}preload(){return this.el_.preload||"none"}setPreload(val){this.el_.hasOwnProperty("preload")&&(this.el_.preload=val)}autoplay(){return this.el_.autoplay||!1}setAutoplay(val){this.el_.hasOwnProperty("autoplay")&&(this.el_.autoplay=!!val)}controls(){return this.el_.controls||!1}setControls(val){this.el_.hasOwnProperty("controls")&&(this.el_.controls=!!val)}loop(){return this.el_.loop||!1}setLoop(val){this.el_.hasOwnProperty("loop")&&(this.el_.loop=!!val)}seekable(){return this.el_.seekable}seeking(){return this.el_.seeking}ended(){return this.el_.ended}networkState(){return this.el_.networkState}readyState(){return this.el_.readyState}supportsFullScreen(){return!1}error(){return this.el_.error}}return OgvJS.Events=["loadstart","suspend","abort","error","emptied","stalled","loadedmetadata","loadeddata","canplay","canplaythrough","playing","waiting","seeking","seeked","ended","durationchange","timeupdate","progress","play","pause","ratechange","resize","volumechange"],OgvJS.setIfAvailable=(el,name,value)=>{el.hasOwnProperty(name)&&(el[name]=value)},OgvJS.isSupported=()=>OGVCompat.supported("OGVPlayer"),OgvJS.canPlayType=type=>-1!==type.indexOf("/ogg")||type.indexOf("/webm")?"maybe":"",OgvJS.canPlaySource=srcObj=>OgvJS.canPlayType(srcObj.type),OgvJS.canControlVolume=()=>{if("iPhoneOS"===getDeviceOS()||"iPadOS"===getDeviceOS())return!1;return(new OGVPlayer).hasOwnProperty("volume")},OgvJS.canMuteVolume=()=>!0,OgvJS.canControlPlaybackRate=()=>!0,OgvJS.supportsNativeTextTracks=()=>!1,OgvJS.supportsFullscreenResize=()=>!0,OgvJS.supportsProgressEvents=()=>!0,OgvJS.supportsTimeupdateEvents=()=>!0,[["featuresVolumeControl","canControlVolume"],["featuresMuteControl","canMuteVolume"],["featuresPlaybackRate","canControlPlaybackRate"],["featuresNativeTextTracks","supportsNativeTextTracks"],["featuresFullscreenResize","supportsFullscreenResize"],["featuresProgressEvents","supportsProgressEvents"],["featuresTimeupdateEvents","supportsTimeupdateEvents"]].forEach((_ref=>{let[key,fn]=_ref;!function(obj,key,getValue){const set=value=>{Object.defineProperty(obj,key,{value:value,enumerable:!0,writable:!0})},options={configurable:!0,enumerable:!0,get(){const value=getValue();return set(value),value}};(!(arguments.length>3&&void 0!==arguments[3])||arguments[3])&&(options.set=set),Object.defineProperty(obj,key,options)}(OgvJS.prototype,key,(()=>OgvJS[fn]()),!0)})),Tech.registerTech("OgvJS",OgvJS),OgvJS}));

//# sourceMappingURL=videojs-ogvjs-lazy.min.js.map