shaka-player 4.4.3 → 4.6.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 (307) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
  2. package/.github/workflows/release-please.yaml +2 -27
  3. package/AUTHORS +2 -0
  4. package/CHANGELOG.md +156 -39
  5. package/CODE_OF_CONDUCT.md +1 -1
  6. package/CONTRIBUTORS +2 -0
  7. package/README.md +54 -42
  8. package/demo/asset_card.js +18 -21
  9. package/demo/cast_receiver/index.html +0 -1
  10. package/demo/close_button.js +0 -3
  11. package/demo/common/asset.js +33 -22
  12. package/demo/common/assets.js +249 -60
  13. package/demo/config.js +219 -253
  14. package/demo/custom.js +88 -133
  15. package/demo/front.js +7 -10
  16. package/demo/index.html +19 -22
  17. package/demo/input.js +6 -11
  18. package/demo/input_container.js +8 -9
  19. package/demo/main.js +62 -126
  20. package/demo/search.js +29 -34
  21. package/demo/service_worker.js +0 -3
  22. package/demo/tooltip.js +3 -5
  23. package/demo/visualizer.js +3 -5
  24. package/demo/visualizer_button.js +1 -20
  25. package/dist/controls.css +1 -1
  26. package/dist/controls.css.map +1 -1
  27. package/dist/demo.compiled.debug.js +211 -228
  28. package/dist/demo.compiled.debug.map +4 -4
  29. package/dist/demo.compiled.js +211 -228
  30. package/dist/demo.compiled.map +4 -4
  31. package/dist/deps.js +42 -37
  32. package/dist/locales.js +34 -30
  33. package/dist/receiver.compiled.debug.js +64 -77
  34. package/dist/receiver.compiled.debug.map +4 -4
  35. package/dist/receiver.compiled.js +64 -77
  36. package/dist/receiver.compiled.map +4 -4
  37. package/dist/shaka-player.compiled.d.ts +343 -151
  38. package/dist/shaka-player.compiled.debug.d.ts +343 -151
  39. package/dist/shaka-player.compiled.debug.externs.js +356 -117
  40. package/dist/shaka-player.compiled.debug.js +952 -811
  41. package/dist/shaka-player.compiled.debug.map +4 -4
  42. package/dist/shaka-player.compiled.externs.js +356 -117
  43. package/dist/shaka-player.compiled.js +1165 -1078
  44. package/dist/shaka-player.compiled.map +4 -4
  45. package/dist/shaka-player.ui.d.ts +359 -153
  46. package/dist/shaka-player.ui.debug.d.ts +359 -153
  47. package/dist/shaka-player.ui.debug.externs.js +382 -117
  48. package/dist/shaka-player.ui.debug.js +1084 -918
  49. package/dist/shaka-player.ui.debug.map +4 -4
  50. package/dist/shaka-player.ui.externs.js +382 -117
  51. package/dist/shaka-player.ui.js +1377 -1274
  52. package/dist/shaka-player.ui.map +4 -4
  53. package/docs/design/lcevc-integration.md +14 -14
  54. package/docs/tutorials/ad_monetization.md +54 -0
  55. package/docs/tutorials/basic-usage.md +2 -1
  56. package/docs/tutorials/errors.md +2 -1
  57. package/docs/tutorials/faq.md +27 -55
  58. package/docs/tutorials/index.json +2 -1
  59. package/docs/tutorials/lcevc.md +118 -0
  60. package/docs/tutorials/offline.md +10 -8
  61. package/docs/tutorials/plugins.md +5 -0
  62. package/docs/tutorials/ui-customization.md +17 -0
  63. package/docs/tutorials/ui.md +2 -1
  64. package/docs/tutorials/upgrade.md +3 -0
  65. package/externs/css_style_declaration.js +19 -0
  66. package/externs/lcevc.js +37 -13
  67. package/externs/managedmediasource.js +24 -0
  68. package/externs/media_remote.js +68 -0
  69. package/externs/mediatailor.js +193 -0
  70. package/externs/pictureinpicture.js +11 -0
  71. package/externs/shaka/abr_manager.js +6 -2
  72. package/externs/shaka/ads.js +27 -0
  73. package/externs/shaka/cea.js +7 -0
  74. package/externs/shaka/codecs.js +5 -3
  75. package/externs/shaka/manifest.js +31 -10
  76. package/externs/shaka/manifest_parser.js +24 -1
  77. package/externs/shaka/net.js +2 -2
  78. package/externs/shaka/offline.js +13 -2
  79. package/externs/shaka/player.js +65 -8
  80. package/externs/shaka/text.js +3 -1
  81. package/externs/shaka/transmuxer.js +1 -1
  82. package/karma.conf.js +7 -3
  83. package/lib/abr/simple_abr_manager.js +66 -9
  84. package/lib/ads/ad_manager.js +104 -50
  85. package/lib/ads/media_tailor_ad.js +297 -0
  86. package/lib/ads/media_tailor_ad_manager.js +839 -0
  87. package/lib/cast/cast_receiver.js +1 -1
  88. package/lib/cea/cea_decoder.js +28 -0
  89. package/lib/cea/dummy_caption_decoder.js +5 -0
  90. package/lib/cea/ts_cea_parser.js +15 -2
  91. package/lib/config/codec_switching_strategy.js +24 -0
  92. package/lib/dash/content_protection.js +120 -2
  93. package/lib/dash/dash_parser.js +322 -93
  94. package/lib/dash/mpd_utils.js +62 -37
  95. package/lib/dash/segment_base.js +17 -10
  96. package/lib/dash/segment_list.js +18 -9
  97. package/lib/dash/segment_template.js +122 -107
  98. package/lib/dependencies/all.js +8 -7
  99. package/lib/hls/hls_classes.js +28 -43
  100. package/lib/hls/hls_parser.js +798 -658
  101. package/lib/hls/hls_utils.js +64 -5
  102. package/lib/hls/manifest_text_parser.js +7 -11
  103. package/lib/lcevc/lcevc_dec.js +220 -0
  104. package/lib/media/adaptation_set.js +32 -14
  105. package/lib/media/adaptation_set_criteria.js +86 -16
  106. package/lib/media/closed_caption_parser.js +13 -0
  107. package/lib/media/content_workarounds.js +6 -0
  108. package/lib/media/drm_engine.js +8 -13
  109. package/lib/media/manifest_parser.js +8 -113
  110. package/lib/media/media_source_capabilities.js +10 -3
  111. package/lib/media/media_source_engine.js +286 -44
  112. package/lib/media/play_rate_controller.js +8 -38
  113. package/lib/media/presentation_timeline.js +7 -1
  114. package/lib/media/quality_observer.js +1 -1
  115. package/lib/media/segment_index.js +6 -6
  116. package/lib/media/segment_prefetch.js +92 -24
  117. package/lib/media/segment_reference.js +73 -7
  118. package/lib/media/segment_utils.js +343 -0
  119. package/lib/media/stall_detector.js +0 -3
  120. package/lib/media/streaming_engine.js +73 -38
  121. package/lib/mss/mss_parser.js +19 -2
  122. package/lib/net/networking_engine.js +67 -12
  123. package/lib/net/networking_utils.js +95 -0
  124. package/lib/offline/indexeddb/v1_storage_cell.js +3 -0
  125. package/lib/offline/indexeddb/v2_storage_cell.js +3 -0
  126. package/lib/offline/manifest_converter.js +3 -0
  127. package/lib/offline/offline_manifest_parser.js +10 -0
  128. package/lib/offline/storage.js +14 -7
  129. package/lib/player.js +1098 -1537
  130. package/lib/polyfill/mediasource.js +22 -1
  131. package/lib/text/cue.js +15 -0
  132. package/lib/text/mp4_ttml_parser.js +2 -2
  133. package/lib/text/srt_text_parser.js +2 -2
  134. package/lib/text/stub_text_displayer.js +51 -0
  135. package/lib/text/text_engine.js +3 -2
  136. package/lib/text/ttml_text_parser.js +45 -5
  137. package/lib/text/ui_text_displayer.js +8 -0
  138. package/lib/text/vtt_text_parser.js +40 -22
  139. package/lib/transmuxer/aac_transmuxer.js +1 -1
  140. package/lib/transmuxer/ac3_transmuxer.js +1 -1
  141. package/lib/transmuxer/ec3_transmuxer.js +1 -1
  142. package/lib/transmuxer/h264.js +5 -4
  143. package/lib/transmuxer/h265.js +863 -0
  144. package/lib/transmuxer/mp3_transmuxer.js +1 -1
  145. package/lib/transmuxer/mpeg_ts_transmuxer.js +4 -3
  146. package/lib/transmuxer/mss_transmuxer.js +1 -1
  147. package/lib/transmuxer/ts_transmuxer.js +187 -22
  148. package/lib/util/buffer_utils.js +26 -4
  149. package/lib/util/content_steering_manager.js +358 -0
  150. package/lib/util/error.js +30 -15
  151. package/lib/util/exp_golomb.js +30 -2
  152. package/lib/util/fairplay_utils.js +1 -1
  153. package/lib/util/fake_event.js +8 -1
  154. package/lib/util/id3_utils.js +50 -1
  155. package/lib/util/manifest_parser_utils.js +12 -8
  156. package/lib/util/mp4_generator.js +6 -8
  157. package/lib/util/mutex.js +59 -0
  158. package/lib/util/object_utils.js +1 -1
  159. package/lib/util/periods.js +156 -179
  160. package/lib/util/platform.js +44 -3
  161. package/lib/util/player_configuration.js +43 -6
  162. package/lib/util/state_history.js +6 -2
  163. package/lib/util/stream_utils.js +206 -283
  164. package/lib/util/ts_parser.js +335 -98
  165. package/lib/util/uint8array_utils.js +5 -1
  166. package/lib/util/xml_utils.js +5 -0
  167. package/maintained-branches.md +3 -2
  168. package/package.json +4 -6
  169. package/roadmap.md +25 -5
  170. package/shaka-player.uncompiled.js +2 -2
  171. package/support.html +0 -1
  172. package/test/abr/simple_abr_manager_unit.js +33 -33
  173. package/test/ads/ad_manager_unit.js +3 -2
  174. package/test/cast/cast_receiver_integration.js +50 -4
  175. package/test/cast/cast_utils_unit.js +2 -0
  176. package/test/cea/cea_decoder_unit.js +7 -0
  177. package/test/codec_switching/codec_switching_integration.js +182 -0
  178. package/test/dash/dash_parser_content_protection_unit.js +2 -0
  179. package/test/dash/dash_parser_integration.js +74 -0
  180. package/test/dash/dash_parser_live_unit.js +2 -19
  181. package/test/dash/dash_parser_manifest_unit.js +536 -2
  182. package/test/dash/dash_parser_segment_base_unit.js +2 -0
  183. package/test/dash/dash_parser_segment_list_unit.js +2 -0
  184. package/test/dash/dash_parser_segment_template_unit.js +2 -0
  185. package/test/dash/mpd_utils_unit.js +61 -30
  186. package/test/demo/demo_unit.js +0 -16
  187. package/test/hls/hls_live_unit.js +14 -3
  188. package/test/hls/hls_parser_unit.js +385 -33
  189. package/test/hls/manifest_text_parser_unit.js +32 -99
  190. package/test/media/adaptation_set_criteria_unit.js +284 -15
  191. package/test/media/adaptation_set_unit.js +2 -0
  192. package/test/media/content_workarounds_unit.js +1 -1
  193. package/test/media/drm_engine_unit.js +3 -3
  194. package/test/media/media_source_engine_unit.js +166 -2
  195. package/test/media/play_rate_controller_unit.js +0 -48
  196. package/test/media/segment_index_unit.js +5 -4
  197. package/test/media/segment_prefetch_unit.js +1 -1
  198. package/test/media/streaming_engine_unit.js +17 -17
  199. package/test/mss/mss_parser_unit.js +2 -0
  200. package/test/mss/mss_player_integration.js +3 -2
  201. package/test/net/networking_engine_unit.js +3 -3
  202. package/test/{media/manifest_parser_unit.js → net/networking_utils_unit.js} +2 -2
  203. package/test/offline/manifest_convert_unit.js +14 -0
  204. package/test/offline/offline_integration.js +2 -1
  205. package/test/offline/storage_integration.js +22 -13
  206. package/test/player_external.js +4 -2
  207. package/test/player_integration.js +15 -4
  208. package/test/player_load_graph_integration.js +47 -151
  209. package/test/player_src_equals_external.js +1 -0
  210. package/test/player_src_equals_integration.js +71 -4
  211. package/test/player_unit.js +182 -158
  212. package/test/test/assets/dash-aes-128/Fragments(video=0,format=mpd-time-csf) +0 -0
  213. package/test/test/assets/dash-aes-128/Fragments(video=20000000,format=mpd-time-csf) +0 -0
  214. package/test/test/assets/dash-aes-128/Fragments(video=40000000,format=mpd-time-csf) +0 -0
  215. package/test/test/assets/dash-aes-128/Fragments(video=60000000,format=mpd-time-csf) +0 -0
  216. package/test/test/assets/dash-aes-128/Fragments(video=i,format=mpd-time-csf) +0 -0
  217. package/test/test/assets/dash-aes-128/dash.mpd +18 -0
  218. package/test/test/assets/dash-aes-128/license +1 -0
  219. package/test/test/assets/dash-multi-codec/audio_en_2c_128k_aac.mp4 +0 -0
  220. package/test/test/assets/dash-multi-codec/audio_es_2c_64k_opus.webm +0 -0
  221. package/test/test/assets/dash-multi-codec/dash.mpd +32 -0
  222. package/test/test/assets/dash-multi-codec/video_144p_108k_h264.mp4 +0 -0
  223. package/test/test/assets/hls-ts-h265/0.ts +0 -0
  224. package/test/test/assets/hls-ts-h265/hevc.m3u8 +6 -0
  225. package/test/test/assets/hls-ts-h265/index.m3u8 +7 -0
  226. package/test/test/assets/hls-ts-muxed-aac-h265/0.ts +0 -0
  227. package/test/test/assets/hls-ts-muxed-aac-h265/1.ts +0 -0
  228. package/test/test/assets/hls-ts-muxed-aac-h265/media.m3u8 +9 -0
  229. package/test/test/assets/hls-ts-muxed-ac3-h264/media.m3u8 +24 -0
  230. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00000.ts +0 -0
  231. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00001.ts +0 -0
  232. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00002.ts +0 -0
  233. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00003.ts +0 -0
  234. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00004.ts +0 -0
  235. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00005.ts +0 -0
  236. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0000.ts +0 -0
  237. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0001.ts +0 -0
  238. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0002.ts +0 -0
  239. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0003.ts +0 -0
  240. package/test/test/assets/hls-ts-muxed-ec3-h264/prog_index.m3u8 +14 -0
  241. package/test/test/assets/hls-ts-muxed-mp3-h264/index.m3u8 +23 -0
  242. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-1-v1-a1.ts +0 -0
  243. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-2-v1-a1.ts +0 -0
  244. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-3-v1-a1.ts +0 -0
  245. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-4-v1-a1.ts +0 -0
  246. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-5-v1-a1.ts +0 -0
  247. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-6-v1-a1.ts +0 -0
  248. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-7-v1-a1.ts +0 -0
  249. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-8-v1-a1.ts +0 -0
  250. package/test/test/util/dash_parser_util.js +4 -0
  251. package/test/test/util/fake_ad_manager.js +20 -0
  252. package/test/test/util/fake_media_source_engine.js +13 -2
  253. package/test/test/util/fake_networking_engine.js +9 -1
  254. package/test/test/util/fake_segment_prefetch.js +3 -0
  255. package/test/test/util/manifest_generator.js +11 -3
  256. package/test/test/util/manifest_parser_util.js +14 -2
  257. package/test/test/util/mss_parser_util.js +4 -0
  258. package/test/test/util/offline_utils.js +2 -0
  259. package/test/test/util/simple_fakes.js +2 -2
  260. package/test/test/util/streaming_engine_util.js +10 -4
  261. package/test/test/util/test_scheme.js +6 -0
  262. package/test/test/util/ui_utils.js +4 -3
  263. package/test/text/mp4_ttml_parser_unit.js +4 -4
  264. package/test/text/srt_text_parser_unit.js +1 -1
  265. package/test/text/text_displayer_layout_unit.js +1 -1
  266. package/test/text/text_engine_unit.js +6 -0
  267. package/test/text/ttml_text_parser_unit.js +85 -2
  268. package/test/text/vtt_text_parser_unit.js +103 -31
  269. package/test/transmuxer/transmuxer_engine_integration.js +9 -0
  270. package/test/transmuxer/transmuxer_integration.js +150 -3
  271. package/test/ui/ad_ui_unit.js +2 -2
  272. package/test/ui/ui_customization_unit.js +17 -16
  273. package/test/ui/ui_integration.js +30 -20
  274. package/test/ui/ui_unit.js +28 -29
  275. package/test/util/buffer_utils_unit.js +1 -1
  276. package/test/util/content_steering_manager_unit.js +427 -0
  277. package/test/util/id3_utils_unit.js +52 -0
  278. package/test/util/stream_utils_unit.js +207 -169
  279. package/test/util/ts_parser_unit.js +3 -3
  280. package/third_party/closure-uri/uri.js +13 -1
  281. package/ui/audio_language_selection.js +9 -2
  282. package/ui/controls.js +125 -0
  283. package/ui/externs/ui.js +24 -2
  284. package/ui/language_utils.js +43 -8
  285. package/ui/less/range_elements.less +33 -0
  286. package/ui/locales/en.json +1 -0
  287. package/ui/locales/es-419.json +1 -0
  288. package/ui/locales/es.json +1 -0
  289. package/ui/locales/source.json +4 -0
  290. package/ui/localization.js +10 -0
  291. package/ui/pip_button.js +22 -120
  292. package/ui/remote_button.js +203 -0
  293. package/ui/resolution_selection.js +47 -10
  294. package/ui/seek_bar.js +296 -3
  295. package/ui/text_selection.js +2 -1
  296. package/ui/ui.js +11 -4
  297. package/demo/common/message_ids.js +0 -309
  298. package/demo/locales/en.json +0 -288
  299. package/demo/locales/source.json +0 -1146
  300. package/externs/mux.js +0 -69
  301. package/lib/lcevc/lcevc_dil.js +0 -152
  302. package/lib/routing/node.js +0 -23
  303. package/lib/routing/payload.js +0 -43
  304. package/lib/routing/walker.js +0 -587
  305. package/lib/transmuxer/muxjs_transmuxer.js +0 -242
  306. package/test/routing/walker_unit.js +0 -504
  307. package/test/transmuxer/muxjs_transmuxer_integration.js +0 -177
@@ -34,16 +34,9 @@ declare namespace shaka {
34
34
  */
35
35
  addThumbnailsTrack (uri : string , mimeType ? : string ) : Promise < shaka.extern.Track > ;
36
36
  /**
37
- * Tell the player to use <code>mediaElement</code> for all <code>load</code>
38
- * requests until <code>detach</code> or <code>destroy</code> are called.
39
- * <p>
40
- * Calling <code>attach</code> with <code>initializedMediaSource=true</code>
41
- * will tell the player to take the initial load step and initialize media
42
- * source.
43
- * <p>
44
- * Calls to <code>attach</code> will interrupt any in-progress calls to
45
- * <code>load</code> but cannot interrupt calls to <code>attach</code>,
46
- * <code>detach</code>, or <code>unload</code>.
37
+ * Attaches the player to a media element.
38
+ * If the player was already attached to a media element, first detaches from
39
+ * that media element.
47
40
  */
48
41
  attach (mediaElement : HTMLMediaElement , initializeMediaSource ? : boolean ) : Promise < any > ;
49
42
  /**
@@ -81,21 +74,11 @@ declare namespace shaka {
81
74
  */
82
75
  destroy ( ) : Promise < any > ;
83
76
  /**
84
- * Tell the player to stop using its current media element. If the player is:
85
- * <ul>
86
- * <li>detached, this will do nothing,
87
- * <li>attached, this will release the media element,
88
- * <li>loading, this will abort loading, unload, and release the media
89
- * element,
90
- * <li>playing content, this will stop playback, unload, and release the
91
- * media element.
92
- * </ul>
93
- * <p>
94
- * Calls to <code>detach</code> will interrupt any in-progress calls to
95
- * <code>load</code> but cannot interrupt calls to <code>attach</code>,
96
- * <code>detach</code>, or <code>unload</code>.
77
+ * Detach the player from the current media element. Leaves the player in a
78
+ * state where it cannot play media, until it has been attached to something
79
+ * else.
97
80
  */
98
- detach ( ) : Promise < any > ;
81
+ detach (keepAdManager ? : boolean ) : Promise < any > ;
99
82
  /**
100
83
  * Get the drm info used to initialize EME. If EME is not being used, this
101
84
  * will return <code>null</code>. If the player is idle or has not initialized
@@ -111,6 +94,11 @@ declare namespace shaka {
111
94
  * Ad Insertion functionality.
112
95
  */
113
96
  getAdManager ( ) : shaka.extern.IAdManager | null ;
97
+ /**
98
+ * Returns Thumbnail objects for each thumbnail for a given image track ID.
99
+ * If the player has not loaded content, this will return a null.
100
+ */
101
+ getAllThumbnails (trackId : number ) : Promise < shaka.extern.Thumbnail [] | null > ;
114
102
  /**
115
103
  * Get the uri to the asset that the player has loaded. If the player has not
116
104
  * loaded content, this will return <code>null</code>.
@@ -290,16 +278,15 @@ declare namespace shaka {
290
278
  */
291
279
  keySystem ( ) : string ;
292
280
  /**
293
- * Tell the player to load the content at <code>assetUri</code> and start
294
- * playback at <code>startTime</code>. Before calling <code>load</code>,
295
- * a call to <code>attach</code> must have succeeded.
296
- * <p>
297
- * Calls to <code>load</code> will interrupt any in-progress calls to
298
- * <code>load</code> but cannot interrupt calls to <code>attach</code>,
299
- * <code>detach</code>, or <code>unload</code>.
281
+ * Loads a new stream.
282
+ * If another stream was already playing, first unloads that stream.
300
283
  * @param startTime When <code>startTime</code> is <code>null</code> or <code>undefined</code>, playback will start at the default start time (0 for VOD and liveEdge for LIVE).
301
284
  */
302
- load (assetUri : string , startTime ? : number | null , mimeType ? : string ) : Promise < any > ;
285
+ load (assetUri : string , startTime ? : number | null , mimeType ? : string | null ) : Promise < any > ;
286
+ /**
287
+ * Releases all of the mutexes of the player. Meant for use by the tests.
288
+ */
289
+ releaseAllMutexes ( ) : any ;
303
290
  /**
304
291
  * Reset configuration to default.
305
292
  */
@@ -318,7 +305,8 @@ declare namespace shaka {
318
305
  retryStreaming (retryDelaySeconds ? : number ) : boolean ;
319
306
  /**
320
307
  * Get the range of time (in seconds) that seeking is allowed. If the player
321
- * has not loaded content, this will return a range from 0 to 0.
308
+ * has not loaded content and the manifest is HLS, this will return a range
309
+ * from 0 to 0.
322
310
  */
323
311
  seekRange ( ) : shaka.extern.BufferedRange ;
324
312
  /**
@@ -397,20 +385,9 @@ declare namespace shaka {
397
385
  */
398
386
  trickPlay (rate : number ) : any ;
399
387
  /**
400
- * Tell the player to either return to:
401
- * <ul>
402
- * <li>detached (when it does not have a media element),
403
- * <li>attached (when it has a media element and
404
- * <code>initializedMediaSource=false</code>)
405
- * <li>media source initialized (when it has a media element and
406
- * <code>initializedMediaSource=true</code>)
407
- * </ul>
408
- * <p>
409
- * Calls to <code>unload</code> will interrupt any in-progress calls to
410
- * <code>load</code> but cannot interrupt calls to <code>attach</code>,
411
- * <code>detach</code>, or <code>unload</code>.
388
+ * Unloads the currently playing stream, if any.
412
389
  */
413
- unload (initializeMediaSource ? : boolean ) : Promise < any > ;
390
+ unload (initializeMediaSource ? : boolean , keepAdManager ? : boolean ) : Promise < any > ;
414
391
  /**
415
392
  * Provides a way to update the stream start position during the media loading
416
393
  * process. Can for example be called from the <code>manifestparsed</code>
@@ -479,7 +456,7 @@ declare namespace shaka.Player {
479
456
  declare namespace shaka.abr {
480
457
  class SimpleAbrManager implements shaka.extern.AbrManager , shaka.util.IReleasable {
481
458
  private noStructuralTyping_shaka_abr_SimpleAbrManager : any;
482
- chooseVariant ( ) : any ;
459
+ chooseVariant (preferFastSwitching ? : boolean ) : shaka.extern.Variant ;
483
460
  configure (config : any ) : any ;
484
461
  disable ( ) : any ;
485
462
  enable ( ) : any ;
@@ -487,7 +464,7 @@ declare namespace shaka.abr {
487
464
  init (switchCallback : any ) : any ;
488
465
  playbackRateChanged (rate : any ) : any ;
489
466
  release ( ) : any ;
490
- segmentDownloaded (deltaTimeMs : any , numBytes : any ) : any ;
467
+ segmentDownloaded (deltaTimeMs : any , numBytes : any , allowSwitch : any ) : any ;
491
468
  setMediaElement (mediaElement : any ) : any ;
492
469
  setVariants (variants : any ) : any ;
493
470
  stop ( ) : any ;
@@ -501,17 +478,21 @@ declare namespace shaka.ads {
501
478
  class AdManager extends shaka.util.FakeEventTarget implements shaka.extern.IAdManager , shaka.util.IReleasable {
502
479
  private noStructuralTyping_shaka_ads_AdManager : any;
503
480
  configure (config : any ) : any ;
481
+ getCuePoints ( ) : shaka.extern.AdCuePoint [] ;
504
482
  getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ;
505
483
  getStats ( ) : shaka.extern.AdsStats ;
506
484
  initClientSide (adContainer : any , video : any , adsRenderingSettings : any ) : any ;
485
+ initMediaTailor (adContainer : any , networkingEngine : any , video : any ) : any ;
507
486
  initServerSide (adContainer : any , video : any ) : any ;
508
487
  onAssetUnload ( ) : any ;
509
488
  onCueMetadataChange (value : any ) : any ;
510
489
  onDashTimedMetadata (region : any ) : any ;
511
490
  onHlsTimedMetadata (metadata : any , timestamp : any ) : any ;
491
+ onManifestUpdated (isLive : any ) : any ;
512
492
  release ( ) : any ;
513
493
  replaceServerSideAdTagParameters (adTagParameters : any ) : any ;
514
494
  requestClientSideAds (imaRequest : any ) : any ;
495
+ requestMediaTailorStream (url : string , adsParams : object | null , backupUrl ? : string ) : Promise < string > ;
515
496
  requestServerSideStream (imaRequest : google.ima.dai.api.StreamRequest , backupUrl ? : string ) : Promise < string > ;
516
497
  setLocale (locale : any ) : any ;
517
498
  updateClientSideAdsRenderingSettings (adsRenderingSettings : any ) : any ;
@@ -684,6 +665,43 @@ declare namespace shaka.ads {
684
665
  }
685
666
  }
686
667
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
668
+ declare namespace shaka.ads {
669
+ class MediaTailorAd implements shaka.extern.IAd {
670
+ private noStructuralTyping_shaka_ads_MediaTailorAd : any;
671
+ constructor (mediaTailorAd : mediaTailor.Ad , adPosition : number , totalAds : number , isLinear : any , video : HTMLMediaElement | null ) ;
672
+ canSkipNow ( ) : any ;
673
+ getAdId ( ) : any ;
674
+ getAdvertiserName ( ) : any ;
675
+ getCreativeAdId ( ) : any ;
676
+ getDescription ( ) : any ;
677
+ getDuration ( ) : any ;
678
+ getMediaUrl ( ) : any ;
679
+ getMinSuggestedDuration ( ) : any ;
680
+ getPodIndex ( ) : any ;
681
+ getPositionInSequence ( ) : any ;
682
+ getRemainingTime ( ) : any ;
683
+ getSequenceLength ( ) : any ;
684
+ getTimeOffset ( ) : any ;
685
+ getTimeUntilSkippable ( ) : any ;
686
+ getTitle ( ) : any ;
687
+ getVastMediaBitrate ( ) : any ;
688
+ getVastMediaHeight ( ) : any ;
689
+ getVastMediaWidth ( ) : any ;
690
+ getVolume ( ) : any ;
691
+ isLinear ( ) : any ;
692
+ isMuted ( ) : any ;
693
+ isPaused ( ) : any ;
694
+ isSkippable ( ) : any ;
695
+ pause ( ) : any ;
696
+ play ( ) : any ;
697
+ release ( ) : any ;
698
+ resize (width : any , height : any ) : any ;
699
+ setMuted (muted : any ) : any ;
700
+ setVolume (volume : any ) : any ;
701
+ skip ( ) : any ;
702
+ }
703
+ }
704
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
687
705
  declare namespace shaka.ads {
688
706
  class ServerSideAd implements shaka.extern.IAd {
689
707
  private noStructuralTyping_shaka_ads_ServerSideAd : any;
@@ -822,6 +840,7 @@ declare namespace shaka.cea {
822
840
  clear ( ) : any ;
823
841
  decode ( ) : shaka.extern.ICaptionDecoder.ClosedCaption [] ;
824
842
  extract (userDataSeiMessage : Uint8Array , pts : number ) : any ;
843
+ getStreams ( ) : string [] ;
825
844
  }
826
845
  }
827
846
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
@@ -856,14 +875,23 @@ declare namespace shaka.config {
856
875
  }
857
876
  }
858
877
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
878
+ declare namespace shaka.config {
879
+ enum CodecSwitchingStrategy {
880
+ RELOAD = 'reload' ,
881
+ SMOOTH = 'smooth' ,
882
+ }
883
+ }
884
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
859
885
  declare namespace shaka.dash {
860
886
  /**
861
887
  * Creates a new DASH parser.
862
888
  */
863
889
  class DashParser implements shaka.extern.ManifestParser {
864
890
  private noStructuralTyping_shaka_dash_DashParser : any;
891
+ banLocation (uri : any ) : any ;
865
892
  configure (config : any ) : any ;
866
893
  onExpirationUpdated (sessionId : any , expiration : any ) : any ;
894
+ onInitialVariantChosen (variant : any ) : any ;
867
895
  start (uri : any , playerInterface : any ) : any ;
868
896
  stop ( ) : any ;
869
897
  update ( ) : any ;
@@ -900,8 +928,10 @@ declare namespace shaka.hls {
900
928
  */
901
929
  class HlsParser implements shaka.extern.ManifestParser {
902
930
  private noStructuralTyping_shaka_hls_HlsParser : any;
931
+ banLocation (uri : any ) : any ;
903
932
  configure (config : any ) : any ;
904
933
  onExpirationUpdated (sessionId : any , expiration : any ) : any ;
934
+ onInitialVariantChosen (variant : any ) : any ;
905
935
  start (uri : any , playerInterface : any ) : any ;
906
936
  stop ( ) : any ;
907
937
  update ( ) : any ;
@@ -909,11 +939,11 @@ declare namespace shaka.hls {
909
939
  }
910
940
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
911
941
  declare namespace shaka.lcevc {
912
- class Dil implements shaka.util.IReleasable {
913
- private noStructuralTyping_shaka_lcevc_Dil : any;
914
- constructor (media : HTMLVideoElement | null , canvas : HTMLCanvasElement | null , dilConfig : shaka.extern.LcevcConfiguration ) ;
942
+ class Dec implements shaka.util.IReleasable {
943
+ private noStructuralTyping_shaka_lcevc_Dec : any;
944
+ constructor (media : HTMLVideoElement | null , canvas : HTMLCanvasElement | null , lcevcConfig : shaka.extern.LcevcConfiguration ) ;
915
945
  /**
916
- * Close LCEVC Dil.
946
+ * Close LCEVC Decoder.
917
947
  */
918
948
  release ( ) : any ;
919
949
  }
@@ -958,7 +988,7 @@ declare namespace shaka.media {
958
988
  */
959
989
  class InitSegmentReference {
960
990
  private noStructuralTyping_shaka_media_InitSegmentReference : any;
961
- constructor (uris : ( ) => string [] , startByte : number , endByte : number | null , mediaQuality ? : null | shaka.extern.MediaQualityInfo , timescale ? : null | number , segmentData ? : null | ArrayBuffer | ArrayBufferView , aes128Key ? : shaka.extern.HlsAes128Key | null ) ;
991
+ constructor (uris : ( ) => string [] , startByte : number , endByte : number | null , mediaQuality ? : null | shaka.extern.MediaQualityInfo , timescale ? : null | number , segmentData ? : null | ArrayBuffer | ArrayBufferView , aes128Key ? : shaka.extern.aes128Key | null ) ;
962
992
  /**
963
993
  * Returns the offset from the start of the resource to the end of the
964
994
  * segment, inclusive. A value of null indicates that the segment extends
@@ -1167,7 +1197,7 @@ declare namespace shaka.media {
1167
1197
  }
1168
1198
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
1169
1199
  declare namespace shaka.media.PresentationTimeline {
1170
- type TimeRange = { end : number , start : number , unscaledStart : number } ;
1200
+ type TimeRange = { end : number , partialSegments : number , segmentPosition : number , start : number , unscaledStart : number } ;
1171
1201
  }
1172
1202
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
1173
1203
  declare namespace shaka.media {
@@ -1285,7 +1315,7 @@ declare namespace shaka.media {
1285
1315
  */
1286
1316
  class SegmentReference {
1287
1317
  private noStructuralTyping_shaka_media_SegmentReference : any;
1288
- constructor (startTime : number , endTime : number , uris : ( ) => string [] , startByte : number , endByte : number | null , initSegmentReference : shaka.media.InitSegmentReference | null , timestampOffset : number , appendWindowStart : number , appendWindowEnd : number , partialReferences ? : shaka.media.SegmentReference [] , tilesLayout ? : string | null , tileDuration ? : number | null , syncTime ? : number | null , status ? : shaka.media.SegmentReference.Status , hlsAes128Key ? : shaka.extern.HlsAes128Key | null ) ;
1318
+ constructor (startTime : number , endTime : number , uris : ( ) => string [] , startByte : number , endByte : number | null , initSegmentReference : shaka.media.InitSegmentReference | null , timestampOffset : number , appendWindowStart : number , appendWindowEnd : number , partialReferences ? : shaka.media.SegmentReference [] , tilesLayout ? : string | null , tileDuration ? : number | null , syncTime ? : number | null , status ? : shaka.media.SegmentReference.Status , aes128Key ? : shaka.extern.aes128Key | null , allPartialSegments ? : boolean ) ;
1289
1319
  /**
1290
1320
  * Returns the offset from the start of the resource to the end of the
1291
1321
  * segment, inclusive. A value of null indicates that the segment extends to
@@ -1334,6 +1364,14 @@ declare namespace shaka.media {
1334
1364
  * Returns true if the segment is independent.
1335
1365
  */
1336
1366
  isIndependent ( ) : boolean ;
1367
+ /**
1368
+ * Returns true if reference as being the last part of the full segment.
1369
+ */
1370
+ isLastPartial ( ) : boolean ;
1371
+ /**
1372
+ * Returns true if the segment is partial.
1373
+ */
1374
+ isPartial ( ) : boolean ;
1337
1375
  /**
1338
1376
  * Returns true if the segment is preloaded.
1339
1377
  */
@@ -1344,10 +1382,18 @@ declare namespace shaka.media {
1344
1382
  * latency streaming with chunked data.
1345
1383
  */
1346
1384
  markAsByterangeOptimization ( ) : any ;
1385
+ /**
1386
+ * Mark the reference as being the last part of the full segment
1387
+ */
1388
+ markAsLastPartial ( ) : any ;
1347
1389
  /**
1348
1390
  * Mark the reference as non-independent.
1349
1391
  */
1350
1392
  markAsNonIndependent ( ) : any ;
1393
+ /**
1394
+ * Mark the reference as partial.
1395
+ */
1396
+ markAsPartial ( ) : any ;
1351
1397
  /**
1352
1398
  * Mark the reference as preload.
1353
1399
  */
@@ -1399,8 +1445,10 @@ declare namespace shaka.mss {
1399
1445
  */
1400
1446
  class MssParser implements shaka.extern.ManifestParser {
1401
1447
  private noStructuralTyping_shaka_mss_MssParser : any;
1448
+ banLocation (uri : any ) : any ;
1402
1449
  configure (config : any ) : any ;
1403
1450
  onExpirationUpdated (sessionId : any , expiration : any ) : any ;
1451
+ onInitialVariantChosen (variant : any ) : any ;
1404
1452
  start (uri : any , playerInterface : any ) : any ;
1405
1453
  stop ( ) : any ;
1406
1454
  update ( ) : any ;
@@ -1447,7 +1495,7 @@ declare namespace shaka.net {
1447
1495
  * handle the actual request. A plugin is registered using registerScheme.
1448
1496
  * Each scheme has at most one plugin to handle the request.
1449
1497
  */
1450
- constructor (onProgressUpdated ? : (a : number , b : number ) => any , onHeadersReceived ? : shaka.net.NetworkingEngine.OnHeadersReceived , onDownloadFailed ? : shaka.net.NetworkingEngine.OnDownloadFailed , onRequest ? : shaka.net.NetworkingEngine.OnRequest ) ;
1498
+ constructor (onProgressUpdated ? : (a : number , b : number , c : boolean ) => any , onHeadersReceived ? : shaka.net.NetworkingEngine.OnHeadersReceived , onDownloadFailed ? : shaka.net.NetworkingEngine.OnDownloadFailed , onRequest ? : shaka.net.NetworkingEngine.OnRequest , onRetry ? : shaka.net.NetworkingEngine.OnRetry ) ;
1451
1499
  /**
1452
1500
  * Clears all request filters.
1453
1501
  */
@@ -1553,6 +1601,10 @@ declare namespace shaka.net.NetworkingEngine {
1553
1601
  type OnRequest = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.Request , c : shaka.extern.RequestContext | undefined ) => any ;
1554
1602
  }
1555
1603
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
1604
+ declare namespace shaka.net.NetworkingEngine {
1605
+ type OnRetry = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.RequestContext | undefined , c : string , d : string ) => any ;
1606
+ }
1607
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
1556
1608
  declare namespace shaka.net.NetworkingEngine {
1557
1609
  /**
1558
1610
  * A pending network request. This can track the current progress of the
@@ -1594,7 +1646,9 @@ declare namespace shaka.net.NetworkingEngine {
1594
1646
  * Request types. Allows a filter to decide which requests to read/alter.
1595
1647
  */
1596
1648
  enum RequestType {
1649
+ ADS = 7.0 ,
1597
1650
  APP = 3.0 ,
1651
+ CONTENT_STEERING = 8.0 ,
1598
1652
  KEY = 6.0 ,
1599
1653
  LICENSE = 2.0 ,
1600
1654
  MANIFEST = 0.0 ,
@@ -2047,6 +2101,11 @@ declare namespace shaka.text {
2047
2101
  * because nested cues are inline elements.
2048
2102
  */
2049
2103
  region : shaka.text.CueRegion | null ;
2104
+ /**
2105
+ * Used to indicate the type of ruby tag that should be used when rendering
2106
+ * the cue. Valid values: ruby, rp, rt.
2107
+ */
2108
+ rubyTag : string | null ;
2050
2109
  /**
2051
2110
  * Size of the cue box (in percents), where 0 means "auto".
2052
2111
  */
@@ -2060,6 +2119,10 @@ declare namespace shaka.text {
2060
2119
  * Alignment of the text inside the cue box.
2061
2120
  */
2062
2121
  textAlign : shaka.text.Cue.textAlign ;
2122
+ /**
2123
+ * Text combine upright as a CSS text-combine-upright value.
2124
+ */
2125
+ textCombineUpright : string ;
2063
2126
  /**
2064
2127
  * Text decoration. A combination of underline, overline
2065
2128
  * and line through. Empty array means no decoration.
@@ -2317,7 +2380,7 @@ declare namespace shaka.text {
2317
2380
  class Mp4TtmlParser implements shaka.extern.TextParser {
2318
2381
  private noStructuralTyping_shaka_text_Mp4TtmlParser : any;
2319
2382
  parseInit (data : any ) : any ;
2320
- parseMedia (data : any , time : any ) : any ;
2383
+ parseMedia (data : any , time : any , uri : any ) : any ;
2321
2384
  setManifestType (manifestType : any ) : any ;
2322
2385
  setSequenceMode (sequenceMode : any ) : any ;
2323
2386
  }
@@ -2365,7 +2428,7 @@ declare namespace shaka.text {
2365
2428
  class SrtTextParser implements shaka.extern.TextParser {
2366
2429
  private noStructuralTyping_shaka_text_SrtTextParser : any;
2367
2430
  parseInit (data : any ) : any ;
2368
- parseMedia (data : any , time : any ) : any ;
2431
+ parseMedia (data : any , time : any , uri : any ) : any ;
2369
2432
  setManifestType (manifestType : any ) : any ;
2370
2433
  setSequenceMode (sequenceMode : any ) : any ;
2371
2434
  /**
@@ -2389,6 +2452,20 @@ declare namespace shaka.text {
2389
2452
  }
2390
2453
  }
2391
2454
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
2455
+ declare namespace shaka.text {
2456
+ /**
2457
+ * A stub text displayer plugin that does nothing
2458
+ */
2459
+ class StubTextDisplayer implements shaka.extern.TextDisplayer {
2460
+ private noStructuralTyping_shaka_text_StubTextDisplayer : any;
2461
+ append (cues : any ) : any ;
2462
+ destroy ( ) : any ;
2463
+ isTextVisible ( ) : any ;
2464
+ remove (start : any , end : any ) : any ;
2465
+ setTextVisibility (on : any ) : any ;
2466
+ }
2467
+ }
2468
+ // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
2392
2469
  declare namespace shaka.text {
2393
2470
  class TextEngine implements shaka.util.IDestroyable {
2394
2471
  private noStructuralTyping_shaka_text_TextEngine : any;
@@ -2404,7 +2481,7 @@ declare namespace shaka.text {
2404
2481
  class TtmlTextParser implements shaka.extern.TextParser {
2405
2482
  private noStructuralTyping_shaka_text_TtmlTextParser : any;
2406
2483
  parseInit (data : any ) : any ;
2407
- parseMedia (data : any , time : any ) : any ;
2484
+ parseMedia (data : any , time : any , uri : any ) : any ;
2408
2485
  setManifestType (manifestType : any ) : any ;
2409
2486
  setSequenceMode (sequenceMode : any ) : any ;
2410
2487
  }
@@ -2452,7 +2529,7 @@ declare namespace shaka.transmuxer {
2452
2529
  constructor (mimeType : string ) ;
2453
2530
  convertCodecs (contentType : any , mimeType : any ) : any ;
2454
2531
  destroy ( ) : any ;
2455
- getOrginalMimeType ( ) : any ;
2532
+ getOriginalMimeType ( ) : any ;
2456
2533
  /**
2457
2534
  * Check if the mime type and the content type is supported.
2458
2535
  */
@@ -2467,7 +2544,7 @@ declare namespace shaka.transmuxer {
2467
2544
  constructor (mimeType : string ) ;
2468
2545
  convertCodecs (contentType : any , mimeType : any ) : any ;
2469
2546
  destroy ( ) : any ;
2470
- getOrginalMimeType ( ) : any ;
2547
+ getOriginalMimeType ( ) : any ;
2471
2548
  /**
2472
2549
  * Check if the mime type and the content type is supported.
2473
2550
  */
@@ -2482,7 +2559,7 @@ declare namespace shaka.transmuxer {
2482
2559
  constructor (mimeType : string ) ;
2483
2560
  convertCodecs (contentType : any , mimeType : any ) : any ;
2484
2561
  destroy ( ) : any ;
2485
- getOrginalMimeType ( ) : any ;
2562
+ getOriginalMimeType ( ) : any ;
2486
2563
  /**
2487
2564
  * Check if the mime type and the content type is supported.
2488
2565
  */
@@ -2497,7 +2574,7 @@ declare namespace shaka.transmuxer {
2497
2574
  constructor (mimeType : string ) ;
2498
2575
  convertCodecs (contentType : any , mimeType : any ) : any ;
2499
2576
  destroy ( ) : any ;
2500
- getOrginalMimeType ( ) : any ;
2577
+ getOriginalMimeType ( ) : any ;
2501
2578
  /**
2502
2579
  * Check if the mime type and the content type is supported.
2503
2580
  */
@@ -2512,12 +2589,12 @@ declare namespace shaka.transmuxer {
2512
2589
  constructor (mimeType : string ) ;
2513
2590
  convertCodecs (contentType : any , mimeType : any ) : any ;
2514
2591
  destroy ( ) : any ;
2515
- getOrginalMimeType ( ) : any ;
2592
+ getOriginalMimeType ( ) : any ;
2516
2593
  /**
2517
2594
  * Check if the mime type and the content type is supported.
2518
2595
  */
2519
2596
  isSupported (mimeType : string , contentType ? : string ) : boolean ;
2520
- transmux (data : any ) : any ;
2597
+ transmux (data : any , stream : any , reference : any , duration : any , contentType : any ) : any ;
2521
2598
  }
2522
2599
  }
2523
2600
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
@@ -2527,7 +2604,7 @@ declare namespace shaka.transmuxer {
2527
2604
  constructor (mimeType : string ) ;
2528
2605
  convertCodecs (contentType : any , mimeType : any ) : any ;
2529
2606
  destroy ( ) : any ;
2530
- getOrginalMimeType ( ) : any ;
2607
+ getOriginalMimeType ( ) : any ;
2531
2608
  /**
2532
2609
  * Check if the mime type and the content type is supported.
2533
2610
  */
@@ -2536,21 +2613,6 @@ declare namespace shaka.transmuxer {
2536
2613
  }
2537
2614
  }
2538
2615
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
2539
- declare namespace shaka.transmuxer {
2540
- class MuxjsTransmuxer implements shaka.extern.Transmuxer {
2541
- private noStructuralTyping_shaka_transmuxer_MuxjsTransmuxer : any;
2542
- constructor (mimeType : string ) ;
2543
- convertCodecs (contentType : any , mimeType : any ) : any ;
2544
- destroy ( ) : any ;
2545
- getOrginalMimeType ( ) : any ;
2546
- /**
2547
- * Check if the mime type and the content type is supported.
2548
- */
2549
- isSupported (mimeType : string , contentType ? : string ) : boolean ;
2550
- transmux (data : any ) : any ;
2551
- }
2552
- }
2553
- // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
2554
2616
  declare namespace shaka.transmuxer {
2555
2617
  class TransmuxerEngine implements shaka.util.IDestroyable {
2556
2618
  private noStructuralTyping_shaka_transmuxer_TransmuxerEngine : any;
@@ -2586,7 +2648,7 @@ declare namespace shaka.transmuxer {
2586
2648
  constructor (mimeType : string ) ;
2587
2649
  convertCodecs (contentType : any , mimeType : any ) : any ;
2588
2650
  destroy ( ) : any ;
2589
- getOrginalMimeType ( ) : any ;
2651
+ getOriginalMimeType ( ) : any ;
2590
2652
  /**
2591
2653
  * Check if the mime type and the content type is supported.
2592
2654
  */
@@ -2639,6 +2701,15 @@ declare namespace shaka.util {
2639
2701
  * Creates a DataView over the given buffer.
2640
2702
  */
2641
2703
  static toDataView (buffer : ArrayBuffer | ArrayBufferView , offset ? : number , length ? : number ) : DataView ;
2704
+ /**
2705
+ * Creates a new Uint16Array view on the same buffer. This clamps the values
2706
+ * to be within the same view (i.e. you can't use this to move past the end
2707
+ * of the view, even if the underlying buffer is larger). However, you can
2708
+ * pass a negative offset to access the data before the view.
2709
+ * @param offset The offset from the beginning of this data's view to start the new view at.
2710
+ * @param length The byte length of the new view.
2711
+ */
2712
+ static toUint16 (data : ArrayBuffer | ArrayBufferView , offset ? : number , length ? : number ) : Uint16Array ;
2642
2713
  /**
2643
2714
  * Creates a new Uint8Array view on the same buffer. This clamps the values
2644
2715
  * to be within the same view (i.e. you can't use this to move past the end
@@ -2786,6 +2857,8 @@ declare namespace shaka.util.Error {
2786
2857
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
2787
2858
  declare namespace shaka.util.Error {
2788
2859
  enum Code {
2860
+ AES_128_INVALID_IV_LENGTH = 4048.0 ,
2861
+ AES_128_INVALID_KEY_LENGTH = 4049.0 ,
2789
2862
  ALREADY_CASTING = 8002.0 ,
2790
2863
  ATTEMPTS_EXHAUSTED = 1010.0 ,
2791
2864
  BAD_ENCODING = 2004.0 ,
@@ -2794,7 +2867,6 @@ declare namespace shaka.util.Error {
2794
2867
  CANNOT_ADD_EXTERNAL_TEXT_TO_LIVE_STREAM = 4033.0 ,
2795
2868
  CANNOT_ADD_EXTERNAL_TEXT_TO_SRC_EQUALS = 2012.0 ,
2796
2869
  CANNOT_ADD_EXTERNAL_THUMBNAILS_TO_LIVE_STREAM = 4045.0 ,
2797
- CANNOT_ADD_EXTERNAL_THUMBNAILS_TO_SRC_EQUALS = 2016.0 ,
2798
2870
  CANNOT_STORE_LIVE_OFFLINE = 9005.0 ,
2799
2871
  CAST_API_UNAVAILABLE = 8000.0 ,
2800
2872
  CAST_CANCELED_BY_USER = 8004.0 ,
@@ -2807,6 +2879,7 @@ declare namespace shaka.util.Error {
2807
2879
  CS_AD_MANAGER_NOT_INITIALIZED = 10001.0 ,
2808
2880
  CS_IMA_SDK_MISSING = 10000.0 ,
2809
2881
  CURRENT_DAI_REQUEST_NOT_FINISHED = 10004.0 ,
2882
+ DASH_CONFLICTING_AES_128 = 4050.0 ,
2810
2883
  DASH_CONFLICTING_KEY_IDS = 4010.0 ,
2811
2884
  DASH_DUPLICATE_REPRESENTATION_ID = 4018.0 ,
2812
2885
  DASH_EMPTY_ADAPTATION_SET = 4003.0 ,
@@ -2816,6 +2889,7 @@ declare namespace shaka.util.Error {
2816
2889
  DASH_NO_COMMON_KEY_SYSTEM = 4008.0 ,
2817
2890
  DASH_NO_SEGMENT_INFO = 4002.0 ,
2818
2891
  DASH_PSSH_BAD_ENCODING = 4007.0 ,
2892
+ DASH_UNSUPPORTED_AES_128 = 4051.0 ,
2819
2893
  DASH_UNSUPPORTED_CONTAINER = 4006.0 ,
2820
2894
  DASH_UNSUPPORTED_XLINK_ACTUATE = 4027.0 ,
2821
2895
  DASH_WEBM_MISSING_INIT = 4005.0 ,
@@ -2831,8 +2905,6 @@ declare namespace shaka.util.Error {
2831
2905
  FAILED_TO_CREATE_CDM = 6002.0 ,
2832
2906
  FAILED_TO_CREATE_SESSION = 6005.0 ,
2833
2907
  FAILED_TO_GENERATE_LICENSE_REQUEST = 6006.0 ,
2834
- HLS_AES_128_INVALID_IV_LENGTH = 4043.0 ,
2835
- HLS_AES_128_INVALID_KEY_LENGTH = 4044.0 ,
2836
2908
  HLS_COULD_NOT_GUESS_CODECS = 4025.0 ,
2837
2909
  HLS_INVALID_PLAYLIST_HIERARCHY = 4017.0 ,
2838
2910
  HLS_KEYFORMATS_NOT_SUPPORTED = 4026.0 ,
@@ -2879,6 +2951,7 @@ declare namespace shaka.util.Error {
2879
2951
  MSS_MISSING_DATA_FOR_TRANSMUXING = 3020.0 ,
2880
2952
  MSS_TRANSMUXING_CODEC_UNKNOWN = 3021.0 ,
2881
2953
  MSS_TRANSMUXING_FAILED = 3022.0 ,
2954
+ MT_AD_MANAGER_NOT_INITIALIZED = 10005.0 ,
2882
2955
  NEW_KEY_OPERATION_NOT_SUPPORTED = 9011.0 ,
2883
2956
  NO_CAST_RECEIVERS = 8001.0 ,
2884
2957
  NO_INIT_DATA_FOR_OFFLINE = 9007.0 ,
@@ -2979,7 +3052,7 @@ declare namespace shaka.util.EventManager {
2979
3052
  declare namespace shaka.util {
2980
3053
  class ExpGolomb {
2981
3054
  private noStructuralTyping_shaka_util_ExpGolomb : any;
2982
- constructor (data : Uint8Array ) ;
3055
+ constructor (data : Uint8Array , convertEbsp2rbsp ? : boolean ) ;
2983
3056
  }
2984
3057
  }
2985
3058
  // Generated from /home/runner/work/shaka-player/shaka-player/dist/shaka-player.compiled.debug.externs.js
@@ -3458,11 +3531,11 @@ declare namespace shaka.util {
3458
3531
  /**
3459
3532
  * Return the start time for the audio and video
3460
3533
  */
3461
- getStartTime ( ) : { audio : number | null , video : number | null } ;
3534
+ getStartTime (contentType : string ) : number | null ;
3462
3535
  /**
3463
3536
  * Return the audio data
3464
3537
  */
3465
- getVideoData ( ) : shaka.extern.MPEG_PES [] ;
3538
+ getVideoData (naluProcessing ? : boolean ) : shaka.extern.MPEG_PES [] ;
3466
3539
  /**
3467
3540
  * Return the video information
3468
3541
  */
@@ -3485,6 +3558,12 @@ declare namespace shaka.util {
3485
3558
  * Credit to https://github.com/video-dev/hls.js/blob/master/src/demux/tsdemuxer.ts
3486
3559
  */
3487
3560
  parseAvcNalus (pes : shaka.extern.MPEG_PES , nextPes ? : shaka.extern.MPEG_PES | null ) : shaka.extern.VideoNalu [] ;
3561
+ /**
3562
+ * Parse AVC and HVC Nalus
3563
+ * The code is based on hls.js
3564
+ * Credit to https://github.com/video-dev/hls.js/blob/master/src/demux/tsdemuxer.ts
3565
+ */
3566
+ parseNalus (pes : shaka.extern.MPEG_PES , lastNalu ? : shaka.extern.VideoNalu | null ) : shaka.extern.VideoNalu [] ;
3488
3567
  static Timescale : number ;
3489
3568
  /**
3490
3569
  * Check if the passed data corresponds to an MPEG2-TS
@@ -3886,13 +3965,16 @@ declare namespace ಠ_ಠ.clutz {
3886
3965
  }
3887
3966
  }
3888
3967
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/lcevc.js
3889
- declare namespace LcevcDil {
3968
+ declare namespace LCEVCdec {
3890
3969
  /**
3891
- * LCEVC DIL constructor
3970
+ * LCEVC Dec constructor
3892
3971
  */
3893
- class LcevcDIL {
3894
- private noStructuralTyping_LcevcDil_LcevcDIL : any;
3895
- constructor (media : HTMLVideoElement | null , canvas : HTMLCanvasElement | null , dilConfig : shaka.extern.LcevcConfiguration ) ;
3972
+ class LCEVCdec {
3973
+ private noStructuralTyping_LCEVCdec_LCEVCdec : any;
3974
+ /**
3975
+ * LCEVC Dec constructor
3976
+ */
3977
+ constructor (media : HTMLVideoElement | null , canvas : HTMLCanvasElement | null , lcevcConfig : shaka.extern.LcevcConfiguration ) ;
3896
3978
  /**
3897
3979
  * Append the video buffers before they are appended to
3898
3980
  * Media Source Extensions SourceBuffer. Here the lcevc data
@@ -3900,10 +3982,11 @@ declare namespace LcevcDil {
3900
3982
  * @param data Video Buffer Data.
3901
3983
  * @param type Type of Video Buffer Data.
3902
3984
  * @param variantId Variant that the fragment belongs to.
3985
+ * @param timestampOffset Timestamp offset for appended segments
3903
3986
  */
3904
- appendBuffer (data : ArrayBuffer | ArrayBufferView , type : string , variantId : number ) : any ;
3987
+ appendBuffer (data : ArrayBuffer | ArrayBufferView , type : string , variantId : number , timestampOffset : number ) : any ;
3905
3988
  /**
3906
- * Close LCEVC DIL
3989
+ * Close LCEVC DEC
3907
3990
  */
3908
3991
  close ( ) : any ;
3909
3992
  /**
@@ -3913,32 +3996,60 @@ declare namespace LcevcDil {
3913
3996
  setContainerFormat (containerFormat : number ) : any ;
3914
3997
  /**
3915
3998
  * Set current variant as variantId to the LCEVC decoder
3916
- * @param autoBufferSwitch is lcevcDil mode that switches variant when the downloaded buffer from last variant has finished playing and buffers from the new variant starts to play.
3999
+ * @param autoBufferSwitch is lcevcDec mode that switches variant when the downloaded buffer from last variant has finished playing and buffers from the new variant starts to play.
3917
4000
  */
3918
4001
  setLevelSwitching (variantId : number , autoBufferSwitch : boolean ) : any ;
4002
+ /**
4003
+ * Set streaming Format for LCEVC Data Parsing.
4004
+ * @param streamingFormat container type of the stream.
4005
+ */
4006
+ setStreamingFormat (streamingFormat : number ) : any ;
3919
4007
  }
3920
4008
  }
3921
4009
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/lcevc.js
3922
- declare namespace LcevcDil.SupportObject {
4010
+ declare namespace LCEVCdec {
4011
+ /**
4012
+ * The older module interface, for backward compatibility.
4013
+ * Typed to the same interface, but under a different name.
4014
+ */
4015
+ export import LcevcDil = LCEVCdec.LCEVCdec ;
4016
+ }
4017
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/lcevc.js
4018
+ declare namespace LCEVCdec.SupportObject {
3923
4019
  /**
3924
4020
  * LCEVC Support CheckList Error if any.
3925
4021
  */
3926
4022
  let SupportError : string ;
3927
4023
  }
3928
4024
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/lcevc.js
3929
- declare namespace LcevcDil.SupportObject {
4025
+ declare namespace LCEVCdec.SupportObject {
3930
4026
  /**
3931
4027
  * LCEVC Support Checklist Result
3932
4028
  */
3933
4029
  let SupportStatus : boolean ;
3934
4030
  }
3935
4031
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/lcevc.js
3936
- declare namespace LcevcDil.SupportObject {
4032
+ declare namespace LCEVCdec.SupportObject {
3937
4033
  /**
3938
4034
  * Check if canvas has WebGL support
3939
4035
  */
3940
4036
  function webGLSupport (canvas : HTMLCanvasElement | null ) : boolean ;
3941
4037
  }
4038
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/lcevc.js
4039
+ declare namespace ಠ_ಠ.clutz {
4040
+ /**
4041
+ * Typedef for the module interface. Both LCEVCdec (new module) and LcevcDil
4042
+ * (old module) implement roughly the same interface.
4043
+ */
4044
+ type LCEVCmodule = typeof LCEVCdec ;
4045
+ }
4046
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/managedmediasource.js
4047
+ declare namespace ಠ_ಠ.clutz {
4048
+ class ManagedMediaSource extends MediaSource {
4049
+ private noStructuralTyping_ManagedMediaSource : any;
4050
+ static isTypeSupported (type : string ) : boolean ;
4051
+ }
4052
+ }
3942
4053
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/mdl.js
3943
4054
  declare namespace ಠ_ಠ.clutz {
3944
4055
  class MaterialLayout {
@@ -3947,6 +4058,42 @@ declare namespace ಠ_ಠ.clutz {
3947
4058
  toggleDrawer ( ) : any ;
3948
4059
  }
3949
4060
  }
4061
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/media_remote.js
4062
+ declare namespace ಠ_ಠ.clutz {
4063
+ class RemotePlayback implements EventTarget {
4064
+ private noStructuralTyping_RemotePlayback : any;
4065
+ addEventListener (type : string , listener : EventListener | null | ( (a : Event ) => any ) , opt_options ? : boolean | AddEventListenerOptions ) : void ;
4066
+ /**
4067
+ * The cancelWatchAvailability() method of the RemotePlayback interface
4068
+ * cancels the request to watch for one or all available devices.
4069
+ */
4070
+ cancelWatchAvailability (id : number ) : Promise < any > ;
4071
+ dispatchEvent (evt : Event ) : boolean ;
4072
+ /**
4073
+ * The prompt() method of the RemotePlayback interface prompts the user
4074
+ * to select an available remote playback device and give permission
4075
+ * for the current media to be played using that device.
4076
+ *
4077
+ * If the user gives permission, the state will be set to connecting and
4078
+ * the user agent will connect to the device to initiate playback.
4079
+ *
4080
+ * If the user chooses to instead disconnect from the device, the state will
4081
+ * be set to disconnected and user agent will disconnect from this device.
4082
+ */
4083
+ prompt ( ) : Promise < any > ;
4084
+ removeEventListener (type : string , listener : EventListener | null | ( (a : Event ) => any ) , opt_options ? : boolean | EventListenerOptions ) : void ;
4085
+ /**
4086
+ * Represents the RemotePlayback connection's state.
4087
+ */
4088
+ state : string ;
4089
+ /**
4090
+ * The watchAvailability() method of the RemotePlayback interface watches
4091
+ * the list of available remote playback devices and returns a Promise that
4092
+ * resolves with the callbackId of a remote playback device.
4093
+ */
4094
+ watchAvailability (callback : (a : boolean ) => any ) : Promise < any > ;
4095
+ }
4096
+ }
3950
4097
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediasession.js
3951
4098
  declare namespace ಠ_ಠ.clutz {
3952
4099
  class MediaMetadata {
@@ -3964,35 +4111,49 @@ declare namespace ಠ_ಠ.clutz {
3964
4111
  metadata : MediaMetadata | null ;
3965
4112
  }
3966
4113
  }
3967
- // Generated from /home/runner/work/shaka-player/shaka-player/externs/mux.js
3968
- declare namespace muxjs.mp4 {
3969
- class Transmuxer {
3970
- private noStructuralTyping_muxjs_mp4_Transmuxer : any;
3971
- constructor (options ? : object | null ) ;
3972
- /**
3973
- * Remove all handlers and clean up.
3974
- */
3975
- dispose ( ) : any ;
3976
- flush ( ) : any ;
3977
- /**
3978
- * Remove a handler for a specified event type.
3979
- * @param type Event name
3980
- * @param listener The callback to be removed
3981
- */
3982
- off (type : string , listener : Function | null ) : any ;
3983
- /**
3984
- * Add a handler for a specified event type.
3985
- * @param type Event name
3986
- * @param listener The callback to be invoked
3987
- */
3988
- on (type : string , listener : Function | null ) : any ;
3989
- push (data : Uint8Array ) : any ;
3990
- setBaseMediaDecodeTime (time : number ) : any ;
3991
- }
4114
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4115
+ declare namespace mediaTailor {
4116
+ type Ad = { adId : string , adParameters : string , adSystem : string , adTitle : string , creativeId : string , creativeSequence : string , durationInSeconds : number , nonLinearAdList : mediaTailor.NonLinearAd [] , skipOffset : number | null , startTimeInSeconds : number , trackingEvents : mediaTailor.TrackingEvent [] } ;
4117
+ }
4118
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4119
+ declare namespace mediaTailor {
4120
+ type AdBreak = { adBreakTrackingEvents : mediaTailor.TrackingEvent [] , ads : mediaTailor.Ad [] , durationInSeconds : number , nonLinearAdsList : mediaTailor.Ad [] , startTimeInSeconds : number } ;
4121
+ }
4122
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4123
+ declare namespace mediaTailor {
4124
+ type NonLinearAd = { adId : string , adParameters : string , adSystem : string , adTitle : string , creativeAdId : string , creativeId : string , creativeSequence : string , height : number | null , staticResource : string , width : number | null } ;
4125
+ }
4126
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4127
+ declare namespace mediaTailor {
4128
+ type SessionResponse = { manifestUrl : string | null , trackingUrl : string | null } ;
4129
+ }
4130
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4131
+ declare namespace mediaTailor {
4132
+ type TrackingEvent = { beaconUrls : string [] , eventType : string } ;
4133
+ }
4134
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4135
+ declare namespace mediaTailor {
4136
+ type TrackingResponse = { avails : mediaTailor.AdBreak [] } ;
4137
+ }
4138
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4139
+ declare namespace mediaTailorExternalResource {
4140
+ type App = { data : mediaTailorExternalResource.AppData , placeholder : mediaTailorExternalResource.AppPlaceholder } ;
4141
+ }
4142
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4143
+ declare namespace mediaTailorExternalResource {
4144
+ type AppData = { source : mediaTailorExternalResource.AppDataSource [] } ;
4145
+ }
4146
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4147
+ declare namespace mediaTailorExternalResource {
4148
+ type AppDataSource = { url : string } ;
4149
+ }
4150
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4151
+ declare namespace mediaTailorExternalResource {
4152
+ type AppPlaceholder = { left : number , top : number } ;
3992
4153
  }
3993
- // Generated from /home/runner/work/shaka-player/shaka-player/externs/mux.js
3994
- declare namespace muxjs.mp4.Transmuxer {
3995
- type Segment = { data : Uint8Array , initSegment : Uint8Array } ;
4154
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/mediatailor.js
4155
+ declare namespace mediaTailorExternalResource {
4156
+ type Response = { apps : mediaTailorExternalResource.App [] } ;
3996
4157
  }
3997
4158
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/pictureinpicture.js
3998
4159
  declare namespace ಠ_ಠ.clutz {
@@ -4006,6 +4167,14 @@ declare namespace ಠ_ಠ.clutz {
4006
4167
  }
4007
4168
  }
4008
4169
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/pictureinpicture.js
4170
+ declare namespace ಠ_ಠ.clutz {
4171
+ class DocumentPictureInPictureEvent extends Event {
4172
+ private noStructuralTyping_DocumentPictureInPictureEvent : any;
4173
+ constructor ( ) ;
4174
+ window : Window | null ;
4175
+ }
4176
+ }
4177
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/pictureinpicture.js
4009
4178
  declare namespace ಠ_ಠ.clutz {
4010
4179
  type DocumentPictureInPictureOptions = { height ? : number , width ? : number } ;
4011
4180
  }
@@ -4079,8 +4248,9 @@ declare namespace shaka.extern {
4079
4248
  interface AbrManager {
4080
4249
  /**
4081
4250
  * Chooses one variant to switch to. Called by the Player.
4251
+ * @param preferFastSwitching If not provided meant "avoid fast switching if possible".
4082
4252
  */
4083
- chooseVariant ( ) : shaka.extern.Variant ;
4253
+ chooseVariant (preferFastSwitching ? : boolean ) : shaka.extern.Variant ;
4084
4254
  /**
4085
4255
  * Sets the ABR configuration.
4086
4256
  *
@@ -4120,8 +4290,9 @@ declare namespace shaka.extern {
4120
4290
  * SIDX data, WebM Cues data, initialization segments, and media segments).
4121
4291
  * @param deltaTimeMs The duration, in milliseconds, that the request took to complete.
4122
4292
  * @param numBytes The total number of bytes transferred.
4293
+ * @param allowSwitch Indicate if the segment is allowed to switch to another stream.
4123
4294
  */
4124
- segmentDownloaded (deltaTimeMs : number , numBytes : number ) : any ;
4295
+ segmentDownloaded (deltaTimeMs : number , numBytes : number , allowSwitch : boolean ) : any ;
4125
4296
  /**
4126
4297
  * Set media element.
4127
4298
  */
@@ -4225,6 +4396,7 @@ declare namespace shaka.extern {
4225
4396
  * Must be called at least once before init*().
4226
4397
  */
4227
4398
  configure (config : shaka.extern.AdsConfiguration ) : any ;
4399
+ getCuePoints ( ) : shaka.extern.AdCuePoint [] ;
4228
4400
  getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ;
4229
4401
  /**
4230
4402
  * Get statistics for the current playback session. If the player is not
@@ -4232,14 +4404,20 @@ declare namespace shaka.extern {
4232
4404
  */
4233
4405
  getStats ( ) : any ;
4234
4406
  initClientSide (adContainer : HTMLElement , video : HTMLMediaElement , adsRenderingSettings : google.ima.AdsRenderingSettings | null ) : any ;
4407
+ initMediaTailor (adContainer : HTMLElement , networkingEngine : shaka.net.NetworkingEngine , video : HTMLMediaElement ) : any ;
4235
4408
  initServerSide (adContainer : HTMLElement , video : HTMLMediaElement ) : any ;
4236
4409
  onAssetUnload ( ) : any ;
4237
4410
  onCueMetadataChange (value : shaka.extern.MetadataFrame ) : any ;
4238
4411
  onDashTimedMetadata (region : shaka.extern.TimelineRegionInfo ) : any ;
4239
4412
  onHlsTimedMetadata (metadata : shaka.extern.ID3Metadata , timestampOffset : number ) : any ;
4413
+ /**
4414
+ * Fired when the manifest is updated.
4415
+ */
4416
+ onManifestUpdated (isLive : boolean ) : any ;
4240
4417
  release ( ) : any ;
4241
4418
  replaceServerSideAdTagParameters (adTagParameters : object | null ) : any ;
4242
4419
  requestClientSideAds (imaRequest : google.ima.AdsRequest ) : any ;
4420
+ requestMediaTailorStream (url : string , adsParams : object | null , backupUrl ? : string ) : Promise < string > ;
4243
4421
  requestServerSideStream (imaRequest : google.ima.dai.api.StreamRequest , backupUrl ? : string ) : Promise < string > ;
4244
4422
  setLocale (locale : string ) : any ;
4245
4423
  updateClientSideAdsRenderingSettings (adsRenderingSettings : google.ima.AdsRenderingSettings ) : any ;
@@ -4285,6 +4463,10 @@ declare namespace shaka.extern {
4285
4463
  * @param pts PTS when this packet was received, in seconds.
4286
4464
  */
4287
4465
  extract (userDataSeiMessage : Uint8Array , pts : number ) : any ;
4466
+ /**
4467
+ * Returns the streams that the CEA decoder found.
4468
+ */
4469
+ getStreams ( ) : string [] ;
4288
4470
  }
4289
4471
  }
4290
4472
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/cea.js
@@ -4318,7 +4500,7 @@ declare namespace shaka.extern.ICeaParser {
4318
4500
  }
4319
4501
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/codecs.js
4320
4502
  declare namespace shaka.extern {
4321
- type MPEG_PES = { data : Uint8Array | null , dts : number | null , packetLength : number , pts : number | null } ;
4503
+ type MPEG_PES = { data : Uint8Array , dts : number | null , nalus : shaka.extern.VideoNalu [] , packetLength : number , pts : number | null } ;
4322
4504
  }
4323
4505
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/codecs.js
4324
4506
  declare namespace shaka.extern {
@@ -4359,10 +4541,6 @@ declare namespace shaka.extern {
4359
4541
  type FetchCryptoKeysFunction = ( ) => Promise < any > ;
4360
4542
  }
4361
4543
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4362
- declare namespace shaka.extern {
4363
- type HlsAes128Key = { cryptoKey ? : webCrypto.CryptoKey | null , fetchKey ? : shaka.extern.CreateSegmentIndexFunction , firstMediaSequenceNumber : number , iv ? : Uint8Array , method : string } ;
4364
- }
4365
- // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4366
4544
  declare namespace shaka.extern {
4367
4545
  type InitDataOverride = { initData : Uint8Array , initDataType : string , keyId : string | null } ;
4368
4546
  }
@@ -4380,16 +4558,20 @@ declare namespace shaka.extern {
4380
4558
  }
4381
4559
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4382
4560
  declare namespace shaka.extern {
4383
- type ServiceDescription = { maxLatency : number | null , maxPlaybackRate : number | null } ;
4561
+ type ServiceDescription = { maxLatency : number | null , maxPlaybackRate : number | null , minLatency : number | null , minPlaybackRate : number | null } ;
4384
4562
  }
4385
4563
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4386
4564
  declare namespace shaka.extern {
4387
- 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 , forced : boolean , frameRate ? : number , 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 , width ? : number } ;
4565
+ 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 , 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 } ;
4388
4566
  }
4389
4567
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4390
4568
  declare namespace shaka.extern {
4391
4569
  type Variant = { allowedByApplication : boolean , allowedByKeySystem : boolean , audio : shaka.extern.Stream | null , bandwidth : number , decodingInfos : ( any | null ) [] , disabledUntilTime : number , id : number , language : string , primary : boolean , video : shaka.extern.Stream | null } ;
4392
4570
  }
4571
+ // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest.js
4572
+ declare namespace shaka.extern {
4573
+ type aes128Key = { cryptoKey ? : webCrypto.CryptoKey | null , fetchKey ? : shaka.extern.CreateSegmentIndexFunction , firstMediaSequenceNumber : number , iv ? : Uint8Array , method : string } ;
4574
+ }
4393
4575
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js
4394
4576
  declare namespace shaka.extern {
4395
4577
  /**
@@ -4419,6 +4601,11 @@ declare namespace shaka.extern {
4419
4601
  * await parser.stop();
4420
4602
  */
4421
4603
  interface ManifestParser {
4604
+ /**
4605
+ * Tells the parser that a location should be banned. This is called on
4606
+ * retry.
4607
+ */
4608
+ banLocation (uri : string ) : any ;
4422
4609
  /**
4423
4610
  * Called by the Player to provide an updated configuration any time the
4424
4611
  * configuration changes. Will be called at least once before start().
@@ -4429,6 +4616,10 @@ declare namespace shaka.extern {
4429
4616
  * Implementing this is optional.
4430
4617
  */
4431
4618
  onExpirationUpdated (sessionId : string , expiration : number ) : any ;
4619
+ /**
4620
+ * Tells the parser that the initial variant has been chosen.
4621
+ */
4622
+ onInitialVariantChosen (variant : shaka.extern.Variant ) : any ;
4432
4623
  /**
4433
4624
  * Initialize and start the parser. When |start| resolves, it should return
4434
4625
  * the initial version of the manifest. |start| will only be called once. If
@@ -4463,7 +4654,7 @@ declare namespace shaka.extern.ManifestParser {
4463
4654
  }
4464
4655
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/manifest_parser.js
4465
4656
  declare namespace shaka.extern.ManifestParser {
4466
- type PlayerInterface = { enableLowLatencyMode : ( ) => any , filter : (a : shaka.extern.Manifest ) => Promise < any > , 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 , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any , updateDuration : ( ) => any } ;
4657
+ type PlayerInterface = { 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 , onTimelineRegionAdded : (a : shaka.extern.TimelineRegionInfo ) => any , updateDuration : ( ) => any } ;
4467
4658
  }
4468
4659
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/mp4_parser.js
4469
4660
  declare namespace shaka.extern {
@@ -4492,7 +4683,7 @@ declare namespace shaka.extern {
4492
4683
  * it before it is sent to the scheme plugin.
4493
4684
  * The RequestType describes the basic type of the request (manifest, segment,
4494
4685
  * etc). The optional RequestContext will be provided where applicable to
4495
- * provide additional infomation about the request. A request filter can run
4686
+ * provide additional information about the request. A request filter can run
4496
4687
  * asynchronously by returning a promise; in this case, the request will not be
4497
4688
  * sent until the promise is resolved.
4498
4689
  */
@@ -4509,7 +4700,7 @@ declare namespace shaka.extern {
4509
4700
  * it before it is returned.
4510
4701
  * The RequestType describes the basic type of the request (manifest, segment,
4511
4702
  * etc). The optional RequestContext will be provided where applicable to
4512
- * provide additional infomation about the request. A response filter can run
4703
+ * provide additional information about the request. A response filter can run
4513
4704
  * asynchronously by returning a promise.
4514
4705
  */
4515
4706
  type ResponseFilter = (a : shaka.net.NetworkingEngine.RequestType , b : shaka.extern.Response , c ? : shaka.extern.RequestContext ) => Promise < any > | void ;
@@ -4694,7 +4885,7 @@ declare namespace shaka.extern {
4694
4885
  }
4695
4886
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline.js
4696
4887
  declare namespace shaka.extern {
4697
- type StreamDB = { audioSamplingRate : number | null , channelsCount : number | null , closedCaptions : Map < string , string > | null , codecs : string , encrypted : boolean , external : boolean , forced : boolean , frameRate ? : number , 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 [] , width : number | null } ;
4888
+ 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 } ;
4698
4889
  }
4699
4890
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/offline_compat_v1.js
4700
4891
  declare namespace shaka.extern {
@@ -4770,11 +4961,11 @@ declare namespace shaka.extern {
4770
4961
  }
4771
4962
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4772
4963
  declare namespace shaka.extern {
4773
- type DashManifestConfiguration = { autoCorrectDrift : boolean , clockSyncUri : string , disableXlinkProcessing : boolean , ignoreDrmInfo : boolean , ignoreEmptyAdaptationSet : boolean , ignoreMaxSegmentDuration : boolean , ignoreMinBufferTime : boolean , ignoreSuggestedPresentationDelay : boolean , initialSegmentLimit : number , keySystemsByURI : { [ key: string ]: string } , manifestPreprocessor : (a : Element ) => any , sequenceMode : boolean , xlinkFailGracefully : boolean } ;
4964
+ 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 , sequenceMode : boolean , xlinkFailGracefully : boolean } ;
4774
4965
  }
4775
4966
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4776
4967
  declare namespace shaka.extern {
4777
- type DrmConfiguration = { advanced : { [ key: string ]: shaka.extern.AdvancedDrmConfiguration } | null , clearKeys : { [ key: string ]: string } , delayLicenseRequestUntilPlayed : 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 } ;
4968
+ 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 } ;
4778
4969
  }
4779
4970
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4780
4971
  declare namespace shaka.extern {
@@ -4790,7 +4981,7 @@ declare namespace shaka.extern {
4790
4981
  }
4791
4982
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4792
4983
  declare namespace shaka.extern {
4793
- type HlsManifestConfiguration = { defaultAudioCodec : string , defaultVideoCodec : string , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , useSafariBehaviorForLive : boolean } ;
4984
+ type HlsManifestConfiguration = { allowLowLatencyByteRangeOptimization : boolean , defaultAudioCodec : string , defaultVideoCodec : string , disableCodecGuessing : boolean , ignoreImageStreamFailures : boolean , ignoreManifestProgramDateTime : boolean , ignoreManifestTimestampsInSegmentsMode : boolean , ignoreTextStreamFailures : boolean , liveSegmentsDelay : number , mediaPlaylistFullMimeType : string , sequenceMode : boolean , useSafariBehaviorForLive : boolean } ;
4794
4985
  }
4795
4986
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4796
4987
  declare namespace shaka.extern {
@@ -4818,11 +5009,11 @@ declare namespace shaka.extern {
4818
5009
  }
4819
5010
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4820
5011
  declare namespace shaka.extern {
4821
- type MediaSourceConfiguration = { forceTransmux : boolean , insertFakeEncryptionInInit : boolean , sourceBufferExtraFeatures : string } ;
5012
+ type MediaSourceConfiguration = { codecSwitchingStrategy : shaka.config.CodecSwitchingStrategy , forceTransmux : boolean , insertFakeEncryptionInInit : boolean , sourceBufferExtraFeatures : string } ;
4822
5013
  }
4823
5014
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4824
5015
  declare namespace shaka.extern {
4825
- type MetadataFrame = { data : ArrayBuffer | null | string | number , description : string , key : string } ;
5016
+ type MetadataFrame = { data : ArrayBuffer | null | string | number , description : string , key : string , mimeType : string | null , pictureType : number | null } ;
4826
5017
  }
4827
5018
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4828
5019
  declare namespace shaka.extern {
@@ -4842,7 +5033,7 @@ declare namespace shaka.extern {
4842
5033
  }
4843
5034
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4844
5035
  declare namespace shaka.extern {
4845
- type PlayerConfiguration = { abr : shaka.extern.AbrConfiguration , abrFactory : shaka.extern.AbrManager.Factory , ads : shaka.extern.AdsConfiguration , autoShowText : shaka.config.AutoShowText , cmcd : shaka.extern.CmcdConfiguration , 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 , preferredAudioChannelCount : number , preferredAudioCodecs : string [] , preferredAudioLabel : string , preferredAudioLanguage : string , preferredDecodingAttributes : string [] , preferredTextLanguage : string , preferredTextRole : string , preferredVariantRole : string , preferredVideoCodecs : string [] , preferredVideoHdrLevel : string , restrictions : shaka.extern.Restrictions , streaming : shaka.extern.StreamingConfiguration , textDisplayFactory : shaka.extern.TextDisplayer.Factory } ;
5036
+ type PlayerConfiguration = { abr : shaka.extern.AbrConfiguration , abrFactory : shaka.extern.AbrManager.Factory , ads : shaka.extern.AdsConfiguration , autoShowText : shaka.config.AutoShowText , cmcd : shaka.extern.CmcdConfiguration , 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 , preferredAudioChannelCount : number , preferredAudioCodecs : string [] , preferredAudioLabel : string , preferredAudioLanguage : string , preferredDecodingAttributes : string [] , preferredTextLanguage : string , preferredTextRole : string , preferredVariantRole : string , preferredVideoCodecs : string [] , preferredVideoHdrLevel : string , preferredVideoLayout : string , restrictions : shaka.extern.Restrictions , streaming : shaka.extern.StreamingConfiguration , textDisplayFactory : shaka.extern.TextDisplayer.Factory } ;
4846
5037
  }
4847
5038
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4848
5039
  declare namespace shaka.extern {
@@ -4862,7 +5053,7 @@ declare namespace shaka.extern {
4862
5053
  }
4863
5054
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4864
5055
  declare namespace shaka.extern {
4865
- type StreamingConfiguration = { alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , dispatchAllEmsgBoxes : boolean , durationBackoff : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , liveSync : boolean , liveSyncMaxLatency : number , liveSyncPlaybackRate : number , lowLatencyMode : boolean , maxDisabledTime : number , observeQualityChanges : boolean , parsePrftBox : boolean , preferNativeHls : boolean , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekOffset : number , segmentPrefetchLimit : number , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsOnSafari : boolean } ;
5056
+ type StreamingConfiguration = { alwaysStreamText : boolean , autoLowLatencyMode : boolean , bufferBehind : number , bufferingGoal : number , dispatchAllEmsgBoxes : boolean , durationBackoff : number , failureCallback : (a : shaka.util.Error ) => any , forceHTTPS : boolean , gapDetectionThreshold : number , gapJumpTimerTime : number , ignoreTextStreamFailures : boolean , inaccurateManifestTolerance : number , liveSync : boolean , liveSyncMaxLatency : number , liveSyncMinLatency : number , liveSyncMinPlaybackRate : number , liveSyncPlaybackRate : number , lowLatencyMode : boolean , maxDisabledTime : number , observeQualityChanges : boolean , parsePrftBox : boolean , preferNativeHls : boolean , rebufferingGoal : number , retryParameters : shaka.extern.RetryParameters , safeSeekOffset : number , segmentPrefetchLimit : number , stallEnabled : boolean , stallSkip : number , stallThreshold : number , startAtSegmentBoundary : boolean , updateIntervalSeconds : number , useNativeHlsOnSafari : boolean } ;
4866
5057
  }
4867
5058
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4868
5059
  declare namespace shaka.extern {
@@ -4870,7 +5061,7 @@ declare namespace shaka.extern {
4870
5061
  }
4871
5062
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4872
5063
  declare namespace shaka.extern {
4873
- type Thumbnail = { duration : number , height : number , imageHeight : number , imageWidth : number , positionX : number , positionY : number , sprite : boolean , startTime : number , uris : string [] , width : number } ;
5064
+ type Thumbnail = { duration : number , height : number , imageHeight : number , imageWidth : number , positionX : number , positionY : number , segment : shaka.media.SegmentReference | null , sprite : boolean , startTime : number , uris : string [] , width : number } ;
4874
5065
  }
4875
5066
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4876
5067
  declare namespace shaka.extern {
@@ -4878,7 +5069,7 @@ declare namespace shaka.extern {
4878
5069
  }
4879
5070
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4880
5071
  declare namespace shaka.extern {
4881
- 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 , videoMimeType : string | null , width : number | null } ;
5072
+ 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 } ;
4882
5073
  }
4883
5074
  // Generated from /home/runner/work/shaka-player/shaka-player/externs/shaka/player.js
4884
5075
  declare namespace shaka.extern {
@@ -4938,8 +5129,9 @@ declare namespace shaka.extern {
4938
5129
  * Parse a media segment and return the cues that make up the segment.
4939
5130
  * @param data The next section of buffer.
4940
5131
  * @param timeContext The time information that should be used to adjust the times values for each cue.
5132
+ * @param uri The media uri.
4941
5133
  */
4942
- parseMedia (data : Uint8Array , timeContext : shaka.extern.TextParser.TimeContext ) : shaka.text.Cue [] ;
5134
+ parseMedia (data : Uint8Array , timeContext : shaka.extern.TextParser.TimeContext , uri : string | undefined | null ) : shaka.text.Cue [] ;
4943
5135
  /**
4944
5136
  * Notifies the manifest type.
4945
5137
  */
@@ -4978,7 +5170,7 @@ declare namespace shaka.extern {
4978
5170
  /**
4979
5171
  * Returns the original mimetype of the transmuxer.
4980
5172
  */
4981
- getOrginalMimeType ( ) : string ;
5173
+ getOriginalMimeType ( ) : string ;
4982
5174
  /**
4983
5175
  * Check if the mime type and the content type is supported.
4984
5176
  */