shaka-player 4.8.10 → 4.9.1

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.
Files changed (66) hide show
  1. package/README.md +5 -0
  2. package/dist/controls.css +1 -1
  3. package/dist/controls.css.map +1 -1
  4. package/dist/deps.js +5 -5
  5. package/dist/locales.js +34 -34
  6. package/dist/shaka-player.compiled.d.ts +39 -18
  7. package/dist/shaka-player.compiled.debug.d.ts +39 -18
  8. package/dist/shaka-player.compiled.debug.externs.js +32 -12
  9. package/dist/shaka-player.compiled.debug.js +638 -579
  10. package/dist/shaka-player.compiled.debug.map +4 -4
  11. package/dist/shaka-player.compiled.externs.js +32 -12
  12. package/dist/shaka-player.compiled.js +1272 -1237
  13. package/dist/shaka-player.compiled.map +4 -4
  14. package/dist/shaka-player.ui.d.ts +39 -18
  15. package/dist/shaka-player.ui.debug.d.ts +39 -18
  16. package/dist/shaka-player.ui.debug.externs.js +43 -23
  17. package/dist/shaka-player.ui.debug.js +668 -609
  18. package/dist/shaka-player.ui.debug.map +4 -4
  19. package/dist/shaka-player.ui.externs.js +43 -23
  20. package/dist/shaka-player.ui.js +1487 -1451
  21. package/dist/shaka-player.ui.map +4 -4
  22. package/externs/shaka/manifest.js +11 -1
  23. package/externs/shaka/offline.js +3 -0
  24. package/externs/shaka/player.js +105 -12
  25. package/externs/tizen.js +1 -1
  26. package/lib/abr/simple_abr_manager.js +5 -0
  27. package/lib/ads/media_tailor_ad.js +11 -0
  28. package/lib/ads/media_tailor_ad_manager.js +37 -3
  29. package/lib/dash/dash_parser.js +655 -46
  30. package/lib/dash/mpd_utils.js +7 -8
  31. package/lib/dash/segment_template.js +65 -10
  32. package/lib/hls/hls_parser.js +92 -34
  33. package/lib/media/content_workarounds.js +4 -2
  34. package/lib/media/drm_engine.js +274 -40
  35. package/lib/media/manifest_filterer.js +2 -2
  36. package/lib/media/media_source_engine.js +66 -31
  37. package/lib/media/segment_utils.js +14 -3
  38. package/lib/mss/mss_parser.js +2 -0
  39. package/lib/net/http_plugin_utils.js +2 -1
  40. package/lib/net/networking_engine.js +14 -0
  41. package/lib/offline/indexeddb/v1_storage_cell.js +1 -0
  42. package/lib/offline/indexeddb/v2_storage_cell.js +1 -0
  43. package/lib/offline/manifest_converter.js +2 -0
  44. package/lib/offline/storage.js +1 -0
  45. package/lib/player.js +220 -14
  46. package/lib/polyfill/media_capabilities.js +10 -35
  47. package/lib/transmuxer/aac_transmuxer.js +4 -2
  48. package/lib/transmuxer/ac3_transmuxer.js +2 -1
  49. package/lib/transmuxer/ec3_transmuxer.js +2 -1
  50. package/lib/transmuxer/mp3_transmuxer.js +4 -2
  51. package/lib/transmuxer/mpeg_ts_transmuxer.js +2 -1
  52. package/lib/transmuxer/mss_transmuxer.js +4 -2
  53. package/lib/transmuxer/ts_transmuxer.js +44 -24
  54. package/lib/util/config_utils.js +74 -6
  55. package/lib/util/error.js +17 -8
  56. package/lib/util/mp4_box_parsers.js +23 -2
  57. package/lib/util/periods.js +51 -28
  58. package/lib/util/platform.js +3 -1
  59. package/lib/util/player_configuration.js +20 -8
  60. package/lib/util/stream_utils.js +62 -30
  61. package/lib/util/tXml.js +74 -6
  62. package/package.json +2 -2
  63. package/support.html +1 -0
  64. package/ui/controls.js +4 -0
  65. package/ui/less/ad_controls.less +2 -1
  66. package/ui/resolution_selection.js +12 -3
@@ -79,6 +79,15 @@ declare namespace shaka {
79
79
  * else.
80
80
  */
81
81
  detach (keepAdManager ? : boolean ) : Promise < any > ;
82
+ /**
83
+ * Detach the player from the current media element, if any, and returns a
84
+ * PreloadManager that contains the loaded manifest of that asset, if any.
85
+ * Allows for the asset to be re-loaded by this player faster, in the future.
86
+ * When in src= mode, this detach but does not make a PreloadManager.
87
+ * Leaves the player in a state where it cannot play media, until it has been
88
+ * attached to something else.
89
+ */
90
+ detachAndSavePreload (keepAdManager ? : boolean ) : Promise < shaka.media.PreloadManager | null > ;
82
91
  /**
83
92
  * Get the drm info used to initialize EME. If EME is not being used, this
84
93
  * will return <code>null</code>. If the player is idle or has not initialized
@@ -183,6 +192,12 @@ declare namespace shaka {
183
192
  */
184
193
  getMediaElement ( ) : HTMLMediaElement | null ;
185
194
  getNetworkingEngine ( ) : shaka.net.NetworkingEngine | null ;
195
+ /**
196
+ * Return a copy of the current non default configuration. Modifications of
197
+ * the returned value will not affect the Player's active configuration.
198
+ * You must call <code>player.configure()</code> to make changes.
199
+ */
200
+ getNonDefaultConfiguration ( ) : object ;
186
201
  /**
187
202
  * Get the playback rate of what is playing right now. If we are using trick
188
203
  * play, this will return the trick play rate.
@@ -1575,6 +1590,7 @@ declare namespace shaka.net {
1575
1590
  * Makes a network request and returns the resulting data.
1576
1591
  */
1577
1592
  request (type : shaka.net.NetworkingEngine.RequestType , request : shaka.extern.Request , context ? : shaka.extern.RequestContext ) : shaka.net.NetworkingEngine.PendingRequest ;
1593
+ setForceHTTP (forceHTTP : boolean ) : any ;
1578
1594
  setForceHTTPS (forceHTTPS : boolean ) : any ;
1579
1595
  /**
1580
1596
  * Removes a request filter.
@@ -3403,6 +3419,7 @@ declare namespace shaka.util {
3403
3419
  * { manifest: { retryParameters: { maxAttempts: 1 }}}.
3404
3420
  */
3405
3421
  static convertToConfigObject (fieldName : string , value : any ) : object ;
3422
+ static getDifferenceFromConfigObjects (object : object , base : object ) : object ;
3406
3423
  static mergeConfigObjects (destination : object , source : object , template : object , overrides : object , path : string ) : boolean ;
3407
3424
  }
3408
3425
  }
@@ -3547,6 +3564,7 @@ declare namespace shaka.util.Error {
3547
3564
  DASH_DUPLICATE_REPRESENTATION_ID = 4018.0 ,
3548
3565
  DASH_EMPTY_ADAPTATION_SET = 4003.0 ,
3549
3566
  DASH_EMPTY_PERIOD = 4004.0 ,
3567
+ DASH_INVALID_PATCH = 4052.0 ,
3550
3568
  DASH_INVALID_XML = 4001.0 ,
3551
3569
  DASH_MULTIPLE_KEY_IDS_NOT_SUPPORTED = 4009.0 ,
3552
3570
  DASH_NO_COMMON_KEY_SYSTEM = 4008.0 ,
@@ -3612,7 +3630,6 @@ declare namespace shaka.util.Error {
3612
3630
  MSS_INVALID_XML = 4046.0 ,
3613
3631
  MSS_LIVE_CONTENT_NOT_SUPPORTED = 4047.0 ,
3614
3632
  MSS_MISSING_DATA_FOR_TRANSMUXING = 3020.0 ,
3615
- MSS_TRANSMUXING_CODEC_UNKNOWN = 3021.0 ,
3616
3633
  MSS_TRANSMUXING_FAILED = 3022.0 ,
3617
3634
  MT_AD_MANAGER_NOT_INITIALIZED = 10005.0 ,
3618
3635
  NEW_KEY_OPERATION_NOT_SUPPORTED = 9011.0 ,
@@ -4091,7 +4108,7 @@ declare namespace shaka.util {
4091
4108
  */
4092
4109
  class PeriodCombiner implements shaka.util.IReleasable {
4093
4110
  private noStructuralTyping_shaka_util_PeriodCombiner : any;
4094
- combinePeriods (periods : shaka.extern.Period [] , isDynamic : boolean ) : Promise < any > ;
4111
+ combinePeriods (periods : shaka.extern.Period [] , isDynamic : boolean , isPatchUpdate ? : boolean ) : Promise < any > ;
4095
4112
  getImageStreams ( ) : shaka.extern.Stream [] ;
4096
4113
  getTextStreams ( ) : shaka.extern.Stream [] ;
4097
4114
  getVariants ( ) : shaka.extern.Variant [] ;
@@ -4116,7 +4133,7 @@ declare namespace shaka.util {
4116
4133
  declare namespace shaka.util {
4117
4134
  class StreamUtils {
4118
4135
  private noStructuralTyping_shaka_util_StreamUtils : any;
4119
- static meetsRestrictions (variant : shaka.extern.Variant , restrictions : shaka.extern.Restrictions , maxHwRes : { height : number , width : number } ) : boolean ;
4136
+ static meetsRestrictions (variant : shaka.extern.Variant , restrictions : shaka.extern.Restrictions , maxHwRes : shaka.extern.Resolution ) : boolean ;
4120
4137
  }
4121
4138
  }
4122
4139
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
@@ -5263,7 +5280,7 @@ declare namespace shaka.extern {
5263
5280
  }
5264
5281
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5265
5282
  declare namespace shaka.extern {
5266
- type Manifest = { ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , minBufferTime : number , offlineSessionIds : string [] , presentationTimeline : shaka.media.PresentationTimeline , sequenceMode : boolean , serviceDescription : shaka.extern.ServiceDescription | null , textStreams : shaka.extern.Stream [] , type : string , variants : shaka.extern.Variant [] } ;
5283
+ type Manifest = { ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , minBufferTime : number , nextUrl : string | null , offlineSessionIds : string [] , presentationTimeline : shaka.media.PresentationTimeline , sequenceMode : boolean , serviceDescription : shaka.extern.ServiceDescription | null , textStreams : shaka.extern.Stream [] , type : string , variants : shaka.extern.Variant [] } ;
5267
5284
  }
5268
5285
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5269
5286
  declare namespace shaka.extern {
@@ -5303,11 +5320,11 @@ declare namespace shaka.extern {
5303
5320
  }
5304
5321
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5305
5322
  declare namespace shaka.extern {
5306
- type ServiceDescription = { maxLatency : number | null , maxPlaybackRate : number | null , minLatency : number | null , minPlaybackRate : number | null } ;
5323
+ type ServiceDescription = { maxLatency : number | null , maxPlaybackRate : number | null , minLatency : number | null , minPlaybackRate : number | null , targetLatency : number | null } ;
5307
5324
  }
5308
5325
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5309
5326
  declare namespace shaka.extern {
5310
- type Stream = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , audioSamplingRate : number | null , bandwidth ? : number , channelsCount : number | null , closeSegmentIndex ? : ( ) => any , closedCaptions : Map < string , string > | null , codecs : string , createSegmentIndex : shaka.extern.CreateSegmentIndexFunction , drmInfos : shaka.extern.DrmInfo [] , emsgSchemeIdUris : string [] | null , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , fullMimeTypes : Set < string > , groupId : string | null , hdr ? : string , height ? : number , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , matchedStreams ? : any [] , mimeType : string , mssPrivateData ? : shaka.extern.MssPrivateData , originalId : string | null , originalLanguage : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segmentIndex : shaka.media.SegmentIndex | null , spatialAudio : boolean , tilesLayout ? : string , trickModeVideo : any , type : string , videoLayout ? : string , width ? : number } ;
5327
+ type Stream = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , audioSamplingRate : number | null , bandwidth ? : number , channelsCount : number | null , closeSegmentIndex ? : ( ) => any , closedCaptions : Map < string , string > | null , codecs : string , colorGamut ? : string , createSegmentIndex : shaka.extern.CreateSegmentIndexFunction , drmInfos : shaka.extern.DrmInfo [] , emsgSchemeIdUris : string [] | null , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , fullMimeTypes : Set < string > , groupId : string | null , hdr ? : string , height ? : number , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , matchedStreams ? : any [] , mimeType : string , mssPrivateData ? : shaka.extern.MssPrivateData , originalId : string | null , originalLanguage : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segmentIndex : shaka.media.SegmentIndex | null , spatialAudio : boolean , tilesLayout ? : string , trickModeVideo : any , type : string , videoLayout ? : string , width ? : number } ;
5311
5328
  }
5312
5329
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5313
5330
  declare namespace shaka.extern {
@@ -5630,7 +5647,7 @@ declare namespace shaka.extern {
5630
5647
  }
5631
5648
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js
5632
5649
  declare namespace shaka.extern {
5633
- type StreamDB = { audioSamplingRate : number | null , channelsCount : number | null , closedCaptions : Map < string , string > | null , codecs : string , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , groupId : string | null , hdr ? : string , height : number | null , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , mimeType : string , originalId : string | null , originalLanguage ? : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segments : shaka.extern.SegmentDB [] , spatialAudio : boolean , tilesLayout ? : string , type : string , variantIds : number [] , videoLayout ? : string , width : number | null } ;
5650
+ type StreamDB = { audioSamplingRate : number | null , channelsCount : number | null , closedCaptions : Map < string , string > | null , codecs : string , colorGamut ? : string , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , groupId : string | null , hdr ? : string , height : number | null , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , mimeType : string , originalId : string | null , originalLanguage ? : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segments : shaka.extern.SegmentDB [] , spatialAudio : boolean , tilesLayout ? : string , type : string , variantIds : number [] , videoLayout ? : string , width : number | null } ;
5634
5651
  }
5635
5652
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js
5636
5653
  declare namespace shaka.extern {
@@ -5674,11 +5691,11 @@ declare namespace shaka.extern {
5674
5691
  }
5675
5692
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5676
5693
  declare namespace shaka.extern {
5677
- type AbrConfiguration = { advanced : shaka.extern.AdvancedAbrConfiguration , bandwidthDowngradeTarget : number , bandwidthUpgradeTarget : number , clearBufferSwitch : boolean , defaultBandwidthEstimate : number , enabled : boolean , ignoreDevicePixelRatio : boolean , restrictToElementSize : boolean , restrictToScreenSize : boolean , restrictions : shaka.extern.Restrictions , safeMarginSwitch : number , switchInterval : number , useNetworkInformation : boolean } ;
5694
+ type AbrConfiguration = { advanced : shaka.extern.AdvancedAbrConfiguration , bandwidthDowngradeTarget : number , bandwidthUpgradeTarget : number , cacheLoadThreshold : number , clearBufferSwitch : boolean , defaultBandwidthEstimate : number , enabled : boolean , ignoreDevicePixelRatio : boolean , restrictToElementSize : boolean , restrictToScreenSize : boolean , restrictions : shaka.extern.Restrictions , safeMarginSwitch : number , switchInterval : number , useNetworkInformation : boolean } ;
5678
5695
  }
5679
5696
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5680
5697
  declare namespace shaka.extern {
5681
- type AdsConfiguration = { customPlayheadTracker : boolean , skipPlayDetection : boolean } ;
5698
+ type AdsConfiguration = { customPlayheadTracker : boolean , skipPlayDetection : boolean , supportsMultipleMediaElements : boolean } ;
5682
5699
  }
5683
5700
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5684
5701
  declare namespace shaka.extern {
@@ -5686,7 +5703,7 @@ declare namespace shaka.extern {
5686
5703
  }
5687
5704
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5688
5705
  declare namespace shaka.extern {
5689
- type AdvancedDrmConfiguration = { audioRobustness : string , distinctiveIdentifierRequired : boolean , individualizationServer : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string } ;
5706
+ type AdvancedDrmConfiguration = { audioRobustness : string , distinctiveIdentifierRequired : boolean , headers : { [ key: string ]: string } , individualizationServer : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string } ;
5690
5707
  }
5691
5708
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5692
5709
  declare namespace shaka.extern {
@@ -5710,7 +5727,7 @@ declare namespace shaka.extern {
5710
5727
  }
5711
5728
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5712
5729
  declare namespace shaka.extern {
5713
- type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableAudioGroups : 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 } ;
5730
+ 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 } ;
5714
5731
  }
5715
5732
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5716
5733
  declare namespace shaka.extern {
@@ -5722,7 +5739,7 @@ declare namespace shaka.extern {
5722
5739
  }
5723
5740
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5724
5741
  declare namespace shaka.extern {
5725
- type DrmSupportType = { persistentState : boolean } ;
5742
+ type DrmSupportType = { audioRobustnessLevels : string [] , encryptionSchemes : ( string | null ) [] , persistentState : boolean , videoRobustnessLevels : string [] } ;
5726
5743
  }
5727
5744
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5728
5745
  declare namespace shaka.extern {
@@ -5730,7 +5747,7 @@ declare namespace shaka.extern {
5730
5747
  }
5731
5748
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5732
5749
  declare namespace shaka.extern {
5733
- type HlsManifestConfiguration = { allowLowLatencyByteRangeOptimization : boolean , defaultAudioCodec : string , defaultVideoCodec : string , disableCodecGuessing : boolean , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestProgramDateTimeForTypes : string [] , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , useSafariBehaviorForLive : boolean } ;
5750
+ type HlsManifestConfiguration = { allowLowLatencyByteRangeOptimization : boolean , defaultAudioCodec : string , defaultVideoCodec : string , disableClosedCaptionsDetection : boolean , disableCodecGuessing : boolean , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestProgramDateTimeForTypes : string [] , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , useSafariBehaviorForLive : boolean } ;
5734
5751
  }
5735
5752
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5736
5753
  declare namespace shaka.extern {
@@ -5790,7 +5807,11 @@ declare namespace shaka.extern {
5790
5807
  }
5791
5808
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5792
5809
  declare namespace shaka.extern {
5793
- type Restrictions = { maxBandwidth : number , maxFrameRate : number , maxHeight : number , maxPixels : number , maxWidth : number , minBandwidth : number , minFrameRate : number , minHeight : number , minPixels : number , minWidth : number } ;
5810
+ type Resolution = { height : number , width : number } ;
5811
+ }
5812
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5813
+ declare namespace shaka.extern {
5814
+ type Restrictions = { maxBandwidth : number , maxChannelsCount : number , maxFrameRate : number , maxHeight : number , maxPixels : number , maxWidth : number , minBandwidth : number , minChannelsCount : number , minFrameRate : number , minHeight : number , minPixels : number , minWidth : number } ;
5794
5815
  }
5795
5816
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5796
5817
  declare namespace shaka.extern {
@@ -5802,11 +5823,11 @@ declare namespace shaka.extern {
5802
5823
  }
5803
5824
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5804
5825
  declare namespace shaka.extern {
5805
- type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dispatchAllEmsgBoxes : boolean , durationBackoff : number , evictionGoal : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , infiniteLiveStreamDuration : boolean , liveSync : boolean , liveSyncMaxLatency : number , liveSyncMinLatency : number , liveSyncMinPlaybackRate : number , liveSyncPanicMode : boolean , liveSyncPanicThreshold : number , liveSyncPlaybackRate : number , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , parsePrftBox : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekOffset : number , segmentPrefetchLimit : number , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , useNativeHlsOnSafari : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
5826
+ type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , clearDecodingCache : boolean , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dispatchAllEmsgBoxes : boolean , durationBackoff : number , evictionGoal : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTP : boolean , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , infiniteLiveStreamDuration : boolean , liveSync : boolean , liveSyncMaxLatency : number , liveSyncMinLatency : number , liveSyncMinPlaybackRate : number , liveSyncPanicMode : boolean , liveSyncPanicThreshold : number , liveSyncPlaybackRate : number , liveSyncTargetLatencyTolerance : number , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , parsePrftBox : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , preloadNextUrlWindow : number , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekOffset : number , segmentPrefetchLimit : number , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , useNativeHlsOnSafari : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
5806
5827
  }
5807
5828
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5808
5829
  declare namespace shaka.extern {
5809
- type SupportType = { drm : { [ key: string ]: shaka.extern.DrmSupportType | null } , manifest : { [ key: string ]: boolean } , media : { [ key: string ]: boolean } } ;
5830
+ type SupportType = { drm : { [ key: string ]: shaka.extern.DrmSupportType | null } , hardwareResolution : shaka.extern.Resolution , manifest : { [ key: string ]: boolean } , media : { [ key: string ]: boolean } } ;
5810
5831
  }
5811
5832
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5812
5833
  declare namespace shaka.extern {
@@ -5822,7 +5843,7 @@ declare namespace shaka.extern {
5822
5843
  }
5823
5844
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5824
5845
  declare namespace shaka.extern {
5825
- type Track = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , active : boolean , audioBandwidth : number | null , audioCodec : string | null , audioId : number | null , audioMimeType : string | null , audioRoles : string [] | null , audioSamplingRate : number | null , bandwidth : number , channelsCount : number | null , codecs : string | null , forced : boolean , frameRate : number | null , hdr : string | null , height : number | null , id : number , kind : string | null , label : string | null , language : string , mimeType : string | null , originalAudioId : string | null , originalImageId : string | null , originalLanguage : string | null , originalTextId : string | null , originalVideoId : string | null , pixelAspectRatio : string | null , primary : boolean , roles : string [] , spatialAudio : boolean , tilesLayout : string | null , type : string , videoBandwidth : number | null , videoCodec : string | null , videoId : number | null , videoLayout : string | null , videoMimeType : string | null , width : number | null } ;
5846
+ type Track = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , active : boolean , audioBandwidth : number | null , audioCodec : string | null , audioId : number | null , audioMimeType : string | null , audioRoles : string [] | null , audioSamplingRate : number | null , bandwidth : number , channelsCount : number | null , codecs : string | null , colorGamut : string | null , forced : boolean , frameRate : number | null , hdr : string | null , height : number | null , id : number , kind : string | null , label : string | null , language : string , mimeType : string | null , originalAudioId : string | null , originalImageId : string | null , originalLanguage : string | null , originalTextId : string | null , originalVideoId : string | null , pixelAspectRatio : string | null , primary : boolean , roles : string [] , spatialAudio : boolean , tilesLayout : string | null , type : string , videoBandwidth : number | null , videoCodec : string | null , videoId : number | null , videoLayout : string | null , videoMimeType : string | null , width : number | null } ;
5826
5847
  }
5827
5848
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5828
5849
  declare namespace shaka.extern {
@@ -5974,7 +5995,7 @@ declare namespace webapis.productinfo {
5974
5995
  }
5975
5996
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/tizen.js
5976
5997
  declare namespace webapis.systeminfo {
5977
- function getMaxVideoResolution ( ) : { height : number , width : number } ;
5998
+ function getMaxVideoResolution ( ) : shaka.extern.Resolution ;
5978
5999
  }
5979
6000
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/webkitmediakeys.js
5980
6001
  declare namespace ಠ_ಠ.clutz {
@@ -79,6 +79,15 @@ declare namespace shaka {
79
79
  * else.
80
80
  */
81
81
  detach (keepAdManager ? : boolean ) : Promise < any > ;
82
+ /**
83
+ * Detach the player from the current media element, if any, and returns a
84
+ * PreloadManager that contains the loaded manifest of that asset, if any.
85
+ * Allows for the asset to be re-loaded by this player faster, in the future.
86
+ * When in src= mode, this detach but does not make a PreloadManager.
87
+ * Leaves the player in a state where it cannot play media, until it has been
88
+ * attached to something else.
89
+ */
90
+ detachAndSavePreload (keepAdManager ? : boolean ) : Promise < shaka.media.PreloadManager | null > ;
82
91
  /**
83
92
  * Get the drm info used to initialize EME. If EME is not being used, this
84
93
  * will return <code>null</code>. If the player is idle or has not initialized
@@ -183,6 +192,12 @@ declare namespace shaka {
183
192
  */
184
193
  getMediaElement ( ) : HTMLMediaElement | null ;
185
194
  getNetworkingEngine ( ) : shaka.net.NetworkingEngine | null ;
195
+ /**
196
+ * Return a copy of the current non default configuration. Modifications of
197
+ * the returned value will not affect the Player's active configuration.
198
+ * You must call <code>player.configure()</code> to make changes.
199
+ */
200
+ getNonDefaultConfiguration ( ) : object ;
186
201
  /**
187
202
  * Get the playback rate of what is playing right now. If we are using trick
188
203
  * play, this will return the trick play rate.
@@ -1575,6 +1590,7 @@ declare namespace shaka.net {
1575
1590
  * Makes a network request and returns the resulting data.
1576
1591
  */
1577
1592
  request (type : shaka.net.NetworkingEngine.RequestType , request : shaka.extern.Request , context ? : shaka.extern.RequestContext ) : shaka.net.NetworkingEngine.PendingRequest ;
1593
+ setForceHTTP (forceHTTP : boolean ) : any ;
1578
1594
  setForceHTTPS (forceHTTPS : boolean ) : any ;
1579
1595
  /**
1580
1596
  * Removes a request filter.
@@ -3403,6 +3419,7 @@ declare namespace shaka.util {
3403
3419
  * { manifest: { retryParameters: { maxAttempts: 1 }}}.
3404
3420
  */
3405
3421
  static convertToConfigObject (fieldName : string , value : any ) : object ;
3422
+ static getDifferenceFromConfigObjects (object : object , base : object ) : object ;
3406
3423
  static mergeConfigObjects (destination : object , source : object , template : object , overrides : object , path : string ) : boolean ;
3407
3424
  }
3408
3425
  }
@@ -3547,6 +3564,7 @@ declare namespace shaka.util.Error {
3547
3564
  DASH_DUPLICATE_REPRESENTATION_ID = 4018.0 ,
3548
3565
  DASH_EMPTY_ADAPTATION_SET = 4003.0 ,
3549
3566
  DASH_EMPTY_PERIOD = 4004.0 ,
3567
+ DASH_INVALID_PATCH = 4052.0 ,
3550
3568
  DASH_INVALID_XML = 4001.0 ,
3551
3569
  DASH_MULTIPLE_KEY_IDS_NOT_SUPPORTED = 4009.0 ,
3552
3570
  DASH_NO_COMMON_KEY_SYSTEM = 4008.0 ,
@@ -3612,7 +3630,6 @@ declare namespace shaka.util.Error {
3612
3630
  MSS_INVALID_XML = 4046.0 ,
3613
3631
  MSS_LIVE_CONTENT_NOT_SUPPORTED = 4047.0 ,
3614
3632
  MSS_MISSING_DATA_FOR_TRANSMUXING = 3020.0 ,
3615
- MSS_TRANSMUXING_CODEC_UNKNOWN = 3021.0 ,
3616
3633
  MSS_TRANSMUXING_FAILED = 3022.0 ,
3617
3634
  MT_AD_MANAGER_NOT_INITIALIZED = 10005.0 ,
3618
3635
  NEW_KEY_OPERATION_NOT_SUPPORTED = 9011.0 ,
@@ -4091,7 +4108,7 @@ declare namespace shaka.util {
4091
4108
  */
4092
4109
  class PeriodCombiner implements shaka.util.IReleasable {
4093
4110
  private noStructuralTyping_shaka_util_PeriodCombiner : any;
4094
- combinePeriods (periods : shaka.extern.Period [] , isDynamic : boolean ) : Promise < any > ;
4111
+ combinePeriods (periods : shaka.extern.Period [] , isDynamic : boolean , isPatchUpdate ? : boolean ) : Promise < any > ;
4095
4112
  getImageStreams ( ) : shaka.extern.Stream [] ;
4096
4113
  getTextStreams ( ) : shaka.extern.Stream [] ;
4097
4114
  getVariants ( ) : shaka.extern.Variant [] ;
@@ -4116,7 +4133,7 @@ declare namespace shaka.util {
4116
4133
  declare namespace shaka.util {
4117
4134
  class StreamUtils {
4118
4135
  private noStructuralTyping_shaka_util_StreamUtils : any;
4119
- static meetsRestrictions (variant : shaka.extern.Variant , restrictions : shaka.extern.Restrictions , maxHwRes : { height : number , width : number } ) : boolean ;
4136
+ static meetsRestrictions (variant : shaka.extern.Variant , restrictions : shaka.extern.Restrictions , maxHwRes : shaka.extern.Resolution ) : boolean ;
4120
4137
  }
4121
4138
  }
4122
4139
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.debug.externs.js
@@ -5263,7 +5280,7 @@ declare namespace shaka.extern {
5263
5280
  }
5264
5281
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5265
5282
  declare namespace shaka.extern {
5266
- type Manifest = { ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , minBufferTime : number , offlineSessionIds : string [] , presentationTimeline : shaka.media.PresentationTimeline , sequenceMode : boolean , serviceDescription : shaka.extern.ServiceDescription | null , textStreams : shaka.extern.Stream [] , type : string , variants : shaka.extern.Variant [] } ;
5283
+ type Manifest = { ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , minBufferTime : number , nextUrl : string | null , offlineSessionIds : string [] , presentationTimeline : shaka.media.PresentationTimeline , sequenceMode : boolean , serviceDescription : shaka.extern.ServiceDescription | null , textStreams : shaka.extern.Stream [] , type : string , variants : shaka.extern.Variant [] } ;
5267
5284
  }
5268
5285
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5269
5286
  declare namespace shaka.extern {
@@ -5303,11 +5320,11 @@ declare namespace shaka.extern {
5303
5320
  }
5304
5321
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5305
5322
  declare namespace shaka.extern {
5306
- type ServiceDescription = { maxLatency : number | null , maxPlaybackRate : number | null , minLatency : number | null , minPlaybackRate : number | null } ;
5323
+ type ServiceDescription = { maxLatency : number | null , maxPlaybackRate : number | null , minLatency : number | null , minPlaybackRate : number | null , targetLatency : number | null } ;
5307
5324
  }
5308
5325
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5309
5326
  declare namespace shaka.extern {
5310
- type Stream = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , audioSamplingRate : number | null , bandwidth ? : number , channelsCount : number | null , closeSegmentIndex ? : ( ) => any , closedCaptions : Map < string , string > | null , codecs : string , createSegmentIndex : shaka.extern.CreateSegmentIndexFunction , drmInfos : shaka.extern.DrmInfo [] , emsgSchemeIdUris : string [] | null , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , fullMimeTypes : Set < string > , groupId : string | null , hdr ? : string , height ? : number , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , matchedStreams ? : any [] , mimeType : string , mssPrivateData ? : shaka.extern.MssPrivateData , originalId : string | null , originalLanguage : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segmentIndex : shaka.media.SegmentIndex | null , spatialAudio : boolean , tilesLayout ? : string , trickModeVideo : any , type : string , videoLayout ? : string , width ? : number } ;
5327
+ type Stream = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , audioSamplingRate : number | null , bandwidth ? : number , channelsCount : number | null , closeSegmentIndex ? : ( ) => any , closedCaptions : Map < string , string > | null , codecs : string , colorGamut ? : string , createSegmentIndex : shaka.extern.CreateSegmentIndexFunction , drmInfos : shaka.extern.DrmInfo [] , emsgSchemeIdUris : string [] | null , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , fullMimeTypes : Set < string > , groupId : string | null , hdr ? : string , height ? : number , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , matchedStreams ? : any [] , mimeType : string , mssPrivateData ? : shaka.extern.MssPrivateData , originalId : string | null , originalLanguage : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segmentIndex : shaka.media.SegmentIndex | null , spatialAudio : boolean , tilesLayout ? : string , trickModeVideo : any , type : string , videoLayout ? : string , width ? : number } ;
5311
5328
  }
5312
5329
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5313
5330
  declare namespace shaka.extern {
@@ -5630,7 +5647,7 @@ declare namespace shaka.extern {
5630
5647
  }
5631
5648
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js
5632
5649
  declare namespace shaka.extern {
5633
- type StreamDB = { audioSamplingRate : number | null , channelsCount : number | null , closedCaptions : Map < string , string > | null , codecs : string , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , groupId : string | null , hdr ? : string , height : number | null , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , mimeType : string , originalId : string | null , originalLanguage ? : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segments : shaka.extern.SegmentDB [] , spatialAudio : boolean , tilesLayout ? : string , type : string , variantIds : number [] , videoLayout ? : string , width : number | null } ;
5650
+ type StreamDB = { audioSamplingRate : number | null , channelsCount : number | null , closedCaptions : Map < string , string > | null , codecs : string , colorGamut ? : string , encrypted : boolean , external : boolean , fastSwitching : boolean , forced : boolean , frameRate ? : number , groupId : string | null , hdr ? : string , height : number | null , id : number , keyIds : Set < string > , kind ? : string , label : string | null , language : string , mimeType : string , originalId : string | null , originalLanguage ? : string | null , pixelAspectRatio ? : string , primary : boolean , roles : string [] , segments : shaka.extern.SegmentDB [] , spatialAudio : boolean , tilesLayout ? : string , type : string , variantIds : number [] , videoLayout ? : string , width : number | null } ;
5634
5651
  }
5635
5652
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js
5636
5653
  declare namespace shaka.extern {
@@ -5674,11 +5691,11 @@ declare namespace shaka.extern {
5674
5691
  }
5675
5692
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5676
5693
  declare namespace shaka.extern {
5677
- type AbrConfiguration = { advanced : shaka.extern.AdvancedAbrConfiguration , bandwidthDowngradeTarget : number , bandwidthUpgradeTarget : number , clearBufferSwitch : boolean , defaultBandwidthEstimate : number , enabled : boolean , ignoreDevicePixelRatio : boolean , restrictToElementSize : boolean , restrictToScreenSize : boolean , restrictions : shaka.extern.Restrictions , safeMarginSwitch : number , switchInterval : number , useNetworkInformation : boolean } ;
5694
+ type AbrConfiguration = { advanced : shaka.extern.AdvancedAbrConfiguration , bandwidthDowngradeTarget : number , bandwidthUpgradeTarget : number , cacheLoadThreshold : number , clearBufferSwitch : boolean , defaultBandwidthEstimate : number , enabled : boolean , ignoreDevicePixelRatio : boolean , restrictToElementSize : boolean , restrictToScreenSize : boolean , restrictions : shaka.extern.Restrictions , safeMarginSwitch : number , switchInterval : number , useNetworkInformation : boolean } ;
5678
5695
  }
5679
5696
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5680
5697
  declare namespace shaka.extern {
5681
- type AdsConfiguration = { customPlayheadTracker : boolean , skipPlayDetection : boolean } ;
5698
+ type AdsConfiguration = { customPlayheadTracker : boolean , skipPlayDetection : boolean , supportsMultipleMediaElements : boolean } ;
5682
5699
  }
5683
5700
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5684
5701
  declare namespace shaka.extern {
@@ -5686,7 +5703,7 @@ declare namespace shaka.extern {
5686
5703
  }
5687
5704
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5688
5705
  declare namespace shaka.extern {
5689
- type AdvancedDrmConfiguration = { audioRobustness : string , distinctiveIdentifierRequired : boolean , individualizationServer : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string } ;
5706
+ type AdvancedDrmConfiguration = { audioRobustness : string , distinctiveIdentifierRequired : boolean , headers : { [ key: string ]: string } , individualizationServer : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string } ;
5690
5707
  }
5691
5708
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5692
5709
  declare namespace shaka.extern {
@@ -5710,7 +5727,7 @@ declare namespace shaka.extern {
5710
5727
  }
5711
5728
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5712
5729
  declare namespace shaka.extern {
5713
- type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableAudioGroups : 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 } ;
5730
+ 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 } ;
5714
5731
  }
5715
5732
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5716
5733
  declare namespace shaka.extern {
@@ -5722,7 +5739,7 @@ declare namespace shaka.extern {
5722
5739
  }
5723
5740
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5724
5741
  declare namespace shaka.extern {
5725
- type DrmSupportType = { persistentState : boolean } ;
5742
+ type DrmSupportType = { audioRobustnessLevels : string [] , encryptionSchemes : ( string | null ) [] , persistentState : boolean , videoRobustnessLevels : string [] } ;
5726
5743
  }
5727
5744
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5728
5745
  declare namespace shaka.extern {
@@ -5730,7 +5747,7 @@ declare namespace shaka.extern {
5730
5747
  }
5731
5748
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5732
5749
  declare namespace shaka.extern {
5733
- type HlsManifestConfiguration = { allowLowLatencyByteRangeOptimization : boolean , defaultAudioCodec : string , defaultVideoCodec : string , disableCodecGuessing : boolean , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestProgramDateTimeForTypes : string [] , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , useSafariBehaviorForLive : boolean } ;
5750
+ type HlsManifestConfiguration = { allowLowLatencyByteRangeOptimization : boolean , defaultAudioCodec : string , defaultVideoCodec : string , disableClosedCaptionsDetection : boolean , disableCodecGuessing : boolean , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestProgramDateTimeForTypes : string [] , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , useSafariBehaviorForLive : boolean } ;
5734
5751
  }
5735
5752
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5736
5753
  declare namespace shaka.extern {
@@ -5790,7 +5807,11 @@ declare namespace shaka.extern {
5790
5807
  }
5791
5808
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5792
5809
  declare namespace shaka.extern {
5793
- type Restrictions = { maxBandwidth : number , maxFrameRate : number , maxHeight : number , maxPixels : number , maxWidth : number , minBandwidth : number , minFrameRate : number , minHeight : number , minPixels : number , minWidth : number } ;
5810
+ type Resolution = { height : number , width : number } ;
5811
+ }
5812
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5813
+ declare namespace shaka.extern {
5814
+ type Restrictions = { maxBandwidth : number , maxChannelsCount : number , maxFrameRate : number , maxHeight : number , maxPixels : number , maxWidth : number , minBandwidth : number , minChannelsCount : number , minFrameRate : number , minHeight : number , minPixels : number , minWidth : number } ;
5794
5815
  }
5795
5816
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5796
5817
  declare namespace shaka.extern {
@@ -5802,11 +5823,11 @@ declare namespace shaka.extern {
5802
5823
  }
5803
5824
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5804
5825
  declare namespace shaka.extern {
5805
- type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dispatchAllEmsgBoxes : boolean , durationBackoff : number , evictionGoal : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , infiniteLiveStreamDuration : boolean , liveSync : boolean , liveSyncMaxLatency : number , liveSyncMinLatency : number , liveSyncMinPlaybackRate : number , liveSyncPanicMode : boolean , liveSyncPanicThreshold : number , liveSyncPlaybackRate : number , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , parsePrftBox : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekOffset : number , segmentPrefetchLimit : number , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , useNativeHlsOnSafari : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
5826
+ type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , clearDecodingCache : boolean , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dispatchAllEmsgBoxes : boolean , durationBackoff : number , evictionGoal : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTP : boolean , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , infiniteLiveStreamDuration : boolean , liveSync : boolean , liveSyncMaxLatency : number , liveSyncMinLatency : number , liveSyncMinPlaybackRate : number , liveSyncPanicMode : boolean , liveSyncPanicThreshold : number , liveSyncPlaybackRate : number , liveSyncTargetLatencyTolerance : number , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , parsePrftBox : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , preloadNextUrlWindow : number , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekOffset : number , segmentPrefetchLimit : number , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , useNativeHlsOnSafari : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
5806
5827
  }
5807
5828
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5808
5829
  declare namespace shaka.extern {
5809
- type SupportType = { drm : { [ key: string ]: shaka.extern.DrmSupportType | null } , manifest : { [ key: string ]: boolean } , media : { [ key: string ]: boolean } } ;
5830
+ type SupportType = { drm : { [ key: string ]: shaka.extern.DrmSupportType | null } , hardwareResolution : shaka.extern.Resolution , manifest : { [ key: string ]: boolean } , media : { [ key: string ]: boolean } } ;
5810
5831
  }
5811
5832
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5812
5833
  declare namespace shaka.extern {
@@ -5822,7 +5843,7 @@ declare namespace shaka.extern {
5822
5843
  }
5823
5844
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5824
5845
  declare namespace shaka.extern {
5825
- type Track = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , active : boolean , audioBandwidth : number | null , audioCodec : string | null , audioId : number | null , audioMimeType : string | null , audioRoles : string [] | null , audioSamplingRate : number | null , bandwidth : number , channelsCount : number | null , codecs : string | null , forced : boolean , frameRate : number | null , hdr : string | null , height : number | null , id : number , kind : string | null , label : string | null , language : string , mimeType : string | null , originalAudioId : string | null , originalImageId : string | null , originalLanguage : string | null , originalTextId : string | null , originalVideoId : string | null , pixelAspectRatio : string | null , primary : boolean , roles : string [] , spatialAudio : boolean , tilesLayout : string | null , type : string , videoBandwidth : number | null , videoCodec : string | null , videoId : number | null , videoLayout : string | null , videoMimeType : string | null , width : number | null } ;
5846
+ type Track = { accessibilityPurpose : shaka.media.ManifestParser.AccessibilityPurpose | null , active : boolean , audioBandwidth : number | null , audioCodec : string | null , audioId : number | null , audioMimeType : string | null , audioRoles : string [] | null , audioSamplingRate : number | null , bandwidth : number , channelsCount : number | null , codecs : string | null , colorGamut : string | null , forced : boolean , frameRate : number | null , hdr : string | null , height : number | null , id : number , kind : string | null , label : string | null , language : string , mimeType : string | null , originalAudioId : string | null , originalImageId : string | null , originalLanguage : string | null , originalTextId : string | null , originalVideoId : string | null , pixelAspectRatio : string | null , primary : boolean , roles : string [] , spatialAudio : boolean , tilesLayout : string | null , type : string , videoBandwidth : number | null , videoCodec : string | null , videoId : number | null , videoLayout : string | null , videoMimeType : string | null , width : number | null } ;
5826
5847
  }
5827
5848
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5828
5849
  declare namespace shaka.extern {
@@ -5974,7 +5995,7 @@ declare namespace webapis.productinfo {
5974
5995
  }
5975
5996
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/tizen.js
5976
5997
  declare namespace webapis.systeminfo {
5977
- function getMaxVideoResolution ( ) : { height : number , width : number } ;
5998
+ function getMaxVideoResolution ( ) : shaka.extern.Resolution ;
5978
5999
  }
5979
6000
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/webkitmediakeys.js
5980
6001
  declare namespace ಠ_ಠ.clutz {
@@ -302,7 +302,6 @@ shaka.util.Error.Code = {
302
302
  'TRANSMUXING_FAILED': 3018,
303
303
  'CONTENT_TRANSFORMATION_FAILED': 3019,
304
304
  'MSS_MISSING_DATA_FOR_TRANSMUXING': 3020,
305
- 'MSS_TRANSMUXING_CODEC_UNKNOWN': 3021,
306
305
  'MSS_TRANSMUXING_FAILED': 3022,
307
306
  'TRANSMUXING_NO_VIDEO_DATA': 3023,
308
307
  'UNABLE_TO_GUESS_MANIFEST_TYPE': 4000,
@@ -344,6 +343,7 @@ shaka.util.Error.Code = {
344
343
  'AES_128_INVALID_KEY_LENGTH': 4049,
345
344
  'DASH_CONFLICTING_AES_128': 4050,
346
345
  'DASH_UNSUPPORTED_AES_128': 4051,
346
+ 'DASH_INVALID_PATCH': 4052,
347
347
  'STREAMING_ENGINE_STARTUP_INVALID_STATE': 5006,
348
348
  'NO_RECOGNIZED_KEY_SYSTEMS': 6000,
349
349
  'REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE': 6001,
@@ -1426,7 +1426,7 @@ shaka.util.StreamUtils = class {
1426
1426
  * @param {shaka.extern.Variant} variant
1427
1427
  * @param {shaka.extern.Restrictions} restrictions
1428
1428
  * Configured restrictions from the user.
1429
- * @param {{width: number, height: number}} maxHwRes
1429
+ * @param {shaka.extern.Resolution} maxHwRes
1430
1430
  * The maximum resolution the hardware can handle.
1431
1431
  * This is applied separately from user restrictions because the setting
1432
1432
  * should not be easily replaced by the user's configuration.
@@ -1650,6 +1650,10 @@ shaka.net.NetworkingEngine = class extends shaka.util.FakeEventTarget {
1650
1650
  * Called when receive the response
1651
1651
  */
1652
1652
  constructor(onProgressUpdated, onHeadersReceived, onDownloadFailed, onRequest, onRetry, onResponse) {}
1653
+ /**
1654
+ * @param {boolean} forceHTTP
1655
+ */
1656
+ setForceHTTP(forceHTTP) {}
1653
1657
  /**
1654
1658
  * @param {boolean} forceHTTPS
1655
1659
  */
@@ -2942,6 +2946,12 @@ shaka.util.ConfigUtils = class {
2942
2946
  * @return {!Object}
2943
2947
  */
2944
2948
  static convertToConfigObject(fieldName, value) {}
2949
+ /**
2950
+ * @param {!Object} object
2951
+ * @param {!Object} base
2952
+ * @return {!Object}
2953
+ */
2954
+ static getDifferenceFromConfigObjects(object, base) {}
2945
2955
  };
2946
2956
  /**
2947
2957
  * @summary A set of FairPlay utility functions.
@@ -3359,6 +3369,17 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
3359
3369
  * @return {!Promise.<?shaka.media.PreloadManager>}
3360
3370
  */
3361
3371
  unloadAndSavePreload(initializeMediaSource, keepAdManager) {}
3372
+ /**
3373
+ * Detach the player from the current media element, if any, and returns a
3374
+ * PreloadManager that contains the loaded manifest of that asset, if any.
3375
+ * Allows for the asset to be re-loaded by this player faster, in the future.
3376
+ * When in src= mode, this detach but does not make a PreloadManager.
3377
+ * Leaves the player in a state where it cannot play media, until it has been
3378
+ * attached to something else.
3379
+ * @param {boolean=} keepAdManager
3380
+ * @return {!Promise.<?shaka.media.PreloadManager>}
3381
+ */
3382
+ detachAndSavePreload(keepAdManager) {}
3362
3383
  /**
3363
3384
  * Starts to preload a given asset, and returns a PreloadManager object that
3364
3385
  * represents that preloading process.
@@ -3415,6 +3436,13 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
3415
3436
  * @return {shaka.extern.PlayerConfiguration}
3416
3437
  */
3417
3438
  getConfiguration() {}
3439
+ /**
3440
+ * Return a copy of the current non default configuration. Modifications of
3441
+ * the returned value will not affect the Player's active configuration.
3442
+ * You must call <code>player.configure()</code> to make changes.
3443
+ * @return {!Object}
3444
+ */
3445
+ getNonDefaultConfiguration() {}
3418
3446
  /**
3419
3447
  * Returns the ratio of video length buffered compared to buffering Goal
3420
3448
  * @return {number}
@@ -4688,9 +4716,10 @@ shaka.util.PeriodCombiner = class {
4688
4716
  /**
4689
4717
  * @param {!Array.<shaka.extern.Period>} periods
4690
4718
  * @param {boolean} isDynamic
4719
+ * @param {boolean=} isPatchUpdate
4691
4720
  * @return {!Promise}
4692
4721
  */
4693
- combinePeriods(periods, isDynamic) {}
4722
+ combinePeriods(periods, isDynamic, isPatchUpdate) {}
4694
4723
  /**
4695
4724
  * @param {boolean} allowed If set to true, multi-mimeType or multi-codec
4696
4725
  * variants will be allowed.
@@ -5145,15 +5174,6 @@ shaka.polyfill.MediaCapabilities = class {
5145
5174
  * @type {MediaCapabilities}
5146
5175
  */
5147
5176
  shaka.polyfill.MediaCapabilities.originalMcap;
5148
- /**
5149
- * A cache that stores the MediaKeySystemAccess result of calling
5150
- * `navigator.requestMediaKeySystemAccess` by a key combination of
5151
- * video/audio codec and key system string.
5152
- * @type {(Object<(!string), (!MediaKeySystemAccess)>)}
5153
- */
5154
- shaka.polyfill.MediaCapabilities.memoizedMediaKeySystemAccessRequests_ = {
5155
-
5156
- };
5157
5177
  /**
5158
5178
  * A cache that stores the canDisplayType result of calling
5159
5179
  * `cast.__platform__.canDisplayType`.
@@ -5915,6 +5935,17 @@ shaka.ui.SeekBar = class extends shaka.ui.RangeElement {
5915
5935
  */
5916
5936
  shaka.ui.SeekBar.Factory = class {
5917
5937
  };
5938
+ /**
5939
+ * @extends {shaka.ui.Element}
5940
+ * @final
5941
+ */
5942
+ shaka.ui.SkipAdButton = class extends shaka.ui.Element {
5943
+ /**
5944
+ * @param {!HTMLElement} parent
5945
+ * @param {!shaka.ui.Controls} controls
5946
+ */
5947
+ constructor(parent, controls) {}
5948
+ };
5918
5949
  /**
5919
5950
  * A container for custom video controls.
5920
5951
  * @implements {shaka.util.IDestroyable}
@@ -6369,17 +6400,6 @@ shaka.ui.RewindButton = class extends shaka.ui.Element {
6369
6400
  */
6370
6401
  constructor(parent, controls) {}
6371
6402
  };
6372
- /**
6373
- * @extends {shaka.ui.Element}
6374
- * @final
6375
- */
6376
- shaka.ui.SkipAdButton = class extends shaka.ui.Element {
6377
- /**
6378
- * @param {!HTMLElement} parent
6379
- * @param {!shaka.ui.Controls} controls
6380
- */
6381
- constructor(parent, controls) {}
6382
- };
6383
6403
  /**
6384
6404
  * @extends {shaka.ui.PlayButton}
6385
6405
  * @final