shaka-player 4.9.2-caf5 → 4.9.2-caf6

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 CHANGED
@@ -732,48 +732,48 @@ shaka.ui.Locales.addTo = function(localization) {
732
732
  * @const
733
733
  */
734
734
  shaka.ui.Locales.Ids = {
735
+ UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
736
+ AD_PROGRESS: 'AD_PROGRESS',
737
+ AD_TIME: 'AD_TIME',
738
+ MORE_SETTINGS: 'MORE_SETTINGS',
739
+ ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
735
740
  LOOP: 'LOOP',
736
741
  EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
737
- EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
742
+ PLAY: 'PLAY',
743
+ SKIP_AD: 'SKIP_AD',
744
+ UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
745
+ SUBTITLE_FORCED: 'SUBTITLE_FORCED',
746
+ OFF: 'OFF',
738
747
  RESOLUTION: 'RESOLUTION',
739
- AD_PROGRESS: 'AD_PROGRESS',
740
- PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
741
- AUTO_QUALITY: 'AUTO_QUALITY',
742
- LIVE: 'LIVE',
743
- VOLUME: 'VOLUME',
744
748
  LANGUAGE: 'LANGUAGE',
745
- FAST_FORWARD: 'FAST_FORWARD',
746
749
  CAST: 'CAST',
750
+ LIVE: 'LIVE',
751
+ PAUSE: 'PAUSE',
752
+ NOT_APPLICABLE: 'NOT_APPLICABLE',
753
+ AUTO_QUALITY: 'AUTO_QUALITY',
754
+ UNMUTE: 'UNMUTE',
747
755
  PLAYBACK_RATE: 'PLAYBACK_RATE',
748
- AD_TIME: 'AD_TIME',
749
- MUTE: 'MUTE',
750
- REWIND: 'REWIND',
751
- SUBTITLE_FORCED: 'SUBTITLE_FORCED',
752
- RECENTER_VR: 'RECENTER_VR',
753
- EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
754
- MORE_SETTINGS: 'MORE_SETTINGS',
755
756
  AIRPLAY: 'AIRPLAY',
756
- SEEK: 'SEEK',
757
- REPLAY: 'REPLAY',
758
- NOT_APPLICABLE: 'NOT_APPLICABLE',
759
- PAUSE: 'PAUSE',
760
- ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
757
+ FAST_FORWARD: 'FAST_FORWARD',
761
758
  AD_DURATION: 'AD_DURATION',
762
- UNMUTE: 'UNMUTE',
763
759
  SURROUND: 'SURROUND',
764
- PLAY: 'PLAY',
765
- UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
760
+ PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
761
+ VOLUME: 'VOLUME',
762
+ REPLAY: 'REPLAY',
763
+ EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
766
764
  ON: 'ON',
767
- OFF: 'OFF',
768
- SKIP_AD: 'SKIP_AD',
765
+ STATISTICS: 'STATISTICS',
769
766
  BACK: 'BACK',
767
+ QUALITY: 'QUALITY',
768
+ REWIND: 'REWIND',
769
+ TOGGLE_STEREOSCOPIC: 'TOGGLE_STEREOSCOPIC',
770
770
  SKIP_TO_LIVE: 'SKIP_TO_LIVE',
771
- STATISTICS: 'STATISTICS',
772
771
  FULL_SCREEN: 'FULL_SCREEN',
772
+ ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
773
+ SEEK: 'SEEK',
774
+ MUTE: 'MUTE',
773
775
  MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
774
- TOGGLE_STEREOSCOPIC: 'TOGGLE_STEREOSCOPIC',
775
- ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
776
- QUALITY: 'QUALITY',
776
+ EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
777
+ RECENTER_VR: 'RECENTER_VR',
777
778
  CAPTIONS: 'CAPTIONS',
778
- UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
779
779
  };
@@ -5162,7 +5162,7 @@ declare namespace shaka.extern {
5162
5162
  }
5163
5163
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5164
5164
  declare namespace shaka.extern {
5165
- type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableAudioGroups : boolean , enableFastSwitching : boolean , ignoreDrmInfo : boolean , ignoreEmptyAdaptationSet : boolean , ignoreMaxSegmentDuration : boolean , ignoreMinBufferTime : boolean , ignoreSuggestedPresentationDelay : boolean , initialSegmentLimit : number , keySystemsByURI : { [ key: string ]: string } , manifestPreprocessor : (a : Element ) => any , manifestPreprocessorTXml : (a : shaka.extern.xml.Node ) => any , multiTypeVariantsAllowed : boolean , sequenceMode : boolean , updatePeriod : number , useStreamOnceInPeriodFlattening : boolean , xlinkFailGracefully : boolean } ;
5165
+ type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableAudioGroups : boolean , enableFastSwitching : boolean , ignoreEmptyAdaptationSet : boolean , ignoreMaxSegmentDuration : boolean , ignoreMinBufferTime : boolean , ignoreSuggestedPresentationDelay : boolean , initialSegmentLimit : number , keySystemsByURI : { [ key: string ]: string } , manifestPreprocessor : (a : Element ) => any , manifestPreprocessorTXml : (a : shaka.extern.xml.Node ) => any , multiTypeVariantsAllowed : boolean , sequenceMode : boolean , updatePeriod : number , useStreamOnceInPeriodFlattening : boolean , xlinkFailGracefully : boolean } ;
5166
5166
  }
5167
5167
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5168
5168
  declare namespace shaka.extern {
@@ -5202,7 +5202,7 @@ declare namespace shaka.extern {
5202
5202
  }
5203
5203
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5204
5204
  declare namespace shaka.extern {
5205
- type ManifestConfiguration = { availabilityWindowOverride : number , dash : shaka.extern.DashManifestConfiguration , defaultPresentationDelay : number , disableAudio : boolean , disableText : boolean , disableThumbnails : boolean , disableVideo : boolean , hls : shaka.extern.HlsManifestConfiguration , mss : shaka.extern.MssManifestConfiguration , raiseFatalErrorOnManifestUpdateRequestFailure : boolean , retryParameters : shaka.extern.RetryParameters , segmentRelativeVttTiming : boolean } ;
5205
+ type ManifestConfiguration = { availabilityWindowOverride : number , dash : shaka.extern.DashManifestConfiguration , defaultPresentationDelay : number , disableAudio : boolean , disableText : boolean , disableThumbnails : boolean , disableVideo : boolean , hls : shaka.extern.HlsManifestConfiguration , ignoreDrmInfo : boolean , mss : shaka.extern.MssManifestConfiguration , raiseFatalErrorOnManifestUpdateRequestFailure : boolean , retryParameters : shaka.extern.RetryParameters , segmentRelativeVttTiming : boolean } ;
5206
5206
  }
5207
5207
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5208
5208
  declare namespace shaka.extern {
@@ -5162,7 +5162,7 @@ declare namespace shaka.extern {
5162
5162
  }
5163
5163
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5164
5164
  declare namespace shaka.extern {
5165
- type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableAudioGroups : boolean , enableFastSwitching : boolean , ignoreDrmInfo : boolean , ignoreEmptyAdaptationSet : boolean , ignoreMaxSegmentDuration : boolean , ignoreMinBufferTime : boolean , ignoreSuggestedPresentationDelay : boolean , initialSegmentLimit : number , keySystemsByURI : { [ key: string ]: string } , manifestPreprocessor : (a : Element ) => any , manifestPreprocessorTXml : (a : shaka.extern.xml.Node ) => any , multiTypeVariantsAllowed : boolean , sequenceMode : boolean , updatePeriod : number , useStreamOnceInPeriodFlattening : boolean , xlinkFailGracefully : boolean } ;
5165
+ type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableAudioGroups : boolean , enableFastSwitching : boolean , ignoreEmptyAdaptationSet : boolean , ignoreMaxSegmentDuration : boolean , ignoreMinBufferTime : boolean , ignoreSuggestedPresentationDelay : boolean , initialSegmentLimit : number , keySystemsByURI : { [ key: string ]: string } , manifestPreprocessor : (a : Element ) => any , manifestPreprocessorTXml : (a : shaka.extern.xml.Node ) => any , multiTypeVariantsAllowed : boolean , sequenceMode : boolean , updatePeriod : number , useStreamOnceInPeriodFlattening : boolean , xlinkFailGracefully : boolean } ;
5166
5166
  }
5167
5167
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5168
5168
  declare namespace shaka.extern {
@@ -5202,7 +5202,7 @@ declare namespace shaka.extern {
5202
5202
  }
5203
5203
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5204
5204
  declare namespace shaka.extern {
5205
- type ManifestConfiguration = { availabilityWindowOverride : number , dash : shaka.extern.DashManifestConfiguration , defaultPresentationDelay : number , disableAudio : boolean , disableText : boolean , disableThumbnails : boolean , disableVideo : boolean , hls : shaka.extern.HlsManifestConfiguration , mss : shaka.extern.MssManifestConfiguration , raiseFatalErrorOnManifestUpdateRequestFailure : boolean , retryParameters : shaka.extern.RetryParameters , segmentRelativeVttTiming : boolean } ;
5205
+ type ManifestConfiguration = { availabilityWindowOverride : number , dash : shaka.extern.DashManifestConfiguration , defaultPresentationDelay : number , disableAudio : boolean , disableText : boolean , disableThumbnails : boolean , disableVideo : boolean , hls : shaka.extern.HlsManifestConfiguration , ignoreDrmInfo : boolean , mss : shaka.extern.MssManifestConfiguration , raiseFatalErrorOnManifestUpdateRequestFailure : boolean , retryParameters : shaka.extern.RetryParameters , segmentRelativeVttTiming : boolean } ;
5206
5206
  }
5207
5207
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5208
5208
  declare namespace shaka.extern {
@@ -1052,7 +1052,7 @@ goog.exportProperty(shaka.util.FairPlayUtils,"verimatrixFairPlayRequest",shaka.u
1052
1052
  goog.exportProperty(shaka.util.FairPlayUtils,"verimatrixInitDataTransform",shaka.util.FairPlayUtils.verimatrixInitDataTransform);goog.exportProperty(shaka.util.FairPlayUtils,"initDataTransform",shaka.util.FairPlayUtils.initDataTransform);goog.exportProperty(shaka.util.FairPlayUtils,"defaultGetContentId",shaka.util.FairPlayUtils.defaultGetContentId);goog.exportProperty(shaka.util.FairPlayUtils,"isFairPlaySupported",shaka.util.FairPlayUtils.isFairPlaySupported);shaka.util.PlayerConfiguration=function(){};
1053
1053
  shaka.util.PlayerConfiguration.createDefault=function(){var a=Infinity;navigator.connection&&navigator.connection.saveData&&(a=360);var b={retryParameters:shaka.net.NetworkingEngine.defaultRetryParameters(),servers:{},clearKeys:{},advanced:{},delayLicenseRequestUntilPlayed:!1,persistentSessionOnlinePlayback:!1,persistentSessionsMetadata:[],initDataTransform:function(m,n,p){shaka.util.Platform.isMediaKeysPolyfilled()&&"skd"==n&&(n=p.serverCertificate,p=shaka.util.FairPlayUtils.defaultGetContentId(m),m=
1054
1054
  shaka.util.FairPlayUtils.initDataTransform(m,p,n));return m},logLicenseExchange:!1,updateExpirationTime:1,preferredKeySystems:[],keySystemsMapping:{},parseInbandPsshEnabled:shaka.util.Platform.isXboxOne(),minHdcpVersion:"",ignoreDuplicateInitData:!shaka.util.Platform.isTizen2()};(shaka.util.Platform.isXboxOne()||shaka.util.Platform.isPS4())&&b.preferredKeySystems.push("com.microsoft.playready");var c=shaka.config.CodecSwitchingStrategy.RELOAD,d=!1;shaka.util.Platform.supportsSmoothCodecSwitching()&&
1055
- (c=shaka.config.CodecSwitchingStrategy.SMOOTH,d=!0);d={retryParameters:shaka.net.NetworkingEngine.defaultRetryParameters(),availabilityWindowOverride:NaN,disableAudio:!1,disableVideo:!1,disableText:!1,disableThumbnails:!1,defaultPresentationDelay:0,segmentRelativeVttTiming:!1,raiseFatalErrorOnManifestUpdateRequestFailure:!1,dash:{clockSyncUri:"",ignoreDrmInfo:!1,disableXlinkProcessing:!1,xlinkFailGracefully:!1,ignoreMinBufferTime:!1,autoCorrectDrift:!0,initialSegmentLimit:1E3,ignoreSuggestedPresentationDelay:!1,
1055
+ (c=shaka.config.CodecSwitchingStrategy.SMOOTH,d=!0);d={retryParameters:shaka.net.NetworkingEngine.defaultRetryParameters(),availabilityWindowOverride:NaN,disableAudio:!1,disableVideo:!1,disableText:!1,disableThumbnails:!1,defaultPresentationDelay:0,segmentRelativeVttTiming:!1,raiseFatalErrorOnManifestUpdateRequestFailure:!1,ignoreDrmInfo:!1,dash:{clockSyncUri:"",disableXlinkProcessing:!1,xlinkFailGracefully:!1,ignoreMinBufferTime:!1,autoCorrectDrift:!0,initialSegmentLimit:1E3,ignoreSuggestedPresentationDelay:!1,
1056
1056
  ignoreEmptyAdaptationSet:!1,ignoreMaxSegmentDuration:!1,keySystemsByURI:{"urn:uuid:1077efec-c0b2-4d02-ace3-3c1e52e2fb4b":"org.w3.clearkey","urn:uuid:e2719d58-a985-b3c9-781a-b030af78d30e":"org.w3.clearkey","urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed":"com.widevine.alpha","urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95":"com.microsoft.playready","urn:uuid:79f0049a-4098-8642-ab92-e65be0885f95":"com.microsoft.playready"},manifestPreprocessor:shaka.util.PlayerConfiguration.defaultManifestPreprocessor,
1057
1057
  manifestPreprocessorTXml:shaka.util.PlayerConfiguration.defaultManifestPreprocessorTXml,sequenceMode:!1,enableAudioGroups:!1,multiTypeVariantsAllowed:d,useStreamOnceInPeriodFlattening:!1,updatePeriod:-1,enableFastSwitching:!0},hls:{ignoreTextStreamFailures:!1,ignoreImageStreamFailures:!1,defaultAudioCodec:"mp4a.40.2",defaultVideoCodec:"avc1.42E01E",ignoreManifestProgramDateTime:!1,ignoreManifestProgramDateTimeForTypes:[],mediaPlaylistFullMimeType:'video/mp2t; codecs="avc1.42E01E, mp4a.40.2"',useSafariBehaviorForLive:!0,
1058
1058
  liveSegmentsDelay:3,sequenceMode:shaka.util.Platform.supportsSequenceMode(),ignoreManifestTimestampsInSegmentsMode:!1,disableCodecGuessing:!1,disableClosedCaptionsDetection:!1,allowLowLatencyByteRangeOptimization:!0},mss:{manifestPreprocessor:shaka.util.PlayerConfiguration.defaultManifestPreprocessor,manifestPreprocessorTXml:shaka.util.PlayerConfiguration.defaultManifestPreprocessorTXml,sequenceMode:!1,keySystemsBySystemId:{"9a04f079-9840-4286-ab92-e65be0885f95":"com.microsoft.playready","79f0049a-4098-8642-ab92-e65be0885f95":"com.microsoft.playready"}}};
@@ -1290,10 +1290,10 @@ onError:function(b){return a.onError_(b)},onEvent:function(b){return a.dispatchE
1290
1290
  c)},onMetadata:function(b,c,d){a.processTimedMetadataMediaSrc_(b,c,d)},disableStream:function(b,c){return a.disableStream(b,c)}})};
1291
1291
  shaka.Player.prototype.configure=function(a,b){goog.asserts.assert(this.config_,"Config must not be null!");goog.asserts.assert("object"==typeof a||2==arguments.length,"String configs should have values!");2==arguments.length&&"string"==typeof a&&(a=shaka.util.ConfigUtils.convertToConfigObject(a,b));goog.asserts.assert("object"==typeof a,"Should be an object!");a.streaming&&"forceTransmuxTS"in a.streaming&&(shaka.Deprecate.deprecateFeature(5,"streaming.forceTransmuxTS configuration","Please Use mediaSource.forceTransmux instead."),
1292
1292
  a.mediaSource.mediaSource=a.streaming.forceTransmuxTS,delete a.streaming.forceTransmuxTS);a.streaming&&"forceTransmux"in a.streaming&&(shaka.Deprecate.deprecateFeature(5,"streaming.forceTransmux configuration","Please Use mediaSource.forceTransmux instead."),a.mediaSource.mediaSource=a.streaming.forceTransmux,delete a.streaming.forceTransmux);a.streaming&&"useNativeHlsOnSafari"in a.streaming&&shaka.Deprecate.deprecateFeature(5,"streaming.useNativeHlsOnSafari configuration","Please Use streaming.useNativeHlsForFairPlay or streaming.preferNativeHls instead.");
1293
- if(a.mediaSource&&"sourceBufferExtraFeatures"in a.mediaSource){shaka.Deprecate.deprecateFeature(5,"mediaSource.sourceBufferExtraFeatures configuration","Please Use mediaSource.addExtraFeaturesToSourceBuffer() instead.");var c=a.mediaSource.sourceBufferExtraFeatures;a.mediaSource.addExtraFeaturesToSourceBuffer=function(){return c};delete a.mediaSource.sourceBufferExtraFeatures}a.streaming&&a.streaming.lowLatencyMode&&(void 0==a.streaming.inaccurateManifestTolerance&&(a.streaming.inaccurateManifestTolerance=
1294
- 0),void 0==a.streaming.rebufferingGoal&&(a.streaming.rebufferingGoal=.01),void 0==a.streaming.segmentPrefetchLimit&&(a.streaming.segmentPrefetchLimit=2),void 0==a.streaming.updateIntervalSeconds&&(a.streaming.updateIntervalSeconds=.1),void 0==a.streaming.maxDisabledTime&&(a.streaming.maxDisabledTime=1),void 0==a.streaming.retryParameters&&(a.streaming.retryParameters={}),void 0==a.streaming.retryParameters.baseDelay&&(a.streaming.retryParameters.baseDelay=100),void 0==a.manifest&&(a.manifest={}),
1295
- void 0==a.manifest.dash&&(a.manifest.dash={}),void 0==a.manifest.dash.autoCorrectDrift&&(a.manifest.dash.autoCorrectDrift=!1),void 0==a.manifest.retryParameters&&(a.manifest.retryParameters={}),void 0==a.manifest.retryParameters.baseDelay&&(a.manifest.retryParameters.baseDelay=100),void 0==a.drm&&(a.drm={}),void 0==a.drm.retryParameters&&(a.drm.retryParameters={}),void 0==a.drm.retryParameters.baseDelay&&(a.drm.retryParameters.baseDelay=100));var d=shaka.util.PlayerConfiguration.mergeConfigObjects(this.config_,
1296
- a,this.defaultConfig_());this.applyConfig_();return d};
1293
+ if(a.mediaSource&&"sourceBufferExtraFeatures"in a.mediaSource){shaka.Deprecate.deprecateFeature(5,"mediaSource.sourceBufferExtraFeatures configuration","Please Use mediaSource.addExtraFeaturesToSourceBuffer() instead.");var c=a.mediaSource.sourceBufferExtraFeatures;a.mediaSource.addExtraFeaturesToSourceBuffer=function(){return c};delete a.mediaSource.sourceBufferExtraFeatures}a.manifest&&a.manifest.dash&&"ignoreDrmInfo"in a.manifest.dash&&(shaka.Deprecate.deprecateFeature(5,"manifest.dash.ignoreDrmInfo configuration",
1294
+ "Please Use manifest.ignoreDrmInfo instead."),a.manifest.ignoreDrmInfo=a.manifest.dash.ignoreDrmInfo,delete a.manifest.dash.ignoreDrmInfo);a.streaming&&a.streaming.lowLatencyMode&&(void 0==a.streaming.inaccurateManifestTolerance&&(a.streaming.inaccurateManifestTolerance=0),void 0==a.streaming.rebufferingGoal&&(a.streaming.rebufferingGoal=.01),void 0==a.streaming.segmentPrefetchLimit&&(a.streaming.segmentPrefetchLimit=2),void 0==a.streaming.updateIntervalSeconds&&(a.streaming.updateIntervalSeconds=
1295
+ .1),void 0==a.streaming.maxDisabledTime&&(a.streaming.maxDisabledTime=1),void 0==a.streaming.retryParameters&&(a.streaming.retryParameters={}),void 0==a.streaming.retryParameters.baseDelay&&(a.streaming.retryParameters.baseDelay=100),void 0==a.manifest&&(a.manifest={}),void 0==a.manifest.dash&&(a.manifest.dash={}),void 0==a.manifest.dash.autoCorrectDrift&&(a.manifest.dash.autoCorrectDrift=!1),void 0==a.manifest.retryParameters&&(a.manifest.retryParameters={}),void 0==a.manifest.retryParameters.baseDelay&&
1296
+ (a.manifest.retryParameters.baseDelay=100),void 0==a.drm&&(a.drm={}),void 0==a.drm.retryParameters&&(a.drm.retryParameters={}),void 0==a.drm.retryParameters.baseDelay&&(a.drm.retryParameters.baseDelay=100));var d=shaka.util.PlayerConfiguration.mergeConfigObjects(this.config_,a,this.defaultConfig_());this.applyConfig_();return d};
1297
1297
  shaka.Player.prototype.applyConfig_=function(){this.manifestFilterer_=new shaka.media.ManifestFilterer(this.config_,this.maxHwRes_,this.drmEngine_);if(this.parser_){var a=shaka.util.ObjectUtils.cloneObject(this.config_.manifest);this.video_&&"AUDIO"===this.video_.nodeName&&(a.disableVideo=!0);this.parser_.configure(a)}this.drmEngine_&&this.drmEngine_.configure(this.config_.drm);if(this.streamingEngine_){this.streamingEngine_.configure(this.config_.streaming);try{if(this.loadMode_!=shaka.Player.LoadMode.DESTROYED&&
1298
1298
  this.manifestFilterer_.filterManifestWithRestrictions(this.manifest_))this.onTracksChanged_()}catch(c){this.onError_(c)}this.abrManager_&&this.updateAbrManagerVariants_();!(a=this.streamingEngine_.getCurrentVariant())||a.allowedByApplication&&a.allowedByKeySystem||(shaka.log.debug("Choosing new variant after changing configuration"),this.chooseVariantAndSwitch_())}this.networkingEngine_&&(this.networkingEngine_.setForceHTTP(this.config_.streaming.forceHTTP),this.networkingEngine_.setForceHTTPS(this.config_.streaming.forceHTTPS));
1299
1299
  if(this.mediaSourceEngine_)if(this.mediaSourceEngine_.configure(this.config_.mediaSource),this.mediaSourceEngine_.setSegmentRelativeVttTiming(this.config_.manifest.segmentRelativeVttTiming),a=this.config_.textDisplayFactory,this.lastTextFactory_!=a){var b=a();b.configure?b.configure(this.config_.textDisplayer):shaka.Deprecate.deprecateFeature(5,"Text displayer w/ configure",'Text displayer should have a "configure" method!');this.mediaSourceEngine_.setTextDisplayer(b);this.lastTextFactory_=a;this.streamingEngine_&&
@@ -1442,7 +1442,7 @@ goog.exportProperty(shaka.Player.prototype,"resetConfiguration",shaka.Player.pro
1442
1442
  goog.exportProperty(shaka.Player.prototype,"releaseAllMutexes",shaka.Player.prototype.releaseAllMutexes);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);
1443
1443
  goog.exportProperty(shaka.Player.prototype,"updateStartTime",shaka.Player.prototype.updateStartTime);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);
1444
1444
  goog.exportProperty(shaka.Player,"isBrowserSupported",shaka.Player.isBrowserSupported);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);
1445
- shaka.Player.TYPICAL_BUFFERING_THRESHOLD_=.5;shaka.Player.version="v4.9.2-caf5-debug";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.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_++};
1445
+ shaka.Player.TYPICAL_BUFFERING_THRESHOLD_=.5;shaka.Player.version="v4.9.2-caf6-debug";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.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_++};
1446
1446
  shaka.ads.AdsStats.prototype.getBlob=function(){return{loadTimes:this.loadTimes_,started:this.started_,playedCompletely:this.playedCompletely_,skipped:this.skipped_}};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.getDuration=function(){return this.ad_.getDuration()};
1447
1447
  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_};shaka.ads.ClientSideAd.prototype.isSkippable=function(){return 0<=this.ad_.getSkipTimeOffset()};
1448
1448
  shaka.ads.ClientSideAd.prototype.getTimeUntilSkippable=function(){var a=this.ad_.getSkipTimeOffset();a=this.getRemainingTime()-a;return Math.max(a,0)};shaka.ads.ClientSideAd.prototype.canSkipNow=function(){return this.manager_.getAdSkippableState()};shaka.ads.ClientSideAd.prototype.skip=function(){return this.manager_.skip()};shaka.ads.ClientSideAd.prototype.setPaused=function(a){this.isPaused_=a};shaka.ads.ClientSideAd.prototype.pause=function(){return this.manager_.pause()};
@@ -2021,7 +2021,7 @@ x.next();!u.done;u=x.next()){u=u.value;var z=u.attributes.schemeIdUri;"http://da
2021
2021
  for(u=x.next();!u.done;u=x.next())u=u.value,z=u.attributes.schemeIdUri,"http://dashif.org/guidelines/last-segment-number"==z?y=parseInt(u.attributes.value,10)-1:"urn:mpeg:mpegB:cicp:TransferCharacteristics"==z?r=q(parseInt(u.attributes.value,10)):"urn:mpeg:mpegB:cicp:ColourPrimaries"==z&&(t=w(parseInt(u.attributes.value,10)));w=d.findChildren(b,"Accessibility");q=shaka.util.LanguageUtils;var A=new Map;w=$jscomp.makeIterator(w);for(u=w.next();!u.done;u=w.next())if(x=u.value,u=x.attributes.schemeIdUri,
2022
2022
  x=x.attributes.value,"urn:scte:dash:cc:cea-608:2015"==u)if(u=1,null!=x){x=x.split(";");z=$jscomp.makeIterator(x);for(var B=z.next();!B.done;B=z.next()){var E=B.value,C=B=void 0;E.includes("=")?(E=E.split("="),B=E[0].startsWith("CC")?E[0]:"CC"+E[0],C=E[1]||"und"):(B="CC"+u,2==x.length?u+=2:u++,C=E);A.set(B,q.normalize(C))}}else A.set("CC1","und");else if("urn:scte:dash:cc:cea-708:2015"==u)if(u=1,null!=x)for(x=$jscomp.makeIterator(x.split(";")),B=x.next();!B.done;B=x.next())B=B.value,E=z=void 0,B.includes("=")?
2023
2023
  (B=B.split("="),z="svc"+B[0],E=B[1].split(",")[0].split(":").pop()):(z="svc"+u,u++,E=B),A.set(z,q.normalize(E));else A.set("svc1","und");else if("urn:mpeg:dash:role:2011"==u)null!=x&&(m.push(x),"captions"==x&&(n=f.TextStreamKind.CLOSED_CAPTION));else if("urn:tva:metadata:cs:AudioPurposeCS:2007"==u)if("1"==x)var F=shaka.media.ManifestParser.AccessibilityPurpose.VISUALLY_IMPAIRED;else"2"==x&&(F=shaka.media.ManifestParser.AccessibilityPurpose.HARD_OF_HEARING);if(p)return null;f=d.findChildren(b,"ContentProtection");
2024
- var I=h.parseFromAdaptationSet(f,this.config_.dash.ignoreDrmInfo,this.config_.dash.keySystemsByURI),D=shaka.util.LanguageUtils.normalize(a.adaptationSet.language||"und"),G=b.attributes.label;(h=d.findChildren(b,"Label"))&&h.length&&(h=shaka.util.TXml.getTextContents(h[0]))&&(G=h);d=d.findChildren(b,"Representation");b=d.map(function(H){if(H=c.parseRepresentation_(a,I,n,D,G,k,m,A,H,F,y))H.hdr=H.hdr||r,H.colorGamut=H.colorGamut||t,H.fastSwitching=v;return H}).filter(function(H){return!!H});if(0==b.length){l=
2024
+ var I=h.parseFromAdaptationSet(f,this.config_.ignoreDrmInfo,this.config_.dash.keySystemsByURI),D=shaka.util.LanguageUtils.normalize(a.adaptationSet.language||"und"),G=b.attributes.label;(h=d.findChildren(b,"Label"))&&h.length&&(h=shaka.util.TXml.getTextContents(h[0]))&&(G=h);d=d.findChildren(b,"Representation");b=d.map(function(H){if(H=c.parseRepresentation_(a,I,n,D,G,k,m,A,H,F,y))H.hdr=H.hdr||r,H.colorGamut=H.colorGamut||t,H.fastSwitching=v;return H}).filter(function(H){return!!H});if(0==b.length){l=
2025
2025
  a.adaptationSet.contentType==g.IMAGE;if(this.config_.dash.ignoreEmptyAdaptationSet||e||l)return null;throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.DASH_EMPTY_ADAPTATION_SET);}if(!a.adaptationSet.contentType||a.adaptationSet.contentType==g.APPLICATION)for(a.adaptationSet.contentType=shaka.dash.DashParser.guessContentType_(b[0].mimeType,b[0].codecs),g=$jscomp.makeIterator(b),h=g.next();!h.done;h=g.next())h.value.type=a.adaptationSet.contentType;
2026
2026
  g=a.adaptationSet.id||"__fake__"+this.globalId_++;e=$jscomp.makeIterator(b);for(h=e.next();!h.done;h=e.next()){h=h.value;f=$jscomp.makeIterator(I.drmInfos);for(p=f.next();!p.done;p=f.next())p=p.value,p.keyIds=p.keyIds&&h.keyIds?new Set([].concat($jscomp.arrayFromIterable(p.keyIds),$jscomp.arrayFromIterable(h.keyIds))):p.keyIds||h.keyIds;this.config_.dash.enableAudioGroups&&(h.groupId=g)}e=d.map(function(H){return H.attributes.id}).filter(shaka.util.Functional.isNotNull);return{id:g,contentType:a.adaptationSet.contentType,
2027
2027
  language:D,main:k,streams:b,drmInfos:I.drmInfos,trickModeFor:l,representationIds:e}};
@@ -2029,7 +2029,7 @@ shaka.dash.DashParser.prototype.parseRepresentation_=function(a,b,c,d,e,f,g,h,k,
2029
2029
  a.bandwidth=p.parseAttr(k,"bandwidth",p.parsePositiveInt)||0;var w=a.representation.contentType,u=w==q.TEXT||w==q.APPLICATION;q=w==q.IMAGE;try{var v=void 0;if(b.aes128Info){var x=a.representation.getBaseUris,z=shaka.util.ManifestParserUtils.resolveUris(x(),[b.aes128Info.keyUri]),y=shaka.net.NetworkingEngine.RequestType.KEY,A=shaka.net.NetworkingEngine.makeRequest(z,this.config_.retryParameters);v={bitsKey:128,blockCipherMode:"CBC",iv:b.aes128Info.iv,firstMediaSequenceNumber:0,fetchKey:function(){var G,
2030
2030
  H,J;return $jscomp.asyncExecutePromiseGeneratorProgram(function(K){if(1==K.nextAddress)return K.yield(n.makeNetworkRequest_(A,y),2);if(3!=K.nextAddress){G=K.yieldResult;if(!G.data||16!=G.data.byteLength)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.AES_128_INVALID_KEY_LENGTH);H={name:"AES-CBC"};J=v;return K.yield(window.crypto.subtle.importKey("raw",G.data,H,!0,["decrypt"]),3)}J.cryptoKey=K.yieldResult;v.fetchKey=void 0;K.jumpToEnd()})}}}a.representation.aesKey=
2031
2031
  v;x=function(G,H,J,K){return n.requestSegment_(G,H,J,K)};if(a.representation.segmentBase)var B=shaka.dash.SegmentBase.createStreamInfo(a,x,v);else if(a.representation.segmentList)B=shaka.dash.SegmentList.createStreamInfo(a,this.streamMap_,v);else if(a.representation.segmentTemplate)B=shaka.dash.SegmentTemplate.createStreamInfo(a,x,this.streamMap_,!!this.manifest_,this.config_.dash.initialSegmentLimit,this.periodDurations_,v,m,!1);else{goog.asserts.assert(u,"Must have Segment* with non-text streams.");
2032
- var E=a.periodInfo.duration||0,C=a.representation.getBaseUris;B={generateSegmentIndex:function(){var G=shaka.media.SegmentIndex.forSingleSegment(t,E,C());G.forEachTopLevelReference(function(H){H.mimeType=a.representation.mimeType;H.codecs=a.representation.codecs});return Promise.resolve(G)}}}}catch(G){if((u||q)&&G.code==shaka.util.Error.Code.DASH_NO_SEGMENT_INFO)return null;throw G;}m=p.findChildren(k,"ContentProtection");m=shaka.dash.ContentProtection.parseFromRepresentation(m,b,this.config_.dash.ignoreDrmInfo,
2032
+ var E=a.periodInfo.duration||0,C=a.representation.getBaseUris;B={generateSegmentIndex:function(){var G=shaka.media.SegmentIndex.forSingleSegment(t,E,C());G.forEachTopLevelReference(function(H){H.mimeType=a.representation.mimeType;H.codecs=a.representation.codecs});return Promise.resolve(G)}}}}catch(G){if((u||q)&&G.code==shaka.util.Error.Code.DASH_NO_SEGMENT_INFO)return null;throw G;}m=p.findChildren(k,"ContentProtection");m=shaka.dash.ContentProtection.parseFromRepresentation(m,b,this.config_.ignoreDrmInfo,
2033
2033
  this.config_.dash.keySystemsByURI);m=new Set(m?[m]:[]);x=!1;p.findChildren(k,"SupplementalProperty").some(function(G){return"tag:dolby.com,2018:dash:EC3_ExtensionType:2018"==G.attributes.schemeIdUri&&"JOC"==G.attributes.value})&&(x=!0);z=!1;u&&(z=g.includes("forced_subtitle")||g.includes("forced-subtitle"));var F;if(q&&((k=p.findChildren(k,"EssentialProperty").find(function(G){return["http://dashif.org/thumbnail_tile","http://dashif.org/guidelines/thumbnail_tile"].includes(G.attributes.schemeIdUri)}))&&
2034
2034
  (F=k.attributes.value),!F))return null;var I;k=a.representation.codecs;a.profiles.includes("http://dashif.org/guidelines/dash-if-uhd#hevc-hdr-pq10")&&(k.includes("hvc1.2.4.L153.B0")||k.includes("hev1.2.4.L153.B0"))&&(I="PQ");p=a.representation.id?a.period.id+","+a.representation.id:"";this.patchLocationNodes_.length&&r&&this.contextCache_.set(a.period.id+","+r,this.cloneContext_(a));var D=p&&this.streamMap_[p]?this.streamMap_[p]:{id:this.globalId_++,originalId:a.representation.id,groupId:null,createSegmentIndex:function(){return Promise.resolve()},
2035
2035
  closeSegmentIndex:function(){D.segmentIndex&&(D.segmentIndex.release(),D.segmentIndex=null)},segmentIndex:null,mimeType:a.representation.mimeType,codecs:k,frameRate:a.representation.frameRate,pixelAspectRatio:a.representation.pixelAspectRatio,bandwidth:a.bandwidth,width:a.representation.width,height:a.representation.height,kind:c,encrypted:0<b.drmInfos.length,drmInfos:b.drmInfos,keyIds:m,language:d,originalLanguage:a.adaptationSet.language,label:e,type:a.adaptationSet.contentType,primary:f,trickModeVideo:null,
@@ -2128,11 +2128,11 @@ this.groupIdToStreamInfosMap_.get(f)){f=$jscomp.makeIterator(f);for(var g=f.next
2128
2128
  shaka.hls.HlsParser.prototype.parseImages_=function(a,b){var c=this,d,e;return $jscomp.asyncExecutePromiseGeneratorProgram(function(f){if(1==f.nextAddress)return d=a.map(function(g){var h,k,l;return $jscomp.asyncExecutePromiseGeneratorProgram(function(m){if(1==m.nextAddress){if(h=c.config_.disableThumbnails)return m.return(null);m.setCatchFinallyBlocks(2);return m.yield(c.createStreamInfoFromImageTag_(g),4)}if(2!=m.nextAddress)return k=m.yieldResult,m.return(k.stream);l=m.enterCatchBlock();if(c.config_.hls.ignoreImageStreamFailures)return m.return(null);
2129
2129
  throw l;})}).concat(b.map(function(g){if(c.config_.disableThumbnails)return null;try{var h=c.createStreamInfoFromIframeTag_(g);return"mjpg"!==h.stream.codecs?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}))})};
2130
2130
  shaka.hls.HlsParser.prototype.createStreamInfosFromMediaTags_=function(a,b){a=a.filter(function(g){var h=g.getAttributeValue("URI")||"";return"SUBTITLES"!=g.getAttributeValue("TYPE")&&""!=h});var c={};a=$jscomp.makeIterator(a);for(var d=a.next();!d.done;d=a.next()){d=d.value;var e=d.getTagKey();c[e]?c[e].push(d):c[e]=[d]}for(var f in c)this.createStreamInfoFromMediaTags_(c[f],b)};
2131
- shaka.hls.HlsParser.prototype.createVariantsForTags_=function(a,b,c,d,e){var f=this,g,h,k,l,m,n,p,q,r,t,w,u,v,x,z,y,A,B,E,C,F,I,D,G,H,J,K,M,L,O,P,N,U,R,T,V;return $jscomp.asyncExecutePromiseGeneratorProgram(function(Q){switch(Q.nextAddress){case 1:g=[];h=new Set;if(!(0<b.length)){Q.jumpTo(2);break}k=$jscomp.makeIterator(b);l=k.next();case 3:if(l.done){Q.jumpTo(2);break}m=l.value;n=m.getRequiredAttrValue("METHOD");p=m.getAttributeValue("KEYFORMAT")||"identity";q=null;if("NONE"==n){Q.jumpTo(4);break}if(f.isAesMethod_(n)){r=
2132
- shaka.hls.Utils.constructSegmentUris(d(),m.getRequiredAttrValue("URI"),e);t=r.sort().join("");f.aesKeyMap_.has(t)||(w=shaka.net.NetworkingEngine.RequestType.KEY,u=shaka.net.NetworkingEngine.makeRequest(r,f.config_.retryParameters),v=f.makeNetworkRequest_(u,w),f.aesKeyMap_.set(t,v));Q.jumpTo(4);break}if("identity"!=p){q=(x=shaka.hls.HlsParser.KEYFORMATS_TO_DRM_PARSERS_[p])?x(m,""):null;Q.jumpTo(6);break}return Q.yield(f.identityDrmParser_(m,"",d,null,e),9);case 9:q=Q.yieldResult;case 6:if(q){if(q.keyIds)for(z=
2133
- $jscomp.makeIterator(q.keyIds),y=z.next();!y.done;y=z.next())A=y.value,h.add(A);g.push(q)}else shaka.log.warning("Unsupported HLS KEYFORMAT",p);case 4:l=k.next();Q.jumpTo(3);break;case 2:B={};E=$jscomp.makeIterator(a);for(C=E.next();!C.done;C=E.next())F=C.value,I=F.getTagKey(),B[I]?B[I].push(F):B[I]=[F];D=[];for(G in B)H=B[G],J=H[0],K=J.getAttributeValue("FRAME-RATE"),M=Number(J.getAttributeValue("AVERAGE-BANDWIDTH"))||Number(J.getRequiredAttrValue("BANDWIDTH")),L=J.getAttributeValue("RESOLUTION"),
2134
- O=$jscomp.makeIterator(L?L.split("x"):[null,null]),P=O.next().value,N=O.next().value,U=J.getAttributeValue("VIDEO-RANGE"),(R=J.getAttributeValue("REQ-VIDEO-LAYOUT"))&&R.includes(",")&&(T=R.split(",").filter(function(S){return"CH-STEREO"==S||"CH-MONO"==S}),R=T[0]),R=R||"CH-MONO",V=f.createStreamInfosForVariantTags_(H,c,L,K,M),goog.asserts.assert(V.audio.length||V.video.length,"We should have created a stream!"),D.push.apply(D,$jscomp.arrayFromIterable(f.createVariants_(V.audio,V.video,M,P,N,K,U,R,
2135
- g,h)));return Q.return(D.filter(function(S){return null!=S}))}})};
2131
+ shaka.hls.HlsParser.prototype.createVariantsForTags_=function(a,b,c,d,e){var f=this,g,h,k,l,m,n,p,q,r,t,w,u,v,x,z,y,A,B,E,C,F,I,D,G,H,J,K,M,L,O,P,N,U,R,T,V;return $jscomp.asyncExecutePromiseGeneratorProgram(function(Q){switch(Q.nextAddress){case 1:g=[];h=new Set;if(f.config_.ignoreDrmInfo||!(0<b.length)){Q.jumpTo(2);break}k=$jscomp.makeIterator(b);l=k.next();case 3:if(l.done){Q.jumpTo(2);break}m=l.value;n=m.getRequiredAttrValue("METHOD");p=m.getAttributeValue("KEYFORMAT")||"identity";q=null;if("NONE"==
2132
+ n){Q.jumpTo(4);break}if(f.isAesMethod_(n)){r=shaka.hls.Utils.constructSegmentUris(d(),m.getRequiredAttrValue("URI"),e);t=r.sort().join("");f.aesKeyMap_.has(t)||(w=shaka.net.NetworkingEngine.RequestType.KEY,u=shaka.net.NetworkingEngine.makeRequest(r,f.config_.retryParameters),v=f.makeNetworkRequest_(u,w),f.aesKeyMap_.set(t,v));Q.jumpTo(4);break}if("identity"!=p){q=(x=shaka.hls.HlsParser.KEYFORMATS_TO_DRM_PARSERS_[p])?x(m,""):null;Q.jumpTo(6);break}return Q.yield(f.identityDrmParser_(m,"",d,null,e),
2133
+ 9);case 9:q=Q.yieldResult;case 6:if(q){if(q.keyIds)for(z=$jscomp.makeIterator(q.keyIds),y=z.next();!y.done;y=z.next())A=y.value,h.add(A);g.push(q)}else shaka.log.warning("Unsupported HLS KEYFORMAT",p);case 4:l=k.next();Q.jumpTo(3);break;case 2:B={};E=$jscomp.makeIterator(a);for(C=E.next();!C.done;C=E.next())F=C.value,I=F.getTagKey(),B[I]?B[I].push(F):B[I]=[F];D=[];for(G in B)H=B[G],J=H[0],K=J.getAttributeValue("FRAME-RATE"),M=Number(J.getAttributeValue("AVERAGE-BANDWIDTH"))||Number(J.getRequiredAttrValue("BANDWIDTH")),
2134
+ L=J.getAttributeValue("RESOLUTION"),O=$jscomp.makeIterator(L?L.split("x"):[null,null]),P=O.next().value,N=O.next().value,U=J.getAttributeValue("VIDEO-RANGE"),(R=J.getAttributeValue("REQ-VIDEO-LAYOUT"))&&R.includes(",")&&(T=R.split(",").filter(function(S){return"CH-STEREO"==S||"CH-MONO"==S}),R=T[0]),R=R||"CH-MONO",V=f.createStreamInfosForVariantTags_(H,c,L,K,M),goog.asserts.assert(V.audio.length||V.video.length,"We should have created a stream!"),D.push.apply(D,$jscomp.arrayFromIterable(f.createVariants_(V.audio,
2135
+ V.video,M,P,N,K,U,R,g,h)));return Q.return(D.filter(function(S){return null!=S}))}})};
2136
2136
  shaka.hls.HlsParser.prototype.createStreamInfosForVariantTags_=function(a,b,c,d,e){d=shaka.util.ManifestParserUtils.ContentType;c={audio:[],video:[]};for(var f=new Map,g=[],h=!1,k=!1,l=$jscomp.makeIterator(a),m=l.next();!m.done;m=l.next()){m=m.value;var n=m.getAttributeValue("AUDIO"),p=m.getAttributeValue("VIDEO");goog.asserts.assert(null==n||null==p,"Unexpected: both video and audio described by media tags!");var q=n||p;if(q){g.includes(q)||g.push(q);var r=m.getAttributeValue("PATHWAY-ID");r&&f.set(q,
2137
2137
  r);n?h=!0:p&&(k=!0);shaka.log.debug("Guessing stream type for",m.toString())}}g.length&&b.length&&(l=b.filter(function(w){return g.includes(w.getRequiredAttrValue("GROUP-ID"))}),this.createStreamInfosFromMediaTags_(l,f));l=(f=g.sort().join(","))&&this.groupIdToStreamInfosMap_.has(f)?this.groupIdToStreamInfosMap_.get(f):[];h?c.audio.push.apply(c.audio,$jscomp.arrayFromIterable(l)):k&&c.video.push.apply(c.video,$jscomp.arrayFromIterable(l));k=!1;var t=a.map(function(w){return w.getRequiredAttrValue("URI")});
2138
2138
  p=c.audio.find(function(w){return w&&w.getUris().find(function(u){return t.includes(u)})});h=this.getCodecsForVariantTag_(a[0]);m=shaka.util.ManifestParserUtils.guessCodecsSafe(d.VIDEO,h);(n=shaka.util.ManifestParserUtils.guessCodecsSafe(d.AUDIO,h))&&!m?(d=d.AUDIO,shaka.log.debug("Guessing audio-only."),k=0<c.audio.length):!c.audio.length&&!c.video.length&&n&&m?(shaka.log.debug("Guessing multiplexed audio+video."),d=d.VIDEO,h=[[m,n].join()]):c.audio.length&&p?(shaka.log.debug("Guessing audio-only."),
@@ -2180,8 +2180,8 @@ shaka.hls.HlsParser.prototype.makeStreamObject_=function(a,b,c,d,e,f,g,h,k,l,m,n
2180
2180
  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?
2181
2181
  shaka.util.ManifestParserUtils.TextStreamKind.SUBTITLE:void 0,encrypted:!1,drmInfos:[],keyIds:new Set,language:this.getLanguage_(d),originalLanguage:d,label:f,type:c,primary:e,trickModeVideo:null,emsgSchemeIdUris:null,frameRate:void 0,pixelAspectRatio:void 0,width:void 0,height:void 0,bandwidth:void 0,roles:p,forced:l,channelsCount:g,audioSamplingRate:m,spatialAudio:n,closedCaptions:h,hdr:void 0,colorGamut:void 0,videoLayout:void 0,tilesLayout:void 0,accessibilityPurpose:q,external:!1,fastSwitching:!1,
2182
2182
  fullMimeTypes:new Set};this.setFullTypeForStream_(b);return b};
2183
- shaka.hls.HlsParser.prototype.parseDrmInfo_=function(a,b,c,d){var e=this,f,g,h,k,l,m,n,p,q,r,t,w,u,v,x,z,y,A,B,E,C,F,I,D,G,H,J,K;return $jscomp.asyncExecutePromiseGeneratorProgram(function(M){switch(M.nextAddress){case 1:f=new Map;if(a.segments)for(g=$jscomp.makeIterator(a.segments),h=g.next();!h.done;h=g.next())if(k=h.value,l=shaka.hls.Utils.filterTagsByName(k.tags,"EXT-X-KEY"),m=null,l.length)for(m=e.getInitSegmentReference_(a,k.tags,c,d),n=$jscomp.makeIterator(l),p=n.next();!p.done;p=n.next())q=
2184
- p.value,f.set(q,m);t=r=!1;w=[];u=new Set;v=$jscomp.makeIterator(f);x=v.next();case 2:if(x.done){M.jumpTo(4);break}z=x.value;y=$jscomp.makeIterator(z);A=y.next().value;B=y.next().value;E=A;C=B;F=E.getRequiredAttrValue("METHOD");if("NONE"==F){M.jumpTo(3);break}r=!0;I=E.getAttributeValue("KEYFORMAT")||"identity";D=null;if(e.isAesMethod_(F)){t=!0;M.jumpTo(3);break}if("identity"!=I){D=(G=shaka.hls.HlsParser.KEYFORMATS_TO_DRM_PARSERS_[I])?G(E,b):null;M.jumpTo(6);break}return M.yield(e.identityDrmParser_(E,
2183
+ shaka.hls.HlsParser.prototype.parseDrmInfo_=function(a,b,c,d){var e=this,f,g,h,k,l,m,n,p,q,r,t,w,u,v,x,z,y,A,B,E,C,F,I,D,G,H,J,K;return $jscomp.asyncExecutePromiseGeneratorProgram(function(M){switch(M.nextAddress){case 1:f=new Map;if(!e.config_.ignoreDrmInfo&&a.segments)for(g=$jscomp.makeIterator(a.segments),h=g.next();!h.done;h=g.next())if(k=h.value,l=shaka.hls.Utils.filterTagsByName(k.tags,"EXT-X-KEY"),m=null,l.length)for(m=e.getInitSegmentReference_(a,k.tags,c,d),n=$jscomp.makeIterator(l),p=n.next();!p.done;p=
2184
+ n.next())q=p.value,f.set(q,m);t=r=!1;w=[];u=new Set;v=$jscomp.makeIterator(f);x=v.next();case 2:if(x.done){M.jumpTo(4);break}z=x.value;y=$jscomp.makeIterator(z);A=y.next().value;B=y.next().value;E=A;C=B;F=E.getRequiredAttrValue("METHOD");if("NONE"==F){M.jumpTo(3);break}r=!0;I=E.getAttributeValue("KEYFORMAT")||"identity";D=null;if(e.isAesMethod_(F)){t=!0;M.jumpTo(3);break}if("identity"!=I){D=(G=shaka.hls.HlsParser.KEYFORMATS_TO_DRM_PARSERS_[I])?G(E,b):null;M.jumpTo(6);break}return M.yield(e.identityDrmParser_(E,
2185
2185
  b,c,C,d),8);case 8:D=M.yieldResult;case 6:if(D){if(D.keyIds)for(H=$jscomp.makeIterator(D.keyIds),J=H.next();!J.done;J=H.next())K=J.value,u.add(K);w.push(D)}else shaka.log.warning("Unsupported HLS KEYFORMAT",I);case 3:x=v.next();M.jumpTo(2);break;case 4:return M.return({drmInfos:w,keyIds:u,encrypted:r,aesEncrypted:t})}})};
2186
2186
  shaka.hls.HlsParser.prototype.parseAESDrmTag_=function(a,b,c,d){var e=this;if(!window.crypto||!window.crypto.subtle)throw shaka.log.alwaysWarn("Web Crypto API is not available to decrypt AES. (Web Crypto only exists in secure origins like https)"),new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.NO_WEB_CRYPTO_API);var f=0,g=a.getAttributeValue("IV","");if(g){var h=shaka.util.Uint8ArrayUtils.fromHex(g.substr(2));if(16!=h.byteLength)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,
2187
2187
  shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.AES_128_INVALID_IV_LENGTH);}else f=shaka.hls.Utils.getFirstTagWithNameAsNumber(b.tags,"EXT-X-MEDIA-SEQUENCE",0);b=a.toString()+"-"+f;if(!this.aesKeyInfoMap_.has(b)){var k={bitsKey:128,blockCipherMode:"CBC",iv:h,firstMediaSequenceNumber:f};switch(a.getRequiredAttrValue("METHOD")){case "AES-256":k.bitsKey=256;break;case "AES-256-CTR":k.bitsKey=256,k.blockCipherMode="CTR"}k.fetchKey=function(){var l,m,n,p,q,r,t,w;return $jscomp.asyncExecutePromiseGeneratorProgram(function(u){if(1==