shaka-player 4.10.13 → 4.11.0

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 (91) hide show
  1. package/README.md +5 -1
  2. package/dist/controls.css +3 -3
  3. package/dist/controls.css.map +1 -1
  4. package/dist/deps.js +11 -11
  5. package/dist/locales.js +38 -34
  6. package/dist/shaka-player.compiled.d.ts +68 -33
  7. package/dist/shaka-player.compiled.debug.d.ts +68 -33
  8. package/dist/shaka-player.compiled.debug.externs.js +584 -544
  9. package/dist/shaka-player.compiled.debug.js +715 -676
  10. package/dist/shaka-player.compiled.debug.map +4 -4
  11. package/dist/shaka-player.compiled.externs.js +584 -544
  12. package/dist/shaka-player.compiled.js +1394 -1371
  13. package/dist/shaka-player.compiled.map +4 -4
  14. package/dist/shaka-player.ui.d.ts +76 -34
  15. package/dist/shaka-player.ui.debug.d.ts +76 -34
  16. package/dist/shaka-player.ui.debug.externs.js +77 -26
  17. package/dist/shaka-player.ui.debug.js +774 -720
  18. package/dist/shaka-player.ui.debug.map +4 -4
  19. package/dist/shaka-player.ui.externs.js +77 -26
  20. package/dist/shaka-player.ui.js +1649 -1617
  21. package/dist/shaka-player.ui.map +4 -4
  22. package/externs/mediasession.js +10 -1
  23. package/externs/shaka/ads.js +79 -2
  24. package/externs/shaka/manifest.js +6 -1
  25. package/externs/shaka/manifest_parser.js +6 -2
  26. package/externs/shaka/net.js +23 -2
  27. package/externs/shaka/player.js +414 -103
  28. package/externs/shaka/text.js +2 -1
  29. package/lib/abr/simple_abr_manager.js +5 -0
  30. package/lib/ads/ad_manager.js +45 -1
  31. package/lib/ads/ad_utils.js +124 -1
  32. package/lib/ads/interstitial_ad.js +9 -2
  33. package/lib/ads/interstitial_ad_manager.js +216 -101
  34. package/lib/ads/media_tailor_ad.js +1 -39
  35. package/lib/ads/media_tailor_ad_manager.js +32 -16
  36. package/lib/cea/cea608_data_channel.js +40 -8
  37. package/lib/cea/cea608_memory.js +28 -0
  38. package/lib/dash/dash_parser.js +162 -25
  39. package/lib/dash/segment_base.js +3 -2
  40. package/lib/dash/segment_list.js +6 -3
  41. package/lib/dash/segment_template.js +104 -20
  42. package/lib/hls/hls_parser.js +319 -215
  43. package/lib/media/drm_engine.js +11 -3
  44. package/lib/media/media_source_engine.js +0 -8
  45. package/lib/media/preload_manager.js +16 -4
  46. package/lib/media/segment_reference.js +3 -0
  47. package/lib/media/segment_utils.js +8 -1
  48. package/lib/media/streaming_engine.js +10 -6
  49. package/lib/mss/mss_parser.js +14 -2
  50. package/lib/net/http_fetch_plugin.js +12 -5
  51. package/lib/net/http_xhr_plugin.js +7 -3
  52. package/lib/net/networking_engine.js +21 -1
  53. package/lib/offline/manifest_converter.js +1 -0
  54. package/lib/offline/storage.js +1 -0
  55. package/lib/player.js +336 -121
  56. package/lib/text/cue.js +373 -0
  57. package/lib/text/mp4_ttml_parser.js +51 -1
  58. package/lib/text/mp4_vtt_parser.js +2 -5
  59. package/lib/text/sbv_text_parser.js +2 -31
  60. package/lib/text/srt_text_parser.js +1 -1
  61. package/lib/text/text_engine.js +1 -1
  62. package/lib/text/text_utils.js +1 -0
  63. package/lib/text/ttml_text_parser.js +14 -4
  64. package/lib/text/ui_text_displayer.js +0 -4
  65. package/lib/text/vtt_text_parser.js +10 -415
  66. package/lib/util/abortable_operation.js +8 -0
  67. package/lib/util/cmcd_manager.js +38 -0
  68. package/lib/util/error.js +16 -0
  69. package/lib/util/fake_event.js +1 -0
  70. package/lib/util/manifest_parser_utils.js +12 -3
  71. package/lib/util/player_configuration.js +4 -2
  72. package/lib/util/stream_utils.js +57 -2
  73. package/lib/util/tXml.js +2 -1
  74. package/lib/util/text_parser.js +46 -0
  75. package/lib/util/ts_parser.js +32 -3
  76. package/package.json +1 -1
  77. package/shaka-player.uncompiled.js +1 -1
  78. package/ui/chapter_selection.js +179 -0
  79. package/ui/controls.js +151 -0
  80. package/ui/enums.js +1 -0
  81. package/ui/externs/ui.js +7 -1
  82. package/ui/less/containers.less +3 -4
  83. package/ui/less/overflow_menu.less +5 -0
  84. package/ui/less/tooltip.less +1 -1
  85. package/ui/locales/en.json +1 -0
  86. package/ui/locales/es.json +1 -0
  87. package/ui/locales/fr.json +1 -0
  88. package/ui/locales/source.json +4 -0
  89. package/ui/seek_bar.js +3 -2
  90. package/ui/ui.js +2 -0
  91. package/lib/polyfill/abort_controller.js +0 -158
@@ -11,13 +11,18 @@ declare class GlobalError extends Error {}
11
11
  declare namespace shaka {
12
12
  class Player extends shaka.util.FakeEventTarget implements shaka.util.IDestroyable {
13
13
  private noStructuralTyping_shaka_Player : any;
14
- constructor (mediaElement ? : HTMLMediaElement | null , dependencyInjector ? : (a : shaka.Player | null ) => any ) ;
14
+ constructor (mediaElement ? : HTMLMediaElement | null , videoContainer ? : HTMLElement | null , dependencyInjector ? : (a : shaka.Player | null ) => any ) ;
15
15
  /**
16
16
  * Adds the given chapters track to the loaded manifest. <code>load()</code>
17
17
  * must resolve before calling. The presentation must have a duration.
18
18
  * This returns the created track.
19
19
  */
20
20
  addChaptersTrack (uri : string , language : string , mimeType ? : string ) : Promise < shaka.extern.Track > ;
21
+ /**
22
+ * Load a new font on the page. If the font was already loaded, it does
23
+ * nothing.
24
+ */
25
+ addFont (name : string , url : string ) : any ;
21
26
  /**
22
27
  * Adds the given text track to the loaded manifest. <code>load()</code> must
23
28
  * resolve before calling. The presentation must have a duration.
@@ -525,6 +530,8 @@ declare namespace shaka.ads {
525
530
  */
526
531
  class AdManager extends shaka.util.FakeEventTarget implements shaka.extern.IAdManager , shaka.util.IReleasable {
527
532
  private noStructuralTyping_shaka_ads_AdManager : any;
533
+ addAdUrlInterstitial (url : any ) : any ;
534
+ addCustomInterstitial (interstitial : any ) : any ;
528
535
  addMediaTailorTrackingUrl (url : string ) : any ;
529
536
  configure (config : any ) : any ;
530
537
  getCuePoints ( ) : shaka.extern.AdCuePoint [] ;
@@ -536,9 +543,10 @@ declare namespace shaka.ads {
536
543
  initServerSide (adContainer : any , video : any ) : any ;
537
544
  onAssetUnload ( ) : any ;
538
545
  onCueMetadataChange (value : any ) : any ;
546
+ onDASHInterstitialMetadata (basePlayer : any , baseVideo : any , region : any ) : any ;
539
547
  onDashTimedMetadata (region : any ) : any ;
548
+ onHLSInterstitialMetadata (basePlayer : any , baseVideo : any , interstitial : any ) : any ;
540
549
  onHlsTimedMetadata (metadata : any , timestamp : any ) : any ;
541
- onInterstitialMetadata (basePlayer : any , baseVideo : any , interstitial : any ) : any ;
542
550
  onManifestUpdated (isLive : any ) : any ;
543
551
  release ( ) : any ;
544
552
  replaceServerSideAdTagParameters (adTagParameters : any ) : any ;
@@ -768,7 +776,7 @@ declare namespace shaka.ads {
768
776
  declare namespace shaka.ads {
769
777
  class InterstitialAd implements shaka.extern.IAd {
770
778
  private noStructuralTyping_shaka_ads_InterstitialAd : any;
771
- constructor (video : HTMLMediaElement | null , isSkippable : boolean , onSkip : ( ) => any , sequenceLength : number , adPosition : number ) ;
779
+ constructor (video : HTMLMediaElement | null , isSkippable : boolean , skipOffset : number | null , onSkip : ( ) => any , sequenceLength : number , adPosition : number ) ;
772
780
  canSkipNow ( ) : any ;
773
781
  getAdId ( ) : any ;
774
782
  getAdvertiserName ( ) : any ;
@@ -1182,7 +1190,7 @@ declare namespace shaka.dash {
1182
1190
  class DashParser implements shaka.extern.ManifestParser {
1183
1191
  private noStructuralTyping_shaka_dash_DashParser : any;
1184
1192
  banLocation (uri : any ) : any ;
1185
- configure (config : any ) : any ;
1193
+ configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ;
1186
1194
  onExpirationUpdated (sessionId : any , expiration : any ) : any ;
1187
1195
  onInitialVariantChosen (variant : any ) : any ;
1188
1196
  setMediaElement (mediaElement : any ) : any ;
@@ -1223,7 +1231,7 @@ declare namespace shaka.hls {
1223
1231
  class HlsParser implements shaka.extern.ManifestParser {
1224
1232
  private noStructuralTyping_shaka_hls_HlsParser : any;
1225
1233
  banLocation (uri : any ) : any ;
1226
- configure (config : any ) : any ;
1234
+ configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ;
1227
1235
  onExpirationUpdated (sessionId : any , expiration : any ) : any ;
1228
1236
  onInitialVariantChosen (variant : any ) : any ;
1229
1237
  setMediaElement (mediaElement : any ) : any ;
@@ -1780,7 +1788,7 @@ declare namespace shaka.mss {
1780
1788
  class MssParser implements shaka.extern.ManifestParser {
1781
1789
  private noStructuralTyping_shaka_mss_MssParser : any;
1782
1790
  banLocation (uri : any ) : any ;
1783
- configure (config : any ) : any ;
1791
+ configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ;
1784
1792
  onExpirationUpdated (sessionId : any , expiration : any ) : any ;
1785
1793
  onInitialVariantChosen (variant : any ) : any ;
1786
1794
  setMediaElement (mediaElement : HTMLMediaElement | null ) : any ;
@@ -1806,14 +1814,14 @@ declare namespace shaka.net {
1806
1814
  * logic as Shaka when determining support.
1807
1815
  */
1808
1816
  static isSupported ( ) : boolean ;
1809
- static parse (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated , headersReceived : shaka.extern.HeadersReceived ) : shaka.extern.IAbortableOperation < any > ;
1817
+ static parse (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated , headersReceived : shaka.extern.HeadersReceived , config : shaka.extern.SchemePluginConfig ) : shaka.extern.IAbortableOperation < any > ;
1810
1818
  }
1811
1819
  }
1812
1820
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
1813
1821
  declare namespace shaka.net {
1814
1822
  class HttpXHRPlugin {
1815
1823
  private noStructuralTyping_shaka_net_HttpXHRPlugin : any;
1816
- static parse (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated , headersReceived : shaka.extern.HeadersReceived ) : shaka.extern.IAbortableOperation < any > ;
1824
+ static parse (uri : string , request : shaka.extern.Request , requestType : shaka.net.NetworkingEngine.RequestType , progressUpdated : shaka.extern.ProgressUpdated , headersReceived : shaka.extern.HeadersReceived , config : shaka.extern.SchemePluginConfig ) : shaka.extern.IAbortableOperation < any > ;
1817
1825
  }
1818
1826
  }
1819
1827
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
@@ -1904,7 +1912,13 @@ declare namespace shaka.net.NetworkingEngine {
1904
1912
  */
1905
1913
  enum AdvancedRequestType {
1906
1914
  INIT_SEGMENT = 0.0 ,
1915
+ INTERSTITIAL_AD_URL = 12.0 ,
1916
+ INTERSTITIAL_ASSET_LIST = 11.0 ,
1907
1917
  MASTER_PLAYLIST = 3.0 ,
1918
+ MEDIATAILOR_SESSION_INFO = 7.0 ,
1919
+ MEDIATAILOR_STATIC_RESOURCE = 9.0 ,
1920
+ MEDIATAILOR_TRACKING_EVENT = 10.0 ,
1921
+ MEDIATAILOR_TRACKING_INFO = 8.0 ,
1908
1922
  MEDIA_PLAYLIST = 2.0 ,
1909
1923
  MEDIA_SEGMENT = 1.0 ,
1910
1924
  MPD = 4.0 ,
@@ -2129,16 +2143,6 @@ declare namespace shaka {
2129
2143
  }
2130
2144
  }
2131
2145
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
2132
- declare namespace shaka.polyfill {
2133
- class AbortController extends AbortController {
2134
- private noStructuralTyping_shaka_polyfill_AbortController : any;
2135
- /**
2136
- * Install the polyfill if needed.
2137
- */
2138
- static install ( ) : any ;
2139
- }
2140
- }
2141
- // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
2142
2146
  declare namespace shaka.polyfill {
2143
2147
  class Aria {
2144
2148
  private noStructuralTyping_shaka_polyfill_Aria : any;
@@ -2493,6 +2497,12 @@ declare namespace shaka.text {
2493
2497
  * Text writing mode of the cue.
2494
2498
  */
2495
2499
  writingMode : shaka.text.Cue.writingMode ;
2500
+ /**
2501
+ * Parses cue payload, searches for styling entities and, if needed,
2502
+ * modifies original payload and creates nested cues to better represent
2503
+ * styling found in payload. All changes are done in-place.
2504
+ */
2505
+ static parseCuePayload (cue : shaka.text.Cue , styles ? : Map < string , shaka.text.Cue > ) : any ;
2496
2506
  }
2497
2507
  }
2498
2508
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
@@ -2828,7 +2838,7 @@ declare namespace shaka.text {
2828
2838
  class TtmlTextParser implements shaka.extern.TextParser {
2829
2839
  private noStructuralTyping_shaka_text_TtmlTextParser : any;
2830
2840
  parseInit (data : any ) : any ;
2831
- parseMedia (data : any , time : any , uri : any ) : any ;
2841
+ parseMedia (data : any , time : any , uri : any , images : any ) : any ;
2832
2842
  setManifestType (manifestType : any ) : any ;
2833
2843
  setSequenceMode (sequenceMode : any ) : any ;
2834
2844
  }
@@ -3020,6 +3030,7 @@ declare namespace shaka.util {
3020
3030
  */
3021
3031
  constructor (promise : Promise < T > , onAbort : shaka.extern.CreateSegmentIndexFunction ) ;
3022
3032
  abort ( ) : any ;
3033
+ aborted ( ) : boolean ;
3023
3034
  chain < U > (onSuccess : undefined | Function , onError ? : (a : any ) => any ) : shaka.util.AbortableOperation < U > ;
3024
3035
  finally (onFinal : any ) : any ;
3025
3036
  promise : Promise < T > ;
@@ -3074,6 +3085,8 @@ declare namespace shaka.util.CmcdManager {
3074
3085
  enum StreamingFormat {
3075
3086
  DASH = 'd' ,
3076
3087
  HLS = 'h' ,
3088
+ LOW_LATENCY_DASH = 'ld' ,
3089
+ LOW_LATENCY_HLS = 'lh' ,
3077
3090
  OTHER = 'o' ,
3078
3091
  SMOOTH = 's' ,
3079
3092
  }
@@ -3287,6 +3300,7 @@ declare namespace shaka.util.Error {
3287
3300
  FAILED_TO_CREATE_SESSION = 6005.0 ,
3288
3301
  FAILED_TO_GENERATE_LICENSE_REQUEST = 6006.0 ,
3289
3302
  HLS_COULD_NOT_GUESS_CODECS = 4025.0 ,
3303
+ HLS_EMPTY_MEDIA_PLAYLIST = 4053.0 ,
3290
3304
  HLS_INVALID_PLAYLIST_HIERARCHY = 4017.0 ,
3291
3305
  HLS_KEYFORMATS_NOT_SUPPORTED = 4026.0 ,
3292
3306
  HLS_MSE_ENCRYPTED_LEGACY_APPLE_MEDIA_KEYS_NOT_SUPPORTED = 4041.0 ,
@@ -3301,6 +3315,7 @@ declare namespace shaka.util.Error {
3301
3315
  INDEXED_DB_ERROR = 9001.0 ,
3302
3316
  INDEXED_DB_INIT_TIMED_OUT = 9017.0 ,
3303
3317
  INIT_DATA_TRANSFORM_ERROR = 6016.0 ,
3318
+ INTERSTITIAL_AD_MANAGER_NOT_INITIALIZED = 10006.0 ,
3304
3319
  INVALID_HLS_TAG = 4016.0 ,
3305
3320
  INVALID_MP4_CEA = 2010.0 ,
3306
3321
  INVALID_MP4_TTML = 2007.0 ,
@@ -3371,6 +3386,7 @@ declare namespace shaka.util.Error {
3371
3386
  UNEXPECTED_TEST_REQUEST = 1009.0 ,
3372
3387
  UNSUPPORTED_EXTERNAL_THUMBNAILS_URI = 2017.0 ,
3373
3388
  UNSUPPORTED_SCHEME = 1000.0 ,
3389
+ VAST_INVALID_XML = 4001.0 ,
3374
3390
  VIDEO_ERROR = 3016.0 ,
3375
3391
  WEBM_CUES_ELEMENT_MISSING = 3007.0 ,
3376
3392
  WEBM_CUE_TIME_ELEMENT_MISSING = 3013.0 ,
@@ -3930,7 +3946,7 @@ declare namespace shaka.util {
3930
3946
  /**
3931
3947
  * Return the video information
3932
3948
  */
3933
- getVideoInfo ( ) : { codec : string | null , height : string | null , width : string | null } ;
3949
+ getVideoInfo ( ) : { codec : string | null , frameRate : string | null , height : string | null , width : string | null } ;
3934
3950
  /**
3935
3951
  * Return the video data
3936
3952
  */
@@ -4144,6 +4160,10 @@ declare namespace shaka.extern {
4144
4160
  type AdCuePoint = { end : number | null , start : number } ;
4145
4161
  }
4146
4162
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js
4163
+ declare namespace shaka.extern {
4164
+ type AdInterstitial = { canJump : boolean , endTime : number | null , id : string | null , isSkippable : boolean , once : boolean , playoutLimit : number | null , post : boolean , pre : boolean , resumeOffset : number | null , skipOffset : number | null , startTime : number , timelineRange : boolean , uri : string } ;
4165
+ }
4166
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js
4147
4167
  declare namespace shaka.extern {
4148
4168
  type AdsStats = { averageLoadTime : number , errors : number , loadTimes : number [] , playedCompletely : number , skipped : number , started : number } ;
4149
4169
  }
@@ -4196,6 +4216,8 @@ declare namespace shaka.extern {
4196
4216
  * in the player.
4197
4217
  */
4198
4218
  interface IAdManager extends EventTarget {
4219
+ addAdUrlInterstitial (url : string ) : Promise < any > ;
4220
+ addCustomInterstitial (interstitial : shaka.extern.AdInterstitial ) : any ;
4199
4221
  addMediaTailorTrackingUrl (url : string ) : any ;
4200
4222
  /**
4201
4223
  * Called by the Player to provide an updated configuration any time it
@@ -4216,9 +4238,10 @@ declare namespace shaka.extern {
4216
4238
  initServerSide (adContainer : HTMLElement , video : HTMLMediaElement ) : any ;
4217
4239
  onAssetUnload ( ) : any ;
4218
4240
  onCueMetadataChange (value : shaka.extern.MetadataFrame ) : any ;
4241
+ onDASHInterstitialMetadata (basePlayer : shaka.Player , baseVideo : HTMLMediaElement , region : shaka.extern.TimelineRegionInfo ) : any ;
4219
4242
  onDashTimedMetadata (region : shaka.extern.TimelineRegionInfo ) : any ;
4243
+ onHLSInterstitialMetadata (basePlayer : shaka.Player , baseVideo : HTMLMediaElement , interstitial : shaka.extern.HLSInterstitial ) : any ;
4220
4244
  onHlsTimedMetadata (metadata : shaka.extern.ID3Metadata , timestampOffset : number ) : any ;
4221
- onInterstitialMetadata (basePlayer : shaka.Player , baseVideo : HTMLMediaElement , interstitial : shaka.extern.Interstitial ) : any ;
4222
4245
  /**
4223
4246
  * Fired when the manifest is updated.
4224
4247
  */
@@ -4359,7 +4382,7 @@ declare namespace shaka.extern {
4359
4382
  }
4360
4383
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4361
4384
  declare namespace shaka.extern {
4362
- type Manifest = { gapCount : number , ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , isLowLatency : boolean , minBufferTime : number , nextUrl : string | null , offlineSessionIds : string [] , periodCount : number , presentationTimeline : shaka.media.PresentationTimeline , sequenceMode : boolean , serviceDescription : shaka.extern.ServiceDescription | null , textStreams : shaka.extern.Stream [] , type : string , variants : shaka.extern.Variant [] } ;
4385
+ type Manifest = { gapCount : number , ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , isLowLatency : boolean , minBufferTime : number , nextUrl : string | null , offlineSessionIds : string [] , periodCount : number , presentationTimeline : shaka.media.PresentationTimeline , sequenceMode : boolean , serviceDescription : shaka.extern.ServiceDescription | null , startTime : number | null , textStreams : shaka.extern.Stream [] , type : string , variants : shaka.extern.Variant [] } ;
4363
4386
  }
4364
4387
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4365
4388
  declare namespace shaka.extern {
@@ -4451,7 +4474,7 @@ declare namespace shaka.extern {
4451
4474
  * Called by the Player to provide an updated configuration any time the
4452
4475
  * configuration changes. Will be called at least once before start().
4453
4476
  */
4454
- configure (config : shaka.extern.ManifestConfiguration ) : any ;
4477
+ configure (config : shaka.extern.ManifestConfiguration , isPreloadFn ? : ( ) => boolean ) : any ;
4455
4478
  /**
4456
4479
  * Tells the parser that the expiration time of an EME session has changed.
4457
4480
  * Implementing this is optional.
@@ -4499,7 +4522,7 @@ declare namespace shaka.extern.ManifestParser {
4499
4522
  }
4500
4523
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js
4501
4524
  declare namespace shaka.extern.ManifestParser {
4502
- type PlayerInterface = { disableStream : (a : shaka.extern.Stream ) => any , enableLowLatencyMode : ( ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , getBandwidthEstimate : ( ) => number , isAutoLowLatencyMode : ( ) => boolean , isLowLatencyMode : ( ) => boolean , makeTextStreamsForClosedCaptions : (a : shaka.extern.Manifest ) => any , networkingEngine : shaka.net.NetworkingEngine , newDrmInfo : (a : shaka.extern.Stream ) => any , onError : (a : shaka.util.Error ) => any , onEvent : shaka.util.EventManager.ListenerType , onManifestUpdated : ( ) => any , onMetadata : (a : string , b : number , c : number | null , d : shaka.extern.MetadataFrame [] ) => any , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any , updateDuration : ( ) => any } ;
4525
+ type PlayerInterface = { addFont : (a : string , b : string ) => any , disableStream : (a : shaka.extern.Stream ) => any , enableLowLatencyMode : ( ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , getBandwidthEstimate : ( ) => number , isAutoLowLatencyMode : ( ) => boolean , isLowLatencyMode : ( ) => boolean , makeTextStreamsForClosedCaptions : (a : shaka.extern.Manifest ) => any , networkingEngine : shaka.net.NetworkingEngine , newDrmInfo : (a : shaka.extern.Stream ) => any , onError : (a : shaka.util.Error ) => any , onEvent : shaka.util.EventManager.ListenerType , onManifestUpdated : ( ) => any , onMetadata : (a : string , b : number , c : number | null , d : shaka.extern.MetadataFrame [] ) => any , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any , updateDuration : ( ) => any } ;
4503
4526
  }
4504
4527
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/mp4_parser.js
4505
4528
  declare namespace shaka.extern {
@@ -4519,7 +4542,7 @@ declare namespace shaka.extern {
4519
4542
  }
4520
4543
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4521
4544
  declare namespace shaka.extern {
4522
- type RequestContext = { segment ? : shaka.media.SegmentReference | null , stream ? : shaka.extern.Stream , type ? : shaka.net.NetworkingEngine.AdvancedRequestType } ;
4545
+ type RequestContext = { isPreload ? : boolean , segment ? : shaka.media.SegmentReference | null , stream ? : shaka.extern.Stream , type ? : shaka.net.NetworkingEngine.AdvancedRequestType } ;
4523
4546
  }
4524
4547
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4525
4548
  declare namespace shaka.extern {
@@ -4556,7 +4579,11 @@ declare namespace shaka.extern {
4556
4579
  }
4557
4580
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4558
4581
  declare namespace shaka.extern {
4559
- type SchemePlugin = (a : string , b : shaka.extern.Request , c : shaka.net.NetworkingEngine.RequestType , d : shaka.extern.ProgressUpdated , e : shaka.extern.HeadersReceived ) => shaka.extern.IAbortableOperation < shaka.extern.Response > ;
4582
+ type SchemePlugin = (a : string , b : shaka.extern.Request , c : shaka.net.NetworkingEngine.RequestType , d : shaka.extern.ProgressUpdated , e : shaka.extern.HeadersReceived , f : shaka.extern.SchemePluginConfig ) => shaka.extern.IAbortableOperation < shaka.extern.Response > ;
4583
+ }
4584
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
4585
+ declare namespace shaka.extern {
4586
+ type SchemePluginConfig = { minBytesForProgressEvents ? : number } ;
4560
4587
  }
4561
4588
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js
4562
4589
  declare namespace shaka.extern {
@@ -4774,7 +4801,7 @@ declare namespace shaka.extern {
4774
4801
  }
4775
4802
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4776
4803
  declare namespace shaka.extern {
4777
- type AbrConfiguration = { advanced : shaka.extern.AdvancedAbrConfiguration , bandwidthDowngradeTarget : number , bandwidthUpgradeTarget : number , cacheLoadThreshold : number , clearBufferSwitch : boolean , defaultBandwidthEstimate : number , enabled : boolean , ignoreDevicePixelRatio : boolean , minTimeToSwitch : number , restrictToElementSize : boolean , restrictToScreenSize : boolean , restrictions : shaka.extern.Restrictions , safeMarginSwitch : number , switchInterval : number , useNetworkInformation : boolean } ;
4804
+ type AbrConfiguration = { advanced : shaka.extern.AdvancedAbrConfiguration , bandwidthDowngradeTarget : number , bandwidthUpgradeTarget : number , cacheLoadThreshold : number , clearBufferSwitch : boolean , defaultBandwidthEstimate : number , enabled : boolean , ignoreDevicePixelRatio : boolean , minTimeToSwitch : number , preferNetworkInformationBandwidth : boolean , restrictToElementSize : boolean , restrictToScreenSize : boolean , restrictions : shaka.extern.Restrictions , safeMarginSwitch : number , switchInterval : number , useNetworkInformation : boolean } ;
4778
4805
  }
4779
4806
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4780
4807
  declare namespace shaka.extern {
@@ -4834,19 +4861,19 @@ declare namespace shaka.extern {
4834
4861
  }
4835
4862
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4836
4863
  declare namespace shaka.extern {
4837
- 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 } ;
4864
+ type HLSInterstitial = { endTime : number | null , startTime : number , values : shaka.extern.MetadataFrame [] } ;
4838
4865
  }
4839
4866
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4840
4867
  declare namespace shaka.extern {
4841
- type ID3Metadata = { cueTime : number | null , data : Uint8Array , dts : number | null , frames : shaka.extern.MetadataFrame [] , pts : number | null } ;
4868
+ 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 } ;
4842
4869
  }
4843
4870
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4844
4871
  declare namespace shaka.extern {
4845
- type InitDataTransform = (a : Uint8Array , b : string , c : shaka.extern.DrmInfo | null ) => Uint8Array ;
4872
+ type ID3Metadata = { cueTime : number | null , data : Uint8Array , dts : number | null , frames : shaka.extern.MetadataFrame [] , pts : number | null } ;
4846
4873
  }
4847
4874
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4848
4875
  declare namespace shaka.extern {
4849
- type Interstitial = { endTime : number | null , startTime : number , values : shaka.extern.MetadataFrame [] } ;
4876
+ type InitDataTransform = (a : Uint8Array , b : string , c : shaka.extern.DrmInfo | null ) => Uint8Array ;
4850
4877
  }
4851
4878
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4852
4879
  declare namespace shaka.extern {
@@ -4893,6 +4920,14 @@ declare namespace shaka.extern {
4893
4920
  type PersistentSessionMetadata = { initData : Uint8Array | null , initDataType : string | null , sessionId : string } ;
4894
4921
  }
4895
4922
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4923
+ declare namespace shaka.extern {
4924
+ type PlaybackInfo = { audio : shaka.extern.PlaybackStreamInfo | null , text : shaka.extern.PlaybackStreamInfo | null , video : shaka.extern.PlaybackStreamInfo | null } ;
4925
+ }
4926
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4927
+ declare namespace shaka.extern {
4928
+ type PlaybackStreamInfo = { bandwidth : number , codecs : string , height : number | null , mimeType : string , width : number | null } ;
4929
+ }
4930
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4896
4931
  declare namespace shaka.extern {
4897
4932
  type PlayerConfiguration = { abr : shaka.extern.AbrConfiguration , abrFactory : shaka.extern.AbrManager.Factory , ads : shaka.extern.AdsConfiguration , autoShowText : shaka.config.AutoShowText , cmcd : shaka.extern.CmcdConfiguration , cmsd : shaka.extern.CmsdConfiguration , drm : shaka.extern.DrmConfiguration , lcevc : shaka.extern.LcevcConfiguration , manifest : shaka.extern.ManifestConfiguration , mediaSource : shaka.extern.MediaSourceConfiguration , offline : shaka.extern.OfflineConfiguration , playRangeEnd : number , playRangeStart : number , preferForcedSubs : boolean , preferSpatialAudio : boolean , preferredAudioChannelCount : number , preferredAudioCodecs : string [] , preferredAudioLabel : string , preferredAudioLanguage : string , preferredDecodingAttributes : string [] , preferredTextLanguage : string , preferredTextRole : string , preferredVariantRole : string , preferredVideoCodecs : string [] , preferredVideoHdrLevel : string , preferredVideoLabel : string , preferredVideoLayout : string , restrictions : shaka.extern.Restrictions , streaming : shaka.extern.StreamingConfiguration , textDisplayFactory : shaka.extern.TextDisplayer.Factory , textDisplayer : shaka.extern.TextDisplayerConfiguration } ;
4898
4933
  }
@@ -4914,7 +4949,7 @@ declare namespace shaka.extern {
4914
4949
  }
4915
4950
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4916
4951
  declare namespace shaka.extern {
4917
- type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , clearDecodingCache : boolean , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dispatchAllEmsgBoxes : boolean , dontChooseCodecs : 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 : shaka.extern.LiveSyncConfiguration , 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 , shouldFixTimestampOffset : boolean , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
4952
+ type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , clearDecodingCache : boolean , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dispatchAllEmsgBoxes : boolean , dontChooseCodecs : 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 : shaka.extern.LiveSyncConfiguration , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minBytesForProgressEvents : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , parsePrftBox : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , preloadNextUrlWindow : number , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekOffset : number , segmentPrefetchLimit : number , shouldFixTimestampOffset : boolean , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
4918
4953
  }
4919
4954
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4920
4955
  declare namespace shaka.extern {
@@ -5008,7 +5043,7 @@ declare namespace shaka.extern {
5008
5043
  * @param timeContext The time information that should be used to adjust the times values for each cue.
5009
5044
  * @param uri The media uri.
5010
5045
  */
5011
- parseMedia (data : Uint8Array , timeContext : shaka.extern.TextParser.TimeContext , uri : string | undefined | null ) : shaka.text.Cue [] ;
5046
+ parseMedia (data : Uint8Array , timeContext : shaka.extern.TextParser.TimeContext , uri : string | undefined | null , images : string [] ) : shaka.text.Cue [] ;
5012
5047
  /**
5013
5048
  * Notifies the manifest type.
5014
5049
  */