rx-player 4.5.0 → 4.6.0-dev.2026100600

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 (3763) hide show
  1. package/CHANGELOG.md +55 -13
  2. package/README.md +1 -1
  3. package/VERSION +1 -1
  4. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
  5. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.js +20 -5
  6. package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  7. package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +23 -5
  8. package/dist/commonjs/__GENERATED_CODE/index.d.ts +2 -2
  9. package/dist/commonjs/__GENERATED_CODE/index.d.ts.map +1 -1
  10. package/dist/commonjs/__GENERATED_CODE/index.js +19 -6
  11. package/dist/commonjs/compat/add_class_name.js +16 -12
  12. package/dist/commonjs/compat/add_text_track.d.ts +1 -1
  13. package/dist/commonjs/compat/add_text_track.d.ts.map +1 -1
  14. package/dist/commonjs/compat/add_text_track.js +24 -15
  15. package/dist/commonjs/compat/browser_compatibility_types.d.ts +8 -7
  16. package/dist/commonjs/compat/browser_compatibility_types.d.ts.map +1 -1
  17. package/dist/commonjs/compat/browser_compatibility_types.js +24 -16
  18. package/dist/commonjs/compat/browser_version.js +30 -13
  19. package/dist/commonjs/compat/can_patch_isobmff.js +18 -9
  20. package/dist/commonjs/compat/can_patch_out_pssh.js +19 -9
  21. package/dist/commonjs/compat/can_preload_before_play.js +18 -10
  22. package/dist/commonjs/compat/can_rely_on_request_media_key_system_access.d.ts +7 -2
  23. package/dist/commonjs/compat/can_rely_on_request_media_key_system_access.d.ts.map +1 -1
  24. package/dist/commonjs/compat/can_rely_on_request_media_key_system_access.js +22 -34
  25. package/dist/commonjs/compat/can_rely_on_video_visibility_and_size.js +20 -10
  26. package/dist/commonjs/compat/can_reuse_media_keys.js +19 -14
  27. package/dist/commonjs/compat/change_source_buffer_type.d.ts +1 -1
  28. package/dist/commonjs/compat/change_source_buffer_type.d.ts.map +1 -1
  29. package/dist/commonjs/compat/change_source_buffer_type.js +25 -10
  30. package/dist/commonjs/compat/clear_element_src.d.ts +1 -1
  31. package/dist/commonjs/compat/clear_element_src.d.ts.map +1 -1
  32. package/dist/commonjs/compat/clear_element_src.js +23 -14
  33. package/dist/commonjs/compat/disable_remote_playback_on_managed_media_source.d.ts +2 -2
  34. package/dist/commonjs/compat/disable_remote_playback_on_managed_media_source.d.ts.map +1 -1
  35. package/dist/commonjs/compat/disable_remote_playback_on_managed_media_source.js +21 -12
  36. package/dist/commonjs/compat/eme/close_session.d.ts +1 -1
  37. package/dist/commonjs/compat/eme/close_session.d.ts.map +1 -1
  38. package/dist/commonjs/compat/eme/close_session.js +266 -90
  39. package/dist/commonjs/compat/eme/constants.js +13 -8
  40. package/dist/commonjs/compat/eme/custom_key_system_access.d.ts +1 -1
  41. package/dist/commonjs/compat/eme/custom_key_system_access.d.ts.map +1 -1
  42. package/dist/commonjs/compat/eme/custom_key_system_access.js +58 -34
  43. package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts +2 -2
  44. package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts.map +1 -1
  45. package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.js +246 -113
  46. package/dist/commonjs/compat/eme/custom_media_keys/index.d.ts +5 -5
  47. package/dist/commonjs/compat/eme/custom_media_keys/index.d.ts.map +1 -1
  48. package/dist/commonjs/compat/eme/custom_media_keys/index.js +75 -15
  49. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +1 -1
  50. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -1
  51. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.js +35 -21
  52. package/dist/commonjs/compat/eme/custom_media_keys/ms_media_keys_constructor.js +20 -12
  53. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +1 -1
  54. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -1
  55. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.js +227 -118
  56. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts +1 -1
  57. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -1
  58. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.js +257 -149
  59. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts.map +1 -1
  60. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +19 -11
  61. package/dist/commonjs/compat/eme/eme-api-implementation.d.ts +3 -3
  62. package/dist/commonjs/compat/eme/eme-api-implementation.d.ts.map +1 -1
  63. package/dist/commonjs/compat/eme/eme-api-implementation.js +191 -148
  64. package/dist/commonjs/compat/eme/generate_key_request.d.ts +1 -1
  65. package/dist/commonjs/compat/eme/generate_key_request.d.ts.map +1 -1
  66. package/dist/commonjs/compat/eme/generate_key_request.js +73 -92
  67. package/dist/commonjs/compat/eme/get_init_data.d.ts +1 -1
  68. package/dist/commonjs/compat/eme/get_init_data.d.ts.map +1 -1
  69. package/dist/commonjs/compat/eme/get_init_data.js +78 -48
  70. package/dist/commonjs/compat/eme/get_uuid_kid_from_keystatus_kid.js +20 -13
  71. package/dist/commonjs/compat/eme/get_webkit_fairplay_initdata.js +21 -20
  72. package/dist/commonjs/compat/eme/index.d.ts +7 -7
  73. package/dist/commonjs/compat/eme/index.d.ts.map +1 -1
  74. package/dist/commonjs/compat/eme/index.js +38 -14
  75. package/dist/commonjs/compat/eme/load_session.d.ts +1 -1
  76. package/dist/commonjs/compat/eme/load_session.d.ts.map +1 -1
  77. package/dist/commonjs/compat/eme/load_session.js +170 -60
  78. package/dist/commonjs/compat/eme/set_media_keys.d.ts +2 -2
  79. package/dist/commonjs/compat/eme/set_media_keys.d.ts.map +1 -1
  80. package/dist/commonjs/compat/eme/set_media_keys.js +33 -21
  81. package/dist/commonjs/compat/enable_audio_track.d.ts +1 -1
  82. package/dist/commonjs/compat/enable_audio_track.d.ts.map +1 -1
  83. package/dist/commonjs/compat/enable_audio_track.js +18 -7
  84. package/dist/commonjs/compat/env_detector.d.ts +2 -0
  85. package/dist/commonjs/compat/env_detector.d.ts.map +1 -1
  86. package/dist/commonjs/compat/env_detector.js +88 -123
  87. package/dist/commonjs/compat/event_listeners.d.ts +4 -4
  88. package/dist/commonjs/compat/event_listeners.d.ts.map +1 -1
  89. package/dist/commonjs/compat/event_listeners.js +262 -183
  90. package/dist/commonjs/compat/force_media_key_instantiation_if_needed.d.ts +24 -0
  91. package/dist/commonjs/compat/force_media_key_instantiation_if_needed.d.ts.map +1 -0
  92. package/dist/commonjs/compat/force_media_key_instantiation_if_needed.js +226 -0
  93. package/dist/commonjs/compat/generate_init_data.d.ts +8 -0
  94. package/dist/commonjs/compat/generate_init_data.d.ts.map +1 -1
  95. package/dist/commonjs/compat/generate_init_data.js +64 -47
  96. package/dist/commonjs/compat/get_start_date.d.ts +1 -1
  97. package/dist/commonjs/compat/get_start_date.d.ts.map +1 -1
  98. package/dist/commonjs/compat/get_start_date.js +17 -9
  99. package/dist/commonjs/compat/has_issues_with_high_media_source_duration.js +19 -9
  100. package/dist/commonjs/compat/has_mse_in_worker.js +12 -5
  101. package/dist/commonjs/compat/has_webassembly.js +15 -4
  102. package/dist/commonjs/compat/has_worker_api.js +21 -8
  103. package/dist/commonjs/compat/is_codec_supported.d.ts +4 -3
  104. package/dist/commonjs/compat/is_codec_supported.d.ts.map +1 -1
  105. package/dist/commonjs/compat/is_codec_supported.js +35 -34
  106. package/dist/commonjs/compat/is_seeking_approximate.js +20 -10
  107. package/dist/commonjs/compat/is_vtt_cue.d.ts +1 -1
  108. package/dist/commonjs/compat/is_vtt_cue.d.ts.map +1 -1
  109. package/dist/commonjs/compat/is_vtt_cue.js +24 -8
  110. package/dist/commonjs/compat/make_vtt_cue.d.ts +1 -1
  111. package/dist/commonjs/compat/make_vtt_cue.d.ts.map +1 -1
  112. package/dist/commonjs/compat/make_vtt_cue.js +26 -14
  113. package/dist/commonjs/compat/may_media_element_fail_on_undecipherable_data.js +19 -9
  114. package/dist/commonjs/compat/on_height_width_change.d.ts +2 -2
  115. package/dist/commonjs/compat/on_height_width_change.d.ts.map +1 -1
  116. package/dist/commonjs/compat/on_height_width_change.js +42 -27
  117. package/dist/commonjs/compat/patch_webkit_source_buffer.js +30 -22
  118. package/dist/commonjs/compat/remove_cue.d.ts +1 -1
  119. package/dist/commonjs/compat/remove_cue.d.ts.map +1 -1
  120. package/dist/commonjs/compat/remove_cue.js +28 -21
  121. package/dist/commonjs/compat/reset_media_element.d.ts +1 -1
  122. package/dist/commonjs/compat/reset_media_element.d.ts.map +1 -1
  123. package/dist/commonjs/compat/reset_media_element.js +29 -14
  124. package/dist/commonjs/compat/should_await_set_media_keys.js +19 -11
  125. package/dist/commonjs/compat/should_favour_custom_safari_EME.js +21 -13
  126. package/dist/commonjs/compat/should_patch_out_dolby_vision_config_data_from_mp4.js +22 -11
  127. package/dist/commonjs/compat/should_reload_media_source_on_decipherability_update.js +19 -11
  128. package/dist/commonjs/compat/should_renew_media_key_system_access.d.ts +11 -0
  129. package/dist/commonjs/compat/should_renew_media_key_system_access.d.ts.map +1 -1
  130. package/dist/commonjs/compat/should_renew_media_key_system_access.js +31 -13
  131. package/dist/commonjs/compat/should_seek_at_zero.js +19 -9
  132. package/dist/commonjs/compat/should_unset_media_keys.js +20 -10
  133. package/dist/commonjs/compat/should_validate_metadata.js +20 -10
  134. package/dist/commonjs/compat/should_wait_for_data_before_loaded.js +21 -14
  135. package/dist/commonjs/compat/should_wait_for_have_enough_data.js +19 -9
  136. package/dist/commonjs/config.d.ts +2 -2
  137. package/dist/commonjs/config.d.ts.map +1 -1
  138. package/dist/commonjs/config.js +108 -58
  139. package/dist/commonjs/core/adaptive/adaptive_representation_selector.d.ts +9 -9
  140. package/dist/commonjs/core/adaptive/adaptive_representation_selector.d.ts.map +1 -1
  141. package/dist/commonjs/core/adaptive/adaptive_representation_selector.js +133 -142
  142. package/dist/commonjs/core/adaptive/buffer_based_chooser.d.ts +1 -1
  143. package/dist/commonjs/core/adaptive/buffer_based_chooser.d.ts.map +1 -1
  144. package/dist/commonjs/core/adaptive/buffer_based_chooser.js +144 -138
  145. package/dist/commonjs/core/adaptive/guess_based_chooser.d.ts +4 -4
  146. package/dist/commonjs/core/adaptive/guess_based_chooser.d.ts.map +1 -1
  147. package/dist/commonjs/core/adaptive/guess_based_chooser.js +171 -168
  148. package/dist/commonjs/core/adaptive/index.d.ts +2 -2
  149. package/dist/commonjs/core/adaptive/index.d.ts.map +1 -1
  150. package/dist/commonjs/core/adaptive/index.js +17 -5
  151. package/dist/commonjs/core/adaptive/network_analyzer.d.ts +4 -4
  152. package/dist/commonjs/core/adaptive/network_analyzer.d.ts.map +1 -1
  153. package/dist/commonjs/core/adaptive/network_analyzer.js +154 -147
  154. package/dist/commonjs/core/adaptive/utils/bandwidth_estimator.js +79 -46
  155. package/dist/commonjs/core/adaptive/utils/ewma.js +54 -27
  156. package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.d.ts +1 -1
  157. package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.d.ts.map +1 -1
  158. package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.js +23 -9
  159. package/dist/commonjs/core/adaptive/utils/filter_by_resolution.d.ts +1 -1
  160. package/dist/commonjs/core/adaptive/utils/filter_by_resolution.d.ts.map +1 -1
  161. package/dist/commonjs/core/adaptive/utils/filter_by_resolution.js +25 -16
  162. package/dist/commonjs/core/adaptive/utils/get_buffer_levels.js +22 -17
  163. package/dist/commonjs/core/adaptive/utils/last_estimate_storage.d.ts +1 -1
  164. package/dist/commonjs/core/adaptive/utils/last_estimate_storage.d.ts.map +1 -1
  165. package/dist/commonjs/core/adaptive/utils/last_estimate_storage.js +43 -15
  166. package/dist/commonjs/core/adaptive/utils/pending_requests_store.d.ts +1 -1
  167. package/dist/commonjs/core/adaptive/utils/pending_requests_store.d.ts.map +1 -1
  168. package/dist/commonjs/core/adaptive/utils/pending_requests_store.js +96 -52
  169. package/dist/commonjs/core/adaptive/utils/representation_score_calculator.d.ts +1 -1
  170. package/dist/commonjs/core/adaptive/utils/representation_score_calculator.d.ts.map +1 -1
  171. package/dist/commonjs/core/adaptive/utils/representation_score_calculator.js +93 -86
  172. package/dist/commonjs/core/adaptive/utils/select_optimal_representation.d.ts +1 -1
  173. package/dist/commonjs/core/adaptive/utils/select_optimal_representation.d.ts.map +1 -1
  174. package/dist/commonjs/core/adaptive/utils/select_optimal_representation.js +21 -10
  175. package/dist/commonjs/core/cmcd/cmcd_data_builder.d.ts +4 -4
  176. package/dist/commonjs/core/cmcd/cmcd_data_builder.d.ts.map +1 -1
  177. package/dist/commonjs/core/cmcd/cmcd_data_builder.js +325 -313
  178. package/dist/commonjs/core/cmcd/index.d.ts +2 -2
  179. package/dist/commonjs/core/cmcd/index.d.ts.map +1 -1
  180. package/dist/commonjs/core/cmcd/index.js +16 -3
  181. package/dist/commonjs/core/entry/FreezeResolver.d.ts +3 -3
  182. package/dist/commonjs/core/entry/FreezeResolver.d.ts.map +1 -1
  183. package/dist/commonjs/core/entry/FreezeResolver.js +308 -324
  184. package/dist/commonjs/core/entry/content_preparer.d.ts +26 -30
  185. package/dist/commonjs/core/entry/content_preparer.d.ts.map +1 -1
  186. package/dist/commonjs/core/entry/content_preparer.js +311 -266
  187. package/dist/commonjs/core/entry/content_time_boundaries_observer.d.ts +5 -5
  188. package/dist/commonjs/core/entry/content_time_boundaries_observer.d.ts.map +1 -1
  189. package/dist/commonjs/core/entry/content_time_boundaries_observer.js +450 -347
  190. package/dist/commonjs/core/entry/core_entry.d.ts +4 -4
  191. package/dist/commonjs/core/entry/core_entry.d.ts.map +1 -1
  192. package/dist/commonjs/core/entry/core_entry.js +625 -527
  193. package/dist/commonjs/core/entry/core_text_displayer_interface.d.ts +4 -4
  194. package/dist/commonjs/core/entry/core_text_displayer_interface.d.ts.map +1 -1
  195. package/dist/commonjs/core/entry/core_text_displayer_interface.js +167 -113
  196. package/dist/commonjs/core/entry/create_content_time_boundaries_observer.d.ts +7 -7
  197. package/dist/commonjs/core/entry/create_content_time_boundaries_observer.d.ts.map +1 -1
  198. package/dist/commonjs/core/entry/create_content_time_boundaries_observer.js +26 -15
  199. package/dist/commonjs/core/entry/get_buffered_data_per_media_buffer.d.ts +4 -4
  200. package/dist/commonjs/core/entry/get_buffered_data_per_media_buffer.d.ts.map +1 -1
  201. package/dist/commonjs/core/entry/get_buffered_data_per_media_buffer.js +23 -8
  202. package/dist/commonjs/core/entry/get_thumbnail_data.d.ts +3 -3
  203. package/dist/commonjs/core/entry/get_thumbnail_data.d.ts.map +1 -1
  204. package/dist/commonjs/core/entry/get_thumbnail_data.js +152 -45
  205. package/dist/commonjs/core/entry/index.d.ts +3 -3
  206. package/dist/commonjs/core/entry/index.d.ts.map +1 -1
  207. package/dist/commonjs/core/entry/index.js +16 -3
  208. package/dist/commonjs/core/entry/track_choice_setter.d.ts +4 -4
  209. package/dist/commonjs/core/entry/track_choice_setter.d.ts.map +1 -1
  210. package/dist/commonjs/core/entry/track_choice_setter.js +187 -143
  211. package/dist/commonjs/core/entry/utils.d.ts +5 -5
  212. package/dist/commonjs/core/entry/utils.d.ts.map +1 -1
  213. package/dist/commonjs/core/entry/utils.js +117 -111
  214. package/dist/commonjs/core/fetchers/cdn_prioritizer.d.ts +3 -3
  215. package/dist/commonjs/core/fetchers/cdn_prioritizer.d.ts.map +1 -1
  216. package/dist/commonjs/core/fetchers/cdn_prioritizer.js +225 -131
  217. package/dist/commonjs/core/fetchers/index.d.ts +7 -7
  218. package/dist/commonjs/core/fetchers/index.d.ts.map +1 -1
  219. package/dist/commonjs/core/fetchers/index.js +33 -12
  220. package/dist/commonjs/core/fetchers/manifest/index.d.ts +2 -2
  221. package/dist/commonjs/core/fetchers/manifest/index.d.ts.map +1 -1
  222. package/dist/commonjs/core/fetchers/manifest/index.js +17 -5
  223. package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.d.ts +5 -5
  224. package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.d.ts.map +1 -1
  225. package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.js +737 -541
  226. package/dist/commonjs/core/fetchers/segment/index.d.ts +4 -4
  227. package/dist/commonjs/core/fetchers/segment/index.d.ts.map +1 -1
  228. package/dist/commonjs/core/fetchers/segment/index.js +17 -5
  229. package/dist/commonjs/core/fetchers/segment/initialization_segment_cache.d.ts +1 -1
  230. package/dist/commonjs/core/fetchers/segment/initialization_segment_cache.d.ts.map +1 -1
  231. package/dist/commonjs/core/fetchers/segment/initialization_segment_cache.js +56 -25
  232. package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.d.ts +4 -4
  233. package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.d.ts.map +1 -1
  234. package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.js +23 -16
  235. package/dist/commonjs/core/fetchers/segment/segment_fetcher.d.ts +8 -8
  236. package/dist/commonjs/core/fetchers/segment/segment_fetcher.d.ts.map +1 -1
  237. package/dist/commonjs/core/fetchers/segment/segment_fetcher.js +298 -175
  238. package/dist/commonjs/core/fetchers/segment/segment_queue.d.ts +6 -6
  239. package/dist/commonjs/core/fetchers/segment/segment_queue.d.ts.map +1 -1
  240. package/dist/commonjs/core/fetchers/segment/segment_queue.js +446 -363
  241. package/dist/commonjs/core/fetchers/segment/segment_queue_creator.d.ts +7 -7
  242. package/dist/commonjs/core/fetchers/segment/segment_queue_creator.d.ts.map +1 -1
  243. package/dist/commonjs/core/fetchers/segment/segment_queue_creator.js +96 -44
  244. package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts +1 -1
  245. package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts.map +1 -1
  246. package/dist/commonjs/core/fetchers/segment/task_prioritizer.js +370 -305
  247. package/dist/commonjs/core/fetchers/thumbnails/index.d.ts +2 -2
  248. package/dist/commonjs/core/fetchers/thumbnails/index.d.ts.map +1 -1
  249. package/dist/commonjs/core/fetchers/thumbnails/index.js +16 -3
  250. package/dist/commonjs/core/fetchers/thumbnails/thumbnail_fetcher.d.ts +5 -5
  251. package/dist/commonjs/core/fetchers/thumbnails/thumbnail_fetcher.d.ts.map +1 -1
  252. package/dist/commonjs/core/fetchers/thumbnails/thumbnail_fetcher.js +322 -139
  253. package/dist/commonjs/core/fetchers/utils/error_selector.d.ts +1 -1
  254. package/dist/commonjs/core/fetchers/utils/error_selector.d.ts.map +1 -1
  255. package/dist/commonjs/core/fetchers/utils/error_selector.js +23 -12
  256. package/dist/commonjs/core/fetchers/utils/retry_after_delay.d.ts +7 -0
  257. package/dist/commonjs/core/fetchers/utils/retry_after_delay.d.ts.map +1 -0
  258. package/dist/commonjs/core/fetchers/utils/retry_after_delay.js +91 -0
  259. package/dist/commonjs/core/fetchers/utils/schedule_request.d.ts +3 -3
  260. package/dist/commonjs/core/fetchers/utils/schedule_request.d.ts.map +1 -1
  261. package/dist/commonjs/core/fetchers/utils/schedule_request.js +309 -230
  262. package/dist/commonjs/core/segment_sinks/garbage_collector.d.ts +5 -5
  263. package/dist/commonjs/core/segment_sinks/garbage_collector.d.ts.map +1 -1
  264. package/dist/commonjs/core/segment_sinks/garbage_collector.js +275 -131
  265. package/dist/commonjs/core/segment_sinks/implementations/audio_video/audio_video_segment_sink.d.ts +4 -4
  266. package/dist/commonjs/core/segment_sinks/implementations/audio_video/audio_video_segment_sink.d.ts.map +1 -1
  267. package/dist/commonjs/core/segment_sinks/implementations/audio_video/audio_video_segment_sink.js +479 -269
  268. package/dist/commonjs/core/segment_sinks/implementations/audio_video/index.d.ts +1 -1
  269. package/dist/commonjs/core/segment_sinks/implementations/audio_video/index.d.ts.map +1 -1
  270. package/dist/commonjs/core/segment_sinks/implementations/audio_video/index.js +17 -5
  271. package/dist/commonjs/core/segment_sinks/implementations/index.d.ts +3 -3
  272. package/dist/commonjs/core/segment_sinks/implementations/index.d.ts.map +1 -1
  273. package/dist/commonjs/core/segment_sinks/implementations/index.js +29 -20
  274. package/dist/commonjs/core/segment_sinks/implementations/text/index.d.ts +2 -2
  275. package/dist/commonjs/core/segment_sinks/implementations/text/index.d.ts.map +1 -1
  276. package/dist/commonjs/core/segment_sinks/implementations/text/index.js +16 -3
  277. package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_sink.d.ts +5 -5
  278. package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_sink.d.ts.map +1 -1
  279. package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_sink.js +394 -203
  280. package/dist/commonjs/core/segment_sinks/implementations/types.d.ts +4 -4
  281. package/dist/commonjs/core/segment_sinks/implementations/types.d.ts.map +1 -1
  282. package/dist/commonjs/core/segment_sinks/implementations/types.js +73 -69
  283. package/dist/commonjs/core/segment_sinks/implementations/utils/manual_time_ranges.js +97 -49
  284. package/dist/commonjs/core/segment_sinks/index.d.ts +6 -6
  285. package/dist/commonjs/core/segment_sinks/index.d.ts.map +1 -1
  286. package/dist/commonjs/core/segment_sinks/index.js +40 -14
  287. package/dist/commonjs/core/segment_sinks/inventory/buffered_history.d.ts +1 -1
  288. package/dist/commonjs/core/segment_sinks/inventory/buffered_history.d.ts.map +1 -1
  289. package/dist/commonjs/core/segment_sinks/inventory/buffered_history.js +96 -76
  290. package/dist/commonjs/core/segment_sinks/inventory/index.d.ts +5 -5
  291. package/dist/commonjs/core/segment_sinks/inventory/index.d.ts.map +1 -1
  292. package/dist/commonjs/core/segment_sinks/inventory/index.js +29 -9
  293. package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.d.ts +4 -4
  294. package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.d.ts.map +1 -1
  295. package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.js +756 -773
  296. package/dist/commonjs/core/segment_sinks/inventory/types.d.ts +1 -1
  297. package/dist/commonjs/core/segment_sinks/inventory/types.d.ts.map +1 -1
  298. package/dist/commonjs/core/segment_sinks/inventory/types.js +4 -3
  299. package/dist/commonjs/core/segment_sinks/inventory/utils.d.ts +2 -2
  300. package/dist/commonjs/core/segment_sinks/inventory/utils.d.ts.map +1 -1
  301. package/dist/commonjs/core/segment_sinks/inventory/utils.js +34 -34
  302. package/dist/commonjs/core/segment_sinks/segment_sinks_store.d.ts +6 -6
  303. package/dist/commonjs/core/segment_sinks/segment_sinks_store.d.ts.map +1 -1
  304. package/dist/commonjs/core/segment_sinks/segment_sinks_store.js +311 -256
  305. package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts +2 -2
  306. package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts.map +1 -1
  307. package/dist/commonjs/core/stream/adaptation/adaptation_stream.js +456 -257
  308. package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.d.ts +4 -4
  309. package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.d.ts.map +1 -1
  310. package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.js +98 -71
  311. package/dist/commonjs/core/stream/adaptation/index.d.ts +2 -2
  312. package/dist/commonjs/core/stream/adaptation/index.d.ts.map +1 -1
  313. package/dist/commonjs/core/stream/adaptation/index.js +17 -5
  314. package/dist/commonjs/core/stream/adaptation/types.d.ts +8 -8
  315. package/dist/commonjs/core/stream/adaptation/types.d.ts.map +1 -1
  316. package/dist/commonjs/core/stream/adaptation/types.js +3 -1
  317. package/dist/commonjs/core/stream/index.d.ts +5 -5
  318. package/dist/commonjs/core/stream/index.d.ts.map +1 -1
  319. package/dist/commonjs/core/stream/index.js +17 -5
  320. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.d.ts +3 -3
  321. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.d.ts.map +1 -1
  322. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.js +99 -82
  323. package/dist/commonjs/core/stream/orchestrator/index.d.ts +2 -2
  324. package/dist/commonjs/core/stream/orchestrator/index.d.ts.map +1 -1
  325. package/dist/commonjs/core/stream/orchestrator/index.js +17 -5
  326. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts +9 -9
  327. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
  328. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.js +427 -262
  329. package/dist/commonjs/core/stream/period/index.d.ts +2 -2
  330. package/dist/commonjs/core/stream/period/index.d.ts.map +1 -1
  331. package/dist/commonjs/core/stream/period/index.js +17 -5
  332. package/dist/commonjs/core/stream/period/period_stream.d.ts +2 -2
  333. package/dist/commonjs/core/stream/period/period_stream.d.ts.map +1 -1
  334. package/dist/commonjs/core/stream/period/period_stream.js +566 -325
  335. package/dist/commonjs/core/stream/period/types.d.ts +15 -15
  336. package/dist/commonjs/core/stream/period/types.d.ts.map +1 -1
  337. package/dist/commonjs/core/stream/period/types.js +3 -1
  338. package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +5 -5
  339. package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.d.ts.map +1 -1
  340. package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.js +101 -75
  341. package/dist/commonjs/core/stream/representation/encryption_data_notifier.d.ts +2 -2
  342. package/dist/commonjs/core/stream/representation/encryption_data_notifier.d.ts.map +1 -1
  343. package/dist/commonjs/core/stream/representation/encryption_data_notifier.js +75 -61
  344. package/dist/commonjs/core/stream/representation/index.d.ts +2 -2
  345. package/dist/commonjs/core/stream/representation/index.d.ts.map +1 -1
  346. package/dist/commonjs/core/stream/representation/index.js +17 -5
  347. package/dist/commonjs/core/stream/representation/representation_stream.d.ts +2 -2
  348. package/dist/commonjs/core/stream/representation/representation_stream.d.ts.map +1 -1
  349. package/dist/commonjs/core/stream/representation/representation_stream.js +137 -107
  350. package/dist/commonjs/core/stream/representation/types.d.ts +9 -9
  351. package/dist/commonjs/core/stream/representation/types.d.ts.map +1 -1
  352. package/dist/commonjs/core/stream/representation/types.js +3 -1
  353. package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.d.ts +6 -6
  354. package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.d.ts.map +1 -1
  355. package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.js +242 -90
  356. package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.d.ts +3 -3
  357. package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.d.ts.map +1 -1
  358. package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.js +68 -58
  359. package/dist/commonjs/core/stream/representation/utils/get_buffer_status.d.ts +4 -4
  360. package/dist/commonjs/core/stream/representation/utils/get_buffer_status.d.ts.map +1 -1
  361. package/dist/commonjs/core/stream/representation/utils/get_buffer_status.js +115 -103
  362. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.d.ts +2 -2
  363. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.d.ts.map +1 -1
  364. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.js +97 -119
  365. package/dist/commonjs/core/stream/representation/utils/get_segment_priority.js +19 -9
  366. package/dist/commonjs/core/stream/representation/utils/push_init_segment.d.ts +6 -6
  367. package/dist/commonjs/core/stream/representation/utils/push_init_segment.d.ts.map +1 -1
  368. package/dist/commonjs/core/stream/representation/utils/push_init_segment.js +173 -53
  369. package/dist/commonjs/core/stream/representation/utils/push_media_segment.d.ts +7 -7
  370. package/dist/commonjs/core/stream/representation/utils/push_media_segment.d.ts.map +1 -1
  371. package/dist/commonjs/core/stream/representation/utils/push_media_segment.js +182 -64
  372. package/dist/commonjs/core/types.d.ts +14 -14
  373. package/dist/commonjs/core/types.d.ts.map +1 -1
  374. package/dist/commonjs/core/types.js +4 -2
  375. package/dist/commonjs/default_config.d.ts +8 -0
  376. package/dist/commonjs/default_config.d.ts.map +1 -1
  377. package/dist/commonjs/default_config.js +191 -266
  378. package/dist/commonjs/errors/custom_loader_error.js +116 -30
  379. package/dist/commonjs/errors/encrypted_media_error.d.ts +2 -2
  380. package/dist/commonjs/errors/encrypted_media_error.d.ts.map +1 -1
  381. package/dist/commonjs/errors/encrypted_media_error.js +152 -43
  382. package/dist/commonjs/errors/error_codes.d.ts +1 -1
  383. package/dist/commonjs/errors/error_codes.d.ts.map +1 -1
  384. package/dist/commonjs/errors/error_codes.js +25 -10
  385. package/dist/commonjs/errors/error_message.js +11 -6
  386. package/dist/commonjs/errors/format_error.d.ts +1 -1
  387. package/dist/commonjs/errors/format_error.d.ts.map +1 -1
  388. package/dist/commonjs/errors/format_error.js +29 -13
  389. package/dist/commonjs/errors/index.d.ts +14 -14
  390. package/dist/commonjs/errors/index.d.ts.map +1 -1
  391. package/dist/commonjs/errors/index.js +92 -25
  392. package/dist/commonjs/errors/is_known_error.d.ts +1 -1
  393. package/dist/commonjs/errors/is_known_error.d.ts.map +1 -1
  394. package/dist/commonjs/errors/is_known_error.js +28 -16
  395. package/dist/commonjs/errors/media_error.d.ts +2 -2
  396. package/dist/commonjs/errors/media_error.d.ts.map +1 -1
  397. package/dist/commonjs/errors/media_error.js +165 -58
  398. package/dist/commonjs/errors/network_error.d.ts +2 -2
  399. package/dist/commonjs/errors/network_error.d.ts.map +1 -1
  400. package/dist/commonjs/errors/network_error.js +156 -50
  401. package/dist/commonjs/errors/other_error.d.ts +1 -1
  402. package/dist/commonjs/errors/other_error.d.ts.map +1 -1
  403. package/dist/commonjs/errors/other_error.js +149 -42
  404. package/dist/commonjs/errors/source_buffer_error.js +149 -43
  405. package/dist/commonjs/errors/worker_initialization_error.d.ts.map +1 -1
  406. package/dist/commonjs/errors/worker_initialization_error.js +118 -30
  407. package/dist/commonjs/experimental/features/index.d.ts +3 -3
  408. package/dist/commonjs/experimental/features/index.d.ts.map +1 -1
  409. package/dist/commonjs/experimental/features/index.js +24 -10
  410. package/dist/commonjs/experimental/features/local.d.ts +1 -1
  411. package/dist/commonjs/experimental/features/local.d.ts.map +1 -1
  412. package/dist/commonjs/experimental/features/local.js +32 -13
  413. package/dist/commonjs/experimental/features/metaplaylist.d.ts +1 -1
  414. package/dist/commonjs/experimental/features/metaplaylist.d.ts.map +1 -1
  415. package/dist/commonjs/experimental/features/metaplaylist.js +32 -13
  416. package/dist/commonjs/experimental/features/multi_thread.d.ts +1 -1
  417. package/dist/commonjs/experimental/features/multi_thread.d.ts.map +1 -1
  418. package/dist/commonjs/experimental/features/multi_thread.js +27 -11
  419. package/dist/commonjs/experimental/features/worker/index.d.ts +3 -3
  420. package/dist/commonjs/experimental/features/worker/index.d.ts.map +1 -1
  421. package/dist/commonjs/experimental/features/worker/index.js +29 -10
  422. package/dist/commonjs/experimental/index.d.ts +1 -1
  423. package/dist/commonjs/experimental/index.d.ts.map +1 -1
  424. package/dist/commonjs/experimental/index.js +15 -4
  425. package/dist/commonjs/experimental/tools/DummyMediaElement/eme.d.ts +19 -3
  426. package/dist/commonjs/experimental/tools/DummyMediaElement/eme.d.ts.map +1 -1
  427. package/dist/commonjs/experimental/tools/DummyMediaElement/eme.js +1066 -626
  428. package/dist/commonjs/experimental/tools/DummyMediaElement/html5.d.ts +7 -7
  429. package/dist/commonjs/experimental/tools/DummyMediaElement/html5.d.ts.map +1 -1
  430. package/dist/commonjs/experimental/tools/DummyMediaElement/html5.js +840 -779
  431. package/dist/commonjs/experimental/tools/DummyMediaElement/index.d.ts +1 -1
  432. package/dist/commonjs/experimental/tools/DummyMediaElement/index.d.ts.map +1 -1
  433. package/dist/commonjs/experimental/tools/DummyMediaElement/index.js +11 -3
  434. package/dist/commonjs/experimental/tools/DummyMediaElement/mse.d.ts +4 -4
  435. package/dist/commonjs/experimental/tools/DummyMediaElement/mse.d.ts.map +1 -1
  436. package/dist/commonjs/experimental/tools/DummyMediaElement/mse.js +743 -580
  437. package/dist/commonjs/experimental/tools/DummyMediaElement/utils.d.ts +4 -4
  438. package/dist/commonjs/experimental/tools/DummyMediaElement/utils.d.ts.map +1 -1
  439. package/dist/commonjs/experimental/tools/DummyMediaElement/utils.js +304 -255
  440. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +1 -1
  441. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.d.ts.map +1 -1
  442. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.js +19 -6
  443. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +1 -1
  444. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts.map +1 -1
  445. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.js +19 -6
  446. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.d.ts +1 -1
  447. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.d.ts.map +1 -1
  448. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.js +53 -8
  449. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +3 -3
  450. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts.map +1 -1
  451. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.js +32 -19
  452. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +3 -3
  453. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts.map +1 -1
  454. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +45 -37
  455. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +2 -2
  456. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts.map +1 -1
  457. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +11 -6
  458. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.d.ts +2 -2
  459. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.d.ts.map +1 -1
  460. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.js +4 -3
  461. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +4 -4
  462. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts.map +1 -1
  463. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +493 -310
  464. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +119 -27
  465. package/dist/commonjs/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +191 -82
  466. package/dist/commonjs/experimental/tools/createMetaplaylist/index.d.ts +1 -1
  467. package/dist/commonjs/experimental/tools/createMetaplaylist/index.d.ts.map +1 -1
  468. package/dist/commonjs/experimental/tools/createMetaplaylist/index.js +39 -15
  469. package/dist/commonjs/experimental/tools/index.d.ts +3 -3
  470. package/dist/commonjs/experimental/tools/index.d.ts.map +1 -1
  471. package/dist/commonjs/experimental/tools/index.js +29 -10
  472. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api.d.ts +1 -1
  473. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api.d.ts.map +1 -1
  474. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api.js +370 -156
  475. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/index.d.ts +2 -2
  476. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/index.d.ts.map +1 -1
  477. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/index.js +17 -5
  478. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/log.d.ts +1 -1
  479. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/log.d.ts.map +1 -1
  480. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/log.js +18 -6
  481. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +187 -65
  482. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +1 -1
  483. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts.map +1 -1
  484. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +171 -78
  485. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +61 -53
  486. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/isTypeSupportedWithFeatures.d.ts +1 -1
  487. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/isTypeSupportedWithFeatures.d.ts.map +1 -1
  488. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/isTypeSupportedWithFeatures.js +166 -78
  489. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +1 -1
  490. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts.map +1 -1
  491. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +23 -17
  492. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +1 -1
  493. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts.map +1 -1
  494. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +21 -13
  495. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/types.js +4 -3
  496. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.d.ts +1 -1
  497. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.d.ts.map +1 -1
  498. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.js +90 -58
  499. package/dist/commonjs/features/add_features.d.ts +1 -1
  500. package/dist/commonjs/features/add_features.d.ts.map +1 -1
  501. package/dist/commonjs/features/add_features.js +36 -34
  502. package/dist/commonjs/features/features_object.d.ts +1 -1
  503. package/dist/commonjs/features/features_object.d.ts.map +1 -1
  504. package/dist/commonjs/features/features_object.js +17 -8
  505. package/dist/commonjs/features/index.d.ts +3 -3
  506. package/dist/commonjs/features/index.d.ts.map +1 -1
  507. package/dist/commonjs/features/index.js +27 -10
  508. package/dist/commonjs/features/list/dash.d.ts +1 -1
  509. package/dist/commonjs/features/list/dash.d.ts.map +1 -1
  510. package/dist/commonjs/features/list/dash.js +35 -17
  511. package/dist/commonjs/features/list/dash_wasm.d.ts +2 -2
  512. package/dist/commonjs/features/list/dash_wasm.d.ts.map +1 -1
  513. package/dist/commonjs/features/list/dash_wasm.js +37 -19
  514. package/dist/commonjs/features/list/debug_element.d.ts +1 -1
  515. package/dist/commonjs/features/list/debug_element.d.ts.map +1 -1
  516. package/dist/commonjs/features/list/debug_element.js +26 -7
  517. package/dist/commonjs/features/list/directfile.d.ts +1 -1
  518. package/dist/commonjs/features/list/directfile.d.ts.map +1 -1
  519. package/dist/commonjs/features/list/directfile.js +31 -10
  520. package/dist/commonjs/features/list/eme.d.ts +1 -1
  521. package/dist/commonjs/features/list/eme.d.ts.map +1 -1
  522. package/dist/commonjs/features/list/eme.js +27 -9
  523. package/dist/commonjs/features/list/html_sami_parser.d.ts +1 -1
  524. package/dist/commonjs/features/list/html_sami_parser.d.ts.map +1 -1
  525. package/dist/commonjs/features/list/html_sami_parser.js +29 -11
  526. package/dist/commonjs/features/list/html_srt_parser.d.ts +1 -1
  527. package/dist/commonjs/features/list/html_srt_parser.d.ts.map +1 -1
  528. package/dist/commonjs/features/list/html_srt_parser.js +29 -11
  529. package/dist/commonjs/features/list/html_text_buffer.d.ts +1 -1
  530. package/dist/commonjs/features/list/html_text_buffer.d.ts.map +1 -1
  531. package/dist/commonjs/features/list/html_text_buffer.js +27 -9
  532. package/dist/commonjs/features/list/html_ttml_parser.d.ts +1 -1
  533. package/dist/commonjs/features/list/html_ttml_parser.d.ts.map +1 -1
  534. package/dist/commonjs/features/list/html_ttml_parser.js +29 -11
  535. package/dist/commonjs/features/list/html_vtt_parser.d.ts +1 -1
  536. package/dist/commonjs/features/list/html_vtt_parser.d.ts.map +1 -1
  537. package/dist/commonjs/features/list/html_vtt_parser.js +30 -12
  538. package/dist/commonjs/features/list/index.d.ts +18 -17
  539. package/dist/commonjs/features/list/index.d.ts.map +1 -1
  540. package/dist/commonjs/features/list/index.js +84 -38
  541. package/dist/commonjs/features/list/media_source_main.d.ts +1 -1
  542. package/dist/commonjs/features/list/media_source_main.d.ts.map +1 -1
  543. package/dist/commonjs/features/list/media_source_main.js +30 -11
  544. package/dist/commonjs/features/list/multi_thread.d.ts +9 -0
  545. package/dist/commonjs/features/list/multi_thread.d.ts.map +1 -0
  546. package/dist/commonjs/features/list/multi_thread.js +35 -0
  547. package/dist/commonjs/features/list/native_sami_parser.d.ts +1 -1
  548. package/dist/commonjs/features/list/native_sami_parser.d.ts.map +1 -1
  549. package/dist/commonjs/features/list/native_sami_parser.js +29 -11
  550. package/dist/commonjs/features/list/native_srt_parser.d.ts +1 -1
  551. package/dist/commonjs/features/list/native_srt_parser.d.ts.map +1 -1
  552. package/dist/commonjs/features/list/native_srt_parser.js +29 -11
  553. package/dist/commonjs/features/list/native_text_buffer.d.ts +1 -1
  554. package/dist/commonjs/features/list/native_text_buffer.d.ts.map +1 -1
  555. package/dist/commonjs/features/list/native_text_buffer.js +27 -9
  556. package/dist/commonjs/features/list/native_ttml_parser.d.ts +1 -1
  557. package/dist/commonjs/features/list/native_ttml_parser.d.ts.map +1 -1
  558. package/dist/commonjs/features/list/native_ttml_parser.js +29 -11
  559. package/dist/commonjs/features/list/native_vtt_parser.d.ts +1 -1
  560. package/dist/commonjs/features/list/native_vtt_parser.d.ts.map +1 -1
  561. package/dist/commonjs/features/list/native_vtt_parser.js +30 -12
  562. package/dist/commonjs/features/list/smooth.d.ts +1 -1
  563. package/dist/commonjs/features/list/smooth.d.ts.map +1 -1
  564. package/dist/commonjs/features/list/smooth.js +33 -15
  565. package/dist/commonjs/features/types.d.ts +16 -16
  566. package/dist/commonjs/features/types.d.ts.map +1 -1
  567. package/dist/commonjs/features/types.js +4 -3
  568. package/dist/commonjs/importable_worker.d.ts +2 -2
  569. package/dist/commonjs/importable_worker.d.ts.map +1 -1
  570. package/dist/commonjs/importable_worker.js +178 -122
  571. package/dist/commonjs/index.d.ts +1 -1
  572. package/dist/commonjs/index.d.ts.map +1 -1
  573. package/dist/commonjs/index.js +36 -25
  574. package/dist/commonjs/initialize_worker.d.ts +1 -1
  575. package/dist/commonjs/initialize_worker.d.ts.map +1 -1
  576. package/dist/commonjs/initialize_worker.js +48 -34
  577. package/dist/commonjs/log.d.ts +1 -1
  578. package/dist/commonjs/log.d.ts.map +1 -1
  579. package/dist/commonjs/log.js +18 -6
  580. package/dist/commonjs/main_thread/api/debug/buffer_graph.d.ts +1 -1
  581. package/dist/commonjs/main_thread/api/debug/buffer_graph.d.ts.map +1 -1
  582. package/dist/commonjs/main_thread/api/debug/buffer_graph.js +187 -154
  583. package/dist/commonjs/main_thread/api/debug/buffer_size_graph.js +141 -98
  584. package/dist/commonjs/main_thread/api/debug/constants.js +11 -5
  585. package/dist/commonjs/main_thread/api/debug/index.d.ts +1 -1
  586. package/dist/commonjs/main_thread/api/debug/index.d.ts.map +1 -1
  587. package/dist/commonjs/main_thread/api/debug/index.js +16 -3
  588. package/dist/commonjs/main_thread/api/debug/modules/general_info.d.ts +2 -2
  589. package/dist/commonjs/main_thread/api/debug/modules/general_info.d.ts.map +1 -1
  590. package/dist/commonjs/main_thread/api/debug/modules/general_info.js +202 -137
  591. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.d.ts +3 -3
  592. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -1
  593. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.js +73 -79
  594. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_size.d.ts +2 -2
  595. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_size.d.ts.map +1 -1
  596. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_size.js +24 -13
  597. package/dist/commonjs/main_thread/api/debug/render.d.ts +2 -2
  598. package/dist/commonjs/main_thread/api/debug/render.d.ts.map +1 -1
  599. package/dist/commonjs/main_thread/api/debug/render.js +27 -15
  600. package/dist/commonjs/main_thread/api/debug/utils.js +46 -44
  601. package/dist/commonjs/main_thread/api/index.d.ts +1 -1
  602. package/dist/commonjs/main_thread/api/index.d.ts.map +1 -1
  603. package/dist/commonjs/main_thread/api/index.js +17 -5
  604. package/dist/commonjs/main_thread/api/option_utils.d.ts +2 -2
  605. package/dist/commonjs/main_thread/api/option_utils.d.ts.map +1 -1
  606. package/dist/commonjs/main_thread/api/option_utils.js +159 -179
  607. package/dist/commonjs/main_thread/api/public_api.d.ts +17 -17
  608. package/dist/commonjs/main_thread/api/public_api.d.ts.map +1 -1
  609. package/dist/commonjs/main_thread/api/public_api.js +3021 -2582
  610. package/dist/commonjs/main_thread/api/utils.d.ts +6 -6
  611. package/dist/commonjs/main_thread/api/utils.d.ts.map +1 -1
  612. package/dist/commonjs/main_thread/api/utils.js +79 -80
  613. package/dist/commonjs/main_thread/core_interface/base.d.ts +2 -2
  614. package/dist/commonjs/main_thread/core_interface/base.d.ts.map +1 -1
  615. package/dist/commonjs/main_thread/core_interface/base.js +68 -25
  616. package/dist/commonjs/main_thread/core_interface/monothread.d.ts +3 -3
  617. package/dist/commonjs/main_thread/core_interface/monothread.d.ts.map +1 -1
  618. package/dist/commonjs/main_thread/core_interface/monothread.js +132 -49
  619. package/dist/commonjs/main_thread/core_interface/multithread.d.ts +2 -2
  620. package/dist/commonjs/main_thread/core_interface/multithread.d.ts.map +1 -1
  621. package/dist/commonjs/main_thread/core_interface/multithread.js +107 -48
  622. package/dist/commonjs/main_thread/core_interface/types.d.ts +3 -3
  623. package/dist/commonjs/main_thread/core_interface/types.d.ts.map +1 -1
  624. package/dist/commonjs/main_thread/core_interface/types.js +3 -1
  625. package/dist/commonjs/main_thread/decrypt/clear_on_stop.d.ts +1 -1
  626. package/dist/commonjs/main_thread/decrypt/clear_on_stop.d.ts.map +1 -1
  627. package/dist/commonjs/main_thread/decrypt/clear_on_stop.js +169 -59
  628. package/dist/commonjs/main_thread/decrypt/content_decryptor.d.ts +7 -7
  629. package/dist/commonjs/main_thread/decrypt/content_decryptor.d.ts.map +1 -1
  630. package/dist/commonjs/main_thread/decrypt/content_decryptor.js +1105 -847
  631. package/dist/commonjs/main_thread/decrypt/create_or_load_session.d.ts +5 -5
  632. package/dist/commonjs/main_thread/decrypt/create_or_load_session.d.ts.map +1 -1
  633. package/dist/commonjs/main_thread/decrypt/create_or_load_session.js +192 -76
  634. package/dist/commonjs/main_thread/decrypt/create_session.d.ts +5 -5
  635. package/dist/commonjs/main_thread/decrypt/create_session.d.ts.map +1 -1
  636. package/dist/commonjs/main_thread/decrypt/create_session.js +253 -102
  637. package/dist/commonjs/main_thread/decrypt/dispose_decryption_resources.d.ts +1 -1
  638. package/dist/commonjs/main_thread/decrypt/dispose_decryption_resources.d.ts.map +1 -1
  639. package/dist/commonjs/main_thread/decrypt/dispose_decryption_resources.js +144 -42
  640. package/dist/commonjs/main_thread/decrypt/find_key_system.d.ts +4 -4
  641. package/dist/commonjs/main_thread/decrypt/find_key_system.d.ts.map +1 -1
  642. package/dist/commonjs/main_thread/decrypt/find_key_system.js +477 -326
  643. package/dist/commonjs/main_thread/decrypt/get_key_system_configuration.d.ts +1 -1
  644. package/dist/commonjs/main_thread/decrypt/get_key_system_configuration.d.ts.map +1 -1
  645. package/dist/commonjs/main_thread/decrypt/get_key_system_configuration.js +19 -9
  646. package/dist/commonjs/main_thread/decrypt/get_media_keys.d.ts +6 -6
  647. package/dist/commonjs/main_thread/decrypt/get_media_keys.d.ts.map +1 -1
  648. package/dist/commonjs/main_thread/decrypt/get_media_keys.js +252 -111
  649. package/dist/commonjs/main_thread/decrypt/index.d.ts +5 -5
  650. package/dist/commonjs/main_thread/decrypt/index.d.ts.map +1 -1
  651. package/dist/commonjs/main_thread/decrypt/index.js +49 -29
  652. package/dist/commonjs/main_thread/decrypt/init_media_keys.d.ts +5 -5
  653. package/dist/commonjs/main_thread/decrypt/init_media_keys.d.ts.map +1 -1
  654. package/dist/commonjs/main_thread/decrypt/init_media_keys.js +169 -58
  655. package/dist/commonjs/main_thread/decrypt/session_events_listener.d.ts +3 -3
  656. package/dist/commonjs/main_thread/decrypt/session_events_listener.d.ts.map +1 -1
  657. package/dist/commonjs/main_thread/decrypt/session_events_listener.js +465 -200
  658. package/dist/commonjs/main_thread/decrypt/set_server_certificate.d.ts +2 -2
  659. package/dist/commonjs/main_thread/decrypt/set_server_certificate.d.ts.map +1 -1
  660. package/dist/commonjs/main_thread/decrypt/set_server_certificate.js +258 -94
  661. package/dist/commonjs/main_thread/decrypt/types.d.ts +5 -5
  662. package/dist/commonjs/main_thread/decrypt/types.d.ts.map +1 -1
  663. package/dist/commonjs/main_thread/decrypt/types.js +17 -17
  664. package/dist/commonjs/main_thread/decrypt/utils/are_init_values_compatible.d.ts +1 -1
  665. package/dist/commonjs/main_thread/decrypt/utils/are_init_values_compatible.d.ts.map +1 -1
  666. package/dist/commonjs/main_thread/decrypt/utils/are_init_values_compatible.js +46 -39
  667. package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.d.ts +3 -3
  668. package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.d.ts.map +1 -1
  669. package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.js +317 -171
  670. package/dist/commonjs/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts +1 -1
  671. package/dist/commonjs/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts.map +1 -1
  672. package/dist/commonjs/main_thread/decrypt/utils/clean_old_loaded_sessions.js +160 -54
  673. package/dist/commonjs/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts +1 -1
  674. package/dist/commonjs/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts.map +1 -1
  675. package/dist/commonjs/main_thread/decrypt/utils/clean_old_stored_persistent_info.js +19 -9
  676. package/dist/commonjs/main_thread/decrypt/utils/get_drm_system_id.d.ts.map +1 -1
  677. package/dist/commonjs/main_thread/decrypt/utils/get_drm_system_id.js +21 -12
  678. package/dist/commonjs/main_thread/decrypt/utils/init_data_values_container.d.ts +1 -1
  679. package/dist/commonjs/main_thread/decrypt/utils/init_data_values_container.d.ts.map +1 -1
  680. package/dist/commonjs/main_thread/decrypt/utils/init_data_values_container.js +108 -74
  681. package/dist/commonjs/main_thread/decrypt/utils/is_compatible_codec_supported.d.ts +1 -1
  682. package/dist/commonjs/main_thread/decrypt/utils/is_compatible_codec_supported.d.ts.map +1 -1
  683. package/dist/commonjs/main_thread/decrypt/utils/is_compatible_codec_supported.js +36 -28
  684. package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.d.ts +1 -1
  685. package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.d.ts.map +1 -1
  686. package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.js +30 -18
  687. package/dist/commonjs/main_thread/decrypt/utils/key_id_comparison.js +79 -64
  688. package/dist/commonjs/main_thread/decrypt/utils/key_session_record.d.ts +1 -1
  689. package/dist/commonjs/main_thread/decrypt/utils/key_session_record.d.ts.map +1 -1
  690. package/dist/commonjs/main_thread/decrypt/utils/key_session_record.js +134 -137
  691. package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.d.ts +6 -4
  692. package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.d.ts.map +1 -1
  693. package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.js +616 -410
  694. package/dist/commonjs/main_thread/decrypt/utils/media_keys_attacher.d.ts +4 -4
  695. package/dist/commonjs/main_thread/decrypt/utils/media_keys_attacher.d.ts.map +1 -1
  696. package/dist/commonjs/main_thread/decrypt/utils/media_keys_attacher.js +316 -140
  697. package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts +3 -3
  698. package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -1
  699. package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.js +373 -314
  700. package/dist/commonjs/main_thread/decrypt/utils/serializable_bytes.js +49 -23
  701. package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.d.ts +1 -1
  702. package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.d.ts.map +1 -1
  703. package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.js +36 -33
  704. package/dist/commonjs/main_thread/init/directfile_content_initializer.d.ts +7 -7
  705. package/dist/commonjs/main_thread/init/directfile_content_initializer.d.ts.map +1 -1
  706. package/dist/commonjs/main_thread/init/directfile_content_initializer.js +277 -207
  707. package/dist/commonjs/main_thread/init/index.d.ts +2 -2
  708. package/dist/commonjs/main_thread/init/index.d.ts.map +1 -1
  709. package/dist/commonjs/main_thread/init/index.js +11 -6
  710. package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts +40 -24
  711. package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts.map +1 -1
  712. package/dist/commonjs/main_thread/init/media_source_content_initializer.js +1831 -1539
  713. package/dist/commonjs/main_thread/init/types.d.ts +10 -10
  714. package/dist/commonjs/main_thread/init/types.d.ts.map +1 -1
  715. package/dist/commonjs/main_thread/init/types.js +73 -34
  716. package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts +9 -9
  717. package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -1
  718. package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.js +44 -26
  719. package/dist/commonjs/main_thread/init/utils/get_initial_time.d.ts +1 -1
  720. package/dist/commonjs/main_thread/init/utils/get_initial_time.d.ts.map +1 -1
  721. package/dist/commonjs/main_thread/init/utils/get_initial_time.js +63 -62
  722. package/dist/commonjs/main_thread/init/utils/get_loaded_reference.d.ts +3 -3
  723. package/dist/commonjs/main_thread/init/utils/get_loaded_reference.d.ts.map +1 -1
  724. package/dist/commonjs/main_thread/init/utils/get_loaded_reference.js +32 -21
  725. package/dist/commonjs/main_thread/init/utils/initial_seek_and_play.d.ts +5 -5
  726. package/dist/commonjs/main_thread/init/utils/initial_seek_and_play.d.ts.map +1 -1
  727. package/dist/commonjs/main_thread/init/utils/initial_seek_and_play.js +145 -136
  728. package/dist/commonjs/main_thread/init/utils/initialize_content_decryption.d.ts +8 -8
  729. package/dist/commonjs/main_thread/init/utils/initialize_content_decryption.d.ts.map +1 -1
  730. package/dist/commonjs/main_thread/init/utils/initialize_content_decryption.js +77 -46
  731. package/dist/commonjs/main_thread/init/utils/main_thread_text_displayer_interface.d.ts +3 -3
  732. package/dist/commonjs/main_thread/init/utils/main_thread_text_displayer_interface.d.ts.map +1 -1
  733. package/dist/commonjs/main_thread/init/utils/main_thread_text_displayer_interface.js +69 -39
  734. package/dist/commonjs/main_thread/init/utils/rebuffering_controller.d.ts +7 -7
  735. package/dist/commonjs/main_thread/init/utils/rebuffering_controller.d.ts.map +1 -1
  736. package/dist/commonjs/main_thread/init/utils/rebuffering_controller.js +345 -315
  737. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/are_same_stream_events.js +12 -6
  738. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/index.d.ts +2 -2
  739. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/index.d.ts.map +1 -1
  740. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/index.js +17 -5
  741. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +2 -2
  742. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -1
  743. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +71 -61
  744. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +4 -4
  745. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts.map +1 -1
  746. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.js +295 -211
  747. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/types.d.ts +1 -1
  748. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/types.d.ts.map +1 -1
  749. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/types.js +4 -3
  750. package/dist/commonjs/main_thread/init/utils/throw_on_media_error.d.ts +3 -3
  751. package/dist/commonjs/main_thread/init/utils/throw_on_media_error.d.ts.map +1 -1
  752. package/dist/commonjs/main_thread/init/utils/throw_on_media_error.js +31 -27
  753. package/dist/commonjs/main_thread/init/utils/update_manifest_codec_support.d.ts +8 -6
  754. package/dist/commonjs/main_thread/init/utils/update_manifest_codec_support.d.ts.map +1 -1
  755. package/dist/commonjs/main_thread/init/utils/update_manifest_codec_support.js +150 -127
  756. package/dist/commonjs/main_thread/render_thumbnail.d.ts +2 -2
  757. package/dist/commonjs/main_thread/render_thumbnail.d.ts.map +1 -1
  758. package/dist/commonjs/main_thread/render_thumbnail.js +337 -137
  759. package/dist/commonjs/main_thread/text_displayer/html/html_parsers.d.ts +1 -1
  760. package/dist/commonjs/main_thread/text_displayer/html/html_parsers.d.ts.map +1 -1
  761. package/dist/commonjs/main_thread/text_displayer/html/html_parsers.js +27 -10
  762. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.d.ts +4 -4
  763. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -1
  764. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.js +364 -299
  765. package/dist/commonjs/main_thread/text_displayer/html/index.d.ts +1 -1
  766. package/dist/commonjs/main_thread/text_displayer/html/index.d.ts.map +1 -1
  767. package/dist/commonjs/main_thread/text_displayer/html/index.js +16 -3
  768. package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.d.ts +1 -1
  769. package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.d.ts.map +1 -1
  770. package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.js +370 -312
  771. package/dist/commonjs/main_thread/text_displayer/html/update_proportional_elements.js +22 -7
  772. package/dist/commonjs/main_thread/text_displayer/html/utils.js +37 -54
  773. package/dist/commonjs/main_thread/text_displayer/index.d.ts +1 -1
  774. package/dist/commonjs/main_thread/text_displayer/index.d.ts.map +1 -1
  775. package/dist/commonjs/main_thread/text_displayer/index.js +3 -1
  776. package/dist/commonjs/main_thread/text_displayer/manual_time_ranges.js +90 -41
  777. package/dist/commonjs/main_thread/text_displayer/native/index.d.ts +1 -1
  778. package/dist/commonjs/main_thread/text_displayer/native/index.d.ts.map +1 -1
  779. package/dist/commonjs/main_thread/text_displayer/native/index.js +16 -3
  780. package/dist/commonjs/main_thread/text_displayer/native/native_parsers.d.ts +2 -2
  781. package/dist/commonjs/main_thread/text_displayer/native/native_parsers.d.ts.map +1 -1
  782. package/dist/commonjs/main_thread/text_displayer/native/native_parsers.js +27 -10
  783. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.d.ts +3 -3
  784. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.d.ts.map +1 -1
  785. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.js +223 -186
  786. package/dist/commonjs/main_thread/text_displayer/types.d.ts +2 -2
  787. package/dist/commonjs/main_thread/text_displayer/types.d.ts.map +1 -1
  788. package/dist/commonjs/main_thread/text_displayer/types.js +3 -1
  789. package/dist/commonjs/main_thread/tracks_store/index.d.ts +3 -3
  790. package/dist/commonjs/main_thread/tracks_store/index.d.ts.map +1 -1
  791. package/dist/commonjs/main_thread/tracks_store/index.js +29 -19
  792. package/dist/commonjs/main_thread/tracks_store/media_element_tracks_store.d.ts +3 -3
  793. package/dist/commonjs/main_thread/tracks_store/media_element_tracks_store.d.ts.map +1 -1
  794. package/dist/commonjs/main_thread/tracks_store/media_element_tracks_store.js +596 -513
  795. package/dist/commonjs/main_thread/tracks_store/track_dispatcher.d.ts +5 -5
  796. package/dist/commonjs/main_thread/tracks_store/track_dispatcher.d.ts.map +1 -1
  797. package/dist/commonjs/main_thread/tracks_store/track_dispatcher.js +219 -148
  798. package/dist/commonjs/main_thread/tracks_store/tracks_store.d.ts +6 -6
  799. package/dist/commonjs/main_thread/tracks_store/tracks_store.d.ts.map +1 -1
  800. package/dist/commonjs/main_thread/tracks_store/tracks_store.js +1395 -1155
  801. package/dist/commonjs/main_thread/types.d.ts +36 -34
  802. package/dist/commonjs/main_thread/types.d.ts.map +1 -1
  803. package/dist/commonjs/main_thread/types.js +3 -1
  804. package/dist/commonjs/main_thread/utils/media_capabilities.d.ts +2 -2
  805. package/dist/commonjs/main_thread/utils/media_capabilities.d.ts.map +1 -1
  806. package/dist/commonjs/main_thread/utils/media_capabilities.js +24 -6
  807. package/dist/commonjs/manifest/classes/adaptation.d.ts +5 -5
  808. package/dist/commonjs/manifest/classes/adaptation.d.ts.map +1 -1
  809. package/dist/commonjs/manifest/classes/adaptation.js +154 -133
  810. package/dist/commonjs/manifest/classes/codec_support_cache.js +83 -62
  811. package/dist/commonjs/manifest/classes/index.d.ts +14 -14
  812. package/dist/commonjs/manifest/classes/index.d.ts.map +1 -1
  813. package/dist/commonjs/manifest/classes/index.js +58 -31
  814. package/dist/commonjs/manifest/classes/manifest.d.ts +13 -13
  815. package/dist/commonjs/manifest/classes/manifest.d.ts.map +1 -1
  816. package/dist/commonjs/manifest/classes/manifest.js +489 -377
  817. package/dist/commonjs/manifest/classes/period.d.ts +6 -6
  818. package/dist/commonjs/manifest/classes/period.d.ts.map +1 -1
  819. package/dist/commonjs/manifest/classes/period.js +256 -184
  820. package/dist/commonjs/manifest/classes/representation.d.ts +5 -5
  821. package/dist/commonjs/manifest/classes/representation.d.ts.map +1 -1
  822. package/dist/commonjs/manifest/classes/representation.js +282 -229
  823. package/dist/commonjs/manifest/classes/representation_index/index.d.ts +2 -2
  824. package/dist/commonjs/manifest/classes/representation_index/index.d.ts.map +1 -1
  825. package/dist/commonjs/manifest/classes/representation_index/index.js +16 -6
  826. package/dist/commonjs/manifest/classes/representation_index/static.d.ts +1 -1
  827. package/dist/commonjs/manifest/classes/representation_index/static.d.ts.map +1 -1
  828. package/dist/commonjs/manifest/classes/representation_index/static.js +170 -107
  829. package/dist/commonjs/manifest/classes/representation_index/types.d.ts +4 -4
  830. package/dist/commonjs/manifest/classes/representation_index/types.d.ts.map +1 -1
  831. package/dist/commonjs/manifest/classes/representation_index/types.js +4 -3
  832. package/dist/commonjs/manifest/classes/types.js +14 -11
  833. package/dist/commonjs/manifest/classes/update_period_in_place.d.ts +5 -5
  834. package/dist/commonjs/manifest/classes/update_period_in_place.d.ts.map +1 -1
  835. package/dist/commonjs/manifest/classes/update_period_in_place.js +188 -154
  836. package/dist/commonjs/manifest/classes/update_periods.d.ts +4 -4
  837. package/dist/commonjs/manifest/classes/update_periods.d.ts.map +1 -1
  838. package/dist/commonjs/manifest/classes/update_periods.js +150 -117
  839. package/dist/commonjs/manifest/classes/utils.d.ts +4 -4
  840. package/dist/commonjs/manifest/classes/utils.d.ts.map +1 -1
  841. package/dist/commonjs/manifest/classes/utils.js +27 -21
  842. package/dist/commonjs/manifest/index.d.ts +6 -6
  843. package/dist/commonjs/manifest/index.d.ts.map +1 -1
  844. package/dist/commonjs/manifest/index.js +31 -19
  845. package/dist/commonjs/manifest/types.d.ts +2 -2
  846. package/dist/commonjs/manifest/types.d.ts.map +1 -1
  847. package/dist/commonjs/manifest/types.js +3 -1
  848. package/dist/commonjs/manifest/utils.d.ts +4 -4
  849. package/dist/commonjs/manifest/utils.d.ts.map +1 -1
  850. package/dist/commonjs/manifest/utils.js +558 -445
  851. package/dist/commonjs/minimal.d.ts +1 -1
  852. package/dist/commonjs/minimal.d.ts.map +1 -1
  853. package/dist/commonjs/minimal.js +21 -11
  854. package/dist/commonjs/mse/index.d.ts +2 -2
  855. package/dist/commonjs/mse/index.d.ts.map +1 -1
  856. package/dist/commonjs/mse/index.js +3 -1
  857. package/dist/commonjs/mse/main_media_source_interface.d.ts +10 -5
  858. package/dist/commonjs/mse/main_media_source_interface.d.ts.map +1 -1
  859. package/dist/commonjs/mse/main_media_source_interface.js +666 -507
  860. package/dist/commonjs/mse/types.d.ts +3 -3
  861. package/dist/commonjs/mse/types.d.ts.map +1 -1
  862. package/dist/commonjs/mse/types.js +3 -1
  863. package/dist/commonjs/mse/utils/end_of_stream.d.ts +2 -2
  864. package/dist/commonjs/mse/utils/end_of_stream.d.ts.map +1 -1
  865. package/dist/commonjs/mse/utils/end_of_stream.js +71 -61
  866. package/dist/commonjs/mse/utils/media_source_duration_updater.d.ts +1 -1
  867. package/dist/commonjs/mse/utils/media_source_duration_updater.d.ts.map +1 -1
  868. package/dist/commonjs/mse/utils/media_source_duration_updater.js +146 -124
  869. package/dist/commonjs/mse/worker_media_source_interface.d.ts +7 -7
  870. package/dist/commonjs/mse/worker_media_source_interface.d.ts.map +1 -1
  871. package/dist/commonjs/mse/worker_media_source_interface.js +502 -328
  872. package/dist/commonjs/package.json +3 -0
  873. package/dist/commonjs/parsers/containers/isobmff/constants.js +12 -7
  874. package/dist/commonjs/parsers/containers/isobmff/create_box.js +53 -44
  875. package/dist/commonjs/parsers/containers/isobmff/drm/index.d.ts +1 -1
  876. package/dist/commonjs/parsers/containers/isobmff/drm/index.d.ts.map +1 -1
  877. package/dist/commonjs/parsers/containers/isobmff/drm/index.js +11 -6
  878. package/dist/commonjs/parsers/containers/isobmff/drm/playready.d.ts.map +1 -1
  879. package/dist/commonjs/parsers/containers/isobmff/drm/playready.js +17 -16
  880. package/dist/commonjs/parsers/containers/isobmff/extract_complete_chunks.js +53 -29
  881. package/dist/commonjs/parsers/containers/isobmff/extract_pssh.js +51 -34
  882. package/dist/commonjs/parsers/containers/isobmff/find_complete_box.js +18 -14
  883. package/dist/commonjs/parsers/containers/isobmff/get_box.js +105 -84
  884. package/dist/commonjs/parsers/containers/isobmff/index.d.ts +9 -9
  885. package/dist/commonjs/parsers/containers/isobmff/index.d.ts.map +1 -1
  886. package/dist/commonjs/parsers/containers/isobmff/index.js +124 -35
  887. package/dist/commonjs/parsers/containers/isobmff/read.js +44 -30
  888. package/dist/commonjs/parsers/containers/isobmff/remove_dolby_vision_config_data.js +71 -61
  889. package/dist/commonjs/parsers/containers/isobmff/utils.d.ts +1 -1
  890. package/dist/commonjs/parsers/containers/isobmff/utils.d.ts.map +1 -1
  891. package/dist/commonjs/parsers/containers/isobmff/utils.js +245 -237
  892. package/dist/commonjs/parsers/containers/matroska/index.d.ts +2 -2
  893. package/dist/commonjs/parsers/containers/matroska/index.d.ts.map +1 -1
  894. package/dist/commonjs/parsers/containers/matroska/index.js +19 -7
  895. package/dist/commonjs/parsers/containers/matroska/utils.js +142 -78
  896. package/dist/commonjs/parsers/images/bif.js +42 -24
  897. package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.d.ts +1 -1
  898. package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.d.ts.map +1 -1
  899. package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.js +69 -47
  900. package/dist/commonjs/parsers/manifest/dash/common/content_protection_parser.d.ts +2 -2
  901. package/dist/commonjs/parsers/manifest/dash/common/content_protection_parser.d.ts.map +1 -1
  902. package/dist/commonjs/parsers/manifest/dash/common/content_protection_parser.js +245 -167
  903. package/dist/commonjs/parsers/manifest/dash/common/convert_supplemental_codecs.js +16 -20
  904. package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +1 -1
  905. package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts.map +1 -1
  906. package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.js +25 -21
  907. package/dist/commonjs/parsers/manifest/dash/common/get_clock_offset.js +22 -10
  908. package/dist/commonjs/parsers/manifest/dash/common/get_hdr_information.js +65 -27
  909. package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +1 -1
  910. package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts.map +1 -1
  911. package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.js +14 -11
  912. package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +1 -1
  913. package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts.map +1 -1
  914. package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +21 -11
  915. package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.d.ts +1 -1
  916. package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.d.ts.map +1 -1
  917. package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.js +33 -31
  918. package/dist/commonjs/parsers/manifest/dash/common/index.d.ts +3 -3
  919. package/dist/commonjs/parsers/manifest/dash/common/index.d.ts.map +1 -1
  920. package/dist/commonjs/parsers/manifest/dash/common/index.js +35 -11
  921. package/dist/commonjs/parsers/manifest/dash/common/indexes/base.d.ts +15 -11
  922. package/dist/commonjs/parsers/manifest/dash/common/indexes/base.d.ts.map +1 -1
  923. package/dist/commonjs/parsers/manifest/dash/common/indexes/base.js +212 -150
  924. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +31 -7
  925. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.d.ts.map +1 -1
  926. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.js +24 -14
  927. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +4 -4
  928. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts.map +1 -1
  929. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +33 -31
  930. package/dist/commonjs/parsers/manifest/dash/common/indexes/index.d.ts +8 -8
  931. package/dist/commonjs/parsers/manifest/dash/common/indexes/index.d.ts.map +1 -1
  932. package/dist/commonjs/parsers/manifest/dash/common/indexes/index.js +33 -12
  933. package/dist/commonjs/parsers/manifest/dash/common/indexes/list.d.ts +13 -9
  934. package/dist/commonjs/parsers/manifest/dash/common/indexes/list.d.ts.map +1 -1
  935. package/dist/commonjs/parsers/manifest/dash/common/indexes/list.js +263 -163
  936. package/dist/commonjs/parsers/manifest/dash/common/indexes/template.d.ts +13 -9
  937. package/dist/commonjs/parsers/manifest/dash/common/indexes/template.d.ts.map +1 -1
  938. package/dist/commonjs/parsers/manifest/dash/common/indexes/template.js +392 -348
  939. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +2 -2
  940. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts.map +1 -1
  941. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +24 -14
  942. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +2 -2
  943. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts.map +1 -1
  944. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +41 -37
  945. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +1 -1
  946. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts.map +1 -1
  947. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +23 -23
  948. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +2 -2
  949. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts.map +1 -1
  950. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +37 -35
  951. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/index.d.ts +2 -2
  952. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/index.d.ts.map +1 -1
  953. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/index.js +17 -5
  954. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +1 -1
  955. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts.map +1 -1
  956. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +65 -59
  957. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +17 -13
  958. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts.map +1 -1
  959. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +472 -460
  960. package/dist/commonjs/parsers/manifest/dash/common/indexes/tokens.js +37 -50
  961. package/dist/commonjs/parsers/manifest/dash/common/indexes/utils.js +17 -15
  962. package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.d.ts +1 -1
  963. package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.d.ts.map +1 -1
  964. package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.js +71 -71
  965. package/dist/commonjs/parsers/manifest/dash/common/manifest_bounds_calculator.js +99 -75
  966. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +5 -5
  967. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.d.ts.map +1 -1
  968. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.js +275 -210
  969. package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.d.ts +1 -1
  970. package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.d.ts.map +1 -1
  971. package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.js +18 -8
  972. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.d.ts +5 -5
  973. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.d.ts.map +1 -1
  974. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.js +169 -161
  975. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.d.ts +5 -5
  976. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.d.ts.map +1 -1
  977. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.js +211 -150
  978. package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.d.ts +5 -5
  979. package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.d.ts.map +1 -1
  980. package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.js +151 -78
  981. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.d.ts +5 -5
  982. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.d.ts.map +1 -1
  983. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.js +222 -222
  984. package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.d.ts +1 -1
  985. package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.d.ts.map +1 -1
  986. package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.js +20 -13
  987. package/dist/commonjs/parsers/manifest/dash/index.d.ts +1 -1
  988. package/dist/commonjs/parsers/manifest/dash/index.d.ts.map +1 -1
  989. package/dist/commonjs/parsers/manifest/dash/index.js +25 -9
  990. package/dist/commonjs/parsers/manifest/dash/js-parser/index.d.ts +1 -1
  991. package/dist/commonjs/parsers/manifest/dash/js-parser/index.d.ts.map +1 -1
  992. package/dist/commonjs/parsers/manifest/dash/js-parser/index.js +17 -5
  993. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts +2 -2
  994. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts.map +1 -1
  995. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +230 -224
  996. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts +2 -2
  997. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts.map +1 -1
  998. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +23 -10
  999. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts +3 -3
  1000. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts.map +1 -1
  1001. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.js +40 -33
  1002. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts +2 -2
  1003. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts.map +1 -1
  1004. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.js +113 -58
  1005. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts +2 -2
  1006. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts.map +1 -1
  1007. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +118 -72
  1008. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts +3 -3
  1009. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts.map +1 -1
  1010. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +45 -36
  1011. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts +2 -2
  1012. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts.map +1 -1
  1013. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/MPD.js +163 -124
  1014. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts +2 -2
  1015. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts.map +1 -1
  1016. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Period.js +157 -115
  1017. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts +2 -2
  1018. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts.map +1 -1
  1019. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Representation.js +172 -147
  1020. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts +2 -2
  1021. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts.map +1 -1
  1022. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +112 -78
  1023. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts +2 -2
  1024. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts.map +1 -1
  1025. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentList.js +76 -28
  1026. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts +2 -2
  1027. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts.map +1 -1
  1028. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +106 -71
  1029. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts +2 -2
  1030. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts.map +1 -1
  1031. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.js +13 -8
  1032. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts +2 -2
  1033. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts.map +1 -1
  1034. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +48 -40
  1035. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +6 -7
  1036. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts.map +1 -1
  1037. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/utils.js +353 -156
  1038. package/dist/commonjs/parsers/manifest/dash/js-parser/parse_from_xml_string.d.ts +5 -2
  1039. package/dist/commonjs/parsers/manifest/dash/js-parser/parse_from_xml_string.d.ts.map +1 -1
  1040. package/dist/commonjs/parsers/manifest/dash/js-parser/parse_from_xml_string.js +121 -68
  1041. package/dist/commonjs/parsers/manifest/dash/node_parser_types.d.ts +91 -57
  1042. package/dist/commonjs/parsers/manifest/dash/node_parser_types.d.ts.map +1 -1
  1043. package/dist/commonjs/parsers/manifest/dash/node_parser_types.js +4 -3
  1044. package/dist/commonjs/parsers/manifest/dash/parsers_types.d.ts +2 -2
  1045. package/dist/commonjs/parsers/manifest/dash/parsers_types.d.ts.map +1 -1
  1046. package/dist/commonjs/parsers/manifest/dash/parsers_types.js +4 -3
  1047. package/dist/commonjs/parsers/manifest/dash/wasm-parser/index.d.ts +2 -2
  1048. package/dist/commonjs/parsers/manifest/dash/wasm-parser/index.d.ts.map +1 -1
  1049. package/dist/commonjs/parsers/manifest/dash/wasm-parser/index.js +17 -5
  1050. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +4 -2
  1051. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts.map +1 -1
  1052. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +558 -362
  1053. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +3 -3
  1054. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts.map +1 -1
  1055. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +256 -212
  1056. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +2 -2
  1057. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts.map +1 -1
  1058. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.js +13 -14
  1059. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +2 -2
  1060. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts.map +1 -1
  1061. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +20 -21
  1062. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +2 -2
  1063. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts.map +1 -1
  1064. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +35 -34
  1065. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +3 -3
  1066. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts.map +1 -1
  1067. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +81 -72
  1068. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Initialization.d.ts +4 -0
  1069. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Initialization.d.ts.map +1 -0
  1070. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Initialization.js +29 -0
  1071. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Label.d.ts +2 -2
  1072. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Label.d.ts.map +1 -1
  1073. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Label.js +14 -6
  1074. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +3 -3
  1075. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts.map +1 -1
  1076. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +166 -130
  1077. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +3 -3
  1078. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts.map +1 -1
  1079. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +158 -115
  1080. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +3 -3
  1081. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts.map +1 -1
  1082. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +168 -135
  1083. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +3 -3
  1084. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts.map +1 -1
  1085. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +16 -17
  1086. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +4 -2
  1087. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts.map +1 -1
  1088. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +88 -71
  1089. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +3 -3
  1090. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts.map +1 -1
  1091. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.js +38 -24
  1092. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +4 -2
  1093. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts.map +1 -1
  1094. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +115 -82
  1095. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +2 -2
  1096. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts.map +1 -1
  1097. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +34 -34
  1098. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +3 -3
  1099. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts.map +1 -1
  1100. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +37 -27
  1101. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts +1 -1
  1102. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts.map +1 -1
  1103. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/index.js +11 -6
  1104. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +2 -2
  1105. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts.map +1 -1
  1106. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.js +36 -30
  1107. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts +1 -1
  1108. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts.map +1 -1
  1109. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +87 -43
  1110. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/types.d.ts +2 -1
  1111. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/types.d.ts.map +1 -1
  1112. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/types.js +4 -3
  1113. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +4 -3
  1114. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.d.ts.map +1 -1
  1115. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.js +39 -10
  1116. package/dist/commonjs/parsers/manifest/index.d.ts +1 -1
  1117. package/dist/commonjs/parsers/manifest/index.d.ts.map +1 -1
  1118. package/dist/commonjs/parsers/manifest/index.js +4 -3
  1119. package/dist/commonjs/parsers/manifest/local/index.d.ts +2 -2
  1120. package/dist/commonjs/parsers/manifest/local/index.d.ts.map +1 -1
  1121. package/dist/commonjs/parsers/manifest/local/index.js +17 -5
  1122. package/dist/commonjs/parsers/manifest/local/parse_local_manifest.d.ts +2 -2
  1123. package/dist/commonjs/parsers/manifest/local/parse_local_manifest.d.ts.map +1 -1
  1124. package/dist/commonjs/parsers/manifest/local/parse_local_manifest.js +59 -42
  1125. package/dist/commonjs/parsers/manifest/local/representation_index.d.ts +2 -2
  1126. package/dist/commonjs/parsers/manifest/local/representation_index.d.ts.map +1 -1
  1127. package/dist/commonjs/parsers/manifest/local/representation_index.js +309 -237
  1128. package/dist/commonjs/parsers/manifest/local/types.js +4 -3
  1129. package/dist/commonjs/parsers/manifest/metaplaylist/index.d.ts +2 -2
  1130. package/dist/commonjs/parsers/manifest/metaplaylist/index.d.ts.map +1 -1
  1131. package/dist/commonjs/parsers/manifest/metaplaylist/index.js +17 -5
  1132. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +2 -2
  1133. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts.map +1 -1
  1134. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.js +154 -146
  1135. package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.d.ts +3 -3
  1136. package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.d.ts.map +1 -1
  1137. package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.js +212 -165
  1138. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts +2 -2
  1139. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
  1140. package/dist/commonjs/parsers/manifest/smooth/create_parser.js +273 -262
  1141. package/dist/commonjs/parsers/manifest/smooth/get_codecs.js +27 -21
  1142. package/dist/commonjs/parsers/manifest/smooth/index.d.ts +3 -3
  1143. package/dist/commonjs/parsers/manifest/smooth/index.d.ts.map +1 -1
  1144. package/dist/commonjs/parsers/manifest/smooth/index.js +26 -8
  1145. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts +1 -1
  1146. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
  1147. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.js +28 -16
  1148. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts +1 -1
  1149. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
  1150. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.js +52 -51
  1151. package/dist/commonjs/parsers/manifest/smooth/representation_index.d.ts +3 -3
  1152. package/dist/commonjs/parsers/manifest/smooth/representation_index.d.ts.map +1 -1
  1153. package/dist/commonjs/parsers/manifest/smooth/representation_index.js +330 -270
  1154. package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +1 -1
  1155. package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts.map +1 -1
  1156. package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.js +150 -134
  1157. package/dist/commonjs/parsers/manifest/smooth/utils/add_segment_infos.js +22 -18
  1158. package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.js +13 -10
  1159. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts +1 -1
  1160. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
  1161. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.js +25 -25
  1162. package/dist/commonjs/parsers/manifest/smooth/utils/tokens.js +21 -12
  1163. package/dist/commonjs/parsers/manifest/types.d.ts +2 -2
  1164. package/dist/commonjs/parsers/manifest/types.d.ts.map +1 -1
  1165. package/dist/commonjs/parsers/manifest/types.js +4 -3
  1166. package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.d.ts +1 -1
  1167. package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.d.ts.map +1 -1
  1168. package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.js +35 -26
  1169. package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.d.ts +1 -1
  1170. package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.d.ts.map +1 -1
  1171. package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.js +17 -16
  1172. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +1 -1
  1173. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.d.ts.map +1 -1
  1174. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.js +25 -25
  1175. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +1 -1
  1176. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.d.ts.map +1 -1
  1177. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.js +25 -25
  1178. package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.d.ts +1 -1
  1179. package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.d.ts.map +1 -1
  1180. package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.js +51 -25
  1181. package/dist/commonjs/parsers/manifest/utils/get_minimum_position.d.ts +1 -1
  1182. package/dist/commonjs/parsers/manifest/utils/get_minimum_position.d.ts.map +1 -1
  1183. package/dist/commonjs/parsers/manifest/utils/get_minimum_position.js +26 -18
  1184. package/dist/commonjs/parsers/manifest/utils/index_helpers.js +48 -68
  1185. package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.d.ts +1 -1
  1186. package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.d.ts.map +1 -1
  1187. package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.js +107 -68
  1188. package/dist/commonjs/parsers/texttracks/index.d.ts +1 -1
  1189. package/dist/commonjs/parsers/texttracks/index.d.ts.map +1 -1
  1190. package/dist/commonjs/parsers/texttracks/index.js +4 -3
  1191. package/dist/commonjs/parsers/texttracks/sami/html.d.ts +1 -1
  1192. package/dist/commonjs/parsers/texttracks/sami/html.d.ts.map +1 -1
  1193. package/dist/commonjs/parsers/texttracks/sami/html.js +91 -59
  1194. package/dist/commonjs/parsers/texttracks/sami/native.d.ts +1 -1
  1195. package/dist/commonjs/parsers/texttracks/sami/native.d.ts.map +1 -1
  1196. package/dist/commonjs/parsers/texttracks/sami/native.js +91 -53
  1197. package/dist/commonjs/parsers/texttracks/srt/find_end_of_cue_block.js +18 -8
  1198. package/dist/commonjs/parsers/texttracks/srt/get_cue_blocks.js +23 -15
  1199. package/dist/commonjs/parsers/texttracks/srt/html.js +65 -75
  1200. package/dist/commonjs/parsers/texttracks/srt/native.d.ts +1 -1
  1201. package/dist/commonjs/parsers/texttracks/srt/native.d.ts.map +1 -1
  1202. package/dist/commonjs/parsers/texttracks/srt/native.js +28 -20
  1203. package/dist/commonjs/parsers/texttracks/srt/parse_cue.js +82 -33
  1204. package/dist/commonjs/parsers/texttracks/srt/parse_timestamp.js +18 -8
  1205. package/dist/commonjs/parsers/texttracks/ttml/get_parameters.js +38 -23
  1206. package/dist/commonjs/parsers/texttracks/ttml/get_styling.js +81 -70
  1207. package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.d.ts +1 -1
  1208. package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.d.ts.map +1 -1
  1209. package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.js +28 -18
  1210. package/dist/commonjs/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +20 -35
  1211. package/dist/commonjs/parsers/texttracks/ttml/html/apply_extent.js +33 -23
  1212. package/dist/commonjs/parsers/texttracks/ttml/html/apply_font_size.js +30 -22
  1213. package/dist/commonjs/parsers/texttracks/ttml/html/apply_line_height.js +43 -34
  1214. package/dist/commonjs/parsers/texttracks/ttml/html/apply_origin.js +33 -23
  1215. package/dist/commonjs/parsers/texttracks/ttml/html/apply_padding.js +55 -55
  1216. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.d.ts +1 -1
  1217. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.d.ts.map +1 -1
  1218. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.js +150 -147
  1219. package/dist/commonjs/parsers/texttracks/ttml/html/generate_css_test_outline.js +19 -12
  1220. package/dist/commonjs/parsers/texttracks/ttml/html/index.d.ts +1 -1
  1221. package/dist/commonjs/parsers/texttracks/ttml/html/index.d.ts.map +1 -1
  1222. package/dist/commonjs/parsers/texttracks/ttml/html/index.js +18 -7
  1223. package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.d.ts +1 -1
  1224. package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.d.ts.map +1 -1
  1225. package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.js +27 -15
  1226. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +1 -1
  1227. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts.map +1 -1
  1228. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.js +41 -37
  1229. package/dist/commonjs/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +30 -50
  1230. package/dist/commonjs/parsers/texttracks/ttml/native/index.d.ts +1 -1
  1231. package/dist/commonjs/parsers/texttracks/ttml/native/index.d.ts.map +1 -1
  1232. package/dist/commonjs/parsers/texttracks/ttml/native/index.js +18 -7
  1233. package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.d.ts +2 -2
  1234. package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.d.ts.map +1 -1
  1235. package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.js +69 -78
  1236. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +1 -1
  1237. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts.map +1 -1
  1238. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +38 -34
  1239. package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.d.ts +2 -2
  1240. package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.d.ts.map +1 -1
  1241. package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.js +109 -92
  1242. package/dist/commonjs/parsers/texttracks/ttml/regexps.js +48 -16
  1243. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +1 -1
  1244. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts.map +1 -1
  1245. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.js +53 -48
  1246. package/dist/commonjs/parsers/texttracks/ttml/time_parsing.d.ts +1 -1
  1247. package/dist/commonjs/parsers/texttracks/ttml/time_parsing.d.ts.map +1 -1
  1248. package/dist/commonjs/parsers/texttracks/ttml/time_parsing.js +29 -32
  1249. package/dist/commonjs/parsers/texttracks/ttml/xml_utils.js +82 -87
  1250. package/dist/commonjs/parsers/texttracks/types.d.ts +1 -1
  1251. package/dist/commonjs/parsers/texttracks/types.d.ts.map +1 -1
  1252. package/dist/commonjs/parsers/texttracks/types.js +4 -3
  1253. package/dist/commonjs/parsers/texttracks/webvtt/create_default_style_elements.d.ts +1 -1
  1254. package/dist/commonjs/parsers/texttracks/webvtt/create_default_style_elements.d.ts.map +1 -1
  1255. package/dist/commonjs/parsers/texttracks/webvtt/create_default_style_elements.js +12 -6
  1256. package/dist/commonjs/parsers/texttracks/webvtt/get_cue_blocks.js +23 -14
  1257. package/dist/commonjs/parsers/texttracks/webvtt/get_style_blocks.js +23 -14
  1258. package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +1 -1
  1259. package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts.map +1 -1
  1260. package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.js +22 -14
  1261. package/dist/commonjs/parsers/texttracks/webvtt/html/create_style_attribute.js +58 -60
  1262. package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.d.ts +1 -1
  1263. package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.d.ts.map +1 -1
  1264. package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.js +50 -33
  1265. package/dist/commonjs/parsers/texttracks/webvtt/html/index.d.ts +3 -3
  1266. package/dist/commonjs/parsers/texttracks/webvtt/html/index.d.ts.map +1 -1
  1267. package/dist/commonjs/parsers/texttracks/webvtt/html/index.js +26 -10
  1268. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_mp4.d.ts +1 -1
  1269. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_mp4.d.ts.map +1 -1
  1270. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_mp4.js +23 -12
  1271. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_plain_text.d.ts +1 -1
  1272. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_plain_text.d.ts.map +1 -1
  1273. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_plain_text.js +33 -24
  1274. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts +1 -1
  1275. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts.map +1 -1
  1276. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.js +34 -21
  1277. package/dist/commonjs/parsers/texttracks/webvtt/native/index.d.ts +2 -2
  1278. package/dist/commonjs/parsers/texttracks/webvtt/native/index.d.ts.map +1 -1
  1279. package/dist/commonjs/parsers/texttracks/webvtt/native/index.js +26 -10
  1280. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_plain_text_to_cues.d.ts +1 -1
  1281. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_plain_text_to_cues.d.ts.map +1 -1
  1282. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_plain_text_to_cues.js +50 -46
  1283. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_webvtt_mp4_to_cues.d.ts +1 -1
  1284. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_webvtt_mp4_to_cues.d.ts.map +1 -1
  1285. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_webvtt_mp4_to_cues.js +24 -14
  1286. package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +1 -1
  1287. package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts.map +1 -1
  1288. package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.js +39 -19
  1289. package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.d.ts +2 -2
  1290. package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.d.ts.map +1 -1
  1291. package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.js +18 -8
  1292. package/dist/commonjs/parsers/texttracks/webvtt/parse_cue_block.js +43 -29
  1293. package/dist/commonjs/parsers/texttracks/webvtt/parse_mp4_embedded_wvtt.d.ts +1 -1
  1294. package/dist/commonjs/parsers/texttracks/webvtt/parse_mp4_embedded_wvtt.d.ts.map +1 -1
  1295. package/dist/commonjs/parsers/texttracks/webvtt/parse_mp4_embedded_wvtt.js +62 -62
  1296. package/dist/commonjs/parsers/texttracks/webvtt/parse_style_block.js +42 -37
  1297. package/dist/commonjs/parsers/texttracks/webvtt/parse_timestamp.js +19 -9
  1298. package/dist/commonjs/parsers/texttracks/webvtt/utils.js +54 -44
  1299. package/dist/commonjs/playback_observer/core_playback_observer.d.ts +7 -7
  1300. package/dist/commonjs/playback_observer/core_playback_observer.d.ts.map +1 -1
  1301. package/dist/commonjs/playback_observer/core_playback_observer.js +95 -38
  1302. package/dist/commonjs/playback_observer/index.d.ts +4 -4
  1303. package/dist/commonjs/playback_observer/index.d.ts.map +1 -1
  1304. package/dist/commonjs/playback_observer/index.js +15 -4
  1305. package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts +5 -5
  1306. package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts.map +1 -1
  1307. package/dist/commonjs/playback_observer/media_element_playback_observer.js +476 -495
  1308. package/dist/commonjs/playback_observer/types.d.ts +3 -3
  1309. package/dist/commonjs/playback_observer/types.d.ts.map +1 -1
  1310. package/dist/commonjs/playback_observer/types.js +3 -1
  1311. package/dist/commonjs/playback_observer/utils/generate_read_only_observer.d.ts +3 -3
  1312. package/dist/commonjs/playback_observer/utils/generate_read_only_observer.d.ts.map +1 -1
  1313. package/dist/commonjs/playback_observer/utils/generate_read_only_observer.js +19 -13
  1314. package/dist/commonjs/playback_observer/utils/observation_position.js +72 -32
  1315. package/dist/commonjs/public_types.d.ts +6 -6
  1316. package/dist/commonjs/public_types.d.ts.map +1 -1
  1317. package/dist/commonjs/public_types.js +4 -3
  1318. package/dist/commonjs/tools/TextTrackRenderer/index.d.ts +6 -6
  1319. package/dist/commonjs/tools/TextTrackRenderer/index.d.ts.map +1 -1
  1320. package/dist/commonjs/tools/TextTrackRenderer/index.js +38 -15
  1321. package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.d.ts +2 -2
  1322. package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.d.ts.map +1 -1
  1323. package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.js +90 -58
  1324. package/dist/commonjs/tools/index.d.ts +3 -3
  1325. package/dist/commonjs/tools/index.d.ts.map +1 -1
  1326. package/dist/commonjs/tools/index.js +59 -9
  1327. package/dist/commonjs/tools/parseBIFThumbnails/index.js +24 -11
  1328. package/dist/commonjs/tools/string_utils/index.d.ts +1 -1
  1329. package/dist/commonjs/tools/string_utils/index.d.ts.map +1 -1
  1330. package/dist/commonjs/tools/string_utils/index.js +31 -11
  1331. package/dist/commonjs/transports/dash/construct_segment_url.d.ts +2 -2
  1332. package/dist/commonjs/transports/dash/construct_segment_url.d.ts.map +1 -1
  1333. package/dist/commonjs/transports/dash/construct_segment_url.js +12 -6
  1334. package/dist/commonjs/transports/dash/get_events_out_of_emsgs.d.ts +2 -2
  1335. package/dist/commonjs/transports/dash/get_events_out_of_emsgs.d.ts.map +1 -1
  1336. package/dist/commonjs/transports/dash/get_events_out_of_emsgs.js +47 -45
  1337. package/dist/commonjs/transports/dash/index.d.ts +1 -1
  1338. package/dist/commonjs/transports/dash/index.d.ts.map +1 -1
  1339. package/dist/commonjs/transports/dash/index.js +18 -7
  1340. package/dist/commonjs/transports/dash/init_segment_loader.d.ts +3 -3
  1341. package/dist/commonjs/transports/dash/init_segment_loader.d.ts.map +1 -1
  1342. package/dist/commonjs/transports/dash/init_segment_loader.js +118 -60
  1343. package/dist/commonjs/transports/dash/integrity_checks.d.ts +1 -1
  1344. package/dist/commonjs/transports/dash/integrity_checks.d.ts.map +1 -1
  1345. package/dist/commonjs/transports/dash/integrity_checks.js +245 -141
  1346. package/dist/commonjs/transports/dash/load_chunked_segment_data.d.ts +2 -2
  1347. package/dist/commonjs/transports/dash/load_chunked_segment_data.d.ts.map +1 -1
  1348. package/dist/commonjs/transports/dash/load_chunked_segment_data.js +169 -65
  1349. package/dist/commonjs/transports/dash/manifest_parser.d.ts +2 -2
  1350. package/dist/commonjs/transports/dash/manifest_parser.d.ts.map +1 -1
  1351. package/dist/commonjs/transports/dash/manifest_parser.js +119 -133
  1352. package/dist/commonjs/transports/dash/pipelines.d.ts +1 -1
  1353. package/dist/commonjs/transports/dash/pipelines.d.ts.map +1 -1
  1354. package/dist/commonjs/transports/dash/pipelines.js +49 -34
  1355. package/dist/commonjs/transports/dash/segment_loader.d.ts +3 -3
  1356. package/dist/commonjs/transports/dash/segment_loader.d.ts.map +1 -1
  1357. package/dist/commonjs/transports/dash/segment_loader.js +270 -142
  1358. package/dist/commonjs/transports/dash/segment_parser.d.ts +1 -1
  1359. package/dist/commonjs/transports/dash/segment_parser.d.ts.map +1 -1
  1360. package/dist/commonjs/transports/dash/segment_parser.js +59 -53
  1361. package/dist/commonjs/transports/dash/text_loader.d.ts +1 -1
  1362. package/dist/commonjs/transports/dash/text_loader.d.ts.map +1 -1
  1363. package/dist/commonjs/transports/dash/text_loader.js +247 -107
  1364. package/dist/commonjs/transports/dash/text_parser.d.ts +1 -1
  1365. package/dist/commonjs/transports/dash/text_parser.d.ts.map +1 -1
  1366. package/dist/commonjs/transports/dash/text_parser.js +81 -68
  1367. package/dist/commonjs/transports/dash/thumbnails.d.ts +4 -4
  1368. package/dist/commonjs/transports/dash/thumbnails.d.ts.map +1 -1
  1369. package/dist/commonjs/transports/dash/thumbnails.js +167 -81
  1370. package/dist/commonjs/transports/index.d.ts +1 -1
  1371. package/dist/commonjs/transports/index.d.ts.map +1 -1
  1372. package/dist/commonjs/transports/index.js +4 -3
  1373. package/dist/commonjs/transports/local/index.d.ts +1 -1
  1374. package/dist/commonjs/transports/local/index.d.ts.map +1 -1
  1375. package/dist/commonjs/transports/local/index.js +17 -5
  1376. package/dist/commonjs/transports/local/pipelines.d.ts +1 -1
  1377. package/dist/commonjs/transports/local/pipelines.d.ts.map +1 -1
  1378. package/dist/commonjs/transports/local/pipelines.js +49 -35
  1379. package/dist/commonjs/transports/local/segment_loader.d.ts +3 -3
  1380. package/dist/commonjs/transports/local/segment_loader.d.ts.map +1 -1
  1381. package/dist/commonjs/transports/local/segment_loader.js +54 -52
  1382. package/dist/commonjs/transports/local/segment_parser.d.ts +1 -1
  1383. package/dist/commonjs/transports/local/segment_parser.d.ts.map +1 -1
  1384. package/dist/commonjs/transports/local/segment_parser.js +39 -26
  1385. package/dist/commonjs/transports/local/text_parser.d.ts +1 -1
  1386. package/dist/commonjs/transports/local/text_parser.d.ts.map +1 -1
  1387. package/dist/commonjs/transports/local/text_parser.js +63 -45
  1388. package/dist/commonjs/transports/metaplaylist/index.d.ts +1 -1
  1389. package/dist/commonjs/transports/metaplaylist/index.d.ts.map +1 -1
  1390. package/dist/commonjs/transports/metaplaylist/index.js +18 -7
  1391. package/dist/commonjs/transports/metaplaylist/pipelines.d.ts +1 -1
  1392. package/dist/commonjs/transports/metaplaylist/pipelines.d.ts.map +1 -1
  1393. package/dist/commonjs/transports/metaplaylist/pipelines.js +92 -92
  1394. package/dist/commonjs/transports/smooth/extract_timings_infos.d.ts +2 -2
  1395. package/dist/commonjs/transports/smooth/extract_timings_infos.d.ts.map +1 -1
  1396. package/dist/commonjs/transports/smooth/extract_timings_infos.js +68 -50
  1397. package/dist/commonjs/transports/smooth/index.d.ts +1 -1
  1398. package/dist/commonjs/transports/smooth/index.d.ts.map +1 -1
  1399. package/dist/commonjs/transports/smooth/index.js +18 -7
  1400. package/dist/commonjs/transports/smooth/is_mp4_embedded_track.js +11 -6
  1401. package/dist/commonjs/transports/smooth/isobmff/create_audio_init_segment.js +44 -26
  1402. package/dist/commonjs/transports/smooth/isobmff/create_boxes.js +277 -172
  1403. package/dist/commonjs/transports/smooth/isobmff/create_init_segment.d.ts.map +1 -1
  1404. package/dist/commonjs/transports/smooth/isobmff/create_init_segment.js +72 -38
  1405. package/dist/commonjs/transports/smooth/isobmff/create_traf_box.d.ts.map +1 -1
  1406. package/dist/commonjs/transports/smooth/isobmff/create_traf_box.js +19 -9
  1407. package/dist/commonjs/transports/smooth/isobmff/create_video_init_segment.js +91 -42
  1408. package/dist/commonjs/transports/smooth/isobmff/get_aaces_header.js +34 -18
  1409. package/dist/commonjs/transports/smooth/isobmff/index.d.ts +6 -6
  1410. package/dist/commonjs/transports/smooth/isobmff/index.d.ts.map +1 -1
  1411. package/dist/commonjs/transports/smooth/isobmff/index.js +37 -14
  1412. package/dist/commonjs/transports/smooth/isobmff/parse_tfrf.js +21 -17
  1413. package/dist/commonjs/transports/smooth/isobmff/parse_tfxd.js +16 -11
  1414. package/dist/commonjs/transports/smooth/isobmff/patch_segment.js +59 -48
  1415. package/dist/commonjs/transports/smooth/pipelines.d.ts +1 -1
  1416. package/dist/commonjs/transports/smooth/pipelines.d.ts.map +1 -1
  1417. package/dist/commonjs/transports/smooth/pipelines.js +144 -152
  1418. package/dist/commonjs/transports/smooth/segment_loader.d.ts +3 -3
  1419. package/dist/commonjs/transports/smooth/segment_loader.d.ts.map +1 -1
  1420. package/dist/commonjs/transports/smooth/segment_loader.js +257 -153
  1421. package/dist/commonjs/transports/smooth/utils.d.ts +2 -2
  1422. package/dist/commonjs/transports/smooth/utils.d.ts.map +1 -1
  1423. package/dist/commonjs/transports/smooth/utils.js +22 -11
  1424. package/dist/commonjs/transports/types.d.ts +7 -7
  1425. package/dist/commonjs/transports/types.d.ts.map +1 -1
  1426. package/dist/commonjs/transports/types.js +4 -3
  1427. package/dist/commonjs/transports/utils/add_query_string.js +14 -11
  1428. package/dist/commonjs/transports/utils/byte_range.js +58 -23
  1429. package/dist/commonjs/transports/utils/call_custom_manifest_loader.d.ts +3 -3
  1430. package/dist/commonjs/transports/utils/call_custom_manifest_loader.d.ts.map +1 -1
  1431. package/dist/commonjs/transports/utils/call_custom_manifest_loader.js +51 -40
  1432. package/dist/commonjs/transports/utils/check_isobmff_integrity.js +22 -18
  1433. package/dist/commonjs/transports/utils/generate_manifest_loader.d.ts +2 -2
  1434. package/dist/commonjs/transports/utils/generate_manifest_loader.d.ts.map +1 -1
  1435. package/dist/commonjs/transports/utils/generate_manifest_loader.js +38 -35
  1436. package/dist/commonjs/transports/utils/get_isobmff_timing_infos.d.ts +2 -2
  1437. package/dist/commonjs/transports/utils/get_isobmff_timing_infos.d.ts.map +1 -1
  1438. package/dist/commonjs/transports/utils/get_isobmff_timing_infos.js +25 -18
  1439. package/dist/commonjs/transports/utils/infer_segment_container.d.ts +1 -1
  1440. package/dist/commonjs/transports/utils/infer_segment_container.d.ts.map +1 -1
  1441. package/dist/commonjs/transports/utils/infer_segment_container.js +12 -8
  1442. package/dist/commonjs/transports/utils/parse_text_track.d.ts +2 -2
  1443. package/dist/commonjs/transports/utils/parse_text_track.d.ts.map +1 -1
  1444. package/dist/commonjs/transports/utils/parse_text_track.js +52 -63
  1445. package/dist/commonjs/utils/are_arrays_of_numbers_equal.js +12 -7
  1446. package/dist/commonjs/utils/are_codecs_compatible.js +62 -28
  1447. package/dist/commonjs/utils/array_find.js +12 -7
  1448. package/dist/commonjs/utils/array_find_index.js +12 -7
  1449. package/dist/commonjs/utils/array_includes.js +15 -11
  1450. package/dist/commonjs/utils/assert.js +145 -85
  1451. package/dist/commonjs/utils/base64.d.ts.map +1 -1
  1452. package/dist/commonjs/utils/base64.js +172 -47
  1453. package/dist/commonjs/utils/buffer_source_to_uint8.js +18 -7
  1454. package/dist/commonjs/utils/byte_parsing.js +119 -111
  1455. package/dist/commonjs/utils/cancellable_sleep.d.ts +1 -1
  1456. package/dist/commonjs/utils/cancellable_sleep.d.ts.map +1 -1
  1457. package/dist/commonjs/utils/cancellable_sleep.js +24 -10
  1458. package/dist/commonjs/utils/create_cancellable_promise.d.ts +1 -1
  1459. package/dist/commonjs/utils/create_cancellable_promise.d.ts.map +1 -1
  1460. package/dist/commonjs/utils/create_cancellable_promise.js +17 -11
  1461. package/dist/commonjs/utils/create_uuid.js +25 -15
  1462. package/dist/commonjs/utils/deep_merge.js +70 -47
  1463. package/dist/commonjs/utils/event_emitter.d.ts +1 -1
  1464. package/dist/commonjs/utils/event_emitter.d.ts.map +1 -1
  1465. package/dist/commonjs/utils/event_emitter.js +150 -105
  1466. package/dist/commonjs/utils/flat_map.js +41 -33
  1467. package/dist/commonjs/utils/get_fuzzed_delay.js +14 -9
  1468. package/dist/commonjs/utils/get_last_item_from_array.d.ts +8 -0
  1469. package/dist/commonjs/utils/get_last_item_from_array.d.ts.map +1 -0
  1470. package/dist/commonjs/utils/get_last_item_from_array.js +18 -0
  1471. package/dist/commonjs/utils/global_scope.js +21 -11
  1472. package/dist/commonjs/utils/hash_buffer.js +12 -7
  1473. package/dist/commonjs/utils/id_generator.js +11 -6
  1474. package/dist/commonjs/utils/is_node.js +18 -7
  1475. package/dist/commonjs/utils/is_non_empty_string.js +11 -6
  1476. package/dist/commonjs/utils/is_null_or_undefined.js +11 -6
  1477. package/dist/commonjs/utils/is_worker.js +17 -5
  1478. package/dist/commonjs/utils/languages/ISO_639-1_to_ISO_639-3.js +195 -189
  1479. package/dist/commonjs/utils/languages/ISO_639-2_to_ISO_639-3.js +32 -26
  1480. package/dist/commonjs/utils/languages/index.d.ts +2 -2
  1481. package/dist/commonjs/utils/languages/index.d.ts.map +1 -1
  1482. package/dist/commonjs/utils/languages/index.js +53 -8
  1483. package/dist/commonjs/utils/languages/normalize.js +52 -33
  1484. package/dist/commonjs/utils/logger.d.ts +1 -1
  1485. package/dist/commonjs/utils/logger.d.ts.map +1 -1
  1486. package/dist/commonjs/utils/logger.js +236 -173
  1487. package/dist/commonjs/utils/monotonic_timestamp.js +33 -17
  1488. package/dist/commonjs/utils/noop.js +13 -8
  1489. package/dist/commonjs/utils/object_assign.d.ts.map +1 -1
  1490. package/dist/commonjs/utils/object_assign.js +30 -33
  1491. package/dist/commonjs/utils/object_entries.d.ts +16 -0
  1492. package/dist/commonjs/utils/object_entries.d.ts.map +1 -0
  1493. package/dist/commonjs/utils/object_entries.js +31 -0
  1494. package/dist/commonjs/utils/object_values.js +24 -9
  1495. package/dist/commonjs/utils/queue_microtask.js +14 -6
  1496. package/dist/commonjs/utils/ranges.js +178 -133
  1497. package/dist/commonjs/utils/reference.d.ts +1 -1
  1498. package/dist/commonjs/utils/reference.d.ts.map +1 -1
  1499. package/dist/commonjs/utils/reference.js +246 -197
  1500. package/dist/commonjs/utils/request/fetch.d.ts +1 -1
  1501. package/dist/commonjs/utils/request/fetch.d.ts.map +1 -1
  1502. package/dist/commonjs/utils/request/fetch.js +253 -109
  1503. package/dist/commonjs/utils/request/index.d.ts +6 -6
  1504. package/dist/commonjs/utils/request/index.d.ts.map +1 -1
  1505. package/dist/commonjs/utils/request/index.js +69 -13
  1506. package/dist/commonjs/utils/request/request_error.d.ts +9 -1
  1507. package/dist/commonjs/utils/request/request_error.d.ts.map +1 -1
  1508. package/dist/commonjs/utils/request/request_error.js +159 -41
  1509. package/dist/commonjs/utils/request/xhr.d.ts +1 -1
  1510. package/dist/commonjs/utils/request/xhr.d.ts.map +1 -1
  1511. package/dist/commonjs/utils/request/xhr.js +107 -63
  1512. package/dist/commonjs/utils/retry_promise_with_backoff.d.ts +1 -1
  1513. package/dist/commonjs/utils/retry_promise_with_backoff.d.ts.map +1 -1
  1514. package/dist/commonjs/utils/retry_promise_with_backoff.js +190 -72
  1515. package/dist/commonjs/utils/sleep.js +11 -5
  1516. package/dist/commonjs/utils/slice_uint8array.js +13 -10
  1517. package/dist/commonjs/utils/sorted_list.js +140 -114
  1518. package/dist/commonjs/utils/starts_with.js +12 -8
  1519. package/dist/commonjs/utils/string_parsing.js +115 -102
  1520. package/dist/commonjs/utils/sync_or_async.js +27 -17
  1521. package/dist/commonjs/utils/task_canceller.js +286 -250
  1522. package/dist/commonjs/utils/url-utils.js +99 -100
  1523. package/dist/commonjs/utils/warn_once.js +19 -9
  1524. package/dist/commonjs/utils/weak_map_memory.js +55 -29
  1525. package/dist/commonjs/utils/wrapInPromise.js +17 -11
  1526. package/dist/commonjs/utils/xml-parser.js +112 -125
  1527. package/dist/commonjs/worker_entry_point.js +11 -4
  1528. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
  1529. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.js +2 -1
  1530. package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  1531. package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
  1532. package/dist/es2017/__GENERATED_CODE/index.d.ts +2 -2
  1533. package/dist/es2017/__GENERATED_CODE/index.d.ts.map +1 -1
  1534. package/dist/es2017/__GENERATED_CODE/index.js +2 -2
  1535. package/dist/es2017/compat/add_text_track.d.ts +1 -1
  1536. package/dist/es2017/compat/add_text_track.d.ts.map +1 -1
  1537. package/dist/es2017/compat/add_text_track.js +1 -1
  1538. package/dist/es2017/compat/browser_compatibility_types.d.ts +8 -7
  1539. package/dist/es2017/compat/browser_compatibility_types.d.ts.map +1 -1
  1540. package/dist/es2017/compat/browser_compatibility_types.js +1 -1
  1541. package/dist/es2017/compat/browser_version.js +2 -2
  1542. package/dist/es2017/compat/can_patch_isobmff.js +1 -1
  1543. package/dist/es2017/compat/can_patch_out_pssh.js +2 -2
  1544. package/dist/es2017/compat/can_preload_before_play.js +1 -1
  1545. package/dist/es2017/compat/can_rely_on_request_media_key_system_access.d.ts +7 -2
  1546. package/dist/es2017/compat/can_rely_on_request_media_key_system_access.d.ts.map +1 -1
  1547. package/dist/es2017/compat/can_rely_on_request_media_key_system_access.js +12 -4
  1548. package/dist/es2017/compat/can_rely_on_video_visibility_and_size.js +2 -2
  1549. package/dist/es2017/compat/can_reuse_media_keys.js +2 -2
  1550. package/dist/es2017/compat/change_source_buffer_type.d.ts +1 -1
  1551. package/dist/es2017/compat/change_source_buffer_type.d.ts.map +1 -1
  1552. package/dist/es2017/compat/change_source_buffer_type.js +1 -1
  1553. package/dist/es2017/compat/clear_element_src.d.ts +1 -1
  1554. package/dist/es2017/compat/clear_element_src.d.ts.map +1 -1
  1555. package/dist/es2017/compat/clear_element_src.js +2 -2
  1556. package/dist/es2017/compat/disable_remote_playback_on_managed_media_source.d.ts +2 -2
  1557. package/dist/es2017/compat/disable_remote_playback_on_managed_media_source.d.ts.map +1 -1
  1558. package/dist/es2017/compat/disable_remote_playback_on_managed_media_source.js +1 -1
  1559. package/dist/es2017/compat/eme/close_session.d.ts +1 -1
  1560. package/dist/es2017/compat/eme/close_session.d.ts.map +1 -1
  1561. package/dist/es2017/compat/eme/close_session.js +3 -3
  1562. package/dist/es2017/compat/eme/constants.js +2 -2
  1563. package/dist/es2017/compat/eme/custom_key_system_access.d.ts +1 -1
  1564. package/dist/es2017/compat/eme/custom_key_system_access.d.ts.map +1 -1
  1565. package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts +2 -2
  1566. package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts.map +1 -1
  1567. package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.js +6 -6
  1568. package/dist/es2017/compat/eme/custom_media_keys/index.d.ts +5 -5
  1569. package/dist/es2017/compat/eme/custom_media_keys/index.d.ts.map +1 -1
  1570. package/dist/es2017/compat/eme/custom_media_keys/index.js +5 -5
  1571. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +1 -1
  1572. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -1
  1573. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.js +2 -2
  1574. package/dist/es2017/compat/eme/custom_media_keys/ms_media_keys_constructor.js +1 -1
  1575. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +1 -1
  1576. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -1
  1577. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.js +7 -7
  1578. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts +1 -1
  1579. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -1
  1580. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.js +7 -7
  1581. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts.map +1 -1
  1582. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +1 -1
  1583. package/dist/es2017/compat/eme/eme-api-implementation.d.ts +3 -3
  1584. package/dist/es2017/compat/eme/eme-api-implementation.d.ts.map +1 -1
  1585. package/dist/es2017/compat/eme/eme-api-implementation.js +15 -15
  1586. package/dist/es2017/compat/eme/generate_key_request.d.ts +1 -1
  1587. package/dist/es2017/compat/eme/generate_key_request.d.ts.map +1 -1
  1588. package/dist/es2017/compat/eme/generate_key_request.js +15 -6
  1589. package/dist/es2017/compat/eme/get_init_data.d.ts +1 -1
  1590. package/dist/es2017/compat/eme/get_init_data.d.ts.map +1 -1
  1591. package/dist/es2017/compat/eme/get_init_data.js +10 -6
  1592. package/dist/es2017/compat/eme/get_uuid_kid_from_keystatus_kid.js +2 -2
  1593. package/dist/es2017/compat/eme/get_webkit_fairplay_initdata.js +2 -2
  1594. package/dist/es2017/compat/eme/index.d.ts +7 -7
  1595. package/dist/es2017/compat/eme/index.d.ts.map +1 -1
  1596. package/dist/es2017/compat/eme/index.js +5 -5
  1597. package/dist/es2017/compat/eme/load_session.d.ts +1 -1
  1598. package/dist/es2017/compat/eme/load_session.d.ts.map +1 -1
  1599. package/dist/es2017/compat/eme/load_session.js +1 -1
  1600. package/dist/es2017/compat/eme/set_media_keys.d.ts +2 -2
  1601. package/dist/es2017/compat/eme/set_media_keys.d.ts.map +1 -1
  1602. package/dist/es2017/compat/eme/set_media_keys.js +4 -3
  1603. package/dist/es2017/compat/enable_audio_track.d.ts +1 -1
  1604. package/dist/es2017/compat/enable_audio_track.d.ts.map +1 -1
  1605. package/dist/es2017/compat/enable_audio_track.js +1 -1
  1606. package/dist/es2017/compat/env_detector.d.ts +2 -0
  1607. package/dist/es2017/compat/env_detector.d.ts.map +1 -1
  1608. package/dist/es2017/compat/env_detector.js +10 -2
  1609. package/dist/es2017/compat/event_listeners.d.ts +4 -4
  1610. package/dist/es2017/compat/event_listeners.d.ts.map +1 -1
  1611. package/dist/es2017/compat/event_listeners.js +7 -7
  1612. package/dist/es2017/compat/force_media_key_instantiation_if_needed.d.ts +24 -0
  1613. package/dist/es2017/compat/force_media_key_instantiation_if_needed.d.ts.map +1 -0
  1614. package/dist/es2017/compat/force_media_key_instantiation_if_needed.js +72 -0
  1615. package/dist/es2017/compat/generate_init_data.d.ts +8 -0
  1616. package/dist/es2017/compat/generate_init_data.d.ts.map +1 -1
  1617. package/dist/es2017/compat/generate_init_data.js +28 -2
  1618. package/dist/es2017/compat/get_start_date.d.ts +1 -1
  1619. package/dist/es2017/compat/get_start_date.d.ts.map +1 -1
  1620. package/dist/es2017/compat/has_issues_with_high_media_source_duration.js +2 -2
  1621. package/dist/es2017/compat/has_worker_api.js +1 -1
  1622. package/dist/es2017/compat/is_codec_supported.d.ts +4 -3
  1623. package/dist/es2017/compat/is_codec_supported.d.ts.map +1 -1
  1624. package/dist/es2017/compat/is_codec_supported.js +9 -15
  1625. package/dist/es2017/compat/is_seeking_approximate.js +2 -2
  1626. package/dist/es2017/compat/is_vtt_cue.d.ts +1 -1
  1627. package/dist/es2017/compat/is_vtt_cue.d.ts.map +1 -1
  1628. package/dist/es2017/compat/is_vtt_cue.js +1 -1
  1629. package/dist/es2017/compat/make_vtt_cue.d.ts +1 -1
  1630. package/dist/es2017/compat/make_vtt_cue.d.ts.map +1 -1
  1631. package/dist/es2017/compat/make_vtt_cue.js +3 -3
  1632. package/dist/es2017/compat/may_media_element_fail_on_undecipherable_data.js +2 -2
  1633. package/dist/es2017/compat/on_height_width_change.d.ts +2 -2
  1634. package/dist/es2017/compat/on_height_width_change.d.ts.map +1 -1
  1635. package/dist/es2017/compat/on_height_width_change.js +3 -3
  1636. package/dist/es2017/compat/patch_webkit_source_buffer.js +5 -5
  1637. package/dist/es2017/compat/remove_cue.d.ts +1 -1
  1638. package/dist/es2017/compat/remove_cue.d.ts.map +1 -1
  1639. package/dist/es2017/compat/remove_cue.js +2 -2
  1640. package/dist/es2017/compat/reset_media_element.d.ts +1 -1
  1641. package/dist/es2017/compat/reset_media_element.d.ts.map +1 -1
  1642. package/dist/es2017/compat/reset_media_element.js +2 -2
  1643. package/dist/es2017/compat/should_await_set_media_keys.js +2 -2
  1644. package/dist/es2017/compat/should_favour_custom_safari_EME.js +3 -3
  1645. package/dist/es2017/compat/should_patch_out_dolby_vision_config_data_from_mp4.js +2 -2
  1646. package/dist/es2017/compat/should_reload_media_source_on_decipherability_update.js +1 -1
  1647. package/dist/es2017/compat/should_renew_media_key_system_access.d.ts +11 -0
  1648. package/dist/es2017/compat/should_renew_media_key_system_access.d.ts.map +1 -1
  1649. package/dist/es2017/compat/should_renew_media_key_system_access.js +17 -4
  1650. package/dist/es2017/compat/should_seek_at_zero.js +2 -2
  1651. package/dist/es2017/compat/should_unset_media_keys.js +2 -2
  1652. package/dist/es2017/compat/should_validate_metadata.js +2 -2
  1653. package/dist/es2017/compat/should_wait_for_data_before_loaded.js +2 -2
  1654. package/dist/es2017/compat/should_wait_for_have_enough_data.js +2 -2
  1655. package/dist/es2017/config.d.ts +2 -2
  1656. package/dist/es2017/config.d.ts.map +1 -1
  1657. package/dist/es2017/config.js +3 -3
  1658. package/dist/es2017/core/adaptive/adaptive_representation_selector.d.ts +9 -9
  1659. package/dist/es2017/core/adaptive/adaptive_representation_selector.d.ts.map +1 -1
  1660. package/dist/es2017/core/adaptive/adaptive_representation_selector.js +17 -17
  1661. package/dist/es2017/core/adaptive/buffer_based_chooser.d.ts +1 -1
  1662. package/dist/es2017/core/adaptive/buffer_based_chooser.d.ts.map +1 -1
  1663. package/dist/es2017/core/adaptive/buffer_based_chooser.js +5 -5
  1664. package/dist/es2017/core/adaptive/guess_based_chooser.d.ts +4 -4
  1665. package/dist/es2017/core/adaptive/guess_based_chooser.d.ts.map +1 -1
  1666. package/dist/es2017/core/adaptive/guess_based_chooser.js +4 -4
  1667. package/dist/es2017/core/adaptive/index.d.ts +2 -2
  1668. package/dist/es2017/core/adaptive/index.d.ts.map +1 -1
  1669. package/dist/es2017/core/adaptive/index.js +1 -1
  1670. package/dist/es2017/core/adaptive/network_analyzer.d.ts +4 -4
  1671. package/dist/es2017/core/adaptive/network_analyzer.d.ts.map +1 -1
  1672. package/dist/es2017/core/adaptive/network_analyzer.js +6 -6
  1673. package/dist/es2017/core/adaptive/utils/bandwidth_estimator.js +2 -2
  1674. package/dist/es2017/core/adaptive/utils/filter_by_bitrate.d.ts +1 -1
  1675. package/dist/es2017/core/adaptive/utils/filter_by_bitrate.d.ts.map +1 -1
  1676. package/dist/es2017/core/adaptive/utils/filter_by_bitrate.js +1 -1
  1677. package/dist/es2017/core/adaptive/utils/filter_by_resolution.d.ts +1 -1
  1678. package/dist/es2017/core/adaptive/utils/filter_by_resolution.d.ts.map +1 -1
  1679. package/dist/es2017/core/adaptive/utils/filter_by_resolution.js +1 -1
  1680. package/dist/es2017/core/adaptive/utils/last_estimate_storage.d.ts +1 -1
  1681. package/dist/es2017/core/adaptive/utils/last_estimate_storage.d.ts.map +1 -1
  1682. package/dist/es2017/core/adaptive/utils/pending_requests_store.d.ts +1 -1
  1683. package/dist/es2017/core/adaptive/utils/pending_requests_store.d.ts.map +1 -1
  1684. package/dist/es2017/core/adaptive/utils/pending_requests_store.js +3 -3
  1685. package/dist/es2017/core/adaptive/utils/representation_score_calculator.d.ts +1 -1
  1686. package/dist/es2017/core/adaptive/utils/representation_score_calculator.d.ts.map +1 -1
  1687. package/dist/es2017/core/adaptive/utils/representation_score_calculator.js +2 -2
  1688. package/dist/es2017/core/adaptive/utils/select_optimal_representation.d.ts +1 -1
  1689. package/dist/es2017/core/adaptive/utils/select_optimal_representation.d.ts.map +1 -1
  1690. package/dist/es2017/core/adaptive/utils/select_optimal_representation.js +1 -1
  1691. package/dist/es2017/core/cmcd/cmcd_data_builder.d.ts +4 -4
  1692. package/dist/es2017/core/cmcd/cmcd_data_builder.d.ts.map +1 -1
  1693. package/dist/es2017/core/cmcd/cmcd_data_builder.js +5 -5
  1694. package/dist/es2017/core/cmcd/index.d.ts +2 -2
  1695. package/dist/es2017/core/cmcd/index.d.ts.map +1 -1
  1696. package/dist/es2017/core/cmcd/index.js +1 -1
  1697. package/dist/es2017/core/entry/FreezeResolver.d.ts +3 -3
  1698. package/dist/es2017/core/entry/FreezeResolver.d.ts.map +1 -1
  1699. package/dist/es2017/core/entry/FreezeResolver.js +3 -3
  1700. package/dist/es2017/core/entry/content_preparer.d.ts +26 -30
  1701. package/dist/es2017/core/entry/content_preparer.d.ts.map +1 -1
  1702. package/dist/es2017/core/entry/content_preparer.js +41 -45
  1703. package/dist/es2017/core/entry/content_time_boundaries_observer.d.ts +5 -5
  1704. package/dist/es2017/core/entry/content_time_boundaries_observer.d.ts.map +1 -1
  1705. package/dist/es2017/core/entry/content_time_boundaries_observer.js +7 -7
  1706. package/dist/es2017/core/entry/core_entry.d.ts +4 -4
  1707. package/dist/es2017/core/entry/core_entry.d.ts.map +1 -1
  1708. package/dist/es2017/core/entry/core_entry.js +21 -27
  1709. package/dist/es2017/core/entry/core_text_displayer_interface.d.ts +4 -4
  1710. package/dist/es2017/core/entry/core_text_displayer_interface.d.ts.map +1 -1
  1711. package/dist/es2017/core/entry/core_text_displayer_interface.js +2 -2
  1712. package/dist/es2017/core/entry/create_content_time_boundaries_observer.d.ts +7 -7
  1713. package/dist/es2017/core/entry/create_content_time_boundaries_observer.d.ts.map +1 -1
  1714. package/dist/es2017/core/entry/create_content_time_boundaries_observer.js +2 -2
  1715. package/dist/es2017/core/entry/get_buffered_data_per_media_buffer.d.ts +4 -4
  1716. package/dist/es2017/core/entry/get_buffered_data_per_media_buffer.d.ts.map +1 -1
  1717. package/dist/es2017/core/entry/get_buffered_data_per_media_buffer.js +1 -1
  1718. package/dist/es2017/core/entry/get_thumbnail_data.d.ts +3 -3
  1719. package/dist/es2017/core/entry/get_thumbnail_data.d.ts.map +1 -1
  1720. package/dist/es2017/core/entry/get_thumbnail_data.js +2 -2
  1721. package/dist/es2017/core/entry/index.d.ts +3 -3
  1722. package/dist/es2017/core/entry/index.d.ts.map +1 -1
  1723. package/dist/es2017/core/entry/index.js +1 -1
  1724. package/dist/es2017/core/entry/track_choice_setter.d.ts +4 -4
  1725. package/dist/es2017/core/entry/track_choice_setter.d.ts.map +1 -1
  1726. package/dist/es2017/core/entry/track_choice_setter.js +4 -4
  1727. package/dist/es2017/core/entry/utils.d.ts +5 -5
  1728. package/dist/es2017/core/entry/utils.d.ts.map +1 -1
  1729. package/dist/es2017/core/entry/utils.js +4 -4
  1730. package/dist/es2017/core/fetchers/cdn_prioritizer.d.ts +3 -3
  1731. package/dist/es2017/core/fetchers/cdn_prioritizer.d.ts.map +1 -1
  1732. package/dist/es2017/core/fetchers/cdn_prioritizer.js +3 -3
  1733. package/dist/es2017/core/fetchers/index.d.ts +7 -7
  1734. package/dist/es2017/core/fetchers/index.d.ts.map +1 -1
  1735. package/dist/es2017/core/fetchers/index.js +4 -4
  1736. package/dist/es2017/core/fetchers/manifest/index.d.ts +2 -2
  1737. package/dist/es2017/core/fetchers/manifest/index.d.ts.map +1 -1
  1738. package/dist/es2017/core/fetchers/manifest/index.js +1 -1
  1739. package/dist/es2017/core/fetchers/manifest/manifest_fetcher.d.ts +5 -5
  1740. package/dist/es2017/core/fetchers/manifest/manifest_fetcher.d.ts.map +1 -1
  1741. package/dist/es2017/core/fetchers/manifest/manifest_fetcher.js +10 -10
  1742. package/dist/es2017/core/fetchers/segment/index.d.ts +4 -4
  1743. package/dist/es2017/core/fetchers/segment/index.d.ts.map +1 -1
  1744. package/dist/es2017/core/fetchers/segment/index.js +1 -1
  1745. package/dist/es2017/core/fetchers/segment/initialization_segment_cache.d.ts +1 -1
  1746. package/dist/es2017/core/fetchers/segment/initialization_segment_cache.d.ts.map +1 -1
  1747. package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.d.ts +4 -4
  1748. package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.d.ts.map +1 -1
  1749. package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.js +1 -1
  1750. package/dist/es2017/core/fetchers/segment/segment_fetcher.d.ts +8 -8
  1751. package/dist/es2017/core/fetchers/segment/segment_fetcher.d.ts.map +1 -1
  1752. package/dist/es2017/core/fetchers/segment/segment_fetcher.js +13 -13
  1753. package/dist/es2017/core/fetchers/segment/segment_queue.d.ts +6 -6
  1754. package/dist/es2017/core/fetchers/segment/segment_queue.d.ts.map +1 -1
  1755. package/dist/es2017/core/fetchers/segment/segment_queue.js +7 -7
  1756. package/dist/es2017/core/fetchers/segment/segment_queue_creator.d.ts +7 -7
  1757. package/dist/es2017/core/fetchers/segment/segment_queue_creator.d.ts.map +1 -1
  1758. package/dist/es2017/core/fetchers/segment/segment_queue_creator.js +5 -5
  1759. package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts +1 -1
  1760. package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts.map +1 -1
  1761. package/dist/es2017/core/fetchers/segment/task_prioritizer.js +4 -4
  1762. package/dist/es2017/core/fetchers/thumbnails/index.d.ts +2 -2
  1763. package/dist/es2017/core/fetchers/thumbnails/index.d.ts.map +1 -1
  1764. package/dist/es2017/core/fetchers/thumbnails/index.js +1 -1
  1765. package/dist/es2017/core/fetchers/thumbnails/thumbnail_fetcher.d.ts +5 -5
  1766. package/dist/es2017/core/fetchers/thumbnails/thumbnail_fetcher.d.ts.map +1 -1
  1767. package/dist/es2017/core/fetchers/thumbnails/thumbnail_fetcher.js +8 -8
  1768. package/dist/es2017/core/fetchers/utils/error_selector.d.ts +1 -1
  1769. package/dist/es2017/core/fetchers/utils/error_selector.d.ts.map +1 -1
  1770. package/dist/es2017/core/fetchers/utils/error_selector.js +2 -2
  1771. package/dist/es2017/core/fetchers/utils/retry_after_delay.d.ts +7 -0
  1772. package/dist/es2017/core/fetchers/utils/retry_after_delay.d.ts.map +1 -0
  1773. package/dist/es2017/core/fetchers/utils/retry_after_delay.js +77 -0
  1774. package/dist/es2017/core/fetchers/utils/schedule_request.d.ts +3 -3
  1775. package/dist/es2017/core/fetchers/utils/schedule_request.d.ts.map +1 -1
  1776. package/dist/es2017/core/fetchers/utils/schedule_request.js +13 -12
  1777. package/dist/es2017/core/segment_sinks/garbage_collector.d.ts +5 -5
  1778. package/dist/es2017/core/segment_sinks/garbage_collector.d.ts.map +1 -1
  1779. package/dist/es2017/core/segment_sinks/garbage_collector.js +4 -4
  1780. package/dist/es2017/core/segment_sinks/implementations/audio_video/audio_video_segment_sink.d.ts +4 -4
  1781. package/dist/es2017/core/segment_sinks/implementations/audio_video/audio_video_segment_sink.d.ts.map +1 -1
  1782. package/dist/es2017/core/segment_sinks/implementations/audio_video/audio_video_segment_sink.js +4 -4
  1783. package/dist/es2017/core/segment_sinks/implementations/audio_video/index.d.ts +1 -1
  1784. package/dist/es2017/core/segment_sinks/implementations/audio_video/index.d.ts.map +1 -1
  1785. package/dist/es2017/core/segment_sinks/implementations/audio_video/index.js +1 -1
  1786. package/dist/es2017/core/segment_sinks/implementations/index.d.ts +3 -3
  1787. package/dist/es2017/core/segment_sinks/implementations/index.d.ts.map +1 -1
  1788. package/dist/es2017/core/segment_sinks/implementations/index.js +2 -2
  1789. package/dist/es2017/core/segment_sinks/implementations/text/index.d.ts +2 -2
  1790. package/dist/es2017/core/segment_sinks/implementations/text/index.d.ts.map +1 -1
  1791. package/dist/es2017/core/segment_sinks/implementations/text/index.js +1 -1
  1792. package/dist/es2017/core/segment_sinks/implementations/text/text_segment_sink.d.ts +5 -5
  1793. package/dist/es2017/core/segment_sinks/implementations/text/text_segment_sink.d.ts.map +1 -1
  1794. package/dist/es2017/core/segment_sinks/implementations/text/text_segment_sink.js +4 -4
  1795. package/dist/es2017/core/segment_sinks/implementations/types.d.ts +4 -4
  1796. package/dist/es2017/core/segment_sinks/implementations/types.d.ts.map +1 -1
  1797. package/dist/es2017/core/segment_sinks/implementations/types.js +1 -1
  1798. package/dist/es2017/core/segment_sinks/implementations/utils/manual_time_ranges.js +2 -2
  1799. package/dist/es2017/core/segment_sinks/index.d.ts +6 -6
  1800. package/dist/es2017/core/segment_sinks/index.d.ts.map +1 -1
  1801. package/dist/es2017/core/segment_sinks/index.js +4 -4
  1802. package/dist/es2017/core/segment_sinks/inventory/buffered_history.d.ts +1 -1
  1803. package/dist/es2017/core/segment_sinks/inventory/buffered_history.d.ts.map +1 -1
  1804. package/dist/es2017/core/segment_sinks/inventory/buffered_history.js +2 -2
  1805. package/dist/es2017/core/segment_sinks/inventory/index.d.ts +5 -5
  1806. package/dist/es2017/core/segment_sinks/inventory/index.d.ts.map +1 -1
  1807. package/dist/es2017/core/segment_sinks/inventory/index.js +2 -2
  1808. package/dist/es2017/core/segment_sinks/inventory/segment_inventory.d.ts +4 -4
  1809. package/dist/es2017/core/segment_sinks/inventory/segment_inventory.d.ts.map +1 -1
  1810. package/dist/es2017/core/segment_sinks/inventory/segment_inventory.js +6 -6
  1811. package/dist/es2017/core/segment_sinks/inventory/types.d.ts +1 -1
  1812. package/dist/es2017/core/segment_sinks/inventory/types.d.ts.map +1 -1
  1813. package/dist/es2017/core/segment_sinks/inventory/utils.d.ts +2 -2
  1814. package/dist/es2017/core/segment_sinks/inventory/utils.d.ts.map +1 -1
  1815. package/dist/es2017/core/segment_sinks/segment_sinks_store.d.ts +6 -6
  1816. package/dist/es2017/core/segment_sinks/segment_sinks_store.d.ts.map +1 -1
  1817. package/dist/es2017/core/segment_sinks/segment_sinks_store.js +8 -8
  1818. package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts +2 -2
  1819. package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts.map +1 -1
  1820. package/dist/es2017/core/stream/adaptation/adaptation_stream.js +13 -13
  1821. package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.d.ts +4 -4
  1822. package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.d.ts.map +1 -1
  1823. package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.js +4 -4
  1824. package/dist/es2017/core/stream/adaptation/index.d.ts +2 -2
  1825. package/dist/es2017/core/stream/adaptation/index.d.ts.map +1 -1
  1826. package/dist/es2017/core/stream/adaptation/index.js +1 -1
  1827. package/dist/es2017/core/stream/adaptation/types.d.ts +8 -8
  1828. package/dist/es2017/core/stream/adaptation/types.d.ts.map +1 -1
  1829. package/dist/es2017/core/stream/index.d.ts +5 -5
  1830. package/dist/es2017/core/stream/index.d.ts.map +1 -1
  1831. package/dist/es2017/core/stream/index.js +1 -1
  1832. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.d.ts +3 -3
  1833. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.d.ts.map +1 -1
  1834. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.js +3 -3
  1835. package/dist/es2017/core/stream/orchestrator/index.d.ts +2 -2
  1836. package/dist/es2017/core/stream/orchestrator/index.d.ts.map +1 -1
  1837. package/dist/es2017/core/stream/orchestrator/index.js +1 -1
  1838. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts +9 -9
  1839. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
  1840. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.js +12 -12
  1841. package/dist/es2017/core/stream/period/index.d.ts +2 -2
  1842. package/dist/es2017/core/stream/period/index.d.ts.map +1 -1
  1843. package/dist/es2017/core/stream/period/index.js +1 -1
  1844. package/dist/es2017/core/stream/period/period_stream.d.ts +2 -2
  1845. package/dist/es2017/core/stream/period/period_stream.d.ts.map +1 -1
  1846. package/dist/es2017/core/stream/period/period_stream.js +13 -13
  1847. package/dist/es2017/core/stream/period/types.d.ts +15 -15
  1848. package/dist/es2017/core/stream/period/types.d.ts.map +1 -1
  1849. package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +5 -5
  1850. package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.d.ts.map +1 -1
  1851. package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.js +4 -4
  1852. package/dist/es2017/core/stream/representation/encryption_data_notifier.d.ts +2 -2
  1853. package/dist/es2017/core/stream/representation/encryption_data_notifier.d.ts.map +1 -1
  1854. package/dist/es2017/core/stream/representation/index.d.ts +2 -2
  1855. package/dist/es2017/core/stream/representation/index.d.ts.map +1 -1
  1856. package/dist/es2017/core/stream/representation/index.js +1 -1
  1857. package/dist/es2017/core/stream/representation/representation_stream.d.ts +2 -2
  1858. package/dist/es2017/core/stream/representation/representation_stream.d.ts.map +1 -1
  1859. package/dist/es2017/core/stream/representation/representation_stream.js +9 -9
  1860. package/dist/es2017/core/stream/representation/types.d.ts +9 -9
  1861. package/dist/es2017/core/stream/representation/types.d.ts.map +1 -1
  1862. package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.d.ts +6 -6
  1863. package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.d.ts.map +1 -1
  1864. package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.js +5 -5
  1865. package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.d.ts +3 -3
  1866. package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.d.ts.map +1 -1
  1867. package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.js +1 -1
  1868. package/dist/es2017/core/stream/representation/utils/get_buffer_status.d.ts +4 -4
  1869. package/dist/es2017/core/stream/representation/utils/get_buffer_status.d.ts.map +1 -1
  1870. package/dist/es2017/core/stream/representation/utils/get_buffer_status.js +5 -5
  1871. package/dist/es2017/core/stream/representation/utils/get_needed_segments.d.ts +2 -2
  1872. package/dist/es2017/core/stream/representation/utils/get_needed_segments.d.ts.map +1 -1
  1873. package/dist/es2017/core/stream/representation/utils/get_needed_segments.js +4 -4
  1874. package/dist/es2017/core/stream/representation/utils/get_segment_priority.js +1 -1
  1875. package/dist/es2017/core/stream/representation/utils/push_init_segment.d.ts +6 -6
  1876. package/dist/es2017/core/stream/representation/utils/push_init_segment.d.ts.map +1 -1
  1877. package/dist/es2017/core/stream/representation/utils/push_init_segment.js +2 -2
  1878. package/dist/es2017/core/stream/representation/utils/push_media_segment.d.ts +7 -7
  1879. package/dist/es2017/core/stream/representation/utils/push_media_segment.d.ts.map +1 -1
  1880. package/dist/es2017/core/stream/representation/utils/push_media_segment.js +3 -3
  1881. package/dist/es2017/core/types.d.ts +14 -14
  1882. package/dist/es2017/core/types.d.ts.map +1 -1
  1883. package/dist/es2017/default_config.d.ts +8 -0
  1884. package/dist/es2017/default_config.d.ts.map +1 -1
  1885. package/dist/es2017/default_config.js +8 -0
  1886. package/dist/es2017/errors/encrypted_media_error.d.ts +2 -2
  1887. package/dist/es2017/errors/encrypted_media_error.d.ts.map +1 -1
  1888. package/dist/es2017/errors/encrypted_media_error.js +2 -2
  1889. package/dist/es2017/errors/error_codes.d.ts +1 -1
  1890. package/dist/es2017/errors/error_codes.d.ts.map +1 -1
  1891. package/dist/es2017/errors/error_codes.js +1 -1
  1892. package/dist/es2017/errors/format_error.d.ts +1 -1
  1893. package/dist/es2017/errors/format_error.d.ts.map +1 -1
  1894. package/dist/es2017/errors/format_error.js +2 -2
  1895. package/dist/es2017/errors/index.d.ts +14 -14
  1896. package/dist/es2017/errors/index.d.ts.map +1 -1
  1897. package/dist/es2017/errors/index.js +9 -9
  1898. package/dist/es2017/errors/is_known_error.d.ts +1 -1
  1899. package/dist/es2017/errors/is_known_error.d.ts.map +1 -1
  1900. package/dist/es2017/errors/is_known_error.js +5 -5
  1901. package/dist/es2017/errors/media_error.d.ts +2 -2
  1902. package/dist/es2017/errors/media_error.d.ts.map +1 -1
  1903. package/dist/es2017/errors/media_error.js +3 -3
  1904. package/dist/es2017/errors/network_error.d.ts +2 -2
  1905. package/dist/es2017/errors/network_error.d.ts.map +1 -1
  1906. package/dist/es2017/errors/network_error.js +2 -2
  1907. package/dist/es2017/errors/other_error.d.ts +1 -1
  1908. package/dist/es2017/errors/other_error.d.ts.map +1 -1
  1909. package/dist/es2017/errors/other_error.js +2 -2
  1910. package/dist/es2017/errors/worker_initialization_error.d.ts.map +1 -1
  1911. package/dist/es2017/errors/worker_initialization_error.js +1 -1
  1912. package/dist/es2017/experimental/features/index.d.ts +3 -3
  1913. package/dist/es2017/experimental/features/index.d.ts.map +1 -1
  1914. package/dist/es2017/experimental/features/index.js +3 -3
  1915. package/dist/es2017/experimental/features/local.d.ts +1 -1
  1916. package/dist/es2017/experimental/features/local.d.ts.map +1 -1
  1917. package/dist/es2017/experimental/features/local.js +4 -4
  1918. package/dist/es2017/experimental/features/metaplaylist.d.ts +1 -1
  1919. package/dist/es2017/experimental/features/metaplaylist.d.ts.map +1 -1
  1920. package/dist/es2017/experimental/features/metaplaylist.js +4 -4
  1921. package/dist/es2017/experimental/features/multi_thread.d.ts +1 -1
  1922. package/dist/es2017/experimental/features/multi_thread.d.ts.map +1 -1
  1923. package/dist/es2017/experimental/features/multi_thread.js +7 -6
  1924. package/dist/es2017/experimental/features/worker/index.d.ts +3 -3
  1925. package/dist/es2017/experimental/features/worker/index.d.ts.map +1 -1
  1926. package/dist/es2017/experimental/features/worker/index.js +3 -3
  1927. package/dist/es2017/experimental/index.d.ts +1 -1
  1928. package/dist/es2017/experimental/index.d.ts.map +1 -1
  1929. package/dist/es2017/experimental/index.js +1 -1
  1930. package/dist/es2017/experimental/tools/DummyMediaElement/eme.d.ts +19 -3
  1931. package/dist/es2017/experimental/tools/DummyMediaElement/eme.d.ts.map +1 -1
  1932. package/dist/es2017/experimental/tools/DummyMediaElement/eme.js +44 -13
  1933. package/dist/es2017/experimental/tools/DummyMediaElement/html5.d.ts +7 -7
  1934. package/dist/es2017/experimental/tools/DummyMediaElement/html5.d.ts.map +1 -1
  1935. package/dist/es2017/experimental/tools/DummyMediaElement/html5.js +9 -9
  1936. package/dist/es2017/experimental/tools/DummyMediaElement/index.d.ts +1 -1
  1937. package/dist/es2017/experimental/tools/DummyMediaElement/index.d.ts.map +1 -1
  1938. package/dist/es2017/experimental/tools/DummyMediaElement/index.js +1 -1
  1939. package/dist/es2017/experimental/tools/DummyMediaElement/mse.d.ts +4 -4
  1940. package/dist/es2017/experimental/tools/DummyMediaElement/mse.d.ts.map +1 -1
  1941. package/dist/es2017/experimental/tools/DummyMediaElement/mse.js +9 -9
  1942. package/dist/es2017/experimental/tools/DummyMediaElement/utils.d.ts +4 -4
  1943. package/dist/es2017/experimental/tools/DummyMediaElement/utils.d.ts.map +1 -1
  1944. package/dist/es2017/experimental/tools/DummyMediaElement/utils.js +1 -1
  1945. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +1 -1
  1946. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.d.ts.map +1 -1
  1947. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.js +1 -1
  1948. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +1 -1
  1949. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts.map +1 -1
  1950. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.js +1 -1
  1951. package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.d.ts +1 -1
  1952. package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.d.ts.map +1 -1
  1953. package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.js +1 -1
  1954. package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +3 -3
  1955. package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts.map +1 -1
  1956. package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.js +1 -1
  1957. package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +3 -3
  1958. package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts.map +1 -1
  1959. package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +10 -10
  1960. package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +2 -2
  1961. package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts.map +1 -1
  1962. package/dist/es2017/experimental/tools/VideoThumbnailLoader/types.d.ts +2 -2
  1963. package/dist/es2017/experimental/tools/VideoThumbnailLoader/types.d.ts.map +1 -1
  1964. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +4 -4
  1965. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts.map +1 -1
  1966. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +14 -14
  1967. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +1 -1
  1968. package/dist/es2017/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +4 -4
  1969. package/dist/es2017/experimental/tools/createMetaplaylist/index.d.ts +1 -1
  1970. package/dist/es2017/experimental/tools/createMetaplaylist/index.d.ts.map +1 -1
  1971. package/dist/es2017/experimental/tools/createMetaplaylist/index.js +1 -1
  1972. package/dist/es2017/experimental/tools/index.d.ts +3 -3
  1973. package/dist/es2017/experimental/tools/index.d.ts.map +1 -1
  1974. package/dist/es2017/experimental/tools/index.js +3 -3
  1975. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api.d.ts +1 -1
  1976. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api.d.ts.map +1 -1
  1977. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api.js +11 -11
  1978. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/index.d.ts +2 -2
  1979. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/index.d.ts.map +1 -1
  1980. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/index.js +1 -1
  1981. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/log.d.ts +1 -1
  1982. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/log.d.ts.map +1 -1
  1983. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/log.js +1 -1
  1984. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +2 -2
  1985. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +1 -1
  1986. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts.map +1 -1
  1987. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +2 -2
  1988. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/isTypeSupportedWithFeatures.d.ts +1 -1
  1989. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/isTypeSupportedWithFeatures.d.ts.map +1 -1
  1990. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/isTypeSupportedWithFeatures.js +3 -3
  1991. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +1 -1
  1992. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts.map +1 -1
  1993. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +2 -2
  1994. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +1 -1
  1995. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts.map +1 -1
  1996. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +2 -2
  1997. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.d.ts +1 -1
  1998. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.d.ts.map +1 -1
  1999. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.js +5 -4
  2000. package/dist/es2017/features/add_features.d.ts +1 -1
  2001. package/dist/es2017/features/add_features.d.ts.map +1 -1
  2002. package/dist/es2017/features/add_features.js +2 -2
  2003. package/dist/es2017/features/features_object.d.ts +1 -1
  2004. package/dist/es2017/features/features_object.d.ts.map +1 -1
  2005. package/dist/es2017/features/index.d.ts +3 -3
  2006. package/dist/es2017/features/index.d.ts.map +1 -1
  2007. package/dist/es2017/features/index.js +2 -2
  2008. package/dist/es2017/features/list/dash.d.ts +1 -1
  2009. package/dist/es2017/features/list/dash.d.ts.map +1 -1
  2010. package/dist/es2017/features/list/dash.js +5 -5
  2011. package/dist/es2017/features/list/dash_wasm.d.ts +2 -2
  2012. package/dist/es2017/features/list/dash_wasm.d.ts.map +1 -1
  2013. package/dist/es2017/features/list/dash_wasm.js +5 -5
  2014. package/dist/es2017/features/list/debug_element.d.ts +1 -1
  2015. package/dist/es2017/features/list/debug_element.d.ts.map +1 -1
  2016. package/dist/es2017/features/list/debug_element.js +1 -1
  2017. package/dist/es2017/features/list/directfile.d.ts +1 -1
  2018. package/dist/es2017/features/list/directfile.d.ts.map +1 -1
  2019. package/dist/es2017/features/list/directfile.js +2 -2
  2020. package/dist/es2017/features/list/eme.d.ts +1 -1
  2021. package/dist/es2017/features/list/eme.d.ts.map +1 -1
  2022. package/dist/es2017/features/list/eme.js +1 -1
  2023. package/dist/es2017/features/list/html_sami_parser.d.ts +1 -1
  2024. package/dist/es2017/features/list/html_sami_parser.d.ts.map +1 -1
  2025. package/dist/es2017/features/list/html_sami_parser.js +2 -2
  2026. package/dist/es2017/features/list/html_srt_parser.d.ts +1 -1
  2027. package/dist/es2017/features/list/html_srt_parser.d.ts.map +1 -1
  2028. package/dist/es2017/features/list/html_srt_parser.js +2 -2
  2029. package/dist/es2017/features/list/html_text_buffer.d.ts +1 -1
  2030. package/dist/es2017/features/list/html_text_buffer.d.ts.map +1 -1
  2031. package/dist/es2017/features/list/html_text_buffer.js +1 -1
  2032. package/dist/es2017/features/list/html_ttml_parser.d.ts +1 -1
  2033. package/dist/es2017/features/list/html_ttml_parser.d.ts.map +1 -1
  2034. package/dist/es2017/features/list/html_ttml_parser.js +2 -2
  2035. package/dist/es2017/features/list/html_vtt_parser.d.ts +1 -1
  2036. package/dist/es2017/features/list/html_vtt_parser.d.ts.map +1 -1
  2037. package/dist/es2017/features/list/html_vtt_parser.js +2 -2
  2038. package/dist/es2017/features/list/index.d.ts +18 -17
  2039. package/dist/es2017/features/list/index.d.ts.map +1 -1
  2040. package/dist/es2017/features/list/index.js +18 -17
  2041. package/dist/es2017/features/list/media_source_main.d.ts +1 -1
  2042. package/dist/es2017/features/list/media_source_main.d.ts.map +1 -1
  2043. package/dist/es2017/features/list/media_source_main.js +3 -3
  2044. package/dist/es2017/features/list/multi_thread.d.ts +9 -0
  2045. package/dist/es2017/features/list/multi_thread.d.ts.map +1 -0
  2046. package/dist/es2017/features/list/multi_thread.js +14 -0
  2047. package/dist/es2017/features/list/native_sami_parser.d.ts +1 -1
  2048. package/dist/es2017/features/list/native_sami_parser.d.ts.map +1 -1
  2049. package/dist/es2017/features/list/native_sami_parser.js +2 -2
  2050. package/dist/es2017/features/list/native_srt_parser.d.ts +1 -1
  2051. package/dist/es2017/features/list/native_srt_parser.d.ts.map +1 -1
  2052. package/dist/es2017/features/list/native_srt_parser.js +2 -2
  2053. package/dist/es2017/features/list/native_text_buffer.d.ts +1 -1
  2054. package/dist/es2017/features/list/native_text_buffer.d.ts.map +1 -1
  2055. package/dist/es2017/features/list/native_text_buffer.js +1 -1
  2056. package/dist/es2017/features/list/native_ttml_parser.d.ts +1 -1
  2057. package/dist/es2017/features/list/native_ttml_parser.d.ts.map +1 -1
  2058. package/dist/es2017/features/list/native_ttml_parser.js +2 -2
  2059. package/dist/es2017/features/list/native_vtt_parser.d.ts +1 -1
  2060. package/dist/es2017/features/list/native_vtt_parser.d.ts.map +1 -1
  2061. package/dist/es2017/features/list/native_vtt_parser.js +2 -2
  2062. package/dist/es2017/features/list/smooth.d.ts +1 -1
  2063. package/dist/es2017/features/list/smooth.d.ts.map +1 -1
  2064. package/dist/es2017/features/list/smooth.js +4 -4
  2065. package/dist/es2017/features/types.d.ts +16 -16
  2066. package/dist/es2017/features/types.d.ts.map +1 -1
  2067. package/dist/es2017/importable_worker.d.ts +2 -2
  2068. package/dist/es2017/importable_worker.d.ts.map +1 -1
  2069. package/dist/es2017/importable_worker.js +4 -4
  2070. package/dist/es2017/index.d.ts +1 -1
  2071. package/dist/es2017/index.d.ts.map +1 -1
  2072. package/dist/es2017/index.js +4 -4
  2073. package/dist/es2017/initialize_worker.d.ts +1 -1
  2074. package/dist/es2017/initialize_worker.d.ts.map +1 -1
  2075. package/dist/es2017/initialize_worker.js +8 -8
  2076. package/dist/es2017/log.d.ts +1 -1
  2077. package/dist/es2017/log.d.ts.map +1 -1
  2078. package/dist/es2017/log.js +1 -1
  2079. package/dist/es2017/main_thread/api/debug/buffer_graph.d.ts +1 -1
  2080. package/dist/es2017/main_thread/api/debug/buffer_graph.d.ts.map +1 -1
  2081. package/dist/es2017/main_thread/api/debug/buffer_size_graph.js +1 -1
  2082. package/dist/es2017/main_thread/api/debug/index.d.ts +1 -1
  2083. package/dist/es2017/main_thread/api/debug/index.d.ts.map +1 -1
  2084. package/dist/es2017/main_thread/api/debug/index.js +1 -1
  2085. package/dist/es2017/main_thread/api/debug/modules/general_info.d.ts +2 -2
  2086. package/dist/es2017/main_thread/api/debug/modules/general_info.d.ts.map +1 -1
  2087. package/dist/es2017/main_thread/api/debug/modules/general_info.js +3 -3
  2088. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.d.ts +3 -3
  2089. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -1
  2090. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.js +5 -5
  2091. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_size.d.ts +2 -2
  2092. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_size.d.ts.map +1 -1
  2093. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_size.js +3 -3
  2094. package/dist/es2017/main_thread/api/debug/render.d.ts +2 -2
  2095. package/dist/es2017/main_thread/api/debug/render.d.ts.map +1 -1
  2096. package/dist/es2017/main_thread/api/debug/render.js +4 -4
  2097. package/dist/es2017/main_thread/api/index.d.ts +1 -1
  2098. package/dist/es2017/main_thread/api/index.d.ts.map +1 -1
  2099. package/dist/es2017/main_thread/api/index.js +1 -1
  2100. package/dist/es2017/main_thread/api/option_utils.d.ts +2 -2
  2101. package/dist/es2017/main_thread/api/option_utils.d.ts.map +1 -1
  2102. package/dist/es2017/main_thread/api/option_utils.js +5 -5
  2103. package/dist/es2017/main_thread/api/public_api.d.ts +17 -17
  2104. package/dist/es2017/main_thread/api/public_api.d.ts.map +1 -1
  2105. package/dist/es2017/main_thread/api/public_api.js +70 -51
  2106. package/dist/es2017/main_thread/api/utils.d.ts +6 -6
  2107. package/dist/es2017/main_thread/api/utils.d.ts.map +1 -1
  2108. package/dist/es2017/main_thread/api/utils.js +5 -5
  2109. package/dist/es2017/main_thread/core_interface/base.d.ts +2 -2
  2110. package/dist/es2017/main_thread/core_interface/base.d.ts.map +1 -1
  2111. package/dist/es2017/main_thread/core_interface/monothread.d.ts +3 -3
  2112. package/dist/es2017/main_thread/core_interface/monothread.d.ts.map +1 -1
  2113. package/dist/es2017/main_thread/core_interface/monothread.js +4 -4
  2114. package/dist/es2017/main_thread/core_interface/multithread.d.ts +2 -2
  2115. package/dist/es2017/main_thread/core_interface/multithread.d.ts.map +1 -1
  2116. package/dist/es2017/main_thread/core_interface/multithread.js +2 -2
  2117. package/dist/es2017/main_thread/core_interface/types.d.ts +3 -3
  2118. package/dist/es2017/main_thread/core_interface/types.d.ts.map +1 -1
  2119. package/dist/es2017/main_thread/decrypt/clear_on_stop.d.ts +1 -1
  2120. package/dist/es2017/main_thread/decrypt/clear_on_stop.d.ts.map +1 -1
  2121. package/dist/es2017/main_thread/decrypt/clear_on_stop.js +4 -4
  2122. package/dist/es2017/main_thread/decrypt/content_decryptor.d.ts +7 -7
  2123. package/dist/es2017/main_thread/decrypt/content_decryptor.d.ts.map +1 -1
  2124. package/dist/es2017/main_thread/decrypt/content_decryptor.js +24 -24
  2125. package/dist/es2017/main_thread/decrypt/create_or_load_session.d.ts +5 -5
  2126. package/dist/es2017/main_thread/decrypt/create_or_load_session.d.ts.map +1 -1
  2127. package/dist/es2017/main_thread/decrypt/create_or_load_session.js +4 -4
  2128. package/dist/es2017/main_thread/decrypt/create_session.d.ts +5 -5
  2129. package/dist/es2017/main_thread/decrypt/create_session.d.ts.map +1 -1
  2130. package/dist/es2017/main_thread/decrypt/create_session.js +2 -2
  2131. package/dist/es2017/main_thread/decrypt/dispose_decryption_resources.d.ts +1 -1
  2132. package/dist/es2017/main_thread/decrypt/dispose_decryption_resources.d.ts.map +1 -1
  2133. package/dist/es2017/main_thread/decrypt/dispose_decryption_resources.js +1 -1
  2134. package/dist/es2017/main_thread/decrypt/find_key_system.d.ts +4 -4
  2135. package/dist/es2017/main_thread/decrypt/find_key_system.d.ts.map +1 -1
  2136. package/dist/es2017/main_thread/decrypt/find_key_system.js +14 -12
  2137. package/dist/es2017/main_thread/decrypt/get_key_system_configuration.d.ts +1 -1
  2138. package/dist/es2017/main_thread/decrypt/get_key_system_configuration.d.ts.map +1 -1
  2139. package/dist/es2017/main_thread/decrypt/get_key_system_configuration.js +1 -1
  2140. package/dist/es2017/main_thread/decrypt/get_media_keys.d.ts +6 -6
  2141. package/dist/es2017/main_thread/decrypt/get_media_keys.d.ts.map +1 -1
  2142. package/dist/es2017/main_thread/decrypt/get_media_keys.js +11 -9
  2143. package/dist/es2017/main_thread/decrypt/index.d.ts +5 -5
  2144. package/dist/es2017/main_thread/decrypt/index.d.ts.map +1 -1
  2145. package/dist/es2017/main_thread/decrypt/index.js +5 -5
  2146. package/dist/es2017/main_thread/decrypt/init_media_keys.d.ts +5 -5
  2147. package/dist/es2017/main_thread/decrypt/init_media_keys.d.ts.map +1 -1
  2148. package/dist/es2017/main_thread/decrypt/init_media_keys.js +3 -3
  2149. package/dist/es2017/main_thread/decrypt/session_events_listener.d.ts +3 -3
  2150. package/dist/es2017/main_thread/decrypt/session_events_listener.d.ts.map +1 -1
  2151. package/dist/es2017/main_thread/decrypt/session_events_listener.js +11 -8
  2152. package/dist/es2017/main_thread/decrypt/set_server_certificate.d.ts +2 -2
  2153. package/dist/es2017/main_thread/decrypt/set_server_certificate.d.ts.map +1 -1
  2154. package/dist/es2017/main_thread/decrypt/set_server_certificate.js +5 -3
  2155. package/dist/es2017/main_thread/decrypt/types.d.ts +5 -5
  2156. package/dist/es2017/main_thread/decrypt/types.d.ts.map +1 -1
  2157. package/dist/es2017/main_thread/decrypt/utils/are_init_values_compatible.d.ts +1 -1
  2158. package/dist/es2017/main_thread/decrypt/utils/are_init_values_compatible.d.ts.map +1 -1
  2159. package/dist/es2017/main_thread/decrypt/utils/are_init_values_compatible.js +2 -2
  2160. package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.d.ts +3 -3
  2161. package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.d.ts.map +1 -1
  2162. package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.js +5 -5
  2163. package/dist/es2017/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts +1 -1
  2164. package/dist/es2017/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts.map +1 -1
  2165. package/dist/es2017/main_thread/decrypt/utils/clean_old_loaded_sessions.js +1 -1
  2166. package/dist/es2017/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts +1 -1
  2167. package/dist/es2017/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts.map +1 -1
  2168. package/dist/es2017/main_thread/decrypt/utils/clean_old_stored_persistent_info.js +1 -1
  2169. package/dist/es2017/main_thread/decrypt/utils/get_drm_system_id.d.ts.map +1 -1
  2170. package/dist/es2017/main_thread/decrypt/utils/get_drm_system_id.js +3 -2
  2171. package/dist/es2017/main_thread/decrypt/utils/init_data_values_container.d.ts +1 -1
  2172. package/dist/es2017/main_thread/decrypt/utils/init_data_values_container.d.ts.map +1 -1
  2173. package/dist/es2017/main_thread/decrypt/utils/init_data_values_container.js +3 -3
  2174. package/dist/es2017/main_thread/decrypt/utils/is_compatible_codec_supported.d.ts +1 -1
  2175. package/dist/es2017/main_thread/decrypt/utils/is_compatible_codec_supported.d.ts.map +1 -1
  2176. package/dist/es2017/main_thread/decrypt/utils/is_compatible_codec_supported.js +1 -1
  2177. package/dist/es2017/main_thread/decrypt/utils/is_session_usable.d.ts +1 -1
  2178. package/dist/es2017/main_thread/decrypt/utils/is_session_usable.d.ts.map +1 -1
  2179. package/dist/es2017/main_thread/decrypt/utils/is_session_usable.js +2 -2
  2180. package/dist/es2017/main_thread/decrypt/utils/key_id_comparison.js +1 -1
  2181. package/dist/es2017/main_thread/decrypt/utils/key_session_record.d.ts +1 -1
  2182. package/dist/es2017/main_thread/decrypt/utils/key_session_record.d.ts.map +1 -1
  2183. package/dist/es2017/main_thread/decrypt/utils/key_session_record.js +2 -2
  2184. package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.d.ts +6 -4
  2185. package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.d.ts.map +1 -1
  2186. package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.js +5 -5
  2187. package/dist/es2017/main_thread/decrypt/utils/media_keys_attacher.d.ts +4 -4
  2188. package/dist/es2017/main_thread/decrypt/utils/media_keys_attacher.d.ts.map +1 -1
  2189. package/dist/es2017/main_thread/decrypt/utils/media_keys_attacher.js +4 -4
  2190. package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts +3 -3
  2191. package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -1
  2192. package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.js +9 -9
  2193. package/dist/es2017/main_thread/decrypt/utils/serializable_bytes.js +1 -1
  2194. package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.d.ts +1 -1
  2195. package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.d.ts.map +1 -1
  2196. package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.js +1 -1
  2197. package/dist/es2017/main_thread/init/directfile_content_initializer.d.ts +7 -7
  2198. package/dist/es2017/main_thread/init/directfile_content_initializer.d.ts.map +1 -1
  2199. package/dist/es2017/main_thread/init/directfile_content_initializer.js +13 -13
  2200. package/dist/es2017/main_thread/init/index.d.ts +2 -2
  2201. package/dist/es2017/main_thread/init/index.d.ts.map +1 -1
  2202. package/dist/es2017/main_thread/init/index.js +1 -1
  2203. package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts +40 -24
  2204. package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts.map +1 -1
  2205. package/dist/es2017/main_thread/init/media_source_content_initializer.js +42 -43
  2206. package/dist/es2017/main_thread/init/types.d.ts +10 -10
  2207. package/dist/es2017/main_thread/init/types.d.ts.map +1 -1
  2208. package/dist/es2017/main_thread/init/types.js +1 -1
  2209. package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts +9 -9
  2210. package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -1
  2211. package/dist/es2017/main_thread/init/utils/create_core_playback_observer.js +4 -4
  2212. package/dist/es2017/main_thread/init/utils/get_initial_time.d.ts +1 -1
  2213. package/dist/es2017/main_thread/init/utils/get_initial_time.d.ts.map +1 -1
  2214. package/dist/es2017/main_thread/init/utils/get_initial_time.js +5 -5
  2215. package/dist/es2017/main_thread/init/utils/get_loaded_reference.d.ts +3 -3
  2216. package/dist/es2017/main_thread/init/utils/get_loaded_reference.d.ts.map +1 -1
  2217. package/dist/es2017/main_thread/init/utils/get_loaded_reference.js +5 -5
  2218. package/dist/es2017/main_thread/init/utils/initial_seek_and_play.d.ts +5 -5
  2219. package/dist/es2017/main_thread/init/utils/initial_seek_and_play.d.ts.map +1 -1
  2220. package/dist/es2017/main_thread/init/utils/initial_seek_and_play.js +5 -5
  2221. package/dist/es2017/main_thread/init/utils/initialize_content_decryption.d.ts +8 -8
  2222. package/dist/es2017/main_thread/init/utils/initialize_content_decryption.d.ts.map +1 -1
  2223. package/dist/es2017/main_thread/init/utils/initialize_content_decryption.js +7 -7
  2224. package/dist/es2017/main_thread/init/utils/main_thread_text_displayer_interface.d.ts +3 -3
  2225. package/dist/es2017/main_thread/init/utils/main_thread_text_displayer_interface.d.ts.map +1 -1
  2226. package/dist/es2017/main_thread/init/utils/rebuffering_controller.d.ts +7 -7
  2227. package/dist/es2017/main_thread/init/utils/rebuffering_controller.d.ts.map +1 -1
  2228. package/dist/es2017/main_thread/init/utils/rebuffering_controller.js +9 -9
  2229. package/dist/es2017/main_thread/init/utils/stream_events_emitter/index.d.ts +2 -2
  2230. package/dist/es2017/main_thread/init/utils/stream_events_emitter/index.d.ts.map +1 -1
  2231. package/dist/es2017/main_thread/init/utils/stream_events_emitter/index.js +1 -1
  2232. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +2 -2
  2233. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -1
  2234. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +1 -1
  2235. package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +4 -4
  2236. package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts.map +1 -1
  2237. package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.js +5 -5
  2238. package/dist/es2017/main_thread/init/utils/stream_events_emitter/types.d.ts +1 -1
  2239. package/dist/es2017/main_thread/init/utils/stream_events_emitter/types.d.ts.map +1 -1
  2240. package/dist/es2017/main_thread/init/utils/throw_on_media_error.d.ts +3 -3
  2241. package/dist/es2017/main_thread/init/utils/throw_on_media_error.d.ts.map +1 -1
  2242. package/dist/es2017/main_thread/init/utils/throw_on_media_error.js +2 -2
  2243. package/dist/es2017/main_thread/init/utils/update_manifest_codec_support.d.ts +8 -6
  2244. package/dist/es2017/main_thread/init/utils/update_manifest_codec_support.d.ts.map +1 -1
  2245. package/dist/es2017/main_thread/init/utils/update_manifest_codec_support.js +7 -5
  2246. package/dist/es2017/main_thread/render_thumbnail.d.ts +2 -2
  2247. package/dist/es2017/main_thread/render_thumbnail.d.ts.map +1 -1
  2248. package/dist/es2017/main_thread/render_thumbnail.js +6 -6
  2249. package/dist/es2017/main_thread/text_displayer/html/html_parsers.d.ts +1 -1
  2250. package/dist/es2017/main_thread/text_displayer/html/html_parsers.d.ts.map +1 -1
  2251. package/dist/es2017/main_thread/text_displayer/html/html_parsers.js +2 -2
  2252. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.d.ts +4 -4
  2253. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -1
  2254. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.js +10 -10
  2255. package/dist/es2017/main_thread/text_displayer/html/index.d.ts +1 -1
  2256. package/dist/es2017/main_thread/text_displayer/html/index.d.ts.map +1 -1
  2257. package/dist/es2017/main_thread/text_displayer/html/index.js +1 -1
  2258. package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.d.ts +1 -1
  2259. package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.d.ts.map +1 -1
  2260. package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.js +2 -2
  2261. package/dist/es2017/main_thread/text_displayer/index.d.ts +1 -1
  2262. package/dist/es2017/main_thread/text_displayer/index.d.ts.map +1 -1
  2263. package/dist/es2017/main_thread/text_displayer/manual_time_ranges.js +2 -2
  2264. package/dist/es2017/main_thread/text_displayer/native/index.d.ts +1 -1
  2265. package/dist/es2017/main_thread/text_displayer/native/index.d.ts.map +1 -1
  2266. package/dist/es2017/main_thread/text_displayer/native/index.js +1 -1
  2267. package/dist/es2017/main_thread/text_displayer/native/native_parsers.d.ts +2 -2
  2268. package/dist/es2017/main_thread/text_displayer/native/native_parsers.d.ts.map +1 -1
  2269. package/dist/es2017/main_thread/text_displayer/native/native_parsers.js +2 -2
  2270. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.d.ts +3 -3
  2271. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.d.ts.map +1 -1
  2272. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.js +6 -6
  2273. package/dist/es2017/main_thread/text_displayer/types.d.ts +2 -2
  2274. package/dist/es2017/main_thread/text_displayer/types.d.ts.map +1 -1
  2275. package/dist/es2017/main_thread/tracks_store/index.d.ts +3 -3
  2276. package/dist/es2017/main_thread/tracks_store/index.d.ts.map +1 -1
  2277. package/dist/es2017/main_thread/tracks_store/index.js +2 -2
  2278. package/dist/es2017/main_thread/tracks_store/media_element_tracks_store.d.ts +3 -3
  2279. package/dist/es2017/main_thread/tracks_store/media_element_tracks_store.d.ts.map +1 -1
  2280. package/dist/es2017/main_thread/tracks_store/media_element_tracks_store.js +5 -5
  2281. package/dist/es2017/main_thread/tracks_store/track_dispatcher.d.ts +5 -5
  2282. package/dist/es2017/main_thread/tracks_store/track_dispatcher.d.ts.map +1 -1
  2283. package/dist/es2017/main_thread/tracks_store/track_dispatcher.js +6 -6
  2284. package/dist/es2017/main_thread/tracks_store/tracks_store.d.ts +6 -6
  2285. package/dist/es2017/main_thread/tracks_store/tracks_store.d.ts.map +1 -1
  2286. package/dist/es2017/main_thread/tracks_store/tracks_store.js +11 -11
  2287. package/dist/es2017/main_thread/types.d.ts +36 -34
  2288. package/dist/es2017/main_thread/types.d.ts.map +1 -1
  2289. package/dist/es2017/main_thread/utils/media_capabilities.d.ts +2 -2
  2290. package/dist/es2017/main_thread/utils/media_capabilities.d.ts.map +1 -1
  2291. package/dist/es2017/main_thread/utils/media_capabilities.js +1 -1
  2292. package/dist/es2017/manifest/classes/adaptation.d.ts +5 -5
  2293. package/dist/es2017/manifest/classes/adaptation.d.ts.map +1 -1
  2294. package/dist/es2017/manifest/classes/adaptation.js +5 -5
  2295. package/dist/es2017/manifest/classes/index.d.ts +14 -14
  2296. package/dist/es2017/manifest/classes/index.d.ts.map +1 -1
  2297. package/dist/es2017/manifest/classes/index.js +7 -7
  2298. package/dist/es2017/manifest/classes/manifest.d.ts +13 -13
  2299. package/dist/es2017/manifest/classes/manifest.d.ts.map +1 -1
  2300. package/dist/es2017/manifest/classes/manifest.js +12 -12
  2301. package/dist/es2017/manifest/classes/period.d.ts +6 -6
  2302. package/dist/es2017/manifest/classes/period.d.ts.map +1 -1
  2303. package/dist/es2017/manifest/classes/period.js +7 -6
  2304. package/dist/es2017/manifest/classes/representation.d.ts +5 -5
  2305. package/dist/es2017/manifest/classes/representation.d.ts.map +1 -1
  2306. package/dist/es2017/manifest/classes/representation.js +5 -5
  2307. package/dist/es2017/manifest/classes/representation_index/index.d.ts +2 -2
  2308. package/dist/es2017/manifest/classes/representation_index/index.d.ts.map +1 -1
  2309. package/dist/es2017/manifest/classes/representation_index/index.js +1 -1
  2310. package/dist/es2017/manifest/classes/representation_index/static.d.ts +1 -1
  2311. package/dist/es2017/manifest/classes/representation_index/static.d.ts.map +1 -1
  2312. package/dist/es2017/manifest/classes/representation_index/static.js +1 -1
  2313. package/dist/es2017/manifest/classes/representation_index/types.d.ts +4 -4
  2314. package/dist/es2017/manifest/classes/representation_index/types.d.ts.map +1 -1
  2315. package/dist/es2017/manifest/classes/update_period_in_place.d.ts +5 -5
  2316. package/dist/es2017/manifest/classes/update_period_in_place.d.ts.map +1 -1
  2317. package/dist/es2017/manifest/classes/update_period_in_place.js +3 -3
  2318. package/dist/es2017/manifest/classes/update_periods.d.ts +4 -4
  2319. package/dist/es2017/manifest/classes/update_periods.d.ts.map +1 -1
  2320. package/dist/es2017/manifest/classes/update_periods.js +6 -6
  2321. package/dist/es2017/manifest/classes/utils.d.ts +4 -4
  2322. package/dist/es2017/manifest/classes/utils.d.ts.map +1 -1
  2323. package/dist/es2017/manifest/classes/utils.js +1 -1
  2324. package/dist/es2017/manifest/index.d.ts +6 -6
  2325. package/dist/es2017/manifest/index.d.ts.map +1 -1
  2326. package/dist/es2017/manifest/index.js +2 -2
  2327. package/dist/es2017/manifest/types.d.ts +2 -2
  2328. package/dist/es2017/manifest/types.d.ts.map +1 -1
  2329. package/dist/es2017/manifest/utils.d.ts +4 -4
  2330. package/dist/es2017/manifest/utils.d.ts.map +1 -1
  2331. package/dist/es2017/manifest/utils.js +6 -6
  2332. package/dist/es2017/minimal.d.ts +1 -1
  2333. package/dist/es2017/minimal.d.ts.map +1 -1
  2334. package/dist/es2017/minimal.js +2 -2
  2335. package/dist/es2017/mse/index.d.ts +2 -2
  2336. package/dist/es2017/mse/index.d.ts.map +1 -1
  2337. package/dist/es2017/mse/main_media_source_interface.d.ts +10 -5
  2338. package/dist/es2017/mse/main_media_source_interface.d.ts.map +1 -1
  2339. package/dist/es2017/mse/main_media_source_interface.js +19 -19
  2340. package/dist/es2017/mse/types.d.ts +3 -3
  2341. package/dist/es2017/mse/types.d.ts.map +1 -1
  2342. package/dist/es2017/mse/utils/end_of_stream.d.ts +2 -2
  2343. package/dist/es2017/mse/utils/end_of_stream.d.ts.map +1 -1
  2344. package/dist/es2017/mse/utils/end_of_stream.js +3 -3
  2345. package/dist/es2017/mse/utils/media_source_duration_updater.d.ts +1 -1
  2346. package/dist/es2017/mse/utils/media_source_duration_updater.d.ts.map +1 -1
  2347. package/dist/es2017/mse/utils/media_source_duration_updater.js +5 -5
  2348. package/dist/es2017/mse/worker_media_source_interface.d.ts +7 -7
  2349. package/dist/es2017/mse/worker_media_source_interface.d.ts.map +1 -1
  2350. package/dist/es2017/mse/worker_media_source_interface.js +5 -5
  2351. package/dist/es2017/parsers/containers/isobmff/create_box.js +3 -3
  2352. package/dist/es2017/parsers/containers/isobmff/drm/index.d.ts +1 -1
  2353. package/dist/es2017/parsers/containers/isobmff/drm/index.d.ts.map +1 -1
  2354. package/dist/es2017/parsers/containers/isobmff/drm/index.js +1 -1
  2355. package/dist/es2017/parsers/containers/isobmff/drm/playready.d.ts.map +1 -1
  2356. package/dist/es2017/parsers/containers/isobmff/drm/playready.js +3 -3
  2357. package/dist/es2017/parsers/containers/isobmff/extract_complete_chunks.js +2 -2
  2358. package/dist/es2017/parsers/containers/isobmff/extract_pssh.js +5 -5
  2359. package/dist/es2017/parsers/containers/isobmff/find_complete_box.js +1 -1
  2360. package/dist/es2017/parsers/containers/isobmff/get_box.js +3 -3
  2361. package/dist/es2017/parsers/containers/isobmff/index.d.ts +9 -9
  2362. package/dist/es2017/parsers/containers/isobmff/index.d.ts.map +1 -1
  2363. package/dist/es2017/parsers/containers/isobmff/index.js +8 -8
  2364. package/dist/es2017/parsers/containers/isobmff/read.js +1 -1
  2365. package/dist/es2017/parsers/containers/isobmff/remove_dolby_vision_config_data.js +3 -3
  2366. package/dist/es2017/parsers/containers/isobmff/utils.d.ts +1 -1
  2367. package/dist/es2017/parsers/containers/isobmff/utils.d.ts.map +1 -1
  2368. package/dist/es2017/parsers/containers/isobmff/utils.js +10 -10
  2369. package/dist/es2017/parsers/containers/matroska/index.d.ts +2 -2
  2370. package/dist/es2017/parsers/containers/matroska/index.d.ts.map +1 -1
  2371. package/dist/es2017/parsers/containers/matroska/index.js +1 -1
  2372. package/dist/es2017/parsers/containers/matroska/utils.js +1 -1
  2373. package/dist/es2017/parsers/images/bif.js +2 -2
  2374. package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.d.ts +1 -1
  2375. package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.d.ts.map +1 -1
  2376. package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.js +1 -1
  2377. package/dist/es2017/parsers/manifest/dash/common/content_protection_parser.d.ts +2 -2
  2378. package/dist/es2017/parsers/manifest/dash/common/content_protection_parser.d.ts.map +1 -1
  2379. package/dist/es2017/parsers/manifest/dash/common/content_protection_parser.js +13 -12
  2380. package/dist/es2017/parsers/manifest/dash/common/convert_supplemental_codecs.js +1 -1
  2381. package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +1 -1
  2382. package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts.map +1 -1
  2383. package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.js +1 -1
  2384. package/dist/es2017/parsers/manifest/dash/common/get_clock_offset.js +2 -2
  2385. package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +1 -1
  2386. package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts.map +1 -1
  2387. package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.js +4 -4
  2388. package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +1 -1
  2389. package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts.map +1 -1
  2390. package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +2 -2
  2391. package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.d.ts +1 -1
  2392. package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.d.ts.map +1 -1
  2393. package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.js +1 -1
  2394. package/dist/es2017/parsers/manifest/dash/common/index.d.ts +3 -3
  2395. package/dist/es2017/parsers/manifest/dash/common/index.d.ts.map +1 -1
  2396. package/dist/es2017/parsers/manifest/dash/common/index.js +2 -2
  2397. package/dist/es2017/parsers/manifest/dash/common/indexes/base.d.ts +15 -11
  2398. package/dist/es2017/parsers/manifest/dash/common/indexes/base.d.ts.map +1 -1
  2399. package/dist/es2017/parsers/manifest/dash/common/indexes/base.js +9 -8
  2400. package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +31 -7
  2401. package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.d.ts.map +1 -1
  2402. package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.js +14 -7
  2403. package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +4 -4
  2404. package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts.map +1 -1
  2405. package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +2 -2
  2406. package/dist/es2017/parsers/manifest/dash/common/indexes/index.d.ts +8 -8
  2407. package/dist/es2017/parsers/manifest/dash/common/indexes/index.d.ts.map +1 -1
  2408. package/dist/es2017/parsers/manifest/dash/common/indexes/index.js +4 -4
  2409. package/dist/es2017/parsers/manifest/dash/common/indexes/list.d.ts +13 -9
  2410. package/dist/es2017/parsers/manifest/dash/common/indexes/list.d.ts.map +1 -1
  2411. package/dist/es2017/parsers/manifest/dash/common/indexes/list.js +12 -8
  2412. package/dist/es2017/parsers/manifest/dash/common/indexes/template.d.ts +13 -9
  2413. package/dist/es2017/parsers/manifest/dash/common/indexes/template.d.ts.map +1 -1
  2414. package/dist/es2017/parsers/manifest/dash/common/indexes/template.js +11 -10
  2415. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +2 -2
  2416. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts.map +1 -1
  2417. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +2 -2
  2418. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +2 -2
  2419. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts.map +1 -1
  2420. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +5 -5
  2421. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +1 -1
  2422. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts.map +1 -1
  2423. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +2 -2
  2424. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +2 -2
  2425. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts.map +1 -1
  2426. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +1 -1
  2427. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/index.d.ts +2 -2
  2428. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/index.d.ts.map +1 -1
  2429. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/index.js +1 -1
  2430. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +1 -1
  2431. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts.map +1 -1
  2432. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +2 -2
  2433. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +17 -13
  2434. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts.map +1 -1
  2435. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +19 -18
  2436. package/dist/es2017/parsers/manifest/dash/common/indexes/tokens.js +1 -1
  2437. package/dist/es2017/parsers/manifest/dash/common/indexes/utils.js +1 -1
  2438. package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.d.ts +1 -1
  2439. package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.d.ts.map +1 -1
  2440. package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.js +19 -19
  2441. package/dist/es2017/parsers/manifest/dash/common/manifest_bounds_calculator.js +1 -1
  2442. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +5 -5
  2443. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.d.ts.map +1 -1
  2444. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.js +50 -44
  2445. package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.d.ts +1 -1
  2446. package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.d.ts.map +1 -1
  2447. package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.js +1 -1
  2448. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.d.ts +5 -5
  2449. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.d.ts.map +1 -1
  2450. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.js +36 -34
  2451. package/dist/es2017/parsers/manifest/dash/common/parse_periods.d.ts +5 -5
  2452. package/dist/es2017/parsers/manifest/dash/common/parse_periods.d.ts.map +1 -1
  2453. package/dist/es2017/parsers/manifest/dash/common/parse_periods.js +19 -19
  2454. package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.d.ts +5 -5
  2455. package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.d.ts.map +1 -1
  2456. package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.js +65 -29
  2457. package/dist/es2017/parsers/manifest/dash/common/parse_representations.d.ts +5 -5
  2458. package/dist/es2017/parsers/manifest/dash/common/parse_representations.d.ts.map +1 -1
  2459. package/dist/es2017/parsers/manifest/dash/common/parse_representations.js +30 -30
  2460. package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.d.ts +1 -1
  2461. package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.d.ts.map +1 -1
  2462. package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.js +1 -1
  2463. package/dist/es2017/parsers/manifest/dash/index.d.ts +1 -1
  2464. package/dist/es2017/parsers/manifest/dash/index.d.ts.map +1 -1
  2465. package/dist/es2017/parsers/manifest/dash/index.js +1 -1
  2466. package/dist/es2017/parsers/manifest/dash/js-parser/index.d.ts +1 -1
  2467. package/dist/es2017/parsers/manifest/dash/js-parser/index.d.ts.map +1 -1
  2468. package/dist/es2017/parsers/manifest/dash/js-parser/index.js +1 -1
  2469. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts +2 -2
  2470. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts.map +1 -1
  2471. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +62 -99
  2472. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts +2 -2
  2473. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts.map +1 -1
  2474. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +1 -1
  2475. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts +3 -3
  2476. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts.map +1 -1
  2477. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.js +6 -6
  2478. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts +2 -2
  2479. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts.map +1 -1
  2480. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.js +7 -7
  2481. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts +2 -2
  2482. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts.map +1 -1
  2483. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +5 -6
  2484. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts +3 -3
  2485. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts.map +1 -1
  2486. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +8 -7
  2487. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts +2 -2
  2488. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts.map +1 -1
  2489. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/MPD.js +29 -37
  2490. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts +2 -2
  2491. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts.map +1 -1
  2492. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Period.js +26 -30
  2493. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts +2 -2
  2494. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts.map +1 -1
  2495. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Representation.js +36 -58
  2496. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts +2 -2
  2497. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts.map +1 -1
  2498. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +21 -25
  2499. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts +2 -2
  2500. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts.map +1 -1
  2501. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentList.js +7 -5
  2502. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts +2 -2
  2503. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts.map +1 -1
  2504. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +18 -21
  2505. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts +2 -2
  2506. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts.map +1 -1
  2507. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts +2 -2
  2508. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts.map +1 -1
  2509. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +8 -10
  2510. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +6 -7
  2511. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts.map +1 -1
  2512. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/utils.js +13 -12
  2513. package/dist/es2017/parsers/manifest/dash/js-parser/parse_from_xml_string.d.ts +5 -2
  2514. package/dist/es2017/parsers/manifest/dash/js-parser/parse_from_xml_string.d.ts.map +1 -1
  2515. package/dist/es2017/parsers/manifest/dash/js-parser/parse_from_xml_string.js +17 -13
  2516. package/dist/es2017/parsers/manifest/dash/node_parser_types.d.ts +91 -57
  2517. package/dist/es2017/parsers/manifest/dash/node_parser_types.d.ts.map +1 -1
  2518. package/dist/es2017/parsers/manifest/dash/parsers_types.d.ts +2 -2
  2519. package/dist/es2017/parsers/manifest/dash/parsers_types.d.ts.map +1 -1
  2520. package/dist/es2017/parsers/manifest/dash/wasm-parser/index.d.ts +2 -2
  2521. package/dist/es2017/parsers/manifest/dash/wasm-parser/index.d.ts.map +1 -1
  2522. package/dist/es2017/parsers/manifest/dash/wasm-parser/index.js +1 -1
  2523. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +4 -2
  2524. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts.map +1 -1
  2525. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +20 -15
  2526. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +3 -3
  2527. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts.map +1 -1
  2528. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +88 -98
  2529. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +2 -2
  2530. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts.map +1 -1
  2531. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.js +2 -3
  2532. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +2 -2
  2533. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts.map +1 -1
  2534. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +5 -6
  2535. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +2 -2
  2536. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts.map +1 -1
  2537. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +11 -12
  2538. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +3 -3
  2539. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts.map +1 -1
  2540. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +13 -15
  2541. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Initialization.d.ts +4 -0
  2542. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Initialization.d.ts.map +1 -0
  2543. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Initialization.js +18 -0
  2544. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Label.d.ts +2 -2
  2545. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Label.d.ts.map +1 -1
  2546. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Label.js +4 -3
  2547. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +3 -3
  2548. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts.map +1 -1
  2549. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +38 -43
  2550. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +3 -3
  2551. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts.map +1 -1
  2552. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +42 -35
  2553. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +3 -3
  2554. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts.map +1 -1
  2555. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +48 -62
  2556. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +3 -3
  2557. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts.map +1 -1
  2558. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +3 -4
  2559. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +4 -2
  2560. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts.map +1 -1
  2561. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +25 -37
  2562. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +3 -3
  2563. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts.map +1 -1
  2564. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.js +11 -7
  2565. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +4 -2
  2566. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts.map +1 -1
  2567. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +31 -29
  2568. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +2 -2
  2569. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts.map +1 -1
  2570. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +5 -6
  2571. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +3 -3
  2572. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts.map +1 -1
  2573. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +9 -3
  2574. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts +1 -1
  2575. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts.map +1 -1
  2576. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/index.js +1 -1
  2577. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +2 -2
  2578. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts.map +1 -1
  2579. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.js +7 -6
  2580. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts +1 -1
  2581. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts.map +1 -1
  2582. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +1 -1
  2583. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/types.d.ts +2 -1
  2584. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/types.d.ts.map +1 -1
  2585. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +4 -3
  2586. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.d.ts.map +1 -1
  2587. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.js +15 -3
  2588. package/dist/es2017/parsers/manifest/index.d.ts +1 -1
  2589. package/dist/es2017/parsers/manifest/index.d.ts.map +1 -1
  2590. package/dist/es2017/parsers/manifest/local/index.d.ts +2 -2
  2591. package/dist/es2017/parsers/manifest/local/index.d.ts.map +1 -1
  2592. package/dist/es2017/parsers/manifest/local/index.js +1 -1
  2593. package/dist/es2017/parsers/manifest/local/parse_local_manifest.d.ts +2 -2
  2594. package/dist/es2017/parsers/manifest/local/parse_local_manifest.d.ts.map +1 -1
  2595. package/dist/es2017/parsers/manifest/local/parse_local_manifest.js +3 -3
  2596. package/dist/es2017/parsers/manifest/local/representation_index.d.ts +2 -2
  2597. package/dist/es2017/parsers/manifest/local/representation_index.d.ts.map +1 -1
  2598. package/dist/es2017/parsers/manifest/local/representation_index.js +1 -1
  2599. package/dist/es2017/parsers/manifest/metaplaylist/index.d.ts +2 -2
  2600. package/dist/es2017/parsers/manifest/metaplaylist/index.d.ts.map +1 -1
  2601. package/dist/es2017/parsers/manifest/metaplaylist/index.js +1 -1
  2602. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +2 -2
  2603. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts.map +1 -1
  2604. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.js +8 -8
  2605. package/dist/es2017/parsers/manifest/metaplaylist/representation_index.d.ts +3 -3
  2606. package/dist/es2017/parsers/manifest/metaplaylist/representation_index.d.ts.map +1 -1
  2607. package/dist/es2017/parsers/manifest/metaplaylist/representation_index.js +2 -2
  2608. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts +2 -2
  2609. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
  2610. package/dist/es2017/parsers/manifest/smooth/create_parser.js +22 -22
  2611. package/dist/es2017/parsers/manifest/smooth/get_codecs.js +1 -1
  2612. package/dist/es2017/parsers/manifest/smooth/index.d.ts +3 -3
  2613. package/dist/es2017/parsers/manifest/smooth/index.d.ts.map +1 -1
  2614. package/dist/es2017/parsers/manifest/smooth/index.js +2 -2
  2615. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts +1 -1
  2616. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
  2617. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.js +1 -1
  2618. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts +1 -1
  2619. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
  2620. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.js +4 -4
  2621. package/dist/es2017/parsers/manifest/smooth/representation_index.d.ts +3 -3
  2622. package/dist/es2017/parsers/manifest/smooth/representation_index.d.ts.map +1 -1
  2623. package/dist/es2017/parsers/manifest/smooth/representation_index.js +6 -6
  2624. package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +1 -1
  2625. package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts.map +1 -1
  2626. package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.js +6 -6
  2627. package/dist/es2017/parsers/manifest/smooth/utils/add_segment_infos.js +1 -1
  2628. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts +1 -1
  2629. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
  2630. package/dist/es2017/parsers/manifest/types.d.ts +2 -2
  2631. package/dist/es2017/parsers/manifest/types.d.ts.map +1 -1
  2632. package/dist/es2017/parsers/manifest/utils/check_manifest_ids.d.ts +1 -1
  2633. package/dist/es2017/parsers/manifest/utils/check_manifest_ids.d.ts.map +1 -1
  2634. package/dist/es2017/parsers/manifest/utils/check_manifest_ids.js +2 -2
  2635. package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.d.ts +1 -1
  2636. package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.d.ts.map +1 -1
  2637. package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +1 -1
  2638. package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.d.ts.map +1 -1
  2639. package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +1 -1
  2640. package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.d.ts.map +1 -1
  2641. package/dist/es2017/parsers/manifest/utils/get_maximum_positions.d.ts +1 -1
  2642. package/dist/es2017/parsers/manifest/utils/get_maximum_positions.d.ts.map +1 -1
  2643. package/dist/es2017/parsers/manifest/utils/get_maximum_positions.js +2 -2
  2644. package/dist/es2017/parsers/manifest/utils/get_minimum_position.d.ts +1 -1
  2645. package/dist/es2017/parsers/manifest/utils/get_minimum_position.d.ts.map +1 -1
  2646. package/dist/es2017/parsers/manifest/utils/get_minimum_position.js +2 -2
  2647. package/dist/es2017/parsers/manifest/utils/index_helpers.js +1 -1
  2648. package/dist/es2017/parsers/manifest/utils/update_segment_timeline.d.ts +1 -1
  2649. package/dist/es2017/parsers/manifest/utils/update_segment_timeline.d.ts.map +1 -1
  2650. package/dist/es2017/parsers/manifest/utils/update_segment_timeline.js +3 -3
  2651. package/dist/es2017/parsers/texttracks/index.d.ts +1 -1
  2652. package/dist/es2017/parsers/texttracks/index.d.ts.map +1 -1
  2653. package/dist/es2017/parsers/texttracks/sami/html.d.ts +1 -1
  2654. package/dist/es2017/parsers/texttracks/sami/html.d.ts.map +1 -1
  2655. package/dist/es2017/parsers/texttracks/sami/html.js +4 -4
  2656. package/dist/es2017/parsers/texttracks/sami/native.d.ts +1 -1
  2657. package/dist/es2017/parsers/texttracks/sami/native.d.ts.map +1 -1
  2658. package/dist/es2017/parsers/texttracks/sami/native.js +5 -5
  2659. package/dist/es2017/parsers/texttracks/srt/find_end_of_cue_block.js +1 -1
  2660. package/dist/es2017/parsers/texttracks/srt/get_cue_blocks.js +2 -2
  2661. package/dist/es2017/parsers/texttracks/srt/html.js +4 -4
  2662. package/dist/es2017/parsers/texttracks/srt/native.d.ts +1 -1
  2663. package/dist/es2017/parsers/texttracks/srt/native.d.ts.map +1 -1
  2664. package/dist/es2017/parsers/texttracks/srt/native.js +5 -5
  2665. package/dist/es2017/parsers/texttracks/srt/parse_cue.js +2 -2
  2666. package/dist/es2017/parsers/texttracks/srt/parse_timestamp.js +1 -1
  2667. package/dist/es2017/parsers/texttracks/ttml/get_parameters.js +2 -2
  2668. package/dist/es2017/parsers/texttracks/ttml/get_styling.js +4 -4
  2669. package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.d.ts +1 -1
  2670. package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.d.ts.map +1 -1
  2671. package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.js +3 -3
  2672. package/dist/es2017/parsers/texttracks/ttml/html/apply_extent.js +3 -3
  2673. package/dist/es2017/parsers/texttracks/ttml/html/apply_font_size.js +3 -3
  2674. package/dist/es2017/parsers/texttracks/ttml/html/apply_line_height.js +3 -3
  2675. package/dist/es2017/parsers/texttracks/ttml/html/apply_origin.js +3 -3
  2676. package/dist/es2017/parsers/texttracks/ttml/html/apply_padding.js +3 -3
  2677. package/dist/es2017/parsers/texttracks/ttml/html/create_element.d.ts +1 -1
  2678. package/dist/es2017/parsers/texttracks/ttml/html/create_element.d.ts.map +1 -1
  2679. package/dist/es2017/parsers/texttracks/ttml/html/create_element.js +12 -12
  2680. package/dist/es2017/parsers/texttracks/ttml/html/generate_css_test_outline.js +1 -1
  2681. package/dist/es2017/parsers/texttracks/ttml/html/index.d.ts +1 -1
  2682. package/dist/es2017/parsers/texttracks/ttml/html/index.d.ts.map +1 -1
  2683. package/dist/es2017/parsers/texttracks/ttml/html/index.js +1 -1
  2684. package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.d.ts +1 -1
  2685. package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.d.ts.map +1 -1
  2686. package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.js +2 -2
  2687. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +1 -1
  2688. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts.map +1 -1
  2689. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.js +5 -5
  2690. package/dist/es2017/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +2 -2
  2691. package/dist/es2017/parsers/texttracks/ttml/native/index.d.ts +1 -1
  2692. package/dist/es2017/parsers/texttracks/ttml/native/index.d.ts.map +1 -1
  2693. package/dist/es2017/parsers/texttracks/ttml/native/index.js +1 -1
  2694. package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.d.ts +2 -2
  2695. package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.d.ts.map +1 -1
  2696. package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.js +7 -7
  2697. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +1 -1
  2698. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts.map +1 -1
  2699. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +4 -4
  2700. package/dist/es2017/parsers/texttracks/ttml/parse_ttml.d.ts +2 -2
  2701. package/dist/es2017/parsers/texttracks/ttml/parse_ttml.d.ts.map +1 -1
  2702. package/dist/es2017/parsers/texttracks/ttml/parse_ttml.js +7 -7
  2703. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +1 -1
  2704. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts.map +1 -1
  2705. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.js +4 -4
  2706. package/dist/es2017/parsers/texttracks/ttml/time_parsing.d.ts +1 -1
  2707. package/dist/es2017/parsers/texttracks/ttml/time_parsing.d.ts.map +1 -1
  2708. package/dist/es2017/parsers/texttracks/ttml/time_parsing.js +1 -1
  2709. package/dist/es2017/parsers/texttracks/ttml/xml_utils.js +1 -1
  2710. package/dist/es2017/parsers/texttracks/types.d.ts +1 -1
  2711. package/dist/es2017/parsers/texttracks/types.d.ts.map +1 -1
  2712. package/dist/es2017/parsers/texttracks/webvtt/create_default_style_elements.d.ts +1 -1
  2713. package/dist/es2017/parsers/texttracks/webvtt/create_default_style_elements.d.ts.map +1 -1
  2714. package/dist/es2017/parsers/texttracks/webvtt/get_cue_blocks.js +2 -2
  2715. package/dist/es2017/parsers/texttracks/webvtt/get_style_blocks.js +2 -2
  2716. package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +1 -1
  2717. package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts.map +1 -1
  2718. package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.js +1 -1
  2719. package/dist/es2017/parsers/texttracks/webvtt/html/create_style_attribute.js +1 -1
  2720. package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.d.ts +1 -1
  2721. package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.d.ts.map +1 -1
  2722. package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.js +2 -2
  2723. package/dist/es2017/parsers/texttracks/webvtt/html/index.d.ts +3 -3
  2724. package/dist/es2017/parsers/texttracks/webvtt/html/index.d.ts.map +1 -1
  2725. package/dist/es2017/parsers/texttracks/webvtt/html/index.js +2 -2
  2726. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_mp4.d.ts +1 -1
  2727. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_mp4.d.ts.map +1 -1
  2728. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_mp4.js +4 -4
  2729. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_plain_text.d.ts +1 -1
  2730. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_plain_text.d.ts.map +1 -1
  2731. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_plain_text.js +8 -8
  2732. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts +1 -1
  2733. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts.map +1 -1
  2734. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.js +3 -3
  2735. package/dist/es2017/parsers/texttracks/webvtt/native/index.d.ts +2 -2
  2736. package/dist/es2017/parsers/texttracks/webvtt/native/index.d.ts.map +1 -1
  2737. package/dist/es2017/parsers/texttracks/webvtt/native/index.js +2 -2
  2738. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_plain_text_to_cues.d.ts +1 -1
  2739. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_plain_text_to_cues.d.ts.map +1 -1
  2740. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_plain_text_to_cues.js +10 -10
  2741. package/dist/es2017/parsers/texttracks/webvtt/native/parse_webvtt_mp4_to_cues.d.ts +1 -1
  2742. package/dist/es2017/parsers/texttracks/webvtt/native/parse_webvtt_mp4_to_cues.d.ts.map +1 -1
  2743. package/dist/es2017/parsers/texttracks/webvtt/native/parse_webvtt_mp4_to_cues.js +4 -4
  2744. package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +1 -1
  2745. package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts.map +1 -1
  2746. package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.js +2 -2
  2747. package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.d.ts +2 -2
  2748. package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.d.ts.map +1 -1
  2749. package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.js +1 -1
  2750. package/dist/es2017/parsers/texttracks/webvtt/parse_cue_block.js +1 -1
  2751. package/dist/es2017/parsers/texttracks/webvtt/parse_mp4_embedded_wvtt.d.ts +1 -1
  2752. package/dist/es2017/parsers/texttracks/webvtt/parse_mp4_embedded_wvtt.d.ts.map +1 -1
  2753. package/dist/es2017/parsers/texttracks/webvtt/parse_mp4_embedded_wvtt.js +6 -6
  2754. package/dist/es2017/parsers/texttracks/webvtt/parse_style_block.js +2 -2
  2755. package/dist/es2017/parsers/texttracks/webvtt/parse_timestamp.js +1 -1
  2756. package/dist/es2017/parsers/texttracks/webvtt/utils.js +1 -1
  2757. package/dist/es2017/playback_observer/core_playback_observer.d.ts +7 -7
  2758. package/dist/es2017/playback_observer/core_playback_observer.d.ts.map +1 -1
  2759. package/dist/es2017/playback_observer/core_playback_observer.js +1 -1
  2760. package/dist/es2017/playback_observer/index.d.ts +4 -4
  2761. package/dist/es2017/playback_observer/index.d.ts.map +1 -1
  2762. package/dist/es2017/playback_observer/index.js +1 -1
  2763. package/dist/es2017/playback_observer/media_element_playback_observer.d.ts +5 -5
  2764. package/dist/es2017/playback_observer/media_element_playback_observer.d.ts.map +1 -1
  2765. package/dist/es2017/playback_observer/media_element_playback_observer.js +12 -12
  2766. package/dist/es2017/playback_observer/types.d.ts +3 -3
  2767. package/dist/es2017/playback_observer/types.d.ts.map +1 -1
  2768. package/dist/es2017/playback_observer/utils/generate_read_only_observer.d.ts +3 -3
  2769. package/dist/es2017/playback_observer/utils/generate_read_only_observer.d.ts.map +1 -1
  2770. package/dist/es2017/public_types.d.ts +6 -6
  2771. package/dist/es2017/public_types.d.ts.map +1 -1
  2772. package/dist/es2017/tools/TextTrackRenderer/index.d.ts +6 -6
  2773. package/dist/es2017/tools/TextTrackRenderer/index.d.ts.map +1 -1
  2774. package/dist/es2017/tools/TextTrackRenderer/index.js +5 -5
  2775. package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.d.ts +2 -2
  2776. package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.d.ts.map +1 -1
  2777. package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.js +2 -2
  2778. package/dist/es2017/tools/index.d.ts +3 -3
  2779. package/dist/es2017/tools/index.d.ts.map +1 -1
  2780. package/dist/es2017/tools/index.js +3 -4
  2781. package/dist/es2017/tools/parseBIFThumbnails/index.js +1 -1
  2782. package/dist/es2017/tools/string_utils/index.d.ts +1 -1
  2783. package/dist/es2017/tools/string_utils/index.d.ts.map +1 -1
  2784. package/dist/es2017/tools/string_utils/index.js +1 -1
  2785. package/dist/es2017/transports/dash/construct_segment_url.d.ts +2 -2
  2786. package/dist/es2017/transports/dash/construct_segment_url.d.ts.map +1 -1
  2787. package/dist/es2017/transports/dash/construct_segment_url.js +1 -1
  2788. package/dist/es2017/transports/dash/get_events_out_of_emsgs.d.ts +2 -2
  2789. package/dist/es2017/transports/dash/get_events_out_of_emsgs.d.ts.map +1 -1
  2790. package/dist/es2017/transports/dash/get_events_out_of_emsgs.js +1 -1
  2791. package/dist/es2017/transports/dash/index.d.ts +1 -1
  2792. package/dist/es2017/transports/dash/index.d.ts.map +1 -1
  2793. package/dist/es2017/transports/dash/index.js +1 -1
  2794. package/dist/es2017/transports/dash/init_segment_loader.d.ts +3 -3
  2795. package/dist/es2017/transports/dash/init_segment_loader.d.ts.map +1 -1
  2796. package/dist/es2017/transports/dash/init_segment_loader.js +4 -4
  2797. package/dist/es2017/transports/dash/integrity_checks.d.ts +1 -1
  2798. package/dist/es2017/transports/dash/integrity_checks.d.ts.map +1 -1
  2799. package/dist/es2017/transports/dash/integrity_checks.js +6 -6
  2800. package/dist/es2017/transports/dash/load_chunked_segment_data.d.ts +2 -2
  2801. package/dist/es2017/transports/dash/load_chunked_segment_data.d.ts.map +1 -1
  2802. package/dist/es2017/transports/dash/load_chunked_segment_data.js +3 -3
  2803. package/dist/es2017/transports/dash/manifest_parser.d.ts +2 -2
  2804. package/dist/es2017/transports/dash/manifest_parser.d.ts.map +1 -1
  2805. package/dist/es2017/transports/dash/manifest_parser.js +10 -10
  2806. package/dist/es2017/transports/dash/pipelines.d.ts +1 -1
  2807. package/dist/es2017/transports/dash/pipelines.d.ts.map +1 -1
  2808. package/dist/es2017/transports/dash/pipelines.js +9 -9
  2809. package/dist/es2017/transports/dash/segment_loader.d.ts +3 -3
  2810. package/dist/es2017/transports/dash/segment_loader.d.ts.map +1 -1
  2811. package/dist/es2017/transports/dash/segment_loader.js +10 -10
  2812. package/dist/es2017/transports/dash/segment_parser.d.ts +1 -1
  2813. package/dist/es2017/transports/dash/segment_parser.d.ts.map +1 -1
  2814. package/dist/es2017/transports/dash/segment_parser.js +10 -10
  2815. package/dist/es2017/transports/dash/text_loader.d.ts +1 -1
  2816. package/dist/es2017/transports/dash/text_loader.d.ts.map +1 -1
  2817. package/dist/es2017/transports/dash/text_loader.js +9 -9
  2818. package/dist/es2017/transports/dash/text_parser.d.ts +1 -1
  2819. package/dist/es2017/transports/dash/text_parser.d.ts.map +1 -1
  2820. package/dist/es2017/transports/dash/text_parser.js +5 -5
  2821. package/dist/es2017/transports/dash/thumbnails.d.ts +4 -4
  2822. package/dist/es2017/transports/dash/thumbnails.d.ts.map +1 -1
  2823. package/dist/es2017/transports/dash/thumbnails.js +4 -4
  2824. package/dist/es2017/transports/index.d.ts +1 -1
  2825. package/dist/es2017/transports/index.d.ts.map +1 -1
  2826. package/dist/es2017/transports/local/index.d.ts +1 -1
  2827. package/dist/es2017/transports/local/index.d.ts.map +1 -1
  2828. package/dist/es2017/transports/local/index.js +1 -1
  2829. package/dist/es2017/transports/local/pipelines.d.ts +1 -1
  2830. package/dist/es2017/transports/local/pipelines.d.ts.map +1 -1
  2831. package/dist/es2017/transports/local/pipelines.js +7 -7
  2832. package/dist/es2017/transports/local/segment_loader.d.ts +3 -3
  2833. package/dist/es2017/transports/local/segment_loader.d.ts.map +1 -1
  2834. package/dist/es2017/transports/local/segment_loader.js +3 -3
  2835. package/dist/es2017/transports/local/segment_parser.d.ts +1 -1
  2836. package/dist/es2017/transports/local/segment_parser.d.ts.map +1 -1
  2837. package/dist/es2017/transports/local/segment_parser.js +5 -5
  2838. package/dist/es2017/transports/local/text_parser.d.ts +1 -1
  2839. package/dist/es2017/transports/local/text_parser.d.ts.map +1 -1
  2840. package/dist/es2017/transports/local/text_parser.js +5 -5
  2841. package/dist/es2017/transports/metaplaylist/index.d.ts +1 -1
  2842. package/dist/es2017/transports/metaplaylist/index.d.ts.map +1 -1
  2843. package/dist/es2017/transports/metaplaylist/index.js +1 -1
  2844. package/dist/es2017/transports/metaplaylist/pipelines.d.ts +1 -1
  2845. package/dist/es2017/transports/metaplaylist/pipelines.d.ts.map +1 -1
  2846. package/dist/es2017/transports/metaplaylist/pipelines.js +8 -8
  2847. package/dist/es2017/transports/smooth/extract_timings_infos.d.ts +2 -2
  2848. package/dist/es2017/transports/smooth/extract_timings_infos.d.ts.map +1 -1
  2849. package/dist/es2017/transports/smooth/extract_timings_infos.js +3 -3
  2850. package/dist/es2017/transports/smooth/index.d.ts +1 -1
  2851. package/dist/es2017/transports/smooth/index.d.ts.map +1 -1
  2852. package/dist/es2017/transports/smooth/index.js +1 -1
  2853. package/dist/es2017/transports/smooth/isobmff/create_audio_init_segment.js +4 -4
  2854. package/dist/es2017/transports/smooth/isobmff/create_boxes.js +3 -3
  2855. package/dist/es2017/transports/smooth/isobmff/create_init_segment.d.ts.map +1 -1
  2856. package/dist/es2017/transports/smooth/isobmff/create_init_segment.js +3 -3
  2857. package/dist/es2017/transports/smooth/isobmff/create_traf_box.d.ts.map +1 -1
  2858. package/dist/es2017/transports/smooth/isobmff/create_traf_box.js +2 -2
  2859. package/dist/es2017/transports/smooth/isobmff/create_video_init_segment.js +4 -4
  2860. package/dist/es2017/transports/smooth/isobmff/get_aaces_header.js +2 -2
  2861. package/dist/es2017/transports/smooth/isobmff/index.d.ts +6 -6
  2862. package/dist/es2017/transports/smooth/isobmff/index.d.ts.map +1 -1
  2863. package/dist/es2017/transports/smooth/isobmff/index.js +5 -5
  2864. package/dist/es2017/transports/smooth/isobmff/parse_tfrf.js +2 -2
  2865. package/dist/es2017/transports/smooth/isobmff/parse_tfxd.js +2 -2
  2866. package/dist/es2017/transports/smooth/isobmff/patch_segment.js +5 -5
  2867. package/dist/es2017/transports/smooth/pipelines.d.ts +1 -1
  2868. package/dist/es2017/transports/smooth/pipelines.d.ts.map +1 -1
  2869. package/dist/es2017/transports/smooth/pipelines.js +16 -16
  2870. package/dist/es2017/transports/smooth/segment_loader.d.ts +3 -3
  2871. package/dist/es2017/transports/smooth/segment_loader.d.ts.map +1 -1
  2872. package/dist/es2017/transports/smooth/segment_loader.js +8 -8
  2873. package/dist/es2017/transports/smooth/utils.d.ts +2 -2
  2874. package/dist/es2017/transports/smooth/utils.d.ts.map +1 -1
  2875. package/dist/es2017/transports/smooth/utils.js +1 -1
  2876. package/dist/es2017/transports/types.d.ts +7 -7
  2877. package/dist/es2017/transports/types.d.ts.map +1 -1
  2878. package/dist/es2017/transports/utils/call_custom_manifest_loader.d.ts +3 -3
  2879. package/dist/es2017/transports/utils/call_custom_manifest_loader.d.ts.map +1 -1
  2880. package/dist/es2017/transports/utils/call_custom_manifest_loader.js +2 -2
  2881. package/dist/es2017/transports/utils/check_isobmff_integrity.js +2 -2
  2882. package/dist/es2017/transports/utils/generate_manifest_loader.d.ts +2 -2
  2883. package/dist/es2017/transports/utils/generate_manifest_loader.d.ts.map +1 -1
  2884. package/dist/es2017/transports/utils/generate_manifest_loader.js +4 -4
  2885. package/dist/es2017/transports/utils/get_isobmff_timing_infos.d.ts +2 -2
  2886. package/dist/es2017/transports/utils/get_isobmff_timing_infos.d.ts.map +1 -1
  2887. package/dist/es2017/transports/utils/get_isobmff_timing_infos.js +2 -2
  2888. package/dist/es2017/transports/utils/infer_segment_container.d.ts +1 -1
  2889. package/dist/es2017/transports/utils/infer_segment_container.d.ts.map +1 -1
  2890. package/dist/es2017/transports/utils/parse_text_track.d.ts +2 -2
  2891. package/dist/es2017/transports/utils/parse_text_track.d.ts.map +1 -1
  2892. package/dist/es2017/transports/utils/parse_text_track.js +4 -4
  2893. package/dist/es2017/utils/are_codecs_compatible.js +2 -2
  2894. package/dist/es2017/utils/assert.js +1 -1
  2895. package/dist/es2017/utils/base64.d.ts.map +1 -1
  2896. package/dist/es2017/utils/base64.js +18 -4
  2897. package/dist/es2017/utils/cancellable_sleep.d.ts +1 -1
  2898. package/dist/es2017/utils/cancellable_sleep.d.ts.map +1 -1
  2899. package/dist/es2017/utils/cancellable_sleep.js +1 -1
  2900. package/dist/es2017/utils/create_cancellable_promise.d.ts +1 -1
  2901. package/dist/es2017/utils/create_cancellable_promise.d.ts.map +1 -1
  2902. package/dist/es2017/utils/create_uuid.js +2 -2
  2903. package/dist/es2017/utils/deep_merge.js +1 -1
  2904. package/dist/es2017/utils/event_emitter.d.ts +1 -1
  2905. package/dist/es2017/utils/event_emitter.d.ts.map +1 -1
  2906. package/dist/es2017/utils/event_emitter.js +2 -2
  2907. package/dist/es2017/utils/get_last_item_from_array.d.ts +8 -0
  2908. package/dist/es2017/utils/get_last_item_from_array.d.ts.map +1 -0
  2909. package/dist/es2017/utils/get_last_item_from_array.js +9 -0
  2910. package/dist/es2017/utils/global_scope.js +2 -2
  2911. package/dist/es2017/utils/is_node.js +1 -1
  2912. package/dist/es2017/utils/languages/index.d.ts +2 -2
  2913. package/dist/es2017/utils/languages/index.d.ts.map +1 -1
  2914. package/dist/es2017/utils/languages/index.js +1 -1
  2915. package/dist/es2017/utils/languages/normalize.js +4 -4
  2916. package/dist/es2017/utils/logger.d.ts +1 -1
  2917. package/dist/es2017/utils/logger.d.ts.map +1 -1
  2918. package/dist/es2017/utils/logger.js +3 -3
  2919. package/dist/es2017/utils/monotonic_timestamp.js +1 -1
  2920. package/dist/es2017/utils/object_assign.d.ts.map +1 -1
  2921. package/dist/es2017/utils/object_entries.d.ts +16 -0
  2922. package/dist/es2017/utils/object_entries.d.ts.map +1 -0
  2923. package/dist/es2017/utils/object_entries.js +10 -0
  2924. package/dist/es2017/utils/reference.d.ts +1 -1
  2925. package/dist/es2017/utils/reference.d.ts.map +1 -1
  2926. package/dist/es2017/utils/reference.js +2 -2
  2927. package/dist/es2017/utils/request/fetch.d.ts +1 -1
  2928. package/dist/es2017/utils/request/fetch.d.ts.map +1 -1
  2929. package/dist/es2017/utils/request/fetch.js +7 -6
  2930. package/dist/es2017/utils/request/index.d.ts +6 -6
  2931. package/dist/es2017/utils/request/index.d.ts.map +1 -1
  2932. package/dist/es2017/utils/request/index.js +3 -3
  2933. package/dist/es2017/utils/request/request_error.d.ts +9 -1
  2934. package/dist/es2017/utils/request/request_error.d.ts.map +1 -1
  2935. package/dist/es2017/utils/request/request_error.js +13 -2
  2936. package/dist/es2017/utils/request/xhr.d.ts +1 -1
  2937. package/dist/es2017/utils/request/xhr.d.ts.map +1 -1
  2938. package/dist/es2017/utils/request/xhr.js +7 -6
  2939. package/dist/es2017/utils/retry_promise_with_backoff.d.ts +1 -1
  2940. package/dist/es2017/utils/retry_promise_with_backoff.d.ts.map +1 -1
  2941. package/dist/es2017/utils/retry_promise_with_backoff.js +3 -3
  2942. package/dist/es2017/utils/sorted_list.js +2 -2
  2943. package/dist/es2017/utils/string_parsing.js +3 -3
  2944. package/dist/es2017/utils/sync_or_async.js +1 -1
  2945. package/dist/es2017/utils/task_canceller.js +3 -3
  2946. package/dist/es2017/utils/url-utils.js +2 -2
  2947. package/dist/es2017/utils/warn_once.js +1 -1
  2948. package/dist/es2017/utils/xml-parser.js +1 -1
  2949. package/dist/es2017/worker_entry_point.js +1 -1
  2950. package/dist/mpd-parser.wasm +0 -0
  2951. package/dist/worker.js +8 -8
  2952. package/eslint.config.mjs +131 -20
  2953. package/package.json +30 -16
  2954. package/src/__GENERATED_CODE/embedded_dash_wasm.ts +3 -1
  2955. package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
  2956. package/src/__GENERATED_CODE/index.ts +2 -2
  2957. package/src/compat/add_text_track.ts +2 -2
  2958. package/src/compat/browser_compatibility_types.ts +10 -7
  2959. package/src/compat/browser_version.ts +2 -2
  2960. package/src/compat/can_patch_isobmff.ts +1 -1
  2961. package/src/compat/can_patch_out_pssh.ts +2 -2
  2962. package/src/compat/can_preload_before_play.ts +1 -1
  2963. package/src/compat/can_rely_on_request_media_key_system_access.ts +12 -4
  2964. package/src/compat/can_rely_on_video_visibility_and_size.ts +2 -2
  2965. package/src/compat/can_reuse_media_keys.ts +2 -2
  2966. package/src/compat/change_source_buffer_type.ts +2 -2
  2967. package/src/compat/clear_element_src.ts +3 -3
  2968. package/src/compat/disable_remote_playback_on_managed_media_source.ts +2 -2
  2969. package/src/compat/eme/close_session.ts +4 -4
  2970. package/src/compat/eme/constants.ts +2 -2
  2971. package/src/compat/eme/custom_key_system_access.ts +4 -1
  2972. package/src/compat/eme/custom_media_keys/ie11_media_keys.ts +8 -8
  2973. package/src/compat/eme/custom_media_keys/index.ts +5 -5
  2974. package/src/compat/eme/custom_media_keys/moz_media_keys_constructor.ts +3 -3
  2975. package/src/compat/eme/custom_media_keys/ms_media_keys_constructor.ts +1 -1
  2976. package/src/compat/eme/custom_media_keys/old_webkit_media_keys.ts +8 -8
  2977. package/src/compat/eme/custom_media_keys/webkit_media_keys.ts +9 -9
  2978. package/src/compat/eme/custom_media_keys/webkit_media_keys_constructor.ts +3 -4
  2979. package/src/compat/eme/eme-api-implementation.ts +18 -18
  2980. package/src/compat/eme/generate_key_request.ts +34 -22
  2981. package/src/compat/eme/get_init_data.ts +12 -7
  2982. package/src/compat/eme/get_uuid_kid_from_keystatus_kid.ts +2 -2
  2983. package/src/compat/eme/get_webkit_fairplay_initdata.ts +2 -2
  2984. package/src/compat/eme/index.ts +7 -7
  2985. package/src/compat/eme/load_session.ts +2 -2
  2986. package/src/compat/eme/set_media_keys.ts +6 -5
  2987. package/src/compat/enable_audio_track.ts +2 -2
  2988. package/src/compat/env_detector.ts +9 -2
  2989. package/src/compat/event_listeners.ts +11 -11
  2990. package/src/compat/force_media_key_instantiation_if_needed.ts +88 -0
  2991. package/src/compat/generate_init_data.ts +32 -2
  2992. package/src/compat/get_start_date.ts +1 -1
  2993. package/src/compat/has_issues_with_high_media_source_duration.ts +2 -2
  2994. package/src/compat/has_worker_api.ts +1 -1
  2995. package/src/compat/is_codec_supported.ts +10 -19
  2996. package/src/compat/is_seeking_approximate.ts +2 -2
  2997. package/src/compat/is_vtt_cue.ts +2 -2
  2998. package/src/compat/make_vtt_cue.ts +4 -4
  2999. package/src/compat/may_media_element_fail_on_undecipherable_data.ts +2 -2
  3000. package/src/compat/on_height_width_change.ts +5 -5
  3001. package/src/compat/patch_webkit_source_buffer.ts +5 -5
  3002. package/src/compat/remove_cue.ts +3 -3
  3003. package/src/compat/reset_media_element.ts +3 -3
  3004. package/src/compat/should_await_set_media_keys.ts +2 -2
  3005. package/src/compat/should_favour_custom_safari_EME.ts +3 -3
  3006. package/src/compat/should_patch_out_dolby_vision_config_data_from_mp4.ts +2 -2
  3007. package/src/compat/should_reload_media_source_on_decipherability_update.ts +1 -1
  3008. package/src/compat/should_renew_media_key_system_access.ts +19 -6
  3009. package/src/compat/should_seek_at_zero.ts +2 -2
  3010. package/src/compat/should_unset_media_keys.ts +2 -2
  3011. package/src/compat/should_validate_metadata.ts +2 -2
  3012. package/src/compat/should_wait_for_data_before_loaded.ts +2 -2
  3013. package/src/compat/should_wait_for_have_enough_data.ts +2 -2
  3014. package/src/config.ts +4 -4
  3015. package/src/core/adaptive/adaptive_representation_selector.ts +25 -25
  3016. package/src/core/adaptive/buffer_based_chooser.ts +7 -7
  3017. package/src/core/adaptive/guess_based_chooser.ts +11 -11
  3018. package/src/core/adaptive/index.ts +2 -2
  3019. package/src/core/adaptive/network_analyzer.ts +10 -10
  3020. package/src/core/adaptive/utils/bandwidth_estimator.ts +2 -2
  3021. package/src/core/adaptive/utils/filter_by_bitrate.ts +2 -2
  3022. package/src/core/adaptive/utils/filter_by_resolution.ts +2 -2
  3023. package/src/core/adaptive/utils/last_estimate_storage.ts +1 -1
  3024. package/src/core/adaptive/utils/pending_requests_store.ts +4 -4
  3025. package/src/core/adaptive/utils/representation_score_calculator.ts +3 -3
  3026. package/src/core/adaptive/utils/select_optimal_representation.ts +2 -2
  3027. package/src/core/cmcd/cmcd_data_builder.ts +9 -9
  3028. package/src/core/cmcd/index.ts +2 -2
  3029. package/src/core/entry/FreezeResolver.ts +7 -7
  3030. package/src/core/entry/content_preparer.ts +72 -65
  3031. package/src/core/entry/content_time_boundaries_observer.ts +11 -11
  3032. package/src/core/entry/core_entry.ts +36 -40
  3033. package/src/core/entry/core_text_displayer_interface.ts +7 -7
  3034. package/src/core/entry/create_content_time_boundaries_observer.ts +8 -8
  3035. package/src/core/entry/get_buffered_data_per_media_buffer.ts +6 -6
  3036. package/src/core/entry/get_thumbnail_data.ts +5 -5
  3037. package/src/core/entry/index.ts +3 -3
  3038. package/src/core/entry/track_choice_setter.ts +7 -7
  3039. package/src/core/entry/utils.ts +9 -9
  3040. package/src/core/fetchers/cdn_prioritizer.ts +5 -5
  3041. package/src/core/fetchers/index.ts +10 -7
  3042. package/src/core/fetchers/manifest/index.ts +2 -2
  3043. package/src/core/fetchers/manifest/manifest_fetcher.ts +14 -14
  3044. package/src/core/fetchers/segment/index.ts +4 -4
  3045. package/src/core/fetchers/segment/initialization_segment_cache.ts +1 -1
  3046. package/src/core/fetchers/segment/prioritized_segment_fetcher.ts +5 -5
  3047. package/src/core/fetchers/segment/segment_fetcher.ts +22 -22
  3048. package/src/core/fetchers/segment/segment_queue.ts +11 -11
  3049. package/src/core/fetchers/segment/segment_queue_creator.ts +13 -11
  3050. package/src/core/fetchers/segment/task_prioritizer.ts +5 -5
  3051. package/src/core/fetchers/thumbnails/index.ts +2 -2
  3052. package/src/core/fetchers/thumbnails/thumbnail_fetcher.ts +14 -14
  3053. package/src/core/fetchers/utils/error_selector.ts +3 -3
  3054. package/src/core/fetchers/utils/retry_after_delay.ts +89 -0
  3055. package/src/core/fetchers/utils/schedule_request.ts +23 -14
  3056. package/src/core/segment_sinks/garbage_collector.ts +10 -10
  3057. package/src/core/segment_sinks/implementations/audio_video/audio_video_segment_sink.ts +7 -7
  3058. package/src/core/segment_sinks/implementations/audio_video/index.ts +1 -1
  3059. package/src/core/segment_sinks/implementations/index.ts +3 -3
  3060. package/src/core/segment_sinks/implementations/text/index.ts +2 -2
  3061. package/src/core/segment_sinks/implementations/text/text_segment_sink.ts +9 -11
  3062. package/src/core/segment_sinks/implementations/types.ts +10 -7
  3063. package/src/core/segment_sinks/implementations/utils/manual_time_ranges.ts +2 -2
  3064. package/src/core/segment_sinks/index.ts +6 -6
  3065. package/src/core/segment_sinks/inventory/buffered_history.ts +3 -3
  3066. package/src/core/segment_sinks/inventory/index.ts +5 -5
  3067. package/src/core/segment_sinks/inventory/segment_inventory.ts +15 -10
  3068. package/src/core/segment_sinks/inventory/types.ts +1 -1
  3069. package/src/core/segment_sinks/inventory/utils.ts +2 -2
  3070. package/src/core/segment_sinks/segment_sinks_store.ts +15 -15
  3071. package/src/core/stream/adaptation/adaptation_stream.ts +18 -18
  3072. package/src/core/stream/adaptation/get_representations_switch_strategy.ts +9 -9
  3073. package/src/core/stream/adaptation/index.ts +2 -2
  3074. package/src/core/stream/adaptation/types.ts +13 -8
  3075. package/src/core/stream/index.ts +5 -5
  3076. package/src/core/stream/orchestrator/get_time_ranges_for_content.ts +4 -4
  3077. package/src/core/stream/orchestrator/index.ts +2 -2
  3078. package/src/core/stream/orchestrator/stream_orchestrator.ts +27 -23
  3079. package/src/core/stream/period/index.ts +2 -2
  3080. package/src/core/stream/period/period_stream.ts +22 -22
  3081. package/src/core/stream/period/types.ts +15 -15
  3082. package/src/core/stream/period/utils/get_adaptation_switch_strategy.ts +10 -10
  3083. package/src/core/stream/representation/encryption_data_notifier.ts +2 -2
  3084. package/src/core/stream/representation/index.ts +2 -2
  3085. package/src/core/stream/representation/representation_stream.ts +13 -13
  3086. package/src/core/stream/representation/types.ts +9 -9
  3087. package/src/core/stream/representation/utils/append_segment_to_buffer.ts +11 -11
  3088. package/src/core/stream/representation/utils/check_for_discontinuity.ts +4 -4
  3089. package/src/core/stream/representation/utils/get_buffer_status.ts +9 -9
  3090. package/src/core/stream/representation/utils/get_needed_segments.ts +7 -7
  3091. package/src/core/stream/representation/utils/get_segment_priority.ts +1 -1
  3092. package/src/core/stream/representation/utils/push_init_segment.ts +8 -8
  3093. package/src/core/stream/representation/utils/push_media_segment.ts +10 -10
  3094. package/src/core/types.ts +15 -17
  3095. package/src/default_config.ts +9 -0
  3096. package/src/errors/encrypted_media_error.ts +4 -4
  3097. package/src/errors/error_codes.ts +5 -14
  3098. package/src/errors/format_error.ts +3 -3
  3099. package/src/errors/index.ts +14 -14
  3100. package/src/errors/is_known_error.ts +6 -6
  3101. package/src/errors/media_error.ts +6 -7
  3102. package/src/errors/network_error.ts +4 -4
  3103. package/src/errors/other_error.ts +3 -3
  3104. package/src/errors/worker_initialization_error.ts +2 -4
  3105. package/src/experimental/features/index.ts +3 -3
  3106. package/src/experimental/features/local.ts +5 -5
  3107. package/src/experimental/features/metaplaylist.ts +5 -5
  3108. package/src/experimental/features/multi_thread.ts +10 -7
  3109. package/src/experimental/features/worker/index.ts +3 -3
  3110. package/src/experimental/index.ts +1 -1
  3111. package/src/experimental/tools/DummyMediaElement/eme.ts +53 -15
  3112. package/src/experimental/tools/DummyMediaElement/html5.ts +14 -15
  3113. package/src/experimental/tools/DummyMediaElement/index.ts +1 -1
  3114. package/src/experimental/tools/DummyMediaElement/mse.ts +11 -11
  3115. package/src/experimental/tools/DummyMediaElement/utils.ts +5 -5
  3116. package/src/experimental/tools/VideoThumbnailLoader/features/dash.ts +2 -2
  3117. package/src/experimental/tools/VideoThumbnailLoader/features/metaplaylist.ts +2 -2
  3118. package/src/experimental/tools/VideoThumbnailLoader/index.ts +4 -1
  3119. package/src/experimental/tools/VideoThumbnailLoader/load_and_push_segment.ts +4 -4
  3120. package/src/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.ts +17 -14
  3121. package/src/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.ts +2 -2
  3122. package/src/experimental/tools/VideoThumbnailLoader/types.ts +7 -2
  3123. package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.ts +19 -19
  3124. package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.ts +1 -1
  3125. package/src/experimental/tools/createMetaplaylist/get_duration_from_manifest.ts +5 -5
  3126. package/src/experimental/tools/createMetaplaylist/index.ts +2 -2
  3127. package/src/experimental/tools/index.ts +3 -3
  3128. package/src/experimental/tools/mediaCapabilitiesProber/api.ts +12 -15
  3129. package/src/experimental/tools/mediaCapabilitiesProber/index.ts +2 -2
  3130. package/src/experimental/tools/mediaCapabilitiesProber/log.ts +1 -1
  3131. package/src/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.ts +2 -2
  3132. package/src/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.ts +1 -1
  3133. package/src/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.ts +2 -2
  3134. package/src/experimental/tools/mediaCapabilitiesProber/probers/isTypeSupportedWithFeatures.ts +4 -4
  3135. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.ts +3 -3
  3136. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.ts +3 -3
  3137. package/src/experimental/tools/mediaCapabilitiesProber/utils.ts +6 -5
  3138. package/src/features/add_features.ts +3 -3
  3139. package/src/features/features_object.ts +1 -1
  3140. package/src/features/index.ts +3 -3
  3141. package/src/features/list/dash.ts +6 -6
  3142. package/src/features/list/dash_wasm.ts +7 -7
  3143. package/src/features/list/debug_element.ts +2 -2
  3144. package/src/features/list/directfile.ts +3 -3
  3145. package/src/features/list/eme.ts +2 -2
  3146. package/src/features/list/html_sami_parser.ts +3 -3
  3147. package/src/features/list/html_srt_parser.ts +3 -3
  3148. package/src/features/list/html_text_buffer.ts +2 -2
  3149. package/src/features/list/html_ttml_parser.ts +3 -3
  3150. package/src/features/list/html_vtt_parser.ts +3 -3
  3151. package/src/features/list/index.ts +18 -17
  3152. package/src/features/list/media_source_main.ts +4 -4
  3153. package/src/features/list/multi_thread.ts +17 -0
  3154. package/src/features/list/native_sami_parser.ts +3 -3
  3155. package/src/features/list/native_srt_parser.ts +3 -3
  3156. package/src/features/list/native_text_buffer.ts +2 -2
  3157. package/src/features/list/native_ttml_parser.ts +3 -3
  3158. package/src/features/list/native_vtt_parser.ts +3 -3
  3159. package/src/features/list/smooth.ts +5 -5
  3160. package/src/features/types.ts +19 -16
  3161. package/src/importable_worker.ts +8 -8
  3162. package/src/index.ts +4 -4
  3163. package/src/initialize_worker.ts +11 -11
  3164. package/src/log.ts +1 -1
  3165. package/src/main_thread/api/debug/buffer_graph.ts +2 -2
  3166. package/src/main_thread/api/debug/buffer_size_graph.ts +1 -1
  3167. package/src/main_thread/api/debug/index.ts +1 -1
  3168. package/src/main_thread/api/debug/modules/general_info.ts +5 -5
  3169. package/src/main_thread/api/debug/modules/segment_buffer_content.ts +10 -10
  3170. package/src/main_thread/api/debug/modules/segment_buffer_size.ts +5 -5
  3171. package/src/main_thread/api/debug/render.ts +6 -6
  3172. package/src/main_thread/api/index.ts +1 -1
  3173. package/src/main_thread/api/option_utils.ts +8 -9
  3174. package/src/main_thread/api/public_api.ts +84 -65
  3175. package/src/main_thread/api/utils.ts +12 -12
  3176. package/src/main_thread/core_interface/base.ts +2 -2
  3177. package/src/main_thread/core_interface/monothread.ts +6 -6
  3178. package/src/main_thread/core_interface/multithread.ts +3 -3
  3179. package/src/main_thread/core_interface/types.ts +3 -3
  3180. package/src/main_thread/decrypt/clear_on_stop.ts +5 -5
  3181. package/src/main_thread/decrypt/content_decryptor.ts +33 -33
  3182. package/src/main_thread/decrypt/create_or_load_session.ts +10 -12
  3183. package/src/main_thread/decrypt/create_session.ts +10 -11
  3184. package/src/main_thread/decrypt/dispose_decryption_resources.ts +2 -2
  3185. package/src/main_thread/decrypt/find_key_system.ts +19 -21
  3186. package/src/main_thread/decrypt/get_key_system_configuration.ts +2 -2
  3187. package/src/main_thread/decrypt/get_media_keys.ts +17 -15
  3188. package/src/main_thread/decrypt/index.ts +5 -5
  3189. package/src/main_thread/decrypt/init_media_keys.ts +8 -8
  3190. package/src/main_thread/decrypt/session_events_listener.ts +15 -12
  3191. package/src/main_thread/decrypt/set_server_certificate.ts +7 -5
  3192. package/src/main_thread/decrypt/types.ts +5 -5
  3193. package/src/main_thread/decrypt/utils/are_init_values_compatible.ts +2 -2
  3194. package/src/main_thread/decrypt/utils/check_key_statuses.ts +7 -7
  3195. package/src/main_thread/decrypt/utils/clean_old_loaded_sessions.ts +2 -2
  3196. package/src/main_thread/decrypt/utils/clean_old_stored_persistent_info.ts +2 -2
  3197. package/src/main_thread/decrypt/utils/get_drm_system_id.ts +4 -2
  3198. package/src/main_thread/decrypt/utils/init_data_values_container.ts +4 -4
  3199. package/src/main_thread/decrypt/utils/is_compatible_codec_supported.ts +2 -2
  3200. package/src/main_thread/decrypt/utils/is_session_usable.ts +3 -3
  3201. package/src/main_thread/decrypt/utils/key_id_comparison.ts +1 -1
  3202. package/src/main_thread/decrypt/utils/key_session_record.ts +3 -3
  3203. package/src/main_thread/decrypt/utils/loaded_sessions_store.ts +13 -8
  3204. package/src/main_thread/decrypt/utils/media_keys_attacher.ts +8 -8
  3205. package/src/main_thread/decrypt/utils/persistent_sessions_store.ts +13 -13
  3206. package/src/main_thread/decrypt/utils/serializable_bytes.ts +1 -1
  3207. package/src/main_thread/decrypt/utils/server_certificate_store.ts +2 -2
  3208. package/src/main_thread/init/directfile_content_initializer.ts +20 -20
  3209. package/src/main_thread/init/index.ts +2 -2
  3210. package/src/main_thread/init/media_source_content_initializer.ts +91 -72
  3211. package/src/main_thread/init/types.ts +11 -12
  3212. package/src/main_thread/init/utils/create_core_playback_observer.ts +13 -13
  3213. package/src/main_thread/init/utils/get_initial_time.ts +6 -6
  3214. package/src/main_thread/init/utils/get_loaded_reference.ts +8 -8
  3215. package/src/main_thread/init/utils/initial_seek_and_play.ts +11 -11
  3216. package/src/main_thread/init/utils/initialize_content_decryption.ts +13 -13
  3217. package/src/main_thread/init/utils/main_thread_text_displayer_interface.ts +3 -3
  3218. package/src/main_thread/init/utils/rebuffering_controller.ts +16 -16
  3219. package/src/main_thread/init/utils/stream_events_emitter/index.ts +2 -2
  3220. package/src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts +3 -3
  3221. package/src/main_thread/init/utils/stream_events_emitter/stream_events_emitter.ts +10 -10
  3222. package/src/main_thread/init/utils/stream_events_emitter/types.ts +1 -1
  3223. package/src/main_thread/init/utils/throw_on_media_error.ts +4 -4
  3224. package/src/main_thread/init/utils/update_manifest_codec_support.ts +12 -10
  3225. package/src/main_thread/render_thumbnail.ts +9 -9
  3226. package/src/main_thread/text_displayer/html/html_parsers.ts +3 -3
  3227. package/src/main_thread/text_displayer/html/html_text_displayer.ts +15 -15
  3228. package/src/main_thread/text_displayer/html/index.ts +1 -1
  3229. package/src/main_thread/text_displayer/html/text_track_cues_store.ts +3 -3
  3230. package/src/main_thread/text_displayer/index.ts +1 -1
  3231. package/src/main_thread/text_displayer/manual_time_ranges.ts +2 -2
  3232. package/src/main_thread/text_displayer/native/index.ts +1 -1
  3233. package/src/main_thread/text_displayer/native/native_parsers.ts +4 -4
  3234. package/src/main_thread/text_displayer/native/native_text_displayer.ts +10 -10
  3235. package/src/main_thread/text_displayer/types.ts +2 -2
  3236. package/src/main_thread/tracks_store/index.ts +3 -3
  3237. package/src/main_thread/tracks_store/media_element_tracks_store.ts +11 -17
  3238. package/src/main_thread/tracks_store/track_dispatcher.ts +14 -12
  3239. package/src/main_thread/tracks_store/tracks_store.ts +14 -14
  3240. package/src/main_thread/types.ts +36 -34
  3241. package/src/main_thread/utils/media_capabilities.ts +3 -3
  3242. package/src/manifest/classes/adaptation.ts +9 -9
  3243. package/src/manifest/classes/index.ts +14 -14
  3244. package/src/manifest/classes/manifest.ts +21 -21
  3245. package/src/manifest/classes/period.ts +12 -11
  3246. package/src/manifest/classes/representation.ts +10 -10
  3247. package/src/manifest/classes/representation_index/index.ts +2 -2
  3248. package/src/manifest/classes/representation_index/static.ts +2 -2
  3249. package/src/manifest/classes/representation_index/types.ts +4 -4
  3250. package/src/manifest/classes/update_period_in_place.ts +10 -7
  3251. package/src/manifest/classes/update_periods.ts +10 -10
  3252. package/src/manifest/classes/utils.ts +5 -5
  3253. package/src/manifest/index.ts +6 -6
  3254. package/src/manifest/types.ts +5 -2
  3255. package/src/manifest/utils.ts +16 -11
  3256. package/src/minimal.ts +2 -2
  3257. package/src/mse/index.ts +2 -2
  3258. package/src/mse/main_media_source_interface.ts +26 -27
  3259. package/src/mse/types.ts +3 -3
  3260. package/src/mse/utils/end_of_stream.ts +5 -5
  3261. package/src/mse/utils/media_source_duration_updater.ts +12 -8
  3262. package/src/mse/worker_media_source_interface.ts +10 -10
  3263. package/src/parsers/containers/isobmff/create_box.ts +3 -3
  3264. package/src/parsers/containers/isobmff/drm/index.ts +1 -1
  3265. package/src/parsers/containers/isobmff/drm/playready.ts +7 -3
  3266. package/src/parsers/containers/isobmff/extract_complete_chunks.ts +2 -2
  3267. package/src/parsers/containers/isobmff/extract_pssh.ts +5 -5
  3268. package/src/parsers/containers/isobmff/find_complete_box.ts +1 -1
  3269. package/src/parsers/containers/isobmff/get_box.ts +3 -3
  3270. package/src/parsers/containers/isobmff/index.ts +9 -9
  3271. package/src/parsers/containers/isobmff/read.ts +1 -1
  3272. package/src/parsers/containers/isobmff/remove_dolby_vision_config_data.ts +3 -3
  3273. package/src/parsers/containers/isobmff/utils.ts +10 -10
  3274. package/src/parsers/containers/matroska/index.ts +2 -2
  3275. package/src/parsers/containers/matroska/utils.ts +1 -1
  3276. package/src/parsers/images/bif.ts +2 -2
  3277. package/src/parsers/manifest/dash/common/attach_trickmode_track.ts +2 -2
  3278. package/src/parsers/manifest/dash/common/content_protection_parser.ts +15 -14
  3279. package/src/parsers/manifest/dash/common/convert_supplemental_codecs.ts +1 -1
  3280. package/src/parsers/manifest/dash/common/flatten_overlapping_periods.ts +2 -2
  3281. package/src/parsers/manifest/dash/common/get_clock_offset.ts +2 -2
  3282. package/src/parsers/manifest/dash/common/get_http_utc-timing_url.ts +14 -10
  3283. package/src/parsers/manifest/dash/common/get_minimum_and_maximum_positions.ts +3 -3
  3284. package/src/parsers/manifest/dash/common/get_periods_time_infos.ts +2 -2
  3285. package/src/parsers/manifest/dash/common/index.ts +3 -3
  3286. package/src/parsers/manifest/dash/common/indexes/base.ts +29 -27
  3287. package/src/parsers/manifest/dash/common/indexes/get_init_segment.ts +34 -11
  3288. package/src/parsers/manifest/dash/common/indexes/get_segments_from_timeline.ts +6 -6
  3289. package/src/parsers/manifest/dash/common/indexes/index.ts +8 -8
  3290. package/src/parsers/manifest/dash/common/indexes/list.ts +34 -27
  3291. package/src/parsers/manifest/dash/common/indexes/template.ts +28 -27
  3292. package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.ts +5 -5
  3293. package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.ts +8 -8
  3294. package/src/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.ts +3 -3
  3295. package/src/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.ts +3 -3
  3296. package/src/parsers/manifest/dash/common/indexes/timeline/index.ts +2 -2
  3297. package/src/parsers/manifest/dash/common/indexes/timeline/parse_s_element.ts +3 -3
  3298. package/src/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.ts +41 -40
  3299. package/src/parsers/manifest/dash/common/indexes/tokens.ts +1 -1
  3300. package/src/parsers/manifest/dash/common/indexes/utils.ts +1 -1
  3301. package/src/parsers/manifest/dash/common/infer_adaptation_type.ts +26 -31
  3302. package/src/parsers/manifest/dash/common/manifest_bounds_calculator.ts +1 -1
  3303. package/src/parsers/manifest/dash/common/parse_adaptation_sets.ts +68 -62
  3304. package/src/parsers/manifest/dash/common/parse_availability_start_time.ts +2 -2
  3305. package/src/parsers/manifest/dash/common/parse_mpd.ts +39 -39
  3306. package/src/parsers/manifest/dash/common/parse_periods.ts +23 -22
  3307. package/src/parsers/manifest/dash/common/parse_representation_index.ts +132 -44
  3308. package/src/parsers/manifest/dash/common/parse_representations.ts +40 -40
  3309. package/src/parsers/manifest/dash/common/resolve_base_urls.ts +2 -2
  3310. package/src/parsers/manifest/dash/index.ts +1 -1
  3311. package/src/parsers/manifest/dash/js-parser/index.ts +1 -1
  3312. package/src/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.ts +64 -98
  3313. package/src/parsers/manifest/dash/js-parser/node_parsers/BaseURL.ts +3 -3
  3314. package/src/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.ts +11 -9
  3315. package/src/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.ts +10 -10
  3316. package/src/parsers/manifest/dash/js-parser/node_parsers/EventStream.ts +7 -8
  3317. package/src/parsers/manifest/dash/js-parser/node_parsers/Initialization.ts +11 -10
  3318. package/src/parsers/manifest/dash/js-parser/node_parsers/MPD.ts +31 -43
  3319. package/src/parsers/manifest/dash/js-parser/node_parsers/Period.ts +28 -38
  3320. package/src/parsers/manifest/dash/js-parser/node_parsers/Representation.ts +38 -59
  3321. package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.ts +23 -28
  3322. package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentList.ts +10 -7
  3323. package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.ts +20 -24
  3324. package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.ts +2 -2
  3325. package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.ts +10 -12
  3326. package/src/parsers/manifest/dash/js-parser/node_parsers/utils.ts +17 -18
  3327. package/src/parsers/manifest/dash/js-parser/parse_from_xml_string.ts +33 -19
  3328. package/src/parsers/manifest/dash/node_parser_types.ts +95 -62
  3329. package/src/parsers/manifest/dash/parsers_types.ts +4 -6
  3330. package/src/parsers/manifest/dash/wasm-parser/Cargo.lock +2 -20
  3331. package/src/parsers/manifest/dash/wasm-parser/Cargo.toml +3 -6
  3332. package/src/parsers/manifest/dash/wasm-parser/README.md +12 -10
  3333. package/src/parsers/manifest/dash/wasm-parser/index.ts +2 -2
  3334. package/src/parsers/manifest/dash/wasm-parser/rs/events.rs +25 -25
  3335. package/src/parsers/manifest/dash/wasm-parser/rs/lib.rs +17 -14
  3336. package/src/parsers/manifest/dash/wasm-parser/rs/processor/attributes.rs +62 -162
  3337. package/src/parsers/manifest/dash/wasm-parser/rs/processor/mod.rs +206 -224
  3338. package/src/parsers/manifest/dash/wasm-parser/rs/processor/s_element.rs +8 -11
  3339. package/src/parsers/manifest/dash/wasm-parser/rs/reader.rs +1 -1
  3340. package/src/parsers/manifest/dash/wasm-parser/rs/reportable.rs +8 -47
  3341. package/src/parsers/manifest/dash/wasm-parser/rs/utils.rs +1 -1
  3342. package/src/parsers/manifest/dash/wasm-parser/rs/xml.rs +796 -0
  3343. package/src/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.ts +27 -20
  3344. package/src/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.ts +120 -137
  3345. package/src/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.ts +5 -6
  3346. package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.ts +8 -9
  3347. package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.ts +14 -15
  3348. package/src/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.ts +27 -19
  3349. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Initialization.ts +26 -0
  3350. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Label.ts +7 -6
  3351. package/src/parsers/manifest/dash/wasm-parser/ts/generators/MPD.ts +52 -49
  3352. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Period.ts +53 -46
  3353. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Representation.ts +73 -86
  3354. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.ts +7 -8
  3355. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.ts +40 -47
  3356. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.ts +20 -11
  3357. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.ts +50 -34
  3358. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.ts +8 -9
  3359. package/src/parsers/manifest/dash/wasm-parser/ts/generators/XLink.ts +13 -7
  3360. package/src/parsers/manifest/dash/wasm-parser/ts/generators/index.ts +1 -1
  3361. package/src/parsers/manifest/dash/wasm-parser/ts/generators/root.ts +10 -9
  3362. package/src/parsers/manifest/dash/wasm-parser/ts/parsers_stack.ts +7 -2
  3363. package/src/parsers/manifest/dash/wasm-parser/ts/types.ts +3 -0
  3364. package/src/parsers/manifest/dash/wasm-parser/ts/utils.ts +18 -8
  3365. package/src/parsers/manifest/index.ts +1 -1
  3366. package/src/parsers/manifest/local/index.ts +2 -2
  3367. package/src/parsers/manifest/local/parse_local_manifest.ts +5 -5
  3368. package/src/parsers/manifest/local/representation_index.ts +3 -3
  3369. package/src/parsers/manifest/metaplaylist/index.ts +2 -2
  3370. package/src/parsers/manifest/metaplaylist/metaplaylist_parser.ts +11 -11
  3371. package/src/parsers/manifest/metaplaylist/representation_index.ts +5 -5
  3372. package/src/parsers/manifest/smooth/create_parser.ts +24 -24
  3373. package/src/parsers/manifest/smooth/get_codecs.ts +1 -1
  3374. package/src/parsers/manifest/smooth/index.ts +3 -3
  3375. package/src/parsers/manifest/smooth/parse_C_nodes.ts +2 -2
  3376. package/src/parsers/manifest/smooth/parse_protection_node.ts +5 -5
  3377. package/src/parsers/manifest/smooth/representation_index.ts +10 -10
  3378. package/src/parsers/manifest/smooth/shared_smooth_segment_timeline.ts +7 -7
  3379. package/src/parsers/manifest/smooth/utils/add_segment_infos.ts +1 -1
  3380. package/src/parsers/manifest/smooth/utils/reduceChildren.ts +1 -1
  3381. package/src/parsers/manifest/types.ts +2 -2
  3382. package/src/parsers/manifest/utils/check_manifest_ids.ts +3 -3
  3383. package/src/parsers/manifest/utils/clear_timeline_from_position.ts +1 -1
  3384. package/src/parsers/manifest/utils/get_first_time_from_adaptation.ts +1 -1
  3385. package/src/parsers/manifest/utils/get_last_time_from_adaptation.ts +1 -1
  3386. package/src/parsers/manifest/utils/get_maximum_positions.ts +3 -3
  3387. package/src/parsers/manifest/utils/get_minimum_position.ts +3 -3
  3388. package/src/parsers/manifest/utils/index_helpers.ts +1 -1
  3389. package/src/parsers/manifest/utils/update_segment_timeline.ts +4 -4
  3390. package/src/parsers/texttracks/index.ts +1 -1
  3391. package/src/parsers/texttracks/sami/html.ts +5 -5
  3392. package/src/parsers/texttracks/sami/native.ts +6 -6
  3393. package/src/parsers/texttracks/srt/find_end_of_cue_block.ts +1 -1
  3394. package/src/parsers/texttracks/srt/get_cue_blocks.ts +2 -2
  3395. package/src/parsers/texttracks/srt/html.ts +4 -4
  3396. package/src/parsers/texttracks/srt/native.ts +6 -6
  3397. package/src/parsers/texttracks/srt/parse_cue.ts +2 -2
  3398. package/src/parsers/texttracks/srt/parse_timestamp.ts +1 -1
  3399. package/src/parsers/texttracks/ttml/get_parameters.ts +2 -2
  3400. package/src/parsers/texttracks/ttml/get_styling.ts +4 -4
  3401. package/src/parsers/texttracks/ttml/get_time_delimiters.ts +4 -4
  3402. package/src/parsers/texttracks/ttml/html/apply_extent.ts +3 -3
  3403. package/src/parsers/texttracks/ttml/html/apply_font_size.ts +3 -3
  3404. package/src/parsers/texttracks/ttml/html/apply_line_height.ts +3 -3
  3405. package/src/parsers/texttracks/ttml/html/apply_origin.ts +3 -3
  3406. package/src/parsers/texttracks/ttml/html/apply_padding.ts +3 -3
  3407. package/src/parsers/texttracks/ttml/html/create_element.ts +13 -13
  3408. package/src/parsers/texttracks/ttml/html/generate_css_test_outline.ts +1 -1
  3409. package/src/parsers/texttracks/ttml/html/index.ts +1 -1
  3410. package/src/parsers/texttracks/ttml/html/parse_cue.ts +3 -3
  3411. package/src/parsers/texttracks/ttml/html/parse_ttml_to_div.ts +6 -6
  3412. package/src/parsers/texttracks/ttml/html/ttml_color_to_css_color.ts +2 -2
  3413. package/src/parsers/texttracks/ttml/native/index.ts +1 -1
  3414. package/src/parsers/texttracks/ttml/native/parse_cue.ts +10 -10
  3415. package/src/parsers/texttracks/ttml/native/parse_ttml_to_vtt.ts +5 -5
  3416. package/src/parsers/texttracks/ttml/parse_ttml.ts +9 -9
  3417. package/src/parsers/texttracks/ttml/resolve_styles_inheritance.ts +5 -5
  3418. package/src/parsers/texttracks/ttml/time_parsing.ts +2 -2
  3419. package/src/parsers/texttracks/ttml/xml_utils.ts +1 -1
  3420. package/src/parsers/texttracks/types.ts +1 -1
  3421. package/src/parsers/texttracks/webvtt/create_default_style_elements.ts +1 -1
  3422. package/src/parsers/texttracks/webvtt/get_cue_blocks.ts +2 -2
  3423. package/src/parsers/texttracks/webvtt/get_style_blocks.ts +2 -2
  3424. package/src/parsers/texttracks/webvtt/html/convert_payload_to_html.ts +2 -2
  3425. package/src/parsers/texttracks/webvtt/html/create_style_attribute.ts +1 -1
  3426. package/src/parsers/texttracks/webvtt/html/create_styled_element.ts +3 -3
  3427. package/src/parsers/texttracks/webvtt/html/index.ts +3 -3
  3428. package/src/parsers/texttracks/webvtt/html/parse_webvtt_mp4.ts +5 -5
  3429. package/src/parsers/texttracks/webvtt/html/parse_webvtt_plain_text.ts +9 -9
  3430. package/src/parsers/texttracks/webvtt/html/to_html.ts +4 -4
  3431. package/src/parsers/texttracks/webvtt/native/index.ts +2 -2
  3432. package/src/parsers/texttracks/webvtt/native/parse_vtt_plain_text_to_cues.ts +11 -11
  3433. package/src/parsers/texttracks/webvtt/native/parse_webvtt_mp4_to_cues.ts +5 -5
  3434. package/src/parsers/texttracks/webvtt/native/set_settings_on_cue.ts +3 -3
  3435. package/src/parsers/texttracks/webvtt/native/to_native_cue.ts +3 -3
  3436. package/src/parsers/texttracks/webvtt/parse_cue_block.ts +1 -1
  3437. package/src/parsers/texttracks/webvtt/parse_mp4_embedded_wvtt.ts +7 -7
  3438. package/src/parsers/texttracks/webvtt/parse_style_block.ts +2 -2
  3439. package/src/parsers/texttracks/webvtt/parse_timestamp.ts +1 -1
  3440. package/src/parsers/texttracks/webvtt/utils.ts +1 -1
  3441. package/src/playback_observer/core_playback_observer.ts +9 -9
  3442. package/src/playback_observer/index.ts +4 -4
  3443. package/src/playback_observer/media_element_playback_observer.ts +17 -17
  3444. package/src/playback_observer/types.ts +3 -3
  3445. package/src/playback_observer/utils/generate_read_only_observer.ts +3 -3
  3446. package/src/public_types.ts +13 -14
  3447. package/src/tools/TextTrackRenderer/index.ts +6 -6
  3448. package/src/tools/TextTrackRenderer/text_track_renderer.ts +4 -4
  3449. package/src/tools/index.ts +3 -3
  3450. package/src/tools/parseBIFThumbnails/index.ts +1 -1
  3451. package/src/tools/string_utils/index.ts +1 -1
  3452. package/src/transports/dash/construct_segment_url.ts +3 -3
  3453. package/src/transports/dash/get_events_out_of_emsgs.ts +3 -3
  3454. package/src/transports/dash/index.ts +1 -1
  3455. package/src/transports/dash/init_segment_loader.ts +7 -7
  3456. package/src/transports/dash/integrity_checks.ts +8 -8
  3457. package/src/transports/dash/load_chunked_segment_data.ts +6 -6
  3458. package/src/transports/dash/manifest_parser.ts +14 -15
  3459. package/src/transports/dash/pipelines.ts +10 -10
  3460. package/src/transports/dash/segment_loader.ts +17 -14
  3461. package/src/transports/dash/segment_parser.ts +14 -11
  3462. package/src/transports/dash/text_loader.ts +12 -12
  3463. package/src/transports/dash/text_parser.ts +9 -6
  3464. package/src/transports/dash/thumbnails.ts +8 -8
  3465. package/src/transports/index.ts +1 -1
  3466. package/src/transports/local/index.ts +1 -1
  3467. package/src/transports/local/pipelines.ts +11 -11
  3468. package/src/transports/local/segment_loader.ts +8 -10
  3469. package/src/transports/local/segment_parser.ts +6 -6
  3470. package/src/transports/local/text_parser.ts +6 -6
  3471. package/src/transports/metaplaylist/index.ts +1 -1
  3472. package/src/transports/metaplaylist/pipelines.ts +19 -15
  3473. package/src/transports/smooth/extract_timings_infos.ts +6 -6
  3474. package/src/transports/smooth/index.ts +1 -1
  3475. package/src/transports/smooth/isobmff/create_audio_init_segment.ts +4 -4
  3476. package/src/transports/smooth/isobmff/create_boxes.ts +3 -3
  3477. package/src/transports/smooth/isobmff/create_init_segment.ts +6 -3
  3478. package/src/transports/smooth/isobmff/create_traf_box.ts +5 -2
  3479. package/src/transports/smooth/isobmff/create_video_init_segment.ts +4 -4
  3480. package/src/transports/smooth/isobmff/get_aaces_header.ts +2 -2
  3481. package/src/transports/smooth/isobmff/index.ts +6 -6
  3482. package/src/transports/smooth/isobmff/parse_tfrf.ts +2 -2
  3483. package/src/transports/smooth/isobmff/parse_tfxd.ts +2 -2
  3484. package/src/transports/smooth/isobmff/patch_segment.ts +5 -5
  3485. package/src/transports/smooth/pipelines.ts +19 -19
  3486. package/src/transports/smooth/segment_loader.ts +14 -11
  3487. package/src/transports/smooth/utils.ts +3 -3
  3488. package/src/transports/types.ts +9 -13
  3489. package/src/transports/utils/call_custom_manifest_loader.ts +8 -5
  3490. package/src/transports/utils/check_isobmff_integrity.ts +2 -2
  3491. package/src/transports/utils/generate_manifest_loader.ts +7 -7
  3492. package/src/transports/utils/get_isobmff_timing_infos.ts +4 -4
  3493. package/src/transports/utils/infer_segment_container.ts +1 -1
  3494. package/src/transports/utils/parse_text_track.ts +6 -6
  3495. package/src/utils/are_codecs_compatible.ts +2 -2
  3496. package/src/utils/assert.ts +1 -1
  3497. package/src/utils/base64.ts +20 -6
  3498. package/src/utils/cancellable_sleep.ts +2 -2
  3499. package/src/utils/create_cancellable_promise.ts +1 -1
  3500. package/src/utils/create_uuid.ts +2 -2
  3501. package/src/utils/deep_merge.ts +1 -1
  3502. package/src/utils/event_emitter.ts +3 -3
  3503. package/src/utils/get_last_item_from_array.ts +9 -0
  3504. package/src/utils/global_scope.ts +2 -2
  3505. package/src/utils/is_node.ts +1 -1
  3506. package/src/utils/languages/index.ts +5 -2
  3507. package/src/utils/languages/normalize.ts +4 -4
  3508. package/src/utils/logger.ts +4 -6
  3509. package/src/utils/monotonic_timestamp.ts +1 -1
  3510. package/src/utils/object_assign.ts +3 -4
  3511. package/src/utils/object_entries.ts +12 -0
  3512. package/src/utils/reference.ts +3 -3
  3513. package/src/utils/request/fetch.ts +8 -6
  3514. package/src/utils/request/index.ts +6 -6
  3515. package/src/utils/request/request_error.ts +26 -6
  3516. package/src/utils/request/xhr.ts +15 -7
  3517. package/src/utils/retry_promise_with_backoff.ts +4 -4
  3518. package/src/utils/sorted_list.ts +2 -2
  3519. package/src/utils/string_parsing.ts +3 -3
  3520. package/src/utils/sync_or_async.ts +1 -1
  3521. package/src/utils/task_canceller.ts +3 -3
  3522. package/src/utils/url-utils.ts +2 -2
  3523. package/src/utils/warn_once.ts +1 -1
  3524. package/src/utils/xml-parser.ts +2 -2
  3525. package/src/worker_entry_point.ts +1 -1
  3526. package/vitest.config.parsers.mjs +20 -0
  3527. package/vitest.config.unit.mjs +1 -1
  3528. package/dist/commonjs/transports/metaplaylist/manifest_loader.d.ts +0 -27
  3529. package/dist/commonjs/transports/metaplaylist/manifest_loader.d.ts.map +0 -1
  3530. package/dist/commonjs/transports/metaplaylist/manifest_loader.js +0 -57
  3531. package/dist/commonjs/utils/test-utils.d.ts +0 -30
  3532. package/dist/commonjs/utils/test-utils.d.ts.map +0 -1
  3533. package/dist/commonjs/utils/test-utils.js +0 -79
  3534. package/dist/es2017/transports/metaplaylist/manifest_loader.d.ts +0 -27
  3535. package/dist/es2017/transports/metaplaylist/manifest_loader.d.ts.map +0 -1
  3536. package/dist/es2017/transports/metaplaylist/manifest_loader.js +0 -53
  3537. package/dist/es2017/utils/test-utils.d.ts +0 -30
  3538. package/dist/es2017/utils/test-utils.d.ts.map +0 -1
  3539. package/dist/es2017/utils/test-utils.js +0 -36
  3540. package/src/compat/__tests__/add_text_track.test.ts +0 -157
  3541. package/src/compat/__tests__/browser_compatibility_types.test.ts +0 -137
  3542. package/src/compat/__tests__/browser_version.test.ts +0 -98
  3543. package/src/compat/__tests__/can_patch_isobmff.test.ts +0 -30
  3544. package/src/compat/__tests__/can_patch_out_pssh.test.ts +0 -40
  3545. package/src/compat/__tests__/can_rely_on_video_visibility_and_size.test.ts +0 -44
  3546. package/src/compat/__tests__/can_reuse_media_keys.test.ts +0 -48
  3547. package/src/compat/__tests__/change_source_buffer_type.test.ts +0 -41
  3548. package/src/compat/__tests__/clear_element_src.test.ts +0 -223
  3549. package/src/compat/__tests__/enable_audio_track.test.ts +0 -331
  3550. package/src/compat/__tests__/generate_init_data.test.ts +0 -20
  3551. package/src/compat/__tests__/is_codec_supported.test.ts +0 -65
  3552. package/src/compat/__tests__/is_seeking_approximate.test.ts +0 -22
  3553. package/src/compat/__tests__/is_vtt_cue.test.ts +0 -49
  3554. package/src/compat/__tests__/make_vtt_cue.test.ts +0 -71
  3555. package/src/compat/__tests__/patch_webkit_source_buffer.test.ts +0 -109
  3556. package/src/compat/__tests__/remove_cue.test.ts +0 -194
  3557. package/src/compat/__tests__/should_favour_custom_safari_EME.test.ts +0 -62
  3558. package/src/compat/__tests__/should_patch_out_dolby_vision_config_data_from_mp4.test.ts +0 -78
  3559. package/src/compat/__tests__/should_reload_media_source_on_decipherability_update.test.ts +0 -38
  3560. package/src/compat/__tests__/should_renew_media_key_system_access.test.ts +0 -50
  3561. package/src/compat/__tests__/should_unset_media_keys.test.ts +0 -25
  3562. package/src/compat/__tests__/should_validate_metadata.test.ts +0 -22
  3563. package/src/compat/__tests__/should_wait_for_data_before_loaded.test.ts +0 -42
  3564. package/src/compat/__tests__/should_wait_for_have_enough_data.test.ts +0 -22
  3565. package/src/core/adaptive/__tests__/adaptive_representation_selector.test.ts +0 -845
  3566. package/src/core/adaptive/__tests__/buffer_based_chooser.test.ts +0 -477
  3567. package/src/core/adaptive/__tests__/guess_based_chooser.test.ts +0 -899
  3568. package/src/core/adaptive/__tests__/mocks.ts +0 -100
  3569. package/src/core/adaptive/__tests__/network_analyzer.test.ts +0 -607
  3570. package/src/core/adaptive/utils/__tests__/bandwidth_estimator.test.ts +0 -117
  3571. package/src/core/adaptive/utils/__tests__/ewma.test.ts +0 -64
  3572. package/src/core/adaptive/utils/__tests__/filter_by_bitrate.test.ts +0 -33
  3573. package/src/core/adaptive/utils/__tests__/filter_by_resolution.test.ts +0 -83
  3574. package/src/core/adaptive/utils/__tests__/get_buffer_levels.test.ts +0 -35
  3575. package/src/core/adaptive/utils/__tests__/last_estimate_storage.test.ts +0 -89
  3576. package/src/core/adaptive/utils/__tests__/pending_requests_store.test.ts +0 -292
  3577. package/src/core/adaptive/utils/__tests__/representation_score_calculator.test.ts +0 -249
  3578. package/src/core/adaptive/utils/__tests__/select_optimal_representation.test.ts +0 -38
  3579. package/src/core/cmcd/__tests__/cmcd_data_builder.test.ts +0 -509
  3580. package/src/core/entry/__tests__/FreezeResolver.test.ts +0 -542
  3581. package/src/core/entry/__tests__/content_time_boundaries_observer.test.ts +0 -886
  3582. package/src/core/entry/__tests__/core_text_displayer_interface.test.ts +0 -225
  3583. package/src/core/entry/__tests__/get_buffered_data_per_media_buffer.test.ts +0 -95
  3584. package/src/core/entry/__tests__/track_choice_setter.test.ts +0 -288
  3585. package/src/core/entry/__tests__/utils.test.ts +0 -315
  3586. package/src/core/fetchers/__tests__/cdn_prioritizer.test.ts +0 -166
  3587. package/src/core/fetchers/manifest/__tests__/manifest_fetcher.test.ts +0 -852
  3588. package/src/core/fetchers/segment/__tests__/initialization_segment_cache.test.ts +0 -301
  3589. package/src/core/fetchers/segment/__tests__/segment_fetcher.test.ts +0 -872
  3590. package/src/core/fetchers/segment/__tests__/segment_queue.test.ts +0 -557
  3591. package/src/core/fetchers/segment/__tests__/task_prioritizer.test.ts +0 -936
  3592. package/src/core/fetchers/thumbnails/__tests__/thumbnail_fetcher.test.ts +0 -505
  3593. package/src/core/fetchers/utils/__tests__/schedule_request.test.ts +0 -331
  3594. package/src/core/segment_sinks/__tests__/garbage_collector.test.ts +0 -434
  3595. package/src/core/segment_sinks/__tests__/mocks.ts +0 -49
  3596. package/src/core/segment_sinks/implementations/text/__tests__/text_segment_sink.test.ts +0 -177
  3597. package/src/core/segment_sinks/inventory/__tests__/buffered_history.test.ts +0 -215
  3598. package/src/core/segment_sinks/inventory/__tests__/segment_inventory.test.ts +0 -448
  3599. package/src/core/stream/adaptation/__tests__/adaptation_stream.test.ts +0 -973
  3600. package/src/core/stream/adaptation/__tests__/get_representations_switch_strategy.test.ts +0 -502
  3601. package/src/core/stream/orchestrator/__tests__/stream_orchestrator.test.ts +0 -707
  3602. package/src/core/stream/period/utils/__tests__/get_adaptation_switch_strategy.test.ts +0 -716
  3603. package/src/core/stream/representation/__tests__/encryption_data_notifier.test.ts +0 -561
  3604. package/src/core/stream/representation/utils/__tests__/append_segment_to_buffer.test.ts +0 -364
  3605. package/src/core/stream/representation/utils/__tests__/check_for_discontinuity.test.ts +0 -488
  3606. package/src/core/stream/representation/utils/__tests__/get_segment_priority.test.ts +0 -132
  3607. package/src/core/stream/representation/utils/__tests__/push_init_segment.test.ts +0 -252
  3608. package/src/core/stream/representation/utils/__tests__/push_media_segment.test.ts +0 -409
  3609. package/src/errors/__tests__/encrypted_media_error.test.ts +0 -43
  3610. package/src/errors/__tests__/error_message.test.ts +0 -8
  3611. package/src/errors/__tests__/format_error.test.ts +0 -53
  3612. package/src/errors/__tests__/is_known_error.test.ts +0 -47
  3613. package/src/errors/__tests__/media_error.test.ts +0 -142
  3614. package/src/errors/__tests__/network_error.test.ts +0 -53
  3615. package/src/errors/__tests__/other_error.test.ts +0 -38
  3616. package/src/experimental/features/__tests__/index.test.ts +0 -11
  3617. package/src/experimental/features/__tests__/local.test.ts +0 -27
  3618. package/src/experimental/features/__tests__/metaplaylist.test.ts +0 -27
  3619. package/src/experimental/features/__tests__/multi_thread.test.ts +0 -22
  3620. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaDisplayInfos.test.ts +0 -106
  3621. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/utils.test.ts +0 -243
  3622. package/src/experimental/tools/mediaCapabilitiesProber/probers/__tests__/HDCPPolicy.test.ts +0 -118
  3623. package/src/experimental/tools/mediaCapabilitiesProber/probers/__tests__/decodingInfo.test.ts +0 -313
  3624. package/src/experimental/tools/mediaCapabilitiesProber/probers/__tests__/defaultCodecsFinder.test.ts +0 -115
  3625. package/src/experimental/tools/mediaCapabilitiesProber/probers/__tests__/mediaContentType.test.ts +0 -186
  3626. package/src/experimental/tools/mediaCapabilitiesProber/probers/__tests__/mediaDisplayInfos.test.ts +0 -108
  3627. package/src/features/__tests__/add_features.test.ts +0 -43
  3628. package/src/features/list/__tests__/dash.test.ts +0 -33
  3629. package/src/features/list/__tests__/dash_wasm.test.ts +0 -31
  3630. package/src/features/list/__tests__/debug_element.test.ts +0 -13
  3631. package/src/features/list/__tests__/directfile.test.ts +0 -19
  3632. package/src/features/list/__tests__/eme.test.ts +0 -13
  3633. package/src/features/list/__tests__/html_sami_parser.test.ts +0 -20
  3634. package/src/features/list/__tests__/html_srt_parser.test.ts +0 -19
  3635. package/src/features/list/__tests__/html_text_buffer.test.ts +0 -13
  3636. package/src/features/list/__tests__/html_ttml_parser.test.ts +0 -19
  3637. package/src/features/list/__tests__/html_vtt_parser.test.ts +0 -23
  3638. package/src/features/list/__tests__/index.test.ts +0 -56
  3639. package/src/features/list/__tests__/native_sami_parser.test.ts +0 -20
  3640. package/src/features/list/__tests__/native_srt_parser.test.ts +0 -19
  3641. package/src/features/list/__tests__/native_text_buffer.test.ts +0 -13
  3642. package/src/features/list/__tests__/native_ttml_parser.test.ts +0 -19
  3643. package/src/features/list/__tests__/native_vtt_parser.test.ts +0 -28
  3644. package/src/features/list/__tests__/smooth.test.ts +0 -27
  3645. package/src/main_thread/__tests__/render_thumbnail.test.ts +0 -193
  3646. package/src/main_thread/api/__tests__/option_utils.test.ts +0 -1268
  3647. package/src/main_thread/api/__tests__/public_api.test.ts +0 -603
  3648. package/src/main_thread/api/__tests__/utils.test.ts +0 -273
  3649. package/src/main_thread/decrypt/__tests__/__global__/content_decryptor.test.ts +0 -180
  3650. package/src/main_thread/decrypt/__tests__/__global__/find_key_system.test.ts +0 -94
  3651. package/src/main_thread/decrypt/__tests__/__global__/get_license.test.ts +0 -586
  3652. package/src/main_thread/decrypt/__tests__/__global__/init_data.test.ts +0 -771
  3653. package/src/main_thread/decrypt/__tests__/__global__/media_key_system_access.test.ts +0 -1255
  3654. package/src/main_thread/decrypt/__tests__/__global__/media_keys.test.ts +0 -398
  3655. package/src/main_thread/decrypt/__tests__/__global__/server_certificate.test.ts +0 -338
  3656. package/src/main_thread/decrypt/__tests__/__global__/utils.ts +0 -470
  3657. package/src/main_thread/decrypt/__tests__/find_key_system.test.ts +0 -366
  3658. package/src/main_thread/decrypt/utils/__tests__/are_init_values_compatible.test.ts +0 -162
  3659. package/src/main_thread/decrypt/utils/__tests__/clean_old_loaded_sessions.test.ts +0 -147
  3660. package/src/main_thread/decrypt/utils/__tests__/clean_old_stored_persistent_info.test.ts +0 -124
  3661. package/src/main_thread/decrypt/utils/__tests__/is_compatible_codec_supported.test.ts +0 -38
  3662. package/src/main_thread/init/utils/__tests__/are_same_stream_events.test.ts +0 -35
  3663. package/src/main_thread/init/utils/__tests__/refresh_scheduled_events_list.test.ts +0 -120
  3664. package/src/main_thread/init/utils/__tests__/stream_events_emitter.test.ts +0 -175
  3665. package/src/main_thread/init/utils/__tests__/update_manifest_codec_support.test.ts +0 -373
  3666. package/src/main_thread/text_displayer/html/__tests__/text_track_cues_store.test.ts +0 -325
  3667. package/src/main_thread/text_displayer/html/__tests__/utils.test.ts +0 -377
  3668. package/src/main_thread/tracks_store/__tests__/media_element_tracks_store.test.ts +0 -203
  3669. package/src/main_thread/tracks_store/__tests__/tracks_store.test.ts +0 -91
  3670. package/src/manifest/classes/__tests__/adaptation.test.ts +0 -473
  3671. package/src/manifest/classes/__tests__/manifest.test.ts +0 -507
  3672. package/src/manifest/classes/__tests__/mocks.ts +0 -202
  3673. package/src/manifest/classes/__tests__/period.test.ts +0 -950
  3674. package/src/manifest/classes/__tests__/representation.test.ts +0 -553
  3675. package/src/manifest/classes/__tests__/update_period_in_place.test.ts +0 -1716
  3676. package/src/manifest/classes/__tests__/update_periods.test.ts +0 -866
  3677. package/src/manifest/classes/representation_index/__tests__/static.test.ts +0 -64
  3678. package/src/mse/__tests__/main_media_source_interface.test.ts +0 -848
  3679. package/src/mse/__tests__/worker_media_source_interface.test.ts +0 -608
  3680. package/src/parsers/containers/isobmff/__tests__/extract_pssh.test.ts +0 -199
  3681. package/src/parsers/containers/isobmff/__tests__/find_complete_box.test.ts +0 -42
  3682. package/src/parsers/containers/isobmff/__tests__/get_box.test.ts +0 -449
  3683. package/src/parsers/containers/isobmff/__tests__/remove_dolby_vision_config_data.test.ts +0 -282
  3684. package/src/parsers/manifest/dash/common/__tests__/attach_trickmode_track.test.ts +0 -48
  3685. package/src/parsers/manifest/dash/common/__tests__/convert_supplemental_codecs.test.ts +0 -34
  3686. package/src/parsers/manifest/dash/common/__tests__/flatten_overlapping_period.test.ts +0 -158
  3687. package/src/parsers/manifest/dash/common/__tests__/get_clock_offset.test.ts +0 -42
  3688. package/src/parsers/manifest/dash/common/__tests__/get_http_utc-timing_url.test.ts +0 -146
  3689. package/src/parsers/manifest/dash/common/__tests__/get_periods_time_infos.test.ts +0 -89
  3690. package/src/parsers/manifest/dash/common/__tests__/manifest_bounds_calculator.test.ts +0 -277
  3691. package/src/parsers/manifest/dash/common/__tests__/parse_availability_start_time.test.ts +0 -65
  3692. package/src/parsers/manifest/dash/common/indexes/__tests__/tokens.test.ts +0 -48
  3693. package/src/parsers/manifest/dash/common/indexes/timeline/__tests__/parse_s_element.test.ts +0 -90
  3694. package/src/parsers/manifest/dash/js-parser/__tests__/parse_from_xml_string.test.ts +0 -25
  3695. package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/AdaptationSet.test.ts +0 -600
  3696. package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/ContentComponent.test.ts +0 -48
  3697. package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/ContentProtection.test.ts +0 -157
  3698. package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/Initialization.test.ts +0 -82
  3699. package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/SegmentURL.test.ts +0 -121
  3700. package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/utils.test.ts +0 -188
  3701. package/src/parsers/manifest/utils/__tests__/get_first_time_from_adaptations.test.ts +0 -227
  3702. package/src/parsers/manifest/utils/__tests__/get_last_time_from_adaptation.test.ts +0 -227
  3703. package/src/parsers/manifest/utils/__tests__/index_helpers.test.ts +0 -25
  3704. package/src/parsers/manifest/utils/__tests__/update_segment_timeline.test.ts +0 -611
  3705. package/src/parsers/texttracks/srt/__tests__/find_end_of_cue_block.test.ts +0 -84
  3706. package/src/parsers/texttracks/srt/__tests__/get_cue_blocks.test.ts +0 -88
  3707. package/src/parsers/texttracks/srt/__tests__/parse_cue.test.ts +0 -87
  3708. package/src/parsers/texttracks/srt/__tests__/parse_timestamp.test.ts +0 -21
  3709. package/src/parsers/texttracks/ttml/__tests__/resolve_styles_inheritance.test.ts +0 -249
  3710. package/src/parsers/texttracks/ttml/html/__tests__/__global__/html_ttml_parser.test.ts +0 -186
  3711. package/src/parsers/texttracks/ttml/html/__tests__/generate_css_test_outline.test.ts +0 -19
  3712. package/src/parsers/texttracks/ttml/html/__tests__/ttml_color_to_css_color.test.ts +0 -38
  3713. package/src/parsers/texttracks/webvtt/__tests__/create_default_style_elements.test.ts +0 -27
  3714. package/src/parsers/texttracks/webvtt/__tests__/get_cue_blocks.test.ts +0 -165
  3715. package/src/parsers/texttracks/webvtt/__tests__/get_style_blocks.test.ts +0 -45
  3716. package/src/parsers/texttracks/webvtt/__tests__/parse_cue_block.test.ts +0 -190
  3717. package/src/parsers/texttracks/webvtt/__tests__/parse_style_block.test.ts +0 -207
  3718. package/src/parsers/texttracks/webvtt/__tests__/parse_timestamp.test.ts +0 -24
  3719. package/src/parsers/texttracks/webvtt/__tests__/utils.test.ts +0 -374
  3720. package/src/parsers/texttracks/webvtt/html/__tests__/convert_payload_to_html.test.ts +0 -79
  3721. package/src/parsers/texttracks/webvtt/html/__tests__/create_style_attribute.test.ts +0 -140
  3722. package/src/parsers/texttracks/webvtt/html/__tests__/create_styled_element.test.ts +0 -104
  3723. package/src/parsers/texttracks/webvtt/html/__tests__/parse_webvtt_to_div.test.ts +0 -146
  3724. package/src/parsers/texttracks/webvtt/html/__tests__/to_html.test.ts +0 -205
  3725. package/src/playback_observer/__tests__/mocks.ts +0 -152
  3726. package/src/transports/metaplaylist/manifest_loader.ts +0 -74
  3727. package/src/transports/smooth/isobmff/__tests__/create_boxes.test.ts +0 -348
  3728. package/src/transports/utils/__tests__/add_query_string.test.ts +0 -108
  3729. package/src/transports/utils/__tests__/byte_range.test.ts +0 -36
  3730. package/src/transports/utils/__tests__/check_isobmff_integrity.test.ts +0 -111
  3731. package/src/transports/utils/__tests__/infer_segment_container.test.ts +0 -66
  3732. package/src/utils/__tests__/are_arrays_of_numbers_equal.test.ts +0 -69
  3733. package/src/utils/__tests__/are_codecs_compatible.test.ts +0 -79
  3734. package/src/utils/__tests__/array_find.test.ts +0 -110
  3735. package/src/utils/__tests__/array_find_index.test.ts +0 -109
  3736. package/src/utils/__tests__/array_includes.test.ts +0 -115
  3737. package/src/utils/__tests__/assert.test.ts +0 -238
  3738. package/src/utils/__tests__/base64.test.ts +0 -181
  3739. package/src/utils/__tests__/byte_parsing.test.ts +0 -219
  3740. package/src/utils/__tests__/deep_merge.test.ts +0 -48
  3741. package/src/utils/__tests__/event_emitter.test.ts +0 -712
  3742. package/src/utils/__tests__/flat_map.test.ts +0 -43
  3743. package/src/utils/__tests__/get_fuzzed_delay.test.ts +0 -17
  3744. package/src/utils/__tests__/hash_buffer.test.ts +0 -28
  3745. package/src/utils/__tests__/id_generator.test.ts +0 -66
  3746. package/src/utils/__tests__/is_non_empty_string.test.ts +0 -28
  3747. package/src/utils/__tests__/is_null_or_undefined.test.ts +0 -18
  3748. package/src/utils/__tests__/logger.test.ts +0 -342
  3749. package/src/utils/__tests__/noop.test.ts +0 -8
  3750. package/src/utils/__tests__/object_assign.test.ts +0 -59
  3751. package/src/utils/__tests__/object_values.test.ts +0 -11
  3752. package/src/utils/__tests__/ranges.test.ts +0 -1150
  3753. package/src/utils/__tests__/retry_promise_with_backoff.test.ts +0 -40
  3754. package/src/utils/__tests__/sorted_list.test.ts +0 -302
  3755. package/src/utils/__tests__/starts_with.test.ts +0 -49
  3756. package/src/utils/__tests__/string_parsing.test.ts +0 -273
  3757. package/src/utils/__tests__/url-utils.test.ts +0 -304
  3758. package/src/utils/__tests__/warn_once.test.ts +0 -23
  3759. package/src/utils/__tests__/weak_map_memory.test.ts +0 -169
  3760. package/src/utils/__tests__/xml-parser.test.ts +0 -441
  3761. package/src/utils/languages/__tests__/normalize.test.ts +0 -326
  3762. package/src/utils/request/__tests__/request_error.test.ts +0 -30
  3763. package/src/utils/test-utils.ts +0 -50
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /**
3
2
  * Copyright 2015 CANAL+ Group
4
3
  *
@@ -13,376 +12,496 @@
13
12
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
13
  * See the License for the specific language governing permissions and
15
14
  * limitations under the License.
16
- */
17
- var __extends = (this && this.__extends) || (function () {
18
- var extendStatics = function (d, b) {
19
- extendStatics = Object.setPrototypeOf ||
20
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
21
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
22
- return extendStatics(d, b);
23
- };
24
- return function (d, b) {
25
- if (typeof b !== "function" && b !== null)
26
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
27
- extendStatics(d, b);
28
- function __() { this.constructor = d; }
29
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ */ /**
16
+ * This file is used to abstract the notion of text, audio and video tracks
17
+ * switching for an easier API management.
18
+ */ "use strict";
19
+ Object.defineProperty(exports, "__esModule", {
20
+ value: true
21
+ });
22
+ Object.defineProperty(exports, "default", {
23
+ enumerable: true,
24
+ get: function() {
25
+ return TracksStore;
26
+ }
27
+ });
28
+ var _config = /*#__PURE__*/ _interop_require_default(require("../../config.js"));
29
+ var _index = require("../../errors/index.js");
30
+ var _log = /*#__PURE__*/ _interop_require_default(require("../../log.js"));
31
+ var _index1 = require("../../manifest/index.js");
32
+ var _array_find = /*#__PURE__*/ _interop_require_default(require("../../utils/array_find.js"));
33
+ var _assert = /*#__PURE__*/ _interop_require_wildcard(require("../../utils/assert.js"));
34
+ var _event_emitter = /*#__PURE__*/ _interop_require_default(require("../../utils/event_emitter.js"));
35
+ var _is_null_or_undefined = /*#__PURE__*/ _interop_require_default(require("../../utils/is_null_or_undefined.js"));
36
+ var _object_assign = /*#__PURE__*/ _interop_require_default(require("../../utils/object_assign.js"));
37
+ var _reference = /*#__PURE__*/ _interop_require_default(require("../../utils/reference.js"));
38
+ var _track_dispatcher = /*#__PURE__*/ _interop_require_default(require("./track_dispatcher.js"));
39
+ function _array_like_to_array(arr, len) {
40
+ if (len == null || len > arr.length) len = arr.length;
41
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
42
+ return arr2;
43
+ }
44
+ function _array_without_holes(arr) {
45
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
46
+ }
47
+ function _assert_this_initialized(self) {
48
+ if (self === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
49
+ return self;
50
+ }
51
+ function _call_super(_this, derived, args) {
52
+ derived = _get_prototype_of(derived);
53
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
54
+ }
55
+ function _class_call_check(instance, Constructor) {
56
+ if (!(instance instanceof Constructor)) throw new TypeError("Cannot call a class as a function");
57
+ }
58
+ function _defineProperties(target, props) {
59
+ for(var i = 0; i < props.length; i++){
60
+ var descriptor = props[i];
61
+ descriptor.enumerable = descriptor.enumerable || false;
62
+ descriptor.configurable = true;
63
+ if ("value" in descriptor) descriptor.writable = true;
64
+ Object.defineProperty(target, descriptor.key, descriptor);
65
+ }
66
+ }
67
+ function _create_class(Constructor, protoProps, staticProps) {
68
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
69
+ if (staticProps) _defineProperties(Constructor, staticProps);
70
+ return Constructor;
71
+ }
72
+ function _get_prototype_of(o) {
73
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
74
+ return o.__proto__ || Object.getPrototypeOf(o);
30
75
  };
31
- })();
32
- var __read = (this && this.__read) || function (o, n) {
33
- var m = typeof Symbol === "function" && o[Symbol.iterator];
34
- if (!m) return o;
35
- var i = m.call(o), r, ar = [], e;
36
- try {
37
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
76
+ return _get_prototype_of(o);
77
+ }
78
+ function _inherits(subClass, superClass) {
79
+ if (typeof superClass !== "function" && superClass !== null) {
80
+ throw new TypeError("Super expression must either be null or a function");
38
81
  }
39
- catch (error) { e = { error: error }; }
40
- finally {
41
- try {
42
- if (r && !r.done && (m = i["return"])) m.call(i);
82
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
83
+ constructor: {
84
+ value: subClass,
85
+ writable: true,
86
+ configurable: true
43
87
  }
44
- finally { if (e) throw e.error; }
45
- }
46
- return ar;
47
- };
48
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
49
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
50
- if (ar || !(i in from)) {
51
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
52
- ar[i] = from[i];
88
+ });
89
+ if (superClass) _set_prototype_of(subClass, superClass);
90
+ }
91
+ function _interop_require_default(obj) {
92
+ return obj && obj.__esModule ? obj : {
93
+ default: obj
94
+ };
95
+ }
96
+ function _getRequireWildcardCache(nodeInterop) {
97
+ if (typeof WeakMap !== "function") return null;
98
+ var cacheBabelInterop = new WeakMap();
99
+ var cacheNodeInterop = new WeakMap();
100
+ return (_getRequireWildcardCache = function(nodeInterop) {
101
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
102
+ })(nodeInterop);
103
+ }
104
+ function _interop_require_wildcard(obj, nodeInterop) {
105
+ if (!nodeInterop && obj && obj.__esModule) return obj;
106
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") return {
107
+ default: obj
108
+ };
109
+ var cache = _getRequireWildcardCache(nodeInterop);
110
+ if (cache && cache.has(obj)) return cache.get(obj);
111
+ var newObj = {
112
+ __proto__: null
113
+ };
114
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
115
+ for(var key in obj){
116
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
117
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
118
+ if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);
119
+ else newObj[key] = obj[key];
53
120
  }
54
121
  }
55
- return to.concat(ar || Array.prototype.slice.call(from));
56
- };
57
- var __values = (this && this.__values) || function(o) {
58
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
59
- if (m) return m.call(o);
60
- if (o && typeof o.length === "number") return {
61
- next: function () {
62
- if (o && i >= o.length) o = void 0;
63
- return { value: o && o[i++], done: !o };
64
- }
122
+ newObj.default = obj;
123
+ if (cache) cache.set(obj, newObj);
124
+ return newObj;
125
+ }
126
+ function _is_native_reflect_construct() {
127
+ try {
128
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
129
+ } catch (_) {}
130
+ return (_is_native_reflect_construct = function() {
131
+ return !!result;
132
+ })();
133
+ }
134
+ function _iterable_to_array(iter) {
135
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) {
136
+ return Array.from(iter);
137
+ }
138
+ }
139
+ function _non_iterable_spread() {
140
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
141
+ }
142
+ function _possible_constructor_return(self, call) {
143
+ if (call && (_type_of(call) === "object" || typeof call === "function")) return call;
144
+ return _assert_this_initialized(self);
145
+ }
146
+ function _set_prototype_of(o, p) {
147
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
148
+ o.__proto__ = p;
149
+ return o;
65
150
  };
66
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
67
- };
68
- Object.defineProperty(exports, "__esModule", { value: true });
69
- /**
70
- * This file is used to abstract the notion of text, audio and video tracks
71
- * switching for an easier API management.
72
- */
73
- var config_1 = require("../../config");
74
- var errors_1 = require("../../errors");
75
- var log_1 = require("../../log");
76
- var manifest_1 = require("../../manifest");
77
- var array_find_1 = require("../../utils/array_find");
78
- var assert_1 = require("../../utils/assert");
79
- var event_emitter_1 = require("../../utils/event_emitter");
80
- var is_null_or_undefined_1 = require("../../utils/is_null_or_undefined");
81
- var object_assign_1 = require("../../utils/object_assign");
82
- var reference_1 = require("../../utils/reference");
83
- var track_dispatcher_1 = require("./track_dispatcher");
84
- /**
85
- * Class helping with the management of the audio, video and text tracks and
86
- * qualities.
87
- *
88
- * The `TracksStore` allows to choose a track and qualities for different types
89
- * of media through a simpler API.
90
- *
91
- * @class TracksStore
92
- */
93
- var TracksStore = /** @class */ (function (_super) {
94
- __extends(TracksStore, _super);
151
+ return _set_prototype_of(o, p);
152
+ }
153
+ function _to_consumable_array(arr) {
154
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
155
+ }
156
+ function _type_of(obj) {
157
+ "@swc/helpers - typeof";
158
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
159
+ }
160
+ function _unsupported_iterable_to_array(o, minLen) {
161
+ if (!o) return;
162
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
163
+ var n = Object.prototype.toString.call(o).slice(8, -1);
164
+ if (n === "Object" && o.constructor) n = o.constructor.name;
165
+ if (n === "Map" || n === "Set") return Array.from(n);
166
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
167
+ }
168
+ var TracksStore = /*#__PURE__*/ function(EventEmitter) {
169
+ "use strict";
170
+ _inherits(TracksStore, EventEmitter);
95
171
  function TracksStore(args) {
172
+ _class_call_check(this, TracksStore);
173
+ var _this;
96
174
  var _a;
97
- var _this = _super.call(this) || this;
175
+ _this = _call_super(this, TracksStore);
98
176
  _this._handledTrackTypes = args.handledTrackTypes;
99
177
  _this._storedPeriodInfo = [];
100
178
  _this._isDisposed = false;
101
179
  _this._cachedPeriodInfo = new WeakMap();
102
180
  _this._isTrickModeTrackEnabled = args.preferTrickModeTracks;
103
- _this._defaultAudioTrackSwitchingMode =
104
- (_a = args.defaultAudioTrackSwitchingMode) !== null && _a !== void 0 ? _a : config_1.default.getCurrent().DEFAULT_AUDIO_TRACK_SWITCHING_MODE;
181
+ _this._defaultAudioTrackSwitchingMode = (_a = args.defaultAudioTrackSwitchingMode) !== null && _a !== void 0 ? _a : _config.default.getCurrent().DEFAULT_AUDIO_TRACK_SWITCHING_MODE;
105
182
  _this.onTracksNotPlayableForType = args.onTracksNotPlayableForType;
106
183
  return _this;
107
184
  }
108
- /**
185
+ _create_class(TracksStore, [
186
+ {
187
+ /**
109
188
  * Return Array of Period information, to allow an outside application to
110
189
  * modify the track of any Period.
111
190
  * @returns {Array.<Object>}
112
- */
113
- TracksStore.prototype.getAvailablePeriods = function () {
114
- return this._storedPeriodInfo.reduce(function (acc, p) {
115
- if (p.isPeriodAdvertised) {
116
- acc.push(toExposedPeriod(p.period));
191
+ */ key: "getAvailablePeriods",
192
+ value: function getAvailablePeriods() {
193
+ return this._storedPeriodInfo.reduce(function(acc, p) {
194
+ if (p.isPeriodAdvertised) {
195
+ acc.push(toExposedPeriod(p.period));
196
+ }
197
+ return acc;
198
+ }, []);
117
199
  }
118
- return acc;
119
- }, []);
120
- };
121
- /**
200
+ },
201
+ {
202
+ /**
122
203
  * Callack that needs to be called as codec support is either first known or
123
204
  * updated on the Manifest.
124
- */
125
- TracksStore.prototype.onManifestCodecSupportUpdate = function () {
126
- this._selectInitialTrackIfNeeded();
127
- };
128
- /**
205
+ */ key: "onManifestCodecSupportUpdate",
206
+ value: function onManifestCodecSupportUpdate() {
207
+ this._selectInitialTrackIfNeeded();
208
+ }
209
+ },
210
+ {
211
+ /**
129
212
  * Check that a period has a supported track for the given track type.
130
213
  * Trigger an error with `MANIFEST_INCOMPATIBLE_CODECS_ERROR` if no codecs are
131
214
  * supported and `onTracksNotPlayableForType[ttype]` is "error".
132
215
  *
133
216
  * @param period - The period to check
134
217
  * @param ttype - The track type.
135
- */
136
- TracksStore.prototype.checkPeriodHasSupportedTrack = function (period, ttype) {
137
- var _a, _b;
138
- var adaptationsForType = period.adaptations[ttype];
139
- var audioVideoAdaptations = __spreadArray(__spreadArray([], __read(((_a = period.adaptations.audio) !== null && _a !== void 0 ? _a : [])), false), __read(((_b = period.adaptations.video) !== null && _b !== void 0 ? _b : [])), false);
140
- var periodHasAdaptationForType = adaptationsForType !== undefined && adaptationsForType.length > 0;
141
- if (!periodHasAdaptationForType) {
142
- // The content does not have audio/video media, e.g. it's an audio only content.
143
- // there is no track of this type to select.
144
- return;
145
- }
146
- var isTypeUnsupported = adaptationsForType.every(function (adapt) { return adapt.supportStatus.hasSupportedCodec === false; });
147
- var isAudioAndVideoUnsupported = audioVideoAdaptations.every(function (adapt) { return adapt.supportStatus.hasSupportedCodec === false; });
148
- if (isTypeUnsupported) {
149
- var err = new errors_1.MediaError("MANIFEST_INCOMPATIBLE_CODECS_ERROR", "No supported " + ttype + " adaptations", { tracks: undefined });
150
- if (isAudioAndVideoUnsupported) {
151
- // Both video and audio are unsupported or the content is audio/video only.
152
- // The content cannot be played without this media type as there is no other media type.
153
- this.trigger("error", err);
154
- // The previous event trigger could have had side-effects, so we
155
- // re-check if we're still mostly in the same state
156
- if (this._isDisposed) {
157
- return; // Someone disposed the `TracksStore` on the previous side-effect
218
+ */ key: "checkPeriodHasSupportedTrack",
219
+ value: function checkPeriodHasSupportedTrack(period, ttype) {
220
+ var _a, _b;
221
+ var adaptationsForType = period.adaptations[ttype];
222
+ var audioVideoAdaptations = _to_consumable_array((_a = period.adaptations.audio) !== null && _a !== void 0 ? _a : []).concat(_to_consumable_array((_b = period.adaptations.video) !== null && _b !== void 0 ? _b : []));
223
+ var periodHasAdaptationForType = adaptationsForType !== undefined && adaptationsForType.length > 0;
224
+ if (!periodHasAdaptationForType) {
225
+ // The content does not have audio/video media, e.g. it's an audio only content.
226
+ // there is no track of this type to select.
227
+ return;
158
228
  }
159
- this.dispose();
160
- return;
161
- }
162
- else if (this.onTracksNotPlayableForType[ttype] === "continue") {
163
- // audio or video is not playable, but let's continue the playback without audio
164
- // or without video because of the option was set to "continue".
165
- this.trigger("warning", err);
166
- }
167
- else {
168
- this.trigger("error", err);
169
- // The previous event trigger could have had side-effects, so we
170
- // re-check if we're still mostly in the same state
171
- if (this._isDisposed) {
172
- return; // Someone disposed the `TracksStore` on the previous side-effect
229
+ var isTypeUnsupported = adaptationsForType.every(function(adapt) {
230
+ return adapt.supportStatus.hasSupportedCodec === false;
231
+ });
232
+ var isAudioAndVideoUnsupported = audioVideoAdaptations.every(function(adapt) {
233
+ return adapt.supportStatus.hasSupportedCodec === false;
234
+ });
235
+ if (isTypeUnsupported) {
236
+ var err = new _index.MediaError("MANIFEST_INCOMPATIBLE_CODECS_ERROR", "No supported " + ttype + " adaptations", {
237
+ tracks: undefined
238
+ });
239
+ if (isAudioAndVideoUnsupported) {
240
+ // Both video and audio are unsupported or the content is audio/video only.
241
+ // The content cannot be played without this media type as there is no other media type.
242
+ this.trigger("error", err);
243
+ // The previous event trigger could have had side-effects, so we
244
+ // re-check if we're still mostly in the same state
245
+ if (this._isDisposed) {
246
+ return; // Someone disposed the `TracksStore` on the previous side-effect
247
+ }
248
+ this.dispose();
249
+ return;
250
+ } else if (this.onTracksNotPlayableForType[ttype] === "continue") {
251
+ // audio or video is not playable, but let's continue the playback without audio
252
+ // or without video because of the option was set to "continue".
253
+ this.trigger("warning", err);
254
+ } else {
255
+ this.trigger("error", err);
256
+ // The previous event trigger could have had side-effects, so we
257
+ // re-check if we're still mostly in the same state
258
+ if (this._isDisposed) {
259
+ return; // Someone disposed the `TracksStore` on the previous side-effect
260
+ }
261
+ this.dispose();
262
+ return;
263
+ }
173
264
  }
174
- this.dispose();
175
- return;
176
265
  }
177
- }
178
- };
179
- /**
266
+ },
267
+ {
268
+ /**
180
269
  * Update the list of Periods handled by the TracksStore and make a
181
270
  * track choice decision for each of them.
182
271
  * @param {Object} manifest - The new Manifest object
183
- */
184
- TracksStore.prototype.onManifestUpdate = function (manifest) {
185
- var e_1, _a, _b, e_2, _c;
186
- var _this = this;
187
- var _d, _e, _f;
188
- var periods = manifest.periods;
189
- // We assume that they are always sorted chronologically
190
- // In dev mode, perform a runtime check that this is the case
191
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
192
- if (0 /* __ENVIRONMENT__.CURRENT_ENV */ === 1 /* __ENVIRONMENT__.DEV */) {
193
- for (var i = 1; i < periods.length; i++) {
194
- (0, assert_1.default)(periods[i - 1].start <= periods[i].start);
195
- }
196
- }
197
- /** Periods which have just been added. */
198
- var addedPeriods = [];
199
- var _loop_1 = function (period) {
200
- ["audio", "video"].forEach(function (ttype) {
201
- _this.checkPeriodHasSupportedTrack(period, ttype);
202
- });
203
- if (this_1._isDisposed) {
204
- return { value: void 0 };
205
- }
206
- };
207
- var this_1 = this;
208
- try {
209
- for (var periods_1 = __values(periods), periods_1_1 = periods_1.next(); !periods_1_1.done; periods_1_1 = periods_1.next()) {
210
- var period = periods_1_1.value;
211
- var state_1 = _loop_1(period);
212
- if (typeof state_1 === "object")
213
- return state_1.value;
214
- }
215
- }
216
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
217
- finally {
218
- try {
219
- if (periods_1_1 && !periods_1_1.done && (_a = periods_1.return)) _a.call(periods_1);
220
- }
221
- finally { if (e_1) throw e_1.error; }
222
- }
223
- var newPListIdx = 0;
224
- for (var i = 0; i < this._storedPeriodInfo.length; i++) {
225
- var oldPeriod = this._storedPeriodInfo[i].period;
226
- var newPeriod = periods[newPListIdx];
227
- if (newPeriod === undefined) {
228
- // We reached the end of the new Periods, remove remaining old Periods
229
- for (var j = this._storedPeriodInfo.length - 1; j >= i; j--) {
230
- this._storedPeriodInfo[j].inManifest = false;
231
- if (isPeriodItemRemovable(this._storedPeriodInfo[j])) {
232
- this._removePeriodObject(j);
272
+ */ key: "onManifestUpdate",
273
+ value: function onManifestUpdate(manifest) {
274
+ var _this = this;
275
+ var _a, _b, _c;
276
+ var periods = manifest.periods;
277
+ // We assume that they are always sorted chronologically
278
+ // In dev mode, perform a runtime check that this is the case
279
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
280
+ if (0 /* __ENVIRONMENT__.CURRENT_ENV */ === 1 /* __ENVIRONMENT__.DEV */ ) {
281
+ for(var i = 1; i < periods.length; i++){
282
+ (0, _assert.default)(periods[i - 1].start <= periods[i].start);
233
283
  }
234
284
  }
235
- }
236
- else if (oldPeriod === newPeriod) {
237
- newPListIdx++;
238
- this.resetSelectedTrackIfNotAvailableAnymore(this._storedPeriodInfo[i], newPeriod, "video");
239
- this.resetSelectedTrackIfNotAvailableAnymore(this._storedPeriodInfo[i], newPeriod, "audio");
240
- this.resetSelectedTrackIfNotAvailableAnymore(this._storedPeriodInfo[i], newPeriod, "text");
241
- // (If not, what do?)
242
- }
243
- else if (oldPeriod.start <= newPeriod.start) {
244
- // This old Period does not exist anymore.
245
- this._storedPeriodInfo[i].inManifest = false;
246
- if (isPeriodItemRemovable(this._storedPeriodInfo[i])) {
247
- this._removePeriodObject(i);
248
- i--;
285
+ /** Periods which have just been added. */ var addedPeriods = [];
286
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
287
+ try {
288
+ var _this1, _loop = function() {
289
+ var period = _step.value;
290
+ [
291
+ "audio",
292
+ "video"
293
+ ].forEach(function(ttype) {
294
+ _this.checkPeriodHasSupportedTrack(period, ttype);
295
+ });
296
+ if (_this1._isDisposed) {
297
+ return {
298
+ v: void void 0
299
+ };
300
+ }
301
+ };
302
+ for(var _iterator = periods[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
303
+ var _ret = (_this1 = this, _loop());
304
+ if (_type_of(_ret) === "object") return _ret.v;
305
+ }
306
+ } catch (err) {
307
+ _didIteratorError = true;
308
+ _iteratorError = err;
309
+ } finally{
310
+ try {
311
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
312
+ _iterator.return();
313
+ }
314
+ } finally{
315
+ if (_didIteratorError) {
316
+ throw _iteratorError;
317
+ }
318
+ }
319
+ }
320
+ var newPListIdx = 0;
321
+ for(var i1 = 0; i1 < this._storedPeriodInfo.length; i1++){
322
+ var oldPeriod = this._storedPeriodInfo[i1].period;
323
+ var newPeriod = periods[newPListIdx];
324
+ if (newPeriod === undefined) {
325
+ // We reached the end of the new Periods, remove remaining old Periods
326
+ for(var j = this._storedPeriodInfo.length - 1; j >= i1; j--){
327
+ this._storedPeriodInfo[j].inManifest = false;
328
+ if (isPeriodItemRemovable(this._storedPeriodInfo[j])) {
329
+ this._removePeriodObject(j);
330
+ }
331
+ }
332
+ } else if (oldPeriod === newPeriod) {
333
+ newPListIdx++;
334
+ this.resetSelectedTrackIfNotAvailableAnymore(this._storedPeriodInfo[i1], newPeriod, "video");
335
+ this.resetSelectedTrackIfNotAvailableAnymore(this._storedPeriodInfo[i1], newPeriod, "audio");
336
+ this.resetSelectedTrackIfNotAvailableAnymore(this._storedPeriodInfo[i1], newPeriod, "text");
337
+ // (If not, what do?)
338
+ } else if (oldPeriod.start <= newPeriod.start) {
339
+ // This old Period does not exist anymore.
340
+ this._storedPeriodInfo[i1].inManifest = false;
341
+ if (isPeriodItemRemovable(this._storedPeriodInfo[i1])) {
342
+ this._removePeriodObject(i1);
343
+ i1--;
344
+ }
345
+ } else {
346
+ var newPeriodInfo = generatePeriodInfo(newPeriod, true);
347
+ // oldPeriod.start > newPeriod.start: insert newPeriod before
348
+ this._storedPeriodInfo.splice(i1, 0, newPeriodInfo);
349
+ addedPeriods.push(newPeriodInfo);
350
+ newPListIdx++;
351
+ // Note: we don't increment `i` on purpose here, as we want to check the
352
+ // same oldPeriod at the next loop iteration
353
+ }
354
+ }
355
+ if (newPListIdx < periods.length) {
356
+ var _this__storedPeriodInfo, _addedPeriods;
357
+ // Add further new Period
358
+ var periodsToAdd = periods.slice(newPListIdx).map(function(p) {
359
+ return generatePeriodInfo(p, true);
360
+ });
361
+ (_this__storedPeriodInfo = this._storedPeriodInfo).push.apply(_this__storedPeriodInfo, _to_consumable_array(periodsToAdd));
362
+ (_addedPeriods = addedPeriods).push.apply(_addedPeriods, _to_consumable_array(periodsToAdd));
363
+ }
364
+ var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;
365
+ try {
366
+ for(var _iterator1 = this._storedPeriodInfo[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){
367
+ var storedPeriodInfo = _step1.value;
368
+ (_a = storedPeriodInfo.audio.dispatcher) === null || _a === void 0 ? void 0 : _a.refresh();
369
+ (_b = storedPeriodInfo.video.dispatcher) === null || _b === void 0 ? void 0 : _b.refresh();
370
+ (_c = storedPeriodInfo.text.dispatcher) === null || _c === void 0 ? void 0 : _c.refresh();
371
+ }
372
+ } catch (err) {
373
+ _didIteratorError1 = true;
374
+ _iteratorError1 = err;
375
+ } finally{
376
+ try {
377
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
378
+ _iterator1.return();
379
+ }
380
+ } finally{
381
+ if (_didIteratorError1) {
382
+ throw _iteratorError1;
383
+ }
384
+ }
249
385
  }
250
386
  }
251
- else {
252
- var newPeriodInfo = generatePeriodInfo(newPeriod, true);
253
- // oldPeriod.start > newPeriod.start: insert newPeriod before
254
- this._storedPeriodInfo.splice(i, 0, newPeriodInfo);
255
- addedPeriods.push(newPeriodInfo);
256
- newPListIdx++;
257
- // Note: we don't increment `i` on purpose here, as we want to check the
258
- // same oldPeriod at the next loop iteration
259
- }
260
- }
261
- if (newPListIdx < periods.length) {
262
- // Add further new Period
263
- var periodsToAdd = periods
264
- .slice(newPListIdx)
265
- .map(function (p) { return generatePeriodInfo(p, true); });
266
- (_b = this._storedPeriodInfo).push.apply(_b, __spreadArray([], __read(periodsToAdd), false));
267
- addedPeriods.push.apply(addedPeriods, __spreadArray([], __read(periodsToAdd), false));
268
- }
269
- try {
270
- for (var _g = __values(this._storedPeriodInfo), _h = _g.next(); !_h.done; _h = _g.next()) {
271
- var storedPeriodInfo = _h.value;
272
- (_d = storedPeriodInfo.audio.dispatcher) === null || _d === void 0 ? void 0 : _d.refresh();
273
- (_e = storedPeriodInfo.video.dispatcher) === null || _e === void 0 ? void 0 : _e.refresh();
274
- (_f = storedPeriodInfo.text.dispatcher) === null || _f === void 0 ? void 0 : _f.refresh();
275
- }
276
- }
277
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
278
- finally {
279
- try {
280
- if (_h && !_h.done && (_c = _g.return)) _c.call(_g);
281
- }
282
- finally { if (e_2) throw e_2.error; }
283
- }
284
- };
285
- TracksStore.prototype.onDecipherabilityUpdates = function () {
286
- var e_3, _a;
287
- var _b, _c, _d;
288
- try {
289
- for (var _e = __values(this._storedPeriodInfo), _f = _e.next(); !_f.done; _f = _e.next()) {
290
- var storedPeriodInfo = _f.value;
291
- (_b = storedPeriodInfo.audio.dispatcher) === null || _b === void 0 ? void 0 : _b.refresh();
292
- (_c = storedPeriodInfo.video.dispatcher) === null || _c === void 0 ? void 0 : _c.refresh();
293
- (_d = storedPeriodInfo.text.dispatcher) === null || _d === void 0 ? void 0 : _d.refresh();
294
- }
295
- }
296
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
297
- finally {
298
- try {
299
- if (_f && !_f.done && (_a = _e.return)) _a.call(_e);
387
+ },
388
+ {
389
+ key: "onDecipherabilityUpdates",
390
+ value: function onDecipherabilityUpdates() {
391
+ var _a, _b, _c;
392
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
393
+ try {
394
+ for(var _iterator = this._storedPeriodInfo[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
395
+ var storedPeriodInfo = _step.value;
396
+ (_a = storedPeriodInfo.audio.dispatcher) === null || _a === void 0 ? void 0 : _a.refresh();
397
+ (_b = storedPeriodInfo.video.dispatcher) === null || _b === void 0 ? void 0 : _b.refresh();
398
+ (_c = storedPeriodInfo.text.dispatcher) === null || _c === void 0 ? void 0 : _c.refresh();
399
+ }
400
+ } catch (err) {
401
+ _didIteratorError = true;
402
+ _iteratorError = err;
403
+ } finally{
404
+ try {
405
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
406
+ _iterator.return();
407
+ }
408
+ } finally{
409
+ if (_didIteratorError) {
410
+ throw _iteratorError;
411
+ }
412
+ }
413
+ }
300
414
  }
301
- finally { if (e_3) throw e_3.error; }
302
- }
303
- };
304
- /**
415
+ },
416
+ {
417
+ /**
305
418
  * Reset the stored settings if the track is not available anymore in
306
419
  * the new manifest.
307
420
  * @param periodInfo
308
421
  * @param newPeriod
309
422
  * @param type
310
423
  * @returns
311
- */
312
- TracksStore.prototype.resetSelectedTrackIfNotAvailableAnymore = function (periodInfo, newPeriod, type) {
313
- var _a;
314
- var wantedTrack = periodInfo[type].storedSettings;
315
- if ((0, is_null_or_undefined_1.default)(wantedTrack)) {
316
- return;
317
- }
318
- var supportedAdaptations = (0, manifest_1.getSupportedAdaptations)(newPeriod, type);
319
- var stillHere = supportedAdaptations.some(function (a) { return a.id === wantedTrack.adaptation.id; });
320
- if (stillHere) {
321
- // The track still exists, it don't need to be resetted.
322
- return;
323
- }
324
- log_1.default.warn("Track", "Chosen ".concat(type, " Adaptation not available anymore"));
325
- if (type === "video") {
326
- periodInfo.video.storedSettings = this.getDefaultStoredSettingsForAdaptation(supportedAdaptations, "video");
327
- }
328
- else if (type === "audio") {
329
- periodInfo.audio.storedSettings = this.getDefaultStoredSettingsForAdaptation(supportedAdaptations, "audio");
330
- }
331
- else if (type === "text") {
332
- periodInfo.text.storedSettings = this.getDefaultStoredSettingsForAdaptation(supportedAdaptations, "text");
333
- }
334
- this.trigger("trackUpdate", {
335
- period: toExposedPeriod(newPeriod),
336
- trackType: type,
337
- reason: "missing",
338
- });
339
- // The previous event trigger could have had side-effects, so we
340
- // re-check if we're still mostly in the same state
341
- if (this._isDisposed) {
342
- return; // The current TracksStore is disposed, we can abort
343
- }
344
- var periodItem = getPeriodItem(this._storedPeriodInfo, periodInfo.period.id);
345
- if (periodItem !== undefined &&
346
- periodItem.isPeriodAdvertised &&
347
- periodItem[type].storedSettings === null) {
348
- (_a = periodItem[type].dispatcher) === null || _a === void 0 ? void 0 : _a.updateTrack(null);
349
- }
350
- };
351
- TracksStore.prototype.getDefaultStoredSettingsForAdaptation = function (supportedAdaptations, type) {
352
- var DEFAULT_VIDEO_TRACK_SWITCHING_MODE = config_1.default.getCurrent().DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
353
- if (type === "text") {
354
- return null;
355
- }
356
- if (supportedAdaptations.length === 0) {
357
- return null;
358
- }
359
- switch (type) {
360
- case "text":
361
- return null;
362
- case "video": {
363
- var adaptationBase = supportedAdaptations[0];
364
- var adaptation = getRightVideoTrack(adaptationBase, this._isTrickModeTrackEnabled);
365
- var lockedRepresentations = new reference_1.default(null);
366
- return {
367
- adaptationBase: adaptationBase,
368
- adaptation: adaptation,
369
- switchingMode: DEFAULT_VIDEO_TRACK_SWITCHING_MODE,
370
- lockedRepresentations: lockedRepresentations,
371
- };
372
- }
373
- case "audio": {
374
- return {
375
- adaptation: supportedAdaptations[0],
376
- switchingMode: this._defaultAudioTrackSwitchingMode,
377
- lockedRepresentations: new reference_1.default(null),
378
- };
424
+ */ key: "resetSelectedTrackIfNotAvailableAnymore",
425
+ value: function resetSelectedTrackIfNotAvailableAnymore(periodInfo, newPeriod, type) {
426
+ var _a;
427
+ var wantedTrack = periodInfo[type].storedSettings;
428
+ if ((0, _is_null_or_undefined.default)(wantedTrack)) {
429
+ return;
430
+ }
431
+ var supportedAdaptations = (0, _index1.getSupportedAdaptations)(newPeriod, type);
432
+ var stillHere = supportedAdaptations.some(function(a) {
433
+ return a.id === wantedTrack.adaptation.id;
434
+ });
435
+ if (stillHere) {
436
+ // The track still exists, it don't need to be resetted.
437
+ return;
438
+ }
439
+ _log.default.warn("Track", "Chosen ".concat(type, " Adaptation not available anymore"));
440
+ if (type === "video") {
441
+ periodInfo.video.storedSettings = this.getDefaultStoredSettingsForAdaptation(supportedAdaptations, "video");
442
+ } else if (type === "audio") {
443
+ periodInfo.audio.storedSettings = this.getDefaultStoredSettingsForAdaptation(supportedAdaptations, "audio");
444
+ } else if (type === "text") {
445
+ periodInfo.text.storedSettings = this.getDefaultStoredSettingsForAdaptation(supportedAdaptations, "text");
446
+ }
447
+ this.trigger("trackUpdate", {
448
+ period: toExposedPeriod(newPeriod),
449
+ trackType: type,
450
+ reason: "missing"
451
+ });
452
+ // The previous event trigger could have had side-effects, so we
453
+ // re-check if we're still mostly in the same state
454
+ if (this._isDisposed) {
455
+ return; // The current TracksStore is disposed, we can abort
456
+ }
457
+ var periodItem = getPeriodItem(this._storedPeriodInfo, periodInfo.period.id);
458
+ if (periodItem !== undefined && periodItem.isPeriodAdvertised && periodItem[type].storedSettings === null) {
459
+ (_a = periodItem[type].dispatcher) === null || _a === void 0 ? void 0 : _a.updateTrack(null);
460
+ }
379
461
  }
380
- default: {
381
- (0, assert_1.assertUnreachable)(type);
462
+ },
463
+ {
464
+ key: "getDefaultStoredSettingsForAdaptation",
465
+ value: function getDefaultStoredSettingsForAdaptation(supportedAdaptations, type) {
466
+ var DEFAULT_VIDEO_TRACK_SWITCHING_MODE = _config.default.getCurrent().DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
467
+ if (type === "text") {
468
+ return null;
469
+ }
470
+ if (supportedAdaptations.length === 0) {
471
+ return null;
472
+ }
473
+ switch(type){
474
+ case "text":
475
+ return null;
476
+ case "video":
477
+ {
478
+ var adaptationBase = supportedAdaptations[0];
479
+ var adaptation = getRightVideoTrack(adaptationBase, this._isTrickModeTrackEnabled);
480
+ var lockedRepresentations = new _reference.default(null);
481
+ return {
482
+ adaptationBase: adaptationBase,
483
+ adaptation: adaptation,
484
+ switchingMode: DEFAULT_VIDEO_TRACK_SWITCHING_MODE,
485
+ lockedRepresentations: lockedRepresentations
486
+ };
487
+ }
488
+ case "audio":
489
+ {
490
+ return {
491
+ adaptation: supportedAdaptations[0],
492
+ switchingMode: this._defaultAudioTrackSwitchingMode,
493
+ lockedRepresentations: new _reference.default(null)
494
+ };
495
+ }
496
+ default:
497
+ {
498
+ (0, _assert.assertUnreachable)(type);
499
+ }
500
+ }
382
501
  }
383
- }
384
- };
385
- /**
502
+ },
503
+ {
504
+ /**
386
505
  * Add shared reference to choose Adaptation for new "audio", "video" or
387
506
  * "text" Period.
388
507
  *
@@ -392,91 +511,107 @@ var TracksStore = /** @class */ (function (_super) {
392
511
  * @param {Period} period - The concerned Period.
393
512
  * @param {Object} adaptationRef - A reference through which
394
513
  * the choice will be given.
395
- */
396
- TracksStore.prototype.addTrackReference = function (bufferType, period, adaptationRef) {
397
- var e_4, _a;
398
- var _this = this;
399
- log_1.default.debug("Track", "Adding Track Reference", { bufferType: bufferType, periodId: period.id });
400
- var periodObj = getPeriodItem(this._storedPeriodInfo, period.id);
401
- if (periodObj === undefined) {
402
- // The Period has not yet been added.
403
- periodObj = generatePeriodInfo(period, false);
404
- var found = false;
405
- for (var i = 0; i < this._storedPeriodInfo.length; i++) {
406
- if (this._storedPeriodInfo[i].period.start > period.start) {
407
- this._storedPeriodInfo.splice(i, 0, periodObj);
408
- found = true;
514
+ */ key: "addTrackReference",
515
+ value: function addTrackReference(bufferType, period, adaptationRef) {
516
+ var _this = this;
517
+ _log.default.debug("Track", "Adding Track Reference", {
518
+ bufferType: bufferType,
519
+ periodId: period.id
520
+ });
521
+ var periodObj = getPeriodItem(this._storedPeriodInfo, period.id);
522
+ if (periodObj === undefined) {
523
+ // The Period has not yet been added.
524
+ periodObj = generatePeriodInfo(period, false);
525
+ var found = false;
526
+ for(var i = 0; i < this._storedPeriodInfo.length; i++){
527
+ if (this._storedPeriodInfo[i].period.start > period.start) {
528
+ this._storedPeriodInfo.splice(i, 0, periodObj);
529
+ found = true;
530
+ }
531
+ }
532
+ if (!found) {
533
+ this._storedPeriodInfo.push(periodObj);
534
+ }
409
535
  }
410
- }
411
- if (!found) {
412
- this._storedPeriodInfo.push(periodObj);
413
- }
414
- }
415
- if (periodObj[bufferType].dispatcher !== null) {
416
- log_1.default.error("Track", "Subject already added for type and Period", {
417
- bufferType: bufferType,
418
- periodId: period.id,
419
- });
420
- periodObj[bufferType].dispatcher.dispose("TrackDispatcher double add issue");
421
- }
422
- var dispatcher = new track_dispatcher_1.default(adaptationRef);
423
- periodObj[bufferType].dispatcher = dispatcher;
424
- dispatcher.addEventListener("noPlayableRepresentation", function () {
425
- _this.handleMissingOrUnplayableTrack(period, bufferType, false);
426
- });
427
- dispatcher.addEventListener("noPlayableLockedRepresentation", function () {
428
- // TODO check that it doesn't already lead to segment loading or MediaSource
429
- // reloading
430
- if (periodObj === undefined) {
431
- return;
432
- }
433
- _this.unlockVideoRepresentations(periodObj);
434
- _this.trigger("brokenRepresentationsLock", {
435
- period: { id: period.id, start: period.start, end: period.end },
436
- trackType: bufferType,
437
- });
438
- });
439
- this._selectInitialTrackIfNeeded();
440
- // Ensure `newAvailablePeriods` is sent
441
- if (this._shouldAdvertisePeriod(periodObj)) {
442
- periodObj.isPeriodAdvertised = true;
443
- this.trigger("newAvailablePeriods", [
444
- {
445
- id: period.id,
446
- start: period.start,
447
- end: period.end,
448
- },
449
- ]);
450
- if (this._isDisposed) {
451
- return;
452
- }
453
- }
454
- // Ensure the initial track is set for each type now)
455
- var trackTypes = ["audio", "video", "text"];
456
- try {
457
- for (var trackTypes_1 = __values(trackTypes), trackTypes_1_1 = trackTypes_1.next(); !trackTypes_1_1.done; trackTypes_1_1 = trackTypes_1.next()) {
458
- var ttype = trackTypes_1_1.value;
459
- var trackObj = periodObj[ttype];
460
- if (periodObj.isPeriodAdvertised &&
461
- trackObj.dispatcher !== null &&
462
- !trackObj.dispatcher.hasSetTrack() &&
463
- trackObj.storedSettings !== undefined) {
464
- trackObj.dispatcher.updateTrack(trackObj.storedSettings);
536
+ if (periodObj[bufferType].dispatcher !== null) {
537
+ _log.default.error("Track", "Subject already added for type and Period", {
538
+ bufferType: bufferType,
539
+ periodId: period.id
540
+ });
541
+ periodObj[bufferType].dispatcher.dispose("TrackDispatcher double add issue");
465
542
  }
466
- if (this._isDisposed) {
467
- return;
543
+ var dispatcher = new _track_dispatcher.default(adaptationRef);
544
+ periodObj[bufferType].dispatcher = dispatcher;
545
+ dispatcher.addEventListener("noPlayableRepresentation", function() {
546
+ _this.handleMissingOrUnplayableTrack(period, bufferType, false);
547
+ });
548
+ dispatcher.addEventListener("noPlayableLockedRepresentation", function() {
549
+ // TODO check that it doesn't already lead to segment loading or MediaSource
550
+ // reloading
551
+ if (periodObj === undefined) {
552
+ return;
553
+ }
554
+ _this.unlockVideoRepresentations(periodObj);
555
+ _this.trigger("brokenRepresentationsLock", {
556
+ period: {
557
+ id: period.id,
558
+ start: period.start,
559
+ end: period.end
560
+ },
561
+ trackType: bufferType
562
+ });
563
+ });
564
+ this._selectInitialTrackIfNeeded();
565
+ // Ensure `newAvailablePeriods` is sent
566
+ if (this._shouldAdvertisePeriod(periodObj)) {
567
+ periodObj.isPeriodAdvertised = true;
568
+ this.trigger("newAvailablePeriods", [
569
+ {
570
+ id: period.id,
571
+ start: period.start,
572
+ end: period.end
573
+ }
574
+ ]);
575
+ if (this._isDisposed) {
576
+ return;
577
+ }
578
+ }
579
+ // Ensure the initial track is set for each type now)
580
+ var trackTypes = [
581
+ "audio",
582
+ "video",
583
+ "text"
584
+ ];
585
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
586
+ try {
587
+ for(var _iterator = trackTypes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
588
+ var ttype = _step.value;
589
+ var trackObj = periodObj[ttype];
590
+ if (periodObj.isPeriodAdvertised && trackObj.dispatcher !== null && !trackObj.dispatcher.hasSetTrack() && trackObj.storedSettings !== undefined) {
591
+ trackObj.dispatcher.updateTrack(trackObj.storedSettings);
592
+ }
593
+ if (this._isDisposed) {
594
+ return;
595
+ }
596
+ }
597
+ } catch (err) {
598
+ _didIteratorError = true;
599
+ _iteratorError = err;
600
+ } finally{
601
+ try {
602
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
603
+ _iterator.return();
604
+ }
605
+ } finally{
606
+ if (_didIteratorError) {
607
+ throw _iteratorError;
608
+ }
609
+ }
468
610
  }
469
611
  }
470
- }
471
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
472
- finally {
473
- try {
474
- if (trackTypes_1_1 && !trackTypes_1_1.done && (_a = trackTypes_1.return)) _a.call(trackTypes_1);
475
- }
476
- finally { if (e_4) throw e_4.error; }
477
- }
478
- };
479
- /**
612
+ },
613
+ {
614
+ /**
480
615
  * Throws an error if neither audio nor video tracks are selected for the given period.
481
616
  *
482
617
  * This indicates that the application or user has not selected any tracks for playback,
@@ -485,19 +620,26 @@ var TracksStore = /** @class */ (function (_super) {
485
620
  * @param {object} period - The period to check for selected tracks.
486
621
  * @returns {void}
487
622
  * @throws {erorr} If no audio or video tracks are set for the period.
488
- */
489
- TracksStore.prototype.throwIfTracksAreNotSetForPeriod = function (period) {
490
- var periodItem = getPeriodItem(this._storedPeriodInfo, period.id);
491
- if (periodItem !== undefined) {
492
- var hasNoTrackAtAll = ["audio", "video"].every(function (ttype) { return periodItem[ttype].storedSettings === null; });
493
- if (hasNoTrackAtAll) {
494
- var err = new errors_1.MediaError("NO_AUDIO_VIDEO_TRACKS", "No audio and no video tracks are set.");
495
- this.trigger("error", err);
496
- this.dispose();
623
+ */ key: "throwIfTracksAreNotSetForPeriod",
624
+ value: function throwIfTracksAreNotSetForPeriod(period) {
625
+ var periodItem = getPeriodItem(this._storedPeriodInfo, period.id);
626
+ if (periodItem !== undefined) {
627
+ var hasNoTrackAtAll = [
628
+ "audio",
629
+ "video"
630
+ ].every(function(ttype) {
631
+ return periodItem[ttype].storedSettings === null;
632
+ });
633
+ if (hasNoTrackAtAll) {
634
+ var err = new _index.MediaError("NO_AUDIO_VIDEO_TRACKS", "No audio and no video tracks are set.");
635
+ this.trigger("error", err);
636
+ this.dispose();
637
+ }
638
+ }
497
639
  }
498
- }
499
- };
500
- /**
640
+ },
641
+ {
642
+ /**
501
643
  * Handles the case when no playable representations are available, or when no initial track has been set,
502
644
  * for a given period and track type (e.g., `'video'` or `'audio'`).
503
645
  *
@@ -513,167 +655,177 @@ var TracksStore = /** @class */ (function (_super) {
513
655
  * @param {string} trackType - The type of media track (e.g., `'video'` or `'audio'`) that became unplayable.
514
656
  *@param {boolean} isInitialSelection - Indicates if this occurs during initial track selection.
515
657
  * @returns {void}
516
- */
517
- TracksStore.prototype.handleMissingOrUnplayableTrack = function (period, trackType, isInitialSelection) {
518
- var _a, _b, _c, _d;
519
- var _e = getFallbackTrack(period, trackType), fallbackTrack = _e.fallbackTrack, noSourceMedia = _e.noSourceMedia;
520
- var typeInfo = (_a = getPeriodItem(this._storedPeriodInfo, period.id)) === null || _a === void 0 ? void 0 : _a[trackType];
521
- if (typeInfo === undefined) {
522
- log_1.default.warn("Track", "Could not find period", { periodId: period.id });
523
- return;
524
- }
525
- var initialStoredSettings = typeInfo.storedSettings;
526
- var hasStoredSettingsChanged = function () {
527
- return typeInfo.storedSettings !== initialStoredSettings;
528
- };
529
- if (fallbackTrack !== null) {
530
- var switchingMode = void 0;
531
- if (trackType === "audio") {
532
- switchingMode = this._defaultAudioTrackSwitchingMode;
533
- }
534
- else if (trackType === "text") {
535
- switchingMode = "direct";
536
- }
537
- else {
538
- switchingMode = "reload";
539
- }
540
- var storedSettings = {
541
- adaptation: fallbackTrack,
542
- switchingMode: switchingMode,
543
- lockedRepresentations: new reference_1.default(null),
544
- };
545
- typeInfo.storedSettings = storedSettings;
546
- if (!isInitialSelection) {
547
- // "trackUpdate" events are not sent for the initial track.
548
- // See documentation: #Player_Events.md, section ###trackUpdate
549
- this.trigger("trackUpdate", {
550
- period: toExposedPeriod(period),
551
- trackType: trackType,
552
- reason: "no-playable-representation",
553
- });
554
- }
555
- // The previous event trigger could have had side-effects, so we
556
- // re-check if we're still mostly in the same state
557
- if (this._isDisposed) {
558
- return; // Someone disposed the `TracksStore` on the previous side-effect
559
- }
560
- // Check again that no track change occurred in the meantime
561
- if (typeInfo.storedSettings === storedSettings) {
562
- (_b = typeInfo.dispatcher) === null || _b === void 0 ? void 0 : _b.updateTrack(storedSettings);
563
- }
564
- }
565
- else if (fallbackTrack === null && !noSourceMedia) {
566
- this.trigger("noPlayableTrack", {
567
- trackType: trackType,
568
- period: { id: period.id, start: period.start, end: period.end },
569
- });
570
- // The previous event trigger could have had side-effects, so we
571
- // re-check if we're still mostly in the same state
572
- if (this._isDisposed) {
573
- return; // Someone disposed the `TracksStore` on the previous side-effect
574
- }
575
- var fallbackBehavior = this.onTracksNotPlayableForType[trackType];
576
- if (hasStoredSettingsChanged()) {
577
- // The previous "noPlayableTrack" event might have caused changes,
578
- // so we re-check to see if the selected track has been updated.
579
- // If it has, we exit early because the API consumer likely adjusted the settings,
580
- // and throwing an error now would be out of sync with their changes.
581
- }
582
- else if (fallbackBehavior === "continue") {
583
- log_1.default.warn("Track", "No playable ".concat(trackType, ", continuing without ").concat(trackType));
584
- typeInfo.storedSettings = null;
585
- if (!isInitialSelection) {
586
- // "trackUpdate" events are not sent for the initial track.
587
- // See documentation: #Player_Events.md, section ###trackUpdate
588
- this.trigger("trackUpdate", {
589
- period: toExposedPeriod(period),
590
- trackType: trackType,
591
- reason: "no-playable-representation",
658
+ */ key: "handleMissingOrUnplayableTrack",
659
+ value: function handleMissingOrUnplayableTrack(period, trackType, isInitialSelection) {
660
+ var _a, _b, _c, _d;
661
+ var _getFallbackTrack = getFallbackTrack(period, trackType), fallbackTrack = _getFallbackTrack.fallbackTrack, noSourceMedia = _getFallbackTrack.noSourceMedia;
662
+ var typeInfo = (_a = getPeriodItem(this._storedPeriodInfo, period.id)) === null || _a === void 0 ? void 0 : _a[trackType];
663
+ if (typeInfo === undefined) {
664
+ _log.default.warn("Track", "Could not find period", {
665
+ periodId: period.id
592
666
  });
667
+ return;
593
668
  }
594
- if (typeInfo.storedSettings !== null || this._isDisposed) {
669
+ var initialStoredSettings = typeInfo.storedSettings;
670
+ var hasStoredSettingsChanged = function hasStoredSettingsChanged() {
671
+ return typeInfo.storedSettings !== initialStoredSettings;
672
+ };
673
+ if (fallbackTrack !== null) {
674
+ var switchingMode;
675
+ if (trackType === "audio") {
676
+ switchingMode = this._defaultAudioTrackSwitchingMode;
677
+ } else if (trackType === "text") {
678
+ switchingMode = "direct";
679
+ } else {
680
+ switchingMode = "reload";
681
+ }
682
+ var storedSettings = {
683
+ adaptation: fallbackTrack,
684
+ switchingMode: switchingMode,
685
+ lockedRepresentations: new _reference.default(null)
686
+ };
687
+ typeInfo.storedSettings = storedSettings;
688
+ if (!isInitialSelection) {
689
+ // "trackUpdate" events are not sent for the initial track.
690
+ // See documentation: #Player_Events.md, section ###trackUpdate
691
+ this.trigger("trackUpdate", {
692
+ period: toExposedPeriod(period),
693
+ trackType: trackType,
694
+ reason: "no-playable-representation"
695
+ });
696
+ }
697
+ // The previous event trigger could have had side-effects, so we
698
+ // re-check if we're still mostly in the same state
699
+ if (this._isDisposed) {
700
+ return; // Someone disposed the `TracksStore` on the previous side-effect
701
+ }
702
+ // Check again that no track change occurred in the meantime
703
+ if (typeInfo.storedSettings === storedSettings) {
704
+ (_b = typeInfo.dispatcher) === null || _b === void 0 ? void 0 : _b.updateTrack(storedSettings);
705
+ }
706
+ } else if (fallbackTrack === null && !noSourceMedia) {
707
+ this.trigger("noPlayableTrack", {
708
+ trackType: trackType,
709
+ period: {
710
+ id: period.id,
711
+ start: period.start,
712
+ end: period.end
713
+ }
714
+ });
715
+ // The previous event trigger could have had side-effects, so we
716
+ // re-check if we're still mostly in the same state
717
+ if (this._isDisposed) {
718
+ return; // Someone disposed the `TracksStore` on the previous side-effect
719
+ }
720
+ var fallbackBehavior = this.onTracksNotPlayableForType[trackType];
721
+ if (hasStoredSettingsChanged()) {
722
+ // The previous "noPlayableTrack" event might have caused changes,
723
+ // so we re-check to see if the selected track has been updated.
724
+ // If it has, we exit early because the API consumer likely adjusted the settings,
725
+ // and throwing an error now would be out of sync with their changes.
726
+ } else if (fallbackBehavior === "continue") {
727
+ _log.default.warn("Track", "No playable ".concat(trackType, ", continuing without ").concat(trackType));
728
+ typeInfo.storedSettings = null;
729
+ if (!isInitialSelection) {
730
+ // "trackUpdate" events are not sent for the initial track.
731
+ // See documentation: #Player_Events.md, section ###trackUpdate
732
+ this.trigger("trackUpdate", {
733
+ period: toExposedPeriod(period),
734
+ trackType: trackType,
735
+ reason: "no-playable-representation"
736
+ });
737
+ }
738
+ if (typeInfo.storedSettings !== null || this._isDisposed) {
739
+ // The previous "trackUpdate" event might have caused changes,
740
+ // so we re-check to see if the selected track has been updated.
741
+ // If it has, we exit early because the API consumer likely adjusted the settings,
742
+ // and throwing an error now would be out of sync with their changes.
743
+ } else {
744
+ (_c = typeInfo.dispatcher) === null || _c === void 0 ? void 0 : _c.updateTrack(null);
745
+ }
746
+ } else if (fallbackBehavior === "error") {
747
+ var noRepErr = new _index.MediaError("NO_PLAYABLE_REPRESENTATION", "No ".concat(trackType, " Representation can be played"), {
748
+ tracks: undefined
749
+ });
750
+ this.trigger("error", noRepErr);
751
+ }
752
+ } else if (fallbackTrack === null && noSourceMedia) {
753
+ _log.default.debug("Track", "The period does not have adaptation for ".concat(trackType, " there is no track to choose"));
754
+ typeInfo.storedSettings = null;
755
+ if (!isInitialSelection) {
756
+ // "trackUpdate" events are not sent for the initial track.
757
+ // See documentation: #Player_Events.md, section ###trackUpdate
758
+ this.trigger("trackUpdate", {
759
+ period: toExposedPeriod(period),
760
+ trackType: trackType,
761
+ reason: "no-playable-representation"
762
+ });
763
+ }
764
+ if (typeInfo.storedSettings !== null || this._isDisposed) {
595
765
  // The previous "trackUpdate" event might have caused changes,
596
766
  // so we re-check to see if the selected track has been updated.
597
767
  // If it has, we exit early because the API consumer likely adjusted the settings,
598
768
  // and throwing an error now would be out of sync with their changes.
769
+ } else {
770
+ (_d = typeInfo.dispatcher) === null || _d === void 0 ? void 0 : _d.updateTrack(null);
771
+ }
599
772
  }
600
- else {
601
- (_c = typeInfo.dispatcher) === null || _c === void 0 ? void 0 : _c.updateTrack(null);
773
+ // The previous event trigger could have had side-effects, so we
774
+ // re-check if we're still mostly in the same state
775
+ if (this._isDisposed) {
776
+ return; // Someone disposed the `TracksStore` on the previous side-effect
777
+ }
778
+ if (trackType !== "text") {
779
+ // Allow missing text tracks; only enforce for audio/video
780
+ this.throwIfTracksAreNotSetForPeriod(period);
602
781
  }
603
782
  }
604
- else if (fallbackBehavior === "error") {
605
- var noRepErr = new errors_1.MediaError("NO_PLAYABLE_REPRESENTATION", "No ".concat(trackType, " Representation can be played"), { tracks: undefined });
606
- this.trigger("error", noRepErr);
607
- }
608
- }
609
- else if (fallbackTrack === null && noSourceMedia) {
610
- log_1.default.debug("Track", "The period does not have adaptation for ".concat(trackType, " there is no track to choose"));
611
- typeInfo.storedSettings = null;
612
- if (!isInitialSelection) {
613
- // "trackUpdate" events are not sent for the initial track.
614
- // See documentation: #Player_Events.md, section ###trackUpdate
615
- this.trigger("trackUpdate", {
616
- period: toExposedPeriod(period),
617
- trackType: trackType,
618
- reason: "no-playable-representation",
619
- });
620
- }
621
- if (typeInfo.storedSettings !== null || this._isDisposed) {
622
- // The previous "trackUpdate" event might have caused changes,
623
- // so we re-check to see if the selected track has been updated.
624
- // If it has, we exit early because the API consumer likely adjusted the settings,
625
- // and throwing an error now would be out of sync with their changes.
626
- }
627
- else {
628
- (_d = typeInfo.dispatcher) === null || _d === void 0 ? void 0 : _d.updateTrack(null);
629
- }
630
- }
631
- // The previous event trigger could have had side-effects, so we
632
- // re-check if we're still mostly in the same state
633
- if (this._isDisposed) {
634
- return; // Someone disposed the `TracksStore` on the previous side-effect
635
- }
636
- if (trackType !== "text") {
637
- // Allow missing text tracks; only enforce for audio/video
638
- this.throwIfTracksAreNotSetForPeriod(period);
639
- }
640
- };
641
- /**
783
+ },
784
+ {
785
+ /**
642
786
  * Remove shared reference to choose an "audio", "video" or "text" Adaptation
643
787
  * for a Period.
644
788
  * @param {string} bufferType - The concerned buffer type
645
789
  * @param {string} periodId - The concerned Period's `id`.
646
- */
647
- TracksStore.prototype.removeTrackReference = function (bufferType, periodId) {
648
- log_1.default.debug("Track", "Removing Track Reference", { bufferType: bufferType, periodId: periodId });
649
- var periodIndex;
650
- for (var i = 0; i < this._storedPeriodInfo.length; i++) {
651
- var periodI = this._storedPeriodInfo[i];
652
- if (periodI.period.id === periodId) {
653
- periodIndex = i;
654
- break;
790
+ */ key: "removeTrackReference",
791
+ value: function removeTrackReference(bufferType, periodId) {
792
+ _log.default.debug("Track", "Removing Track Reference", {
793
+ bufferType: bufferType,
794
+ periodId: periodId
795
+ });
796
+ var periodIndex;
797
+ for(var i = 0; i < this._storedPeriodInfo.length; i++){
798
+ var periodI = this._storedPeriodInfo[i];
799
+ if (periodI.period.id === periodId) {
800
+ periodIndex = i;
801
+ break;
802
+ }
803
+ }
804
+ if (periodIndex === undefined) {
805
+ _log.default.warn("Track", "type not found for period", {
806
+ bufferType: bufferType,
807
+ periodId: periodId
808
+ });
809
+ return;
810
+ }
811
+ var periodObj = this._storedPeriodInfo[periodIndex];
812
+ var choiceItem = periodObj[bufferType];
813
+ if ((choiceItem === null || choiceItem === void 0 ? void 0 : choiceItem.dispatcher) === null) {
814
+ _log.default.warn("Track", "TrackDispatcher already removed for type and Period", {
815
+ bufferType: bufferType,
816
+ periodId: periodId
817
+ });
818
+ return;
819
+ }
820
+ choiceItem.dispatcher.dispose("TrackDispatcher reference removal");
821
+ choiceItem.dispatcher = null;
822
+ if (isPeriodItemRemovable(periodObj)) {
823
+ this._removePeriodObject(periodIndex);
824
+ }
655
825
  }
656
- }
657
- if (periodIndex === undefined) {
658
- log_1.default.warn("Track", "type not found for period", { bufferType: bufferType, periodId: periodId });
659
- return;
660
- }
661
- var periodObj = this._storedPeriodInfo[periodIndex];
662
- var choiceItem = periodObj[bufferType];
663
- if ((choiceItem === null || choiceItem === void 0 ? void 0 : choiceItem.dispatcher) === null) {
664
- log_1.default.warn("Track", "TrackDispatcher already removed for type and Period", {
665
- bufferType: bufferType,
666
- periodId: periodId,
667
- });
668
- return;
669
- }
670
- choiceItem.dispatcher.dispose("TrackDispatcher reference removal");
671
- choiceItem.dispatcher = null;
672
- if (isPeriodItemRemovable(periodObj)) {
673
- this._removePeriodObject(periodIndex);
674
- }
675
- };
676
- /**
826
+ },
827
+ {
828
+ /**
677
829
  * Allows to recuperate a "Period Object" - used in get/set methods of the
678
830
  * `TracksStore` - by giving the Period itself.
679
831
  *
@@ -690,15 +842,17 @@ var TracksStore = /** @class */ (function (_super) {
690
842
  *
691
843
  * @param {Object} period
692
844
  * @returns {Object}
693
- */
694
- TracksStore.prototype.getPeriodObjectFromPeriod = function (period) {
695
- var periodObj = getPeriodItem(this._storedPeriodInfo, period.id);
696
- if (periodObj === undefined && period !== undefined) {
697
- return this._cachedPeriodInfo.get(period);
698
- }
699
- return periodObj;
700
- };
701
- /**
845
+ */ key: "getPeriodObjectFromPeriod",
846
+ value: function getPeriodObjectFromPeriod(period) {
847
+ var periodObj = getPeriodItem(this._storedPeriodInfo, period.id);
848
+ if (periodObj === undefined && period !== undefined) {
849
+ return this._cachedPeriodInfo.get(period);
850
+ }
851
+ return periodObj;
852
+ }
853
+ },
854
+ {
855
+ /**
702
856
  * Allows to recuperate a "Period Object" - used in get/set methods of the
703
857
  * `TracksStore` - by giving the Period's id.
704
858
  *
@@ -711,54 +865,66 @@ var TracksStore = /** @class */ (function (_super) {
711
865
  *
712
866
  * @param {string} periodId - The concerned Period's id
713
867
  * @returns {Object}
714
- */
715
- TracksStore.prototype.getPeriodObjectFromId = function (periodId) {
716
- return getPeriodItem(this._storedPeriodInfo, periodId);
717
- };
718
- TracksStore.prototype.disableVideoTrickModeTracks = function () {
719
- if (!this._isTrickModeTrackEnabled) {
720
- return;
721
- }
722
- this._isTrickModeTrackEnabled = false;
723
- this._resetVideoTrackChoices("trickmode-disabled");
724
- };
725
- TracksStore.prototype.enableVideoTrickModeTracks = function () {
726
- if (this._isTrickModeTrackEnabled) {
727
- return;
728
- }
729
- this._isTrickModeTrackEnabled = true;
730
- this._resetVideoTrackChoices("trickmode-enabled");
731
- };
732
- /**
868
+ */ key: "getPeriodObjectFromId",
869
+ value: function getPeriodObjectFromId(periodId) {
870
+ return getPeriodItem(this._storedPeriodInfo, periodId);
871
+ }
872
+ },
873
+ {
874
+ key: "disableVideoTrickModeTracks",
875
+ value: function disableVideoTrickModeTracks() {
876
+ if (!this._isTrickModeTrackEnabled) {
877
+ return;
878
+ }
879
+ this._isTrickModeTrackEnabled = false;
880
+ this._resetVideoTrackChoices("trickmode-disabled");
881
+ }
882
+ },
883
+ {
884
+ key: "enableVideoTrickModeTracks",
885
+ value: function enableVideoTrickModeTracks() {
886
+ if (this._isTrickModeTrackEnabled) {
887
+ return;
888
+ }
889
+ this._isTrickModeTrackEnabled = true;
890
+ this._resetVideoTrackChoices("trickmode-enabled");
891
+ }
892
+ },
893
+ {
894
+ /**
733
895
  * Reset the TracksStore's Period objects:
734
896
  * - All Period which are not in the manifest currently will be removed.
735
897
  * - All References used to communicate the wanted track will be removed.
736
898
  *
737
899
  * You might want to call this API when restarting playback.
738
- */
739
- TracksStore.prototype.resetPeriodObjects = function () {
740
- var _a, _b, _c;
741
- log_1.default.debug("Track", "Resetting Period Objects");
742
- for (var i = this._storedPeriodInfo.length - 1; i >= 0; i--) {
743
- var storedObj = this._storedPeriodInfo[i];
744
- (_a = storedObj.audio.dispatcher) === null || _a === void 0 ? void 0 : _a.dispose("TrackDispatcher reset");
745
- storedObj.audio.dispatcher = null;
746
- (_b = storedObj.video.dispatcher) === null || _b === void 0 ? void 0 : _b.dispose("TrackDispatcher reset");
747
- storedObj.video.dispatcher = null;
748
- (_c = storedObj.text.dispatcher) === null || _c === void 0 ? void 0 : _c.dispose("TrackDispatcher reset");
749
- storedObj.text.dispatcher = null;
750
- if (!storedObj.inManifest) {
751
- this._removePeriodObject(i);
900
+ */ key: "resetPeriodObjects",
901
+ value: function resetPeriodObjects() {
902
+ var _a, _b, _c;
903
+ _log.default.debug("Track", "Resetting Period Objects");
904
+ for(var i = this._storedPeriodInfo.length - 1; i >= 0; i--){
905
+ var storedObj = this._storedPeriodInfo[i];
906
+ (_a = storedObj.audio.dispatcher) === null || _a === void 0 ? void 0 : _a.dispose("TrackDispatcher reset");
907
+ storedObj.audio.dispatcher = null;
908
+ (_b = storedObj.video.dispatcher) === null || _b === void 0 ? void 0 : _b.dispose("TrackDispatcher reset");
909
+ storedObj.video.dispatcher = null;
910
+ (_c = storedObj.text.dispatcher) === null || _c === void 0 ? void 0 : _c.dispose("TrackDispatcher reset");
911
+ storedObj.text.dispatcher = null;
912
+ if (!storedObj.inManifest) {
913
+ this._removePeriodObject(i);
914
+ }
915
+ }
752
916
  }
753
- }
754
- };
755
- /**
917
+ },
918
+ {
919
+ /**
756
920
  * @returns {boolean}
757
- */
758
- TracksStore.prototype.isTrickModeEnabled = function () {
759
- return this._isTrickModeTrackEnabled;
760
- };
761
- /**
921
+ */ key: "isTrickModeEnabled",
922
+ value: function isTrickModeEnabled() {
923
+ return this._isTrickModeTrackEnabled;
924
+ }
925
+ },
926
+ {
927
+ /**
762
928
  * Set audio track based on the ID of its Adaptation for a given added Period.
763
929
  * @param {Object} params
764
930
  * @param {Object} params.periodRef - The concerned Period's object.
@@ -769,34 +935,38 @@ var TracksStore = /** @class */ (function (_super) {
769
935
  * that should be locked after switching to that track.
770
936
  * `null` if no Audio Representation should be locked.
771
937
  * @param {number} params.relativeResumingPosition
772
- */
773
- TracksStore.prototype.setAudioTrack = function (payload) {
774
- var periodRef = payload.periodRef, trackId = payload.trackId, switchingMode = payload.switchingMode, lockedRepresentations = payload.lockedRepresentations, relativeResumingPosition = payload.relativeResumingPosition;
775
- return this._setAudioOrTextTrack({
776
- bufferType: "audio",
777
- periodRef: periodRef,
778
- trackId: trackId,
779
- switchingMode: switchingMode !== null && switchingMode !== void 0 ? switchingMode : this._defaultAudioTrackSwitchingMode,
780
- lockedRepresentations: lockedRepresentations,
781
- relativeResumingPosition: relativeResumingPosition,
782
- });
783
- };
784
- /**
938
+ */ key: "setAudioTrack",
939
+ value: function setAudioTrack(payload) {
940
+ var periodRef = payload.periodRef, trackId = payload.trackId, switchingMode = payload.switchingMode, lockedRepresentations = payload.lockedRepresentations, relativeResumingPosition = payload.relativeResumingPosition;
941
+ return this._setAudioOrTextTrack({
942
+ bufferType: "audio",
943
+ periodRef: periodRef,
944
+ trackId: trackId,
945
+ switchingMode: switchingMode !== null && switchingMode !== void 0 ? switchingMode : this._defaultAudioTrackSwitchingMode,
946
+ lockedRepresentations: lockedRepresentations,
947
+ relativeResumingPosition: relativeResumingPosition
948
+ });
949
+ }
950
+ },
951
+ {
952
+ /**
785
953
  * Set text track based on the ID of its Adaptation for a given added Period.
786
954
  * @param {Object} periodObj - The concerned Period's object.
787
955
  * @param {string} wantedId - adaptation id of the wanted track.
788
- */
789
- TracksStore.prototype.setTextTrack = function (periodObj, wantedId) {
790
- return this._setAudioOrTextTrack({
791
- bufferType: "text",
792
- periodRef: periodObj,
793
- trackId: wantedId,
794
- switchingMode: "direct",
795
- lockedRepresentations: null,
796
- relativeResumingPosition: undefined,
797
- });
798
- };
799
- /**
956
+ */ key: "setTextTrack",
957
+ value: function setTextTrack(periodObj, wantedId) {
958
+ return this._setAudioOrTextTrack({
959
+ bufferType: "text",
960
+ periodRef: periodObj,
961
+ trackId: wantedId,
962
+ switchingMode: "direct",
963
+ lockedRepresentations: null,
964
+ relativeResumingPosition: undefined
965
+ });
966
+ }
967
+ },
968
+ {
969
+ /**
800
970
  * Set audio track based on the ID of its Adaptation for a given added Period.
801
971
  * @param {Object} params
802
972
  * @param {string} params.bufferType
@@ -808,62 +978,58 @@ var TracksStore = /** @class */ (function (_super) {
808
978
  * Representations that should be locked after switchingMode to that track.
809
979
  * `null` if no Audio Representation should be locked.
810
980
  * @param {number|undefined} params.relativeResumingPosition
811
- */
812
- TracksStore.prototype._setAudioOrTextTrack = function (_a) {
813
- var _b, _c;
814
- var bufferType = _a.bufferType, periodRef = _a.periodRef, trackId = _a.trackId, switchingMode = _a.switchingMode, lockedRepresentations = _a.lockedRepresentations, relativeResumingPosition = _a.relativeResumingPosition;
815
- if (!periodRef.isPeriodAdvertised) {
816
- throw new Error("Wanted Period not yet advertised.");
817
- }
818
- var period = periodRef.period;
819
- var wantedAdaptation = (0, array_find_1.default)((_b = period.adaptations[bufferType]) !== null && _b !== void 0 ? _b : [], function (_a) {
820
- var id = _a.id, supportStatus = _a.supportStatus;
821
- return supportStatus.hasSupportedCodec !== false &&
822
- supportStatus.isDecipherable !== false &&
823
- id === trackId;
824
- });
825
- if (wantedAdaptation === undefined) {
826
- throw new Error("Wanted ".concat(bufferType, " track not found."));
827
- }
828
- var typeInfo = periodRef[bufferType];
829
- var lockedRepresentationsRef;
830
- if (lockedRepresentations === null) {
831
- lockedRepresentationsRef = new reference_1.default(null);
832
- }
833
- else {
834
- var representationsToLock = this._getRepresentationsToLock(wantedAdaptation, lockedRepresentations);
835
- var repSwitchingMode = bufferType === "audio"
836
- ? this._defaultAudioTrackSwitchingMode
837
- : "direct";
838
- lockedRepresentationsRef = new reference_1.default({
839
- representationIds: representationsToLock,
840
- switchingMode: repSwitchingMode,
841
- });
842
- }
843
- var storedSettings = {
844
- adaptation: wantedAdaptation,
845
- switchingMode: switchingMode,
846
- lockedRepresentations: lockedRepresentationsRef,
847
- relativeResumingPosition: relativeResumingPosition,
848
- };
849
- typeInfo.storedSettings = storedSettings;
850
- this.trigger("trackUpdate", {
851
- period: toExposedPeriod(period),
852
- trackType: bufferType,
853
- reason: "manual",
854
- });
855
- // The previous event trigger could have had side-effects, so we
856
- // re-check if we're still mostly in the same state
857
- if (this._isDisposed) {
858
- return; // Someone disposed the `TracksStore` on the previous side-effect
859
- }
860
- var newPeriodItem = getPeriodItem(this._storedPeriodInfo, period.id);
861
- if (newPeriodItem !== undefined &&
862
- newPeriodItem[bufferType].storedSettings === storedSettings) {
863
- (_c = newPeriodItem[bufferType].dispatcher) === null || _c === void 0 ? void 0 : _c.updateTrack(storedSettings);
864
- }
865
- };
866
- /**
981
+ */ key: "_setAudioOrTextTrack",
982
+ value: function _setAudioOrTextTrack(param) {
983
+ var bufferType = param.bufferType, periodRef = param.periodRef, trackId = param.trackId, switchingMode = param.switchingMode, lockedRepresentations = param.lockedRepresentations, relativeResumingPosition = param.relativeResumingPosition;
984
+ var _a, _b;
985
+ if (!periodRef.isPeriodAdvertised) {
986
+ throw new Error("Wanted Period not yet advertised.");
987
+ }
988
+ var period = periodRef.period;
989
+ var wantedAdaptation = (0, _array_find.default)((_a = period.adaptations[bufferType]) !== null && _a !== void 0 ? _a : [], function(param) {
990
+ var id = param.id, supportStatus = param.supportStatus;
991
+ return supportStatus.hasSupportedCodec !== false && supportStatus.isDecipherable !== false && id === trackId;
992
+ });
993
+ if (wantedAdaptation === undefined) {
994
+ throw new Error("Wanted ".concat(bufferType, " track not found."));
995
+ }
996
+ var typeInfo = periodRef[bufferType];
997
+ var lockedRepresentationsRef;
998
+ if (lockedRepresentations === null) {
999
+ lockedRepresentationsRef = new _reference.default(null);
1000
+ } else {
1001
+ var representationsToLock = this._getRepresentationsToLock(wantedAdaptation, lockedRepresentations);
1002
+ var repSwitchingMode = bufferType === "audio" ? this._defaultAudioTrackSwitchingMode : "direct";
1003
+ lockedRepresentationsRef = new _reference.default({
1004
+ representationIds: representationsToLock,
1005
+ switchingMode: repSwitchingMode
1006
+ });
1007
+ }
1008
+ var storedSettings = {
1009
+ adaptation: wantedAdaptation,
1010
+ switchingMode: switchingMode,
1011
+ lockedRepresentations: lockedRepresentationsRef,
1012
+ relativeResumingPosition: relativeResumingPosition
1013
+ };
1014
+ typeInfo.storedSettings = storedSettings;
1015
+ this.trigger("trackUpdate", {
1016
+ period: toExposedPeriod(period),
1017
+ trackType: bufferType,
1018
+ reason: "manual"
1019
+ });
1020
+ // The previous event trigger could have had side-effects, so we
1021
+ // re-check if we're still mostly in the same state
1022
+ if (this._isDisposed) {
1023
+ return; // Someone disposed the `TracksStore` on the previous side-effect
1024
+ }
1025
+ var newPeriodItem = getPeriodItem(this._storedPeriodInfo, period.id);
1026
+ if (newPeriodItem !== undefined && newPeriodItem[bufferType].storedSettings === storedSettings) {
1027
+ (_b = newPeriodItem[bufferType].dispatcher) === null || _b === void 0 ? void 0 : _b.updateTrack(storedSettings);
1028
+ }
1029
+ }
1030
+ },
1031
+ {
1032
+ /**
867
1033
  * Set video track based on the ID of its Adaptation for a given added Period.
868
1034
  * @param {Object} params
869
1035
  * @param {Object} params.periodRef - The concerned Period's object.
@@ -874,109 +1040,113 @@ var TracksStore = /** @class */ (function (_super) {
874
1040
  * Representations that should be locked after switching to that track.
875
1041
  * `null` if no Video Representation should be locked.
876
1042
  * @param {number|undefined} params.relativeResumingPosition
877
- */
878
- TracksStore.prototype.setVideoTrack = function (payload) {
879
- var _a, _b;
880
- var periodRef = payload.periodRef, trackId = payload.trackId, switchingMode = payload.switchingMode, lockedRepresentations = payload.lockedRepresentations, relativeResumingPosition = payload.relativeResumingPosition;
881
- if (!periodRef.isPeriodAdvertised) {
882
- throw new Error("Wanted Period not yet advertised.");
883
- }
884
- var period = periodRef.period;
885
- var wantedAdaptation = (0, array_find_1.default)((_a = period.adaptations.video) !== null && _a !== void 0 ? _a : [], function (_a) {
886
- var id = _a.id, supportStatus = _a.supportStatus;
887
- return supportStatus.isDecipherable !== false &&
888
- supportStatus.hasSupportedCodec !== false &&
889
- id === trackId;
890
- });
891
- if (wantedAdaptation === undefined) {
892
- throw new Error("Wanted video track not found.");
893
- }
894
- var DEFAULT_VIDEO_TRACK_SWITCHING_MODE = config_1.default.getCurrent().DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
895
- var typeInfo = periodRef.video;
896
- var newAdaptation = getRightVideoTrack(wantedAdaptation, this._isTrickModeTrackEnabled);
897
- var lockedRepresentationsRef;
898
- if (lockedRepresentations === null) {
899
- lockedRepresentationsRef = new reference_1.default(null);
900
- }
901
- else {
902
- var representationsToLock = this._getRepresentationsToLock(wantedAdaptation, lockedRepresentations);
903
- var repSwitchingMode = DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
904
- lockedRepresentationsRef = new reference_1.default({
905
- representationIds: representationsToLock,
906
- switchingMode: repSwitchingMode,
907
- });
908
- }
909
- var storedSettings = {
910
- adaptationBase: wantedAdaptation,
911
- switchingMode: switchingMode !== null && switchingMode !== void 0 ? switchingMode : DEFAULT_VIDEO_TRACK_SWITCHING_MODE,
912
- adaptation: newAdaptation,
913
- relativeResumingPosition: relativeResumingPosition,
914
- lockedRepresentations: lockedRepresentationsRef,
915
- };
916
- typeInfo.storedSettings = storedSettings;
917
- this.trigger("trackUpdate", {
918
- period: toExposedPeriod(period),
919
- trackType: "video",
920
- reason: "manual",
921
- });
922
- // The previous event trigger could have had side-effects, so we
923
- // re-check if we're still mostly in the same state
924
- if (this._isDisposed) {
925
- return; // Someone disposed the `TracksStore` on the previous side-effect
926
- }
927
- var newPeriodItem = getPeriodItem(this._storedPeriodInfo, period.id);
928
- if (newPeriodItem !== undefined &&
929
- newPeriodItem.video.storedSettings === storedSettings) {
930
- (_b = newPeriodItem.video.dispatcher) === null || _b === void 0 ? void 0 : _b.updateTrack(storedSettings);
931
- }
932
- };
933
- /**
1043
+ */ key: "setVideoTrack",
1044
+ value: function setVideoTrack(payload) {
1045
+ var _a, _b;
1046
+ var periodRef = payload.periodRef, trackId = payload.trackId, switchingMode = payload.switchingMode, lockedRepresentations = payload.lockedRepresentations, relativeResumingPosition = payload.relativeResumingPosition;
1047
+ if (!periodRef.isPeriodAdvertised) {
1048
+ throw new Error("Wanted Period not yet advertised.");
1049
+ }
1050
+ var period = periodRef.period;
1051
+ var wantedAdaptation = (0, _array_find.default)((_a = period.adaptations.video) !== null && _a !== void 0 ? _a : [], function(param) {
1052
+ var id = param.id, supportStatus = param.supportStatus;
1053
+ return supportStatus.isDecipherable !== false && supportStatus.hasSupportedCodec !== false && id === trackId;
1054
+ });
1055
+ if (wantedAdaptation === undefined) {
1056
+ throw new Error("Wanted video track not found.");
1057
+ }
1058
+ var DEFAULT_VIDEO_TRACK_SWITCHING_MODE = _config.default.getCurrent().DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
1059
+ var typeInfo = periodRef.video;
1060
+ var newAdaptation = getRightVideoTrack(wantedAdaptation, this._isTrickModeTrackEnabled);
1061
+ var lockedRepresentationsRef;
1062
+ if (lockedRepresentations === null) {
1063
+ lockedRepresentationsRef = new _reference.default(null);
1064
+ } else {
1065
+ var representationsToLock = this._getRepresentationsToLock(wantedAdaptation, lockedRepresentations);
1066
+ var repSwitchingMode = DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
1067
+ lockedRepresentationsRef = new _reference.default({
1068
+ representationIds: representationsToLock,
1069
+ switchingMode: repSwitchingMode
1070
+ });
1071
+ }
1072
+ var storedSettings = {
1073
+ adaptationBase: wantedAdaptation,
1074
+ switchingMode: switchingMode !== null && switchingMode !== void 0 ? switchingMode : DEFAULT_VIDEO_TRACK_SWITCHING_MODE,
1075
+ adaptation: newAdaptation,
1076
+ relativeResumingPosition: relativeResumingPosition,
1077
+ lockedRepresentations: lockedRepresentationsRef
1078
+ };
1079
+ typeInfo.storedSettings = storedSettings;
1080
+ this.trigger("trackUpdate", {
1081
+ period: toExposedPeriod(period),
1082
+ trackType: "video",
1083
+ reason: "manual"
1084
+ });
1085
+ // The previous event trigger could have had side-effects, so we
1086
+ // re-check if we're still mostly in the same state
1087
+ if (this._isDisposed) {
1088
+ return; // Someone disposed the `TracksStore` on the previous side-effect
1089
+ }
1090
+ var newPeriodItem = getPeriodItem(this._storedPeriodInfo, period.id);
1091
+ if (newPeriodItem !== undefined && newPeriodItem.video.storedSettings === storedSettings) {
1092
+ (_b = newPeriodItem.video.dispatcher) === null || _b === void 0 ? void 0 : _b.updateTrack(storedSettings);
1093
+ }
1094
+ }
1095
+ },
1096
+ {
1097
+ /**
934
1098
  * Disable the current text track for a given period.
935
1099
  *
936
1100
  * @param {Object} periodObj - The concerned Period's object
937
1101
  * @param {string} bufferType - The type of track to disable.
938
1102
  * @throws Error - Throws if the period given has not been added
939
- */
940
- TracksStore.prototype.disableTrack = function (periodObj, bufferType) {
941
- var _a, _b;
942
- if (!periodObj.isPeriodAdvertised) {
943
- throw new Error("Wanted Period not yet advertised.");
944
- }
945
- var trackInfo = periodObj[bufferType];
946
- if (trackInfo.storedSettings === null) {
947
- return;
948
- }
949
- if (bufferType !== "text") {
950
- // Potentially unneeded, but let's be clean
951
- (_a = periodObj[bufferType].storedSettings) === null || _a === void 0 ? void 0 : _a.lockedRepresentations.finish();
952
- }
953
- trackInfo.storedSettings = null;
954
- this.trigger("trackUpdate", {
955
- period: toExposedPeriod(periodObj.period),
956
- trackType: bufferType,
957
- reason: "manual",
958
- });
959
- // The previous event trigger could have had side-effects, so we
960
- // re-check if we're still mostly in the same state
961
- if (this._isDisposed) {
962
- return; // Someone disposed the `TracksStore` on the previous side-effect
963
- }
964
- var newPeriodItem = getPeriodItem(this._storedPeriodInfo, periodObj.period.id);
965
- if (newPeriodItem !== undefined &&
966
- newPeriodItem[bufferType].storedSettings === null) {
967
- (_b = newPeriodItem[bufferType].dispatcher) === null || _b === void 0 ? void 0 : _b.updateTrack(null);
968
- }
969
- if (newPeriodItem !== undefined) {
970
- var hasNoTrackAtAll = ["audio", "video"].every(function (ttype) { return newPeriodItem[ttype].storedSettings === null; });
971
- if (hasNoTrackAtAll) {
972
- var err = new errors_1.MediaError("NO_AUDIO_VIDEO_TRACKS", "No audio and no video tracks are set.");
973
- this.trigger("error", err);
974
- this.dispose();
975
- return;
1103
+ */ key: "disableTrack",
1104
+ value: function disableTrack(periodObj, bufferType) {
1105
+ var _a, _b;
1106
+ if (!periodObj.isPeriodAdvertised) {
1107
+ throw new Error("Wanted Period not yet advertised.");
1108
+ }
1109
+ var trackInfo = periodObj[bufferType];
1110
+ if (trackInfo.storedSettings === null) {
1111
+ return;
1112
+ }
1113
+ if (bufferType !== "text") {
1114
+ // Potentially unneeded, but let's be clean
1115
+ (_a = periodObj[bufferType].storedSettings) === null || _a === void 0 ? void 0 : _a.lockedRepresentations.finish();
1116
+ }
1117
+ trackInfo.storedSettings = null;
1118
+ this.trigger("trackUpdate", {
1119
+ period: toExposedPeriod(periodObj.period),
1120
+ trackType: bufferType,
1121
+ reason: "manual"
1122
+ });
1123
+ // The previous event trigger could have had side-effects, so we
1124
+ // re-check if we're still mostly in the same state
1125
+ if (this._isDisposed) {
1126
+ return; // Someone disposed the `TracksStore` on the previous side-effect
1127
+ }
1128
+ var newPeriodItem = getPeriodItem(this._storedPeriodInfo, periodObj.period.id);
1129
+ if (newPeriodItem !== undefined && newPeriodItem[bufferType].storedSettings === null) {
1130
+ (_b = newPeriodItem[bufferType].dispatcher) === null || _b === void 0 ? void 0 : _b.updateTrack(null);
1131
+ }
1132
+ if (newPeriodItem !== undefined) {
1133
+ var hasNoTrackAtAll = [
1134
+ "audio",
1135
+ "video"
1136
+ ].every(function(ttype) {
1137
+ return newPeriodItem[ttype].storedSettings === null;
1138
+ });
1139
+ if (hasNoTrackAtAll) {
1140
+ var err = new _index.MediaError("NO_AUDIO_VIDEO_TRACKS", "No audio and no video tracks are set.");
1141
+ this.trigger("error", err);
1142
+ this.dispose();
1143
+ return;
1144
+ }
1145
+ }
976
1146
  }
977
- }
978
- };
979
- /**
1147
+ },
1148
+ {
1149
+ /**
980
1150
  * Returns an object describing the chosen audio track for the given audio
981
1151
  * Period.
982
1152
  *
@@ -993,13 +1163,13 @@ var TracksStore = /** @class */ (function (_super) {
993
1163
  * @returns {Object|null|undefined} - The audio track chosen for this Period.
994
1164
  * `null` if audio tracks were disabled and `undefined` if the Period is not
995
1165
  * known.
996
- */
997
- TracksStore.prototype.getChosenAudioTrack = function (periodObj, filterPlayableRepresentations) {
998
- return (0, is_null_or_undefined_1.default)(periodObj.audio.storedSettings)
999
- ? null
1000
- : (0, manifest_1.toAudioTrack)(periodObj.audio.storedSettings.adaptation, filterPlayableRepresentations);
1001
- };
1002
- /**
1166
+ */ key: "getChosenAudioTrack",
1167
+ value: function getChosenAudioTrack(periodObj, filterPlayableRepresentations) {
1168
+ return (0, _is_null_or_undefined.default)(periodObj.audio.storedSettings) ? null : (0, _index1.toAudioTrack)(periodObj.audio.storedSettings.adaptation, filterPlayableRepresentations);
1169
+ }
1170
+ },
1171
+ {
1172
+ /**
1003
1173
  * Returns an object describing the chosen text track for the given text
1004
1174
  * Period.
1005
1175
  *
@@ -1008,13 +1178,13 @@ var TracksStore = /** @class */ (function (_super) {
1008
1178
  *
1009
1179
  * @param {Object} periodObj - The concerned Period's object
1010
1180
  * @returns {Object|null} - The text track chosen for this Period
1011
- */
1012
- TracksStore.prototype.getChosenTextTrack = function (periodObj) {
1013
- return (0, is_null_or_undefined_1.default)(periodObj.text.storedSettings)
1014
- ? null
1015
- : (0, manifest_1.toTextTrack)(periodObj.text.storedSettings.adaptation);
1016
- };
1017
- /**
1181
+ */ key: "getChosenTextTrack",
1182
+ value: function getChosenTextTrack(periodObj) {
1183
+ return (0, _is_null_or_undefined.default)(periodObj.text.storedSettings) ? null : (0, _index1.toTextTrack)(periodObj.text.storedSettings.adaptation);
1184
+ }
1185
+ },
1186
+ {
1187
+ /**
1018
1188
  * Returns an object describing the chosen video track for the given video
1019
1189
  * Period.
1020
1190
  *
@@ -1023,14 +1193,16 @@ var TracksStore = /** @class */ (function (_super) {
1023
1193
  *
1024
1194
  * @param {Object} periodObj - The concerned Period's object
1025
1195
  * @returns {Object|null} - The video track chosen for this Period
1026
- */
1027
- TracksStore.prototype.getChosenVideoTrack = function (periodObj, filterPlayableRepresentations) {
1028
- if ((0, is_null_or_undefined_1.default)(periodObj.video.storedSettings)) {
1029
- return null;
1030
- }
1031
- return (0, manifest_1.toVideoTrack)(periodObj.video.storedSettings.adaptation, filterPlayableRepresentations);
1032
- };
1033
- /**
1196
+ */ key: "getChosenVideoTrack",
1197
+ value: function getChosenVideoTrack(periodObj, filterPlayableRepresentations) {
1198
+ if ((0, _is_null_or_undefined.default)(periodObj.video.storedSettings)) {
1199
+ return null;
1200
+ }
1201
+ return (0, _index1.toVideoTrack)(periodObj.video.storedSettings.adaptation, filterPlayableRepresentations);
1202
+ }
1203
+ },
1204
+ {
1205
+ /**
1034
1206
  * Returns all available audio tracks for a given Period, as an array of
1035
1207
  * objects.
1036
1208
  *
@@ -1042,21 +1214,21 @@ var TracksStore = /** @class */ (function (_super) {
1042
1214
  * returned response.
1043
1215
  * If `false`, the response should contain all linked representations.
1044
1216
  * @returns {Array.<Object>}
1045
- */
1046
- TracksStore.prototype.getAvailableAudioTracks = function (periodObj, filterPlayableRepresentations) {
1047
- var storedSettings = periodObj.audio.storedSettings;
1048
- var currentId = !(0, is_null_or_undefined_1.default)(storedSettings)
1049
- ? storedSettings.adaptation.id
1050
- : null;
1051
- var adaptations = (0, manifest_1.getSupportedAdaptations)(periodObj.period, "audio");
1052
- return adaptations.map(function (adaptation) {
1053
- var active = currentId === null ? false : currentId === adaptation.id;
1054
- return (0, object_assign_1.default)((0, manifest_1.toAudioTrack)(adaptation, filterPlayableRepresentations), {
1055
- active: active,
1056
- });
1057
- });
1058
- };
1059
- /**
1217
+ */ key: "getAvailableAudioTracks",
1218
+ value: function getAvailableAudioTracks(periodObj, filterPlayableRepresentations) {
1219
+ var storedSettings = periodObj.audio.storedSettings;
1220
+ var currentId = !(0, _is_null_or_undefined.default)(storedSettings) ? storedSettings.adaptation.id : null;
1221
+ var adaptations = (0, _index1.getSupportedAdaptations)(periodObj.period, "audio");
1222
+ return adaptations.map(function(adaptation) {
1223
+ var active = currentId === null ? false : currentId === adaptation.id;
1224
+ return (0, _object_assign.default)((0, _index1.toAudioTrack)(adaptation, filterPlayableRepresentations), {
1225
+ active: active
1226
+ });
1227
+ });
1228
+ }
1229
+ },
1230
+ {
1231
+ /**
1060
1232
  * Returns all available text tracks for a given Period, as an array of
1061
1233
  * objects.
1062
1234
  *
@@ -1064,19 +1236,21 @@ var TracksStore = /** @class */ (function (_super) {
1064
1236
  *
1065
1237
  * @param {Object} periodObj - The concerned Period's object
1066
1238
  * @returns {Array.<Object>}
1067
- */
1068
- TracksStore.prototype.getAvailableTextTracks = function (periodObj) {
1069
- var storedSettings = periodObj.text.storedSettings;
1070
- var currentId = !(0, is_null_or_undefined_1.default)(storedSettings)
1071
- ? storedSettings.adaptation.id
1072
- : null;
1073
- var adaptations = (0, manifest_1.getSupportedAdaptations)(periodObj.period, "text");
1074
- return adaptations.map(function (adaptation) {
1075
- var active = currentId === null ? false : currentId === adaptation.id;
1076
- return (0, object_assign_1.default)((0, manifest_1.toTextTrack)(adaptation), { active: active });
1077
- });
1078
- };
1079
- /**
1239
+ */ key: "getAvailableTextTracks",
1240
+ value: function getAvailableTextTracks(periodObj) {
1241
+ var storedSettings = periodObj.text.storedSettings;
1242
+ var currentId = !(0, _is_null_or_undefined.default)(storedSettings) ? storedSettings.adaptation.id : null;
1243
+ var adaptations = (0, _index1.getSupportedAdaptations)(periodObj.period, "text");
1244
+ return adaptations.map(function(adaptation) {
1245
+ var active = currentId === null ? false : currentId === adaptation.id;
1246
+ return (0, _object_assign.default)((0, _index1.toTextTrack)(adaptation), {
1247
+ active: active
1248
+ });
1249
+ });
1250
+ }
1251
+ },
1252
+ {
1253
+ /**
1080
1254
  * Returns all available video tracks for a given Period, as an array of
1081
1255
  * objects.
1082
1256
  *
@@ -1088,331 +1262,391 @@ var TracksStore = /** @class */ (function (_super) {
1088
1262
  * returned response.
1089
1263
  * If `false`, the response should contain all linked representations.
1090
1264
  * @returns {Array.<Object>}
1091
- */
1092
- TracksStore.prototype.getAvailableVideoTracks = function (periodObj, filterPlayableRepresentations) {
1093
- var storedSettings = periodObj.video.storedSettings;
1094
- var currentId = (0, is_null_or_undefined_1.default)(storedSettings)
1095
- ? undefined
1096
- : storedSettings.adaptation.id;
1097
- var adaptations = (0, manifest_1.getSupportedAdaptations)(periodObj.period, "video");
1098
- return adaptations.map(function (adaptation) {
1099
- var active = currentId === null ? false : currentId === adaptation.id;
1100
- var track = (0, manifest_1.toVideoTrack)(adaptation, filterPlayableRepresentations);
1101
- var trickModeTracks = track.trickModeTracks !== undefined
1102
- ? track.trickModeTracks.map(function (trickModeAdaptation) {
1103
- var isActive = currentId === null ? false : currentId === trickModeAdaptation.id;
1104
- return (0, object_assign_1.default)(trickModeAdaptation, { active: isActive });
1105
- })
1106
- : [];
1107
- var availableTrack = (0, object_assign_1.default)(track, { active: active });
1108
- if (trickModeTracks !== undefined) {
1109
- availableTrack.trickModeTracks = trickModeTracks;
1110
- }
1111
- return availableTrack;
1112
- });
1113
- };
1114
- TracksStore.prototype.getLockedAudioRepresentations = function (periodObj) {
1115
- var storedSettings = periodObj.audio.storedSettings;
1116
- if ((0, is_null_or_undefined_1.default)(storedSettings)) {
1117
- return null;
1118
- }
1119
- var lastLockedSettings = storedSettings.lockedRepresentations.getValue();
1120
- return lastLockedSettings === null ? null : lastLockedSettings.representationIds;
1121
- };
1122
- TracksStore.prototype.getLockedVideoRepresentations = function (periodObj) {
1123
- var storedSettings = periodObj.video.storedSettings;
1124
- if ((0, is_null_or_undefined_1.default)(storedSettings)) {
1125
- return null;
1126
- }
1127
- var lastLockedSettings = storedSettings.lockedRepresentations.getValue();
1128
- return lastLockedSettings === null ? null : lastLockedSettings.representationIds;
1129
- };
1130
- TracksStore.prototype.lockAudioRepresentations = function (periodObj, lockSettings) {
1131
- var _a;
1132
- var storedSettings = periodObj.audio.storedSettings;
1133
- if ((0, is_null_or_undefined_1.default)(storedSettings)) {
1134
- return;
1135
- }
1136
- var DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE = config_1.default.getCurrent().DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE;
1137
- var filtered = this._getRepresentationsToLock(storedSettings.adaptation, lockSettings.representations);
1138
- var switchingMode = (_a = lockSettings.switchingMode) !== null && _a !== void 0 ? _a : DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE;
1139
- storedSettings.lockedRepresentations.setValue({
1140
- representationIds: filtered,
1141
- switchingMode: switchingMode,
1142
- });
1143
- };
1144
- TracksStore.prototype.lockVideoRepresentations = function (periodObj, lockSettings) {
1145
- var _a;
1146
- var storedSettings = periodObj.video.storedSettings;
1147
- if ((0, is_null_or_undefined_1.default)(storedSettings)) {
1148
- return;
1149
- }
1150
- var DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE = config_1.default.getCurrent().DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE;
1151
- var filtered = this._getRepresentationsToLock(storedSettings.adaptation, lockSettings.representations);
1152
- var switchingMode = (_a = lockSettings.switchingMode) !== null && _a !== void 0 ? _a : DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE;
1153
- storedSettings.lockedRepresentations.setValue({
1154
- representationIds: filtered,
1155
- switchingMode: switchingMode,
1156
- });
1157
- };
1158
- TracksStore.prototype.unlockAudioRepresentations = function (periodObj) {
1159
- var storedSettings = periodObj.audio.storedSettings;
1160
- if ((0, is_null_or_undefined_1.default)(storedSettings) ||
1161
- storedSettings.lockedRepresentations.getValue() === null) {
1162
- return;
1163
- }
1164
- storedSettings.lockedRepresentations.setValue(null);
1165
- };
1166
- TracksStore.prototype.unlockVideoRepresentations = function (periodObj) {
1167
- var storedSettings = periodObj.video.storedSettings;
1168
- if ((0, is_null_or_undefined_1.default)(storedSettings) ||
1169
- storedSettings.lockedRepresentations.getValue() === null) {
1170
- return;
1171
- }
1172
- storedSettings.lockedRepresentations.setValue(null);
1173
- };
1174
- TracksStore.prototype.dispose = function () {
1175
- this._isDisposed = true;
1176
- while (true) {
1177
- var lastPeriod = this._storedPeriodInfo.pop();
1178
- if (lastPeriod === undefined) {
1179
- return;
1265
+ */ key: "getAvailableVideoTracks",
1266
+ value: function getAvailableVideoTracks(periodObj, filterPlayableRepresentations) {
1267
+ var storedSettings = periodObj.video.storedSettings;
1268
+ var currentId = (0, _is_null_or_undefined.default)(storedSettings) ? undefined : storedSettings.adaptation.id;
1269
+ var adaptations = (0, _index1.getSupportedAdaptations)(periodObj.period, "video");
1270
+ return adaptations.map(function(adaptation) {
1271
+ var active = currentId === null ? false : currentId === adaptation.id;
1272
+ var track = (0, _index1.toVideoTrack)(adaptation, filterPlayableRepresentations);
1273
+ var trickModeTracks = track.trickModeTracks !== undefined ? track.trickModeTracks.map(function(trickModeAdaptation) {
1274
+ var isActive = currentId === null ? false : currentId === trickModeAdaptation.id;
1275
+ return (0, _object_assign.default)(trickModeAdaptation, {
1276
+ active: isActive
1277
+ });
1278
+ }) : [];
1279
+ var availableTrack = (0, _object_assign.default)(track, {
1280
+ active: active
1281
+ });
1282
+ if (trickModeTracks !== undefined) {
1283
+ availableTrack.trickModeTracks = trickModeTracks;
1284
+ }
1285
+ return availableTrack;
1286
+ });
1180
1287
  }
1181
- lastPeriod.isRemoved = true;
1182
- }
1183
- };
1184
- TracksStore.prototype._resetVideoTrackChoices = function (reason) {
1185
- var _a;
1186
- for (var i = 0; i < this._storedPeriodInfo.length; i++) {
1187
- var periodObj = this._storedPeriodInfo[i];
1188
- if (!(0, is_null_or_undefined_1.default)(periodObj.video.storedSettings)) {
1189
- var chosenBaseTrack = periodObj.video.storedSettings.adaptationBase;
1190
- if (chosenBaseTrack !== null) {
1191
- var chosenTrack = getRightVideoTrack(chosenBaseTrack, this._isTrickModeTrackEnabled);
1192
- periodObj.video.storedSettings.adaptationBase = chosenBaseTrack;
1193
- periodObj.video.storedSettings.adaptation = chosenTrack;
1288
+ },
1289
+ {
1290
+ key: "getLockedAudioRepresentations",
1291
+ value: function getLockedAudioRepresentations(periodObj) {
1292
+ var storedSettings = periodObj.audio.storedSettings;
1293
+ if ((0, _is_null_or_undefined.default)(storedSettings)) {
1294
+ return null;
1194
1295
  }
1296
+ var lastLockedSettings = storedSettings.lockedRepresentations.getValue();
1297
+ return lastLockedSettings === null ? null : lastLockedSettings.representationIds;
1195
1298
  }
1196
- }
1197
- // Clone the current Period list to not be influenced if Periods are removed
1198
- // or added while the loop is running.
1199
- var sliced = this._storedPeriodInfo.slice();
1200
- for (var i = 0; i < sliced.length; i++) {
1201
- var period = sliced[i].period;
1202
- var videoItem = sliced[i].video;
1203
- var storedSettings = videoItem.storedSettings;
1204
- if (storedSettings !== undefined) {
1205
- this.trigger("trackUpdate", {
1206
- period: toExposedPeriod(period),
1207
- trackType: "video",
1208
- reason: reason,
1209
- });
1210
- // The previous event trigger could have had side-effects, so we
1211
- // re-check if we're still mostly in the same state
1212
- if (this._isDisposed) {
1213
- return; // Someone disposed the `TracksStore` on the previous side-effect
1299
+ },
1300
+ {
1301
+ key: "getLockedVideoRepresentations",
1302
+ value: function getLockedVideoRepresentations(periodObj) {
1303
+ var storedSettings = periodObj.video.storedSettings;
1304
+ if ((0, _is_null_or_undefined.default)(storedSettings)) {
1305
+ return null;
1214
1306
  }
1215
- var newPeriodItem = getPeriodItem(this._storedPeriodInfo, period.id);
1216
- if (newPeriodItem !== undefined &&
1217
- newPeriodItem.isPeriodAdvertised &&
1218
- newPeriodItem.video.storedSettings === storedSettings) {
1219
- (_a = newPeriodItem.video.dispatcher) === null || _a === void 0 ? void 0 : _a.updateTrack(storedSettings);
1220
- }
1221
- }
1222
- }
1223
- };
1224
- TracksStore.prototype._removePeriodObject = function (index) {
1225
- (0, assert_1.default)(index < this._storedPeriodInfo.length);
1226
- var oldPeriodItem = this._storedPeriodInfo[index];
1227
- this._storedPeriodInfo[index].isRemoved = true;
1228
- this._storedPeriodInfo.splice(index, 1);
1229
- this._cachedPeriodInfo.set(oldPeriodItem.period, oldPeriodItem);
1230
- };
1231
- TracksStore.prototype._getRepresentationsToLock = function (adaptation, representationIds) {
1232
- var filtered = representationIds.reduce(function (acc, repId) {
1233
- var foundRep = (0, array_find_1.default)(adaptation.representations, function (r) {
1234
- return r.id === repId;
1235
- });
1236
- if (foundRep === undefined) {
1237
- log_1.default.warn("Track", "Wanted locked Representation not found.");
1307
+ var lastLockedSettings = storedSettings.lockedRepresentations.getValue();
1308
+ return lastLockedSettings === null ? null : lastLockedSettings.representationIds;
1238
1309
  }
1239
- else {
1240
- acc.push(foundRep.id);
1241
- }
1242
- return acc;
1243
- }, []);
1244
- if (filtered.length === 0) {
1245
- throw new Error("Cannot lock Representations: " + "None of the given Representation id are found");
1246
- }
1247
- return filtered;
1248
- };
1249
- /**
1250
- * Check or re-check all Periods for which both an initial track can be chosen
1251
- * and for which the `newAvailablePeriods` event can be triggered.
1252
- */
1253
- TracksStore.prototype._selectInitialTrackIfNeeded = function () {
1254
- var e_5, _a, e_6, _b, e_7, _c;
1255
- var _d, _e, _f, _g;
1256
- var DEFAULT_VIDEO_TRACK_SWITCHING_MODE = config_1.default.getCurrent().DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
1257
- var periodsToAdvertise = [];
1258
- var toDispatchTrack = [];
1259
- var _loop_2 = function (trackStorePeriod) {
1260
- var period = trackStorePeriod.period;
1261
- if (trackStorePeriod.audio.storedSettings !== undefined &&
1262
- trackStorePeriod.video.storedSettings !== undefined &&
1263
- trackStorePeriod.text.storedSettings !== undefined) {
1264
- return "continue";
1265
- }
1266
- var adaptations = __spreadArray(__spreadArray([], __read(((_d = period.adaptations.audio) !== null && _d !== void 0 ? _d : [])), false), __read(((_e = period.adaptations.video) !== null && _e !== void 0 ? _e : [])), false);
1267
- var hasCodecWithUndefinedSupport = adaptations.every(function (a) { return a.supportStatus.hasCodecWithUndefinedSupport; });
1268
- if (adaptations.length > 0 && hasCodecWithUndefinedSupport) {
1269
- return "continue";
1310
+ },
1311
+ {
1312
+ key: "lockAudioRepresentations",
1313
+ value: function lockAudioRepresentations(periodObj, lockSettings) {
1314
+ var _a;
1315
+ var storedSettings = periodObj.audio.storedSettings;
1316
+ if ((0, _is_null_or_undefined.default)(storedSettings)) {
1317
+ return;
1318
+ }
1319
+ var DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE = _config.default.getCurrent().DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE;
1320
+ var filtered = this._getRepresentationsToLock(storedSettings.adaptation, lockSettings.representations);
1321
+ var switchingMode = (_a = lockSettings.switchingMode) !== null && _a !== void 0 ? _a : DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE;
1322
+ storedSettings.lockedRepresentations.setValue({
1323
+ representationIds: filtered,
1324
+ switchingMode: switchingMode
1325
+ });
1270
1326
  }
1271
- var audioAdaptation = (0, manifest_1.getSupportedAdaptations)(period, "audio")[0];
1272
- if (audioAdaptation === undefined) {
1273
- trackStorePeriod.audio.storedSettings = null;
1274
- this_2.handleMissingOrUnplayableTrack(period, "audio", true);
1275
- if (this_2._isDisposed) {
1276
- return { value: void 0 };
1327
+ },
1328
+ {
1329
+ key: "lockVideoRepresentations",
1330
+ value: function lockVideoRepresentations(periodObj, lockSettings) {
1331
+ var _a;
1332
+ var storedSettings = periodObj.video.storedSettings;
1333
+ if ((0, _is_null_or_undefined.default)(storedSettings)) {
1334
+ return;
1277
1335
  }
1336
+ var DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE = _config.default.getCurrent().DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE;
1337
+ var filtered = this._getRepresentationsToLock(storedSettings.adaptation, lockSettings.representations);
1338
+ var switchingMode = (_a = lockSettings.switchingMode) !== null && _a !== void 0 ? _a : DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE;
1339
+ storedSettings.lockedRepresentations.setValue({
1340
+ representationIds: filtered,
1341
+ switchingMode: switchingMode
1342
+ });
1278
1343
  }
1279
- else {
1280
- trackStorePeriod.audio.storedSettings = {
1281
- adaptation: audioAdaptation,
1282
- switchingMode: this_2._defaultAudioTrackSwitchingMode,
1283
- lockedRepresentations: new reference_1.default(null),
1284
- };
1344
+ },
1345
+ {
1346
+ key: "unlockAudioRepresentations",
1347
+ value: function unlockAudioRepresentations(periodObj) {
1348
+ var storedSettings = periodObj.audio.storedSettings;
1349
+ if ((0, _is_null_or_undefined.default)(storedSettings) || storedSettings.lockedRepresentations.getValue() === null) {
1350
+ return;
1351
+ }
1352
+ storedSettings.lockedRepresentations.setValue(null);
1285
1353
  }
1286
- var baseVideoAdaptation = (0, manifest_1.getSupportedAdaptations)(period, "video")[0];
1287
- if (baseVideoAdaptation === undefined) {
1288
- trackStorePeriod.video.storedSettings = null;
1289
- this_2.handleMissingOrUnplayableTrack(period, "video", true);
1290
- if (this_2._isDisposed) {
1291
- return { value: void 0 };
1354
+ },
1355
+ {
1356
+ key: "unlockVideoRepresentations",
1357
+ value: function unlockVideoRepresentations(periodObj) {
1358
+ var storedSettings = periodObj.video.storedSettings;
1359
+ if ((0, _is_null_or_undefined.default)(storedSettings) || storedSettings.lockedRepresentations.getValue() === null) {
1360
+ return;
1292
1361
  }
1362
+ storedSettings.lockedRepresentations.setValue(null);
1293
1363
  }
1294
- else {
1295
- var videoAdaptation = getRightVideoTrack(baseVideoAdaptation, this_2._isTrickModeTrackEnabled);
1296
- trackStorePeriod.video.storedSettings = {
1297
- adaptation: videoAdaptation,
1298
- adaptationBase: baseVideoAdaptation,
1299
- switchingMode: DEFAULT_VIDEO_TRACK_SWITCHING_MODE,
1300
- lockedRepresentations: new reference_1.default(null),
1301
- };
1364
+ },
1365
+ {
1366
+ key: "dispose",
1367
+ value: function dispose() {
1368
+ this._isDisposed = true;
1369
+ while(true){
1370
+ var lastPeriod = this._storedPeriodInfo.pop();
1371
+ if (lastPeriod === undefined) {
1372
+ return;
1373
+ }
1374
+ lastPeriod.isRemoved = true;
1375
+ }
1302
1376
  }
1303
- var textAdaptation = null;
1304
- var forcedSubtitles = ((_f = period.adaptations.text) !== null && _f !== void 0 ? _f : []).filter(function (ad) { return ad.isForcedSubtitles === true; });
1305
- if (forcedSubtitles.length > 0) {
1306
- if (audioAdaptation !== null && audioAdaptation !== undefined) {
1307
- var sameLanguage = (0, array_find_1.default)(forcedSubtitles, function (f) { return f.normalizedLanguage === audioAdaptation.normalizedLanguage; });
1308
- if (sameLanguage !== undefined) {
1309
- textAdaptation = sameLanguage;
1377
+ },
1378
+ {
1379
+ key: "_resetVideoTrackChoices",
1380
+ value: function _resetVideoTrackChoices(reason) {
1381
+ var _a;
1382
+ for(var i = 0; i < this._storedPeriodInfo.length; i++){
1383
+ var periodObj = this._storedPeriodInfo[i];
1384
+ if (!(0, _is_null_or_undefined.default)(periodObj.video.storedSettings)) {
1385
+ var chosenBaseTrack = periodObj.video.storedSettings.adaptationBase;
1386
+ if (chosenBaseTrack !== null) {
1387
+ var chosenTrack = getRightVideoTrack(chosenBaseTrack, this._isTrickModeTrackEnabled);
1388
+ periodObj.video.storedSettings.adaptationBase = chosenBaseTrack;
1389
+ periodObj.video.storedSettings.adaptation = chosenTrack;
1390
+ }
1310
1391
  }
1311
1392
  }
1312
- if (textAdaptation === null) {
1313
- textAdaptation =
1314
- (_g = (0, array_find_1.default)(forcedSubtitles, function (f) { return f.normalizedLanguage === undefined; })) !== null && _g !== void 0 ? _g : null;
1393
+ // Clone the current Period list to not be influenced if Periods are removed
1394
+ // or added while the loop is running.
1395
+ var sliced = this._storedPeriodInfo.slice();
1396
+ for(var i1 = 0; i1 < sliced.length; i1++){
1397
+ var period = sliced[i1].period;
1398
+ var videoItem = sliced[i1].video;
1399
+ var storedSettings = videoItem.storedSettings;
1400
+ if (storedSettings !== undefined) {
1401
+ this.trigger("trackUpdate", {
1402
+ period: toExposedPeriod(period),
1403
+ trackType: "video",
1404
+ reason: reason
1405
+ });
1406
+ // The previous event trigger could have had side-effects, so we
1407
+ // re-check if we're still mostly in the same state
1408
+ if (this._isDisposed) {
1409
+ return; // Someone disposed the `TracksStore` on the previous side-effect
1410
+ }
1411
+ var newPeriodItem = getPeriodItem(this._storedPeriodInfo, period.id);
1412
+ if (newPeriodItem !== undefined && newPeriodItem.isPeriodAdvertised && newPeriodItem.video.storedSettings === storedSettings) {
1413
+ (_a = newPeriodItem.video.dispatcher) === null || _a === void 0 ? void 0 : _a.updateTrack(storedSettings);
1414
+ }
1415
+ }
1315
1416
  }
1316
1417
  }
1317
- trackStorePeriod.text.storedSettings =
1318
- textAdaptation === null
1319
- ? null
1320
- : {
1321
- adaptation: textAdaptation,
1322
- switchingMode: "direct",
1323
- lockedRepresentations: new reference_1.default(null),
1324
- };
1325
- toDispatchTrack.push(trackStorePeriod);
1326
- if (this_2._shouldAdvertisePeriod(trackStorePeriod)) {
1327
- trackStorePeriod.isPeriodAdvertised = true;
1328
- periodsToAdvertise.push({ id: period.id, start: period.start, end: period.end });
1329
- }
1330
- };
1331
- var this_2 = this;
1332
- try {
1333
- for (var _h = __values(this._storedPeriodInfo), _j = _h.next(); !_j.done; _j = _h.next()) {
1334
- var trackStorePeriod = _j.value;
1335
- var state_2 = _loop_2(trackStorePeriod);
1336
- if (typeof state_2 === "object")
1337
- return state_2.value;
1418
+ },
1419
+ {
1420
+ key: "_removePeriodObject",
1421
+ value: function _removePeriodObject(index) {
1422
+ (0, _assert.default)(index < this._storedPeriodInfo.length);
1423
+ var oldPeriodItem = this._storedPeriodInfo[index];
1424
+ this._storedPeriodInfo[index].isRemoved = true;
1425
+ this._storedPeriodInfo.splice(index, 1);
1426
+ this._cachedPeriodInfo.set(oldPeriodItem.period, oldPeriodItem);
1338
1427
  }
1339
- }
1340
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
1341
- finally {
1342
- try {
1343
- if (_j && !_j.done && (_a = _h.return)) _a.call(_h);
1344
- }
1345
- finally { if (e_5) throw e_5.error; }
1346
- }
1347
- if (periodsToAdvertise.length > 0) {
1348
- this.trigger("newAvailablePeriods", periodsToAdvertise);
1349
- if (this._isDisposed) {
1350
- return;
1351
- }
1352
- }
1353
- try {
1354
- for (var toDispatchTrack_1 = __values(toDispatchTrack), toDispatchTrack_1_1 = toDispatchTrack_1.next(); !toDispatchTrack_1_1.done; toDispatchTrack_1_1 = toDispatchTrack_1.next()) {
1355
- var trackStorePeriod = toDispatchTrack_1_1.value;
1356
- if (!trackStorePeriod.isPeriodAdvertised) {
1357
- continue;
1428
+ },
1429
+ {
1430
+ key: "_getRepresentationsToLock",
1431
+ value: function _getRepresentationsToLock(adaptation, representationIds) {
1432
+ var filtered = representationIds.reduce(function(acc, repId) {
1433
+ var foundRep = (0, _array_find.default)(adaptation.representations, function(r) {
1434
+ return r.id === repId;
1435
+ });
1436
+ if (foundRep === undefined) {
1437
+ _log.default.warn("Track", "Wanted locked Representation not found.");
1438
+ } else {
1439
+ acc.push(foundRep.id);
1440
+ }
1441
+ return acc;
1442
+ }, []);
1443
+ if (filtered.length === 0) {
1444
+ throw new Error("Cannot lock Representations: " + "None of the given Representation id are found");
1358
1445
  }
1359
- var bufferTypes = ["audio", "video", "text"];
1446
+ return filtered;
1447
+ }
1448
+ },
1449
+ {
1450
+ /**
1451
+ * Check or re-check all Periods for which both an initial track can be chosen
1452
+ * and for which the `newAvailablePeriods` event can be triggered.
1453
+ */ key: "_selectInitialTrackIfNeeded",
1454
+ value: function _selectInitialTrackIfNeeded() {
1455
+ var _a, _b, _c, _d;
1456
+ var DEFAULT_VIDEO_TRACK_SWITCHING_MODE = _config.default.getCurrent().DEFAULT_VIDEO_TRACK_SWITCHING_MODE;
1457
+ var periodsToAdvertise = [];
1458
+ var toDispatchTrack = [];
1459
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
1360
1460
  try {
1361
- for (var bufferTypes_1 = (e_7 = void 0, __values(bufferTypes)), bufferTypes_1_1 = bufferTypes_1.next(); !bufferTypes_1_1.done; bufferTypes_1_1 = bufferTypes_1.next()) {
1362
- var bufferType = bufferTypes_1_1.value;
1363
- var trackInfo = trackStorePeriod[bufferType];
1364
- if (trackInfo.dispatcher !== null &&
1365
- trackInfo.storedSettings !== undefined &&
1366
- !trackInfo.dispatcher.hasSetTrack()) {
1367
- trackInfo.dispatcher.updateTrack(trackInfo.storedSettings);
1368
- if (this._isDisposed) {
1369
- return;
1461
+ var _this, _loop = function() {
1462
+ var trackStorePeriod = _step.value;
1463
+ var period = trackStorePeriod.period;
1464
+ if (trackStorePeriod.audio.storedSettings !== undefined && trackStorePeriod.video.storedSettings !== undefined && trackStorePeriod.text.storedSettings !== undefined) {
1465
+ // already processed, continue
1466
+ return "continue";
1467
+ }
1468
+ var adaptations = _to_consumable_array((_a = period.adaptations.audio) !== null && _a !== void 0 ? _a : []).concat(_to_consumable_array((_b = period.adaptations.video) !== null && _b !== void 0 ? _b : []));
1469
+ var hasCodecWithUndefinedSupport = adaptations.every(function(a) {
1470
+ return a.supportStatus.hasCodecWithUndefinedSupport;
1471
+ });
1472
+ if (adaptations.length > 0 && hasCodecWithUndefinedSupport) {
1473
+ // Not all codecs for that Period are known yet.
1474
+ // Await until this is the case.
1475
+ return "continue";
1476
+ }
1477
+ var audioAdaptation = (0, _index1.getSupportedAdaptations)(period, "audio")[0];
1478
+ if (audioAdaptation === undefined) {
1479
+ trackStorePeriod.audio.storedSettings = null;
1480
+ _this.handleMissingOrUnplayableTrack(period, "audio", true);
1481
+ if (_this._isDisposed) {
1482
+ return {
1483
+ v: void void 0
1484
+ };
1485
+ }
1486
+ } else {
1487
+ trackStorePeriod.audio.storedSettings = {
1488
+ adaptation: audioAdaptation,
1489
+ switchingMode: _this._defaultAudioTrackSwitchingMode,
1490
+ lockedRepresentations: new _reference.default(null)
1491
+ };
1492
+ }
1493
+ var baseVideoAdaptation = (0, _index1.getSupportedAdaptations)(period, "video")[0];
1494
+ if (baseVideoAdaptation === undefined) {
1495
+ trackStorePeriod.video.storedSettings = null;
1496
+ _this.handleMissingOrUnplayableTrack(period, "video", true);
1497
+ if (_this._isDisposed) {
1498
+ return {
1499
+ v: void void 0
1500
+ };
1501
+ }
1502
+ } else {
1503
+ var videoAdaptation = getRightVideoTrack(baseVideoAdaptation, _this._isTrickModeTrackEnabled);
1504
+ trackStorePeriod.video.storedSettings = {
1505
+ adaptation: videoAdaptation,
1506
+ adaptationBase: baseVideoAdaptation,
1507
+ switchingMode: DEFAULT_VIDEO_TRACK_SWITCHING_MODE,
1508
+ lockedRepresentations: new _reference.default(null)
1509
+ };
1510
+ }
1511
+ var textAdaptation = null;
1512
+ var forcedSubtitles = ((_c = period.adaptations.text) !== null && _c !== void 0 ? _c : []).filter(function(ad) {
1513
+ return ad.isForcedSubtitles === true;
1514
+ });
1515
+ if (forcedSubtitles.length > 0) {
1516
+ if (audioAdaptation !== null && audioAdaptation !== undefined) {
1517
+ var sameLanguage = (0, _array_find.default)(forcedSubtitles, function(f) {
1518
+ return f.normalizedLanguage === audioAdaptation.normalizedLanguage;
1519
+ });
1520
+ if (sameLanguage !== undefined) {
1521
+ textAdaptation = sameLanguage;
1522
+ }
1523
+ }
1524
+ if (textAdaptation === null) {
1525
+ textAdaptation = (_d = (0, _array_find.default)(forcedSubtitles, function(f) {
1526
+ return f.normalizedLanguage === undefined;
1527
+ })) !== null && _d !== void 0 ? _d : null;
1370
1528
  }
1371
1529
  }
1530
+ trackStorePeriod.text.storedSettings = textAdaptation === null ? null : {
1531
+ adaptation: textAdaptation,
1532
+ switchingMode: "direct",
1533
+ lockedRepresentations: new _reference.default(null)
1534
+ };
1535
+ toDispatchTrack.push(trackStorePeriod);
1536
+ if (_this._shouldAdvertisePeriod(trackStorePeriod)) {
1537
+ trackStorePeriod.isPeriodAdvertised = true;
1538
+ periodsToAdvertise.push({
1539
+ id: period.id,
1540
+ start: period.start,
1541
+ end: period.end
1542
+ });
1543
+ }
1544
+ };
1545
+ for(var _iterator = this._storedPeriodInfo[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
1546
+ var _ret = (_this = this, _loop());
1547
+ if (_type_of(_ret) === "object") return _ret.v;
1548
+ }
1549
+ } catch (err) {
1550
+ _didIteratorError = true;
1551
+ _iteratorError = err;
1552
+ } finally{
1553
+ try {
1554
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
1555
+ _iterator.return();
1556
+ }
1557
+ } finally{
1558
+ if (_didIteratorError) {
1559
+ throw _iteratorError;
1560
+ }
1372
1561
  }
1373
1562
  }
1374
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
1375
- finally {
1563
+ if (periodsToAdvertise.length > 0) {
1564
+ this.trigger("newAvailablePeriods", periodsToAdvertise);
1565
+ if (this._isDisposed) {
1566
+ return;
1567
+ }
1568
+ }
1569
+ var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;
1570
+ try {
1571
+ for(var _iterator1 = toDispatchTrack[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){
1572
+ var trackStorePeriod = _step1.value;
1573
+ if (!trackStorePeriod.isPeriodAdvertised) {
1574
+ continue;
1575
+ }
1576
+ var bufferTypes = [
1577
+ "audio",
1578
+ "video",
1579
+ "text"
1580
+ ];
1581
+ var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = undefined;
1582
+ try {
1583
+ for(var _iterator2 = bufferTypes[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true){
1584
+ var bufferType = _step2.value;
1585
+ var trackInfo = trackStorePeriod[bufferType];
1586
+ if (trackInfo.dispatcher !== null && trackInfo.storedSettings !== undefined && !trackInfo.dispatcher.hasSetTrack()) {
1587
+ trackInfo.dispatcher.updateTrack(trackInfo.storedSettings);
1588
+ if (this._isDisposed) {
1589
+ return;
1590
+ }
1591
+ }
1592
+ }
1593
+ } catch (err) {
1594
+ _didIteratorError2 = true;
1595
+ _iteratorError2 = err;
1596
+ } finally{
1597
+ try {
1598
+ if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
1599
+ _iterator2.return();
1600
+ }
1601
+ } finally{
1602
+ if (_didIteratorError2) {
1603
+ throw _iteratorError2;
1604
+ }
1605
+ }
1606
+ }
1607
+ }
1608
+ } catch (err) {
1609
+ _didIteratorError1 = true;
1610
+ _iteratorError1 = err;
1611
+ } finally{
1376
1612
  try {
1377
- if (bufferTypes_1_1 && !bufferTypes_1_1.done && (_c = bufferTypes_1.return)) _c.call(bufferTypes_1);
1613
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
1614
+ _iterator1.return();
1615
+ }
1616
+ } finally{
1617
+ if (_didIteratorError1) {
1618
+ throw _iteratorError1;
1619
+ }
1378
1620
  }
1379
- finally { if (e_7) throw e_7.error; }
1380
1621
  }
1381
1622
  }
1382
- }
1383
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
1384
- finally {
1385
- try {
1386
- if (toDispatchTrack_1_1 && !toDispatchTrack_1_1.done && (_b = toDispatchTrack_1.return)) _b.call(toDispatchTrack_1);
1387
- }
1388
- finally { if (e_6) throw e_6.error; }
1389
- }
1390
- };
1391
- /**
1623
+ },
1624
+ {
1625
+ /**
1392
1626
  * Returns `true` once a Period can be advertised through a `newAvailablePeriods`
1393
1627
  * event, after which track can begin to be set and updated.
1394
1628
  * @param {Object} periodObj
1395
1629
  * @returns {boolean}
1396
- */
1397
- TracksStore.prototype._shouldAdvertisePeriod = function (periodObj) {
1398
- return (!periodObj.isPeriodAdvertised &&
1399
- this._isPeriodTypeReadyForAdvertisement(periodObj, "text") &&
1400
- this._isPeriodTypeReadyForAdvertisement(periodObj, "video") &&
1401
- this._isPeriodTypeReadyForAdvertisement(periodObj, "audio"));
1402
- };
1403
- /**
1630
+ */ key: "_shouldAdvertisePeriod",
1631
+ value: function _shouldAdvertisePeriod(periodObj) {
1632
+ return !periodObj.isPeriodAdvertised && this._isPeriodTypeReadyForAdvertisement(periodObj, "text") && this._isPeriodTypeReadyForAdvertisement(periodObj, "video") && this._isPeriodTypeReadyForAdvertisement(periodObj, "audio");
1633
+ }
1634
+ },
1635
+ {
1636
+ /**
1404
1637
  * Returns `true` if the given type is ready for Period advertisement.
1405
1638
  *
1406
1639
  * We only wait for dispatchers that can actually be created in the current
1407
1640
  * runtime. Types disabled through feature selection or media element
1408
1641
  * capabilities should not keep the Period hidden forever.
1409
- */
1410
- TracksStore.prototype._isPeriodTypeReadyForAdvertisement = function (periodObj, bufferType) {
1411
- return (!this._handledTrackTypes[bufferType] || periodObj[bufferType].dispatcher !== null);
1412
- };
1642
+ */ key: "_isPeriodTypeReadyForAdvertisement",
1643
+ value: function _isPeriodTypeReadyForAdvertisement(periodObj, bufferType) {
1644
+ return !this._handledTrackTypes[bufferType] || periodObj[bufferType].dispatcher !== null;
1645
+ }
1646
+ }
1647
+ ]);
1413
1648
  return TracksStore;
1414
- }(event_emitter_1.default));
1415
- exports.default = TracksStore;
1649
+ }(_event_emitter.default);
1416
1650
  /**
1417
1651
  * Returns element in the given `periods` Array that corresponds to the
1418
1652
  * `period` given.
@@ -1420,9 +1654,8 @@ exports.default = TracksStore;
1420
1654
  * @param {Object} periods
1421
1655
  * @param {string} periodId
1422
1656
  * @returns {Object|undefined}
1423
- */
1424
- function getPeriodItem(periods, periodId) {
1425
- for (var i = 0; i < periods.length; i++) {
1657
+ */ function getPeriodItem(periods, periodId) {
1658
+ for(var i = 0; i < periods.length; i++){
1426
1659
  var periodI = periods[i];
1427
1660
  if (periodI.period.id === periodId) {
1428
1661
  return periodI;
@@ -1434,13 +1667,9 @@ function getPeriodItem(periods, periodId) {
1434
1667
  * do not exist anymore, to keep the possibility of making track choices.
1435
1668
  * @param {Object} periodObj
1436
1669
  * @returns {boolean}
1437
- */
1438
- function isPeriodItemRemovable(periodObj) {
1670
+ */ function isPeriodItemRemovable(periodObj) {
1439
1671
  var _a, _b, _c;
1440
- return (!periodObj.inManifest &&
1441
- ((_a = periodObj.text) === null || _a === void 0 ? void 0 : _a.dispatcher) === null &&
1442
- ((_b = periodObj.audio) === null || _b === void 0 ? void 0 : _b.dispatcher) === null &&
1443
- ((_c = periodObj.video) === null || _c === void 0 ? void 0 : _c.dispatcher) === null);
1672
+ return !periodObj.inManifest && ((_a = periodObj.text) === null || _a === void 0 ? void 0 : _a.dispatcher) === null && ((_b = periodObj.audio) === null || _b === void 0 ? void 0 : _b.dispatcher) === null && ((_c = periodObj.video) === null || _c === void 0 ? void 0 : _c.dispatcher) === null;
1444
1673
  }
1445
1674
  function getRightVideoTrack(adaptation, isTrickModeEnabled) {
1446
1675
  var _a;
@@ -1455,20 +1684,32 @@ function getRightVideoTrack(adaptation, isTrickModeEnabled) {
1455
1684
  * @param {Object} period
1456
1685
  * @param {boolean} inManifest
1457
1686
  * @returns {object}
1458
- */
1459
- function generatePeriodInfo(period, inManifest) {
1687
+ */ function generatePeriodInfo(period, inManifest) {
1460
1688
  return {
1461
1689
  period: period,
1462
1690
  inManifest: inManifest,
1463
1691
  isPeriodAdvertised: false,
1464
1692
  isRemoved: false,
1465
- audio: { storedSettings: undefined, dispatcher: null },
1466
- video: { storedSettings: undefined, dispatcher: null },
1467
- text: { storedSettings: undefined, dispatcher: null },
1693
+ audio: {
1694
+ storedSettings: undefined,
1695
+ dispatcher: null
1696
+ },
1697
+ video: {
1698
+ storedSettings: undefined,
1699
+ dispatcher: null
1700
+ },
1701
+ text: {
1702
+ storedSettings: undefined,
1703
+ dispatcher: null
1704
+ }
1468
1705
  };
1469
1706
  }
1470
1707
  function toExposedPeriod(p) {
1471
- return { start: p.start, end: p.end, id: p.id };
1708
+ return {
1709
+ start: p.start,
1710
+ end: p.end,
1711
+ id: p.id
1712
+ };
1472
1713
  }
1473
1714
  /**
1474
1715
  * Retrieves a fallback track for the given period and track type.
@@ -1479,30 +1720,29 @@ function toExposedPeriod(p) {
1479
1720
  * @param {Object} period - The period object that contains information about the available tracks.
1480
1721
  * @param {string} trackType - The type of media track to fallback to (e.g., "audio", "video", "text").
1481
1722
  * @returns {object|null} A fallback track matching the type, or `null` if none is available.
1482
- */
1483
- function getFallbackTrack(period, trackType) {
1484
- var periodHasAdaptationForType = period.adaptations[trackType] !== undefined &&
1485
- period.adaptations[trackType].length > 0;
1723
+ */ function getFallbackTrack(period, trackType) {
1724
+ var periodHasAdaptationForType = period.adaptations[trackType] !== undefined && period.adaptations[trackType].length > 0;
1486
1725
  if (!periodHasAdaptationForType) {
1487
1726
  return {
1488
1727
  fallbackTrack: null,
1489
- noSourceMedia: true,
1728
+ noSourceMedia: true
1490
1729
  };
1491
1730
  }
1492
1731
  var firstPlayableAdaptation = findFirstPlayableAdaptation(period, trackType);
1493
1732
  return {
1494
1733
  fallbackTrack: firstPlayableAdaptation !== null && firstPlayableAdaptation !== void 0 ? firstPlayableAdaptation : null,
1495
- noSourceMedia: false,
1734
+ noSourceMedia: false
1496
1735
  };
1497
1736
  }
1498
1737
  function findFirstPlayableAdaptation(period, type) {
1499
1738
  var _a;
1500
- var firstPlayableAdaptation = (0, array_find_1.default)((_a = period.adaptations[type]) !== null && _a !== void 0 ? _a : [], function (adaptation) {
1501
- if (adaptation.supportStatus.hasSupportedCodec === false ||
1502
- adaptation.supportStatus.isDecipherable === false) {
1739
+ var firstPlayableAdaptation = (0, _array_find.default)((_a = period.adaptations[type]) !== null && _a !== void 0 ? _a : [], function(adaptation) {
1740
+ if (adaptation.supportStatus.hasSupportedCodec === false || adaptation.supportStatus.isDecipherable === false) {
1503
1741
  return false;
1504
1742
  }
1505
- var playableRepresentations = adaptation.representations.filter(function (r) { return (0, manifest_1.isRepresentationPlayable)(r) === true; });
1743
+ var playableRepresentations = adaptation.representations.filter(function(r) {
1744
+ return (0, _index1.isRepresentationPlayable)(r) === true;
1745
+ });
1506
1746
  return playableRepresentations.length > 0;
1507
1747
  });
1508
1748
  return firstPlayableAdaptation;