LSP/embed: New status page and related changes
This commit is contained in:
parent
3c64d67b4f
commit
a9e88a0c39
19 changed files with 4485 additions and 1725 deletions
File diff suppressed because one or more lines are too long
|
@ -2,32 +2,32 @@
|
|||
.mistvideo-controls{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
|
||||
.mistvideo.novideo{overflow:visible}
|
||||
.mistvideo-video{overflow:hidden;outline:0}
|
||||
svg.icon.loading{z-index:-1;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;opacity:0}
|
||||
[data-loading]{position:relative}
|
||||
[data-loading=stalled] svg.icon.loading{transition:opacity 0s 3s}
|
||||
[data-loading] svg.icon.loading{z-index:2;opacity:1}
|
||||
[data-loading-css] .mistvideo-controls{display:none}
|
||||
[data-hidecursor],[data-hidecursor] *,[data-hidecursor] .mistvideo-pointer{cursor:none}
|
||||
.mistvideo svg.icon.loading{z-index:-1;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;opacity:0}
|
||||
.mistvideo [data-loading]{position:relative}
|
||||
.mistvideo [data-loading=stalled] svg.icon.loading{transition:opacity 0s 3s}
|
||||
.mistvideo [data-loading] svg.icon.loading{z-index:2;opacity:1}
|
||||
.mistvideo [data-loading-css] .mistvideo-controls{display:none}
|
||||
.mistvideo [data-hidecursor],.mistvideo [data-hidecursor] *,.mistvideo [data-hidecursor] .mistvideo-pointer{cursor:none}
|
||||
.mistvideo-error{display:none;position:absolute;top:0;left:0;right:0;bottom:0;background-color:$background;align-items:center;justify-content:center;text-align:center;z-index:2;cursor:default;min-height:fit-content;min-width:fit-content;height:100%}
|
||||
.mistvideo-error.show{display:flex}
|
||||
.mistvideo-error .message{max-width:80%}
|
||||
.mistvideo-error .message .details table{text-align:left}
|
||||
.mistvideo-controls button,.mistvideo-error button,.mistvideo-video:not(.video-js) button{color:$stroke;border:1px solid $semiFill;background-color:$background;margin:.25em;padding:.5em 1em;opacity:.5;cursor:pointer}
|
||||
button:hover{opacity:1}
|
||||
select{background-color:transparent;color:$stroke;border:none;margin:0 .5em;font-size:inherit;cursor:pointer;-ms-background-color:red}
|
||||
select>option{background-color:$background}
|
||||
.mistvideo button:hover{opacity:1}
|
||||
.mistvideo select{background-color:transparent;color:$stroke;border:none;margin:0 .5em;font-size:inherit;cursor:pointer;-ms-background-color:red}
|
||||
.mistvideo select>option{background-color:$background}
|
||||
.browser-edge select,.browser-safari select{border:1px solid $semiFill;border-top:none;border-left:none;margin-top:2px}
|
||||
@keyframes mistvideo-spin{
|
||||
0%{transform:rotate(0)}
|
||||
100%{transform:rotate(360deg)}
|
||||
}
|
||||
[data-fullscreen]{position:fixed;top:0;left:0;right:0;bottom:0;width:100%!important;height:100%!important;background-color:#111!important;z-index:999}
|
||||
video{display:block;flex-shrink:0}
|
||||
table{color:inherit;font-size:inherit;font-style:inherit}
|
||||
audio:not([controls]){display:block!important}
|
||||
.mistvideo video{display:block;flex-shrink:0}
|
||||
.mistvideo table{color:inherit;font-size:inherit;font-style:inherit}
|
||||
.mistvideo audio:not([controls]){display:block!important}
|
||||
.mistvideo-padding{padding:5px 10px}
|
||||
.mistvideo-pointer{cursor:pointer}
|
||||
.description{color:$semiFill;font-size:.9em}
|
||||
.msitvideo .description{color:$semiFill;font-size:.9em}
|
||||
.mistvideo-container{display:flex;flex-wrap:nowrap}
|
||||
.mistvideo-container.mistvideo{display:inline-flex;max-width:100%}
|
||||
.mistvideo-container.mistvideo-row{flex-direction:row}
|
||||
|
@ -45,7 +45,7 @@ audio:not([controls]){display:block!important}
|
|||
.mistvideo-tooltip .triangle{border:10px solid $background;position:absolute}
|
||||
.mistvideo-tracks label{display:block}
|
||||
.mistvideo-tracks label>span{margin-right:1em}
|
||||
a{color:$accent}
|
||||
.mistvideo a{color:$accent}
|
||||
.mistvideo-log .logs{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}
|
||||
.mistvideo-placeholder{max-width:100%;max-height:100%}
|
||||
.mistvideo-topright{position:absolute;top:0;right:0}
|
||||
|
@ -55,12 +55,12 @@ a{color:$accent}
|
|||
from{opacity:0}
|
||||
to{opacity:1}
|
||||
}
|
||||
svg.icon{display:block;stroke-width:$strokeWidth;fill:none;stroke:none}
|
||||
svg.icon .fill,svg.icon.fill{fill:$fill}
|
||||
svg.icon .semiFill,svg.icon.semiFill{fill:$semiFill}
|
||||
svg.icon .stroke,svg.icon.stroke{stroke:$stroke;vector-effect:non-scaling-stroke}
|
||||
svg.icon.off .toggle .fill,svg.icon.off .toggle .semiFill,svg.icon.off .toggle.fill,svg.icon.off .toggle.semiFill{fill:none}
|
||||
svg.icon .spin,svg.icon.spin{animation:mistvideo-spin 1.5s infinite linear;transform-origin:50% 50%}
|
||||
.mistvideo svg.icon{display:block;stroke-width:$strokeWidth;fill:none;stroke:none}
|
||||
.mistvideo svg.icon.fill,svg.icon .fill{fill:$fill}
|
||||
.mistvideo svg.icon.semiFill,svg.icon .semiFill{fill:$semiFill}
|
||||
.mistvideo svg.icon.stroke,svg.icon .stroke{stroke:$stroke;vector-effect:non-scaling-stroke}
|
||||
.mistvideo svg.icon.off .toggle .fill,.mistvideo svg.icon.off .toggle .semiFill,.mistvideo svg.icon.off .toggle.fill,.mistvideo svg.icon.off .toggle.semiFill{fill:none}
|
||||
.mistvideo svg.icon.spin,svg.icon .spin{animation:mistvideo-spin 1.5s infinite linear;transform-origin:50% 50%}
|
||||
.vjs-text-track-display{pointer-events:none}
|
||||
.vjs-controls-disabled .vjs-control-bar,.vjs-error .vjs-control-bar,.vjs-error-display,.vjs-hidden,.vjs-using-native-controls .vjs-control-bar{display:none!important}
|
||||
.vjs-controls-disabled .vjs-big-play-button,.vjs-controls-disabled .vjs-loading-spinner,.vjs-error .vjs-big-play-button,.vjs-has-started .vjs-big-play-button,.vjs-using-native-controls .vjs-big-play-button{display:none}
|
||||
|
@ -84,7 +84,7 @@ svg.icon .spin,svg.icon.spin{animation:mistvideo-spin 1.5s infinite linear;trans
|
|||
.mistvideo-play[data-state=playing] svg.play{display:none}
|
||||
.mistvideo-play[data-state=paused] svg.pause{display:none}
|
||||
.mistvideo-main{align-items:center}
|
||||
svg.icon.timeout{display:inline-block;height:1em;width:1em;margin:0;margin-right:.25em;vertical-align:top}
|
||||
.mistvideo svg.icon.timeout{display:inline-block;height:1em;width:1em;margin:0;margin-right:.25em;vertical-align:top}
|
||||
.mist.largeplay,.mist.muted{position:absolute;opacity:.5}
|
||||
.mist.largeplay{top:50%;left:0;right:0;margin:auto;transform:translateY(-50%)}
|
||||
.mist.muted{top:0;right:0;margin:1%;max-height:20%;width:auto}
|
||||
|
@ -112,6 +112,6 @@ svg.icon.timeout{display:inline-block;height:1em;width:1em;margin:0;margin-right
|
|||
.browser-ie .mist.icon.loading{animation:mistvideo-spin 1.5s infinite linear;transform-origin:50% 50%}
|
||||
.browser-ie .mist.icon.loading .spin{animation:none}
|
||||
.mistvideo-chromecast{display:flex}
|
||||
google-cast-launcher{width:24px;height:24px;--connected-color:$fill;--disconnected-color:$semiFill}
|
||||
google-cast-launcher.active{--connected-color:$accent;--disconnected-color:$fill}
|
||||
.mistvideo google-cast-launcher{width:24px;height:24px;--connected-color:$fill;--disconnected-color:$semiFill}
|
||||
.mistvideo google-cast-launcher.active{--connected-color:$accent;--disconnected-color:$fill}
|
||||
.mistvideo.casting .mistvideo-slideshow_mode{display:none}
|
|
@ -2,32 +2,32 @@
|
|||
.mistvideo-controls{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
|
||||
.mistvideo.novideo{overflow:visible}
|
||||
.mistvideo-video{overflow:hidden;outline:0}
|
||||
svg.icon.loading{z-index:-1;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;opacity:0}
|
||||
[data-loading]{position:relative}
|
||||
[data-loading=stalled] svg.icon.loading{transition:opacity 0s 3s}
|
||||
[data-loading] svg.icon.loading{z-index:2;opacity:1}
|
||||
[data-loading-css] .mistvideo-controls{display:none}
|
||||
[data-hidecursor],[data-hidecursor] *,[data-hidecursor] .mistvideo-pointer{cursor:none}
|
||||
.mistvideo svg.icon.loading{z-index:-1;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;opacity:0}
|
||||
.mistvideo [data-loading]{position:relative}
|
||||
.mistvideo [data-loading=stalled] svg.icon.loading{transition:opacity 0s 3s}
|
||||
.mistvideo [data-loading] svg.icon.loading{z-index:2;opacity:1}
|
||||
.mistvideo [data-loading-css] .mistvideo-controls{display:none}
|
||||
.mistvideo [data-hidecursor],.mistvideo [data-hidecursor] *,.mistvideo [data-hidecursor] .mistvideo-pointer{cursor:none}
|
||||
.mistvideo-error{display:none;position:absolute;top:0;left:0;right:0;bottom:0;background-color:$background;align-items:center;justify-content:center;text-align:center;z-index:2;cursor:default;min-height:fit-content;min-width:fit-content;height:100%}
|
||||
.mistvideo-error.show{display:flex}
|
||||
.mistvideo-error .message{max-width:80%}
|
||||
.mistvideo-error .message .details table{text-align:left}
|
||||
.mistvideo-controls button,.mistvideo-error button,.mistvideo-video:not(.video-js) button{color:$stroke;border:1px solid $semiFill;background-color:$background;margin:.25em;padding:.5em 1em;opacity:.5;cursor:pointer}
|
||||
button:hover{opacity:1}
|
||||
select{background-color:transparent;color:$stroke;border:none;margin:0 .5em;font-size:inherit;cursor:pointer;-ms-background-color:red}
|
||||
select>option{background-color:$background}
|
||||
.mistvideo button:hover{opacity:1}
|
||||
.mistvideo select{background-color:transparent;color:$stroke;border:none;margin:0 .5em;font-size:inherit;cursor:pointer;-ms-background-color:red}
|
||||
.mistvideo select>option{background-color:$background}
|
||||
.browser-edge select,.browser-safari select{border:1px solid $semiFill;border-top:none;border-left:none;margin-top:2px}
|
||||
@keyframes mistvideo-spin{
|
||||
0%{transform:rotate(0)}
|
||||
100%{transform:rotate(360deg)}
|
||||
}
|
||||
[data-fullscreen]{position:fixed;top:0;left:0;right:0;bottom:0;width:100%!important;height:100%!important;background-color:#111!important;z-index:999}
|
||||
video{display:block;flex-shrink:0}
|
||||
table{color:inherit;font-size:inherit;font-style:inherit}
|
||||
audio:not([controls]){display:block!important}
|
||||
.mistvideo video{display:block;flex-shrink:0}
|
||||
.mistvideo table{color:inherit;font-size:inherit;font-style:inherit}
|
||||
.mistvideo audio:not([controls]){display:block!important}
|
||||
.mistvideo-padding{padding:5px 10px}
|
||||
.mistvideo-pointer{cursor:pointer}
|
||||
.description{color:$semiFill;font-size:.9em}
|
||||
.msitvideo .description{color:$semiFill;font-size:.9em}
|
||||
.mistvideo-container{display:flex;flex-wrap:nowrap}
|
||||
.mistvideo-container.mistvideo{display:inline-flex;max-width:100%}
|
||||
.mistvideo-container.mistvideo-row{flex-direction:row}
|
||||
|
@ -45,7 +45,7 @@ audio:not([controls]){display:block!important}
|
|||
.mistvideo-tooltip .triangle{border:10px solid $background;position:absolute}
|
||||
.mistvideo-tracks label{display:block}
|
||||
.mistvideo-tracks label>span{margin-right:1em}
|
||||
a{color:$accent}
|
||||
.mistvideo a{color:$accent}
|
||||
.mistvideo-log .logs{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}
|
||||
.mistvideo-placeholder{max-width:100%;max-height:100%}
|
||||
.mistvideo-topright{position:absolute;top:0;right:0}
|
||||
|
@ -55,12 +55,12 @@ a{color:$accent}
|
|||
from{opacity:0}
|
||||
to{opacity:1}
|
||||
}
|
||||
svg.icon{display:block;stroke-width:$strokeWidth;fill:none;stroke:none}
|
||||
svg.icon .fill,svg.icon.fill{fill:$fill}
|
||||
svg.icon .semiFill,svg.icon.semiFill{fill:$semiFill}
|
||||
svg.icon .stroke,svg.icon.stroke{stroke:$stroke;vector-effect:non-scaling-stroke}
|
||||
svg.icon.off .toggle .fill,svg.icon.off .toggle .semiFill,svg.icon.off .toggle.fill,svg.icon.off .toggle.semiFill{fill:none}
|
||||
svg.icon .spin,svg.icon.spin{animation:mistvideo-spin 1.5s infinite linear;transform-origin:50% 50%}
|
||||
.mistvideo svg.icon{display:block;stroke-width:$strokeWidth;fill:none;stroke:none}
|
||||
.mistvideo svg.icon.fill,svg.icon .fill{fill:$fill}
|
||||
.mistvideo svg.icon.semiFill,svg.icon .semiFill{fill:$semiFill}
|
||||
.mistvideo svg.icon.stroke,svg.icon .stroke{stroke:$stroke;vector-effect:non-scaling-stroke}
|
||||
.mistvideo svg.icon.off .toggle .fill,.mistvideo svg.icon.off .toggle .semiFill,.mistvideo svg.icon.off .toggle.fill,.mistvideo svg.icon.off .toggle.semiFill{fill:none}
|
||||
.mistvideo svg.icon.spin,svg.icon .spin{animation:mistvideo-spin 1.5s infinite linear;transform-origin:50% 50%}
|
||||
.vjs-text-track-display{pointer-events:none}
|
||||
.vjs-controls-disabled .vjs-control-bar,.vjs-error .vjs-control-bar,.vjs-error-display,.vjs-hidden,.vjs-using-native-controls .vjs-control-bar{display:none!important}
|
||||
.vjs-controls-disabled .vjs-big-play-button,.vjs-controls-disabled .vjs-loading-spinner,.vjs-error .vjs-big-play-button,.vjs-has-started .vjs-big-play-button,.vjs-using-native-controls .vjs-big-play-button{display:none}
|
||||
|
@ -84,7 +84,7 @@ svg.icon .spin,svg.icon.spin{animation:mistvideo-spin 1.5s infinite linear;trans
|
|||
.mistvideo-play[data-state=playing] svg.play{display:none}
|
||||
.mistvideo-play[data-state=paused] svg.pause{display:none}
|
||||
.mistvideo-main{align-items:center}
|
||||
svg.icon.timeout{display:inline-block;height:1em;width:1em;margin:0;margin-right:.25em;vertical-align:top}
|
||||
.mistvideo svg.icon.timeout{display:inline-block;height:1em;width:1em;margin:0;margin-right:.25em;vertical-align:top}
|
||||
.mist.largeplay,.mist.muted{position:absolute;opacity:.5}
|
||||
.mist.largeplay{top:50%;left:0;right:0;margin:auto;transform:translateY(-50%)}
|
||||
.mist.muted{top:0;right:0;margin:1%;max-height:20%;width:auto}
|
||||
|
@ -112,8 +112,8 @@ svg.icon.timeout{display:inline-block;height:1em;width:1em;margin:0;margin-right
|
|||
.browser-ie .mist.icon.loading{animation:mistvideo-spin 1.5s infinite linear;transform-origin:50% 50%}
|
||||
.browser-ie .mist.icon.loading .spin{animation:none}
|
||||
.mistvideo-chromecast{display:flex}
|
||||
google-cast-launcher{width:24px;height:24px;--connected-color:$fill;--disconnected-color:$semiFill}
|
||||
google-cast-launcher.active{--connected-color:$accent;--disconnected-color:$fill}
|
||||
.mistvideo google-cast-launcher{width:24px;height:24px;--connected-color:$fill;--disconnected-color:$semiFill}
|
||||
.mistvideo google-cast-launcher.active{--connected-color:$accent;--disconnected-color:$fill}
|
||||
.mistvideo.casting .mistvideo-slideshow_mode{display:none}
|
||||
.mistvideo-log{margin:.5em 0}
|
||||
.mistvideo-log .logs{max-height:10em;min-height:5em;width:100%;padding:.2em 0;padding-right:1em;overflow-y:auto;overflow-x:hidden;font-size:.9em}
|
||||
|
@ -136,8 +136,8 @@ google-cast-launcher.active{--connected-color:$accent;--disconnected-color:$fill
|
|||
.mistvideo-decodingIssues label{position:relative}
|
||||
.mistvideo-decodingIssues label .mistvideo-description{font-size:.9em}
|
||||
.mistvideo-decodingIssues label .value{font-size:.8em}
|
||||
svg.icon.graph{position:absolute;right:0;top:0;bottom:0;width:6em}
|
||||
select{border-radius:0}
|
||||
input[type=checkbox]{margin:0;margin-right:.2em;border:1px solid $semiFill;border-radius:0;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;width:.8em;height:.8em;color:inherit;position:relative;cursor:pointer}
|
||||
input[type=checkbox]:checked:after{content:"\2713";position:absolute;bottom:-.2em;left:0;font-size:1.2em}
|
||||
.mistvideo svg.icon.graph{position:absolute;right:0;top:0;bottom:0;width:6em}
|
||||
.mistvideo select{border-radius:0}
|
||||
.mistvideo input[type=checkbox]{margin:0;margin-right:.2em;border:1px solid $semiFill;border-radius:0;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;width:.8em;height:.8em;color:inherit;position:relative;cursor:pointer}
|
||||
.mistvideo input[type=checkbox]:checked:after{content:"\2713";position:absolute;bottom:-.2em;left:0;font-size:1.2em}
|
||||
.mistvideo.casting .mistvideo-displayCombo,.mistvideo.casting .mistvideo-forcePlayer,.mistvideo.casting .mistvideo-forceType{display:none!important}
|
|
@ -1 +1 @@
|
|||
mistplayers.dashjs={name:"Dash.js player",mimes:["dash/video/mp4"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(e){return MistUtil.array.indexOf(this.mimes,e)==-1?false:true},isBrowserSupported:function(e,t,i){if(location.protocol!=MistUtil.http.url.split(t.url).protocol){i.log("HTTP/HTTPS mismatch for this source");return false}if(location.protocol=="file:"){i.log("This source ("+e+") won't load if the page is run via file://");return false}if(!("MediaSource"in window)){return false}if(!MediaSource.isTypeSupported){return true}var r={};var a=false;for(var s in i.info.meta.tracks){if(i.info.meta.tracks[s].type=="meta"){if(i.info.meta.tracks[s].codec=="subtitle"){a=true}continue}if(!(i.info.meta.tracks[s].type in r)){r[i.info.meta.tracks[s].type]={}}r[i.info.meta.tracks[s].type][MistUtil.tracks.translateCodec(i.info.meta.tracks[s])]=1}var o=[];for(var n in r){var l=false;for(var f in r[n]){if(MediaSource.isTypeSupported('video/mp4;codecs="'+f+'"')){l=true;break}}if(l){o.push(n)}}if(a){for(var s in i.info.source){if(i.info.source[s].type=="html5/text/vtt"){o.push("subtitle");break}}}return o.length?o:false},player:function(){this.onreadylist=[]},scriptsrc:function(e){return e+"/dashjs.js"}};var p=mistplayers.dashjs.player;p.prototype=new MistPlayer;p.prototype.build=function(e,t){var i=this;this.onDashLoad=function(){if(e.destroyed){return}e.log("Building DashJS player..");var r=document.createElement("video");if("Proxy"in window){var a={get:{},set:{}};e.player.api=new Proxy(r,{get:function(e,t,i){if(t in a.get){return a.get[t].apply(e,arguments)}var r=e[t];if(typeof r==="function"){return function(){return r.apply(e,arguments)}}return r},set:function(e,t,i){if(t in a.set){return a.set[t].call(e,i)}return e[t]=i}});if(e.info.type=="live"){a.get.duration=function(){var t=0;if(this.buffered.length){t=this.buffered.end(this.buffered.length-1)}var i=((new Date).getTime()-e.player.api.lastProgress.getTime())*.001;return t+i+-1*e.player.api.liveOffset+45};a.set.currentTime=function(t){var i=t-e.player.api.duration;e.log("Seeking to "+MistUtil.format.time(t)+" ("+Math.round(i*-10)/10+"s from live)");e.video.currentTime=t};MistUtil.event.addListener(r,"progress",(function(){e.player.api.lastProgress=new Date}));e.player.api.lastProgress=new Date;e.player.api.liveOffset=0}}else{i.api=r}if(e.options.autoplay){r.setAttribute("autoplay","")}if(e.options.loop&&e.info.type!="live"){r.setAttribute("loop","")}if(e.options.poster){r.setAttribute("poster",e.options.poster)}if(e.options.muted){r.muted=true}if(e.options.controls=="stock"){r.setAttribute("controls","")}var s=dashjs.MediaPlayer().create();s.initialize(r,e.source.url,e.options.autoplay);i.dash=s;var o=["METRIC_ADDED","METRIC_UPDATED","METRIC_CHANGED","METRICS_CHANGED","FRAGMENT_LOADING_STARTED","FRAGMENT_LOADING_COMPLETED","LOG","PLAYBACK_TIME_UPDATED","PLAYBACK_PROGRESS"];for(var n in dashjs.MediaPlayer.events){if(o.indexOf(n)<0){i.dash.on(dashjs.MediaPlayer.events[n],(function(t){e.log("Player event fired: "+t.type)}))}}e.player.setSize=function(e){this.api.style.width=e.width+"px";this.api.style.height=e.height+"px"};e.player.api.setSource=function(t){e.player.dash.attachSource(t)};if(e.options.controls!="stock"){i.dash.updateSettings({streaming:{text:{defaultEnabled:false}}})}var l=false;i.dash.on("allTextTracksAdded",(function(){l=true}));e.player.api.setSubtitle=function(t){if(!l){var r=function(){e.player.api.setSubtitle(t);i.dash.off("allTextTracksAdded",r)};i.dash.on("allTextTracksAdded",r);return}if(!t){i.dash.enableText(false);return}var a=i.dash.getTracksFor("text");for(var s in a){var o="idx"in t?t.idx:t.trackid;if(a[s].id==o){i.dash.setTextTrack(s);if(!i.dash.isTextEnabled()){i.dash.enableText()}return true}}return false};MistUtil.event.addListener(r,"progress",(function(t){if(e.container.getAttribute("data-loading")=="stalled"){e.container.removeAttribute("data-loading")}}));i.api.unload=function(){i.dash.reset()};e.log("Built html");t(r)};if("dashjs"in window){this.onDashLoad()}else{var r=MistUtil.scripts.insert(e.urlappend(mistplayers.dashjs.scriptsrc(e.options.host)),{onerror:function(t){var i="Failed to load dashjs.js";if(t.message){i+=": "+t.message}e.showError(i)},onload:i.onDashLoad},e)}};
|
||||
mistplayers.dashjs={name:"Dash.js player",mimes:["dash/video/mp4"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(e){return MistUtil.array.indexOf(this.mimes,e)==-1?false:true},isBrowserSupported:function(e,t,i){if(location.protocol!=MistUtil.http.url.split(t.url).protocol){i.log("HTTP/HTTPS mismatch for this source");return false}if(location.protocol=="file:"){i.log("This source ("+e+") won't load if the page is run via file://");return false}if(!("MediaSource"in window)){return false}if(!MediaSource.isTypeSupported){return true}var r={};var a=false;for(var s in i.info.meta.tracks){if(i.info.meta.tracks[s].type=="meta"){if(i.info.meta.tracks[s].codec=="subtitle"){a=true}continue}if(!(i.info.meta.tracks[s].type in r)){r[i.info.meta.tracks[s].type]={}}r[i.info.meta.tracks[s].type][MistUtil.tracks.translateCodec(i.info.meta.tracks[s])]=1}var o=[];for(var n in r){var l=false;for(var f in r[n]){if(MediaSource.isTypeSupported('video/mp4;codecs="'+f+'"')){l=true;break}}if(l){o.push(n)}}if(a){for(var s in i.info.source){if(i.info.source[s].type=="html5/text/vtt"){o.push("subtitle");break}}}return o.length?o:false},player:function(){this.onreadylist=[]},scriptsrc:function(e){return e+"/dashjs.js"}};var p=mistplayers.dashjs.player;p.prototype=new MistPlayer;p.prototype.build=function(e,t){var i=this;this.onDashLoad=function(){if(e.destroyed){return}e.log("Building DashJS player..");var r=document.createElement("video");if("Proxy"in window){var a={get:{},set:{}};e.player.api=new Proxy(r,{get:function(e,t,i){if(t in a.get){return a.get[t].apply(e,arguments)}var r=e[t];if(typeof r==="function"){return function(){return r.apply(e,arguments)}}return r},set:function(e,t,i){if(t in a.set){return a.set[t].call(e,i)}return e[t]=i}});if(e.info.type=="live"){a.get.duration=function(){var t=0;if(this.buffered.length){t=this.buffered.end(this.buffered.length-1)}var i=((new Date).getTime()-e.player.api.lastProgress.getTime())*.001;return t+i+-1*e.player.api.liveOffset+45};a.set.currentTime=function(t){var i=t-e.player.api.duration;e.log("Seeking to "+MistUtil.format.time(t)+" ("+Math.round(i*-10)/10+"s from live)");e.video.currentTime=t};MistUtil.event.addListener(r,"progress",function(){e.player.api.lastProgress=new Date});e.player.api.lastProgress=new Date;e.player.api.liveOffset=0}}else{i.api=r}if(e.options.autoplay){r.setAttribute("autoplay","")}if(e.options.loop&&e.info.type!="live"){r.setAttribute("loop","")}if(e.options.poster){r.setAttribute("poster",e.options.poster)}if(e.options.muted){r.muted=true}if(e.options.controls=="stock"){r.setAttribute("controls","")}var s=dashjs.MediaPlayer().create();s.initialize(r,e.source.url,e.options.autoplay);i.dash=s;var o=["METRIC_ADDED","METRIC_UPDATED","METRIC_CHANGED","METRICS_CHANGED","FRAGMENT_LOADING_STARTED","FRAGMENT_LOADING_COMPLETED","LOG","PLAYBACK_TIME_UPDATED","PLAYBACK_PROGRESS"];for(var n in dashjs.MediaPlayer.events){if(o.indexOf(n)<0){i.dash.on(dashjs.MediaPlayer.events[n],function(t){e.log("Player event fired: "+t.type)})}}e.player.setSize=function(e){this.api.style.width=e.width+"px";this.api.style.height=e.height+"px"};e.player.api.setSource=function(t){e.player.dash.attachSource(t)};if(e.options.controls!="stock"){i.dash.updateSettings({streaming:{text:{defaultEnabled:false}}})}var l=false;i.dash.on("allTextTracksAdded",function(){l=true});e.player.api.setSubtitle=function(t){if(!l){var r=function(){e.player.api.setSubtitle(t);i.dash.off("allTextTracksAdded",r)};i.dash.on("allTextTracksAdded",r);return}if(!t){i.dash.enableText(false);return}var a=i.dash.getTracksFor("text");for(var s in a){var o="idx"in t?t.idx:t.trackid;if(a[s].id==o){i.dash.setTextTrack(s);if(!i.dash.isTextEnabled()){i.dash.enableText()}return true}}return false};MistUtil.event.addListener(r,"progress",function(t){if(e.container.getAttribute("data-loading")=="stalled"){e.container.removeAttribute("data-loading")}});i.api.unload=function(){i.dash.reset()};e.log("Built html");t(r)};if("dashjs"in window){this.onDashLoad()}else{var r=MistUtil.scripts.insert(e.urlappend(mistplayers.dashjs.scriptsrc(e.options.host)),{onerror:function(t){var i="Failed to load dashjs.js";if(t.message){i+=": "+t.message}e.showError(i)},onload:i.onDashLoad},e)}};
|
|
@ -1 +1 @@
|
|||
mistplayers.flash_strobe={name:"Strobe Flash media playback",mimes:["flash/10","flash/11","flash/7"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(t){return this.mimes.indexOf(t)==-1?false:true},isBrowserSupported:function(t,e,i){if(MistUtil.http.url.split(e.url).protocol.slice(0,4)=="http"&&location.protocol!=MistUtil.http.url.split(e.url).protocol){i.log("HTTP/HTTPS mismatch for this source");return false}var r=0;try{var a=navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin;if(a.version){r=a.version.split(".")[0]}else{r=a.description.replace(/([^0-9\.])/g,"").split(".")[0]}}catch(t){}try{r=new ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version").replace(/([^0-9\,])/g,"").split(",")[0]}catch(t){}if(!r){return false}var l=t.split("/");return Number(r)>=Number(l[l.length-1])},player:function(){this.onreadylist=[]}};var p=mistplayers.flash_strobe.player;p.prototype=new MistPlayer;p.prototype.build=function(t,e){var i=document.createElement("object");var r=document.createElement("embed");i.appendChild(r);function a(e){var a=t.options;function l(t,e){var i=document.createElement("param");i.setAttribute("name",t);i.setAttribute("value",e);return i}MistUtil.empty(i);i.appendChild(l("movie",t.urlappend(a.host+t.source.player_url)));var o="src="+encodeURIComponent(e)+"&controlBarMode="+(a.controls?"floating":"none")+"&initialBufferTime=0.5&expandedBufferTime=5&minContinuousPlaybackTime=3"+(a.live?"&streamType=live":"")+(a.autoplay?"&autoPlay=true":"")+(a.loop?"&loop=true":"")+(a.poster?"&poster="+a.poster:"")+(a.muted?"&muted=true":"");i.appendChild(l("flashvars",o));i.appendChild(l("allowFullScreen","true"));i.appendChild(l("wmode","direct"));if(a.autoplay){i.appendChild(l("autoPlay","true"))}if(a.loop){i.appendChild(l("loop","true"))}if(a.poster){i.appendChild(l("poster",a.poster))}if(a.muted){i.appendChild(l("muted","true"))}r.setAttribute("src",t.urlappend(t.source.player_url));r.setAttribute("type","application/x-shockwave-flash");r.setAttribute("allowfullscreen","true");r.setAttribute("flashvars",o)}a(t.source.url);this.api={};this.setSize=function(t){i.setAttribute("width",t.width);i.setAttribute("height",t.height);r.setAttribute("width",t.width);r.setAttribute("height",t.height)};this.setSize(t.calcSize());this.onready((function(){if(t.container){t.container.removeAttribute("data-loading")}}));this.api.setSource=function(t){a(t)};t.log("Built html");e(i)};
|
||||
mistplayers.flash_strobe={name:"Strobe Flash media playback",mimes:["flash/10","flash/11","flash/7"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(t){return this.mimes.indexOf(t)==-1?false:true},isBrowserSupported:function(t,e,i){if(MistUtil.http.url.split(e.url).protocol.slice(0,4)=="http"&&location.protocol!=MistUtil.http.url.split(e.url).protocol){i.log("HTTP/HTTPS mismatch for this source");return false}var r=0;try{var a=navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin;if(a.version){r=a.version.split(".")[0]}else{r=a.description.replace(/([^0-9\.])/g,"").split(".")[0]}}catch(t){}try{r=new ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version").replace(/([^0-9\,])/g,"").split(",")[0]}catch(t){}if(!r){return false}var l=t.split("/");return Number(r)>=Number(l[l.length-1])},player:function(){this.onreadylist=[]}};var p=mistplayers.flash_strobe.player;p.prototype=new MistPlayer;p.prototype.build=function(t,e){var i=document.createElement("object");var r=document.createElement("embed");i.appendChild(r);function a(e){var a=t.options;function l(t,e){var i=document.createElement("param");i.setAttribute("name",t);i.setAttribute("value",e);return i}MistUtil.empty(i);i.appendChild(l("movie",t.urlappend(a.host+t.source.player_url)));var o="src="+encodeURIComponent(e)+"&controlBarMode="+(a.controls?"floating":"none")+"&initialBufferTime=0.5&expandedBufferTime=5&minContinuousPlaybackTime=3"+(a.live?"&streamType=live":"")+(a.autoplay?"&autoPlay=true":"")+(a.loop?"&loop=true":"")+(a.poster?"&poster="+a.poster:"")+(a.muted?"&muted=true":"");i.appendChild(l("flashvars",o));i.appendChild(l("allowFullScreen","true"));i.appendChild(l("wmode","direct"));if(a.autoplay){i.appendChild(l("autoPlay","true"))}if(a.loop){i.appendChild(l("loop","true"))}if(a.poster){i.appendChild(l("poster",a.poster))}if(a.muted){i.appendChild(l("muted","true"))}r.setAttribute("src",t.urlappend(t.source.player_url));r.setAttribute("type","application/x-shockwave-flash");r.setAttribute("allowfullscreen","true");r.setAttribute("flashvars",o)}a(t.source.url);this.api={};this.setSize=function(t){i.setAttribute("width",t.width);i.setAttribute("height",t.height);r.setAttribute("width",t.width);r.setAttribute("height",t.height)};this.setSize(t.calcSize());this.onready(function(){if(t.container){t.container.removeAttribute("data-loading")}});this.api.setSource=function(t){a(t)};t.log("Built html");e(i)};
|
|
@ -1 +1 @@
|
|||
mistplayers.flv={name:"HTML5 FLV Player",mimes:["flash/7"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(e){return MistUtil.array.indexOf(this.mimes,e)==-1?false:true},isBrowserSupported:function(e,t,r){if(location.protocol!=MistUtil.http.url.split(t.url).protocol){if(location.protocol=="file:"&&MistUtil.http.url.split(t.url).protocol=="http:"){r.log("This page was loaded over file://, the player might not behave as intended.")}else{r.log("HTTP/HTTPS mismatch for this source");return false}}if(!window.MediaSource){return false}if(!MediaSource.isTypeSupported){return true}try{var o={};for(var a in r.info.meta.tracks){if(r.info.meta.tracks[a].type=="meta"){continue}if(!(r.info.meta.tracks[a].type in o)){o[r.info.meta.tracks[a].type]={}}o[r.info.meta.tracks[a].type][MistUtil.tracks.translateCodec(r.info.meta.tracks[a])]=1}var i=[];for(var l in o){var n=false;for(var s in o[l]){if(MediaSource.isTypeSupported('video/mp4;codecs="'+s+'"')){n=true;break}}if(n){i.push(l)}}t.supportedCodecs=i;return i.length?i:false}catch(e){}return false},player:function(){this.onreadylist=[]},scriptsrc:function(e){return e+"/flv.js"}};var p=mistplayers.flv.player;p.prototype=new MistPlayer;p.prototype.build=function(e,t){this.onFLVLoad=function(){if(e.destroyed){return}e.log("Building flv.js player..");var r=document.createElement("video");r.setAttribute("playsinline","");var o=["autoplay","loop","poster"];for(var a in o){var i=o[a];if(e.options[i]){r.setAttribute(i,e.options[i]===true?"":e.options[i])}}if(e.options.muted){r.muted=true}if(e.options.controls=="stock"){r.setAttribute("controls","")}if(e.info.type=="live"){r.loop=false}flvjs.LoggingControl.applyConfig({enableVerbose:false});flvjs.LoggingControl.addLogListener((function(t,r){e.log("[flvjs] "+r)}));var l={type:"flv",url:e.source.url,hasAudio:false,hasVideo:false};for(var a in e.source.supportedCodecs){l["has"+e.source.supportedCodecs[a].charAt(0).toUpperCase()+e.source.supportedCodecs[a].slice(1)]=true}e.player.create=function(t){t=MistUtil.object.extend({},t);e.player.flvPlayer=flvjs.createPlayer(t,{lazyLoad:false});e.player.flvPlayer.attachMediaElement(r);e.player.flvPlayer.load();e.player.flvPlayer.play();if(!e.options.autoplay){r.pause()}};e.player.create(l);e.player.api={};function n(t){Object.defineProperty(e.player.api,t,{get:function(){return r[t]},set:function(e){return r[t]=e}})}var s=["volume","buffered","muted","loop","paused",,"error","textTracks","webkitDroppedFrameCount","webkitDecodedFrameCount"];if(e.info.type!="live"){s.push("duration")}else{Object.defineProperty(e.player.api,"duration",{get:function(){if(!r.buffered.length){return 0}return r.buffered.end(r.buffered.length-1)}})}for(var a in s){n(s[a])}function f(t){if(t in r){e.player.api[t]=function(){return r[t].call(r,arguments)}}}var s=["load","getVideoPlaybackQuality","play","pause"];for(var a in s){f(s[a])}e.player.api.setSource=function(t){if(t!=l.url&&t!=""){e.player.flvPlayer.unload();e.player.flvPlayer.detachMediaElement();e.player.flvPlayer.destroy();l.url=t;e.player.create(l)}};e.player.api.unload=function(){e.player.flvPlayer.unload();e.player.flvPlayer.detachMediaElement();e.player.flvPlayer.destroy()};e.player.setSize=function(e){r.style.width=e.width+"px";r.style.height=e.height+"px"};Object.defineProperty(e.player.api,"currentTime",{get:function(){return r.currentTime},set:function(t){var o=.5;for(var a=0;a<r.buffered.length;a++){if(t>=r.buffered.start(a)&&t<=r.buffered.end(a)-o){return r.currentTime=t}}e.log("Seek attempted outside of buffer, but MistServer does not support seeking in progressive flash. Setting to closest available instead");return r.currentTime=r.buffered.length?r.buffered.end(r.buffered.length-1)-o:0}});t(r)};if("flvjs"in window){this.onFLVLoad()}else{var r=MistUtil.scripts.insert(e.urlappend(mistplayers.flv.scriptsrc(e.options.host)),{onerror:function(t){var r="Failed to load flv.js";if(t.message){r+=": "+t.message}e.showError(r)},onload:e.player.onFLVLoad},e)}};
|
||||
mistplayers.flv={name:"HTML5 FLV Player",mimes:["flash/7"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(e){return MistUtil.array.indexOf(this.mimes,e)==-1?false:true},isBrowserSupported:function(e,t,r){if(location.protocol!=MistUtil.http.url.split(t.url).protocol){if(location.protocol=="file:"&&MistUtil.http.url.split(t.url).protocol=="http:"){r.log("This page was loaded over file://, the player might not behave as intended.")}else{r.log("HTTP/HTTPS mismatch for this source");return false}}if(!window.MediaSource){return false}if(!MediaSource.isTypeSupported){return true}try{var o={};for(var a in r.info.meta.tracks){if(r.info.meta.tracks[a].type=="meta"){continue}if(!(r.info.meta.tracks[a].type in o)){o[r.info.meta.tracks[a].type]={}}o[r.info.meta.tracks[a].type][MistUtil.tracks.translateCodec(r.info.meta.tracks[a])]=1}var i=[];for(var l in o){var n=false;for(var s in o[l]){if(MediaSource.isTypeSupported('video/mp4;codecs="'+s+'"')){n=true;break}}if(n){i.push(l)}}t.supportedCodecs=i;return i.length?i:false}catch(e){}return false},player:function(){this.onreadylist=[]},scriptsrc:function(e){return e+"/flv.js"}};var p=mistplayers.flv.player;p.prototype=new MistPlayer;p.prototype.build=function(e,t){this.onFLVLoad=function(){if(e.destroyed){return}e.log("Building flv.js player..");var r=document.createElement("video");r.setAttribute("playsinline","");var o=["autoplay","loop","poster"];for(var a in o){var i=o[a];if(e.options[i]){r.setAttribute(i,e.options[i]===true?"":e.options[i])}}if(e.options.muted){r.muted=true}if(e.options.controls=="stock"){r.setAttribute("controls","")}if(e.info.type=="live"){r.loop=false}flvjs.LoggingControl.applyConfig({enableVerbose:false});flvjs.LoggingControl.addLogListener(function(t,r){e.log("[flvjs] "+r)});var l={type:"flv",url:e.source.url,hasAudio:false,hasVideo:false};for(var a in e.source.supportedCodecs){l["has"+e.source.supportedCodecs[a].charAt(0).toUpperCase()+e.source.supportedCodecs[a].slice(1)]=true}e.player.create=function(t){t=MistUtil.object.extend({},t);e.player.flvPlayer=flvjs.createPlayer(t,{lazyLoad:false});e.player.flvPlayer.attachMediaElement(r);e.player.flvPlayer.load();e.player.flvPlayer.play();if(!e.options.autoplay){r.pause()}};e.player.create(l);e.player.api={};function n(t){Object.defineProperty(e.player.api,t,{get:function(){return r[t]},set:function(e){return r[t]=e}})}var s=["volume","buffered","muted","loop","paused",,"error","textTracks","webkitDroppedFrameCount","webkitDecodedFrameCount"];if(e.info.type!="live"){s.push("duration")}else{Object.defineProperty(e.player.api,"duration",{get:function(){if(!r.buffered.length){return 0}return r.buffered.end(r.buffered.length-1)}})}for(var a in s){n(s[a])}function f(t){if(t in r){e.player.api[t]=function(){return r[t].call(r,arguments)}}}var s=["load","getVideoPlaybackQuality","play","pause"];for(var a in s){f(s[a])}e.player.api.setSource=function(t){if(t!=l.url&&t!=""){e.player.flvPlayer.unload();e.player.flvPlayer.detachMediaElement();e.player.flvPlayer.destroy();l.url=t;e.player.create(l)}};e.player.api.unload=function(){e.player.flvPlayer.unload();e.player.flvPlayer.detachMediaElement();e.player.flvPlayer.destroy()};e.player.setSize=function(e){r.style.width=e.width+"px";r.style.height=e.height+"px"};Object.defineProperty(e.player.api,"currentTime",{get:function(){return r.currentTime},set:function(t){var o=.5;for(var a=0;a<r.buffered.length;a++){if(t>=r.buffered.start(a)&&t<=r.buffered.end(a)-o){return r.currentTime=t}}e.log("Seek attempted outside of buffer, but MistServer does not support seeking in progressive flash. Setting to closest available instead");return r.currentTime=r.buffered.length?r.buffered.end(r.buffered.length-1)-o:0}});t(r)};if("flvjs"in window){this.onFLVLoad()}else{var r=MistUtil.scripts.insert(e.urlappend(mistplayers.flv.scriptsrc(e.options.host)),{onerror:function(t){var r="Failed to load flv.js";if(t.message){r+=": "+t.message}e.showError(r)},onload:e.player.onFLVLoad},e)}};
|
|
@ -1 +1 @@
|
|||
mistplayers.hlsjs={name:"HLS.js player",mimes:["html5/application/vnd.apple.mpegurl","html5/application/vnd.apple.mpegurl;version=7"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(t){return this.mimes.indexOf(t)==-1?false:true},isBrowserSupported:function(t,e,r){if(location.protocol!=MistUtil.http.url.split(e.url).protocol){r.log("HTTP/HTTPS mismatch for this source");return false}if(!("MediaSource"in window)){return false}if(!MediaSource.isTypeSupported){return true}var i={};var s=false;for(var o in r.info.meta.tracks){if(r.info.meta.tracks[o].type=="meta"){if(r.info.meta.tracks[o].codec=="subtitle"){s=true}continue}if(!(r.info.meta.tracks[o].type in i)){i[r.info.meta.tracks[o].type]={}}i[r.info.meta.tracks[o].type][MistUtil.tracks.translateCodec(r.info.meta.tracks[o])]=1}var a=[];for(var l in i){var n=false;for(var p in i[l]){if(MediaSource.isTypeSupported('video/mp4;codecs="'+p+'"')){n=true;break}}if(n){a.push(l)}}if(s){for(var o in r.info.source){if(r.info.source[o].type=="html5/text/vtt"){a.push("subtitle");break}}}return a.length?a:false},player:function(){},scriptsrc:function(t){return t+"/hlsjs.js"}};var p=mistplayers.hlsjs.player;p.prototype=new MistPlayer;p.prototype.build=function(t,e){var r=this;var i=document.createElement("video");i.setAttribute("playsinline","");var s=["autoplay","loop","poster"];for(var o in s){var a=s[o];if(t.options[a]){i.setAttribute(a,t.options[a]===true?"":t.options[a])}}if(t.options.muted){i.muted=true}if(t.info.type=="live"){i.loop=false}if(t.options.controls=="stock"){i.setAttribute("controls","")}i.setAttribute("crossorigin","anonymous");this.setSize=function(t){i.style.width=t.width+"px";i.style.height=t.height+"px"};this.api=i;t.player.api.unload=function(){if(t.player.hls){t.player.hls.destroy();t.player.hls=false;t.log("hls.js instance disposed")}};function l(e){t.player.hls=new Hls({maxBufferLength:15,maxMaxBufferLength:60});t.player.hls.attachMedia(i);t.player.hls.on(Hls.Events.MEDIA_ATTACHED,(function(){t.player.hls.loadSource(e)}))}t.player.api.setSource=function(e){if(!t.player.hls){return}if(t.player.hls.url!=e){t.player.hls.destroy();l(e)}};t.player.api.setSubtitle=function(t){var e=i.getElementsByTagName("track");for(var r=e.length-1;r>=0;r--){i.removeChild(e[r])}if(t){var s=document.createElement("track");i.appendChild(s);s.kind="subtitles";s.label=t.label;s.srclang=t.lang;s.src=t.src;s.setAttribute("default","")}};function n(){l(t.source.url)}if("Hls"in window){n()}else{var p=t.urlappend(mistplayers.hlsjs.scriptsrc(t.options.host));MistUtil.scripts.insert(p,{onerror:function(e){var r="Failed to load hlsjs.js";if(e.message){r+=": "+e.message}t.showError(r)},onload:n},t)}e(i)};
|
||||
mistplayers.hlsjs={name:"HLS.js player",mimes:["html5/application/vnd.apple.mpegurl","html5/application/vnd.apple.mpegurl;version=7"],priority:MistUtil.object.keys(mistplayers).length+1,isMimeSupported:function(t){return this.mimes.indexOf(t)==-1?false:true},isBrowserSupported:function(t,e,r){if(location.protocol!=MistUtil.http.url.split(e.url).protocol){r.log("HTTP/HTTPS mismatch for this source");return false}if(!("MediaSource"in window)){return false}if(!MediaSource.isTypeSupported){return true}var i={};var s=false;for(var o in r.info.meta.tracks){if(r.info.meta.tracks[o].type=="meta"){if(r.info.meta.tracks[o].codec=="subtitle"){s=true}continue}if(!(r.info.meta.tracks[o].type in i)){i[r.info.meta.tracks[o].type]={}}i[r.info.meta.tracks[o].type][MistUtil.tracks.translateCodec(r.info.meta.tracks[o])]=1}var a=[];for(var l in i){var n=false;for(var p in i[l]){if(MediaSource.isTypeSupported('video/mp4;codecs="'+p+'"')){n=true;break}}if(n){a.push(l)}}if(s){for(var o in r.info.source){if(r.info.source[o].type=="html5/text/vtt"){a.push("subtitle");break}}}return a.length?a:false},player:function(){},scriptsrc:function(t){return t+"/hlsjs.js"}};var p=mistplayers.hlsjs.player;p.prototype=new MistPlayer;p.prototype.build=function(t,e){var r=this;var i=document.createElement("video");i.setAttribute("playsinline","");var s=["autoplay","loop","poster"];for(var o in s){var a=s[o];if(t.options[a]){i.setAttribute(a,t.options[a]===true?"":t.options[a])}}if(t.options.muted){i.muted=true}if(t.info.type=="live"){i.loop=false}if(t.options.controls=="stock"){i.setAttribute("controls","")}i.setAttribute("crossorigin","anonymous");this.setSize=function(t){i.style.width=t.width+"px";i.style.height=t.height+"px"};this.api=i;t.player.api.unload=function(){if(t.player.hls){t.player.hls.destroy();t.player.hls=false;t.log("hls.js instance disposed")}};function l(e){t.player.hls=new Hls({maxBufferLength:15,maxMaxBufferLength:60});t.player.hls.attachMedia(i);t.player.hls.on(Hls.Events.MEDIA_ATTACHED,function(){t.player.hls.loadSource(e)})}t.player.api.setSource=function(e){if(!t.player.hls){return}if(t.player.hls.url!=e){t.player.hls.destroy();l(e)}};t.player.api.setSubtitle=function(t){var e=i.getElementsByTagName("track");for(var r=e.length-1;r>=0;r--){i.removeChild(e[r])}if(t){var s=document.createElement("track");i.appendChild(s);s.kind="subtitles";s.label=t.label;s.srclang=t.lang;s.src=t.src;s.setAttribute("default","")}};function n(){l(t.source.url)}if("Hls"in window){n()}else{var p=t.urlappend(mistplayers.hlsjs.scriptsrc(t.options.host));MistUtil.scripts.insert(p,{onerror:function(e){var r="Failed to load hlsjs.js";if(e.message){r+=": "+e.message}t.showError(r)},onload:n},t)}e(i)};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -93,7 +93,7 @@
|
|||
}
|
||||
.mistvideo-main { align-items: center; }
|
||||
|
||||
svg.icon.timeout {
|
||||
.mistvideo svg.icon.timeout {
|
||||
display: inline-block;
|
||||
height: 1em;
|
||||
width: 1em;
|
||||
|
@ -232,14 +232,14 @@ svg.icon.timeout {
|
|||
.mistvideo-chromecast {
|
||||
display: flex;
|
||||
}
|
||||
google-cast-launcher {
|
||||
.mistvideo google-cast-launcher {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
|
||||
--connected-color: $fill;
|
||||
--disconnected-color: $semiFill;
|
||||
}
|
||||
google-cast-launcher.active {
|
||||
.mistvideo google-cast-launcher.active {
|
||||
--connected-color: $accent;
|
||||
--disconnected-color: $fill;
|
||||
}
|
||||
|
|
|
@ -74,17 +74,17 @@
|
|||
.mistvideo-decodingIssues label .value {
|
||||
font-size: 0.8em;
|
||||
}
|
||||
svg.icon.graph {
|
||||
.mistvideo svg.icon.graph {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
width: 6em;
|
||||
}
|
||||
select {
|
||||
.mistvideo select {
|
||||
border-radius: 0;
|
||||
}
|
||||
input[type="checkbox"] {
|
||||
.mistvideo input[type="checkbox"] {
|
||||
margin: 0;
|
||||
margin-right: 0.2em;
|
||||
border: 1px solid $semiFill;
|
||||
|
@ -99,7 +99,7 @@ input[type="checkbox"] {
|
|||
position: relative;
|
||||
cursor: pointer;
|
||||
}
|
||||
input[type="checkbox"]:checked:after {
|
||||
.mistvideo input[type="checkbox"]:checked:after {
|
||||
content: "\2713";
|
||||
position: absolute;
|
||||
bottom: -0.2em;
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
overflow: hidden;
|
||||
outline: none;
|
||||
}
|
||||
svg.icon.loading {
|
||||
.mistvideo svg.icon.loading {
|
||||
z-index: -1; /* don't use display: none because of transition for [data-loading=stalled] */
|
||||
position: absolute;
|
||||
top: 0;
|
||||
|
@ -30,24 +30,24 @@ svg.icon.loading {
|
|||
margin: auto;
|
||||
opacity: 0;
|
||||
}
|
||||
[data-loading] {
|
||||
.mistvideo [data-loading] {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/*wait before showing icon when stalled*/
|
||||
[data-loading="stalled"] svg.icon.loading {
|
||||
.mistvideo [data-loading="stalled"] svg.icon.loading {
|
||||
transition: opacity 0s 3s;
|
||||
}
|
||||
[data-loading] svg.icon.loading {
|
||||
.mistvideo [data-loading] svg.icon.loading {
|
||||
z-index: 2;
|
||||
opacity: 1;
|
||||
}
|
||||
[data-loading-css] .mistvideo-controls {
|
||||
.mistvideo [data-loading-css] .mistvideo-controls {
|
||||
display: none;
|
||||
}
|
||||
[data-hidecursor],
|
||||
[data-hidecursor] .mistvideo-pointer,
|
||||
[data-hidecursor] *
|
||||
.mistvideo [data-hidecursor],
|
||||
.mistvideo [data-hidecursor] .mistvideo-pointer,
|
||||
.mistvideo [data-hidecursor] *
|
||||
{ cursor: none }
|
||||
.mistvideo-error {
|
||||
display: none;
|
||||
|
@ -81,8 +81,8 @@ svg.icon.loading {
|
|||
opacity: 0.5;
|
||||
cursor: pointer;
|
||||
}
|
||||
button:hover { opacity: 1; }
|
||||
select {
|
||||
.mistvideo button:hover { opacity: 1; }
|
||||
.mistvideo select {
|
||||
background-color: transparent;
|
||||
color: $stroke;
|
||||
border: none;
|
||||
|
@ -91,7 +91,7 @@ select {
|
|||
cursor: pointer;
|
||||
-ms-background-color: red;
|
||||
}
|
||||
select > option {
|
||||
.mistvideo select > option {
|
||||
background-color: $background;
|
||||
}
|
||||
|
||||
|
@ -115,15 +115,15 @@ select > option {
|
|||
background-color: #111 !important;
|
||||
z-index: 999;
|
||||
}
|
||||
video {
|
||||
.mistvideo video {
|
||||
display: block;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
table { color: inherit; font-size: inherit; font-style: inherit; }
|
||||
audio:not([controls]) { display: block !important; }
|
||||
.mistvideo table { color: inherit; font-size: inherit; font-style: inherit; }
|
||||
.mistvideo audio:not([controls]) { display: block !important; }
|
||||
.mistvideo-padding { padding: 5px 10px; }
|
||||
.mistvideo-pointer { cursor: pointer; }
|
||||
.description {
|
||||
.msitvideo .description {
|
||||
color: $semiFill;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
@ -178,7 +178,7 @@ audio:not([controls]) { display: block !important; }
|
|||
margin-right: 1em;
|
||||
}
|
||||
|
||||
a {
|
||||
.mistvideo a {
|
||||
color: $accent;
|
||||
}
|
||||
.mistvideo-log .logs {
|
||||
|
@ -210,20 +210,20 @@ a {
|
|||
|
||||
@keyframes mistvideo-appear { from { opacity: 0; } to { opacity: 1; } }
|
||||
|
||||
svg.icon {
|
||||
.mistvideo svg.icon {
|
||||
display: block;
|
||||
stroke-width: $strokeWidth;
|
||||
fill: none;
|
||||
stroke: none;
|
||||
}
|
||||
svg.icon.fill, svg.icon .fill { fill: $fill; }
|
||||
svg.icon.semiFill, svg.icon .semiFill { fill: $semiFill; }
|
||||
svg.icon.stroke, svg.icon .stroke { stroke: $stroke; vector-effect: non-scaling-stroke; }
|
||||
svg.icon.off .toggle.fill,
|
||||
svg.icon.off .toggle.semiFill,
|
||||
svg.icon.off .toggle .fill,
|
||||
svg.icon.off .toggle .semiFill { fill: none; }
|
||||
svg.icon.spin, svg.icon .spin {
|
||||
.mistvideo svg.icon.fill, svg.icon .fill { fill: $fill; }
|
||||
.mistvideo svg.icon.semiFill, svg.icon .semiFill { fill: $semiFill; }
|
||||
.mistvideo svg.icon.stroke, svg.icon .stroke { stroke: $stroke; vector-effect: non-scaling-stroke; }
|
||||
.mistvideo svg.icon.off .toggle.fill,
|
||||
.mistvideo svg.icon.off .toggle.semiFill,
|
||||
.mistvideo svg.icon.off .toggle .fill,
|
||||
.mistvideo svg.icon.off .toggle .semiFill { fill: none; }
|
||||
.mistvideo svg.icon.spin, svg.icon .spin {
|
||||
animation: mistvideo-spin 1.5s infinite linear;
|
||||
transform-origin: 50% 50%;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue