shaka-player 4.12.8 → 4.13.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 (261) hide show
  1. package/AUTHORS +1 -0
  2. package/CONTRIBUTORS +4 -0
  3. package/README.md +22 -21
  4. package/cspell.config.yaml +18 -0
  5. package/dist/controls.css +1 -1
  6. package/dist/controls.css.map +1 -1
  7. package/dist/deps.js +29 -24
  8. package/dist/locales.js +33 -33
  9. package/dist/shaka-player.compiled.d.ts +138 -36
  10. package/dist/shaka-player.compiled.debug.d.ts +138 -36
  11. package/dist/shaka-player.compiled.debug.externs.js +367 -107
  12. package/dist/shaka-player.compiled.debug.js +828 -765
  13. package/dist/shaka-player.compiled.debug.map +4 -4
  14. package/dist/shaka-player.compiled.externs.js +367 -107
  15. package/dist/shaka-player.compiled.js +1451 -1416
  16. package/dist/shaka-player.compiled.map +4 -4
  17. package/dist/shaka-player.ui.d.ts +172 -38
  18. package/dist/shaka-player.ui.debug.d.ts +172 -38
  19. package/dist/shaka-player.ui.debug.externs.js +406 -113
  20. package/dist/shaka-player.ui.debug.js +842 -766
  21. package/dist/shaka-player.ui.debug.map +4 -4
  22. package/dist/shaka-player.ui.externs.js +406 -113
  23. package/dist/shaka-player.ui.js +1670 -1628
  24. package/dist/shaka-player.ui.map +4 -4
  25. package/eslint.config.mjs +343 -0
  26. package/externs/airplay.js +1 -1
  27. package/externs/audiotrack.js +1 -1
  28. package/externs/awesomplete.js +1 -1
  29. package/externs/cast-sdk-v2.js +2 -2
  30. package/externs/cmcd.js +16 -1
  31. package/externs/device_sensor_event.js +1 -1
  32. package/externs/ima.js +8 -8
  33. package/externs/isoboxer.js +31 -31
  34. package/externs/jwk_set.js +1 -1
  35. package/externs/lcevc.js +8 -8
  36. package/externs/mediakeys.js +1 -1
  37. package/externs/mediasession.js +3 -2
  38. package/externs/mediatailor.js +18 -18
  39. package/externs/pictureinpicture.js +41 -1
  40. package/externs/playstation.js +2 -2
  41. package/externs/prefixed_eme.js +1 -1
  42. package/externs/shaka/abortable.js +4 -4
  43. package/externs/shaka/abr_manager.js +1 -1
  44. package/externs/shaka/ads.js +45 -6
  45. package/externs/shaka/cea.js +2 -2
  46. package/externs/shaka/codecs.js +4 -4
  47. package/externs/shaka/drm_info.js +6 -6
  48. package/externs/shaka/error.js +5 -5
  49. package/externs/shaka/manifest.js +51 -56
  50. package/externs/shaka/manifest_parser.js +3 -9
  51. package/externs/shaka/net.js +23 -20
  52. package/externs/shaka/offline.js +37 -37
  53. package/externs/shaka/offline_compat_v1.js +10 -10
  54. package/externs/shaka/offline_compat_v2.js +10 -10
  55. package/externs/shaka/player.js +139 -109
  56. package/externs/shaka/text.js +10 -3
  57. package/externs/shaka/transmuxer.js +1 -1
  58. package/externs/videotrack.js +1 -1
  59. package/lib/abr/ewma.js +1 -1
  60. package/lib/abr/simple_abr_manager.js +70 -22
  61. package/lib/ads/ad_manager.js +43 -18
  62. package/lib/ads/ad_utils.js +160 -58
  63. package/lib/ads/ads_stats.js +1 -1
  64. package/lib/ads/client_side_ad_manager.js +2 -2
  65. package/lib/ads/interstitial_ad.js +16 -11
  66. package/lib/ads/interstitial_ad_manager.js +419 -72
  67. package/lib/ads/interstitial_static_ad.js +299 -0
  68. package/lib/ads/media_tailor_ad.js +1 -0
  69. package/lib/ads/media_tailor_ad_manager.js +37 -36
  70. package/lib/ads/server_side_ad_manager.js +7 -6
  71. package/lib/cast/cast_receiver.js +5 -3
  72. package/lib/cast/cast_sender.js +2 -2
  73. package/lib/cast/cast_utils.js +20 -13
  74. package/lib/cea/cea608_data_channel.js +53 -53
  75. package/lib/cea/cea708_service.js +42 -40
  76. package/lib/cea/cea708_window.js +5 -2
  77. package/lib/cea/cea_decoder.js +5 -7
  78. package/lib/cea/mp4_cea_parser.js +1 -1
  79. package/lib/cea/sei_processor.js +1 -1
  80. package/lib/dash/content_protection.js +62 -192
  81. package/lib/dash/dash_parser.js +119 -119
  82. package/lib/dash/mpd_utils.js +14 -13
  83. package/lib/dash/segment_base.js +5 -5
  84. package/lib/dash/segment_list.js +10 -10
  85. package/lib/dash/segment_template.js +55 -53
  86. package/lib/debug/log.js +2 -2
  87. package/lib/dependencies/all.js +2 -1
  88. package/lib/{media → drm}/drm_engine.js +274 -143
  89. package/lib/{util → drm}/drm_utils.js +20 -11
  90. package/lib/drm/playready.js +233 -0
  91. package/lib/hls/hls_classes.js +14 -14
  92. package/lib/hls/hls_parser.js +257 -196
  93. package/lib/hls/hls_utils.js +14 -14
  94. package/lib/hls/manifest_text_parser.js +10 -10
  95. package/lib/media/adaptation_set.js +6 -5
  96. package/lib/media/adaptation_set_criteria.js +51 -379
  97. package/lib/media/buffering_observer.js +5 -4
  98. package/lib/media/closed_caption_parser.js +2 -2
  99. package/lib/media/content_workarounds.js +2 -2
  100. package/lib/media/example_based_criteria.js +69 -0
  101. package/lib/media/gap_jumping_controller.js +14 -1
  102. package/lib/media/manifest_filterer.js +8 -8
  103. package/lib/media/manifest_parser.js +2 -2
  104. package/lib/media/media_source_capabilities.js +20 -1
  105. package/lib/media/media_source_engine.js +84 -35
  106. package/lib/media/mp4_segment_index_parser.js +5 -5
  107. package/lib/media/playhead.js +2 -8
  108. package/lib/media/playhead_observer.js +1 -1
  109. package/lib/media/preference_based_criteria.js +333 -0
  110. package/lib/media/preload_manager.js +53 -37
  111. package/lib/media/presentation_timeline.js +2 -2
  112. package/lib/media/quality_observer.js +35 -35
  113. package/lib/media/region_observer.js +2 -2
  114. package/lib/media/region_timeline.js +3 -3
  115. package/lib/media/segment_index.js +14 -14
  116. package/lib/media/segment_prefetch.js +17 -13
  117. package/lib/media/segment_reference.js +7 -7
  118. package/lib/media/segment_utils.js +9 -9
  119. package/lib/media/streaming_engine.js +77 -38
  120. package/lib/media/time_ranges_utils.js +1 -1
  121. package/lib/media/video_wrapper.js +1 -1
  122. package/lib/media/webm_segment_index_parser.js +4 -4
  123. package/lib/mss/content_protection.js +17 -222
  124. package/lib/mss/mss_parser.js +23 -24
  125. package/lib/net/data_uri_plugin.js +1 -0
  126. package/lib/net/http_fetch_plugin.js +8 -7
  127. package/lib/net/http_plugin_utils.js +5 -2
  128. package/lib/net/http_xhr_plugin.js +4 -3
  129. package/lib/net/networking_engine.js +72 -17
  130. package/lib/net/networking_utils.js +5 -2
  131. package/lib/offline/download_info.js +5 -1
  132. package/lib/offline/download_manager.js +15 -4
  133. package/lib/offline/download_progress_estimator.js +1 -1
  134. package/lib/offline/indexeddb/base_storage_cell.js +9 -9
  135. package/lib/offline/indexeddb/db_connection.js +1 -1
  136. package/lib/offline/indexeddb/db_operation.js +2 -2
  137. package/lib/offline/indexeddb/eme_session_storage_cell.js +1 -1
  138. package/lib/offline/indexeddb/storage_mechanism.js +1 -1
  139. package/lib/offline/indexeddb/v1_storage_cell.js +3 -3
  140. package/lib/offline/indexeddb/v2_storage_cell.js +2 -2
  141. package/lib/offline/manifest_converter.js +11 -12
  142. package/lib/offline/offline_scheme.js +8 -4
  143. package/lib/offline/session_deleter.js +11 -11
  144. package/lib/offline/storage.js +137 -88
  145. package/lib/offline/storage_muxer.js +8 -8
  146. package/lib/offline/stored_content_utils.js +3 -3
  147. package/lib/offline/stream_bandwidth_estimator.js +1 -1
  148. package/lib/player.js +291 -207
  149. package/lib/polyfill/all.js +1 -1
  150. package/lib/polyfill/media_capabilities.js +5 -5
  151. package/lib/polyfill/patchedmediakeys_apple.js +6 -6
  152. package/lib/polyfill/patchedmediakeys_webkit.js +8 -8
  153. package/lib/polyfill/video_play_promise.js +0 -1
  154. package/lib/text/cue.js +3 -2
  155. package/lib/text/lrc_text_parser.js +1 -1
  156. package/lib/text/mp4_ttml_parser.js +1 -1
  157. package/lib/text/mp4_vtt_parser.js +3 -3
  158. package/lib/text/sbv_text_parser.js +1 -1
  159. package/lib/text/simple_text_displayer.js +37 -10
  160. package/lib/text/ssa_text_parser.js +3 -1
  161. package/lib/text/stub_text_displayer.js +12 -5
  162. package/lib/text/text_engine.js +5 -4
  163. package/lib/text/text_utils.js +4 -4
  164. package/lib/text/ttml_text_parser.js +21 -20
  165. package/lib/text/ui_text_displayer.js +20 -13
  166. package/lib/text/vtt_text_parser.js +10 -10
  167. package/lib/text/web_vtt_generator.js +2 -2
  168. package/lib/transmuxer/aac_transmuxer.js +2 -2
  169. package/lib/transmuxer/ac3_transmuxer.js +2 -2
  170. package/lib/transmuxer/adts.js +2 -0
  171. package/lib/transmuxer/ec3.js +3 -3
  172. package/lib/transmuxer/ec3_transmuxer.js +2 -2
  173. package/lib/transmuxer/h264.js +5 -5
  174. package/lib/transmuxer/h265.js +3 -3
  175. package/lib/transmuxer/mp3_transmuxer.js +2 -2
  176. package/lib/transmuxer/mpeg_audio.js +6 -6
  177. package/lib/transmuxer/mss_transmuxer.js +2 -0
  178. package/lib/transmuxer/transmuxer_engine.js +1 -1
  179. package/lib/transmuxer/ts_transmuxer.js +10 -10
  180. package/lib/util/abortable_operation.js +10 -10
  181. package/lib/util/array_utils.js +6 -6
  182. package/lib/util/cmcd_manager.js +149 -18
  183. package/lib/util/cmsd_manager.js +11 -11
  184. package/lib/util/config_utils.js +3 -3
  185. package/lib/util/content_steering_manager.js +17 -17
  186. package/lib/util/data_view_reader.js +3 -3
  187. package/lib/util/ebml_parser.js +1 -1
  188. package/lib/util/error.js +11 -6
  189. package/lib/util/event_manager.js +1 -1
  190. package/lib/util/exp_golomb.js +1 -1
  191. package/lib/util/fairplay_utils.js +6 -1
  192. package/lib/util/fake_event.js +3 -2
  193. package/lib/util/fake_event_target.js +1 -1
  194. package/lib/util/functional.js +8 -8
  195. package/lib/util/id3_utils.js +1 -1
  196. package/lib/util/iterables.js +6 -6
  197. package/lib/util/language_utils.js +17 -17
  198. package/lib/util/manifest_parser_utils.js +13 -13
  199. package/lib/util/map_utils.js +6 -6
  200. package/lib/util/media_ready_state_utils.js +1 -1
  201. package/lib/util/mime_utils.js +15 -4
  202. package/lib/util/mp4_box_parsers.js +5 -5
  203. package/lib/util/mp4_generator.js +31 -30
  204. package/lib/util/mp4_parser.js +2 -2
  205. package/lib/util/multi_map.js +5 -5
  206. package/lib/util/mutex.js +1 -1
  207. package/lib/util/networking.js +1 -1
  208. package/lib/util/object_utils.js +5 -1
  209. package/lib/util/operation_manager.js +1 -1
  210. package/lib/util/periods.js +24 -24
  211. package/lib/util/platform.js +8 -4
  212. package/lib/util/player_configuration.js +50 -17
  213. package/lib/util/pssh.js +34 -6
  214. package/lib/util/public_promise.js +2 -2
  215. package/lib/util/state_history.js +2 -2
  216. package/lib/util/stream_utils.js +138 -120
  217. package/lib/util/string_utils.js +4 -3
  218. package/lib/util/switch_history.js +2 -2
  219. package/lib/util/tXml.js +22 -17
  220. package/lib/util/text_parser.js +2 -2
  221. package/lib/util/timer.js +1 -1
  222. package/lib/util/ts_parser.js +22 -22
  223. package/lib/util/xml_utils.js +1 -0
  224. package/package.json +7 -4
  225. package/project-words.txt +485 -0
  226. package/shaka-player.uncompiled.js +1 -1
  227. package/third_party/closure-uri/uri.js +2 -2
  228. package/third_party/closure-uri/utils.js +2 -2
  229. package/third_party/language-mapping-list/language-mapping-list.js +1 -1
  230. package/ui/ad_statistics_button.js +9 -5
  231. package/ui/airplay_button.js +1 -0
  232. package/ui/audio_language_selection.js +2 -1
  233. package/ui/context_menu.js +2 -2
  234. package/ui/controls.js +7 -7
  235. package/ui/externs/ui.js +29 -21
  236. package/ui/externs/watermark.js +64 -0
  237. package/ui/fast_forward_button.js +1 -1
  238. package/ui/gl_matrix/matrix_4x4.js +11 -5
  239. package/ui/hidden_fast_forward_button.js +1 -1
  240. package/ui/hidden_seek_button.js +1 -1
  241. package/ui/language_utils.js +27 -26
  242. package/ui/less/buttons.less +2 -2
  243. package/ui/localization.js +21 -21
  244. package/ui/loop_button.js +2 -2
  245. package/ui/overflow_menu.js +2 -2
  246. package/ui/playback_rate_selection.js +1 -1
  247. package/ui/presentation_time.js +4 -1
  248. package/ui/range_element.js +2 -2
  249. package/ui/resolution_selection.js +42 -6
  250. package/ui/rewind_button.js +1 -1
  251. package/ui/seek_bar.js +5 -5
  252. package/ui/statistics_button.js +8 -4
  253. package/ui/text_selection.js +3 -2
  254. package/ui/ui.js +32 -2
  255. package/ui/vr_manager.js +3 -3
  256. package/ui/vr_utils.js +14 -14
  257. package/ui/vr_webgl.js +5 -5
  258. package/ui/watermark.js +313 -0
  259. package/.eslintignore +0 -4
  260. package/.eslintrc.js +0 -310
  261. package/lib/polyfill/patchedmediakeys_nop.js +0 -148
@@ -54,6 +54,11 @@ declare namespace shaka {
54
54
  * content this will be a no-op.
55
55
  */
56
56
  cancelTrickPlay ( ) : any ;
57
+ /**
58
+ * Changes low latency configuration settings on the Player.
59
+ * @param config This object should follow the {@link shaka.extern.PlayerConfiguration} object. Not all fields need to be set; unset fields retain their old values.
60
+ */
61
+ configurationForLowLatency (config : object ) : any ;
57
62
  /**
58
63
  * Changes configuration settings on the Player. This checks the names of
59
64
  * keys and the types of values to avoid coding errors. If there are errors,
@@ -156,6 +161,10 @@ declare namespace shaka {
156
161
  * <code>player.configure()</code> to make changes.
157
162
  */
158
163
  getConfiguration ( ) : shaka.extern.PlayerConfiguration ;
164
+ /**
165
+ * Return a copy of the current configuration for low latency.
166
+ */
167
+ getConfigurationForLowLatency ( ) : object ;
159
168
  /**
160
169
  * Get the next known expiration time for any EME session. If the session
161
170
  * never expires, this will return <code>Infinity</code>. If there are no EME
@@ -482,7 +491,7 @@ declare namespace shaka {
482
491
  static registerSupportPlugin (name : string , callback : ( ) => any ) : any ;
483
492
  /**
484
493
  * Set a factory to create an ad manager during player construction time.
485
- * This method needs to be called bafore instantiating the Player class.
494
+ * This method needs to be called before instantiating the Player class.
486
495
  */
487
496
  static setAdManagerFactory (factory : shaka.extern.IAdManager.Factory ) : any ;
488
497
  static version : string ;
@@ -549,6 +558,7 @@ declare namespace shaka.ads {
549
558
  addMediaTailorTrackingUrl (url : string ) : any ;
550
559
  configure (config : any ) : any ;
551
560
  getCuePoints ( ) : shaka.extern.AdCuePoint [] ;
561
+ getInterstitialPlayer ( ) : any ;
552
562
  getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ;
553
563
  getStats ( ) : shaka.extern.AdsStats ;
554
564
  initClientSide (adContainer : any , video : any , adsRenderingSettings : any ) : any ;
@@ -792,7 +802,47 @@ declare namespace shaka.ads {
792
802
  declare namespace shaka.ads {
793
803
  class InterstitialAd implements shaka.extern.IAd {
794
804
  private noStructuralTyping_shaka_ads_InterstitialAd : any;
795
- constructor (video : HTMLMediaElement | null , isSkippable : boolean , skipOffset : number | null , skipFor : number | null , onSkip : ( ) => any , sequenceLength : number , adPosition : number , isUsingAnotherMediaElement : boolean ) ;
805
+ constructor (video : HTMLMediaElement | null , interstitial : shaka.extern.AdInterstitial , onSkip : ( ) => any , sequenceLength : number , adPosition : number , isUsingAnotherMediaElement : boolean ) ;
806
+ canSkipNow ( ) : any ;
807
+ getAdId ( ) : any ;
808
+ getAdvertiserName ( ) : any ;
809
+ getCreativeAdId ( ) : any ;
810
+ getDescription ( ) : any ;
811
+ getDuration ( ) : any ;
812
+ getMediaUrl ( ) : any ;
813
+ getMinSuggestedDuration ( ) : any ;
814
+ getPodIndex ( ) : any ;
815
+ getPositionInSequence ( ) : any ;
816
+ getRemainingTime ( ) : any ;
817
+ getSequenceLength ( ) : any ;
818
+ getTimeOffset ( ) : any ;
819
+ getTimeUntilSkippable ( ) : any ;
820
+ getTitle ( ) : any ;
821
+ getVastMediaBitrate ( ) : any ;
822
+ getVastMediaHeight ( ) : any ;
823
+ getVastMediaWidth ( ) : any ;
824
+ getVolume ( ) : any ;
825
+ isClientRendering ( ) : any ;
826
+ isLinear ( ) : any ;
827
+ isMuted ( ) : any ;
828
+ isPaused ( ) : any ;
829
+ isSkippable ( ) : any ;
830
+ isUsingAnotherMediaElement ( ) : any ;
831
+ needsSkipUI ( ) : any ;
832
+ pause ( ) : any ;
833
+ play ( ) : any ;
834
+ release ( ) : any ;
835
+ resize (width : any , height : any ) : any ;
836
+ setMuted (muted : any ) : any ;
837
+ setVolume (volume : any ) : any ;
838
+ skip ( ) : any ;
839
+ }
840
+ }
841
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
842
+ declare namespace shaka.ads {
843
+ class InterstitialStaticAd implements shaka.extern.IAd {
844
+ private noStructuralTyping_shaka_ads_InterstitialStaticAd : any;
845
+ constructor (interstitial : shaka.extern.AdInterstitial , sequenceLength : number , adPosition : number ) ;
796
846
  canSkipNow ( ) : any ;
797
847
  getAdId ( ) : any ;
798
848
  getAdvertiserName ( ) : any ;
@@ -832,7 +882,7 @@ declare namespace shaka.ads {
832
882
  declare namespace shaka.ads {
833
883
  class MediaTailorAd implements shaka.extern.IAd {
834
884
  private noStructuralTyping_shaka_ads_MediaTailorAd : any;
835
- constructor (mediaTailorAd : any | null , adPosition : number , totalAds : number , isLinear : any , video : HTMLMediaElement | null ) ;
885
+ constructor (mediaTailorAd : any | null , adPosition : number , totalAds : number , isLinear : boolean , video : HTMLMediaElement | null ) ;
836
886
  canSkipNow ( ) : any ;
837
887
  getAdId ( ) : any ;
838
888
  getAdvertiserName ( ) : any ;
@@ -1274,6 +1324,46 @@ declare namespace shaka.lcevc {
1274
1324
  }
1275
1325
  }
1276
1326
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
1327
+ declare namespace shaka.media {
1328
+ /**
1329
+ * A set of variants that we want to adapt between.
1330
+ */
1331
+ class AdaptationSet {
1332
+ private noStructuralTyping_shaka_media_AdaptationSet : any;
1333
+ constructor (root : shaka.extern.Variant , candidates ? : Iterable < shaka.extern.Variant > , compareCodecs ? : boolean ) ;
1334
+ }
1335
+ }
1336
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
1337
+ declare namespace shaka.media {
1338
+ /**
1339
+ * An adaptation set criteria is a unit of logic that can take a set of
1340
+ * variants and return a subset of variants that should (and can) be
1341
+ * adapted between.
1342
+ */
1343
+ interface AdaptationSetCriteria {
1344
+ /**
1345
+ * Sets the AdaptationSetCriteria configuration.
1346
+ */
1347
+ configure (config : shaka.media.AdaptationSetCriteria.Configuration ) : any ;
1348
+ /**
1349
+ * Take a set of variants, and return a subset of variants that can be
1350
+ * adapted between.
1351
+ */
1352
+ create (variants : shaka.extern.Variant [] ) : shaka.media.AdaptationSet ;
1353
+ }
1354
+ }
1355
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
1356
+ declare namespace shaka.media.AdaptationSetCriteria {
1357
+ type Configuration = { audioCodec : string , audioLabel : string , channelCount : number , codecSwitchingStrategy : shaka.config.CodecSwitchingStrategy , hdrLevel : string , language : string , role : string , spatialAudio : boolean , videoLabel : string , videoLayout : string } ;
1358
+ }
1359
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
1360
+ declare namespace shaka.media.AdaptationSetCriteria {
1361
+ /**
1362
+ * A factory for creating the AdaptationSetCriteria.
1363
+ */
1364
+ type Factory = ( ) => shaka.media.AdaptationSetCriteria ;
1365
+ }
1366
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
1277
1367
  declare namespace shaka.media {
1278
1368
  /**
1279
1369
  * Closed Caption Parser provides all operations for parsing the closed captions
@@ -1300,7 +1390,7 @@ declare namespace shaka.media {
1300
1390
  * The IClosedCaptionParser defines the interface to provide all operations for
1301
1391
  * parsing the closed captions embedded in Dash videos streams.
1302
1392
  * TODO: Remove this interface and move method definitions
1303
- * directly to ClosedCaptonParser.
1393
+ * directly to ClosedCaptionParser.
1304
1394
  */
1305
1395
  interface IClosedCaptionParser {
1306
1396
  }
@@ -1607,7 +1697,7 @@ declare namespace shaka.media {
1607
1697
  * RFC 8216 rev 13, section 8.1: "Each (non-Partial) Media Segment in a Media
1608
1698
  * Playlist will contain at least one independent frame."
1609
1699
  */
1610
- getIteratorForTime (time : number , allowNonIndepedent ? : boolean , reverse ? : boolean ) : shaka.media.SegmentIterator | null ;
1700
+ getIteratorForTime (time : number , allowNonIndependent ? : boolean , reverse ? : boolean ) : shaka.media.SegmentIterator | null ;
1611
1701
  getNumEvicted ( ) : any ;
1612
1702
  getNumReferences ( ) : any ;
1613
1703
  /**
@@ -1866,7 +1956,7 @@ declare namespace shaka.net {
1866
1956
  * handle the actual request. A plugin is registered using registerScheme.
1867
1957
  * Each scheme has at most one plugin to handle the request.
1868
1958
  */
1869
- constructor (onProgressUpdated ? : shaka.net.NetworkingEngine.onProgressUpdated , onHeadersReceived ? : shaka.net.NetworkingEngine.OnHeadersReceived , onDownloadFailed ? : shaka.net.NetworkingEngine.OnDownloadFailed , onRequest ? : shaka.net.NetworkingEngine.OnRequest , onRetry ? : shaka.net.NetworkingEngine.OnRetry , onResponse ? : shaka.net.NetworkingEngine.OnResponse ) ;
1959
+ constructor (onProgressUpdated ? : shaka.net.NetworkingEngine.onProgressUpdated , onHeadersReceived ? : shaka.net.NetworkingEngine.OnHeadersReceived , onDownloadCompleted ? : shaka.net.NetworkingEngine.OnDownloadCompleted , onDownloadFailed ? : shaka.net.NetworkingEngine.OnDownloadFailed , onRequest ? : shaka.net.NetworkingEngine.OnRequest , onRetry ? : shaka.net.NetworkingEngine.OnRetry , onResponse ? : shaka.net.NetworkingEngine.OnResponse ) ;
1870
1960
  /**
1871
1961
  * Clears all request filters.
1872
1962
  */
@@ -1875,6 +1965,10 @@ declare namespace shaka.net {
1875
1965
  * Clears all response filters.
1876
1966
  */
1877
1967
  clearAllResponseFilters ( ) : any ;
1968
+ /**
1969
+ * Clears Common Access Token map.
1970
+ */
1971
+ clearCommonAccessTokenMap ( ) : any ;
1878
1972
  destroy ( ) : Promise < any > ;
1879
1973
  /**
1880
1974
  * Registers a new request filter. All filters are applied in the order they
@@ -1968,6 +2062,10 @@ declare namespace shaka.net.NetworkingEngine {
1968
2062
  }
1969
2063
  }
1970
2064
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
2065
+ declare namespace shaka.net.NetworkingEngine {
2066
+ type OnDownloadCompleted = (a : shaka.extern.Request , b : shaka.extern.Response ) => any ;
2067
+ }
2068
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
1971
2069
  declare namespace shaka.net.NetworkingEngine {
1972
2070
  type OnDownloadFailed = (a : shaka.extern.Request , b : shaka.util.Error | null , c : number , d : boolean ) => any ;
1973
2071
  }
@@ -2264,16 +2362,6 @@ declare namespace shaka.polyfill {
2264
2362
  }
2265
2363
  }
2266
2364
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
2267
- declare namespace shaka.polyfill {
2268
- class PatchedMediaKeysNop {
2269
- private noStructuralTyping_shaka_polyfill_PatchedMediaKeysNop : any;
2270
- /**
2271
- * Installs the polyfill if needed.
2272
- */
2273
- static install ( ) : any ;
2274
- }
2275
- }
2276
- // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
2277
2365
  declare namespace shaka.polyfill {
2278
2366
  class PatchedMediaKeysWebkit {
2279
2367
  private noStructuralTyping_shaka_polyfill_PatchedMediaKeysWebkit : any;
@@ -2804,6 +2892,7 @@ declare namespace shaka.text {
2804
2892
  append (cues : any ) : any ;
2805
2893
  configure (config : any ) : any ;
2806
2894
  destroy ( ) : any ;
2895
+ enableTextDisplayer ( ) : any ;
2807
2896
  isTextVisible ( ) : any ;
2808
2897
  remove (start : any , end : any ) : any ;
2809
2898
  setTextLanguage (language : any ) : any ;
@@ -2848,6 +2937,7 @@ declare namespace shaka.text {
2848
2937
  append (cues : any ) : any ;
2849
2938
  configure (config : any ) : any ;
2850
2939
  destroy ( ) : any ;
2940
+ enableTextDisplayer ( ) : any ;
2851
2941
  isTextVisible ( ) : any ;
2852
2942
  remove (start : any , end : any ) : any ;
2853
2943
  setTextLanguage (language : any ) : any ;
@@ -2891,6 +2981,7 @@ declare namespace shaka.text {
2891
2981
  append (cues : any ) : any ;
2892
2982
  configure (config : any ) : any ;
2893
2983
  destroy ( ) : any ;
2984
+ enableTextDisplayer ( ) : any ;
2894
2985
  isTextVisible ( ) : any ;
2895
2986
  remove (start : any , end : any ) : any ;
2896
2987
  setTextLanguage (language : any ) : any ;
@@ -3403,10 +3494,12 @@ declare namespace shaka.ui {
3403
3494
  * different UI configuration on mobile devices.
3404
3495
  */
3405
3496
  isMobile ( ) : boolean ;
3497
+ removeWatermark ( ) : any ;
3406
3498
  /**
3407
3499
  * Enable or disable the custom controls.
3408
3500
  */
3409
3501
  setEnabled (enabled : boolean ) : any ;
3502
+ setTextWatermark (text : string , options ? : shaka.ui.Watermark.Options | null ) : any ;
3410
3503
  }
3411
3504
  }
3412
3505
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
@@ -3634,17 +3727,43 @@ declare namespace shaka.ui {
3634
3727
  }
3635
3728
  }
3636
3729
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
3730
+ declare namespace shaka.ui {
3731
+ /**
3732
+ * A UI component that adds watermark functionality to the Shaka Player.
3733
+ * Allows adding text watermarks with various customization options.
3734
+ */
3735
+ class Watermark extends shaka.ui.Element {
3736
+ private noStructuralTyping_shaka_ui_Watermark : any;
3737
+ /**
3738
+ * A UI component that adds watermark functionality to the Shaka Player.
3739
+ * Allows adding text watermarks with various customization options.
3740
+ */
3741
+ constructor (parent : HTMLElement , controls : shaka.ui.Controls ) ;
3742
+ /**
3743
+ * Removes the current watermark from the video and stops any animations.
3744
+ */
3745
+ removeWatermark ( ) : any ;
3746
+ /**
3747
+ * Sets a text watermark on the video with customizable options.
3748
+ * The watermark can be either static (fixed position) or dynamic (moving).
3749
+ * @param text The text to display as watermark
3750
+ * @param options configuration options
3751
+ */
3752
+ setTextWatermark (text : string , options ? : shaka.ui.Watermark.Options | null ) : any ;
3753
+ }
3754
+ }
3755
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
3637
3756
  declare namespace shaka.util {
3638
3757
  /**
3639
3758
  * A utility to wrap abortable operations. Note that these are not cancelable.
3640
- * Cancelation implies undoing what has been done so far, whereas aborting only
3759
+ * Cancellation implies undoing what has been done so far, whereas aborting only
3641
3760
  * means that further work is stopped.
3642
3761
  */
3643
3762
  class AbortableOperation < T > implements shaka.extern.IAbortableOperation < T > {
3644
3763
  private noStructuralTyping_shaka_util_AbortableOperation : any;
3645
3764
  /**
3646
3765
  * A utility to wrap abortable operations. Note that these are not cancelable.
3647
- * Cancelation implies undoing what has been done so far, whereas aborting only
3766
+ * Cancellation implies undoing what has been done so far, whereas aborting only
3648
3767
  * means that further work is stopped.
3649
3768
  */
3650
3769
  constructor (promise : Promise < T > , onAbort : shaka.extern.CreateSegmentIndexFunction ) ;
@@ -3956,6 +4075,7 @@ declare namespace shaka.util.Error {
3956
4075
  MEDIA_SOURCE_OPERATION_FAILED = 3014.0 ,
3957
4076
  MEDIA_SOURCE_OPERATION_THREW = 3015.0 ,
3958
4077
  MIN_HDCP_VERSION_NOT_MATCH = 6018.0 ,
4078
+ MISSING_EME_SUPPORT = 6020.0 ,
3959
4079
  MISSING_STORAGE_CELL = 9013.0 ,
3960
4080
  MISSING_TEXT_PLUGIN = 2014.0 ,
3961
4081
  MODIFY_OPERATION_NOT_SUPPORTED = 9016.0 ,
@@ -4088,7 +4208,7 @@ declare namespace shaka.util {
4088
4208
  /**
4089
4209
  * Conax initDataTransform configuration.
4090
4210
  */
4091
- static conaxInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : any ;
4211
+ static conaxInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ;
4092
4212
  /**
4093
4213
  * Using the default method, extract a content ID from the init data. This is
4094
4214
  * based on the FairPlay example documentation.
@@ -4101,7 +4221,7 @@ declare namespace shaka.util {
4101
4221
  /**
4102
4222
  * ExpressPlay initDataTransform configuration.
4103
4223
  */
4104
- static expressplayInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : any ;
4224
+ static expressplayInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ;
4105
4225
  /**
4106
4226
  * EZDRM FairPlay request.
4107
4227
  */
@@ -4109,7 +4229,7 @@ declare namespace shaka.util {
4109
4229
  /**
4110
4230
  * EZDRM initDataTransform configuration.
4111
4231
  */
4112
- static ezdrmInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : any ;
4232
+ static ezdrmInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ;
4113
4233
  /**
4114
4234
  * Transforms the init data buffer using the given data. The format is:
4115
4235
  * <pre>
@@ -4134,7 +4254,7 @@ declare namespace shaka.util {
4134
4254
  /**
4135
4255
  * Verimatrix initDataTransform configuration.
4136
4256
  */
4137
- static verimatrixInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : any ;
4257
+ static verimatrixInitDataTransform (initData : Uint8Array , initDataType : string , drmInfo : shaka.extern.DrmInfo | null ) : Uint8Array ;
4138
4258
  }
4139
4259
  }
4140
4260
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.ui.externs.js
@@ -4462,6 +4582,7 @@ declare namespace shaka.util {
4462
4582
  class PlayerConfiguration {
4463
4583
  private noStructuralTyping_shaka_util_PlayerConfiguration : any;
4464
4584
  static createDefault ( ) : shaka.extern.PlayerConfiguration ;
4585
+ static createDefaultForLL ( ) : object ;
4465
4586
  /**
4466
4587
  * Merges the given configuration changes into the given destination. This
4467
4588
  * uses the default Player configurations as the template.
@@ -4644,7 +4765,7 @@ declare namespace shaka.util {
4644
4765
  declare namespace shaka.extern {
4645
4766
  /**
4646
4767
  * A representation of an abortable operation. Note that these are not
4647
- * cancelable. Cancelation implies undoing what has been done so far,
4768
+ * cancelable. Cancellation implies undoing what has been done so far,
4648
4769
  * whereas aborting only means that further work is stopped.
4649
4770
  */
4650
4771
  interface IAbortableOperation < T > {
@@ -4657,7 +4778,7 @@ declare namespace shaka.extern {
4657
4778
  promise : Promise < T > ;
4658
4779
  /**
4659
4780
  * Can be called by anyone holding this object to abort the underlying
4660
- * operation. This is not cancelation, and will not necessarily result in
4781
+ * operation. This is not cancellation, and will not necessarily result in
4661
4782
  * any work being undone. abort() should return a Promise which is resolved
4662
4783
  * when the underlying operation has been aborted. The returned Promise
4663
4784
  * should never be rejected.
@@ -4785,7 +4906,11 @@ declare namespace shaka.extern {
4785
4906
  }
4786
4907
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js
4787
4908
  declare namespace shaka.extern {
4788
- type AdInterstitial = { canJump : boolean , endTime : number | null , id : string | null , isSkippable : boolean , mimeType : string | null , once : boolean , playoutLimit : number | null , post : boolean , pre : boolean , resumeOffset : number | null , skipFor : number | null , skipOffset : number | null , startTime : number , timelineRange : boolean , uri : string } ;
4909
+ type AdInterstitial = { canJump : boolean , endTime : number | null , groupId : string | null , id : string | null , isSkippable : boolean , loop : boolean , mimeType : string | null , once : boolean , overlay : shaka.extern.AdInterstitialOverlay | null , playoutLimit : number | null , post : boolean , pre : boolean , resumeOffset : number | null , skipFor : number | null , skipOffset : number | null , startTime : number , timelineRange : boolean , uri : string } ;
4910
+ }
4911
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js
4912
+ declare namespace shaka.extern {
4913
+ type AdInterstitialOverlay = { size : { x : number , y : number } , topLeft : { x : number , y : number } , viewport : { x : number , y : number } } ;
4789
4914
  }
4790
4915
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/ads.js
4791
4916
  declare namespace shaka.extern {
@@ -4852,6 +4977,7 @@ declare namespace shaka.extern {
4852
4977
  */
4853
4978
  configure (config : shaka.extern.AdsConfiguration ) : any ;
4854
4979
  getCuePoints ( ) : shaka.extern.AdCuePoint [] ;
4980
+ getInterstitialPlayer ( ) : shaka.Player | null ;
4855
4981
  getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ;
4856
4982
  /**
4857
4983
  * Get statistics for the current playback session. If the player is not
@@ -5012,7 +5138,7 @@ declare namespace shaka.extern {
5012
5138
  }
5013
5139
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5014
5140
  declare namespace shaka.extern {
5015
- 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 [] } ;
5141
+ type Manifest = { gapCount : number , ignoreManifestTimestampsInSegmentsMode : boolean , imageStreams : shaka.extern.Stream [] , isLowLatency : boolean , 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 [] } ;
5016
5142
  }
5017
5143
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
5018
5144
  declare namespace shaka.extern {
@@ -5156,7 +5282,7 @@ declare namespace shaka.extern.ManifestParser {
5156
5282
  }
5157
5283
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js
5158
5284
  declare namespace shaka.extern.ManifestParser {
5159
- 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 } ;
5285
+ type PlayerInterface = { addFont : (a : string , b : string ) => any , disableStream : (a : shaka.extern.Stream ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , getBandwidthEstimate : ( ) => number , 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 } ;
5160
5286
  }
5161
5287
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/mp4_parser.js
5162
5288
  declare namespace shaka.extern {
@@ -5193,7 +5319,7 @@ declare namespace shaka.extern {
5193
5319
  }
5194
5320
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
5195
5321
  declare namespace shaka.extern {
5196
- type Response = { data : ArrayBuffer | ArrayBufferView , fromCache ? : boolean , headers : { [ key: string ]: string } , originalUri : string , status ? : number , timeMs ? : number , uri : string } ;
5322
+ type Response = { data : ArrayBuffer | ArrayBufferView , fromCache ? : boolean , headers : { [ key: string ]: string } , originalRequest : shaka.extern.Request , originalUri : string , status ? : number , timeMs ? : number , uri : string } ;
5197
5323
  }
5198
5324
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/net.js
5199
5325
  declare namespace shaka.extern {
@@ -5447,7 +5573,7 @@ declare namespace shaka.extern {
5447
5573
  }
5448
5574
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5449
5575
  declare namespace shaka.extern {
5450
- type AdvancedDrmConfiguration = { audioRobustness : string , distinctiveIdentifierRequired : boolean , headers : { [ key: string ]: string } , individualizationServer : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string } ;
5576
+ type AdvancedDrmConfiguration = { audioRobustness : string [] | null , distinctiveIdentifierRequired : boolean , headers : { [ key: string ]: string } , individualizationServer : string , persistentStateRequired : boolean , serverCertificate : Uint8Array | null , serverCertificateUri : string , sessionType : string , videoRobustness : string [] | null } ;
5451
5577
  }
5452
5578
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5453
5579
  declare namespace shaka.extern {
@@ -5463,7 +5589,7 @@ declare namespace shaka.extern {
5463
5589
  }
5464
5590
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5465
5591
  declare namespace shaka.extern {
5466
- type CmcdConfiguration = { contentId : string , enabled : boolean , includeKeys : string [] , rtpSafetyFactor : number , sessionId : string , useHeaders : boolean } ;
5592
+ type CmcdConfiguration = { contentId : string , enabled : boolean , includeKeys : string [] , rtpSafetyFactor : number , sessionId : string , useHeaders : boolean , version : number } ;
5467
5593
  }
5468
5594
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5469
5595
  declare namespace shaka.extern {
@@ -5471,11 +5597,11 @@ declare namespace shaka.extern {
5471
5597
  }
5472
5598
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5473
5599
  declare namespace shaka.extern {
5474
- type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : 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 } ;
5600
+ type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , enableFastSwitching : boolean , ignoreDrmInfo : boolean , ignoreEmptyAdaptationSet : boolean , ignoreMaxSegmentDuration : boolean , ignoreMinBufferTime : boolean , ignoreSuggestedPresentationDelay : boolean , ignoreSupplementalCodecs : 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 } ;
5475
5601
  }
5476
5602
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5477
5603
  declare namespace shaka.extern {
5478
- type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , delayLicenseRequestUntilPlayed : boolean , ignoreDuplicateInitData : boolean , initDataTransform ? : shaka.extern.InitDataTransform , keySystemsMapping : { [ key: string ]: string } , logLicenseExchange : boolean , minHdcpVersion : string , parseInbandPsshEnabled : boolean , persistentSessionOnlinePlayback : boolean , persistentSessionsMetadata : shaka.extern.PersistentSessionMetadata [] , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
5604
+ type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , defaultAudioRobustnessForWidevine : string , defaultVideoRobustnessForWidevine : string , delayLicenseRequestUntilPlayed : boolean , ignoreDuplicateInitData : boolean , initDataTransform ? : shaka.extern.InitDataTransform , keySystemsMapping : { [ key: string ]: string } , logLicenseExchange : boolean , minHdcpVersion : string , parseInbandPsshEnabled : boolean , persistentSessionOnlinePlayback : boolean , persistentSessionsMetadata : shaka.extern.PersistentSessionMetadata [] , preferredKeySystems : string [] , retryParameters : shaka.extern.RetryParameters , servers : { [ key: string ]: string } , updateExpirationTime : number } ;
5479
5605
  }
5480
5606
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5481
5607
  declare namespace shaka.extern {
@@ -5483,7 +5609,7 @@ declare namespace shaka.extern {
5483
5609
  }
5484
5610
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5485
5611
  declare namespace shaka.extern {
5486
- type DrmSupportType = { audioRobustnessLevels : string [] , encryptionSchemes : ( string | null ) [] , persistentState : boolean , videoRobustnessLevels : string [] } ;
5612
+ type DrmSupportType = { audioRobustnessLevels : string [] , encryptionSchemes : ( string | null ) [] , minHdcpVersions : string [] , persistentState : boolean , videoRobustnessLevels : string [] } ;
5487
5613
  }
5488
5614
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5489
5615
  declare namespace shaka.extern {
@@ -5503,7 +5629,7 @@ declare namespace shaka.extern {
5503
5629
  }
5504
5630
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5505
5631
  declare namespace shaka.extern {
5506
- 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 , updatePeriod : number } ;
5632
+ type HlsManifestConfiguration = { allowLowLatencyByteRangeOptimization : boolean , defaultAudioCodec : string , defaultVideoCodec : string , disableClosedCaptionsDetection : boolean , disableCodecGuessing : boolean , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestProgramDateTimeForTypes : string [] , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreSupplementalCodecs : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , updatePeriod : number } ;
5507
5633
  }
5508
5634
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5509
5635
  declare namespace shaka.extern {
@@ -5567,7 +5693,7 @@ declare namespace shaka.extern {
5567
5693
  }
5568
5694
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5569
5695
  declare namespace shaka.extern {
5570
- 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 , ignoreHardwareResolution : boolean , 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 [] , preferredTextFormats : 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 } ;
5696
+ type PlayerConfiguration = { abr : shaka.extern.AbrConfiguration , abrFactory : shaka.extern.AbrManager.Factory , adaptationSetCriteriaFactory : shaka.media.AdaptationSetCriteria.Factory , ads : shaka.extern.AdsConfiguration , autoShowText : shaka.config.AutoShowText , cmcd : shaka.extern.CmcdConfiguration , cmsd : shaka.extern.CmsdConfiguration , drm : shaka.extern.DrmConfiguration , ignoreHardwareResolution : boolean , 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 [] , preferredTextFormats : 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 } ;
5571
5697
  }
5572
5698
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5573
5699
  declare namespace shaka.extern {
@@ -5587,7 +5713,7 @@ declare namespace shaka.extern {
5587
5713
  }
5588
5714
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5589
5715
  declare namespace shaka.extern {
5590
- type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , clearDecodingCache : boolean , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dontChooseCodecs : boolean , durationBackoff : number , evictionGoal : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTP : boolean , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , gapPadding : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , infiniteLiveStreamDuration : boolean , liveSync : shaka.extern.LiveSyncConfiguration , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minBytesForProgressEvents : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , preloadNextUrlWindow : number , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekEndOffset : number , safeSeekOffset : number , segmentPrefetchLimit : number , shouldFixTimestampOffset : boolean , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
5716
+ type StreamingConfiguration = { allowMediaSourceRecoveries : boolean , alwaysStreamText : boolean , bufferBehind : number , bufferingGoal : number , clearDecodingCache : boolean , disableAudioPrefetch : boolean , disableTextPrefetch : boolean , disableVideoPrefetch : boolean , dontChooseCodecs : boolean , durationBackoff : number , evictionGoal : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTP : boolean , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , gapPadding : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , liveSync : shaka.extern.LiveSyncConfiguration , loadTimeout : number , lowLatencyMode : boolean , maxDisabledTime : number , minBytesForProgressEvents : number , minTimeBetweenRecoveries : number , observeQualityChanges : boolean , preferNativeDash : boolean , preferNativeHls : boolean , prefetchAudioLanguages : string [] , preloadNextUrlWindow : number , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekEndOffset : number , safeSeekOffset : number , segmentPrefetchLimit : number , shouldFixTimestampOffset : boolean , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsForFairPlay : boolean , vodDynamicPlaybackRate : boolean , vodDynamicPlaybackRateBufferRatio : number , vodDynamicPlaybackRateLowBufferRate : number } ;
5591
5717
  }
5592
5718
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
5593
5719
  declare namespace shaka.extern {
@@ -5638,6 +5764,10 @@ declare namespace shaka.extern {
5638
5764
  */
5639
5765
  configure (config : shaka.extern.TextDisplayerConfiguration ) : any ;
5640
5766
  destroy ( ) : Promise < any > ;
5767
+ /**
5768
+ * Enable the current text displayer.
5769
+ */
5770
+ enableTextDisplayer ( ) : any ;
5641
5771
  /**
5642
5772
  * Returns true if text is currently visible.
5643
5773
  */
@@ -5823,7 +5953,7 @@ container : HTMLElement ;
5823
5953
  declare namespace shaka.extern {
5824
5954
  /**
5825
5955
  * Interface for SeekBars. SeekBars should inherit from the concrete base
5826
- * class shaka.ui.Element. If you do not need to totaly rebuild the
5956
+ * class shaka.ui.Element. If you do not need to totally rebuild the
5827
5957
  * SeekBar, you should consider using shaka.ui.RangeElement or
5828
5958
  * shaka.ui.SeekBar as your base class.
5829
5959
  */
@@ -5867,7 +5997,7 @@ nameSpan : HTMLElement ;
5867
5997
  }
5868
5998
  // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js
5869
5999
  declare namespace shaka.extern {
5870
- type UIConfiguration = { adStatisticsList : string [] , addBigPlayButton : boolean , addSeekBar : boolean , castAndroidReceiverCompatible : boolean , castReceiverAppId : string , clearBufferOnQualityChange : boolean , contextMenuElements : string [] , controlPanelElements : string [] , customContextMenu : boolean , defaultVrProjectionMode : string , displayInVrMode : boolean , doubleClickForFullscreen : boolean , enableFullscreenOnRotation : boolean , enableKeyboardPlaybackControls : boolean , enableTooltips : boolean , fadeDelay : number , fastForwardRates : number [] , forceLandscapeOnFullscreen : boolean , fullScreenElement : HTMLElement | null , keyboardLargeSeekDistance : number , keyboardSeekDistance : number , overflowMenuButtons : string [] , playbackRates : number [] , preferDocumentPictureInPicture : boolean , preferVideoFullScreenInVisionOS : boolean , refreshTickInSeconds : number , rewindRates : number [] , seekBarColors : shaka.extern.UISeekBarColors , seekOnTaps : boolean , setupMediaSession : boolean , showAudioChannelCountVariants : boolean , showUnbufferedStart : boolean , singleClickForPlayAndPause : boolean , statisticsList : string [] , tapSeekDistance : number , textTrackLabelFormat : shaka.ui.Overlay.TrackLabelFormat , trackLabelFormat : shaka.ui.Overlay.TrackLabelFormat , volumeBarColors : shaka.extern.UIVolumeBarColors } ;
6000
+ type UIConfiguration = { adStatisticsList : string [] , addBigPlayButton : boolean , addSeekBar : boolean , castAndroidReceiverCompatible : boolean , castReceiverAppId : string , clearBufferOnQualityChange : boolean , contextMenuElements : string [] , controlPanelElements : string [] , customContextMenu : boolean , defaultVrProjectionMode : string , displayInVrMode : boolean , doubleClickForFullscreen : boolean , enableFullscreenOnRotation : boolean , enableKeyboardPlaybackControls : boolean , enableTooltips : boolean , fadeDelay : number , fastForwardRates : number [] , forceLandscapeOnFullscreen : boolean , fullScreenElement : HTMLElement | null , keyboardLargeSeekDistance : number , keyboardSeekDistance : number , overflowMenuButtons : string [] , playbackRates : number [] , preferDocumentPictureInPicture : boolean , preferVideoFullScreenInVisionOS : boolean , refreshTickInSeconds : number , rewindRates : number [] , seekBarColors : shaka.extern.UISeekBarColors , seekOnTaps : boolean , setupMediaSession : boolean , showAudioChannelCountVariants : boolean , showAudioCodec : boolean , showUnbufferedStart : boolean , showVideoCodec : boolean , singleClickForPlayAndPause : boolean , statisticsList : string [] , tapSeekDistance : number , textTrackLabelFormat : shaka.ui.Overlay.TrackLabelFormat , trackLabelFormat : shaka.ui.Overlay.TrackLabelFormat , volumeBarColors : shaka.extern.UIVolumeBarColors } ;
5871
6001
  }
5872
6002
  // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/ui.js
5873
6003
  declare namespace shaka.extern {
@@ -5877,3 +6007,7 @@ declare namespace shaka.extern {
5877
6007
  declare namespace shaka.extern {
5878
6008
  type UIVolumeBarColors = { base : string , level : string } ;
5879
6009
  }
6010
+ // Generated from /home/runner/work/shaka-player/shaka-player/ui/externs/watermark.js
6011
+ declare namespace shaka.ui.Watermark {
6012
+ type Options = { alpha : number , color : string , displayDuration : number , interval : number , position : string , size : number , skip : number , text : string , transitionDuration : number , type : string } ;
6013
+ }