shaka-player 4.12.7 → 4.12.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/locales.js +37 -37
- package/dist/shaka-player.compiled.debug.js +39 -39
- package/dist/shaka-player.compiled.debug.map +1 -1
- package/dist/shaka-player.compiled.js +1044 -1044
- package/dist/shaka-player.compiled.map +1 -1
- package/dist/shaka-player.ui.debug.js +49 -49
- package/dist/shaka-player.ui.debug.map +2 -2
- package/dist/shaka-player.ui.js +1207 -1207
- package/dist/shaka-player.ui.map +1 -1
- package/externs/shaka/player.js +5 -3
- package/lib/dash/dash_parser.js +3 -2
- package/lib/hls/manifest_text_parser.js +1 -0
- package/lib/media/streaming_engine.js +1 -1
- package/lib/net/networking_utils.js +1 -0
- package/lib/player.js +3 -2
- package/lib/util/player_configuration.js +12 -1
- package/lib/util/tXml.js +2 -1
- package/package.json +2 -1
- package/ui/controls.js +2 -6
- package/ui/range_element.js +0 -1
|
@@ -355,9 +355,9 @@ a.insert("tr",new Map([["AD_DURATION","Reklam s\u00fcresi"],["AD_PROGRESS","[AD_
|
|
|
355
355
|
["ENTER_LOOP_MODE","\u5faa\u74b0\u64ad\u653e\u76ee\u524d\u7684\u5f71\u7247"],["ENTER_PICTURE_IN_PICTURE","\u9032\u5165\u5b50\u6bcd\u756b\u9762"],["EXIT_FULL_SCREEN","\u9000\u51fa\u5168\u87a2\u5e55\u6a21\u5f0f"],["EXIT_LOOP_MODE","\u505c\u6b62\u5faa\u74b0\u64ad\u653e\u76ee\u524d\u7684\u5f71\u7247"],["EXIT_PICTURE_IN_PICTURE","\u96e2\u958b\u5b50\u6bcd\u756b\u9762"],["FAST_FORWARD","\u5feb\u8f49"],["FULL_SCREEN","\u5168\u87a2\u5e55"],["LANGUAGE","\u8a9e\u8a00"],["LIVE","\u76f4\u64ad"],["LOOP","\u5faa\u74b0\u64ad\u653e"],
|
|
356
356
|
["MORE_SETTINGS","\u986f\u793a\u66f4\u591a\u8a2d\u5b9a"],["MULTIPLE_LANGUAGES","\u591a\u7a2e\u8a9e\u8a00"],["MUTE","\u975c\u97f3"],["NOT_APPLICABLE","\u4e0d\u9069\u7528"],["OFF","\u95dc\u9589"],["ON","\u958b\u555f"],["PAUSE","\u66ab\u505c"],["PICTURE_IN_PICTURE","\u5b50\u6bcd\u756b\u9762"],["PLAY","\u64ad\u653e"],["PLAYBACK_RATE","\u64ad\u653e\u901f\u5ea6"],["QUALITY","\u97f3\u8cea"],["RECENTER_VR","\u91cd\u65b0\u7f6e\u4e2d"],["REPLAY","\u91cd\u64ad"],["RESOLUTION","\u89e3\u6790\u5ea6"],["REWIND",
|
|
357
357
|
"\u5012\u8f49"],["SEEK","\u641c\u5c0b"],["SKIP_AD","\u7565\u904e\u5ee3\u544a"],["SKIP_TO_LIVE","\u8df3\u81f3\u5f53\u524d\u76f4\u64ad"],["STATISTICS","\u7d71\u8a08\u8cc7\u6599"],["SUBTITLE_FORCED","\u5f37\u5236\u986f\u793a"],["SURROUND","\u74b0\u5834\u97f3\u6548"],["TOGGLE_STEREOSCOPIC","\u5207\u63db\u7acb\u9ad4\u5f71\u50cf"],["UNDETERMINED_LANGUAGE","\u4e0d\u660e"],["UNMUTE","\u53d6\u6d88\u975c\u97f3"],["UNRECOGNIZED_LANGUAGE","\u7121\u6cd5\u8fa8\u8b58"],["VOLUME","\u97f3\u91cf"]]))};
|
|
358
|
-
shaka.ui.Locales.Ids={
|
|
359
|
-
|
|
360
|
-
|
|
358
|
+
shaka.ui.Locales.Ids={SUBTITLE_FORCED:"SUBTITLE_FORCED",CAPTIONS:"CAPTIONS",MULTIPLE_LANGUAGES:"MULTIPLE_LANGUAGES",UNDETERMINED_LANGUAGE:"UNDETERMINED_LANGUAGE",REWIND:"REWIND",TOGGLE_STEREOSCOPIC:"TOGGLE_STEREOSCOPIC",LOOP:"LOOP",UNMUTE:"UNMUTE",ENTER_LOOP_MODE:"ENTER_LOOP_MODE",EXIT_PICTURE_IN_PICTURE:"EXIT_PICTURE_IN_PICTURE",AUTO_QUALITY:"AUTO_QUALITY",PAUSE:"PAUSE",NOT_APPLICABLE:"NOT_APPLICABLE",AD_TIME:"AD_TIME",EXIT_LOOP_MODE:"EXIT_LOOP_MODE",AD_STATISTICS:"AD_STATISTICS",FAST_FORWARD:"FAST_FORWARD",
|
|
359
|
+
LANGUAGE:"LANGUAGE",RECENTER_VR:"RECENTER_VR",EXIT_FULL_SCREEN:"EXIT_FULL_SCREEN",SKIP_AD:"SKIP_AD",MUTE:"MUTE",SURROUND:"SURROUND",AD_DURATION:"AD_DURATION",PLAYBACK_RATE:"PLAYBACK_RATE",LIVE:"LIVE",BACK:"BACK",OFF:"OFF",AD_PROGRESS:"AD_PROGRESS",AIRPLAY:"AIRPLAY",DOWNLOAD_VIDEO_FRAME:"DOWNLOAD_VIDEO_FRAME",ENTER_PICTURE_IN_PICTURE:"ENTER_PICTURE_IN_PICTURE",ON:"ON",SKIP_TO_LIVE:"SKIP_TO_LIVE",MORE_SETTINGS:"MORE_SETTINGS",STATISTICS:"STATISTICS",VOLUME:"VOLUME",CHAPTERS:"CHAPTERS",QUALITY:"QUALITY",
|
|
360
|
+
CAST:"CAST",UNRECOGNIZED_LANGUAGE:"UNRECOGNIZED_LANGUAGE",FULL_SCREEN:"FULL_SCREEN",PLAY:"PLAY",SEEK:"SEEK",REPLAY:"REPLAY",PICTURE_IN_PICTURE:"PICTURE_IN_PICTURE",RESOLUTION:"RESOLUTION"};shaka.abr={};shaka.abr.Ewma=function(a){goog.asserts.assert(0<a,"expected halfLife to be positive");this.alpha_=Math.exp(Math.log(.5)/a);this.totalWeight_=this.estimate_=0};shaka.abr.Ewma.prototype.updateAlpha=function(a){goog.asserts.assert(0<a,"expected halfLife to be positive");this.alpha_=Math.exp(Math.log(.5)/a)};shaka.abr.Ewma.prototype.sample=function(a,b){var c=Math.pow(this.alpha_,a);b=b*(1-c)+c*this.estimate_;isNaN(b)||(this.estimate_=b,this.totalWeight_+=a)};
|
|
361
361
|
shaka.abr.Ewma.prototype.getEstimate=function(){return this.estimate_/(1-Math.pow(this.alpha_,this.totalWeight_))};shaka.abr.EwmaBandwidthEstimator=function(){this.fast_=new shaka.abr.Ewma(2);this.slow_=new shaka.abr.Ewma(5);this.bytesSampled_=0;this.minTotalBytes_=128E3;this.minBytes_=16E3};shaka.abr.EwmaBandwidthEstimator.prototype.configure=function(a){this.minTotalBytes_=a.minTotalBytes;this.minBytes_=a.minBytes;this.fast_.updateAlpha(a.fastHalfLife);this.slow_.updateAlpha(a.slowHalfLife)};
|
|
362
362
|
shaka.abr.EwmaBandwidthEstimator.prototype.sample=function(a,b){if(!(b<this.minBytes_)){var c=8E3*b/a;a/=1E3;this.bytesSampled_+=b;this.fast_.sample(a,c);this.slow_.sample(a,c)}};shaka.abr.EwmaBandwidthEstimator.prototype.getBandwidthEstimate=function(a){return this.bytesSampled_<this.minTotalBytes_?a:Math.min(this.fast_.getEstimate(),this.slow_.getEstimate())};shaka.abr.EwmaBandwidthEstimator.prototype.hasGoodEstimate=function(){return this.bytesSampled_>=this.minTotalBytes_};shaka.util.EventManager=function(){this.bindingMap_=new shaka.util.MultiMap};shaka.util.EventManager.prototype.release=function(){this.removeAll();this.bindingMap_=null};shaka.util.EventManager.prototype.listen=function(a,b,c,d){this.bindingMap_&&(a=new shaka.util.EventManager.Binding_(a,b,c,d),this.bindingMap_.push(b,a))};shaka.util.EventManager.prototype.listenOnce=function(a,b,c,d){var e=this,f=function(g){e.unlisten(a,b,f);c(g)};this.listen(a,b,f,d)};
|
|
363
363
|
shaka.util.EventManager.prototype.unlisten=function(a,b,c){if(this.bindingMap_){var d=this.bindingMap_.get(b)||[];d=$jscomp.makeIterator(d);for(var e=d.next();!e.done;e=d.next())e=e.value,e.target!=a||c!=e.listener&&c||(e.unlisten(),this.bindingMap_.remove(b,e))}};shaka.util.EventManager.prototype.removeAll=function(){if(this.bindingMap_){var a=this.bindingMap_.getAll();a=$jscomp.makeIterator(a);for(var b=a.next();!b.done;b=a.next())b.value.unlisten();this.bindingMap_.clear()}};
|
|
@@ -400,7 +400,7 @@ e)}var e=0;return c("")};shaka.util.TXml.isNode=function(a){return!!a.tagName};s
|
|
|
400
400
|
shaka.util.TXml.findChildren=function(a,b){var c=[];if(!a.children)return[];a=$jscomp.makeIterator(a.children);for(var d=a.next();!d.done;d=a.next())d=d.value,d.tagName===b&&c.push(d);return c};shaka.util.TXml.getTextContents=function(a){var b=shaka.util.StringUtils;if("string"===typeof a)return b.htmlUnescape(a);a=a.children.reduce(function(c,d){return"string"===typeof d?c+d:c},"");return""===a?null:b.htmlUnescape(a)};
|
|
401
401
|
shaka.util.TXml.getContents=function(a){if(!Array.from(a.children).every(function(b){return"string"===typeof b}))return null;(a=shaka.util.TXml.getTextContents(a))&&(a=a.trim());return a};shaka.util.TXml.getElementsByTagName=function(a,b,c){c=void 0===c?[]:c;a.tagName===b&&c.push(a);if(a.children){a=$jscomp.makeIterator(a.children);for(var d=a.next();!d.done;d=a.next())shaka.util.TXml.getElementsByTagName(d.value,b,c)}return c};
|
|
402
402
|
shaka.util.TXml.findChild=function(a,b){a=shaka.util.TXml.findChildren(a,b);return 1!=a.length?null:a[0]};shaka.util.TXml.findChildNS=function(a,b,c){a=shaka.util.TXml.findChildrenNS(a,b,c);return 1!=a.length?null:a[0]};shaka.util.TXml.parseAttr=function(a,b,c,d){d=void 0===d?null:d;var e=null;a=a.attributes[b];null!=a&&(e=c(a));return null==e?d:e};shaka.util.TXml.getAttributeNS=function(a,b,c){b=shaka.util.TXml.getKnownNameSpace(b);return a.attributes[b+":"+c]||null};
|
|
403
|
-
shaka.util.TXml.findChildrenNS=function(a,b,c){
|
|
403
|
+
shaka.util.TXml.findChildrenNS=function(a,b,c){var d=shaka.util.TXml.getKnownNameSpace(b);b=[];if(a.children)for(c=d?d+":"+c:c,a=$jscomp.makeIterator(a.children),d=a.next();!d.done;d=a.next())(d=d.value)&&d.tagName===c&&b.push(d);return b};shaka.util.TXml.getAttributeNSList=function(a,b,c){b=$jscomp.makeIterator(b);for(var d=b.next();!d.done;d=b.next())if(d=shaka.util.TXml.getAttributeNS(a,d.value,c))return d;return null};
|
|
404
404
|
shaka.util.TXml.parseDate=function(a){if(!a)return null;/^\d+-\d+-\d+T\d+:\d+:\d+(\.\d+)?$/.test(a)&&(a+="Z");a=Date.parse(a);return isNaN(a)?null:a/1E3};
|
|
405
405
|
shaka.util.TXml.parseDuration=function(a){if(!a)return null;var b=RegExp("^P(?:([0-9]*)Y)?(?:([0-9]*)M)?(?:([0-9]*)D)?(?:T(?:([0-9]*)H)?(?:([0-9]*)M)?(?:([0-9.]*)S)?)?$").exec(a);if(!b)return shaka.log.warning("Invalid duration string:",a),null;a=31536E3*Number(b[1]||null)+2592E3*Number(b[2]||null)+86400*Number(b[3]||null)+3600*Number(b[4]||null)+60*Number(b[5]||null)+Number(b[6]||null);return isFinite(a)?a:null};
|
|
406
406
|
shaka.util.TXml.parseRange=function(a){var b=/([0-9]+)-([0-9]+)/.exec(a);if(!b)return null;a=Number(b[1]);if(!isFinite(a))return null;b=Number(b[2]);return isFinite(b)?{start:a,end:b}:null};shaka.util.TXml.parseInt=function(a){a=Number(a);return 0===a%1?a:null};shaka.util.TXml.parsePositiveInt=function(a){a=Number(a);return 0===a%1&&0<a?a:null};shaka.util.TXml.parseNonNegativeInt=function(a){a=Number(a);return 0===a%1&&0<=a?a:null};
|
|
@@ -686,9 +686,9 @@ this.keyStatusTimer_.tickAfter(shaka.media.DrmEngine.KEY_STATUS_BATCH_TIME))};sh
|
|
|
686
686
|
shaka.media.DrmEngine.probeSupport=function(){var a,b,c,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G;return $jscomp.asyncExecutePromiseGeneratorProgram(function(F){if(1==F.nextAddress){goog.asserts.assert(shaka.util.DrmUtils.isBrowserSupported(),"Must have basic EME support");a="org.w3.clearkey com.widevine.alpha com.widevine.alpha.experiment com.microsoft.playready com.microsoft.playready.hardware com.microsoft.playready.recommendation com.chromecast.playready com.apple.fps.1_0 com.apple.fps".split(" ");
|
|
687
687
|
b=["SW_SECURE_CRYPTO","SW_SECURE_DECODE","HW_SECURE_CRYPTO","HW_SECURE_DECODE","HW_SECURE_ALL"];c=["150","2000","3000"];d={"com.widevine.alpha":b,"com.widevine.alpha.experiment":b,"com.microsoft.playready.recommendation":c};e=[{contentType:'video/mp4; codecs="avc1.42E01E"'},{contentType:'video/webm; codecs="vp8"'}];f=[{contentType:'audio/mp4; codecs="mp4a.40.2"'},{contentType:'audio/webm; codecs="opus"'}];g={videoCapabilities:e,audioCapabilities:f,initDataTypes:["cenc","sinf","skd","keyids"]};h=[null,
|
|
688
688
|
"cenc","cbcs","cbcs-1-9"];k=new Map;l=function(E,I){var K,M,L,J,O,Q,N,T;return $jscomp.asyncExecutePromiseGeneratorProgram(function(R){switch(R.nextAddress){case 1:return R.setCatchFinallyBlocks(2),R.yield(I.createMediaKeys(),4);case 4:R.leaveTryBlock(3);break;case 2:return R.enterCatchBlock(),R.return();case 3:M=(K=I.getConfiguration().sessionTypes)?K.includes("persistent-license"):!1,shaka.util.Platform.isTizen3()&&(M=!1),L=I.getConfiguration().videoCapabilities,J=I.getConfiguration().audioCapabilities,
|
|
689
|
-
O={persistentState:M,encryptionSchemes:[],videoRobustnessLevels:[],audioRobustnessLevels:[]},k.has(E)&&k.get(E)?O=k.get(E):k.set(E,O),(Q=L[0].encryptionScheme)&&!O.encryptionSchemes.includes(Q)&&O.encryptionSchemes.push(Q),(N=L[0].robustness)&&!O.videoRobustnessLevels.includes(N)&&O.videoRobustnessLevels.push(N),(T=J[0].robustness)&&!O.audioRobustnessLevels.includes(T)&&O.audioRobustnessLevels.push(T),R.jumpToEnd()}})};m=function(E,I,K,M){var L,J,O,Q,N,T,R,S,X,
|
|
689
|
+
O={persistentState:M,encryptionSchemes:[],videoRobustnessLevels:[],audioRobustnessLevels:[]},k.has(E)&&k.get(E)?O=k.get(E):k.set(E,O),(Q=L[0].encryptionScheme)&&!O.encryptionSchemes.includes(Q)&&O.encryptionSchemes.push(Q),(N=L[0].robustness)&&!O.videoRobustnessLevels.includes(N)&&O.videoRobustnessLevels.push(N),(T=J[0].robustness)&&!O.audioRobustnessLevels.includes(T)&&O.audioRobustnessLevels.push(T),R.jumpToEnd()}})};m=function(E,I,K,M){var L,J,O,Q,N,T,R,S,X,U;return $jscomp.asyncExecutePromiseGeneratorProgram(function(P){switch(P.nextAddress){case 1:P.setCatchFinallyBlocks(2);
|
|
690
690
|
L=shaka.util.ObjectUtils.cloneObject(g);J=$jscomp.makeIterator(L.videoCapabilities);for(O=J.next();!O.done;O=J.next())Q=O.value,Q.encryptionScheme=I,Q.robustness=K;N=$jscomp.makeIterator(L.audioCapabilities);for(T=N.next();!T.done;T=N.next())R=T.value,R.encryptionScheme=I,R.robustness=M;S=shaka.util.ObjectUtils.cloneObject(L);S.persistentState="required";S.sessionTypes=["persistent-license"];X=[S,L];return P.yield(shaka.util.Functional.promiseWithTimeout(1,navigator.requestMediaKeySystemAccess(E,
|
|
691
|
-
X)),4);case 4:return
|
|
691
|
+
X)),4);case 4:return U=P.yieldResult,P.yield(l(E,U),5);case 5:P.leaveTryBlock(0);break;case 2:P.enterCatchBlock(),P.jumpToEnd()}})};n=function(E,I,K,M){var L,J,O,Q;return $jscomp.asyncExecutePromiseGeneratorProgram(function(N){switch(N.nextAddress){case 1:return N.setCatchFinallyBlocks(2),L={type:"media-source",video:{contentType:e[0].contentType,width:640,height:480,bitrate:1,framerate:1},audio:{contentType:f[0].contentType,channels:2,bitrate:1,samplerate:1},keySystemConfiguration:{keySystem:E,video:{encryptionScheme:I,
|
|
692
692
|
robustness:K},audio:{encryptionScheme:I,robustness:M}}},N.yield(shaka.util.Functional.promiseWithTimeout(1,navigator.mediaCapabilities.decodingInfo(L)),4);case 4:return J=N.yieldResult,O=J.keySystemAccess,N.yield(l(E,O),5);case 5:N.leaveTryBlock(0);break;case 2:Q=N.enterCatchBlock(),shaka.log.v2("Failed to probe support for",E,Q),N.jumpToEnd()}})};p=$jscomp.makeIterator(a);for(q=p.next();!q.done;q=p.next())r=q.value,k.set(r,null);t=[];u=$jscomp.makeIterator(h);for(v=u.next();!v.done;v=u.next())for(w=
|
|
693
693
|
v.value,x=$jscomp.makeIterator(a),z=x.next();!z.done;z=x.next())B=z.value,"org.w3.clearkey"===B&&shaka.util.Platform.isSafari()||(t.push(m(B,w,"","")),t.push(n(B,w,"","")));C=$jscomp.makeIterator(a);for(y=C.next();!y.done;y=C.next())for(A=y.value,D=$jscomp.makeIterator(d[A]||[]),H=D.next();!H.done;H=D.next())G=H.value,t.push(m(A,null,G,"")),t.push(m(A,null,"",G)),t.push(n(A,null,G,"")),t.push(n(A,null,"",G));return F.yield(Promise.all(t),2)}return F.return(shaka.util.MapUtils.asObject(k))})};
|
|
694
694
|
shaka.media.DrmEngine.prototype.onPlay_=function(){for(var a=$jscomp.makeIterator(this.mediaKeyMessageEvents_),b=a.next();!b.done;b=a.next())this.sendLicenseRequest_(b.value);this.initialRequestsSent_=!0;this.mediaKeyMessageEvents_=[]};
|
|
@@ -1169,9 +1169,9 @@ shaka.media.StreamingEngine.prototype.append_=function(a,b,c,d,e,f,g){f=void 0==
|
|
|
1169
1169
|
h.manifest_.type==shaka.media.ManifestParser.DASH)&&(m=new shaka.util.Mp4Parser),q&&m.box("moof",shaka.util.Mp4Parser.children).box("traf",shaka.util.Mp4Parser.children).fullBox("tfdt",function(u){var v,w,x,z,B,C;return $jscomp.asyncExecutePromiseGeneratorProgram(function(y){goog.asserts.assert(null!=u.version,"TFDT is a full box and should have a valid version.");v=shaka.util.Mp4BoxParsers.parseTFDTInaccurate(u.reader,u.version);w=v.baseMediaDecodeTime;if(!w)return y.return();goog.asserts.assert("number"==
|
|
1170
1170
|
typeof p,"Should be an number!");x=-w/p;z=Number(a.lastTimestampOffset)||0;if(!(z<x))return y.jumpTo(0);B=a.lastAppendWindowStart;C=a.lastAppendWindowEnd;goog.asserts.assert("number"==typeof B,"Should be an number!");goog.asserts.assert("number"==typeof C,"Should be an number!");return y.yield(h.setProperties_(a,x,B,C,d),0)})}),q&&m.parse(e,!1,f)),t.yield(h.evict_(a,b),2);case 2:return h.destroyer_.ensureNotDestroyed(),r=a.seeked,a.seeked=!1,t.yield(h.playerInterface_.beforeAppendSegment(a.type,e),
|
|
1171
1171
|
3);case 3:return t.yield(h.playerInterface_.mediaSourceEngine.appendBuffer(a.type,e,d,c,l,r,g,f),4);case 4:h.destroyer_.ensureNotDestroyed(),shaka.log.v2(k,"appended media segment"),t.jumpToEnd()}})};
|
|
1172
|
-
shaka.media.StreamingEngine.prototype.evict_=function(a,b){var c=this,d,e,f,g,h,k;return $jscomp.asyncExecutePromiseGeneratorProgram(function(l){if(1==l.nextAddress){d=a.stream.segmentIndex;d instanceof shaka.media.MetaSegmentIndex&&d.evict(c.manifest_.presentationTimeline.
|
|
1173
|
-
if(null==g)return c.lastTextMediaStateBeforeUnload_==a&&(c.lastTextMediaStateBeforeUnload_=null),shaka.log.v2(e,"buffer behind okay because nothing buffered:","presentationTime="+b,"bufferBehind="+f),l.return();h=b-g;k=h-f;if(k<=c.config_.evictionGoal)return shaka.log.v2(e,"buffer behind okay:","presentationTime="+b,"bufferedBehind="+h,"bufferBehind="+f,"evictionGoal="+c.config_.evictionGoal,"underflow="+Math.abs(k)),l.return();shaka.log.v1(e,
|
|
1174
|
-
h,"bufferBehind="+f,"evictionGoal="+c.config_.evictionGoal,"overflow="+k);return l.yield(c.playerInterface_.mediaSourceEngine.remove(a.type,g,g+k),2)}if(4!=l.nextAddress)return c.destroyer_.ensureNotDestroyed(),shaka.log.v1(e,"evicted "+k+" seconds"),c.lastTextMediaStateBeforeUnload_?l.yield(c.evict_(c.lastTextMediaStateBeforeUnload_,b),4):l.jumpTo(0);c.destroyer_.ensureNotDestroyed();l.jumpToEnd()})};
|
|
1172
|
+
shaka.media.StreamingEngine.prototype.evict_=function(a,b){var c=this,d,e,f,g,h,k;return $jscomp.asyncExecutePromiseGeneratorProgram(function(l){if(1==l.nextAddress){d=a.stream.segmentIndex;d instanceof shaka.media.MetaSegmentIndex&&d.evict(c.manifest_.presentationTimeline.getSegmentAvailabilityStart());e=shaka.media.StreamingEngine.logPrefix_(a);shaka.log.v2(e,"checking buffer length");f=Math.max(c.config_.bufferBehind*c.bufferingScale_,c.manifest_.presentationTimeline.getMaxSegmentDuration());g=
|
|
1173
|
+
c.playerInterface_.mediaSourceEngine.bufferStart(a.type);if(null==g)return c.lastTextMediaStateBeforeUnload_==a&&(c.lastTextMediaStateBeforeUnload_=null),shaka.log.v2(e,"buffer behind okay because nothing buffered:","presentationTime="+b,"bufferBehind="+f),l.return();h=b-g;k=h-f;if(k<=c.config_.evictionGoal)return shaka.log.v2(e,"buffer behind okay:","presentationTime="+b,"bufferedBehind="+h,"bufferBehind="+f,"evictionGoal="+c.config_.evictionGoal,"underflow="+Math.abs(k)),l.return();shaka.log.v1(e,
|
|
1174
|
+
"buffer behind too large:","presentationTime="+b,"bufferedBehind="+h,"bufferBehind="+f,"evictionGoal="+c.config_.evictionGoal,"overflow="+k);return l.yield(c.playerInterface_.mediaSourceEngine.remove(a.type,g,g+k),2)}if(4!=l.nextAddress)return c.destroyer_.ensureNotDestroyed(),shaka.log.v1(e,"evicted "+k+" seconds"),c.lastTextMediaStateBeforeUnload_?l.yield(c.evict_(c.lastTextMediaStateBeforeUnload_,b),4):l.jumpTo(0);c.destroyer_.ensureNotDestroyed();l.jumpToEnd()})};
|
|
1175
1175
|
shaka.media.StreamingEngine.isEmbeddedText_=function(a){var b=shaka.util.MimeUtils,c=b.CEA608_CLOSED_CAPTION_MIMETYPE;b=b.CEA708_CLOSED_CAPTION_MIMETYPE;return a&&a.type==shaka.util.ManifestParserUtils.ContentType.TEXT&&(a.stream.mimeType==c||a.stream.mimeType==b)};
|
|
1176
1176
|
shaka.media.StreamingEngine.prototype.fetch_=function(a,b,c){var d=this,e,f,g,h,k;return $jscomp.asyncExecutePromiseGeneratorProgram(function(l){switch(l.nextAddress){case 1:if(e=b.getSegmentData())return l.return(e);f=null;a.segmentPrefetch&&(f=a.segmentPrefetch.getPrefetchedSegment(b,c));f||(f=d.dispatchFetch_(b,a.stream,c));g=0;a.segmentIterator&&(g=a.segmentIterator.currentPosition());a.operation=f;return l.yield(f.promise,2);case 2:h=l.yieldResult;a.operation=null;k=h.data;if(!b.aesKey){l.jumpTo(3);
|
|
1177
1177
|
break}return l.yield(shaka.media.SegmentUtils.aesDecrypt(k,b.aesKey,g),4);case 4:k=l.yieldResult;case 3:return l.return(k)}})};shaka.media.StreamingEngine.prototype.dispatchFetch_=function(a,b,c,d){goog.asserts.assert(this.playerInterface_.netEngine,"Must have net engine");return shaka.media.StreamingEngine.dispatchFetch(a,b,c||null,this.config_.retryParameters,this.playerInterface_.netEngine)};
|
|
@@ -1218,7 +1218,7 @@ ignoreManifestProgramDateTimeForTypes:[],mediaPlaylistFullMimeType:'video/mp2t;
|
|
|
1218
1218
|
sequenceMode:!1,keySystemsBySystemId:{"9a04f079-9840-4286-ab92-e65be0885f95":"com.microsoft.playready","79f0049a-4098-8642-ab92-e65be0885f95":"com.microsoft.playready"}}};var e={retryParameters:shaka.net.NetworkingEngine.defaultRetryParameters(),failureCallback:function(m){shaka.log.error("Unhandled streaming error",m);return shaka.util.ConfigUtils.referenceParametersAndReturn([m],void 0)},rebufferingGoal:2,bufferingGoal:10,bufferBehind:30,evictionGoal:1,ignoreTextStreamFailures:!1,alwaysStreamText:!1,
|
|
1219
1219
|
startAtSegmentBoundary:!1,gapDetectionThreshold:.5,gapPadding:.01,gapJumpTimerTime:.25,durationBackoff:1,safeSeekOffset:5,safeSeekEndOffset:0,stallEnabled:!0,stallThreshold:1,stallSkip:.1,useNativeHlsForFairPlay:!0,inaccurateManifestTolerance:2,lowLatencyMode:!1,autoLowLatencyMode:!1,forceHTTP:!1,forceHTTPS:!1,minBytesForProgressEvents:16E3,preferNativeHls:!1,updateIntervalSeconds:1,observeQualityChanges:!1,maxDisabledTime:30,segmentPrefetchLimit:0,prefetchAudioLanguages:[],disableAudioPrefetch:!1,
|
|
1220
1220
|
disableTextPrefetch:!1,disableVideoPrefetch:!1,liveSync:{enabled:!1,targetLatency:.5,targetLatencyTolerance:.5,maxPlaybackRate:1.1,minPlaybackRate:.95,panicMode:!1,panicThreshold:60,dynamicTargetLatency:{enabled:!1,stabilityThreshold:60,rebufferIncrement:.5,maxAttempts:10,maxLatency:4,minLatency:1}},allowMediaSourceRecoveries:!0,minTimeBetweenRecoveries:5,vodDynamicPlaybackRate:!1,vodDynamicPlaybackRateLowBufferRate:.95,vodDynamicPlaybackRateBufferRatio:.5,infiniteLiveStreamDuration:!1,preloadNextUrlWindow:30,
|
|
1221
|
-
loadTimeout:30,clearDecodingCache:shaka.util.Platform.isPS4()||shaka.util.Platform.isPS5(),dontChooseCodecs:!1,shouldFixTimestampOffset:shaka.util.Platform.isWebOS()||shaka.util.Platform.isTizen()};if(shaka.util.Platform.isWebOS()||shaka.util.Platform.isTizen()||shaka.util.Platform.isChromecast()||shaka.util.Platform.isHisense())e.stallSkip=0;shaka.util.Platform.isTizen()&&(e.gapPadding=2);
|
|
1221
|
+
loadTimeout:30,clearDecodingCache:shaka.util.Platform.isPS4()||shaka.util.Platform.isPS5(),dontChooseCodecs:!1,shouldFixTimestampOffset:shaka.util.Platform.isWebOS()||shaka.util.Platform.isTizen()},f=shaka.util.Platform.safariVersion();f&&17<=f&&(e.infiniteLiveStreamDuration=!0);if(shaka.util.Platform.isWebOS()||shaka.util.Platform.isTizen()||shaka.util.Platform.isChromecast()||shaka.util.Platform.isHisense())e.stallSkip=0;shaka.util.Platform.isTizen()&&(e.gapPadding=2);f={trackSelectionCallback:function(m){return $jscomp.asyncExecutePromiseGeneratorProgram(function(n){return n.return(m)})},
|
|
1222
1222
|
downloadSizeCallback:function(m){var n;return $jscomp.asyncExecutePromiseGeneratorProgram(function(p){if(1==p.nextAddress)return navigator.storage&&navigator.storage.estimate?p.yield(navigator.storage.estimate(),3):p.return(!0);n=p.yieldResult;return p.return(n.usage+m<.95*n.quota)})},progressCallback:function(m,n){return shaka.util.ConfigUtils.referenceParametersAndReturn([m,n],void 0)},usePersistentLicense:!0,numberOfParallelDownloads:5};a={enabled:!0,useNetworkInformation:!0,defaultBandwidthEstimate:1E6,
|
|
1223
1223
|
switchInterval:8,bandwidthUpgradeTarget:.85,bandwidthDowngradeTarget:.95,restrictions:{minWidth:0,maxWidth:Infinity,minHeight:0,maxHeight:a,minPixels:0,maxPixels:Infinity,minFrameRate:0,maxFrameRate:Infinity,minBandwidth:0,maxBandwidth:Infinity,minChannelsCount:0,maxChannelsCount:Infinity},advanced:{minTotalBytes:128E3,minBytes:16E3,fastHalfLife:2,slowHalfLife:5},restrictToElementSize:!1,restrictToScreenSize:!1,ignoreDevicePixelRatio:!1,clearBufferSwitch:!1,safeMarginSwitch:0,cacheLoadThreshold:20,
|
|
1224
1224
|
minTimeToSwitch:shaka.util.Platform.isApple()?.5:0,preferNetworkInformationBandwidth:!1};c={codecSwitchingStrategy:c,addExtraFeaturesToSourceBuffer:function(m){return shaka.util.ConfigUtils.referenceParametersAndReturn([m],"")},forceTransmux:!1,insertFakeEncryptionInInit:!0,modifyCueCallback:function(m,n){return shaka.util.ConfigUtils.referenceParametersAndReturn([m,n],void 0)},dispatchAllEmsgBoxes:!1};var g=!1,h=!1,k=!0;shaka.util.Platform.isSmartTV()&&(h=g=!0,k=!1);var l={drm:b,manifest:d,streaming:e,
|
|
@@ -1226,10 +1226,10 @@ mediaSource:c,offline:f,abrFactory:function(){return new shaka.abr.SimpleAbrMana
|
|
|
1226
1226
|
restrictions:{minWidth:0,maxWidth:Infinity,minHeight:0,maxHeight:Infinity,minPixels:0,maxPixels:Infinity,minFrameRate:0,maxFrameRate:Infinity,minBandwidth:0,maxBandwidth:Infinity,minChannelsCount:0,maxChannelsCount:Infinity},playRangeStart:0,playRangeEnd:Infinity,textDisplayer:{captionsUpdatePeriod:.25},textDisplayFactory:function(){return null},cmcd:{enabled:!1,sessionId:"",contentId:"",rtpSafetyFactor:5,useHeaders:!1,includeKeys:[]},cmsd:{enabled:!0,applyMaximumSuggestedBitrate:!0,estimatedThroughputWeightRatio:.5},
|
|
1227
1227
|
lcevc:{enabled:!1,dynamicPerformanceScaling:!0,logLevel:0,drawLogo:!1},ads:{customPlayheadTracker:g,skipPlayDetection:h,supportsMultipleMediaElements:k,disableHLSInterstitial:!1,disableDASHInterstitial:!1},ignoreHardwareResolution:!1};f.trackSelectionCallback=function(m){return $jscomp.asyncExecutePromiseGeneratorProgram(function(n){return n.return(shaka.util.PlayerConfiguration.defaultTrackSelect(m,l.preferredAudioLanguage,l.preferredVideoHdrLevel))})};return l};
|
|
1228
1228
|
shaka.util.PlayerConfiguration.mergeConfigObjects=function(a,b,c){var d={".drm.keySystemsMapping":"",".drm.servers":"",".drm.clearKeys":"",".drm.advanced":{distinctiveIdentifierRequired:!1,persistentStateRequired:!1,videoRobustness:"",audioRobustness:"",sessionType:"",serverCertificate:new Uint8Array(0),serverCertificateUri:"",individualizationServer:"",headers:{}}};return shaka.util.ConfigUtils.mergeConfigObjects(a,b,c||shaka.util.PlayerConfiguration.createDefault(),d,"")};
|
|
1229
|
-
shaka.util.PlayerConfiguration.defaultTrackSelect=function(a,b,c){var d=shaka.util.ManifestParserUtils.ContentType,e=shaka.util.LanguageUtils,f=c;"AUTO"==f&&(f=window.matchMedia("(color-gamut: p3)").matches?"PQ":"SDR");var g=a.filter(function(l){return"variant"!=l.type||l.hdr&&l.hdr!=f?!1:!0});c=[];var h=e.findClosestLocale(b,g.map(function(l){return l.language}));h&&(c=g.filter(function(l){return e.normalize(l.language)==h}));0==c.length&&
|
|
1230
|
-
(1<(new Set(g.map(function(l){return l.language}))).size&&shaka.log.warning("Could not choose a good audio track based on language preferences or primary tracks. An arbitrary language will be stored!"),c=g);var k=c.filter(function(l){return l.height&&480>=l.height});k.length&&(k.sort(function(l,m){goog.asserts.assert(null!=l.height,"Null height");goog.asserts.assert(null!=m.height,"Null height");return m.height-l.height}),c=k.filter(function(l){return l.height==
|
|
1231
|
-
2),c.sort(function(l,m){return l.bandwidth-m.bandwidth}),b.push(c[g]));a=$jscomp.makeIterator(a);for(c=a.next();!c.done;c=a.next())c=c.value,c.type!=d.TEXT&&c.type!=d.IMAGE||b.push(c);return b};shaka.util.PlayerConfiguration.defaultManifestPreprocessor=function(a){return shaka.util.ConfigUtils.referenceParametersAndReturn([a],a)};
|
|
1232
|
-
goog.exportSymbol("shaka.util.PlayerConfiguration",shaka.util.PlayerConfiguration);goog.exportProperty(shaka.util.PlayerConfiguration,"mergeConfigObjects",shaka.util.PlayerConfiguration.mergeConfigObjects);goog.exportProperty(shaka.util.PlayerConfiguration,"createDefault",shaka.util.PlayerConfiguration.createDefault);shaka.media.PreloadManager=function(a,b,c,d){shaka.util.FakeEventTarget.call(this);this.assetUri_=a;this.mimeType_=b;this.networkingEngine_=d.networkingEngine;this.startTime_=c;this.currentAdaptationSetCriteria_=null;this.startTimeOfDrm_=0;this.createDrmEngine_=d.createDrmEngine;this.manifestFilterer_=d.manifestFilterer;this.manifestPlayerInterface_=d.manifestPlayerInterface;this.config_=d.config;this.parser_=this.parserFactory_=this.manifest_=null;this.parserEntrusted_=!1;this.regionTimeline_=d.regionTimeline;
|
|
1229
|
+
shaka.util.PlayerConfiguration.defaultTrackSelect=function(a,b,c){var d=shaka.util.ManifestParserUtils.ContentType,e=shaka.util.LanguageUtils,f=c;"AUTO"==f&&(f=window.matchMedia("(color-gamut: p3)").matches?a.some(function(l){return l.hdr&&"HLG"==l.hdr?!0:!1})?"HLG":"PQ":"SDR");var g=a.filter(function(l){return"variant"!=l.type||l.hdr&&l.hdr!=f?!1:!0});c=[];var h=e.findClosestLocale(b,g.map(function(l){return l.language}));h&&(c=g.filter(function(l){return e.normalize(l.language)==h}));0==c.length&&
|
|
1230
|
+
(c=g.filter(function(l){return l.primary}));0==c.length&&(1<(new Set(g.map(function(l){return l.language}))).size&&shaka.log.warning("Could not choose a good audio track based on language preferences or primary tracks. An arbitrary language will be stored!"),c=g);var k=c.filter(function(l){return l.height&&480>=l.height});k.length&&(k.sort(function(l,m){goog.asserts.assert(null!=l.height,"Null height");goog.asserts.assert(null!=m.height,"Null height");return m.height-l.height}),c=k.filter(function(l){return l.height==
|
|
1231
|
+
k[0].height}));b=[];c.length&&(g=Math.floor(c.length/2),c.sort(function(l,m){return l.bandwidth-m.bandwidth}),b.push(c[g]));a=$jscomp.makeIterator(a);for(c=a.next();!c.done;c=a.next())c=c.value,c.type!=d.TEXT&&c.type!=d.IMAGE||b.push(c);return b};shaka.util.PlayerConfiguration.defaultManifestPreprocessor=function(a){return shaka.util.ConfigUtils.referenceParametersAndReturn([a],a)};
|
|
1232
|
+
shaka.util.PlayerConfiguration.defaultManifestPreprocessorTXml=function(a){return shaka.util.ConfigUtils.referenceParametersAndReturn([a],a)};goog.exportSymbol("shaka.util.PlayerConfiguration",shaka.util.PlayerConfiguration);goog.exportProperty(shaka.util.PlayerConfiguration,"mergeConfigObjects",shaka.util.PlayerConfiguration.mergeConfigObjects);goog.exportProperty(shaka.util.PlayerConfiguration,"createDefault",shaka.util.PlayerConfiguration.createDefault);shaka.media.PreloadManager=function(a,b,c,d){shaka.util.FakeEventTarget.call(this);this.assetUri_=a;this.mimeType_=b;this.networkingEngine_=d.networkingEngine;this.startTime_=c;this.currentAdaptationSetCriteria_=null;this.startTimeOfDrm_=0;this.createDrmEngine_=d.createDrmEngine;this.manifestFilterer_=d.manifestFilterer;this.manifestPlayerInterface_=d.manifestPlayerInterface;this.config_=d.config;this.parser_=this.parserFactory_=this.manifest_=null;this.parserEntrusted_=!1;this.regionTimeline_=d.regionTimeline;
|
|
1233
1233
|
this.regionTimelineEntrusted_=!1;this.drmEngine_=null;this.drmEngineEntrusted_=!1;this.abrManager_=this.abrManagerFactory_=null;this.abrManagerEntrusted_=!1;this.segmentPrefetchById_=new Map;this.segmentPrefetchEntrusted_=!1;this.qualityObserver_=d.qualityObserver;this.stats_=new shaka.util.Stats;this.manifestPromise_=new shaka.util.PublicPromise;this.successPromise_=new shaka.util.PublicPromise;this.eventHandoffTarget_=null;this.destroyed_=!1;this.allowPrefetch_=d.allowPrefetch;this.prefetchedVariant_=
|
|
1234
1234
|
null;this.allowMakeAbrManager_=d.allowMakeAbrManager;this.hasBeenAttached_=!1;this.queuedOperations_=[];this.latePhaseQueuedOperations_=[];this.isPreload_=!0};$jscomp.inherits(shaka.media.PreloadManager,shaka.util.FakeEventTarget);shaka.media.PreloadManager.prototype.markIsLoad=function(){this.isPreload_=!1};shaka.media.PreloadManager.prototype.addQueuedOperation=function(a,b){(a=a?this.latePhaseQueuedOperations_:this.queuedOperations_)?a.push(b):b()};
|
|
1235
1235
|
shaka.media.PreloadManager.prototype.stopQueuingLatePhaseQueuedOperations=function(){if(this.latePhaseQueuedOperations_)for(var a=$jscomp.makeIterator(this.latePhaseQueuedOperations_),b=a.next();!b.done;b=a.next())b=b.value,b();this.latePhaseQueuedOperations_=null};
|
|
@@ -1265,8 +1265,8 @@ shaka.media.RegionObserver.prototype.poll=function(a,b){var c=shaka.media.Region
|
|
|
1265
1265
|
shaka.media.RegionObserver.prototype.onEvent_=function(a,b,c){a=new shaka.util.FakeEvent(a,new Map([["region",b],["seeking",c]]));this.dispatchEvent(a)};shaka.media.RegionObserver.determinePositionRelativeTo_=function(a,b){var c=shaka.media.RegionObserver.RelativePosition_;return b<a.startTime?c.BEFORE_THE_REGION:b>a.endTime?c.AFTER_THE_REGION:c.IN_THE_REGION};shaka.media.RegionObserver.RelativePosition_={BEFORE_THE_REGION:1,IN_THE_REGION:2,AFTER_THE_REGION:3};shaka.net.NetworkingUtils=function(){};
|
|
1266
1266
|
shaka.net.NetworkingUtils.getMimeType=function(a,b,c){var d,e,f,g,h,k,l;return $jscomp.asyncExecutePromiseGeneratorProgram(function(m){switch(m.nextAddress){case 1:d=shaka.net.NetworkingUtils.getExtension_(a);if(e=shaka.net.NetworkingUtils.EXTENSIONS_TO_MIME_TYPES_[d])return m.return(e);f=shaka.net.NetworkingEngine.RequestType.MANIFEST;g=shaka.net.NetworkingEngine.makeRequest([a],c);m.setCatchFinallyBlocks(2);g.method="HEAD";return m.yield(b.request(f,g).promise,4);case 4:h=m.yieldResult;e=h.headers["content-type"];
|
|
1267
1267
|
m.leaveTryBlock(3);break;case 2:k=m.enterCatchBlock();if(!k||k.code!=shaka.util.Error.Code.HTTP_ERROR&&k.code!=shaka.util.Error.Code.BAD_HTTP_STATUS){m.jumpTo(3);break}g.method="GET";return m.yield(b.request(f,g).promise,6);case 6:l=m.yieldResult,e=l.headers["content-type"];case 3:return m.return(e?e.toLowerCase().split(";").shift():"")}})};shaka.net.NetworkingUtils.getExtension_=function(a){a=(new goog.Uri(a)).getPath().split("/").pop().split(".");return 1==a.length?"":a.pop().toLowerCase()};
|
|
1268
|
-
shaka.net.NetworkingUtils.EXTENSIONS_TO_MIME_TYPES_={mp4:"video/mp4",m4v:"video/mp4",m4a:"audio/mp4",webm:"video/webm",weba:"audio/webm",mkv:"video/webm",ts:"video/mp2t",ogv:"video/ogg",ogg:"audio/ogg",mpg:"video/mpeg",mpeg:"video/mpeg",m3u8:"application/x-mpegurl",mpd:"application/dash+xml",ism:"application/vnd.ms-sstr+xml",mp3:"audio/mpeg",aac:"audio/aac",flac:"audio/flac",wav:"audio/wav",sbv:"text/x-subviewer",srt:"text/srt",vtt:"text/vtt",webvtt:"text/vtt",ttml:"application/ttml+xml",
|
|
1269
|
-
ssa:"text/x-ssa",ass:"text/x-ssa",jpg:"image/jpeg",png:"image/png",svg:"image/svg+xml",webp:"image/webp",avif:"image/avif"};shaka.text.Utils=function(){};
|
|
1268
|
+
shaka.net.NetworkingUtils.EXTENSIONS_TO_MIME_TYPES_={mp4:"video/mp4",m4v:"video/mp4",m4a:"audio/mp4",webm:"video/webm",weba:"audio/webm",mkv:"video/webm",ts:"video/mp2t",ogv:"video/ogg",ogg:"audio/ogg",mpg:"video/mpeg",mpeg:"video/mpeg",mov:"video/quicktime",m3u8:"application/x-mpegurl",mpd:"application/dash+xml",ism:"application/vnd.ms-sstr+xml",mp3:"audio/mpeg",aac:"audio/aac",flac:"audio/flac",wav:"audio/wav",sbv:"text/x-subviewer",srt:"text/srt",vtt:"text/vtt",webvtt:"text/vtt",ttml:"application/ttml+xml",
|
|
1269
|
+
lrc:"application/x-subtitle-lrc",ssa:"text/x-ssa",ass:"text/x-ssa",jpg:"image/jpeg",png:"image/png",svg:"image/svg+xml",webp:"image/webp",avif:"image/avif"};shaka.text.Utils=function(){};
|
|
1270
1270
|
shaka.text.Utils.flattenPayload_=function(a,b){if(a.lineBreak)return"\n";if(a.nestedCues.length)return a.nestedCues.map(function(g){return shaka.text.Utils.flattenPayload_(g,a)}).join("");if(!a.payload)return a.payload;var c=[],d=a.fontWeight>=shaka.text.Cue.fontWeight.BOLD,e=a.fontStyle==shaka.text.Cue.fontStyle.ITALIC,f=a.textDecoration.includes(shaka.text.Cue.textDecoration.UNDERLINE);d&&c.push(["b"]);e&&c.push(["i"]);f&&c.push(["u"]);e=a.color;""==e&&b&&(e=b.color);d="";(e=shaka.text.Utils.getColorName_(e))&&
|
|
1271
1271
|
(d+="."+e);e=a.backgroundColor;""==e&&b&&(e=b.backgroundColor);(b=shaka.text.Utils.getColorName_(e))&&(d+=".bg_"+b);d&&c.push(["c",d]);return c.reduceRight(function(g,h){var k=$jscomp.makeIterator(h);h=k.next().value;k=k.next().value;return"<"+h+(void 0===k?"":k)+">"+g+"</"+h+">"},a.payload)};
|
|
1272
1272
|
shaka.text.Utils.getColorName_=function(a){a=a.toLowerCase();var b=a.replace(/\s/g,"").match(/^rgba?\((\d+),(\d+),(\d+),?([^,\s)]+)?/i);b?a="#"+(parseInt(b[1],10)|256).toString(16).slice(1)+(parseInt(b[2],10)|256).toString(16).slice(1)+(parseInt(b[3],10)|256).toString(16).slice(1):a.startsWith("#")&&7<a.length&&(a=a.slice(0,7));switch(a){case "white":case "#fff":case "#ffffff":return"white";case "lime":case "#0f0":case "#00ff00":return"lime";case "cyan":case "#0ff":case "#00ffff":return"cyan";case "red":case "#f00":case "#ff0000":return"red";
|
|
@@ -1624,8 +1624,8 @@ shaka.Player.getLanguageAndRolesFrom_=function(a){var b=new Map,c=new Map;a=$jsc
|
|
|
1624
1624
|
l){k=$jscomp.makeIterator(k);for(var m=k.next();!m.done;m=k.next()){m=m.value;var n=null;c.has(l)&&c.get(l).has(m)&&(n=c.get(l).get(m));h.push({language:l,role:m,label:n})}});return h};
|
|
1625
1625
|
shaka.Player.prototype.isBufferedToEndMS_=function(){goog.asserts.assert(this.video_,"We need a video element to get buffering information");goog.asserts.assert(this.mediaSourceEngine_,"We need a media source engine to get buffering information");goog.asserts.assert(this.manifest_,"We need a manifest to get buffering information");if(this.isEnded()||this.mediaSourceEngine_.ended())return!0;if(this.manifest_.presentationTimeline.isLive()){var a=this.manifest_.presentationTimeline.getSegmentAvailabilityEnd(),
|
|
1626
1626
|
b=shaka.media.TimeRangesUtils.bufferEnd(this.video_.buffered);if(null!=b&&b>=a)return!0}return!1};shaka.Player.prototype.isBufferedToEndSrc_=function(){goog.asserts.assert(this.video_,"We need a video element to get buffering information");if(this.isEnded())return!0;var a=shaka.media.TimeRangesUtils.bufferEnd(this.video_.buffered);return null!=a&&a>=this.video_.duration-1};
|
|
1627
|
-
shaka.Player.prototype.createAbortLoadError_=function(){return new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.PLAYER,shaka.util.Error.Code.LOAD_INTERRUPTED)};shaka.Player.prototype.isRemotePlayback=function(){return this.video_&&this.video_.remote?"disconnected"!=this.video_.remote.state:!1};shaka.Player.prototype.isEnded=function(){return!this.video_||this.video_.ended?!0:this.video_.currentTime>=this.seekRange().end};
|
|
1628
|
-
goog.exportProperty(shaka.Player.prototype,"isEnded",shaka.Player.prototype.isEnded);goog.exportProperty(shaka.Player.prototype,"isRemotePlayback",shaka.Player.prototype.isRemotePlayback);goog.exportProperty(shaka.Player.prototype,"addFont",shaka.Player.prototype.addFont);goog.exportProperty(shaka.Player.prototype,"setVideoContainer",shaka.Player.prototype.setVideoContainer);goog.exportProperty(shaka.Player.prototype,"getFetchedPlaybackInfo",shaka.Player.prototype.getFetchedPlaybackInfo);
|
|
1627
|
+
shaka.Player.prototype.createAbortLoadError_=function(){return new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.PLAYER,shaka.util.Error.Code.LOAD_INTERRUPTED)};shaka.Player.prototype.isRemotePlayback=function(){return this.video_&&this.video_.remote?"disconnected"!=this.video_.remote.state:!1};shaka.Player.prototype.isEnded=function(){return!this.video_||this.video_.ended?!0:this.fullyLoaded_&&!this.isLive()&&this.video_.currentTime>=this.seekRange().end};
|
|
1628
|
+
goog.exportSymbol("shaka.Player",shaka.Player);goog.exportProperty(shaka.Player.prototype,"isEnded",shaka.Player.prototype.isEnded);goog.exportProperty(shaka.Player.prototype,"isRemotePlayback",shaka.Player.prototype.isRemotePlayback);goog.exportProperty(shaka.Player.prototype,"addFont",shaka.Player.prototype.addFont);goog.exportProperty(shaka.Player.prototype,"setVideoContainer",shaka.Player.prototype.setVideoContainer);goog.exportProperty(shaka.Player.prototype,"getFetchedPlaybackInfo",shaka.Player.prototype.getFetchedPlaybackInfo);
|
|
1629
1629
|
goog.exportProperty(shaka.Player.prototype,"getManifestParserFactory",shaka.Player.prototype.getManifestParserFactory);goog.exportProperty(shaka.Player.prototype,"getManifest",shaka.Player.prototype.getManifest);goog.exportProperty(shaka.Player.prototype,"retryStreaming",shaka.Player.prototype.retryStreaming);goog.exportProperty(shaka.Player.prototype,"setMaxHardwareResolution",shaka.Player.prototype.setMaxHardwareResolution);goog.exportProperty(shaka.Player.prototype,"addChaptersTrack",shaka.Player.prototype.addChaptersTrack);
|
|
1630
1630
|
goog.exportProperty(shaka.Player.prototype,"addThumbnailsTrack",shaka.Player.prototype.addThumbnailsTrack);goog.exportProperty(shaka.Player.prototype,"addTextTrackAsync",shaka.Player.prototype.addTextTrackAsync);goog.exportProperty(shaka.Player.prototype,"getStats",shaka.Player.prototype.getStats);goog.exportProperty(shaka.Player.prototype,"getBufferedInfo",shaka.Player.prototype.getBufferedInfo);goog.exportProperty(shaka.Player.prototype,"getSegmentAvailabilityDuration",shaka.Player.prototype.getSegmentAvailabilityDuration);
|
|
1631
1631
|
goog.exportProperty(shaka.Player.prototype,"getPresentationStartTimeAsDate",shaka.Player.prototype.getPresentationStartTimeAsDate);goog.exportProperty(shaka.Player.prototype,"getPlayheadTimeAsDate",shaka.Player.prototype.getPlayheadTimeAsDate);goog.exportProperty(shaka.Player.prototype,"setTextTrackVisibility",shaka.Player.prototype.setTextTrackVisibility);goog.exportProperty(shaka.Player.prototype,"getChapters",shaka.Player.prototype.getChapters);
|
|
@@ -1640,7 +1640,7 @@ goog.exportProperty(shaka.Player.prototype,"getMediaElement",shaka.Player.protot
|
|
|
1640
1640
|
goog.exportProperty(shaka.Player.prototype,"getNonDefaultConfiguration",shaka.Player.prototype.getNonDefaultConfiguration);goog.exportProperty(shaka.Player.prototype,"getConfiguration",shaka.Player.prototype.getConfiguration);goog.exportProperty(shaka.Player.prototype,"configure",shaka.Player.prototype.configure);goog.exportProperty(shaka.Player.prototype,"releaseAllMutexes",shaka.Player.prototype.releaseAllMutexes);goog.exportProperty(shaka.Player.prototype,"destroyAllPreloads",shaka.Player.prototype.destroyAllPreloads);
|
|
1641
1641
|
goog.exportProperty(shaka.Player.prototype,"preload",shaka.Player.prototype.preload);goog.exportProperty(shaka.Player.prototype,"detachAndSavePreload",shaka.Player.prototype.detachAndSavePreload);goog.exportProperty(shaka.Player.prototype,"unloadAndSavePreload",shaka.Player.prototype.unloadAndSavePreload);goog.exportProperty(shaka.Player.prototype,"load",shaka.Player.prototype.load);goog.exportProperty(shaka.Player.prototype,"updateStartTime",shaka.Player.prototype.updateStartTime);
|
|
1642
1642
|
goog.exportProperty(shaka.Player.prototype,"unload",shaka.Player.prototype.unload);goog.exportProperty(shaka.Player.prototype,"detach",shaka.Player.prototype.detach);goog.exportProperty(shaka.Player.prototype,"attachCanvas",shaka.Player.prototype.attachCanvas);goog.exportProperty(shaka.Player.prototype,"attach",shaka.Player.prototype.attach);goog.exportProperty(shaka.Player,"probeSupport",shaka.Player.probeSupport);goog.exportProperty(shaka.Player,"isBrowserSupported",shaka.Player.isBrowserSupported);
|
|
1643
|
-
goog.exportProperty(shaka.Player,"setAdManagerFactory",shaka.Player.setAdManagerFactory);goog.exportProperty(shaka.Player,"registerSupportPlugin",shaka.Player.registerSupportPlugin);goog.exportProperty(shaka.Player.prototype,"destroy",shaka.Player.prototype.destroy);shaka.Player.LoadMode={DESTROYED:0,NOT_LOADED:1,MEDIA_SOURCE:2,SRC_EQUALS:3};goog.exportProperty(shaka.Player,"LoadMode",shaka.Player.LoadMode);shaka.Player.TYPICAL_BUFFERING_THRESHOLD_=.5;shaka.Player.version="v4.12.
|
|
1643
|
+
goog.exportProperty(shaka.Player,"setAdManagerFactory",shaka.Player.setAdManagerFactory);goog.exportProperty(shaka.Player,"registerSupportPlugin",shaka.Player.registerSupportPlugin);goog.exportProperty(shaka.Player.prototype,"destroy",shaka.Player.prototype.destroy);shaka.Player.LoadMode={DESTROYED:0,NOT_LOADED:1,MEDIA_SOURCE:2,SRC_EQUALS:3};goog.exportProperty(shaka.Player,"LoadMode",shaka.Player.LoadMode);shaka.Player.TYPICAL_BUFFERING_THRESHOLD_=.5;shaka.Player.version="v4.12.8-debug";
|
|
1644
1644
|
goog.exportProperty(shaka.Player,"version",shaka.Player.version);shaka.Deprecate.init(shaka.Player.version);shaka.Player.supportPlugins_={};shaka.Player.adManagerFactory_=null;shaka.Player.TextTrackLabel="Shaka Player TextTrack";shaka.ads={};shaka.ads.AdsStats=function(){this.loadTimes_=[];this.errors_=this.skipped_=this.playedCompletely_=this.started_=0};shaka.ads.AdsStats.prototype.addLoadTime=function(a){this.loadTimes_.push(a)};shaka.ads.AdsStats.prototype.incrementStarted=function(){this.started_++};shaka.ads.AdsStats.prototype.incrementPlayedCompletely=function(){this.playedCompletely_++};shaka.ads.AdsStats.prototype.incrementSkipped=function(){this.skipped_++};shaka.ads.AdsStats.prototype.incrementErrors=function(){this.errors_++};
|
|
1645
1645
|
shaka.ads.AdsStats.prototype.getAverageLoadTime_=function(){return this.loadTimes_.length?this.loadTimes_.reduce(function(a,b){return a+b},0)/this.loadTimes_.length:0};shaka.ads.AdsStats.prototype.getBlob=function(){return{loadTimes:this.loadTimes_,averageLoadTime:this.getAverageLoadTime_(),started:this.started_,playedCompletely:this.playedCompletely_,skipped:this.skipped_,errors:this.errors_}};shaka.ads.ClientSideAd=function(a,b,c){var d=this;this.ad_=a;this.manager_=b;this.video_=c;this.isPaused_=!1;this.volume_=this.manager_.getVolume();this.eventManager_=new shaka.util.EventManager;this.eventManager_.listen(this.manager_,google.ima.AdEvent.Type.PAUSED,function(){d.isPaused_=!0});this.eventManager_.listen(this.manager_,google.ima.AdEvent.Type.RESUMED,function(){d.isPaused_=!1})};shaka.ads.ClientSideAd.prototype.needsSkipUI=function(){return!1};
|
|
1646
1646
|
shaka.ads.ClientSideAd.prototype.isClientRendering=function(){return!0};shaka.ads.ClientSideAd.prototype.isUsingAnotherMediaElement=function(){return!0};shaka.ads.ClientSideAd.prototype.getDuration=function(){return this.ad_.getDuration()};shaka.ads.ClientSideAd.prototype.getMinSuggestedDuration=function(){return this.ad_.getMinSuggestedDuration()};shaka.ads.ClientSideAd.prototype.getRemainingTime=function(){return this.manager_.getRemainingTime()};shaka.ads.ClientSideAd.prototype.isPaused=function(){return this.isPaused_};
|
|
@@ -1738,12 +1738,12 @@ f.adEventManager_.listenOnce(f.player_,"thirdquartile",function(){n();f.onEvent_
|
|
|
1738
1738
|
f.adEventManager_.listen(f.video_,"volumechange",function(){if(f.video_.muted)f.onEvent_(new shaka.util.FakeEvent(shaka.ads.Utils.AD_MUTED));else f.onEvent_(new shaka.util.FakeEvent(shaka.ads.Utils.AD_VOLUME_CHANGED))});C.setCatchFinallyBlocks(4);f.updatePlayerConfig_();a.startTime&&a.endTime&&Infinity!=a.endTime&&a.startTime!=a.endTime&&(w=a.endTime-a.startTime,0<w&&f.player_.configure("playRangeEnd",w));a.playoutLimit&&(m=(new shaka.util.Timer(function(){u.skip()})).tickAfter(a.playoutLimit),f.player_.configure("playRangeEnd",
|
|
1739
1739
|
a.playoutLimit));return C.yield(f.player_.attach(f.video_),6);case 6:return f.preloadManagerInterstitials_.has(a)?C.yield(f.preloadManagerInterstitials_.get(a),10):C.yield(f.player_.load(a.uri,null,a.mimeType||void 0),8);case 10:return x=C.yieldResult,f.preloadManagerInterstitials_.delete(a),x?C.yield(f.player_.load(x),8):C.yield(f.player_.load(a.uri,null,a.mimeType||void 0),8);case 8:a.playoutLimit&&(m&&m.stop(),m=(new shaka.util.Timer(function(){u.skip()})).tickAfter(a.playoutLimit));z=(Date.now()-
|
|
1740
1740
|
g)/1E3;f.onEvent_(new shaka.util.FakeEvent(shaka.ads.Utils.ADS_LOADED,(new Map).set("loadTime",z)));f.usingBaseVideo_&&f.baseVideo_.play();C.leaveTryBlock(0);break;case 4:B=C.enterCatchBlock(),q(B),C.jumpToEnd()}})};
|
|
1741
|
-
shaka.ads.InterstitialAdManager.prototype.getInterstitialsInfo_=function(a){var b=this,c,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,
|
|
1741
|
+
shaka.ads.InterstitialAdManager.prototype.getInterstitialsInfo_=function(a){var b=this,c,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,U,P,Y;return $jscomp.asyncExecutePromiseGeneratorProgram(function(V){switch(V.nextAddress){case 1:c=[];if(!a)return V.return(c);d=a.values.find(function(W){return"X-ASSET-URI"==W.key});e=a.values.find(function(W){return"X-ASSET-LIST"==W.key});if(!d&&!e)return V.return(c);f=null;if(g=a.values.find(function(W){return"ID"==W.key}))f=g.data;
|
|
1742
1742
|
h=null==f?Math.floor(10*a.startTime)/10:a.startTime;(k=a.endTime)&&Infinity!=a.endTime&&"number"==typeof a.endTime&&(k=null==f?Math.floor(10*a.endTime)/10:a.endTime);l=a.values.find(function(W){return"X-RESTRICT"==W.key});n=m=!0;l&&l.data&&(p=l.data,m=!p.includes("SKIP"),n=!p.includes("JUMP"));q=m?0:null;if(r=a.values.find(function(W){return"X-ENABLE-SKIP-AFTER"==W.key}))t=r.data,q=parseFloat(t),isNaN(q)&&(q=m?0:null);u=null;if(v=a.values.find(function(W){return"X-ENABLE-SKIP-FOR"==W.key}))w=v.data,
|
|
1743
1743
|
u=parseFloat(w),isNaN(q)&&(u=null);x=null;if(z=a.values.find(function(W){return"X-RESUME-OFFSET"==W.key}))B=z.data,x=parseFloat(B),isNaN(x)&&(x=null);C=null;if(y=a.values.find(function(W){return"X-PLAYOUT-LIMIT"==W.key}))A=y.data,C=parseFloat(A),isNaN(C)&&(C=null);G=H=D=!1;if(F=a.values.find(function(W){return"CUE"==W.key}))E=F.data,D=E.includes("ONCE"),H=E.includes("PRE"),G=E.includes("POST");I=!1;(K=a.values.find(function(W){return"X-TIMELINE-OCCUPIES"==W.key}))?(M=K.data,I=M.includes("RANGE")):
|
|
1744
|
-
!z&&b.basePlayer_.isLive()&&(I=!H&&!G);if(d){L=d.data;if(!L)return
|
|
1745
|
-
shaka.util.StringUtils.fromUTF8(N);R=JSON.parse(T);if(S=R["SKIP-CONTROL"])X=S["ENABLE-SKIP-AFTER"],"number"==typeof X&&(q=parseFloat(X),isNaN(X)&&(q=m?0:null)),
|
|
1746
|
-
case 4:
|
|
1744
|
+
!z&&b.basePlayer_.isLive()&&(I=!H&&!G);if(d){L=d.data;if(!L)return V.return(c);c.push({id:f,startTime:h,endTime:k,uri:L,mimeType:null,isSkippable:m,skipOffset:q,skipFor:u,canJump:n,resumeOffset:x,playoutLimit:C,once:D,pre:H,post:G,timelineRange:I});V.jumpTo(2);break}if(!e){V.jumpTo(2);break}J=e.data;if(!J)return V.return(c);V.setCatchFinallyBlocks(4);O=shaka.net.NetworkingEngine;Q={type:O.AdvancedRequestType.INTERSTITIAL_ASSET_LIST};return V.yield(b.makeAdRequest_(J,Q),6);case 6:N=V.yieldResult;T=
|
|
1745
|
+
shaka.util.StringUtils.fromUTF8(N);R=JSON.parse(T);if(S=R["SKIP-CONTROL"])X=S["ENABLE-SKIP-AFTER"],"number"==typeof X&&(q=parseFloat(X),isNaN(X)&&(q=m?0:null)),U=S["ENABLE-SKIP-FOR"],"number"==typeof U&&(u=parseFloat(U),isNaN(U)&&(u=null));for(P=0;P<R.ASSETS.length;P++)Y=R.ASSETS[P],Y.URI&&c.push({id:f+"_asset_"+P,startTime:h,endTime:k,uri:Y.URI,mimeType:null,isSkippable:m,skipOffset:q,skipFor:u,canJump:n,resumeOffset:x,playoutLimit:C,once:D,pre:H,post:G,timelineRange:I});V.leaveTryBlock(2);break;
|
|
1746
|
+
case 4:V.enterCatchBlock();case 2:return V.return(c)}})};
|
|
1747
1747
|
shaka.ads.InterstitialAdManager.prototype.cuepointsChanged_=function(){for(var a=[],b=$jscomp.makeIterator(this.interstitials_),c=b.next(),d={};!c.done;d={shakaCuePoint$jscomp$1:void 0},c=b.next())c=c.value,d.shakaCuePoint$jscomp$1={start:c.startTime,end:null},c.pre?(d.shakaCuePoint$jscomp$1.start=0,d.shakaCuePoint$jscomp$1.end=null):c.post?(d.shakaCuePoint$jscomp$1.start=-1,d.shakaCuePoint$jscomp$1.end=null):c.timelineRange&&(d.shakaCuePoint$jscomp$1.end=c.endTime),a.find(function(e){return function(f){return e.shakaCuePoint$jscomp$1.start==
|
|
1748
1748
|
f.start&&e.shakaCuePoint$jscomp$1.end==f.end}}(d))||a.push(d.shakaCuePoint$jscomp$1);this.onEvent_(new shaka.util.FakeEvent(shaka.ads.Utils.CUEPOINTS_CHANGED,(new Map).set("cuepoints",a)))};
|
|
1749
1749
|
shaka.ads.InterstitialAdManager.prototype.updatePlayerConfig_=function(){goog.asserts.assert(this.player_,"Must have player");goog.asserts.assert(this.basePlayer_,"Must have base player");this.player_.configure(this.basePlayer_.getNonDefaultConfiguration());this.player_.configure("ads.disableHLSInterstitial",!0);this.player_.configure("ads.disableDASHInterstitial",!0);var a=this.player_.getNetworkingEngine();goog.asserts.assert(a,"Need networking engine");a.clearAllRequestFilters();a.clearAllResponseFilters();
|
|
@@ -2156,8 +2156,8 @@ shaka.dash.SegmentTemplate.generateSegmentIndexFromIndexTemplate_=function(a,b,c
|
|
|
2156
2156
|
shaka.dash.SegmentTemplate.generateSegmentIndexFromDuration_=function(a,b,c,d,e,f,g,h){goog.asserts.assert(b.mediaTemplate,"There should be a media template with duration");var k=shaka.dash.MpdUtils,l=shaka.util.ManifestParserUtils,m=a.presentationTimeline,n=a.periodInfo.start,p=a.period.id,q=a.periodInfo.duration,r=function(){var I=null!=p&&e[p]||q;return I?n+I:Infinity},t=b.segmentDuration;goog.asserts.assert(null!=t,"Segment duration must not be null!");var u=b.startNumber,v=b.mediaTemplate,w=
|
|
2157
2157
|
a.bandwidth||null,x=a.representation.id,z=a.representation.getBaseUris,B=a.urlParams,C=n-b.scaledPresentationTimeOffset,y=function(){var I=[Math.max(m.getSegmentAvailabilityStart(),n),Math.min(m.getSegmentAvailabilityEnd(),r())];goog.asserts.assert(I.every(isFinite),"Available presentation times must be finite!");goog.asserts.assert(I.every(function(K){return 0<=K}),"Available presentation times must be positive!");goog.asserts.assert(null!=t,"Segment duration must not be null!");I=I.map(function(K){return K-
|
|
2158
2158
|
n});I=[Math.ceil(I[0]/t),Math.ceil(I[1]/t)-1];a.representation.availabilityTimeOffset&&I[1]++;return I.map(function(K){return K+u})},A=y();c=a.dynamic?Math.max(A[0],A[1]-c+1):A[0];g=g||A[1];A=[];var D=function(I){goog.asserts.assert(null!=t,"Segment duration must not be null!");var K=I-u,M=K*t,L=b.unscaledSegmentDuration;goog.asserts.assert(null!=L,"Segment duration must not be null!");var J=K*L;"BigInt"in window&&J>Number.MAX_SAFE_INTEGER&&(J=BigInt(K)*BigInt(L));M+=n;K=M+t;L=Math.min(K,r());goog.asserts.assert(M<
|
|
2159
|
-
L,"Generated a segment outside of the period!");var O=[],Q=b.numChunks;if(Q)for(var N=(L-M)/Q,T={},R=0;R<Q;T={subNumber$jscomp$1:void 0},R++){var S=M+N*R,X=S+N;T.subNumber$jscomp$1=R+1;T=function(
|
|
2160
|
-
0==h?0<R&&S.markAsNonIndependent():0!=R%h&&S.markAsNonIndependent();O.push(S)}M=new shaka.media.SegmentReference(M,L,function(){if(Q)return[];var
|
|
2159
|
+
L,"Generated a segment outside of the period!");var O=[],Q=b.numChunks;if(Q)for(var N=(L-M)/Q,T={},R=0;R<Q;T={subNumber$jscomp$1:void 0},R++){var S=M+N*R,X=S+N;T.subNumber$jscomp$1=R+1;T=function(U){return function(){var P=k.fillUriTemplate(v,x,I,U.subNumber$jscomp$1,w,J);return l.resolveUris(z(),[P],B())}}(T);S=new shaka.media.SegmentReference(S,X,T,0,null,d,C,n,r(),[],"",null,null,shaka.media.SegmentReference.Status.AVAILABLE,f);S.codecs=a.representation.codecs;S.mimeType=a.representation.mimeType;
|
|
2160
|
+
0==h?0<R&&S.markAsNonIndependent():0!=R%h&&S.markAsNonIndependent();O.push(S)}M=new shaka.media.SegmentReference(M,L,function(){if(Q)return[];var U=k.fillUriTemplate(v,x,I,null,w,J);return l.resolveUris(z(),[U],B())},0,null,d,C,n,r(),O,"",null,null,shaka.media.SegmentReference.Status.AVAILABLE,f,0<O.length);M.codecs=a.representation.codecs;M.mimeType=a.representation.mimeType;M.bandwidth=a.bandwidth;M.trueEndTime=K;return M},H=c;for(;H<=g;++H){var G=D(H);A.push(G)}var F=new shaka.media.SegmentIndex(A);
|
|
2161
2161
|
A=m.getSegmentAvailabilityEnd()<r();H=m.isLive();if(A||H){var E=Math.max(c,g+1);c=t;a.representation.availabilityTimeOffset&&(c=.1);F.updateEvery(c,function(){var I=m.getSegmentAvailabilityStart();F.evict(I);var K=$jscomp.makeIterator(y());K.next();K=K.next().value;for(var M=[];E<=K;){var L=D(E);M.push(L);E++}return I>r()&&!M.length?null:M})}return Promise.resolve(F)};
|
|
2162
2162
|
shaka.dash.SegmentTemplate.createInitSegment_=function(a,b){var c=shaka.dash.MpdUtils,d=shaka.util.ManifestParserUtils,e=shaka.dash.SegmentTemplate,f=a.representation.initialization;f||(f=c.inheritAttribute(a,e.fromInheritance_,"initialization"));if(!f)return null;f=shaka.util.StringUtils.htmlUnescape(f);var g=a.representation.id,h=a.bandwidth||null,k=a.representation.getBaseUris,l=a.urlParams;e=shaka.dash.SegmentBase.createQualityInfo(a);b=new shaka.media.InitSegmentReference(function(){goog.asserts.assert(f,
|
|
2163
2163
|
"Should have returned earler");var m=c.fillUriTemplate(f,g,null,null,h,null);return d.resolveUris(k(),[m],l())},0,null,e,null,null,b);b.codecs=a.representation.codecs;b.mimeType=a.representation.mimeType;return b};
|
|
@@ -2261,18 +2261,18 @@ p);return q.return(p)})};
|
|
|
2261
2261
|
shaka.dash.DashParser.prototype.parseManifest_=function(a,b,c){var d=this,e,f,g,h,k,l,m,n,p,q,r;return $jscomp.asyncExecutePromiseGeneratorProgram(function(t){if(1==t.nextAddress){e=a;f=d.config_.dash.manifestPreprocessor;g=shaka.util.PlayerConfiguration.defaultManifestPreprocessor;if(f!=g){shaka.Deprecate.deprecateFeature(5,"manifest.dash.manifestPreprocessor configuration","Please Use manifest.dash.manifestPreprocessorTXml instead.");h=shaka.util.XmlUtils.parseXml(e,c);if(!h)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,
|
|
2262
2262
|
shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.DASH_INVALID_XML,b);f(h);e=shaka.util.XmlUtils.toArrayBuffer(h)}k=shaka.util.TXml.parseXml(e,c);if(!k)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.DASH_INVALID_XML,b);l=d.config_.dash.manifestPreprocessorTXml;m=shaka.util.PlayerConfiguration.defaultManifestPreprocessorTXml;l!=m&&l(k);if("Patch"===c)return t.return(d.processPatchManifest_(k));if(n=d.config_.dash.disableXlinkProcessing)return t.return(d.processManifest_(k,
|
|
2263
2263
|
b));p=d.config_.dash.xlinkFailGracefully;q=shaka.dash.MpdUtils.processXlinks(k,d.config_.retryParameters,p,b,d.playerInterface_.networkingEngine);d.operationManager_.manage(q);return t.yield(q.promise,2)}r=t.yieldResult;return t.return(d.processManifest_(r,b))})};
|
|
2264
|
-
shaka.dash.DashParser.prototype.processManifest_=function(a,b){var c=this,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,
|
|
2264
|
+
shaka.dash.DashParser.prototype.processManifest_=function(a,b){var c=this,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,U,P,Y,V,W,ba,ca,Z,fa,ha,ia,ea,ja,da,oa,ka,la,ma,na;return $jscomp.asyncExecutePromiseGeneratorProgram(function(aa){switch(aa.nextAddress){case 1:d=shaka.util.TXml;goog.asserts.assert(c.config_,"Must call configure() before processManifest_()!");c.contentSteeringManager_&&c.contentSteeringManager_.clearPreviousLocations();e=[b];f=[];g=new Map;h=d.findChildren(a,
|
|
2265
2265
|
"Location");k=$jscomp.makeIterator(h);for(l=k.next();!l.done;l=k.next())if(m=l.value,n=m.attributes.serviceLocation,p=d.getContents(m))q=shaka.util.ManifestParserUtils.resolveUris(e,[p])[0],n&&(c.contentSteeringManager_?c.contentSteeringManager_.addLocation("Location",n,q):g.set(n,q)),f.push(q);c.contentSteeringManager_?(r=c.contentSteeringManager_.getLocations("Location",!0),0<r.length&&(e=c.manifestUris_=r)):f.length&&(e=c.manifestUris_=f);c.manifestPatchContext_.mpdId=a.attributes.id||"";c.manifestPatchContext_.publishTime=
|
|
2266
2266
|
d.parseAttr(a,"publishTime",d.parseDate)||0;c.patchLocationNodes_=d.findChildren(a,"PatchLocation");t=Promise.resolve();if((u=d.findChild(a,"ContentSteering"))&&c.playerInterface_){v=u.attributes.defaultServiceLocation;if(c.contentSteeringManager_)c.contentSteeringManager_.setBaseUris(e),c.contentSteeringManager_.setDefaultPathwayId(v);else if(c.contentSteeringManager_=new shaka.util.ContentSteeringManager(c.playerInterface_),c.contentSteeringManager_.configure(c.config_),c.contentSteeringManager_.setManifestType(shaka.media.ManifestParser.DASH),
|
|
2267
2267
|
c.contentSteeringManager_.setBaseUris(e),c.contentSteeringManager_.setDefaultPathwayId(v),w=d.getContents(u))(x=d.parseAttr(u,"queryBeforeStart",d.parseBoolean,!1))?t=c.contentSteeringManager_.requestInfo(w):c.contentSteeringManager_.requestInfo(w);z=$jscomp.makeIterator(g.keys());for(B=z.next();!B.done;B=z.next())C=B.value,y=g.get(C),c.contentSteeringManager_.addLocation("Location",C,y)}A=d.findChildren(a,"BaseURL");D=!1;if(c.contentSteeringManager_)for(H=$jscomp.makeIterator(A),G=H.next();!G.done;G=
|
|
2268
2268
|
H.next())F=G.value,E=F.attributes.serviceLocation,I=d.getContents(F),E&&I&&(c.contentSteeringManager_.addLocation("BaseURL",E,I),D=!0);c.lastCalculatedBaseUris_=null;D&&c.contentSteeringManager_||(K=A.map(d.getContents),c.lastCalculatedBaseUris_=shaka.util.ManifestParserUtils.resolveUris(e,K));M=function(){return c.contentSteeringManager_&&D?c.contentSteeringManager_.getLocations("BaseURL"):c.lastCalculatedBaseUris_?c.lastCalculatedBaseUris_:[]};c.manifestPatchContext_.getBaseUris=M;L=0;A&&A.length&&
|
|
2269
2269
|
(L=d.parseAttr(A[0],"availabilityTimeOffset",d.parseFloat)||0);c.manifestPatchContext_.availabilityTimeOffset=L;J=c.config_.dash.ignoreMinBufferTime;O=0;J||(O=d.parseAttr(a,"minBufferTime",d.parseDuration)||0);c.updatePeriod_=d.parseAttr(a,"minimumUpdatePeriod",d.parseDuration,-1);Q=d.parseAttr(a,"availabilityStartTime",d.parseDate);N=d.parseAttr(a,"timeShiftBufferDepth",d.parseDuration);T=c.config_.dash.ignoreSuggestedPresentationDelay;R=null;T||(R=d.parseAttr(a,"suggestedPresentationDelay",d.parseDuration));
|
|
2270
|
-
S=c.config_.dash.ignoreMaxSegmentDuration;X=null;S||(X=d.parseAttr(a,"maxSegmentDuration",d.parseDuration));
|
|
2271
|
-
else
|
|
2272
|
-
bandwidth:0,indexRangeWarningGiven:!1,availabilityTimeOffset:L,mediaPresentationDuration:null,profiles:
|
|
2273
|
-
c.lowLatencyMode_&&P.setAvailabilityTimeOffset(c.minTotalAvailabilityTimeOffset_);P.notifyMaxSegmentDuration(X||1);goog.DEBUG&&!c.isTransitionFromDynamicToStatic_&&P.assertIsValid();return aa.yield(t,2);case 2:c.lowLatencyMode_&&(O=0,
|
|
2274
|
-
{presentationTimeline:P,variants:c.periodCombiner_.getVariants(),textStreams:c.periodCombiner_.getTextStreams(),imageStreams:c.periodCombiner_.getImageStreams(),offlineSessionIds:[],minBufferTime:O||0,sequenceMode:c.config_.dash.sequenceMode,ignoreManifestTimestampsInSegmentsMode:!1,type:shaka.media.ManifestParser.DASH,serviceDescription:c.parseServiceDescription_(a),nextUrl:c.parseMpdChaining_(a),periodCount:
|
|
2275
|
-
break}
|
|
2270
|
+
S=c.config_.dash.ignoreMaxSegmentDuration;X=null;S||(X=d.parseAttr(a,"maxSegmentDuration",d.parseDuration));U=a.attributes.type||"static";c.manifest_&&c.manifest_.presentationTimeline&&(c.isTransitionFromDynamicToStatic_=c.manifest_.presentationTimeline.isLive()&&"static"==U);c.manifestPatchContext_.type=U;if(c.manifest_)for(P=c.manifest_.presentationTimeline,Y=P.getSegmentAvailabilityStart(),V=$jscomp.makeIterator(Object.values(c.streamMap_)),W=V.next();!W.done;W=V.next())ba=W.value,ba.segmentIndex&&
|
|
2271
|
+
ba.segmentIndex.evict(Y);else ca=c.config_.defaultPresentationDelay||1.5*O,Z=null!=R?R:ca,P=new shaka.media.PresentationTimeline(Q,Z,c.config_.dash.autoCorrectDrift);P.setStatic("static"==U);(fa=P.isLive())&&!isNaN(c.config_.availabilityWindowOverride)&&(N=c.config_.availabilityWindowOverride);null==N&&(N=Infinity);P.setSegmentAvailabilityDuration(N);ha=a.attributes.profiles||"";c.manifestPatchContext_.profiles=ha.split(",");ia={dynamic:"static"!=U,presentationTimeline:P,period:null,periodInfo:null,
|
|
2272
|
+
adaptationSet:null,representation:null,bandwidth:0,indexRangeWarningGiven:!1,availabilityTimeOffset:L,mediaPresentationDuration:null,profiles:ha.split(","),roles:null,urlParams:function(){return""}};c.gapCount_=0;ea=c.parsePeriods_(ia,M,a,!1);ja=ea.duration;da=ea.periods;("static"!=U||c.isTransitionFromDynamicToStatic_)&&ea.durationDerivedFromPeriods||P.setDuration(ja||Infinity);c.isLowLatency_&&!c.lowLatencyMode_&&(oa=c.playerInterface_.isAutoLowLatencyMode())&&(c.playerInterface_.enableLowLatencyMode(),
|
|
2273
|
+
c.lowLatencyMode_=c.playerInterface_.isLowLatencyMode());c.lowLatencyMode_&&P.setAvailabilityTimeOffset(c.minTotalAvailabilityTimeOffset_);P.notifyMaxSegmentDuration(X||1);goog.DEBUG&&!c.isTransitionFromDynamicToStatic_&&P.assertIsValid();return aa.yield(t,2);case 2:c.lowLatencyMode_&&(O=0,ka=null!=R?R:c.config_.defaultPresentationDelay,P.setDelay(ka));if(!c.manifest_)return aa.yield(c.periodCombiner_.combinePeriods(da,ia.dynamic),6);c.manifest_.periodCount=da.length;c.manifest_.gapCount=c.gapCount_;
|
|
2274
|
+
return aa.yield(c.postPeriodProcessing_(da,!1),4);case 6:c.manifest_={presentationTimeline:P,variants:c.periodCombiner_.getVariants(),textStreams:c.periodCombiner_.getTextStreams(),imageStreams:c.periodCombiner_.getImageStreams(),offlineSessionIds:[],minBufferTime:O||0,sequenceMode:c.config_.dash.sequenceMode,ignoreManifestTimestampsInSegmentsMode:!1,type:shaka.media.ManifestParser.DASH,serviceDescription:c.parseServiceDescription_(a),nextUrl:c.parseMpdChaining_(a),periodCount:da.length,gapCount:c.gapCount_,
|
|
2275
|
+
isLowLatency:c.isLowLatency_,startTime:null};if(!P.usingPresentationStartTime()){aa.jumpTo(7);break}la=shaka.util.TXml;ma=la.findChildren(a,"UTCTiming");return aa.yield(c.parseUtcTiming_(M,ma),8);case 8:na=aa.yieldResult;if(!c.playerInterface_)return aa.return();P.setClockOffset(na);case 7:P.lockStartTime();case 4:c.playerInterface_.makeTextStreamsForClosedCaptions(c.manifest_),c.cleanStreamMap_(),aa.jumpToEnd()}})};
|
|
2276
2276
|
shaka.dash.DashParser.prototype.postPeriodProcessing_=function(a,b){var c=this,d;return $jscomp.asyncExecutePromiseGeneratorProgram(function(e){if(1==e.nextAddress)return e.yield(c.periodCombiner_.combinePeriods(a,!0,b),2);c.manifest_.variants=c.periodCombiner_.getVariants();d=c.periodCombiner_.getTextStreams();0<d.length&&(c.manifest_.textStreams=d);c.manifest_.imageStreams=c.periodCombiner_.getImageStreams();c.playerInterface_.filter(c.manifest_);e.jumpToEnd()})};
|
|
2277
2277
|
shaka.dash.DashParser.prototype.processPatchManifest_=function(a){var b=this,c,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G,F,E,I;return $jscomp.asyncExecutePromiseGeneratorProgram(function(K){if(1==K.nextAddress){c=shaka.util.TXml;d=a.attributes.mpdId;e=c.parseAttr(a,"originalPublishTime",c.parseDate);if(!d||d!==b.manifestPatchContext_.mpdId||e!==b.manifestPatchContext_.publishTime)throw b.patchLocationNodes_=[],new shaka.util.Error(shaka.util.Error.Severity.RECOVERABLE,shaka.util.Error.Category.MANIFEST,
|
|
2278
2278
|
shaka.util.Error.Code.DASH_INVALID_PATCH);f=[];g=[];h=new Set;k=$jscomp.makeIterator(c.getChildNodes(a));for(l=k.next();!l.done;l=k.next()){m=l.value;n=!0;p=c.parseXpath(m.attributes.sel||"");q=p[p.length-1];r=c.getContents(m)||"";if("MPD"===q.name)"mediaPresentationDuration"===q.attribute?(t=c.getContents(m)||"",b.parsePatchMediaPresentationDurationChange_(t)):"type"===q.attribute?b.parsePatchMpdTypeChange_(r):"publishTime"===q.attribute?b.manifestPatchContext_.publishTime=c.parseDate(r)||0:null===
|
|
@@ -2369,7 +2369,7 @@ shaka.util.Error.Code.HLS_INVALID_PLAYLIST_HIERARCHY);c=d.splice(f,d.length-f);c
|
|
|
2369
2369
|
shaka.hls.ManifestTextParser.prototype.parseSegments_=function(a,b){var c=[],d=[],e=[],f=null;a=$jscomp.makeIterator(a);for(var g=a.next();!g.done;g=a.next())g=g.value,/^(#EXT)/.test(g)?(g=this.parseTag_(g),shaka.hls.ManifestTextParser.MEDIA_PLAYLIST_TAGS.includes(g.name)?b.push(g):"EXT-X-MAP"==g.name?f=g:"EXT-X-PART"==g.name?e.push(g):"EXT-X-PRELOAD-HINT"==g.name?"PART"==g.getAttributeValue("TYPE")?e.push(g):"MAP"==g.getAttributeValue("TYPE")&&(g.setName("EXT-X-MAP"),f=g):d.push(g)):shaka.hls.Utils.isComment(g)||
|
|
2370
2370
|
(g=g.trim(),f&&d.push(f),d=new shaka.hls.Segment(g,d,e),c.push(d),d=[],e=[]);e.length&&(f&&d.push(f),b=new shaka.hls.Segment("",d,e),c.push(b));return c};shaka.hls.ManifestTextParser.prototype.parseTag_=function(a){return shaka.hls.ManifestTextParser.parseTag(this.globalId_++,a)};
|
|
2371
2371
|
shaka.hls.ManifestTextParser.parseTag=function(a,b){var c=b.match(/^#(EXT[^:]*)(?::(.*))?$/);if(!c)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.INVALID_HLS_TAG,b);b=c[1];var d=c[2];c=[];var e;if(d){d=new shaka.util.TextParser(d);var f,g=d.readRegex(/^([^,=]+)(?:,|$)/g);g&&(e=g[1]);for(g=/([^=]+)=(?:"([^"]*)"|([^",]*))(?:,|$)/g;f=d.readRegex(g);)f=new shaka.hls.Attribute(f[1],f[2]||f[3]),c.push(f),d.skipWhitespace()}return new shaka.hls.Tag(a,
|
|
2372
|
-
b,c,e)};shaka.hls.ManifestTextParser.MEDIA_PLAYLIST_TAGS="EXT-X-TARGETDURATION EXT-X-MEDIA-SEQUENCE EXT-X-DISCONTINUITY-SEQUENCE EXT-X-PLAYLIST-TYPE EXT-X-I-FRAMES-ONLY EXT-X-ENDLIST EXT-X-SERVER-CONTROL EXT-X-SKIP EXT-X-PART-INF EXT-X-DATERANGE".split(" ");shaka.hls.ManifestTextParser.SEGMENT_TAGS="EXTINF EXT-X-BYTERANGE EXT-X-DISCONTINUITY EXT-X-PROGRAM-DATE-TIME EXT-X-KEY EXT-X-DATERANGE EXT-X-MAP EXT-X-GAP".split(" ");shaka.net.DataUriPlugin=function(){};shaka.net.DataUriPlugin.parse=function(a,b,c,d){try{var e=shaka.net.DataUriPlugin.parseRaw(a);return shaka.util.AbortableOperation.completed({uri:a,originalUri:a,data:e.data,headers:{"content-type":e.contentType}})}catch(f){return shaka.util.AbortableOperation.failed(f)}};
|
|
2372
|
+
b,c,e)};shaka.hls.ManifestTextParser.MEDIA_PLAYLIST_TAGS="EXT-X-TARGETDURATION EXT-X-MEDIA-SEQUENCE EXT-X-DISCONTINUITY-SEQUENCE EXT-X-PLAYLIST-TYPE EXT-X-I-FRAMES-ONLY EXT-X-ENDLIST EXT-X-SERVER-CONTROL EXT-X-SKIP EXT-X-PART-INF EXT-X-DATERANGE".split(" ");shaka.hls.ManifestTextParser.SEGMENT_TAGS="EXTINF EXT-X-BYTERANGE EXT-X-DISCONTINUITY EXT-X-PROGRAM-DATE-TIME EXT-X-KEY EXT-X-DATERANGE EXT-X-MAP EXT-X-GAP EXT-X-TILES".split(" ");shaka.net.DataUriPlugin=function(){};shaka.net.DataUriPlugin.parse=function(a,b,c,d){try{var e=shaka.net.DataUriPlugin.parseRaw(a);return shaka.util.AbortableOperation.completed({uri:a,originalUri:a,data:e.data,headers:{"content-type":e.contentType}})}catch(f){return shaka.util.AbortableOperation.failed(f)}};
|
|
2373
2373
|
shaka.net.DataUriPlugin.parseRaw=function(a){var b=a.split(":");if(2>b.length||"data"!=b[0])throw shaka.log.error("Bad data URI, failed to parse scheme"),new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.NETWORK,shaka.util.Error.Code.MALFORMED_DATA_URI,a);b=b.slice(1).join(":").split(",");if(2>b.length)throw shaka.log.error("Bad data URI, failed to extract encoding and MIME type"),new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.NETWORK,
|
|
2374
2374
|
shaka.util.Error.Code.MALFORMED_DATA_URI,a);var c=b[0];a=window.decodeURIComponent(b.slice(1).join(","));b=c.split(";");c=b[0];var d=!1;1<b.length&&"base64"==b[b.length-1]&&(d=!0,b.pop());return{data:d?shaka.util.Uint8ArrayUtils.fromBase64(a):shaka.util.StringUtils.toUTF8(a),contentType:c}};goog.exportSymbol("shaka.net.DataUriPlugin",shaka.net.DataUriPlugin);goog.exportProperty(shaka.net.DataUriPlugin,"parse",shaka.net.DataUriPlugin.parse);shaka.net.NetworkingEngine.registerScheme("data",shaka.net.DataUriPlugin.parse);shaka.hls.HlsParser=function(){var a=this;this.config_=this.playerInterface_=null;this.globalId_=1;this.globalVariables_=new Map;this.groupIdToStreamInfosMap_=new Map;this.mediaSequenceToStartTimeByType_=new Map;var b=shaka.util.ManifestParserUtils.ContentType;this.mediaSequenceToStartTimeByType_.set(b.VIDEO,new Map);this.mediaSequenceToStartTimeByType_.set(b.AUDIO,new Map);this.mediaSequenceToStartTimeByType_.set(b.TEXT,new Map);this.mediaSequenceToStartTimeByType_.set(b.IMAGE,new Map);this.variantUriSet_=
|
|
2375
2375
|
new Set;this.uriToStreamInfosMap_=new Map;this.presentationTimeline_=null;this.masterPlaylistUri_="";this.manifestTextParser_=new shaka.hls.ManifestTextParser;this.minSequenceNumber_=-1;this.lowestSyncTime_=Infinity;this.codecInfoInManifest_=this.streamsFinalized_=this.usesProgramDateTime_=!1;this.updatePlaylistTimer_=new shaka.util.Timer(function(){if(a.mediaElement_&&!a.config_.continueLoadingWhenPaused&&(a.eventManager_.unlisten(a.mediaElement_,"timeupdate"),a.mediaElement_.paused)){a.eventManager_.listenOnce(a.mediaElement_,
|
|
@@ -2424,10 +2424,10 @@ shaka.hls.HlsParser.prototype.parseImages_=function(a,b){var c=this,d,e;return $
|
|
|
2424
2424
|
throw l;})}).concat(b.map(function(g){if(c.config_.disableThumbnails)return null;try{var h=c.createStreamInfoFromIframeTag_(g);return h.stream.type!==shaka.util.ManifestParserUtils.ContentType.IMAGE?null:h.stream}catch(k){if(c.config_.hls.ignoreImageStreamFailures)return null;throw k;}})),f.yield(Promise.all(d),2);e=f.yieldResult;return f.return(e.filter(function(g){return g}))})};
|
|
2425
2425
|
shaka.hls.HlsParser.prototype.createStreamInfosFromMediaTags_=function(a,b){a=a.filter(function(g){var h=g.getAttributeValue("URI")||"";g=g.getAttributeValue("TYPE");return"SUBTITLES"!=g&&(""!=h||"AUDIO"==g)});var c={};a=$jscomp.makeIterator(a);for(var d=a.next();!d.done;d=a.next()){d=d.value;var e=d.getTagKey(!this.contentSteeringManager_);c[e]?c[e].push(d):c[e]=[d]}for(var f in c)this.createStreamInfoFromMediaTags_(c[f],b,!1)};
|
|
2426
2426
|
shaka.hls.HlsParser.prototype.parseIFrames_=function(a){var b=this;return a.map(function(c){c=b.createStreamInfoFromIframeTag_(c);return c.stream.type!==shaka.util.ManifestParserUtils.ContentType.VIDEO?null:c.stream}).filter(function(c){return c})};
|
|
2427
|
-
shaka.hls.HlsParser.prototype.createVariantsForTags_=function(a,b,c,d,e,f){var g=this,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,
|
|
2427
|
+
shaka.hls.HlsParser.prototype.createVariantsForTags_=function(a,b,c,d,e,f){var g=this,h,k,l,m,n,p,q,r,t,u,v,w,x,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,U;return $jscomp.asyncExecutePromiseGeneratorProgram(function(P){switch(P.nextAddress){case 1:h=[];k=new Set;if(!(0<b.length)){P.jumpTo(2);break}l=$jscomp.makeIterator(b);m=l.next();case 3:if(m.done){P.jumpTo(2);break}n=m.value;p=n.getRequiredAttrValue("METHOD");q=n.getAttributeValue("KEYFORMAT")||"identity";r=null;if("NONE"==p){P.jumpTo(4);break}if(g.isAesMethod_(p)){t=
|
|
2428
2428
|
shaka.hls.Utils.constructSegmentUris(d(),n.getRequiredAttrValue("URI"),e);u=t.sort().join("");g.aesKeyMap_.has(u)||(v=shaka.net.NetworkingEngine.RequestType.KEY,w=shaka.net.NetworkingEngine.makeRequest(t,g.config_.retryParameters),x=g.makeNetworkRequest_(w,v).promise,g.aesKeyMap_.set(u,x));P.jumpTo(4);break}if("identity"!=q){r=(z=shaka.hls.HlsParser.KEYFORMATS_TO_DRM_PARSERS_[q])?z(n,""):null;P.jumpTo(6);break}return P.yield(g.identityDrmParser_(n,"",d,null,e),9);case 9:r=P.yieldResult;case 6:if(r){if(r.keyIds)for(B=
|
|
2429
2429
|
$jscomp.makeIterator(r.keyIds),C=B.next();!C.done;C=B.next())y=C.value,k.add(y);h.push(r)}else shaka.log.warning("Unsupported HLS KEYFORMAT",q);case 4:m=l.next();P.jumpTo(3);break;case 2:A={};D=$jscomp.makeIterator(a);for(H=D.next();!H.done;H=D.next())G=H.value,F=G.getTagKey(!g.contentSteeringManager_),A[F]?A[F].push(G):A[F]=[G];E=[];for(I in A)K=A[I],M=K[0],L=M.getAttributeValue("FRAME-RATE"),J=Number(M.getAttributeValue("AVERAGE-BANDWIDTH"))||Number(M.getRequiredAttrValue("BANDWIDTH")),O=M.getAttributeValue("RESOLUTION"),
|
|
2430
|
-
Q=$jscomp.makeIterator(O?O.split("x"):[null,null]),N=Q.next().value,T=Q.next().value,R=M.getAttributeValue("VIDEO-RANGE"),(S=M.getAttributeValue("REQ-VIDEO-LAYOUT"))&&S.includes(",")&&(X=S.split(",").filter(function(Y){return"CH-STEREO"==Y||"CH-MONO"==Y}),S=X[0]),S=S||"CH-MONO",
|
|
2430
|
+
Q=$jscomp.makeIterator(O?O.split("x"):[null,null]),N=Q.next().value,T=Q.next().value,R=M.getAttributeValue("VIDEO-RANGE"),(S=M.getAttributeValue("REQ-VIDEO-LAYOUT"))&&S.includes(",")&&(X=S.split(",").filter(function(Y){return"CH-STEREO"==Y||"CH-MONO"==Y}),S=X[0]),S=S||"CH-MONO",U=g.createStreamInfosForVariantTags_(K,c,O,L),goog.asserts.assert(U.audio.length||U.video.length,"We should have created a stream!"),E.push.apply(E,$jscomp.arrayFromIterable(g.createVariants_(U.audio,U.video,J,N,T,L,R,S,h,
|
|
2431
2431
|
k,f)));return P.return(E.filter(function(Y){return null!=Y}))}})};
|
|
2432
2432
|
shaka.hls.HlsParser.prototype.createStreamInfosForVariantTags_=function(a,b,c,d){d=shaka.util.ManifestParserUtils.ContentType;c={audio:[],video:[]};for(var e=new Map,f=[],g=!1,h=!1,k=$jscomp.makeIterator(a),l=k.next();!l.done;l=k.next()){l=l.value;var m=l.getAttributeValue("AUDIO"),n=l.getAttributeValue("VIDEO");goog.asserts.assert(null==m||null==n,"Unexpected: both video and audio described by media tags!");var p=m||n;if(p){f.includes(p)||f.push(p);var q=l.getAttributeValue("PATHWAY-ID");q&&e.set(p,
|
|
2433
2433
|
q);m?g=!0:n&&(h=!0);shaka.log.debug("Guessing stream type for",l.toString())}}f.length&&b.length&&(b=b.filter(function(t){return f.includes(t.getRequiredAttrValue("GROUP-ID"))}),this.createStreamInfosFromMediaTags_(b,e));e=(b=f.sort().join(","))&&this.groupIdToStreamInfosMap_.has(b)?this.groupIdToStreamInfosMap_.get(b):[];g?c.audio.push.apply(c.audio,$jscomp.arrayFromIterable(e)):h&&c.video.push.apply(c.video,$jscomp.arrayFromIterable(e));g=!1;var r=a.map(function(t){return t.getRequiredAttrValue("URI")});
|
|
@@ -2454,25 +2454,25 @@ a.getAttributeValue("CHARACTERISTICS");b=this.createStreamInfo_(this.globalId_++
|
|
|
2454
2454
|
shaka.hls.HlsParser.prototype.createStreamInfoFromVariantTags_=function(a,b,c){for(var d=this.globalId_++,e=[],f=$jscomp.makeIterator(a),g=f.next();!g.done;g=f.next()){var h=g.value;goog.asserts.assert("EXT-X-STREAM-INF"==h.name,"Should only be called on variant tags!");g=h.getRequiredAttrValue("URI");h=h.getAttributeValue("PATHWAY-ID");this.contentSteeringManager_&&h&&this.contentSteeringManager_.addLocation(d,h,g);e.push(g)}f=e.sort().join(",");if(this.uriToStreamInfosMap_.has(f))return this.uriToStreamInfosMap_.get(f);
|
|
2455
2455
|
a=this.getClosedCaptions_(a[0],c);b=shaka.util.ManifestParserUtils.guessCodecs(c,b);c=this.createStreamInfo_(d,e,b,c,null,!1,null,null,a,null,!1,null,!1);this.uriToStreamInfosMap_.set(f,c);return c};
|
|
2456
2456
|
shaka.hls.HlsParser.prototype.createStreamInfo_=function(a,b,c,d,e,f,g,h,k,l,m,n,p){var q=this,r=this.makeStreamObject_(a,c,d,e,f,g,h,k,l,m,n,p);b.includes(shaka.hls.HlsParser.FAKE_MUXED_URL_)&&(r.isAudioMuxedInVideo=!0,r.mimeType="video/mp2t",this.setFullTypeForStream_(r));var t=[],u=function(){return q.contentSteeringManager_&&1<b.length?q.contentSteeringManager_.getLocations(a):t.concat(shaka.hls.Utils.constructUris([q.masterPlaylistUri_],b,q.globalVariables_))},v={stream:r,type:d,redirectUris:t,
|
|
2457
|
-
getUris:u,minTimestamp:0,maxTimestamp:0,mediaSequenceToStartTime:new Map,canSkipSegments:!1,canBlockReload:!1,hasEndList:!1,firstSequenceNumber:-1,nextMediaSequence:-1,nextPart:-1,loadedOnce:!1},w=function(B){var C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,
|
|
2457
|
+
getUris:u,minTimestamp:0,maxTimestamp:0,mediaSequenceToStartTime:new Map,canSkipSegments:!1,canBlockReload:!1,hasEndList:!1,firstSequenceNumber:-1,nextMediaSequence:-1,nextPart:-1,loadedOnce:!1},w=function(B){var C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,U,P,Y;return $jscomp.asyncExecutePromiseGeneratorProgram(function(V){switch(V.nextAddress){case 1:return C=shaka.util.ManifestParserUtils.ContentType,V.setCatchFinallyBlocks(2),y=v.getUris(),V.yield(B.promise,4);case 4:A=V.yieldResult;if(B.aborted)return V.return();
|
|
2458
2458
|
D=A.uri;D==A.originalUri||y.includes(D)||t.push(D);H=q.manifestTextParser_.parsePlaylist(A.data);if(H.type!=shaka.hls.PlaylistType.MEDIA)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.HLS_INVALID_PLAYLIST_HIERARCHY);G=shaka.hls.Utils.filterTagsByName(H.tags,"EXT-X-DEFINE");F=q.parseMediaVariables_(G,D);E=!1;(!q.codecInfoInManifest_&&q.config_.hls.disableCodecGuessing||q.needsClosedCaptionsDetection_&&d==C.VIDEO&&!q.config_.hls.disableClosedCaptionsDetection)&&
|
|
2459
|
-
0<H.segments.length&&(q.needsClosedCaptionsDetection_=!1,E=!0);I=!q.codecInfoInManifest_&&q.config_.hls.disableCodecGuessing;K=q.isLive_();return
|
|
2459
|
+
0<H.segments.length&&(q.needsClosedCaptionsDetection_=!1,E=!0);I=!q.codecInfoInManifest_&&q.config_.hls.disableCodecGuessing;K=q.isLive_();return V.yield(q.convertParsedPlaylistIntoStreamInfo_(a,F,H,u,D,c,d,e,f,g,h,k,l,m,n,p,void 0,E,I),5);case 5:M=V.yieldResult;if(B.aborted)return V.return();L=M.stream;q.determineStartTime_(H);q.isLive_()&&!K&&q.changePresentationTimelineToLive_(H);v.minTimestamp=M.minTimestamp;v.maxTimestamp=M.maxTimestamp;v.canSkipSegments=M.canSkipSegments;v.canBlockReload=M.canBlockReload;
|
|
2460
2460
|
v.hasEndList=M.hasEndList;v.mediaSequenceToStartTime=M.mediaSequenceToStartTime;v.nextMediaSequence=M.nextMediaSequence;v.nextPart=M.nextPart;v.loadedOnce=!0;r.segmentIndex=L.segmentIndex;r.encrypted=L.encrypted;r.drmInfos=L.drmInfos;r.keyIds=L.keyIds;r.mimeType=L.mimeType;r.bandwidth=r.bandwidth||L.bandwidth;r.codecs=r.codecs||L.codecs;r.closedCaptions=r.closedCaptions||L.closedCaptions;r.width=r.width||L.width;r.height=r.height||L.height;r.hdr=r.hdr||L.hdr;r.colorGamut=r.colorGamut||L.colorGamut;
|
|
2461
2461
|
r.frameRate=r.frameRate||L.frameRate;"und"==r.language&&"und"!=L.language&&(r.language=L.language);r.language=r.language||L.language;r.channelsCount=r.channelsCount||L.channelsCount;r.audioSamplingRate=r.audioSamplingRate||L.audioSamplingRate;q.setFullTypeForStream_(r);r.drmInfos.length&&q.playerInterface_.newDrmInfo(r);J=!1;if(!k&&r.closedCaptions||k&&r.closedCaptions&&k.size!=r.closedCaptions.size)J=!0;q.manifest_&&J&&q.playerInterface_.makeTextStreamsForClosedCaptions(q.manifest_);if(d==C.VIDEO||
|
|
2462
2462
|
d==C.AUDIO)for(O=$jscomp.makeIterator(q.uriToStreamInfosMap_.values()),Q=O.next();!Q.done;Q=O.next())N=Q.value,N.loadedOnce||N.type!=d||(N.stream.mimeType=L.mimeType,q.setFullTypeForStream_(N.stream));d==C.TEXT&&(T=L.segmentIndex.earliestReference())&&T.initSegmentReference&&(r.mimeType="application/mp4",q.setFullTypeForStream_(r));R=shaka.media.QualityObserver.createQualityInfo(r);r.segmentIndex.forEachTopLevelReference(function(W){W.initSegmentReference&&(W.initSegmentReference.mediaQuality=R)});
|
|
2463
|
-
q.hasEnoughInfoToFinalizeStreams_()&&(q.streamsFinalized_?q.finalizeStreams_([v]):(q.streamsFinalized_=!0,S=Array.from(q.uriToStreamInfosMap_.values()),X=S.filter(function(W){return W.stream.segmentIndex}),q.finalizeStreams_(X),q.determineDuration_(),
|
|
2464
|
-
shaka.util.Error.Code.OPERATION_ABORTED)return
|
|
2463
|
+
q.hasEnoughInfoToFinalizeStreams_()&&(q.streamsFinalized_?q.finalizeStreams_([v]):(q.streamsFinalized_=!0,S=Array.from(q.uriToStreamInfosMap_.values()),X=S.filter(function(W){return W.stream.segmentIndex}),q.finalizeStreams_(X),q.determineDuration_(),U=q.getUpdatePlaylistDelay_(),0<U&&q.updatePlaylistTimer_.tickAfter(U)));q.processDateRangeTags_(H.tags,r.type,F,u);q.manifest_&&(q.manifest_.startTime=q.startTime_);V.leaveTryBlock(0);break;case 2:P=V.enterCatchBlock();r.closeSegmentIndex();if(P.code===
|
|
2464
|
+
shaka.util.Error.Code.OPERATION_ABORTED)return V.return();Y=q.playerInterface_.disableStream(r);if(!Y)throw P;V.jumpToEnd()}})},x=null,z;r.createSegmentIndex=function(){if(x)return x;if(r.isAudioMuxedInVideo){var B=new shaka.media.SegmentIndex([]);r.segmentIndex=B;return Promise.resolve()}z=q.requestManifest_(v.getUris(),!0);return x=new Promise(function(C){C(w(z))})};r.closeSegmentIndex=function(){x&&!r.segmentIndex&&z.abort();r.segmentIndex&&(r.segmentIndex.release(),r.segmentIndex=null);x=null};
|
|
2465
2465
|
return v};shaka.hls.HlsParser.prototype.getMinDuration_=function(){for(var a=Infinity,b=$jscomp.makeIterator(this.uriToStreamInfosMap_.values()),c=b.next();!c.done;c=b.next())c=c.value,c.stream.segmentIndex&&"text"!=c.stream.type&&!c.stream.isAudioMuxedInVideo&&(a=Math.min(a,c.maxTimestamp));return a};
|
|
2466
2466
|
shaka.hls.HlsParser.prototype.getLiveDuration_=function(){for(var a=Infinity,b=Infinity,c=$jscomp.makeIterator(this.uriToStreamInfosMap_.values()),d=c.next();!d.done;d=c.next())d=d.value,d.stream.segmentIndex&&"text"!=d.stream.type&&!d.stream.isAudioMuxedInVideo&&(a=Math.min(a,d.maxTimestamp),b=Math.min(b,d.minTimestamp));return a-b};
|
|
2467
2467
|
shaka.hls.HlsParser.prototype.notifySegmentsForStreams_=function(a){var b=[];a=$jscomp.makeIterator(a);for(var c=a.next();!c.done;c=a.next())c=c.value,c.segmentIndex&&c.segmentIndex.forEachTopLevelReference(function(d){b.push(d)});this.presentationTimeline_.notifySegments(b)};
|
|
2468
2468
|
shaka.hls.HlsParser.prototype.finalizeStreams_=function(a){if(!this.isLive_())for(var b=this.getMinDuration_(),c=$jscomp.makeIterator(a),d=c.next();!d.done;d=c.next())d.value.stream.segmentIndex.fit(0,b);this.notifySegmentsForStreams_(a.map(function(f){return f.stream}));c=Array.from(this.uriToStreamInfosMap_.values()).filter(function(f){return f.stream.segmentIndex});var e=shaka.util.ManifestParserUtils.ContentType;b=c.some(function(f){return f.stream.type==e.AUDIO});d=c.some(function(f){return f.stream.type==
|
|
2469
2469
|
e.VIDEO});c=this.isLive_()&&!this.usesProgramDateTime_;b=!this.isLive_()&&this.usesProgramDateTime_&&!(b&&d);this.config_.hls.ignoreManifestProgramDateTime||c||b?this.syncStreamsWithSequenceNumber_(a,c):(this.syncStreamsWithProgramDateTime_(a),0<this.config_.hls.ignoreManifestProgramDateTimeForTypes.length&&this.syncStreamsWithSequenceNumber_(a))};shaka.hls.HlsParser.prototype.ignoreManifestProgramDateTimeFor_=function(a){return this.config_.hls.ignoreManifestProgramDateTime?!0:this.config_.hls.ignoreManifestProgramDateTimeForTypes.includes(a)};
|
|
2470
2470
|
shaka.hls.HlsParser.prototype.hasEnoughInfoToFinalizeStreams_=function(){if(!this.manifest_)return!1;for(var a=[],b=[],c=$jscomp.makeIterator(this.manifest_.variants),d=c.next();!d.done;d=c.next())d=d.value,d.video&&a.push(d.video),d.audio&&b.push(d.audio);return 0<a.length&&!a.some(function(e){return e.segmentIndex})||0<b.length&&!b.some(function(e){return e.segmentIndex})?!1:!0};
|
|
2471
|
-
shaka.hls.HlsParser.prototype.convertParsedPlaylistIntoStreamInfo_=function(a,b,c,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w){v=void 0===v?!0:v;w=void 0===w?!0:w;var x=this,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,
|
|
2471
|
+
shaka.hls.HlsParser.prototype.convertParsedPlaylistIntoStreamInfo_=function(a,b,c,d,e,f,g,h,k,l,m,n,p,q,r,t,u,v,w){v=void 0===v?!0:v;w=void 0===w?!0:w;var x=this,z,B,C,y,A,D,H,G,F,E,I,K,M,L,J,O,Q,N,T,R,S,X,U,P,Y,V,W,ba,ca;return $jscomp.asyncExecutePromiseGeneratorProgram(function(Z){switch(Z.nextAddress){case 1:z=c.segments||[];B=z.every(function(fa){return shaka.hls.Utils.getFirstTagWithName(fa.tags,"EXT-X-GAP")?!0:!1});if(!z.length||B)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,
|
|
2472
2472
|
shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.HLS_EMPTY_MEDIA_PLAYLIST);x.determinePresentationType_(c);x.isLive_()&&x.determineLastTargetDuration_(c);C=x.isLive_()?x.mediaSequenceToStartTimeByType_.get(g):new Map;y=x.createSegments_(c,C,b,d,g);A=y.segments;D=y.bandwidth;I=E=F=G=H=null;if(!(0<A.length&&v)){Z.jumpTo(2);break}return Z.yield(x.getBasicInfoFromSegments_(A),3);case 3:K=Z.yieldResult,g=K.type,h=K.language,m=K.channelCount,r=K.sampleRate,x.config_.disableText||(n=K.closedCaptions),
|
|
2473
2473
|
G=K.height,H=K.width,F=K.videoRange,E=K.colorGamut,I=K.frameRate,w&&(u=K.mimeType,f=K.codecs);case 2:if(u){Z.jumpTo(4);break}return Z.yield(x.guessMimeType_(g,f,A),5);case 5:u=Z.yieldResult,g!=shaka.util.ManifestParserUtils.ContentType.TEXT||f||"application/mp4"!=u||!A[0]||A[0].initSegmentReference||(u="text/vtt");case 4:return Z.yield(x.parseDrmInfo_(c,u,d,b),6);case 6:M=Z.yieldResult;L=M.drmInfos;J=M.keyIds;O=M.encrypted;Q=M.aesEncrypted;if(O&&!L.length&&!Q)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,
|
|
2474
|
-
shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.HLS_KEYFORMATS_NOT_SUPPORTED);N=x.makeStreamObject_(a,f,g,h,k,l,m,n,p,q,r,t);N.encrypted=O;N.drmInfos=L;N.keyIds=J;N.mimeType=u;D&&(N.bandwidth=D);x.setFullTypeForStream_(N);g==shaka.util.ManifestParserUtils.ContentType.VIDEO&&(H||G||F||E)&&x.addVideoAttributes_(N,H,G,I,F,null,E);x.isLive_()&&x.determineLastTargetDuration_(c);T=A[0].startTime;R=A[A.length-1];S=R.endTime;X=new shaka.media.SegmentIndex(A);N.segmentIndex=X;P=(
|
|
2475
|
-
"EXT-X-SERVER-CONTROL"))?null!=
|
|
2474
|
+
shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.HLS_KEYFORMATS_NOT_SUPPORTED);N=x.makeStreamObject_(a,f,g,h,k,l,m,n,p,q,r,t);N.encrypted=O;N.drmInfos=L;N.keyIds=J;N.mimeType=u;D&&(N.bandwidth=D);x.setFullTypeForStream_(N);g==shaka.util.ManifestParserUtils.ContentType.VIDEO&&(H||G||F||E)&&x.addVideoAttributes_(N,H,G,I,F,null,E);x.isLive_()&&x.determineLastTargetDuration_(c);T=A[0].startTime;R=A[A.length-1];S=R.endTime;X=new shaka.media.SegmentIndex(A);N.segmentIndex=X;P=(U=shaka.hls.Utils.getFirstTagWithName(c.tags,
|
|
2475
|
+
"EXT-X-SERVER-CONTROL"))?null!=U.getAttribute("CAN-SKIP-UNTIL"):!1;Y=U?null!=U.getAttribute("CAN-BLOCK-RELOAD"):!1;V=shaka.hls.Utils.getFirstTagWithNameAsNumber(c.tags,"EXT-X-MEDIA-SEQUENCE",0);W=x.getNextMediaSequenceAndPart_(V,A);ba=W.nextMediaSequence;ca=W.nextPart;return Z.return({stream:N,type:g,redirectUris:[],getUris:d,minTimestamp:T,maxTimestamp:S,canSkipSegments:P,canBlockReload:Y,hasEndList:!1,firstSequenceNumber:-1,nextMediaSequence:ba,nextPart:ca,mediaSequenceToStartTime:C,loadedOnce:!1})}})};
|
|
2476
2476
|
shaka.hls.HlsParser.prototype.getNextMediaSequenceAndPart_=function(a,b){a=a+b.length-1;var c=-1;if(!b.length)return a++,{nextMediaSequence:a,nextPart:c};b=b[b.length-1];var d=b.partialReferences;if(!b.partialReferences.length)return a++,b.hasByterangeOptimization()&&(c=0),{nextMediaSequence:a,nextPart:c};c=d.length-1;d[d.length-1].isPreload()||(a++,c=0);return{nextMediaSequence:a,nextPart:c}};
|
|
2477
2477
|
shaka.hls.HlsParser.prototype.makeStreamObject_=function(a,b,c,d,e,f,g,h,k,l,m,n){a=this.guessMimeTypeBeforeLoading_(c,b)||this.guessMimeTypeFallback_(c);var p=[];if(k){k=$jscomp.makeIterator(k.split(","));for(var q=k.next();!q.done;q=k.next())p.push(q.value)}k=void 0;q=null;c==shaka.util.ManifestParserUtils.ContentType.TEXT?k=p.includes("public.accessibility.transcribes-spoken-dialog")&&p.includes("public.accessibility.describes-music-and-sound")?shaka.util.ManifestParserUtils.TextStreamKind.CLOSED_CAPTION:
|
|
2478
2478
|
shaka.util.ManifestParserUtils.TextStreamKind.SUBTITLE:p.includes("public.accessibility.describes-video")&&(q=shaka.media.ManifestParser.AccessibilityPurpose.VISUALLY_IMPAIRED);p.length||k!==shaka.util.ManifestParserUtils.TextStreamKind.SUBTITLE||p.push(shaka.util.ManifestParserUtils.TextStreamKind.SUBTITLE);b={id:this.globalId_++,originalId:f,groupId:null,createSegmentIndex:function(){return Promise.resolve()},segmentIndex:null,mimeType:a,codecs:b,kind:c==shaka.util.ManifestParserUtils.ContentType.TEXT?
|
|
@@ -3435,7 +3435,7 @@ shaka.ui.Controls.prototype.onControlsKeyDown_=function(a){var b=document.active
|
|
|
3435
3435
|
b));break;case "ArrowRight":this.seekBar_&&d&&!c&&0<b&&(a.preventDefault(),this.seek_(this.seekBar_.getValue()+b));break;case "PageDown":this.seekBar_&&d&&0<b&&(a.preventDefault(),this.seek_(this.seekBar_.getValue()-e));break;case "PageUp":this.seekBar_&&d&&0<b&&(a.preventDefault(),this.seek_(this.seekBar_.getValue()+e));break;case "Home":this.seekBar_&&this.seek_(this.player_.seekRange().start);break;case "End":this.seekBar_&&this.seek_(this.player_.seekRange().end);break;case "f":this.isFullScreenSupported()&&
|
|
3436
3436
|
this.toggleFullScreen();break;case "m":this.ad_&&this.ad_.isLinear()?this.ad_.setMuted(!this.ad_.isMuted()):this.localVideo_.muted=!this.localVideo_.muted;break;case "p":this.isPiPAllowed()&&this.togglePiP();break;case " ":if(d)this.onPlayPauseClick_()}}};shaka.ui.Controls.prototype.onControlsKeyUp_=function(a){this.pressedKeys_.delete(a.key)};
|
|
3437
3437
|
shaka.ui.Controls.prototype.onBufferingStateChange_=function(){this.enabled_&&(this.ad_&&this.ad_.isClientRendering()&&this.ad_.isLinear()?shaka.ui.Utils.setDisplay(this.spinnerContainer_,!1):shaka.ui.Utils.setDisplay(this.spinnerContainer_,this.player_.isBuffering()))};shaka.ui.Controls.prototype.isOpaque=function(){return this.enabled_?null!=this.controlsContainer_.getAttribute("shown")||null!=this.controlsContainer_.getAttribute("casting"):!1};
|
|
3438
|
-
shaka.ui.Controls.prototype.seek_=function(a){goog.asserts.assert(this.seekBar_,"Caller of seek_ must check for seekBar_ first!");this.
|
|
3438
|
+
shaka.ui.Controls.prototype.seek_=function(a){goog.asserts.assert(this.seekBar_,"Caller of seek_ must check for seekBar_ first!");this.video_.currentTime=a;this.updateTimeAndSeekRange_()};
|
|
3439
3439
|
shaka.ui.Controls.prototype.updateTimeAndSeekRange_=function(){if(this.seekBar_)if(this.seekBar_.setValue(this.video_.currentTime),this.seekBar_.update(),this.seekBar_.isShowing())for(var a=$jscomp.makeIterator(this.menus_),b=a.next();!b.done;b=a.next())b.value.classList.remove("shaka-low-position");else for(a=$jscomp.makeIterator(this.menus_),b=a.next();!b.done;b=a.next())b.value.classList.add("shaka-low-position");this.dispatchEvent(new shaka.util.FakeEvent("timeandseekrangeupdated"))};
|
|
3440
3440
|
shaka.ui.Controls.prototype.onWindowKeyDown_=function(a){var b=this;this.pressedKeys_.add(a.key);var c=this.anySettingsMenusAreOpen();"Tab"==a.key&&(this.controlsContainer_.classList.add("shaka-keyboard-navigation"),this.computeOpacity(),this.eventManager_.listen(window,"mousedown",function(){return b.onMouseDown_()}));"Escape"==a.key&&this.hideSettingsMenusTimer_.tickNow();c&&this.pressedKeys_.has("Tab")&&this.keepFocusInMenu_(a)};
|
|
3441
3441
|
shaka.ui.Controls.prototype.keepFocusInMenu_=function(a){var b=this.menus_.filter(function(e){return!e.classList.contains("shaka-hidden")});if(b.length){var c=b[0];if(c.childNodes.length){for(b=c.firstElementChild;b&&b.classList.contains("shaka-hidden");)b=b.nextElementSibling;for(c=c.lastElementChild;c&&c.classList.contains("shaka-hidden");)c=c.previousElementSibling;var d=document.activeElement;this.pressedKeys_.has("Shift")?d==b&&(a.preventDefault(),c.focus()):d==c&&(a.preventDefault(),b.focus())}}};
|
|
@@ -3503,10 +3503,10 @@ goog.exportProperty(shaka.ui.Overlay.prototype,"getConfiguration",shaka.ui.Overl
|
|
|
3503
3503
|
shaka.ui.Overlay.FailReasonCode={NO_BROWSER_SUPPORT:0,PLAYER_FAILED_TO_LOAD:1};goog.exportProperty(shaka.ui.Overlay,"FailReasonCode",shaka.ui.Overlay.FailReasonCode);"complete"==document.readyState?function(){return $jscomp.asyncExecutePromiseGeneratorProgram(function(a){if(1==a.nextAddress)return a.yield(Promise.resolve(),2);shaka.ui.Overlay.scanPageForShakaElements_();a.jumpToEnd()})}():window.addEventListener("load",shaka.ui.Overlay.scanPageForShakaElements_);shaka.ui.LanguageUtils=function(){};
|
|
3504
3504
|
shaka.ui.LanguageUtils.updateTracks=function(a,b,c,d,e,f,g,h){for(var k=shaka.ui.Locales.Ids,l=a.find(function(F){return 1==F.active}),m=new Map,n=$jscomp.makeIterator(a),p=n.next();!p.done;p=n.next())p=p.value,p.audioCodec&&(m.has(p.language)||m.set(p.language,new Set),m.get(p.language).add(shaka.util.MimeUtils.getNormalizedCodec(p.audioCodec)));var q=function(F){return m.has(F)&&1<m.get(F).size};n=shaka.ui.Utils.getFirstDescendantWithClassName(b,"shaka-back-to-overflow-button");shaka.util.Dom.removeAllChildren(b);
|
|
3505
3505
|
b.appendChild(n);n=function(F){return"variant"==F.type?F.audioRoles?F.audioRoles.join(", "):void 0:F.roles.join(", ")};p=function(F,E,I,K,M){E=[F,E];h&&null!=K&&E.push(K);q(F)&&M&&E.push(M);I&&g==shaka.ui.Overlay.TrackLabelFormat.LABEL&&E.push(I);return E.join(": ")};for(var r=function(F){var E="";5<=F&&(E=" "+f.resolve(k.SURROUND));return E},t=function(F){var E="";F=F.toLowerCase();F.startsWith("mp4a")?E="AAC":"ac-3"===F?E="Dolby":"ec-3"===F?E="DD+":"opus"===F?E="Opus":"flac"===F&&(E="fLaC");return E?
|
|
3506
|
-
" "+E:E},u=new Map,v=$jscomp.makeIterator(a),w=v.next();!w.done;w=v.next())w=w.value,u.has(w.language)||u.set(w.language,new Set),u.get(w.language).add(n(w));u=new Set;l=l?p(l.language,n(l),l.label,l.channelsCount,l.audioCodec):"";a=$jscomp.makeIterator(a);w=a.next();for(v={};!w.done;v={track$jscomp$
|
|
3507
|
-
A=v.track$jscomp$
|
|
3508
|
-
(G.textContent+=t(A));h&&(G.textContent+=r(y));B?G.textContent=B:(shaka.log.alwaysWarn("Track #"+v.track$jscomp$
|
|
3509
|
-
v.track$jscomp$
|
|
3506
|
+
" "+E:E},u=new Map,v=$jscomp.makeIterator(a),w=v.next();!w.done;w=v.next())w=w.value,u.has(w.language)||u.set(w.language,new Set),u.get(w.language).add(n(w));u=new Set;l=l?p(l.language,n(l),l.label,l.channelsCount,l.audioCodec):"";a=$jscomp.makeIterator(a);w=a.next();for(v={};!w.done;v={track$jscomp$44:void 0},w=a.next()){v.track$jscomp$44=w.value;w=v.track$jscomp$44.language;var x=v.track$jscomp$44.forced,z=f.resolve(k.SUBTITLE_FORCED),B=n(v.track$jscomp$44),C=v.track$jscomp$44.label,y=v.track$jscomp$44.channelsCount,
|
|
3507
|
+
A=v.track$jscomp$44.audioCodec,D=p(w,B,C,y,A);if(!u.has(D)){u.add(D);var H=shaka.util.Dom.createButton();H.addEventListener("click",function(F){return function(){c(F.track$jscomp$44)}}(v));var G=shaka.util.Dom.createHTMLElement("span");H.appendChild(G);G.textContent=shaka.ui.LanguageUtils.getLanguageName(w,f);switch(g){case shaka.ui.Overlay.TrackLabelFormat.LANGUAGE:q(w)&&(G.textContent+=t(A));h&&(G.textContent+=r(y));x&&(G.textContent+=" ("+z+")");break;case shaka.ui.Overlay.TrackLabelFormat.ROLE:q(w)&&
|
|
3508
|
+
(G.textContent+=t(A));h&&(G.textContent+=r(y));B?G.textContent=B:(shaka.log.alwaysWarn("Track #"+v.track$jscomp$44.id+" does not have a role, but the UI is configured to only show role."),G.textContent="?");x&&(G.textContent+=" ("+z+")");break;case shaka.ui.Overlay.TrackLabelFormat.LANGUAGE_ROLE:q(w)&&(G.textContent+=t(A));h&&(G.textContent+=r(y));B&&(G.textContent+=": "+B);x&&(G.textContent+=" ("+z+")");break;case shaka.ui.Overlay.TrackLabelFormat.LABEL:C?G.textContent=C:(shaka.log.alwaysWarn("Track #"+
|
|
3509
|
+
v.track$jscomp$44.id+" does not have a label, but the UI is configured to only show labels."),G.textContent="?")}d&&D==l&&(H.appendChild(shaka.ui.Utils.checkmarkIcon()),G.classList.add("shaka-chosen-item"),H.ariaSelected="true",e.textContent=G.textContent);b.appendChild(H)}}};
|
|
3510
3510
|
shaka.ui.LanguageUtils.getLanguageName=function(a,b){if(!a&&!b)return"";switch(a){case "mul":return b.resolve(shaka.ui.Locales.Ids.MULTIPLE_LANGUAGES);case "und":return b.resolve(shaka.ui.Locales.Ids.UNDETERMINED_LANGUAGE);case "zxx":return b.resolve(shaka.ui.Locales.Ids.NOT_APPLICABLE)}var c=shaka.util.LanguageUtils.getBase(a);return a in mozilla.LanguageMapping?mozilla.LanguageMapping[a].nativeName:c in mozilla.LanguageMapping?mozilla.LanguageMapping[c].nativeName+" ("+a+")":b.resolve(shaka.ui.Locales.Ids.UNRECOGNIZED_LANGUAGE)+
|
|
3511
3511
|
" ("+a+")"};shaka.ui.SettingsMenu=function(a,b,c){shaka.ui.Element.call(this,a,b);var d=this;this.addButton_(c);this.addMenu_();this.inOverflowMenu_();this.eventManager.listen(this.button,"click",function(){d.onButtonClick_()})};$jscomp.inherits(shaka.ui.SettingsMenu,shaka.ui.Element);
|
|
3512
3512
|
shaka.ui.SettingsMenu.prototype.addButton_=function(a){this.button=shaka.util.Dom.createButton();this.button.classList.add("shaka-overflow-button");this.icon=shaka.util.Dom.createHTMLElement("i");this.icon.classList.add("material-icons-round");this.icon.textContent=a;this.button.appendChild(this.icon);a=shaka.util.Dom.createHTMLElement("label");a.classList.add("shaka-overflow-button-label");a.classList.add("shaka-overflow-menu-only");this.nameSpan=shaka.util.Dom.createHTMLElement("span");a.appendChild(this.nameSpan);
|
|
@@ -3587,8 +3587,8 @@ this.eventManager.listen(this.player,"loading",function(){c.updateResolutionSele
|
|
|
3587
3587
|
shaka.ui.ResolutionSelection.prototype.updateResolutionSelection_=function(){var a=this,b=shaka.ui.Overlay.TrackLabelFormat,c=[];this.player.getLoadMode()!=shaka.Player.LoadMode.SRC_EQUALS&&(c=this.player.getVariantTracks());var d=c.find(function(l){return l.active});d&&(c=c.filter(function(l){if(l.language!=d.language||a.controls.getConfig().showAudioChannelCountVariants&&l.channelsCount&&d.channelsCount&&l.channelsCount!=d.channelsCount)return!1;var m=a.controls.getConfig().trackLabelFormat;return(m==
|
|
3588
3588
|
b.ROLE||m==b.LANGUAGE_ROLE)&&JSON.stringify(l.audioRoles)!=JSON.stringify(d.audioRoles)||m==b.LABEL&&l.label!=d.label?!1:!0}));c=this.player.isAudioOnly()?c.filter(function(l,m){return c.findIndex(function(n){return n.bandwidth==l.bandwidth})==m}):1<[].concat($jscomp.arrayFromIterable(new Set(c.map(function(l){return l.audioId})))).filter(shaka.util.Functional.isNotNull).length?c.filter(function(l,m){return c.findIndex(function(n){return n.height==l.height&&n.videoBandwidth==l.videoBandwidth&&n.frameRate==
|
|
3589
3589
|
l.frameRate&&n.hdr==l.hdr&&n.videoLayout==l.videoLayout})==m}):c.filter(function(l,m){return c.findIndex(function(n){return n.height==l.height&&n.bandwidth==l.bandwidth&&n.frameRate==l.frameRate&&n.hdr==l.hdr&&n.videoLayout==l.videoLayout})==m});this.player.isAudioOnly()?c.sort(function(l,m){goog.asserts.assert(null!=l.bandwidth,"Null bandwidth");goog.asserts.assert(null!=m.bandwidth,"Null bandwidth");return m.bandwidth-l.bandwidth}):c.sort(function(l,m){return m.height==l.height||null==l.height||
|
|
3590
|
-
null==m.height?m.bandwidth-l.bandwidth:m.height-l.height});var e=shaka.ui.Utils.getFirstDescendantWithClassName(this.menu,"shaka-back-to-overflow-button");shaka.util.Dom.removeAllChildren(this.menu);this.menu.appendChild(e);e=this.player.getConfiguration().abr.enabled;for(var f=$jscomp.makeIterator(c),g=f.next(),h={};!g.done;h={track$jscomp$
|
|
3591
|
-
var k=shaka.util.Dom.createHTMLElement("span");!this.player.isAudioOnly()&&h.track$jscomp$
|
|
3590
|
+
null==m.height?m.bandwidth-l.bandwidth:m.height-l.height});var e=shaka.ui.Utils.getFirstDescendantWithClassName(this.menu,"shaka-back-to-overflow-button");shaka.util.Dom.removeAllChildren(this.menu);this.menu.appendChild(e);e=this.player.getConfiguration().abr.enabled;for(var f=$jscomp.makeIterator(c),g=f.next(),h={};!g.done;h={track$jscomp$52:void 0},g=f.next()){h.track$jscomp$52=g.value;g=shaka.util.Dom.createButton();g.classList.add("explicit-resolution");this.eventManager.listen(g,"click",function(l){return function(){return a.onTrackSelected_(l.track$jscomp$52)}}(h));
|
|
3591
|
+
var k=shaka.util.Dom.createHTMLElement("span");!this.player.isAudioOnly()&&h.track$jscomp$52.height&&h.track$jscomp$52.width?k.textContent=this.getResolutionLabel_(h.track$jscomp$52,c):k.textContent=h.track$jscomp$52.bandwidth?Math.round(h.track$jscomp$52.bandwidth/1E3)+" kbits/s":"Unknown";g.appendChild(k);e||h.track$jscomp$52!=d||(g.ariaSelected="true",g.appendChild(shaka.ui.Utils.checkmarkIcon()),k.classList.add("shaka-chosen-item"),this.currentSelection.textContent=k.textContent);this.menu.appendChild(g)}f=
|
|
3592
3592
|
shaka.util.Dom.createButton();f.classList.add("shaka-enable-abr-button");this.eventManager.listen(f,"click",function(){a.player.configure({abr:{enabled:!0}});a.updateResolutionSelection_()});this.abrOnSpan_=shaka.util.Dom.createHTMLElement("span");this.abrOnSpan_.classList.add("shaka-auto-span");this.abrOnSpan_.textContent=this.localization.resolve(shaka.ui.Locales.Ids.AUTO_QUALITY);f.appendChild(this.abrOnSpan_);e&&(f.ariaSelected="true",f.appendChild(shaka.ui.Utils.checkmarkIcon()),this.abrOnSpan_.classList.add("shaka-chosen-item"),
|
|
3593
3593
|
this.currentSelection.textContent=this.localization.resolve(shaka.ui.Locales.Ids.AUTO_QUALITY));this.button.setAttribute("shaka-status",this.currentSelection.textContent);this.menu.appendChild(f);shaka.ui.Utils.focusOnTheChosenItem(this.menu);this.controls.dispatchEvent(new shaka.util.FakeEvent("resolutionselectionupdated"));this.updateLocalizedStrings_();shaka.ui.Utils.setDisplay(this.button,1<c.length)};
|
|
3594
3594
|
shaka.ui.ResolutionSelection.prototype.getResolutionLabel_=function(a,b){var c=a.height||0,d=a.width||0,e=c;d/c>16/9&&(e=Math.round(9*d/16));c=e+"p";2160==e&&(c="4K");e=new Set;d=$jscomp.makeIterator(b);for(var f=d.next();!f.done;f=d.next())f=f.value,f.frameRate&&e.add(Math.round(f.frameRate));1<e.size&&(e=a.frameRate)&&(50<=e||20>=e)&&(c+=Math.round(a.frameRate));if("PQ"==a.hdr||"HLG"==a.hdr)c+=" (HDR)";"CH-STEREO"==a.videoLayout&&(c+=" (3D)");b.some(function(g){return g!=a&&g.height==a.height})&&
|