rx-player 4.1.0-dev.2024040900 → 4.1.0-dev.2024070800

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 (3383) hide show
  1. package/CHANGELOG.md +37 -9
  2. package/VERSION +1 -1
  3. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.d.ts +1 -0
  4. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -0
  5. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
  6. package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts +1 -0
  7. package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts.map +1 -0
  8. package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +1 -1
  9. package/dist/commonjs/__GENERATED_CODE/index.d.ts +1 -1
  10. package/dist/commonjs/__GENERATED_CODE/index.d.ts.map +1 -0
  11. package/dist/commonjs/__GENERATED_CODE/index.js +1 -3
  12. package/dist/commonjs/compat/add_class_name.d.ts +1 -0
  13. package/dist/commonjs/compat/add_class_name.d.ts.map +1 -0
  14. package/dist/commonjs/compat/add_text_track.d.ts +1 -0
  15. package/dist/commonjs/compat/add_text_track.d.ts.map +1 -0
  16. package/dist/commonjs/compat/browser_compatibility_types.d.ts +3 -1
  17. package/dist/commonjs/compat/browser_compatibility_types.d.ts.map +1 -0
  18. package/dist/commonjs/compat/browser_detection.d.ts +1 -0
  19. package/dist/commonjs/compat/browser_detection.d.ts.map +1 -0
  20. package/dist/commonjs/compat/browser_version.d.ts +1 -0
  21. package/dist/commonjs/compat/browser_version.d.ts.map +1 -0
  22. package/dist/commonjs/compat/can_patch_isobmff.d.ts +1 -0
  23. package/dist/commonjs/compat/can_patch_isobmff.d.ts.map +1 -0
  24. package/dist/commonjs/compat/can_rely_on_request_media_key_system_access.d.ts +35 -0
  25. package/dist/commonjs/compat/can_rely_on_request_media_key_system_access.d.ts.map +1 -0
  26. package/dist/commonjs/compat/can_rely_on_request_media_key_system_access.js +44 -0
  27. package/dist/commonjs/compat/can_rely_on_video_visibility_and_size.d.ts +1 -0
  28. package/dist/commonjs/compat/can_rely_on_video_visibility_and_size.d.ts.map +1 -0
  29. package/dist/commonjs/compat/can_reuse_media_keys.d.ts +1 -0
  30. package/dist/commonjs/compat/can_reuse_media_keys.d.ts.map +1 -0
  31. package/dist/commonjs/compat/can_seek_directly_after_loaded_metadata.d.ts +1 -0
  32. package/dist/commonjs/compat/can_seek_directly_after_loaded_metadata.d.ts.map +1 -0
  33. package/dist/commonjs/compat/change_source_buffer_type.d.ts +1 -0
  34. package/dist/commonjs/compat/change_source_buffer_type.d.ts.map +1 -0
  35. package/dist/commonjs/compat/clear_element_src.d.ts +1 -0
  36. package/dist/commonjs/compat/clear_element_src.d.ts.map +1 -0
  37. package/dist/commonjs/compat/eme/close_session.d.ts +1 -0
  38. package/dist/commonjs/compat/eme/close_session.d.ts.map +1 -0
  39. package/dist/commonjs/compat/eme/constants.d.ts +1 -0
  40. package/dist/commonjs/compat/eme/constants.d.ts.map +1 -0
  41. package/dist/commonjs/compat/eme/custom_key_system_access.d.ts +1 -0
  42. package/dist/commonjs/compat/eme/custom_key_system_access.d.ts.map +1 -0
  43. package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts +1 -0
  44. package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts.map +1 -0
  45. package/dist/commonjs/compat/eme/custom_media_keys/index.d.ts +4 -2
  46. package/dist/commonjs/compat/eme/custom_media_keys/index.d.ts.map +1 -0
  47. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +1 -0
  48. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -0
  49. package/dist/commonjs/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts +1 -0
  50. package/dist/commonjs/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts.map +1 -0
  51. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +1 -0
  52. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -0
  53. package/dist/commonjs/compat/eme/custom_media_keys/types.d.ts +1 -0
  54. package/dist/commonjs/compat/eme/custom_media_keys/types.d.ts.map +1 -0
  55. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts +1 -0
  56. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -0
  57. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts +3 -1
  58. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts.map +1 -0
  59. package/dist/commonjs/compat/eme/eme-api-implementation.d.ts +1 -0
  60. package/dist/commonjs/compat/eme/eme-api-implementation.d.ts.map +1 -0
  61. package/dist/commonjs/compat/eme/generate_key_request.d.ts +1 -0
  62. package/dist/commonjs/compat/eme/generate_key_request.d.ts.map +1 -0
  63. package/dist/commonjs/compat/eme/get_init_data.d.ts +1 -0
  64. package/dist/commonjs/compat/eme/get_init_data.d.ts.map +1 -0
  65. package/dist/commonjs/compat/eme/get_uuid_kid_from_keystatus_kid.d.ts +1 -0
  66. package/dist/commonjs/compat/eme/get_uuid_kid_from_keystatus_kid.d.ts.map +1 -0
  67. package/dist/commonjs/compat/eme/get_webkit_fairplay_initdata.d.ts +1 -0
  68. package/dist/commonjs/compat/eme/get_webkit_fairplay_initdata.d.ts.map +1 -0
  69. package/dist/commonjs/compat/eme/index.d.ts +9 -5
  70. package/dist/commonjs/compat/eme/index.d.ts.map +1 -0
  71. package/dist/commonjs/compat/eme/load_session.d.ts +1 -0
  72. package/dist/commonjs/compat/eme/load_session.d.ts.map +1 -0
  73. package/dist/commonjs/compat/eme/set_media_keys.d.ts +1 -0
  74. package/dist/commonjs/compat/eme/set_media_keys.d.ts.map +1 -0
  75. package/dist/commonjs/compat/enable_audio_track.d.ts +1 -0
  76. package/dist/commonjs/compat/enable_audio_track.d.ts.map +1 -0
  77. package/dist/commonjs/compat/event_listeners.d.ts +1 -0
  78. package/dist/commonjs/compat/event_listeners.d.ts.map +1 -0
  79. package/dist/commonjs/compat/generate_init_data.d.ts +14 -0
  80. package/dist/commonjs/compat/generate_init_data.d.ts.map +1 -0
  81. package/dist/commonjs/compat/generate_init_data.js +60 -0
  82. package/dist/commonjs/compat/get_start_date.d.ts +1 -0
  83. package/dist/commonjs/compat/get_start_date.d.ts.map +1 -0
  84. package/dist/commonjs/compat/has_issues_with_high_media_source_duration.d.ts +1 -0
  85. package/dist/commonjs/compat/has_issues_with_high_media_source_duration.d.ts.map +1 -0
  86. package/dist/commonjs/compat/has_mse_in_worker.d.ts +1 -0
  87. package/dist/commonjs/compat/has_mse_in_worker.d.ts.map +1 -0
  88. package/dist/commonjs/compat/has_webassembly.d.ts +1 -0
  89. package/dist/commonjs/compat/has_webassembly.d.ts.map +1 -0
  90. package/dist/commonjs/compat/has_worker_api.d.ts +1 -0
  91. package/dist/commonjs/compat/has_worker_api.d.ts.map +1 -0
  92. package/dist/commonjs/compat/is_codec_supported.d.ts +1 -0
  93. package/dist/commonjs/compat/is_codec_supported.d.ts.map +1 -0
  94. package/dist/commonjs/compat/is_debug_mode_enabled.d.ts +1 -0
  95. package/dist/commonjs/compat/is_debug_mode_enabled.d.ts.map +1 -0
  96. package/dist/commonjs/compat/is_seeking_approximate.d.ts +1 -0
  97. package/dist/commonjs/compat/is_seeking_approximate.d.ts.map +1 -0
  98. package/dist/commonjs/compat/is_vtt_cue.d.ts +1 -0
  99. package/dist/commonjs/compat/is_vtt_cue.d.ts.map +1 -0
  100. package/dist/commonjs/compat/make_vtt_cue.d.ts +1 -0
  101. package/dist/commonjs/compat/make_vtt_cue.d.ts.map +1 -0
  102. package/dist/commonjs/compat/may_media_element_fail_on_undecipherable_data.d.ts +1 -0
  103. package/dist/commonjs/compat/may_media_element_fail_on_undecipherable_data.d.ts.map +1 -0
  104. package/dist/commonjs/compat/on_height_width_change.d.ts +1 -0
  105. package/dist/commonjs/compat/on_height_width_change.d.ts.map +1 -0
  106. package/dist/commonjs/compat/patch_webkit_source_buffer.d.ts +1 -0
  107. package/dist/commonjs/compat/patch_webkit_source_buffer.d.ts.map +1 -0
  108. package/dist/commonjs/compat/remove_cue.d.ts +1 -0
  109. package/dist/commonjs/compat/remove_cue.d.ts.map +1 -0
  110. package/dist/commonjs/compat/should_await_set_media_keys.d.ts +1 -0
  111. package/dist/commonjs/compat/should_await_set_media_keys.d.ts.map +1 -0
  112. package/dist/commonjs/compat/should_favour_custom_safari_EME.d.ts +1 -0
  113. package/dist/commonjs/compat/should_favour_custom_safari_EME.d.ts.map +1 -0
  114. package/dist/commonjs/compat/should_reload_media_source_on_decipherability_update.d.ts +1 -0
  115. package/dist/commonjs/compat/should_reload_media_source_on_decipherability_update.d.ts.map +1 -0
  116. package/dist/commonjs/compat/should_renew_media_key_system_access.d.ts +1 -0
  117. package/dist/commonjs/compat/should_renew_media_key_system_access.d.ts.map +1 -0
  118. package/dist/commonjs/compat/should_unset_media_keys.d.ts +1 -0
  119. package/dist/commonjs/compat/should_unset_media_keys.d.ts.map +1 -0
  120. package/dist/commonjs/compat/should_validate_metadata.d.ts +1 -0
  121. package/dist/commonjs/compat/should_validate_metadata.d.ts.map +1 -0
  122. package/dist/commonjs/compat/should_wait_for_data_before_loaded.d.ts +1 -0
  123. package/dist/commonjs/compat/should_wait_for_data_before_loaded.d.ts.map +1 -0
  124. package/dist/commonjs/compat/should_wait_for_have_enough_data.d.ts +1 -0
  125. package/dist/commonjs/compat/should_wait_for_have_enough_data.d.ts.map +1 -0
  126. package/dist/commonjs/config.d.ts +1 -0
  127. package/dist/commonjs/config.d.ts.map +1 -0
  128. package/dist/commonjs/core/adaptive/adaptive_representation_selector.d.ts +3 -2
  129. package/dist/commonjs/core/adaptive/adaptive_representation_selector.d.ts.map +1 -0
  130. package/dist/commonjs/core/adaptive/buffer_based_chooser.d.ts +1 -0
  131. package/dist/commonjs/core/adaptive/buffer_based_chooser.d.ts.map +1 -0
  132. package/dist/commonjs/core/adaptive/guess_based_chooser.d.ts +1 -0
  133. package/dist/commonjs/core/adaptive/guess_based_chooser.d.ts.map +1 -0
  134. package/dist/commonjs/core/adaptive/index.d.ts +4 -2
  135. package/dist/commonjs/core/adaptive/index.d.ts.map +1 -0
  136. package/dist/commonjs/core/adaptive/network_analyzer.d.ts +1 -0
  137. package/dist/commonjs/core/adaptive/network_analyzer.d.ts.map +1 -0
  138. package/dist/commonjs/core/adaptive/utils/bandwidth_estimator.d.ts +1 -0
  139. package/dist/commonjs/core/adaptive/utils/bandwidth_estimator.d.ts.map +1 -0
  140. package/dist/commonjs/core/adaptive/utils/ewma.d.ts +1 -0
  141. package/dist/commonjs/core/adaptive/utils/ewma.d.ts.map +1 -0
  142. package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.d.ts +1 -0
  143. package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.d.ts.map +1 -0
  144. package/dist/commonjs/core/adaptive/utils/filter_by_resolution.d.ts +1 -0
  145. package/dist/commonjs/core/adaptive/utils/filter_by_resolution.d.ts.map +1 -0
  146. package/dist/commonjs/core/adaptive/utils/get_buffer_levels.d.ts +1 -0
  147. package/dist/commonjs/core/adaptive/utils/get_buffer_levels.d.ts.map +1 -0
  148. package/dist/commonjs/core/adaptive/utils/last_estimate_storage.d.ts +1 -0
  149. package/dist/commonjs/core/adaptive/utils/last_estimate_storage.d.ts.map +1 -0
  150. package/dist/commonjs/core/adaptive/utils/pending_requests_store.d.ts +1 -0
  151. package/dist/commonjs/core/adaptive/utils/pending_requests_store.d.ts.map +1 -0
  152. package/dist/commonjs/core/adaptive/utils/representation_score_calculator.d.ts +1 -0
  153. package/dist/commonjs/core/adaptive/utils/representation_score_calculator.d.ts.map +1 -0
  154. package/dist/commonjs/core/adaptive/utils/select_optimal_representation.d.ts +1 -0
  155. package/dist/commonjs/core/adaptive/utils/select_optimal_representation.d.ts.map +1 -0
  156. package/dist/commonjs/core/fetchers/cdn_prioritizer.d.ts +1 -0
  157. package/dist/commonjs/core/fetchers/cdn_prioritizer.d.ts.map +1 -0
  158. package/dist/commonjs/core/fetchers/index.d.ts +7 -3
  159. package/dist/commonjs/core/fetchers/index.d.ts.map +1 -0
  160. package/dist/commonjs/core/fetchers/manifest/index.d.ts +4 -2
  161. package/dist/commonjs/core/fetchers/manifest/index.d.ts.map +1 -0
  162. package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.d.ts +1 -0
  163. package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.d.ts.map +1 -0
  164. package/dist/commonjs/core/fetchers/segment/index.d.ts +5 -3
  165. package/dist/commonjs/core/fetchers/segment/index.d.ts.map +1 -0
  166. package/dist/commonjs/core/fetchers/segment/initialization_segment_cache.d.ts +1 -0
  167. package/dist/commonjs/core/fetchers/segment/initialization_segment_cache.d.ts.map +1 -0
  168. package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.d.ts +1 -0
  169. package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.d.ts.map +1 -0
  170. package/dist/commonjs/core/fetchers/segment/segment_fetcher.d.ts +1 -0
  171. package/dist/commonjs/core/fetchers/segment/segment_fetcher.d.ts.map +1 -0
  172. package/dist/commonjs/core/fetchers/segment/segment_fetcher_creator.d.ts +1 -0
  173. package/dist/commonjs/core/fetchers/segment/segment_fetcher_creator.d.ts.map +1 -0
  174. package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts +1 -0
  175. package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts.map +1 -0
  176. package/dist/commonjs/core/fetchers/utils/error_selector.d.ts +1 -0
  177. package/dist/commonjs/core/fetchers/utils/error_selector.d.ts.map +1 -0
  178. package/dist/commonjs/core/fetchers/utils/schedule_request.d.ts +1 -0
  179. package/dist/commonjs/core/fetchers/utils/schedule_request.d.ts.map +1 -0
  180. package/dist/commonjs/core/main/common/DecipherabilityFreezeDetector.d.ts +1 -0
  181. package/dist/commonjs/core/main/common/DecipherabilityFreezeDetector.d.ts.map +1 -0
  182. package/dist/commonjs/core/main/common/content_time_boundaries_observer.d.ts +1 -0
  183. package/dist/commonjs/core/main/common/content_time_boundaries_observer.d.ts.map +1 -0
  184. package/dist/commonjs/core/main/common/content_time_boundaries_observer.js +41 -19
  185. package/dist/commonjs/core/main/common/create_content_time_boundaries_observer.d.ts +1 -0
  186. package/dist/commonjs/core/main/common/create_content_time_boundaries_observer.d.ts.map +1 -0
  187. package/dist/commonjs/core/main/common/get_buffered_data_per_media_buffer.d.ts +1 -0
  188. package/dist/commonjs/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +1 -0
  189. package/dist/commonjs/core/main/worker/content_preparer.d.ts +1 -0
  190. package/dist/commonjs/core/main/worker/content_preparer.d.ts.map +1 -0
  191. package/dist/commonjs/core/main/worker/globals.d.ts +1 -0
  192. package/dist/commonjs/core/main/worker/globals.d.ts.map +1 -0
  193. package/dist/commonjs/core/main/worker/index.d.ts +1 -0
  194. package/dist/commonjs/core/main/worker/index.d.ts.map +1 -0
  195. package/dist/commonjs/core/main/worker/send_message.d.ts +1 -0
  196. package/dist/commonjs/core/main/worker/send_message.d.ts.map +1 -0
  197. package/dist/commonjs/core/main/worker/track_choice_setter.d.ts +1 -0
  198. package/dist/commonjs/core/main/worker/track_choice_setter.d.ts.map +1 -0
  199. package/dist/commonjs/core/main/worker/worker_main.d.ts +1 -0
  200. package/dist/commonjs/core/main/worker/worker_main.d.ts.map +1 -0
  201. package/dist/commonjs/core/main/worker/worker_main.js +22 -0
  202. package/dist/commonjs/core/main/worker/worker_text_displayer_interface.d.ts +1 -0
  203. package/dist/commonjs/core/main/worker/worker_text_displayer_interface.d.ts.map +1 -0
  204. package/dist/commonjs/core/segment_sinks/garbage_collector.d.ts +1 -0
  205. package/dist/commonjs/core/segment_sinks/garbage_collector.d.ts.map +1 -0
  206. package/dist/commonjs/core/segment_sinks/garbage_collector.js +44 -24
  207. package/dist/commonjs/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.d.ts +1 -0
  208. package/dist/commonjs/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.d.ts.map +1 -0
  209. package/dist/commonjs/core/segment_sinks/implementations/audio_video/index.d.ts +1 -0
  210. package/dist/commonjs/core/segment_sinks/implementations/audio_video/index.d.ts.map +1 -0
  211. package/dist/commonjs/core/segment_sinks/implementations/index.d.ts +4 -2
  212. package/dist/commonjs/core/segment_sinks/implementations/index.d.ts.map +1 -0
  213. package/dist/commonjs/core/segment_sinks/implementations/text/index.d.ts +4 -2
  214. package/dist/commonjs/core/segment_sinks/implementations/text/index.d.ts.map +1 -0
  215. package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_buffer.d.ts +1 -0
  216. package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_buffer.d.ts.map +1 -0
  217. package/dist/commonjs/core/segment_sinks/implementations/types.d.ts +1 -0
  218. package/dist/commonjs/core/segment_sinks/implementations/types.d.ts.map +1 -0
  219. package/dist/commonjs/core/segment_sinks/implementations/utils/manual_time_ranges.d.ts +1 -0
  220. package/dist/commonjs/core/segment_sinks/implementations/utils/manual_time_ranges.d.ts.map +1 -0
  221. package/dist/commonjs/core/segment_sinks/index.d.ts +7 -3
  222. package/dist/commonjs/core/segment_sinks/index.d.ts.map +1 -0
  223. package/dist/commonjs/core/segment_sinks/inventory/buffered_history.d.ts +1 -0
  224. package/dist/commonjs/core/segment_sinks/inventory/buffered_history.d.ts.map +1 -0
  225. package/dist/commonjs/core/segment_sinks/inventory/index.d.ts +7 -4
  226. package/dist/commonjs/core/segment_sinks/inventory/index.d.ts.map +1 -0
  227. package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.d.ts +1 -0
  228. package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.d.ts.map +1 -0
  229. package/dist/commonjs/core/segment_sinks/inventory/types.d.ts +7 -1
  230. package/dist/commonjs/core/segment_sinks/inventory/types.d.ts.map +1 -0
  231. package/dist/commonjs/core/segment_sinks/inventory/utils.d.ts +1 -0
  232. package/dist/commonjs/core/segment_sinks/inventory/utils.d.ts.map +1 -0
  233. package/dist/commonjs/core/segment_sinks/inventory/utils.js +25 -3
  234. package/dist/commonjs/core/segment_sinks/segment_buffers_store.d.ts +26 -0
  235. package/dist/commonjs/core/segment_sinks/segment_buffers_store.d.ts.map +1 -0
  236. package/dist/commonjs/core/segment_sinks/segment_buffers_store.js +35 -0
  237. package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts +1 -0
  238. package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts.map +1 -0
  239. package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.d.ts +1 -0
  240. package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.d.ts.map +1 -0
  241. package/dist/commonjs/core/stream/adaptation/index.d.ts +1 -0
  242. package/dist/commonjs/core/stream/adaptation/index.d.ts.map +1 -0
  243. package/dist/commonjs/core/stream/adaptation/types.d.ts +1 -0
  244. package/dist/commonjs/core/stream/adaptation/types.d.ts.map +1 -0
  245. package/dist/commonjs/core/stream/index.d.ts +7 -5
  246. package/dist/commonjs/core/stream/index.d.ts.map +1 -0
  247. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.d.ts +1 -0
  248. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.d.ts.map +1 -0
  249. package/dist/commonjs/core/stream/orchestrator/index.d.ts +4 -2
  250. package/dist/commonjs/core/stream/orchestrator/index.d.ts.map +1 -0
  251. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts +1 -0
  252. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -0
  253. package/dist/commonjs/core/stream/period/index.d.ts +1 -0
  254. package/dist/commonjs/core/stream/period/index.d.ts.map +1 -0
  255. package/dist/commonjs/core/stream/period/period_stream.d.ts +1 -0
  256. package/dist/commonjs/core/stream/period/period_stream.d.ts.map +1 -0
  257. package/dist/commonjs/core/stream/period/types.d.ts +3 -2
  258. package/dist/commonjs/core/stream/period/types.d.ts.map +1 -0
  259. package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +1 -0
  260. package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.d.ts.map +1 -0
  261. package/dist/commonjs/core/stream/representation/index.d.ts +1 -0
  262. package/dist/commonjs/core/stream/representation/index.d.ts.map +1 -0
  263. package/dist/commonjs/core/stream/representation/representation_stream.d.ts +1 -0
  264. package/dist/commonjs/core/stream/representation/representation_stream.d.ts.map +1 -0
  265. package/dist/commonjs/core/stream/representation/types.d.ts +1 -0
  266. package/dist/commonjs/core/stream/representation/types.d.ts.map +1 -0
  267. package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.d.ts +1 -0
  268. package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.d.ts.map +1 -0
  269. package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.d.ts +1 -0
  270. package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.d.ts.map +1 -0
  271. package/dist/commonjs/core/stream/representation/utils/downloading_queue.d.ts +1 -0
  272. package/dist/commonjs/core/stream/representation/utils/downloading_queue.d.ts.map +1 -0
  273. package/dist/commonjs/core/stream/representation/utils/get_buffer_status.d.ts +1 -0
  274. package/dist/commonjs/core/stream/representation/utils/get_buffer_status.d.ts.map +1 -0
  275. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.d.ts +1 -0
  276. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.d.ts.map +1 -0
  277. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.js +38 -30
  278. package/dist/commonjs/core/stream/representation/utils/get_segment_priority.d.ts +1 -0
  279. package/dist/commonjs/core/stream/representation/utils/get_segment_priority.d.ts.map +1 -0
  280. package/dist/commonjs/core/stream/representation/utils/push_init_segment.d.ts +1 -0
  281. package/dist/commonjs/core/stream/representation/utils/push_init_segment.d.ts.map +1 -0
  282. package/dist/commonjs/core/stream/representation/utils/push_media_segment.d.ts +1 -0
  283. package/dist/commonjs/core/stream/representation/utils/push_media_segment.d.ts.map +1 -0
  284. package/dist/commonjs/core/types.d.ts +1 -0
  285. package/dist/commonjs/core/types.d.ts.map +1 -0
  286. package/dist/commonjs/default_config.d.ts +1 -0
  287. package/dist/commonjs/default_config.d.ts.map +1 -0
  288. package/dist/commonjs/errors/custom_loader_error.d.ts +1 -1
  289. package/dist/commonjs/errors/custom_loader_error.d.ts.map +1 -0
  290. package/dist/commonjs/errors/custom_loader_error.js +1 -2
  291. package/dist/commonjs/errors/encrypted_media_error.d.ts +1 -1
  292. package/dist/commonjs/errors/encrypted_media_error.d.ts.map +1 -0
  293. package/dist/commonjs/errors/encrypted_media_error.js +1 -2
  294. package/dist/commonjs/errors/error_codes.d.ts +1 -0
  295. package/dist/commonjs/errors/error_codes.d.ts.map +1 -0
  296. package/dist/commonjs/errors/error_message.d.ts +1 -0
  297. package/dist/commonjs/errors/error_message.d.ts.map +1 -0
  298. package/dist/commonjs/errors/format_error.d.ts +1 -0
  299. package/dist/commonjs/errors/format_error.d.ts.map +1 -0
  300. package/dist/commonjs/errors/index.d.ts +13 -6
  301. package/dist/commonjs/errors/index.d.ts.map +1 -0
  302. package/dist/commonjs/errors/is_known_error.d.ts +1 -0
  303. package/dist/commonjs/errors/is_known_error.d.ts.map +1 -0
  304. package/dist/commonjs/errors/media_error.d.ts +1 -1
  305. package/dist/commonjs/errors/media_error.d.ts.map +1 -0
  306. package/dist/commonjs/errors/media_error.js +1 -2
  307. package/dist/commonjs/errors/network_error.d.ts +1 -1
  308. package/dist/commonjs/errors/network_error.d.ts.map +1 -0
  309. package/dist/commonjs/errors/network_error.js +1 -2
  310. package/dist/commonjs/errors/other_error.d.ts +1 -1
  311. package/dist/commonjs/errors/other_error.d.ts.map +1 -0
  312. package/dist/commonjs/errors/other_error.js +1 -2
  313. package/dist/commonjs/errors/source_buffer_error.d.ts +1 -1
  314. package/dist/commonjs/errors/source_buffer_error.d.ts.map +1 -0
  315. package/dist/commonjs/errors/source_buffer_error.js +1 -2
  316. package/dist/commonjs/errors/worker_initialization_error.d.ts +1 -1
  317. package/dist/commonjs/errors/worker_initialization_error.d.ts.map +1 -0
  318. package/dist/commonjs/errors/worker_initialization_error.js +1 -2
  319. package/dist/commonjs/experimental/features/index.d.ts +1 -0
  320. package/dist/commonjs/experimental/features/index.d.ts.map +1 -0
  321. package/dist/commonjs/experimental/features/local.d.ts +1 -0
  322. package/dist/commonjs/experimental/features/local.d.ts.map +1 -0
  323. package/dist/commonjs/experimental/features/metaplaylist.d.ts +1 -0
  324. package/dist/commonjs/experimental/features/metaplaylist.d.ts.map +1 -0
  325. package/dist/commonjs/experimental/features/multi_thread.d.ts +1 -0
  326. package/dist/commonjs/experimental/features/multi_thread.d.ts.map +1 -0
  327. package/dist/commonjs/experimental/index.d.ts +1 -0
  328. package/dist/commonjs/experimental/index.d.ts.map +1 -0
  329. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +1 -0
  330. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.d.ts.map +1 -0
  331. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +1 -0
  332. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts.map +1 -0
  333. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.d.ts +1 -0
  334. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.d.ts.map +1 -0
  335. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +1 -0
  336. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts.map +1 -0
  337. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +1 -0
  338. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts.map +1 -0
  339. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +1 -0
  340. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts.map +1 -0
  341. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.d.ts +1 -0
  342. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.d.ts.map +1 -0
  343. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +1 -0
  344. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts.map +1 -0
  345. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +3 -3
  346. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +1 -1
  347. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts.map +1 -0
  348. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +2 -2
  349. package/dist/commonjs/experimental/tools/createMetaplaylist/get_duration_from_manifest.d.ts +1 -0
  350. package/dist/commonjs/experimental/tools/createMetaplaylist/get_duration_from_manifest.d.ts.map +1 -0
  351. package/dist/commonjs/experimental/tools/createMetaplaylist/index.d.ts +1 -0
  352. package/dist/commonjs/experimental/tools/createMetaplaylist/index.d.ts.map +1 -0
  353. package/dist/commonjs/experimental/tools/index.d.ts +1 -0
  354. package/dist/commonjs/experimental/tools/index.d.ts.map +1 -0
  355. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/index.d.ts +1 -0
  356. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/index.d.ts.map +1 -0
  357. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts +1 -0
  358. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts.map +1 -0
  359. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts +1 -0
  360. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts.map +1 -0
  361. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/index.d.ts +3 -2
  362. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/index.d.ts.map +1 -0
  363. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/log.d.ts +1 -0
  364. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/log.d.ts.map +1 -0
  365. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts +1 -0
  366. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts.map +1 -0
  367. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts +1 -0
  368. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts.map +1 -0
  369. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +1 -0
  370. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts.map +1 -0
  371. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts +1 -0
  372. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts.map +1 -0
  373. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts +1 -0
  374. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts.map +1 -0
  375. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +1 -0
  376. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts.map +1 -0
  377. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts +1 -0
  378. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts.map +1 -0
  379. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts +1 -0
  380. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts.map +1 -0
  381. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +1 -0
  382. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts.map +1 -0
  383. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/types.d.ts +1 -0
  384. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/types.d.ts.map +1 -0
  385. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.d.ts +1 -0
  386. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.d.ts.map +1 -0
  387. package/dist/commonjs/features/add_features.d.ts +1 -0
  388. package/dist/commonjs/features/add_features.d.ts.map +1 -0
  389. package/dist/commonjs/features/features_object.d.ts +1 -0
  390. package/dist/commonjs/features/features_object.d.ts.map +1 -0
  391. package/dist/commonjs/features/index.d.ts +4 -2
  392. package/dist/commonjs/features/index.d.ts.map +1 -0
  393. package/dist/commonjs/features/list/dash.d.ts +1 -0
  394. package/dist/commonjs/features/list/dash.d.ts.map +1 -0
  395. package/dist/commonjs/features/list/dash_wasm.d.ts +1 -0
  396. package/dist/commonjs/features/list/dash_wasm.d.ts.map +1 -0
  397. package/dist/commonjs/features/list/debug_element.d.ts +1 -0
  398. package/dist/commonjs/features/list/debug_element.d.ts.map +1 -0
  399. package/dist/commonjs/features/list/directfile.d.ts +1 -0
  400. package/dist/commonjs/features/list/directfile.d.ts.map +1 -0
  401. package/dist/commonjs/features/list/eme.d.ts +1 -0
  402. package/dist/commonjs/features/list/eme.d.ts.map +1 -0
  403. package/dist/commonjs/features/list/html_sami_parser.d.ts +1 -0
  404. package/dist/commonjs/features/list/html_sami_parser.d.ts.map +1 -0
  405. package/dist/commonjs/features/list/html_srt_parser.d.ts +1 -0
  406. package/dist/commonjs/features/list/html_srt_parser.d.ts.map +1 -0
  407. package/dist/commonjs/features/list/html_text_buffer.d.ts +1 -0
  408. package/dist/commonjs/features/list/html_text_buffer.d.ts.map +1 -0
  409. package/dist/commonjs/features/list/html_ttml_parser.d.ts +1 -0
  410. package/dist/commonjs/features/list/html_ttml_parser.d.ts.map +1 -0
  411. package/dist/commonjs/features/list/html_vtt_parser.d.ts +1 -0
  412. package/dist/commonjs/features/list/html_vtt_parser.d.ts.map +1 -0
  413. package/dist/commonjs/features/list/index.d.ts +1 -0
  414. package/dist/commonjs/features/list/index.d.ts.map +1 -0
  415. package/dist/commonjs/features/list/media_source_main.d.ts +1 -0
  416. package/dist/commonjs/features/list/media_source_main.d.ts.map +1 -0
  417. package/dist/commonjs/features/list/native_sami_parser.d.ts +1 -0
  418. package/dist/commonjs/features/list/native_sami_parser.d.ts.map +1 -0
  419. package/dist/commonjs/features/list/native_srt_parser.d.ts +1 -0
  420. package/dist/commonjs/features/list/native_srt_parser.d.ts.map +1 -0
  421. package/dist/commonjs/features/list/native_text_buffer.d.ts +1 -0
  422. package/dist/commonjs/features/list/native_text_buffer.d.ts.map +1 -0
  423. package/dist/commonjs/features/list/native_ttml_parser.d.ts +1 -0
  424. package/dist/commonjs/features/list/native_ttml_parser.d.ts.map +1 -0
  425. package/dist/commonjs/features/list/native_vtt_parser.d.ts +1 -0
  426. package/dist/commonjs/features/list/native_vtt_parser.d.ts.map +1 -0
  427. package/dist/commonjs/features/list/smooth.d.ts +1 -0
  428. package/dist/commonjs/features/list/smooth.d.ts.map +1 -0
  429. package/dist/commonjs/features/types.d.ts +1 -0
  430. package/dist/commonjs/features/types.d.ts.map +1 -0
  431. package/dist/commonjs/index.d.ts +1 -0
  432. package/dist/commonjs/index.d.ts.map +1 -0
  433. package/dist/commonjs/index.js +4 -0
  434. package/dist/commonjs/log.d.ts +1 -0
  435. package/dist/commonjs/log.d.ts.map +1 -0
  436. package/dist/commonjs/main_thread/api/debug/buffer_graph.d.ts +4 -3
  437. package/dist/commonjs/main_thread/api/debug/buffer_graph.d.ts.map +1 -0
  438. package/dist/commonjs/main_thread/api/debug/buffer_graph.js +63 -18
  439. package/dist/commonjs/main_thread/api/debug/buffer_size_graph.d.ts +1 -0
  440. package/dist/commonjs/main_thread/api/debug/buffer_size_graph.d.ts.map +1 -0
  441. package/dist/commonjs/main_thread/api/debug/constants.d.ts +1 -0
  442. package/dist/commonjs/main_thread/api/debug/constants.d.ts.map +1 -0
  443. package/dist/commonjs/main_thread/api/debug/index.d.ts +1 -0
  444. package/dist/commonjs/main_thread/api/debug/index.d.ts.map +1 -0
  445. package/dist/commonjs/main_thread/api/debug/modules/general_info.d.ts +1 -0
  446. package/dist/commonjs/main_thread/api/debug/modules/general_info.d.ts.map +1 -0
  447. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.d.ts +1 -0
  448. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -0
  449. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.js +60 -19
  450. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_size.d.ts +1 -0
  451. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_size.d.ts.map +1 -0
  452. package/dist/commonjs/main_thread/api/debug/render.d.ts +1 -0
  453. package/dist/commonjs/main_thread/api/debug/render.d.ts.map +1 -0
  454. package/dist/commonjs/main_thread/api/debug/utils.d.ts +1 -0
  455. package/dist/commonjs/main_thread/api/debug/utils.d.ts.map +1 -0
  456. package/dist/commonjs/main_thread/api/index.d.ts +1 -0
  457. package/dist/commonjs/main_thread/api/index.d.ts.map +1 -0
  458. package/dist/commonjs/main_thread/api/option_utils.d.ts +1 -0
  459. package/dist/commonjs/main_thread/api/option_utils.d.ts.map +1 -0
  460. package/dist/commonjs/main_thread/api/public_api.d.ts +13 -8
  461. package/dist/commonjs/main_thread/api/public_api.d.ts.map +1 -0
  462. package/dist/commonjs/main_thread/api/public_api.js +58 -21
  463. package/dist/commonjs/main_thread/api/utils.d.ts +1 -0
  464. package/dist/commonjs/main_thread/api/utils.d.ts.map +1 -0
  465. package/dist/commonjs/main_thread/decrypt/attach_media_keys.d.ts +1 -0
  466. package/dist/commonjs/main_thread/decrypt/attach_media_keys.d.ts.map +1 -0
  467. package/dist/commonjs/main_thread/decrypt/clear_on_stop.d.ts +1 -0
  468. package/dist/commonjs/main_thread/decrypt/clear_on_stop.d.ts.map +1 -0
  469. package/dist/commonjs/main_thread/decrypt/content_decryptor.d.ts +1 -0
  470. package/dist/commonjs/main_thread/decrypt/content_decryptor.d.ts.map +1 -0
  471. package/dist/commonjs/main_thread/decrypt/content_decryptor.js +26 -15
  472. package/dist/commonjs/main_thread/decrypt/create_or_load_session.d.ts +1 -0
  473. package/dist/commonjs/main_thread/decrypt/create_or_load_session.d.ts.map +1 -0
  474. package/dist/commonjs/main_thread/decrypt/create_session.d.ts +1 -0
  475. package/dist/commonjs/main_thread/decrypt/create_session.d.ts.map +1 -0
  476. package/dist/commonjs/main_thread/decrypt/dispose_decryption_resources.d.ts +1 -0
  477. package/dist/commonjs/main_thread/decrypt/dispose_decryption_resources.d.ts.map +1 -0
  478. package/dist/commonjs/main_thread/decrypt/find_key_system.d.ts +9 -0
  479. package/dist/commonjs/main_thread/decrypt/find_key_system.d.ts.map +1 -0
  480. package/dist/commonjs/main_thread/decrypt/find_key_system.js +42 -1
  481. package/dist/commonjs/main_thread/decrypt/get_key_system_configuration.d.ts +1 -0
  482. package/dist/commonjs/main_thread/decrypt/get_key_system_configuration.d.ts.map +1 -0
  483. package/dist/commonjs/main_thread/decrypt/get_media_keys.d.ts +1 -0
  484. package/dist/commonjs/main_thread/decrypt/get_media_keys.d.ts.map +1 -0
  485. package/dist/commonjs/main_thread/decrypt/index.d.ts +1 -0
  486. package/dist/commonjs/main_thread/decrypt/index.d.ts.map +1 -0
  487. package/dist/commonjs/main_thread/decrypt/init_media_keys.d.ts +1 -0
  488. package/dist/commonjs/main_thread/decrypt/init_media_keys.d.ts.map +1 -0
  489. package/dist/commonjs/main_thread/decrypt/session_events_listener.d.ts +1 -0
  490. package/dist/commonjs/main_thread/decrypt/session_events_listener.d.ts.map +1 -0
  491. package/dist/commonjs/main_thread/decrypt/session_events_listener.js +2 -2
  492. package/dist/commonjs/main_thread/decrypt/set_server_certificate.d.ts +1 -0
  493. package/dist/commonjs/main_thread/decrypt/set_server_certificate.d.ts.map +1 -0
  494. package/dist/commonjs/main_thread/decrypt/types.d.ts +1 -0
  495. package/dist/commonjs/main_thread/decrypt/types.d.ts.map +1 -0
  496. package/dist/commonjs/main_thread/decrypt/utils/are_init_values_compatible.d.ts +1 -0
  497. package/dist/commonjs/main_thread/decrypt/utils/are_init_values_compatible.d.ts.map +1 -0
  498. package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.d.ts +1 -0
  499. package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.d.ts.map +1 -0
  500. package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.js +1 -1
  501. package/dist/commonjs/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts +1 -0
  502. package/dist/commonjs/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts.map +1 -0
  503. package/dist/commonjs/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts +1 -0
  504. package/dist/commonjs/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts.map +1 -0
  505. package/dist/commonjs/main_thread/decrypt/utils/get_drm_system_id.d.ts +1 -0
  506. package/dist/commonjs/main_thread/decrypt/utils/get_drm_system_id.d.ts.map +1 -0
  507. package/dist/commonjs/main_thread/decrypt/utils/init_data_values_container.d.ts +1 -0
  508. package/dist/commonjs/main_thread/decrypt/utils/init_data_values_container.d.ts.map +1 -0
  509. package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.d.ts +1 -0
  510. package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.d.ts.map +1 -0
  511. package/dist/commonjs/main_thread/decrypt/utils/key_id_comparison.d.ts +1 -0
  512. package/dist/commonjs/main_thread/decrypt/utils/key_id_comparison.d.ts.map +1 -0
  513. package/dist/commonjs/main_thread/decrypt/utils/key_session_record.d.ts +1 -0
  514. package/dist/commonjs/main_thread/decrypt/utils/key_session_record.d.ts.map +1 -0
  515. package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.d.ts +1 -0
  516. package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.d.ts.map +1 -0
  517. package/dist/commonjs/main_thread/decrypt/utils/media_keys_infos_store.d.ts +1 -0
  518. package/dist/commonjs/main_thread/decrypt/utils/media_keys_infos_store.d.ts.map +1 -0
  519. package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts +1 -0
  520. package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -0
  521. package/dist/commonjs/main_thread/decrypt/utils/serializable_bytes.d.ts +1 -0
  522. package/dist/commonjs/main_thread/decrypt/utils/serializable_bytes.d.ts.map +1 -0
  523. package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.d.ts +1 -0
  524. package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.d.ts.map +1 -0
  525. package/dist/commonjs/main_thread/init/directfile_content_initializer.d.ts +1 -0
  526. package/dist/commonjs/main_thread/init/directfile_content_initializer.d.ts.map +1 -0
  527. package/dist/commonjs/main_thread/init/directfile_content_initializer.js +3 -1
  528. package/dist/commonjs/main_thread/init/index.d.ts +3 -1
  529. package/dist/commonjs/main_thread/init/index.d.ts.map +1 -0
  530. package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts +1 -0
  531. package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts.map +1 -0
  532. package/dist/commonjs/main_thread/init/media_source_content_initializer.js +9 -1
  533. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts +6 -0
  534. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -0
  535. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +97 -11
  536. package/dist/commonjs/main_thread/init/send_message.d.ts +1 -0
  537. package/dist/commonjs/main_thread/init/send_message.d.ts.map +1 -0
  538. package/dist/commonjs/main_thread/init/types.d.ts +4 -2
  539. package/dist/commonjs/main_thread/init/types.d.ts.map +1 -0
  540. package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts +1 -0
  541. package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -0
  542. package/dist/commonjs/main_thread/init/utils/create_media_source.d.ts +1 -0
  543. package/dist/commonjs/main_thread/init/utils/create_media_source.d.ts.map +1 -0
  544. package/dist/commonjs/main_thread/init/utils/get_initial_time.d.ts +1 -0
  545. package/dist/commonjs/main_thread/init/utils/get_initial_time.d.ts.map +1 -0
  546. package/dist/commonjs/main_thread/init/utils/get_loaded_reference.d.ts +1 -0
  547. package/dist/commonjs/main_thread/init/utils/get_loaded_reference.d.ts.map +1 -0
  548. package/dist/commonjs/main_thread/init/utils/initial_seek_and_play.d.ts +1 -0
  549. package/dist/commonjs/main_thread/init/utils/initial_seek_and_play.d.ts.map +1 -0
  550. package/dist/commonjs/main_thread/init/utils/initialize_content_decryption.d.ts +1 -0
  551. package/dist/commonjs/main_thread/init/utils/initialize_content_decryption.d.ts.map +1 -0
  552. package/dist/commonjs/main_thread/init/utils/main_thread_text_displayer_interface.d.ts +1 -0
  553. package/dist/commonjs/main_thread/init/utils/main_thread_text_displayer_interface.d.ts.map +1 -0
  554. package/dist/commonjs/main_thread/init/utils/rebuffering_controller.d.ts +1 -0
  555. package/dist/commonjs/main_thread/init/utils/rebuffering_controller.d.ts.map +1 -0
  556. package/dist/commonjs/main_thread/init/utils/rebuffering_controller.js +48 -26
  557. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/are_same_stream_events.d.ts +1 -0
  558. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/are_same_stream_events.d.ts.map +1 -0
  559. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/index.d.ts +1 -0
  560. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/index.d.ts.map +1 -0
  561. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +1 -0
  562. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -0
  563. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +85 -54
  564. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +1 -0
  565. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts.map +1 -0
  566. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/types.d.ts +1 -0
  567. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/types.d.ts.map +1 -0
  568. package/dist/commonjs/main_thread/init/utils/throw_on_media_error.d.ts +1 -0
  569. package/dist/commonjs/main_thread/init/utils/throw_on_media_error.d.ts.map +1 -0
  570. package/dist/commonjs/main_thread/text_displayer/html/html_parsers.d.ts +1 -0
  571. package/dist/commonjs/main_thread/text_displayer/html/html_parsers.d.ts.map +1 -0
  572. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.d.ts +1 -0
  573. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -0
  574. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.js +65 -12
  575. package/dist/commonjs/main_thread/text_displayer/html/index.d.ts +1 -0
  576. package/dist/commonjs/main_thread/text_displayer/html/index.d.ts.map +1 -0
  577. package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.d.ts +1 -0
  578. package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.d.ts.map +1 -0
  579. package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.js +39 -7
  580. package/dist/commonjs/main_thread/text_displayer/html/update_proportional_elements.d.ts +1 -0
  581. package/dist/commonjs/main_thread/text_displayer/html/update_proportional_elements.d.ts.map +1 -0
  582. package/dist/commonjs/main_thread/text_displayer/html/utils.d.ts +1 -0
  583. package/dist/commonjs/main_thread/text_displayer/html/utils.d.ts.map +1 -0
  584. package/dist/commonjs/main_thread/text_displayer/index.d.ts +3 -2
  585. package/dist/commonjs/main_thread/text_displayer/index.d.ts.map +1 -0
  586. package/dist/commonjs/main_thread/text_displayer/manual_time_ranges.d.ts +1 -0
  587. package/dist/commonjs/main_thread/text_displayer/manual_time_ranges.d.ts.map +1 -0
  588. package/dist/commonjs/main_thread/text_displayer/native/index.d.ts +1 -0
  589. package/dist/commonjs/main_thread/text_displayer/native/index.d.ts.map +1 -0
  590. package/dist/commonjs/main_thread/text_displayer/native/native_parsers.d.ts +1 -0
  591. package/dist/commonjs/main_thread/text_displayer/native/native_parsers.d.ts.map +1 -0
  592. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.d.ts +1 -0
  593. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.d.ts.map +1 -0
  594. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.js +27 -5
  595. package/dist/commonjs/main_thread/text_displayer/types.d.ts +1 -0
  596. package/dist/commonjs/main_thread/text_displayer/types.d.ts.map +1 -0
  597. package/dist/commonjs/main_thread/tracks_store/index.d.ts +1 -0
  598. package/dist/commonjs/main_thread/tracks_store/index.d.ts.map +1 -0
  599. package/dist/commonjs/main_thread/tracks_store/media_element_tracks_store.d.ts +1 -0
  600. package/dist/commonjs/main_thread/tracks_store/media_element_tracks_store.d.ts.map +1 -0
  601. package/dist/commonjs/main_thread/tracks_store/track_dispatcher.d.ts +1 -0
  602. package/dist/commonjs/main_thread/tracks_store/track_dispatcher.d.ts.map +1 -0
  603. package/dist/commonjs/main_thread/tracks_store/tracks_store.d.ts +1 -0
  604. package/dist/commonjs/main_thread/tracks_store/tracks_store.d.ts.map +1 -0
  605. package/dist/commonjs/main_thread/types.d.ts +1 -0
  606. package/dist/commonjs/main_thread/types.d.ts.map +1 -0
  607. package/dist/commonjs/manifest/classes/adaptation.d.ts +1 -0
  608. package/dist/commonjs/manifest/classes/adaptation.d.ts.map +1 -0
  609. package/dist/commonjs/manifest/classes/index.d.ts +12 -6
  610. package/dist/commonjs/manifest/classes/index.d.ts.map +1 -0
  611. package/dist/commonjs/manifest/classes/manifest.d.ts +2 -1
  612. package/dist/commonjs/manifest/classes/manifest.d.ts.map +1 -0
  613. package/dist/commonjs/manifest/classes/period.d.ts +1 -0
  614. package/dist/commonjs/manifest/classes/period.d.ts.map +1 -0
  615. package/dist/commonjs/manifest/classes/representation.d.ts +1 -0
  616. package/dist/commonjs/manifest/classes/representation.d.ts.map +1 -0
  617. package/dist/commonjs/manifest/classes/representation_index/index.d.ts +3 -1
  618. package/dist/commonjs/manifest/classes/representation_index/index.d.ts.map +1 -0
  619. package/dist/commonjs/manifest/classes/representation_index/static.d.ts +1 -0
  620. package/dist/commonjs/manifest/classes/representation_index/static.d.ts.map +1 -0
  621. package/dist/commonjs/manifest/classes/representation_index/types.d.ts +1 -0
  622. package/dist/commonjs/manifest/classes/representation_index/types.d.ts.map +1 -0
  623. package/dist/commonjs/manifest/classes/types.d.ts +1 -0
  624. package/dist/commonjs/manifest/classes/types.d.ts.map +1 -0
  625. package/dist/commonjs/manifest/classes/update_period_in_place.d.ts +1 -0
  626. package/dist/commonjs/manifest/classes/update_period_in_place.d.ts.map +1 -0
  627. package/dist/commonjs/manifest/classes/update_periods.d.ts +1 -0
  628. package/dist/commonjs/manifest/classes/update_periods.d.ts.map +1 -0
  629. package/dist/commonjs/manifest/classes/utils.d.ts +1 -0
  630. package/dist/commonjs/manifest/classes/utils.d.ts.map +1 -0
  631. package/dist/commonjs/manifest/index.d.ts +3 -1
  632. package/dist/commonjs/manifest/index.d.ts.map +1 -0
  633. package/dist/commonjs/manifest/types.d.ts +1 -0
  634. package/dist/commonjs/manifest/types.d.ts.map +1 -0
  635. package/dist/commonjs/manifest/utils.d.ts +1 -0
  636. package/dist/commonjs/manifest/utils.d.ts.map +1 -0
  637. package/dist/commonjs/minimal.d.ts +1 -0
  638. package/dist/commonjs/minimal.d.ts.map +1 -0
  639. package/dist/commonjs/mse/index.d.ts +3 -1
  640. package/dist/commonjs/mse/index.d.ts.map +1 -0
  641. package/dist/commonjs/mse/main_codec_support_prober.d.ts +1 -0
  642. package/dist/commonjs/mse/main_codec_support_prober.d.ts.map +1 -0
  643. package/dist/commonjs/mse/main_media_source_interface.d.ts +1 -0
  644. package/dist/commonjs/mse/main_media_source_interface.d.ts.map +1 -0
  645. package/dist/commonjs/mse/types.d.ts +1 -0
  646. package/dist/commonjs/mse/types.d.ts.map +1 -0
  647. package/dist/commonjs/mse/utils/end_of_stream.d.ts +1 -0
  648. package/dist/commonjs/mse/utils/end_of_stream.d.ts.map +1 -0
  649. package/dist/commonjs/mse/utils/end_of_stream.js +6 -1
  650. package/dist/commonjs/mse/utils/media_source_duration_updater.d.ts +1 -0
  651. package/dist/commonjs/mse/utils/media_source_duration_updater.d.ts.map +1 -0
  652. package/dist/commonjs/mse/worker_codec_support_prober.d.ts +1 -0
  653. package/dist/commonjs/mse/worker_codec_support_prober.d.ts.map +1 -0
  654. package/dist/commonjs/mse/worker_media_source_interface.d.ts +1 -0
  655. package/dist/commonjs/mse/worker_media_source_interface.d.ts.map +1 -0
  656. package/dist/commonjs/multithread_types.d.ts +22 -4
  657. package/dist/commonjs/multithread_types.d.ts.map +1 -0
  658. package/dist/commonjs/parsers/containers/isobmff/constants.d.ts +1 -0
  659. package/dist/commonjs/parsers/containers/isobmff/constants.d.ts.map +1 -0
  660. package/dist/commonjs/parsers/containers/isobmff/create_box.d.ts +1 -0
  661. package/dist/commonjs/parsers/containers/isobmff/create_box.d.ts.map +1 -0
  662. package/dist/commonjs/parsers/containers/isobmff/drm/index.d.ts +1 -0
  663. package/dist/commonjs/parsers/containers/isobmff/drm/index.d.ts.map +1 -0
  664. package/dist/commonjs/parsers/containers/isobmff/drm/playready.d.ts +1 -0
  665. package/dist/commonjs/parsers/containers/isobmff/drm/playready.d.ts.map +1 -0
  666. package/dist/commonjs/parsers/containers/isobmff/extract_complete_chunks.d.ts +1 -0
  667. package/dist/commonjs/parsers/containers/isobmff/extract_complete_chunks.d.ts.map +1 -0
  668. package/dist/commonjs/parsers/containers/isobmff/find_complete_box.d.ts +1 -0
  669. package/dist/commonjs/parsers/containers/isobmff/find_complete_box.d.ts.map +1 -0
  670. package/dist/commonjs/parsers/containers/isobmff/get_box.d.ts +1 -0
  671. package/dist/commonjs/parsers/containers/isobmff/get_box.d.ts.map +1 -0
  672. package/dist/commonjs/parsers/containers/isobmff/index.d.ts +3 -1
  673. package/dist/commonjs/parsers/containers/isobmff/index.d.ts.map +1 -0
  674. package/dist/commonjs/parsers/containers/isobmff/read.d.ts +1 -0
  675. package/dist/commonjs/parsers/containers/isobmff/read.d.ts.map +1 -0
  676. package/dist/commonjs/parsers/containers/isobmff/take_pssh_out.d.ts +1 -0
  677. package/dist/commonjs/parsers/containers/isobmff/take_pssh_out.d.ts.map +1 -0
  678. package/dist/commonjs/parsers/containers/isobmff/utils.d.ts +1 -0
  679. package/dist/commonjs/parsers/containers/isobmff/utils.d.ts.map +1 -0
  680. package/dist/commonjs/parsers/containers/isobmff/utils.js +3 -1
  681. package/dist/commonjs/parsers/containers/matroska/index.d.ts +3 -1
  682. package/dist/commonjs/parsers/containers/matroska/index.d.ts.map +1 -0
  683. package/dist/commonjs/parsers/containers/matroska/utils.d.ts +1 -0
  684. package/dist/commonjs/parsers/containers/matroska/utils.d.ts.map +1 -0
  685. package/dist/commonjs/parsers/images/bif.d.ts +1 -0
  686. package/dist/commonjs/parsers/images/bif.d.ts.map +1 -0
  687. package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.d.ts +1 -0
  688. package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.d.ts.map +1 -0
  689. package/dist/commonjs/parsers/manifest/dash/common/content_protection_parser.d.ts +99 -0
  690. package/dist/commonjs/parsers/manifest/dash/common/content_protection_parser.d.ts.map +1 -0
  691. package/dist/commonjs/parsers/manifest/dash/common/content_protection_parser.js +261 -0
  692. package/dist/commonjs/parsers/manifest/dash/common/convert_supplemental_codecs.d.ts +1 -0
  693. package/dist/commonjs/parsers/manifest/dash/common/convert_supplemental_codecs.d.ts.map +1 -0
  694. package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +1 -0
  695. package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts.map +1 -0
  696. package/dist/commonjs/parsers/manifest/dash/common/get_clock_offset.d.ts +1 -0
  697. package/dist/commonjs/parsers/manifest/dash/common/get_clock_offset.d.ts.map +1 -0
  698. package/dist/commonjs/parsers/manifest/dash/common/get_hdr_information.d.ts +1 -0
  699. package/dist/commonjs/parsers/manifest/dash/common/get_hdr_information.d.ts.map +1 -0
  700. package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +1 -0
  701. package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts.map +1 -0
  702. package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +1 -0
  703. package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts.map +1 -0
  704. package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.d.ts +1 -0
  705. package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.d.ts.map +1 -0
  706. package/dist/commonjs/parsers/manifest/dash/common/index.d.ts +4 -2
  707. package/dist/commonjs/parsers/manifest/dash/common/index.d.ts.map +1 -0
  708. package/dist/commonjs/parsers/manifest/dash/common/indexes/base.d.ts +1 -0
  709. package/dist/commonjs/parsers/manifest/dash/common/indexes/base.d.ts.map +1 -0
  710. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +1 -0
  711. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.d.ts.map +1 -0
  712. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +1 -0
  713. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts.map +1 -0
  714. package/dist/commonjs/parsers/manifest/dash/common/indexes/index.d.ts +11 -5
  715. package/dist/commonjs/parsers/manifest/dash/common/indexes/index.d.ts.map +1 -0
  716. package/dist/commonjs/parsers/manifest/dash/common/indexes/list.d.ts +1 -0
  717. package/dist/commonjs/parsers/manifest/dash/common/indexes/list.d.ts.map +1 -0
  718. package/dist/commonjs/parsers/manifest/dash/common/indexes/template.d.ts +1 -0
  719. package/dist/commonjs/parsers/manifest/dash/common/indexes/template.d.ts.map +1 -0
  720. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +1 -0
  721. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts.map +1 -0
  722. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +1 -0
  723. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts.map +1 -0
  724. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +1 -0
  725. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts.map +1 -0
  726. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +1 -0
  727. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts.map +1 -0
  728. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/index.d.ts +4 -2
  729. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/index.d.ts.map +1 -0
  730. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +1 -0
  731. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts.map +1 -0
  732. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +1 -0
  733. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts.map +1 -0
  734. package/dist/commonjs/parsers/manifest/dash/common/indexes/tokens.d.ts +1 -0
  735. package/dist/commonjs/parsers/manifest/dash/common/indexes/tokens.d.ts.map +1 -0
  736. package/dist/commonjs/parsers/manifest/dash/common/indexes/utils.d.ts +1 -0
  737. package/dist/commonjs/parsers/manifest/dash/common/indexes/utils.d.ts.map +1 -0
  738. package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.d.ts +1 -0
  739. package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.d.ts.map +1 -0
  740. package/dist/commonjs/parsers/manifest/dash/common/manifest_bounds_calculator.d.ts +1 -0
  741. package/dist/commonjs/parsers/manifest/dash/common/manifest_bounds_calculator.d.ts.map +1 -0
  742. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +4 -0
  743. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.d.ts.map +1 -0
  744. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.js +1 -0
  745. package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.d.ts +1 -0
  746. package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.d.ts.map +1 -0
  747. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.d.ts +1 -0
  748. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.d.ts.map +1 -0
  749. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.js +10 -5
  750. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.d.ts +4 -0
  751. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.d.ts.map +1 -0
  752. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.js +8 -6
  753. package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.d.ts +1 -0
  754. package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.d.ts.map +1 -0
  755. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.d.ts +4 -0
  756. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.d.ts.map +1 -0
  757. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.js +15 -56
  758. package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.d.ts +1 -0
  759. package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.d.ts.map +1 -0
  760. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/index.d.ts +1 -0
  761. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/index.d.ts.map +1 -0
  762. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts +1 -0
  763. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts.map +1 -0
  764. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.d.ts +1 -0
  765. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.d.ts.map +1 -0
  766. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.d.ts +1 -0
  767. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.d.ts.map +1 -0
  768. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.d.ts +1 -0
  769. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.d.ts.map +1 -0
  770. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.js +7 -0
  771. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.d.ts +1 -0
  772. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.d.ts.map +1 -0
  773. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.d.ts +1 -0
  774. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.d.ts.map +1 -0
  775. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts +1 -0
  776. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts.map +1 -0
  777. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.js +12 -1
  778. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts +1 -0
  779. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts.map +1 -0
  780. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Period.js +15 -1
  781. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts +1 -0
  782. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts.map +1 -0
  783. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.d.ts +1 -0
  784. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.d.ts.map +1 -0
  785. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.d.ts +1 -0
  786. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.d.ts.map +1 -0
  787. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.d.ts +1 -0
  788. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.d.ts.map +1 -0
  789. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.d.ts +1 -0
  790. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.d.ts.map +1 -0
  791. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.d.ts +1 -0
  792. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.d.ts.map +1 -0
  793. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +1 -1
  794. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts.map +1 -0
  795. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +1 -2
  796. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.d.ts +1 -0
  797. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.d.ts.map +1 -0
  798. package/dist/commonjs/parsers/manifest/dash/index.d.ts +1 -0
  799. package/dist/commonjs/parsers/manifest/dash/index.d.ts.map +1 -0
  800. package/dist/commonjs/parsers/manifest/dash/native-parser/index.d.ts +1 -0
  801. package/dist/commonjs/parsers/manifest/dash/native-parser/index.d.ts.map +1 -0
  802. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts +1 -0
  803. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts.map +1 -0
  804. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/BaseURL.d.ts +1 -0
  805. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/BaseURL.d.ts.map +1 -0
  806. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.d.ts +1 -0
  807. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.d.ts.map +1 -0
  808. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.d.ts +1 -0
  809. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.d.ts.map +1 -0
  810. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.js +7 -0
  811. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts +1 -0
  812. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts.map +1 -0
  813. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Initialization.d.ts +1 -0
  814. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Initialization.d.ts.map +1 -0
  815. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts +1 -0
  816. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts.map +1 -0
  817. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/MPD.js +12 -1
  818. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts +1 -0
  819. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts.map +1 -0
  820. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Period.js +15 -1
  821. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts +1 -0
  822. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts.map +1 -0
  823. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.d.ts +1 -0
  824. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.d.ts.map +1 -0
  825. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentList.d.ts +1 -0
  826. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentList.d.ts.map +1 -0
  827. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.d.ts +1 -0
  828. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.d.ts.map +1 -0
  829. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.d.ts +1 -0
  830. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.d.ts.map +1 -0
  831. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.d.ts +1 -0
  832. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.d.ts.map +1 -0
  833. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +1 -1
  834. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts.map +1 -0
  835. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.js +1 -2
  836. package/dist/commonjs/parsers/manifest/dash/native-parser/parse_from_document.d.ts +1 -0
  837. package/dist/commonjs/parsers/manifest/dash/native-parser/parse_from_document.d.ts.map +1 -0
  838. package/dist/commonjs/parsers/manifest/dash/node_parser_types.d.ts +9 -0
  839. package/dist/commonjs/parsers/manifest/dash/node_parser_types.d.ts.map +1 -0
  840. package/dist/commonjs/parsers/manifest/dash/parsers_types.d.ts +2 -1
  841. package/dist/commonjs/parsers/manifest/dash/parsers_types.d.ts.map +1 -0
  842. package/dist/commonjs/parsers/manifest/dash/wasm-parser/index.d.ts +4 -2
  843. package/dist/commonjs/parsers/manifest/dash/wasm-parser/index.d.ts.map +1 -0
  844. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +1 -0
  845. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts.map +1 -0
  846. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +1 -0
  847. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts.map +1 -0
  848. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +1 -0
  849. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts.map +1 -0
  850. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +1 -0
  851. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts.map +1 -0
  852. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +1 -0
  853. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts.map +1 -0
  854. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +6 -0
  855. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +1 -0
  856. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts.map +1 -0
  857. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +1 -0
  858. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts.map +1 -0
  859. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +14 -0
  860. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +1 -0
  861. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts.map +1 -0
  862. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +14 -0
  863. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +1 -0
  864. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts.map +1 -0
  865. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +1 -0
  866. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts.map +1 -0
  867. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +1 -0
  868. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts.map +1 -0
  869. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +1 -0
  870. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts.map +1 -0
  871. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +1 -0
  872. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts.map +1 -0
  873. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +1 -0
  874. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts.map +1 -0
  875. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +1 -0
  876. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts.map +1 -0
  877. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts +1 -0
  878. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts.map +1 -0
  879. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +1 -0
  880. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts.map +1 -0
  881. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts +1 -0
  882. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts.map +1 -0
  883. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/types.d.ts +3 -0
  884. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/types.d.ts.map +1 -0
  885. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +1 -0
  886. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.d.ts.map +1 -0
  887. package/dist/commonjs/parsers/manifest/index.d.ts +1 -0
  888. package/dist/commonjs/parsers/manifest/index.d.ts.map +1 -0
  889. package/dist/commonjs/parsers/manifest/local/index.d.ts +2 -1
  890. package/dist/commonjs/parsers/manifest/local/index.d.ts.map +1 -0
  891. package/dist/commonjs/parsers/manifest/local/parse_local_manifest.d.ts +1 -0
  892. package/dist/commonjs/parsers/manifest/local/parse_local_manifest.d.ts.map +1 -0
  893. package/dist/commonjs/parsers/manifest/local/representation_index.d.ts +1 -0
  894. package/dist/commonjs/parsers/manifest/local/representation_index.d.ts.map +1 -0
  895. package/dist/commonjs/parsers/manifest/local/types.d.ts +1 -0
  896. package/dist/commonjs/parsers/manifest/local/types.d.ts.map +1 -0
  897. package/dist/commonjs/parsers/manifest/metaplaylist/index.d.ts +4 -2
  898. package/dist/commonjs/parsers/manifest/metaplaylist/index.d.ts.map +1 -0
  899. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +1 -0
  900. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts.map +1 -0
  901. package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.d.ts +1 -0
  902. package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.d.ts.map +1 -0
  903. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts +1 -0
  904. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts.map +1 -0
  905. package/dist/commonjs/parsers/manifest/smooth/get_codecs.d.ts +1 -0
  906. package/dist/commonjs/parsers/manifest/smooth/get_codecs.d.ts.map +1 -0
  907. package/dist/commonjs/parsers/manifest/smooth/index.d.ts +5 -2
  908. package/dist/commonjs/parsers/manifest/smooth/index.d.ts.map +1 -0
  909. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts +1 -0
  910. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -0
  911. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts +1 -0
  912. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -0
  913. package/dist/commonjs/parsers/manifest/smooth/representation_index.d.ts +1 -0
  914. package/dist/commonjs/parsers/manifest/smooth/representation_index.d.ts.map +1 -0
  915. package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +1 -0
  916. package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts.map +1 -0
  917. package/dist/commonjs/parsers/manifest/smooth/utils/add_segment_infos.d.ts +1 -0
  918. package/dist/commonjs/parsers/manifest/smooth/utils/add_segment_infos.d.ts.map +1 -0
  919. package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -0
  920. package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts.map +1 -0
  921. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts +1 -0
  922. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -0
  923. package/dist/commonjs/parsers/manifest/smooth/utils/tokens.d.ts +1 -0
  924. package/dist/commonjs/parsers/manifest/smooth/utils/tokens.d.ts.map +1 -0
  925. package/dist/commonjs/parsers/manifest/types.d.ts +1 -0
  926. package/dist/commonjs/parsers/manifest/types.d.ts.map +1 -0
  927. package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.d.ts +1 -0
  928. package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.d.ts.map +1 -0
  929. package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.d.ts +1 -0
  930. package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.d.ts.map +1 -0
  931. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +1 -0
  932. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.d.ts.map +1 -0
  933. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +1 -0
  934. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.d.ts.map +1 -0
  935. package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.d.ts +1 -0
  936. package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.d.ts.map +1 -0
  937. package/dist/commonjs/parsers/manifest/utils/get_minimum_position.d.ts +1 -0
  938. package/dist/commonjs/parsers/manifest/utils/get_minimum_position.d.ts.map +1 -0
  939. package/dist/commonjs/parsers/manifest/utils/index_helpers.d.ts +1 -0
  940. package/dist/commonjs/parsers/manifest/utils/index_helpers.d.ts.map +1 -0
  941. package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.d.ts +1 -0
  942. package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.d.ts.map +1 -0
  943. package/dist/commonjs/parsers/texttracks/index.d.ts +2 -1
  944. package/dist/commonjs/parsers/texttracks/index.d.ts.map +1 -0
  945. package/dist/commonjs/parsers/texttracks/sami/html.d.ts +1 -0
  946. package/dist/commonjs/parsers/texttracks/sami/html.d.ts.map +1 -0
  947. package/dist/commonjs/parsers/texttracks/sami/native.d.ts +1 -0
  948. package/dist/commonjs/parsers/texttracks/sami/native.d.ts.map +1 -0
  949. package/dist/commonjs/parsers/texttracks/srt/find_end_of_cue_block.d.ts +1 -0
  950. package/dist/commonjs/parsers/texttracks/srt/find_end_of_cue_block.d.ts.map +1 -0
  951. package/dist/commonjs/parsers/texttracks/srt/get_cue_blocks.d.ts +1 -0
  952. package/dist/commonjs/parsers/texttracks/srt/get_cue_blocks.d.ts.map +1 -0
  953. package/dist/commonjs/parsers/texttracks/srt/html.d.ts +1 -0
  954. package/dist/commonjs/parsers/texttracks/srt/html.d.ts.map +1 -0
  955. package/dist/commonjs/parsers/texttracks/srt/native.d.ts +1 -0
  956. package/dist/commonjs/parsers/texttracks/srt/native.d.ts.map +1 -0
  957. package/dist/commonjs/parsers/texttracks/srt/parse_cue.d.ts +1 -0
  958. package/dist/commonjs/parsers/texttracks/srt/parse_cue.d.ts.map +1 -0
  959. package/dist/commonjs/parsers/texttracks/srt/parse_timestamp.d.ts +1 -0
  960. package/dist/commonjs/parsers/texttracks/srt/parse_timestamp.d.ts.map +1 -0
  961. package/dist/commonjs/parsers/texttracks/ttml/get_parameters.d.ts +1 -0
  962. package/dist/commonjs/parsers/texttracks/ttml/get_parameters.d.ts.map +1 -0
  963. package/dist/commonjs/parsers/texttracks/ttml/get_styling.d.ts +1 -0
  964. package/dist/commonjs/parsers/texttracks/ttml/get_styling.d.ts.map +1 -0
  965. package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.d.ts +1 -0
  966. package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.d.ts.map +1 -0
  967. package/dist/commonjs/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.d.ts +1 -0
  968. package/dist/commonjs/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.d.ts.map +1 -0
  969. package/dist/commonjs/parsers/texttracks/ttml/html/apply_extent.d.ts +1 -0
  970. package/dist/commonjs/parsers/texttracks/ttml/html/apply_extent.d.ts.map +1 -0
  971. package/dist/commonjs/parsers/texttracks/ttml/html/apply_font_size.d.ts +1 -0
  972. package/dist/commonjs/parsers/texttracks/ttml/html/apply_font_size.d.ts.map +1 -0
  973. package/dist/commonjs/parsers/texttracks/ttml/html/apply_line_height.d.ts +1 -0
  974. package/dist/commonjs/parsers/texttracks/ttml/html/apply_line_height.d.ts.map +1 -0
  975. package/dist/commonjs/parsers/texttracks/ttml/html/apply_origin.d.ts +1 -0
  976. package/dist/commonjs/parsers/texttracks/ttml/html/apply_origin.d.ts.map +1 -0
  977. package/dist/commonjs/parsers/texttracks/ttml/html/apply_padding.d.ts +1 -0
  978. package/dist/commonjs/parsers/texttracks/ttml/html/apply_padding.d.ts.map +1 -0
  979. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.d.ts +1 -0
  980. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.d.ts.map +1 -0
  981. package/dist/commonjs/parsers/texttracks/ttml/html/generate_css_test_outline.d.ts +1 -0
  982. package/dist/commonjs/parsers/texttracks/ttml/html/generate_css_test_outline.d.ts.map +1 -0
  983. package/dist/commonjs/parsers/texttracks/ttml/html/index.d.ts +1 -0
  984. package/dist/commonjs/parsers/texttracks/ttml/html/index.d.ts.map +1 -0
  985. package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.d.ts +1 -0
  986. package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.d.ts.map +1 -0
  987. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +1 -0
  988. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts.map +1 -0
  989. package/dist/commonjs/parsers/texttracks/ttml/html/ttml_color_to_css_color.d.ts +1 -0
  990. package/dist/commonjs/parsers/texttracks/ttml/html/ttml_color_to_css_color.d.ts.map +1 -0
  991. package/dist/commonjs/parsers/texttracks/ttml/native/index.d.ts +1 -0
  992. package/dist/commonjs/parsers/texttracks/ttml/native/index.d.ts.map +1 -0
  993. package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.d.ts +1 -0
  994. package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.d.ts.map +1 -0
  995. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +1 -0
  996. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts.map +1 -0
  997. package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.d.ts +1 -0
  998. package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.d.ts.map +1 -0
  999. package/dist/commonjs/parsers/texttracks/ttml/regexps.d.ts +1 -0
  1000. package/dist/commonjs/parsers/texttracks/ttml/regexps.d.ts.map +1 -0
  1001. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +1 -0
  1002. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts.map +1 -0
  1003. package/dist/commonjs/parsers/texttracks/ttml/time_parsing.d.ts +1 -0
  1004. package/dist/commonjs/parsers/texttracks/ttml/time_parsing.d.ts.map +1 -0
  1005. package/dist/commonjs/parsers/texttracks/ttml/xml_utils.d.ts +1 -0
  1006. package/dist/commonjs/parsers/texttracks/ttml/xml_utils.d.ts.map +1 -0
  1007. package/dist/commonjs/parsers/texttracks/types.d.ts +1 -0
  1008. package/dist/commonjs/parsers/texttracks/types.d.ts.map +1 -0
  1009. package/dist/commonjs/parsers/texttracks/webvtt/get_cue_blocks.d.ts +1 -0
  1010. package/dist/commonjs/parsers/texttracks/webvtt/get_cue_blocks.d.ts.map +1 -0
  1011. package/dist/commonjs/parsers/texttracks/webvtt/get_style_blocks.d.ts +1 -0
  1012. package/dist/commonjs/parsers/texttracks/webvtt/get_style_blocks.d.ts.map +1 -0
  1013. package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +1 -0
  1014. package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts.map +1 -0
  1015. package/dist/commonjs/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts +1 -0
  1016. package/dist/commonjs/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts.map +1 -0
  1017. package/dist/commonjs/parsers/texttracks/webvtt/html/create_style_attribute.d.ts +1 -0
  1018. package/dist/commonjs/parsers/texttracks/webvtt/html/create_style_attribute.d.ts.map +1 -0
  1019. package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.d.ts +1 -0
  1020. package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.d.ts.map +1 -0
  1021. package/dist/commonjs/parsers/texttracks/webvtt/html/index.d.ts +2 -1
  1022. package/dist/commonjs/parsers/texttracks/webvtt/html/index.d.ts.map +1 -0
  1023. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_style_block.d.ts +1 -0
  1024. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_style_block.d.ts.map +1 -0
  1025. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts +1 -0
  1026. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts.map +1 -0
  1027. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts +1 -0
  1028. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts.map +1 -0
  1029. package/dist/commonjs/parsers/texttracks/webvtt/native/index.d.ts +1 -0
  1030. package/dist/commonjs/parsers/texttracks/webvtt/native/index.d.ts.map +1 -0
  1031. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts +1 -0
  1032. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts.map +1 -0
  1033. package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +1 -0
  1034. package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts.map +1 -0
  1035. package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.d.ts +1 -0
  1036. package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.d.ts.map +1 -0
  1037. package/dist/commonjs/parsers/texttracks/webvtt/parse_cue_block.d.ts +1 -0
  1038. package/dist/commonjs/parsers/texttracks/webvtt/parse_cue_block.d.ts.map +1 -0
  1039. package/dist/commonjs/parsers/texttracks/webvtt/parse_timestamp.d.ts +1 -0
  1040. package/dist/commonjs/parsers/texttracks/webvtt/parse_timestamp.d.ts.map +1 -0
  1041. package/dist/commonjs/parsers/texttracks/webvtt/utils.d.ts +1 -0
  1042. package/dist/commonjs/parsers/texttracks/webvtt/utils.d.ts.map +1 -0
  1043. package/dist/commonjs/playback_observer/index.d.ts +1 -0
  1044. package/dist/commonjs/playback_observer/index.d.ts.map +1 -0
  1045. package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts +1 -0
  1046. package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts.map +1 -0
  1047. package/dist/commonjs/playback_observer/types.d.ts +1 -0
  1048. package/dist/commonjs/playback_observer/types.d.ts.map +1 -0
  1049. package/dist/commonjs/playback_observer/utils/generate_read_only_observer.d.ts +1 -0
  1050. package/dist/commonjs/playback_observer/utils/generate_read_only_observer.d.ts.map +1 -0
  1051. package/dist/commonjs/playback_observer/utils/observation_position.d.ts +12 -0
  1052. package/dist/commonjs/playback_observer/utils/observation_position.d.ts.map +1 -0
  1053. package/dist/commonjs/playback_observer/utils/observation_position.js +11 -0
  1054. package/dist/commonjs/playback_observer/worker_playback_observer.d.ts +1 -0
  1055. package/dist/commonjs/playback_observer/worker_playback_observer.d.ts.map +1 -0
  1056. package/dist/commonjs/public_types.d.ts +3 -2
  1057. package/dist/commonjs/public_types.d.ts.map +1 -0
  1058. package/dist/commonjs/tools/TextTrackRenderer/index.d.ts +4 -2
  1059. package/dist/commonjs/tools/TextTrackRenderer/index.d.ts.map +1 -0
  1060. package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.d.ts +1 -0
  1061. package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.d.ts.map +1 -0
  1062. package/dist/commonjs/tools/index.d.ts +1 -0
  1063. package/dist/commonjs/tools/index.d.ts.map +1 -0
  1064. package/dist/commonjs/tools/parseBIFThumbnails/index.d.ts +1 -0
  1065. package/dist/commonjs/tools/parseBIFThumbnails/index.d.ts.map +1 -0
  1066. package/dist/commonjs/tools/string_utils/index.d.ts +1 -0
  1067. package/dist/commonjs/tools/string_utils/index.d.ts.map +1 -0
  1068. package/dist/commonjs/transports/dash/add_segment_integrity_checks_to_loader.d.ts +1 -0
  1069. package/dist/commonjs/transports/dash/add_segment_integrity_checks_to_loader.d.ts.map +1 -0
  1070. package/dist/commonjs/transports/dash/construct_segment_url.d.ts +1 -0
  1071. package/dist/commonjs/transports/dash/construct_segment_url.d.ts.map +1 -0
  1072. package/dist/commonjs/transports/dash/get_events_out_of_emsgs.d.ts +1 -0
  1073. package/dist/commonjs/transports/dash/get_events_out_of_emsgs.d.ts.map +1 -0
  1074. package/dist/commonjs/transports/dash/index.d.ts +1 -0
  1075. package/dist/commonjs/transports/dash/index.d.ts.map +1 -0
  1076. package/dist/commonjs/transports/dash/init_segment_loader.d.ts +1 -0
  1077. package/dist/commonjs/transports/dash/init_segment_loader.d.ts.map +1 -0
  1078. package/dist/commonjs/transports/dash/low_latency_segment_loader.d.ts +1 -0
  1079. package/dist/commonjs/transports/dash/low_latency_segment_loader.d.ts.map +1 -0
  1080. package/dist/commonjs/transports/dash/low_latency_segment_loader.js +1 -0
  1081. package/dist/commonjs/transports/dash/manifest_parser.d.ts +1 -0
  1082. package/dist/commonjs/transports/dash/manifest_parser.d.ts.map +1 -0
  1083. package/dist/commonjs/transports/dash/pipelines.d.ts +1 -0
  1084. package/dist/commonjs/transports/dash/pipelines.d.ts.map +1 -0
  1085. package/dist/commonjs/transports/dash/segment_loader.d.ts +1 -0
  1086. package/dist/commonjs/transports/dash/segment_loader.d.ts.map +1 -0
  1087. package/dist/commonjs/transports/dash/segment_parser.d.ts +1 -0
  1088. package/dist/commonjs/transports/dash/segment_parser.d.ts.map +1 -0
  1089. package/dist/commonjs/transports/dash/text_loader.d.ts +1 -0
  1090. package/dist/commonjs/transports/dash/text_loader.d.ts.map +1 -0
  1091. package/dist/commonjs/transports/dash/text_parser.d.ts +1 -0
  1092. package/dist/commonjs/transports/dash/text_parser.d.ts.map +1 -0
  1093. package/dist/commonjs/transports/index.d.ts +1 -0
  1094. package/dist/commonjs/transports/index.d.ts.map +1 -0
  1095. package/dist/commonjs/transports/local/index.d.ts +1 -0
  1096. package/dist/commonjs/transports/local/index.d.ts.map +1 -0
  1097. package/dist/commonjs/transports/local/pipelines.d.ts +1 -0
  1098. package/dist/commonjs/transports/local/pipelines.d.ts.map +1 -0
  1099. package/dist/commonjs/transports/local/segment_loader.d.ts +1 -0
  1100. package/dist/commonjs/transports/local/segment_loader.d.ts.map +1 -0
  1101. package/dist/commonjs/transports/local/segment_parser.d.ts +1 -0
  1102. package/dist/commonjs/transports/local/segment_parser.d.ts.map +1 -0
  1103. package/dist/commonjs/transports/local/text_parser.d.ts +1 -0
  1104. package/dist/commonjs/transports/local/text_parser.d.ts.map +1 -0
  1105. package/dist/commonjs/transports/metaplaylist/index.d.ts +1 -0
  1106. package/dist/commonjs/transports/metaplaylist/index.d.ts.map +1 -0
  1107. package/dist/commonjs/transports/metaplaylist/manifest_loader.d.ts +1 -0
  1108. package/dist/commonjs/transports/metaplaylist/manifest_loader.d.ts.map +1 -0
  1109. package/dist/commonjs/transports/metaplaylist/pipelines.d.ts +1 -0
  1110. package/dist/commonjs/transports/metaplaylist/pipelines.d.ts.map +1 -0
  1111. package/dist/commonjs/transports/smooth/extract_timings_infos.d.ts +1 -0
  1112. package/dist/commonjs/transports/smooth/extract_timings_infos.d.ts.map +1 -0
  1113. package/dist/commonjs/transports/smooth/index.d.ts +1 -0
  1114. package/dist/commonjs/transports/smooth/index.d.ts.map +1 -0
  1115. package/dist/commonjs/transports/smooth/is_mp4_embedded_track.d.ts +1 -0
  1116. package/dist/commonjs/transports/smooth/is_mp4_embedded_track.d.ts.map +1 -0
  1117. package/dist/commonjs/transports/smooth/isobmff/create_audio_init_segment.d.ts +1 -0
  1118. package/dist/commonjs/transports/smooth/isobmff/create_audio_init_segment.d.ts.map +1 -0
  1119. package/dist/commonjs/transports/smooth/isobmff/create_boxes.d.ts +1 -0
  1120. package/dist/commonjs/transports/smooth/isobmff/create_boxes.d.ts.map +1 -0
  1121. package/dist/commonjs/transports/smooth/isobmff/create_init_segment.d.ts +1 -0
  1122. package/dist/commonjs/transports/smooth/isobmff/create_init_segment.d.ts.map +1 -0
  1123. package/dist/commonjs/transports/smooth/isobmff/create_traf_box.d.ts +1 -0
  1124. package/dist/commonjs/transports/smooth/isobmff/create_traf_box.d.ts.map +1 -0
  1125. package/dist/commonjs/transports/smooth/isobmff/create_video_init_segment.d.ts +1 -0
  1126. package/dist/commonjs/transports/smooth/isobmff/create_video_init_segment.d.ts.map +1 -0
  1127. package/dist/commonjs/transports/smooth/isobmff/get_aaces_header.d.ts +1 -0
  1128. package/dist/commonjs/transports/smooth/isobmff/get_aaces_header.d.ts.map +1 -0
  1129. package/dist/commonjs/transports/smooth/isobmff/index.d.ts +5 -2
  1130. package/dist/commonjs/transports/smooth/isobmff/index.d.ts.map +1 -0
  1131. package/dist/commonjs/transports/smooth/isobmff/parse_tfrf.d.ts +1 -0
  1132. package/dist/commonjs/transports/smooth/isobmff/parse_tfrf.d.ts.map +1 -0
  1133. package/dist/commonjs/transports/smooth/isobmff/parse_tfxd.d.ts +1 -0
  1134. package/dist/commonjs/transports/smooth/isobmff/parse_tfxd.d.ts.map +1 -0
  1135. package/dist/commonjs/transports/smooth/isobmff/patch_segment.d.ts +1 -0
  1136. package/dist/commonjs/transports/smooth/isobmff/patch_segment.d.ts.map +1 -0
  1137. package/dist/commonjs/transports/smooth/pipelines.d.ts +1 -0
  1138. package/dist/commonjs/transports/smooth/pipelines.d.ts.map +1 -0
  1139. package/dist/commonjs/transports/smooth/segment_loader.d.ts +1 -0
  1140. package/dist/commonjs/transports/smooth/segment_loader.d.ts.map +1 -0
  1141. package/dist/commonjs/transports/smooth/utils.d.ts +1 -0
  1142. package/dist/commonjs/transports/smooth/utils.d.ts.map +1 -0
  1143. package/dist/commonjs/transports/types.d.ts +1 -0
  1144. package/dist/commonjs/transports/types.d.ts.map +1 -0
  1145. package/dist/commonjs/transports/utils/byte_range.d.ts +1 -0
  1146. package/dist/commonjs/transports/utils/byte_range.d.ts.map +1 -0
  1147. package/dist/commonjs/transports/utils/call_custom_manifest_loader.d.ts +1 -0
  1148. package/dist/commonjs/transports/utils/call_custom_manifest_loader.d.ts.map +1 -0
  1149. package/dist/commonjs/transports/utils/check_isobmff_integrity.d.ts +1 -0
  1150. package/dist/commonjs/transports/utils/check_isobmff_integrity.d.ts.map +1 -0
  1151. package/dist/commonjs/transports/utils/generate_manifest_loader.d.ts +1 -0
  1152. package/dist/commonjs/transports/utils/generate_manifest_loader.d.ts.map +1 -0
  1153. package/dist/commonjs/transports/utils/get_isobmff_timing_infos.d.ts +1 -0
  1154. package/dist/commonjs/transports/utils/get_isobmff_timing_infos.d.ts.map +1 -0
  1155. package/dist/commonjs/transports/utils/infer_segment_container.d.ts +1 -0
  1156. package/dist/commonjs/transports/utils/infer_segment_container.d.ts.map +1 -0
  1157. package/dist/commonjs/transports/utils/parse_text_track.d.ts +1 -0
  1158. package/dist/commonjs/transports/utils/parse_text_track.d.ts.map +1 -0
  1159. package/dist/commonjs/utils/are_arrays_of_numbers_equal.d.ts +1 -0
  1160. package/dist/commonjs/utils/are_arrays_of_numbers_equal.d.ts.map +1 -0
  1161. package/dist/commonjs/utils/are_codecs_compatible.d.ts +1 -0
  1162. package/dist/commonjs/utils/are_codecs_compatible.d.ts.map +1 -0
  1163. package/dist/commonjs/utils/array_find.d.ts +1 -0
  1164. package/dist/commonjs/utils/array_find.d.ts.map +1 -0
  1165. package/dist/commonjs/utils/array_find_index.d.ts +1 -0
  1166. package/dist/commonjs/utils/array_find_index.d.ts.map +1 -0
  1167. package/dist/commonjs/utils/array_includes.d.ts +1 -0
  1168. package/dist/commonjs/utils/array_includes.d.ts.map +1 -0
  1169. package/dist/commonjs/utils/assert.d.ts +1 -1
  1170. package/dist/commonjs/utils/assert.d.ts.map +1 -0
  1171. package/dist/commonjs/utils/assert.js +1 -2
  1172. package/dist/commonjs/utils/base64.d.ts +1 -0
  1173. package/dist/commonjs/utils/base64.d.ts.map +1 -0
  1174. package/dist/commonjs/utils/byte_parsing.d.ts +1 -0
  1175. package/dist/commonjs/utils/byte_parsing.d.ts.map +1 -0
  1176. package/dist/commonjs/utils/cancellable_sleep.d.ts +1 -0
  1177. package/dist/commonjs/utils/cancellable_sleep.d.ts.map +1 -0
  1178. package/dist/commonjs/utils/create_cancellable_promise.d.ts +1 -0
  1179. package/dist/commonjs/utils/create_cancellable_promise.d.ts.map +1 -0
  1180. package/dist/commonjs/utils/deep_merge.d.ts +1 -0
  1181. package/dist/commonjs/utils/deep_merge.d.ts.map +1 -0
  1182. package/dist/commonjs/utils/event_emitter.d.ts +1 -0
  1183. package/dist/commonjs/utils/event_emitter.d.ts.map +1 -0
  1184. package/dist/commonjs/utils/flat_map.d.ts +1 -0
  1185. package/dist/commonjs/utils/flat_map.d.ts.map +1 -0
  1186. package/dist/commonjs/utils/get_fuzzed_delay.d.ts +1 -0
  1187. package/dist/commonjs/utils/get_fuzzed_delay.d.ts.map +1 -0
  1188. package/dist/commonjs/utils/global_scope.d.ts +1 -0
  1189. package/dist/commonjs/utils/global_scope.d.ts.map +1 -0
  1190. package/dist/commonjs/utils/hash_buffer.d.ts +1 -0
  1191. package/dist/commonjs/utils/hash_buffer.d.ts.map +1 -0
  1192. package/dist/commonjs/utils/id_generator.d.ts +1 -0
  1193. package/dist/commonjs/utils/id_generator.d.ts.map +1 -0
  1194. package/dist/commonjs/utils/is_node.d.ts +1 -0
  1195. package/dist/commonjs/utils/is_node.d.ts.map +1 -0
  1196. package/dist/commonjs/utils/is_non_empty_string.d.ts +1 -0
  1197. package/dist/commonjs/utils/is_non_empty_string.d.ts.map +1 -0
  1198. package/dist/commonjs/utils/is_null_or_undefined.d.ts +1 -0
  1199. package/dist/commonjs/utils/is_null_or_undefined.d.ts.map +1 -0
  1200. package/dist/commonjs/utils/is_worker.d.ts +1 -0
  1201. package/dist/commonjs/utils/is_worker.d.ts.map +1 -0
  1202. package/dist/commonjs/utils/languages/ISO_639-1_to_ISO_639-3.d.ts +1 -0
  1203. package/dist/commonjs/utils/languages/ISO_639-1_to_ISO_639-3.d.ts.map +1 -0
  1204. package/dist/commonjs/utils/languages/ISO_639-2_to_ISO_639-3.d.ts +1 -0
  1205. package/dist/commonjs/utils/languages/ISO_639-2_to_ISO_639-3.d.ts.map +1 -0
  1206. package/dist/commonjs/utils/languages/index.d.ts +5 -2
  1207. package/dist/commonjs/utils/languages/index.d.ts.map +1 -0
  1208. package/dist/commonjs/utils/languages/normalize.d.ts +3 -1
  1209. package/dist/commonjs/utils/languages/normalize.d.ts.map +1 -0
  1210. package/dist/commonjs/utils/languages/normalize.js +4 -1
  1211. package/dist/commonjs/utils/logger.d.ts +1 -0
  1212. package/dist/commonjs/utils/logger.d.ts.map +1 -0
  1213. package/dist/commonjs/utils/monotonic_timestamp.d.ts +1 -0
  1214. package/dist/commonjs/utils/monotonic_timestamp.d.ts.map +1 -0
  1215. package/dist/commonjs/utils/noop.d.ts +1 -0
  1216. package/dist/commonjs/utils/noop.d.ts.map +1 -0
  1217. package/dist/commonjs/utils/object_assign.d.ts +1 -0
  1218. package/dist/commonjs/utils/object_assign.d.ts.map +1 -0
  1219. package/dist/commonjs/utils/object_values.d.ts +1 -0
  1220. package/dist/commonjs/utils/object_values.d.ts.map +1 -0
  1221. package/dist/commonjs/utils/queue_microtask.d.ts +1 -0
  1222. package/dist/commonjs/utils/queue_microtask.d.ts.map +1 -0
  1223. package/dist/commonjs/utils/ranges.d.ts +3 -1
  1224. package/dist/commonjs/utils/ranges.d.ts.map +1 -0
  1225. package/dist/commonjs/utils/reference.d.ts +1 -0
  1226. package/dist/commonjs/utils/reference.d.ts.map +1 -0
  1227. package/dist/commonjs/utils/request/fetch.d.ts +1 -0
  1228. package/dist/commonjs/utils/request/fetch.d.ts.map +1 -0
  1229. package/dist/commonjs/utils/request/fetch.js +14 -0
  1230. package/dist/commonjs/utils/request/index.d.ts +9 -4
  1231. package/dist/commonjs/utils/request/index.d.ts.map +1 -0
  1232. package/dist/commonjs/utils/request/request_error.d.ts +1 -1
  1233. package/dist/commonjs/utils/request/request_error.d.ts.map +1 -0
  1234. package/dist/commonjs/utils/request/request_error.js +14 -12
  1235. package/dist/commonjs/utils/request/xhr.d.ts +1 -0
  1236. package/dist/commonjs/utils/request/xhr.d.ts.map +1 -0
  1237. package/dist/commonjs/utils/request/xhr.js +17 -0
  1238. package/dist/commonjs/utils/resolve_url.d.ts +14 -10
  1239. package/dist/commonjs/utils/resolve_url.d.ts.map +1 -0
  1240. package/dist/commonjs/utils/resolve_url.js +237 -71
  1241. package/dist/commonjs/utils/retry_promise_with_backoff.d.ts +1 -0
  1242. package/dist/commonjs/utils/retry_promise_with_backoff.d.ts.map +1 -0
  1243. package/dist/commonjs/utils/sleep.d.ts +1 -0
  1244. package/dist/commonjs/utils/sleep.d.ts.map +1 -0
  1245. package/dist/commonjs/utils/slice_uint8array.d.ts +1 -0
  1246. package/dist/commonjs/utils/slice_uint8array.d.ts.map +1 -0
  1247. package/dist/commonjs/utils/sorted_list.d.ts +1 -0
  1248. package/dist/commonjs/utils/sorted_list.d.ts.map +1 -0
  1249. package/dist/commonjs/utils/starts_with.d.ts +1 -0
  1250. package/dist/commonjs/utils/starts_with.d.ts.map +1 -0
  1251. package/dist/commonjs/utils/string_parsing.d.ts +2 -1
  1252. package/dist/commonjs/utils/string_parsing.d.ts.map +1 -0
  1253. package/dist/commonjs/utils/string_parsing.js +1 -1
  1254. package/dist/commonjs/utils/sync_or_async.d.ts +1 -0
  1255. package/dist/commonjs/utils/sync_or_async.d.ts.map +1 -0
  1256. package/dist/commonjs/utils/task_canceller.d.ts +1 -1
  1257. package/dist/commonjs/utils/task_canceller.d.ts.map +1 -0
  1258. package/dist/commonjs/utils/task_canceller.js +3 -2
  1259. package/dist/commonjs/utils/warn_once.d.ts +1 -0
  1260. package/dist/commonjs/utils/warn_once.d.ts.map +1 -0
  1261. package/dist/commonjs/utils/weak_map_memory.d.ts +1 -0
  1262. package/dist/commonjs/utils/weak_map_memory.d.ts.map +1 -0
  1263. package/dist/commonjs/utils/wrapInPromise.d.ts +1 -0
  1264. package/dist/commonjs/utils/wrapInPromise.d.ts.map +1 -0
  1265. package/dist/commonjs/utils/xml-parser.d.ts +1 -0
  1266. package/dist/commonjs/utils/xml-parser.d.ts.map +1 -0
  1267. package/dist/commonjs/worker_entry_point.d.ts +1 -0
  1268. package/dist/commonjs/worker_entry_point.d.ts.map +1 -0
  1269. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.d.ts +1 -0
  1270. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -0
  1271. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
  1272. package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts +1 -0
  1273. package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts.map +1 -0
  1274. package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
  1275. package/dist/es2017/__GENERATED_CODE/index.d.ts +1 -1
  1276. package/dist/es2017/__GENERATED_CODE/index.d.ts.map +1 -0
  1277. package/dist/es2017/__GENERATED_CODE/index.js +0 -1
  1278. package/dist/es2017/compat/add_class_name.d.ts +1 -0
  1279. package/dist/es2017/compat/add_class_name.d.ts.map +1 -0
  1280. package/dist/es2017/compat/add_text_track.d.ts +1 -0
  1281. package/dist/es2017/compat/add_text_track.d.ts.map +1 -0
  1282. package/dist/es2017/compat/browser_compatibility_types.d.ts +3 -1
  1283. package/dist/es2017/compat/browser_compatibility_types.d.ts.map +1 -0
  1284. package/dist/es2017/compat/browser_compatibility_types.js +1 -1
  1285. package/dist/es2017/compat/browser_detection.d.ts +1 -0
  1286. package/dist/es2017/compat/browser_detection.d.ts.map +1 -0
  1287. package/dist/es2017/compat/browser_version.d.ts +1 -0
  1288. package/dist/es2017/compat/browser_version.d.ts.map +1 -0
  1289. package/dist/es2017/compat/can_patch_isobmff.d.ts +1 -0
  1290. package/dist/es2017/compat/can_patch_isobmff.d.ts.map +1 -0
  1291. package/dist/es2017/compat/can_rely_on_request_media_key_system_access.d.ts +35 -0
  1292. package/dist/es2017/compat/can_rely_on_request_media_key_system_access.d.ts.map +1 -0
  1293. package/dist/es2017/compat/can_rely_on_request_media_key_system_access.js +40 -0
  1294. package/dist/es2017/compat/can_rely_on_video_visibility_and_size.d.ts +1 -0
  1295. package/dist/es2017/compat/can_rely_on_video_visibility_and_size.d.ts.map +1 -0
  1296. package/dist/es2017/compat/can_reuse_media_keys.d.ts +1 -0
  1297. package/dist/es2017/compat/can_reuse_media_keys.d.ts.map +1 -0
  1298. package/dist/es2017/compat/can_seek_directly_after_loaded_metadata.d.ts +1 -0
  1299. package/dist/es2017/compat/can_seek_directly_after_loaded_metadata.d.ts.map +1 -0
  1300. package/dist/es2017/compat/change_source_buffer_type.d.ts +1 -0
  1301. package/dist/es2017/compat/change_source_buffer_type.d.ts.map +1 -0
  1302. package/dist/es2017/compat/clear_element_src.d.ts +1 -0
  1303. package/dist/es2017/compat/clear_element_src.d.ts.map +1 -0
  1304. package/dist/es2017/compat/eme/close_session.d.ts +1 -0
  1305. package/dist/es2017/compat/eme/close_session.d.ts.map +1 -0
  1306. package/dist/es2017/compat/eme/constants.d.ts +1 -0
  1307. package/dist/es2017/compat/eme/constants.d.ts.map +1 -0
  1308. package/dist/es2017/compat/eme/custom_key_system_access.d.ts +1 -0
  1309. package/dist/es2017/compat/eme/custom_key_system_access.d.ts.map +1 -0
  1310. package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts +1 -0
  1311. package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts.map +1 -0
  1312. package/dist/es2017/compat/eme/custom_media_keys/index.d.ts +4 -2
  1313. package/dist/es2017/compat/eme/custom_media_keys/index.d.ts.map +1 -0
  1314. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +1 -0
  1315. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -0
  1316. package/dist/es2017/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts +1 -0
  1317. package/dist/es2017/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts.map +1 -0
  1318. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +1 -0
  1319. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -0
  1320. package/dist/es2017/compat/eme/custom_media_keys/types.d.ts +1 -0
  1321. package/dist/es2017/compat/eme/custom_media_keys/types.d.ts.map +1 -0
  1322. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts +1 -0
  1323. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -0
  1324. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts +3 -1
  1325. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts.map +1 -0
  1326. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +0 -2
  1327. package/dist/es2017/compat/eme/eme-api-implementation.d.ts +1 -0
  1328. package/dist/es2017/compat/eme/eme-api-implementation.d.ts.map +1 -0
  1329. package/dist/es2017/compat/eme/generate_key_request.d.ts +1 -0
  1330. package/dist/es2017/compat/eme/generate_key_request.d.ts.map +1 -0
  1331. package/dist/es2017/compat/eme/get_init_data.d.ts +1 -0
  1332. package/dist/es2017/compat/eme/get_init_data.d.ts.map +1 -0
  1333. package/dist/es2017/compat/eme/get_uuid_kid_from_keystatus_kid.d.ts +1 -0
  1334. package/dist/es2017/compat/eme/get_uuid_kid_from_keystatus_kid.d.ts.map +1 -0
  1335. package/dist/es2017/compat/eme/get_webkit_fairplay_initdata.d.ts +1 -0
  1336. package/dist/es2017/compat/eme/get_webkit_fairplay_initdata.d.ts.map +1 -0
  1337. package/dist/es2017/compat/eme/index.d.ts +9 -5
  1338. package/dist/es2017/compat/eme/index.d.ts.map +1 -0
  1339. package/dist/es2017/compat/eme/index.js +1 -1
  1340. package/dist/es2017/compat/eme/load_session.d.ts +1 -0
  1341. package/dist/es2017/compat/eme/load_session.d.ts.map +1 -0
  1342. package/dist/es2017/compat/eme/set_media_keys.d.ts +1 -0
  1343. package/dist/es2017/compat/eme/set_media_keys.d.ts.map +1 -0
  1344. package/dist/es2017/compat/enable_audio_track.d.ts +1 -0
  1345. package/dist/es2017/compat/enable_audio_track.d.ts.map +1 -0
  1346. package/dist/es2017/compat/event_listeners.d.ts +1 -0
  1347. package/dist/es2017/compat/event_listeners.d.ts.map +1 -0
  1348. package/dist/es2017/compat/generate_init_data.d.ts +14 -0
  1349. package/dist/es2017/compat/generate_init_data.d.ts.map +1 -0
  1350. package/dist/es2017/compat/generate_init_data.js +56 -0
  1351. package/dist/es2017/compat/get_start_date.d.ts +1 -0
  1352. package/dist/es2017/compat/get_start_date.d.ts.map +1 -0
  1353. package/dist/es2017/compat/has_issues_with_high_media_source_duration.d.ts +1 -0
  1354. package/dist/es2017/compat/has_issues_with_high_media_source_duration.d.ts.map +1 -0
  1355. package/dist/es2017/compat/has_mse_in_worker.d.ts +1 -0
  1356. package/dist/es2017/compat/has_mse_in_worker.d.ts.map +1 -0
  1357. package/dist/es2017/compat/has_webassembly.d.ts +1 -0
  1358. package/dist/es2017/compat/has_webassembly.d.ts.map +1 -0
  1359. package/dist/es2017/compat/has_worker_api.d.ts +1 -0
  1360. package/dist/es2017/compat/has_worker_api.d.ts.map +1 -0
  1361. package/dist/es2017/compat/is_codec_supported.d.ts +1 -0
  1362. package/dist/es2017/compat/is_codec_supported.d.ts.map +1 -0
  1363. package/dist/es2017/compat/is_debug_mode_enabled.d.ts +1 -0
  1364. package/dist/es2017/compat/is_debug_mode_enabled.d.ts.map +1 -0
  1365. package/dist/es2017/compat/is_seeking_approximate.d.ts +1 -0
  1366. package/dist/es2017/compat/is_seeking_approximate.d.ts.map +1 -0
  1367. package/dist/es2017/compat/is_vtt_cue.d.ts +1 -0
  1368. package/dist/es2017/compat/is_vtt_cue.d.ts.map +1 -0
  1369. package/dist/es2017/compat/make_vtt_cue.d.ts +1 -0
  1370. package/dist/es2017/compat/make_vtt_cue.d.ts.map +1 -0
  1371. package/dist/es2017/compat/may_media_element_fail_on_undecipherable_data.d.ts +1 -0
  1372. package/dist/es2017/compat/may_media_element_fail_on_undecipherable_data.d.ts.map +1 -0
  1373. package/dist/es2017/compat/on_height_width_change.d.ts +1 -0
  1374. package/dist/es2017/compat/on_height_width_change.d.ts.map +1 -0
  1375. package/dist/es2017/compat/patch_webkit_source_buffer.d.ts +1 -0
  1376. package/dist/es2017/compat/patch_webkit_source_buffer.d.ts.map +1 -0
  1377. package/dist/es2017/compat/remove_cue.d.ts +1 -0
  1378. package/dist/es2017/compat/remove_cue.d.ts.map +1 -0
  1379. package/dist/es2017/compat/should_await_set_media_keys.d.ts +1 -0
  1380. package/dist/es2017/compat/should_await_set_media_keys.d.ts.map +1 -0
  1381. package/dist/es2017/compat/should_favour_custom_safari_EME.d.ts +1 -0
  1382. package/dist/es2017/compat/should_favour_custom_safari_EME.d.ts.map +1 -0
  1383. package/dist/es2017/compat/should_reload_media_source_on_decipherability_update.d.ts +1 -0
  1384. package/dist/es2017/compat/should_reload_media_source_on_decipherability_update.d.ts.map +1 -0
  1385. package/dist/es2017/compat/should_renew_media_key_system_access.d.ts +1 -0
  1386. package/dist/es2017/compat/should_renew_media_key_system_access.d.ts.map +1 -0
  1387. package/dist/es2017/compat/should_unset_media_keys.d.ts +1 -0
  1388. package/dist/es2017/compat/should_unset_media_keys.d.ts.map +1 -0
  1389. package/dist/es2017/compat/should_validate_metadata.d.ts +1 -0
  1390. package/dist/es2017/compat/should_validate_metadata.d.ts.map +1 -0
  1391. package/dist/es2017/compat/should_wait_for_data_before_loaded.d.ts +1 -0
  1392. package/dist/es2017/compat/should_wait_for_data_before_loaded.d.ts.map +1 -0
  1393. package/dist/es2017/compat/should_wait_for_have_enough_data.d.ts +1 -0
  1394. package/dist/es2017/compat/should_wait_for_have_enough_data.d.ts.map +1 -0
  1395. package/dist/es2017/config.d.ts +1 -0
  1396. package/dist/es2017/config.d.ts.map +1 -0
  1397. package/dist/es2017/core/adaptive/adaptive_representation_selector.d.ts +3 -2
  1398. package/dist/es2017/core/adaptive/adaptive_representation_selector.d.ts.map +1 -0
  1399. package/dist/es2017/core/adaptive/buffer_based_chooser.d.ts +1 -0
  1400. package/dist/es2017/core/adaptive/buffer_based_chooser.d.ts.map +1 -0
  1401. package/dist/es2017/core/adaptive/guess_based_chooser.d.ts +1 -0
  1402. package/dist/es2017/core/adaptive/guess_based_chooser.d.ts.map +1 -0
  1403. package/dist/es2017/core/adaptive/index.d.ts +4 -2
  1404. package/dist/es2017/core/adaptive/index.d.ts.map +1 -0
  1405. package/dist/es2017/core/adaptive/network_analyzer.d.ts +1 -0
  1406. package/dist/es2017/core/adaptive/network_analyzer.d.ts.map +1 -0
  1407. package/dist/es2017/core/adaptive/utils/bandwidth_estimator.d.ts +1 -0
  1408. package/dist/es2017/core/adaptive/utils/bandwidth_estimator.d.ts.map +1 -0
  1409. package/dist/es2017/core/adaptive/utils/ewma.d.ts +1 -0
  1410. package/dist/es2017/core/adaptive/utils/ewma.d.ts.map +1 -0
  1411. package/dist/es2017/core/adaptive/utils/filter_by_bitrate.d.ts +1 -0
  1412. package/dist/es2017/core/adaptive/utils/filter_by_bitrate.d.ts.map +1 -0
  1413. package/dist/es2017/core/adaptive/utils/filter_by_resolution.d.ts +1 -0
  1414. package/dist/es2017/core/adaptive/utils/filter_by_resolution.d.ts.map +1 -0
  1415. package/dist/es2017/core/adaptive/utils/get_buffer_levels.d.ts +1 -0
  1416. package/dist/es2017/core/adaptive/utils/get_buffer_levels.d.ts.map +1 -0
  1417. package/dist/es2017/core/adaptive/utils/last_estimate_storage.d.ts +1 -0
  1418. package/dist/es2017/core/adaptive/utils/last_estimate_storage.d.ts.map +1 -0
  1419. package/dist/es2017/core/adaptive/utils/pending_requests_store.d.ts +1 -0
  1420. package/dist/es2017/core/adaptive/utils/pending_requests_store.d.ts.map +1 -0
  1421. package/dist/es2017/core/adaptive/utils/representation_score_calculator.d.ts +1 -0
  1422. package/dist/es2017/core/adaptive/utils/representation_score_calculator.d.ts.map +1 -0
  1423. package/dist/es2017/core/adaptive/utils/select_optimal_representation.d.ts +1 -0
  1424. package/dist/es2017/core/adaptive/utils/select_optimal_representation.d.ts.map +1 -0
  1425. package/dist/es2017/core/fetchers/cdn_prioritizer.d.ts +1 -0
  1426. package/dist/es2017/core/fetchers/cdn_prioritizer.d.ts.map +1 -0
  1427. package/dist/es2017/core/fetchers/index.d.ts +7 -3
  1428. package/dist/es2017/core/fetchers/index.d.ts.map +1 -0
  1429. package/dist/es2017/core/fetchers/index.js +1 -1
  1430. package/dist/es2017/core/fetchers/manifest/index.d.ts +4 -2
  1431. package/dist/es2017/core/fetchers/manifest/index.d.ts.map +1 -0
  1432. package/dist/es2017/core/fetchers/manifest/manifest_fetcher.d.ts +1 -0
  1433. package/dist/es2017/core/fetchers/manifest/manifest_fetcher.d.ts.map +1 -0
  1434. package/dist/es2017/core/fetchers/segment/index.d.ts +5 -3
  1435. package/dist/es2017/core/fetchers/segment/index.d.ts.map +1 -0
  1436. package/dist/es2017/core/fetchers/segment/initialization_segment_cache.d.ts +1 -0
  1437. package/dist/es2017/core/fetchers/segment/initialization_segment_cache.d.ts.map +1 -0
  1438. package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.d.ts +1 -0
  1439. package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.d.ts.map +1 -0
  1440. package/dist/es2017/core/fetchers/segment/segment_fetcher.d.ts +1 -0
  1441. package/dist/es2017/core/fetchers/segment/segment_fetcher.d.ts.map +1 -0
  1442. package/dist/es2017/core/fetchers/segment/segment_fetcher_creator.d.ts +1 -0
  1443. package/dist/es2017/core/fetchers/segment/segment_fetcher_creator.d.ts.map +1 -0
  1444. package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts +1 -0
  1445. package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts.map +1 -0
  1446. package/dist/es2017/core/fetchers/utils/error_selector.d.ts +1 -0
  1447. package/dist/es2017/core/fetchers/utils/error_selector.d.ts.map +1 -0
  1448. package/dist/es2017/core/fetchers/utils/schedule_request.d.ts +1 -0
  1449. package/dist/es2017/core/fetchers/utils/schedule_request.d.ts.map +1 -0
  1450. package/dist/es2017/core/main/common/DecipherabilityFreezeDetector.d.ts +1 -0
  1451. package/dist/es2017/core/main/common/DecipherabilityFreezeDetector.d.ts.map +1 -0
  1452. package/dist/es2017/core/main/common/content_time_boundaries_observer.d.ts +1 -0
  1453. package/dist/es2017/core/main/common/content_time_boundaries_observer.d.ts.map +1 -0
  1454. package/dist/es2017/core/main/common/content_time_boundaries_observer.js +6 -6
  1455. package/dist/es2017/core/main/common/create_content_time_boundaries_observer.d.ts +1 -0
  1456. package/dist/es2017/core/main/common/create_content_time_boundaries_observer.d.ts.map +1 -0
  1457. package/dist/es2017/core/main/common/get_buffered_data_per_media_buffer.d.ts +1 -0
  1458. package/dist/es2017/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +1 -0
  1459. package/dist/es2017/core/main/worker/content_preparer.d.ts +1 -0
  1460. package/dist/es2017/core/main/worker/content_preparer.d.ts.map +1 -0
  1461. package/dist/es2017/core/main/worker/globals.d.ts +1 -0
  1462. package/dist/es2017/core/main/worker/globals.d.ts.map +1 -0
  1463. package/dist/es2017/core/main/worker/index.d.ts +1 -0
  1464. package/dist/es2017/core/main/worker/index.d.ts.map +1 -0
  1465. package/dist/es2017/core/main/worker/send_message.d.ts +1 -0
  1466. package/dist/es2017/core/main/worker/send_message.d.ts.map +1 -0
  1467. package/dist/es2017/core/main/worker/track_choice_setter.d.ts +1 -0
  1468. package/dist/es2017/core/main/worker/track_choice_setter.d.ts.map +1 -0
  1469. package/dist/es2017/core/main/worker/worker_main.d.ts +1 -0
  1470. package/dist/es2017/core/main/worker/worker_main.d.ts.map +1 -0
  1471. package/dist/es2017/core/main/worker/worker_main.js +22 -0
  1472. package/dist/es2017/core/main/worker/worker_text_displayer_interface.d.ts +1 -0
  1473. package/dist/es2017/core/main/worker/worker_text_displayer_interface.d.ts.map +1 -0
  1474. package/dist/es2017/core/segment_sinks/garbage_collector.d.ts +1 -0
  1475. package/dist/es2017/core/segment_sinks/garbage_collector.d.ts.map +1 -0
  1476. package/dist/es2017/core/segment_sinks/garbage_collector.js +2 -4
  1477. package/dist/es2017/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.d.ts +1 -0
  1478. package/dist/es2017/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.d.ts.map +1 -0
  1479. package/dist/es2017/core/segment_sinks/implementations/audio_video/index.d.ts +1 -0
  1480. package/dist/es2017/core/segment_sinks/implementations/audio_video/index.d.ts.map +1 -0
  1481. package/dist/es2017/core/segment_sinks/implementations/index.d.ts +4 -2
  1482. package/dist/es2017/core/segment_sinks/implementations/index.d.ts.map +1 -0
  1483. package/dist/es2017/core/segment_sinks/implementations/text/index.d.ts +4 -2
  1484. package/dist/es2017/core/segment_sinks/implementations/text/index.d.ts.map +1 -0
  1485. package/dist/es2017/core/segment_sinks/implementations/text/text_segment_buffer.d.ts +1 -0
  1486. package/dist/es2017/core/segment_sinks/implementations/text/text_segment_buffer.d.ts.map +1 -0
  1487. package/dist/es2017/core/segment_sinks/implementations/types.d.ts +1 -0
  1488. package/dist/es2017/core/segment_sinks/implementations/types.d.ts.map +1 -0
  1489. package/dist/es2017/core/segment_sinks/implementations/utils/manual_time_ranges.d.ts +1 -0
  1490. package/dist/es2017/core/segment_sinks/implementations/utils/manual_time_ranges.d.ts.map +1 -0
  1491. package/dist/es2017/core/segment_sinks/index.d.ts +7 -3
  1492. package/dist/es2017/core/segment_sinks/index.d.ts.map +1 -0
  1493. package/dist/es2017/core/segment_sinks/index.js +1 -1
  1494. package/dist/es2017/core/segment_sinks/inventory/buffered_history.d.ts +1 -0
  1495. package/dist/es2017/core/segment_sinks/inventory/buffered_history.d.ts.map +1 -0
  1496. package/dist/es2017/core/segment_sinks/inventory/index.d.ts +7 -4
  1497. package/dist/es2017/core/segment_sinks/inventory/index.d.ts.map +1 -0
  1498. package/dist/es2017/core/segment_sinks/inventory/segment_inventory.d.ts +1 -0
  1499. package/dist/es2017/core/segment_sinks/inventory/segment_inventory.d.ts.map +1 -0
  1500. package/dist/es2017/core/segment_sinks/inventory/types.d.ts +7 -1
  1501. package/dist/es2017/core/segment_sinks/inventory/types.d.ts.map +1 -0
  1502. package/dist/es2017/core/segment_sinks/inventory/utils.d.ts +1 -0
  1503. package/dist/es2017/core/segment_sinks/inventory/utils.d.ts.map +1 -0
  1504. package/dist/es2017/core/segment_sinks/inventory/utils.js +3 -3
  1505. package/dist/es2017/core/segment_sinks/segment_buffers_store.d.ts +26 -0
  1506. package/dist/es2017/core/segment_sinks/segment_buffers_store.d.ts.map +1 -0
  1507. package/dist/es2017/core/segment_sinks/segment_buffers_store.js +24 -0
  1508. package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts +1 -0
  1509. package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts.map +1 -0
  1510. package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.d.ts +1 -0
  1511. package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.d.ts.map +1 -0
  1512. package/dist/es2017/core/stream/adaptation/index.d.ts +1 -0
  1513. package/dist/es2017/core/stream/adaptation/index.d.ts.map +1 -0
  1514. package/dist/es2017/core/stream/adaptation/types.d.ts +1 -0
  1515. package/dist/es2017/core/stream/adaptation/types.d.ts.map +1 -0
  1516. package/dist/es2017/core/stream/index.d.ts +7 -5
  1517. package/dist/es2017/core/stream/index.d.ts.map +1 -0
  1518. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.d.ts +1 -0
  1519. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.d.ts.map +1 -0
  1520. package/dist/es2017/core/stream/orchestrator/index.d.ts +4 -2
  1521. package/dist/es2017/core/stream/orchestrator/index.d.ts.map +1 -0
  1522. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts +1 -0
  1523. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -0
  1524. package/dist/es2017/core/stream/period/index.d.ts +1 -0
  1525. package/dist/es2017/core/stream/period/index.d.ts.map +1 -0
  1526. package/dist/es2017/core/stream/period/period_stream.d.ts +1 -0
  1527. package/dist/es2017/core/stream/period/period_stream.d.ts.map +1 -0
  1528. package/dist/es2017/core/stream/period/types.d.ts +3 -2
  1529. package/dist/es2017/core/stream/period/types.d.ts.map +1 -0
  1530. package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +1 -0
  1531. package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.d.ts.map +1 -0
  1532. package/dist/es2017/core/stream/representation/index.d.ts +1 -0
  1533. package/dist/es2017/core/stream/representation/index.d.ts.map +1 -0
  1534. package/dist/es2017/core/stream/representation/representation_stream.d.ts +1 -0
  1535. package/dist/es2017/core/stream/representation/representation_stream.d.ts.map +1 -0
  1536. package/dist/es2017/core/stream/representation/types.d.ts +1 -0
  1537. package/dist/es2017/core/stream/representation/types.d.ts.map +1 -0
  1538. package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.d.ts +1 -0
  1539. package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.d.ts.map +1 -0
  1540. package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.d.ts +1 -0
  1541. package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.d.ts.map +1 -0
  1542. package/dist/es2017/core/stream/representation/utils/downloading_queue.d.ts +1 -0
  1543. package/dist/es2017/core/stream/representation/utils/downloading_queue.d.ts.map +1 -0
  1544. package/dist/es2017/core/stream/representation/utils/get_buffer_status.d.ts +1 -0
  1545. package/dist/es2017/core/stream/representation/utils/get_buffer_status.d.ts.map +1 -0
  1546. package/dist/es2017/core/stream/representation/utils/get_needed_segments.d.ts +1 -0
  1547. package/dist/es2017/core/stream/representation/utils/get_needed_segments.d.ts.map +1 -0
  1548. package/dist/es2017/core/stream/representation/utils/get_needed_segments.js +38 -30
  1549. package/dist/es2017/core/stream/representation/utils/get_segment_priority.d.ts +1 -0
  1550. package/dist/es2017/core/stream/representation/utils/get_segment_priority.d.ts.map +1 -0
  1551. package/dist/es2017/core/stream/representation/utils/push_init_segment.d.ts +1 -0
  1552. package/dist/es2017/core/stream/representation/utils/push_init_segment.d.ts.map +1 -0
  1553. package/dist/es2017/core/stream/representation/utils/push_media_segment.d.ts +1 -0
  1554. package/dist/es2017/core/stream/representation/utils/push_media_segment.d.ts.map +1 -0
  1555. package/dist/es2017/core/types.d.ts +1 -0
  1556. package/dist/es2017/core/types.d.ts.map +1 -0
  1557. package/dist/es2017/default_config.d.ts +1 -0
  1558. package/dist/es2017/default_config.d.ts.map +1 -0
  1559. package/dist/es2017/errors/custom_loader_error.d.ts +1 -1
  1560. package/dist/es2017/errors/custom_loader_error.d.ts.map +1 -0
  1561. package/dist/es2017/errors/custom_loader_error.js +1 -2
  1562. package/dist/es2017/errors/encrypted_media_error.d.ts +1 -1
  1563. package/dist/es2017/errors/encrypted_media_error.d.ts.map +1 -0
  1564. package/dist/es2017/errors/encrypted_media_error.js +1 -2
  1565. package/dist/es2017/errors/error_codes.d.ts +1 -0
  1566. package/dist/es2017/errors/error_codes.d.ts.map +1 -0
  1567. package/dist/es2017/errors/error_message.d.ts +1 -0
  1568. package/dist/es2017/errors/error_message.d.ts.map +1 -0
  1569. package/dist/es2017/errors/format_error.d.ts +1 -0
  1570. package/dist/es2017/errors/format_error.d.ts.map +1 -0
  1571. package/dist/es2017/errors/index.d.ts +13 -6
  1572. package/dist/es2017/errors/index.d.ts.map +1 -0
  1573. package/dist/es2017/errors/index.js +2 -2
  1574. package/dist/es2017/errors/is_known_error.d.ts +1 -0
  1575. package/dist/es2017/errors/is_known_error.d.ts.map +1 -0
  1576. package/dist/es2017/errors/media_error.d.ts +1 -1
  1577. package/dist/es2017/errors/media_error.d.ts.map +1 -0
  1578. package/dist/es2017/errors/media_error.js +1 -2
  1579. package/dist/es2017/errors/network_error.d.ts +1 -1
  1580. package/dist/es2017/errors/network_error.d.ts.map +1 -0
  1581. package/dist/es2017/errors/network_error.js +1 -2
  1582. package/dist/es2017/errors/other_error.d.ts +1 -1
  1583. package/dist/es2017/errors/other_error.d.ts.map +1 -0
  1584. package/dist/es2017/errors/other_error.js +1 -2
  1585. package/dist/es2017/errors/source_buffer_error.d.ts +1 -1
  1586. package/dist/es2017/errors/source_buffer_error.d.ts.map +1 -0
  1587. package/dist/es2017/errors/source_buffer_error.js +1 -2
  1588. package/dist/es2017/errors/worker_initialization_error.d.ts +1 -1
  1589. package/dist/es2017/errors/worker_initialization_error.d.ts.map +1 -0
  1590. package/dist/es2017/errors/worker_initialization_error.js +1 -2
  1591. package/dist/es2017/experimental/features/index.d.ts +1 -0
  1592. package/dist/es2017/experimental/features/index.d.ts.map +1 -0
  1593. package/dist/es2017/experimental/features/local.d.ts +1 -0
  1594. package/dist/es2017/experimental/features/local.d.ts.map +1 -0
  1595. package/dist/es2017/experimental/features/metaplaylist.d.ts +1 -0
  1596. package/dist/es2017/experimental/features/metaplaylist.d.ts.map +1 -0
  1597. package/dist/es2017/experimental/features/multi_thread.d.ts +1 -0
  1598. package/dist/es2017/experimental/features/multi_thread.d.ts.map +1 -0
  1599. package/dist/es2017/experimental/index.d.ts +1 -0
  1600. package/dist/es2017/experimental/index.d.ts.map +1 -0
  1601. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +1 -0
  1602. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.d.ts.map +1 -0
  1603. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +1 -0
  1604. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts.map +1 -0
  1605. package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.d.ts +1 -0
  1606. package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.d.ts.map +1 -0
  1607. package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +1 -0
  1608. package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts.map +1 -0
  1609. package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +1 -0
  1610. package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts.map +1 -0
  1611. package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +1 -0
  1612. package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts.map +1 -0
  1613. package/dist/es2017/experimental/tools/VideoThumbnailLoader/types.d.ts +1 -0
  1614. package/dist/es2017/experimental/tools/VideoThumbnailLoader/types.d.ts.map +1 -0
  1615. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +1 -0
  1616. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts.map +1 -0
  1617. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +1 -1
  1618. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts.map +1 -0
  1619. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +2 -2
  1620. package/dist/es2017/experimental/tools/createMetaplaylist/get_duration_from_manifest.d.ts +1 -0
  1621. package/dist/es2017/experimental/tools/createMetaplaylist/get_duration_from_manifest.d.ts.map +1 -0
  1622. package/dist/es2017/experimental/tools/createMetaplaylist/index.d.ts +1 -0
  1623. package/dist/es2017/experimental/tools/createMetaplaylist/index.d.ts.map +1 -0
  1624. package/dist/es2017/experimental/tools/index.d.ts +1 -0
  1625. package/dist/es2017/experimental/tools/index.d.ts.map +1 -0
  1626. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/index.d.ts +1 -0
  1627. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/index.d.ts.map +1 -0
  1628. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts +1 -0
  1629. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts.map +1 -0
  1630. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts +1 -0
  1631. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts.map +1 -0
  1632. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/index.d.ts +3 -2
  1633. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/index.d.ts.map +1 -0
  1634. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/log.d.ts +1 -0
  1635. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/log.d.ts.map +1 -0
  1636. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts +1 -0
  1637. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts.map +1 -0
  1638. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts +1 -0
  1639. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts.map +1 -0
  1640. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +1 -0
  1641. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts.map +1 -0
  1642. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts +1 -0
  1643. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts.map +1 -0
  1644. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts +1 -0
  1645. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts.map +1 -0
  1646. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +1 -0
  1647. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts.map +1 -0
  1648. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts +1 -0
  1649. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts.map +1 -0
  1650. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts +1 -0
  1651. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts.map +1 -0
  1652. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +1 -0
  1653. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts.map +1 -0
  1654. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/types.d.ts +1 -0
  1655. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/types.d.ts.map +1 -0
  1656. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.d.ts +1 -0
  1657. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.d.ts.map +1 -0
  1658. package/dist/es2017/features/add_features.d.ts +1 -0
  1659. package/dist/es2017/features/add_features.d.ts.map +1 -0
  1660. package/dist/es2017/features/features_object.d.ts +1 -0
  1661. package/dist/es2017/features/features_object.d.ts.map +1 -0
  1662. package/dist/es2017/features/index.d.ts +4 -2
  1663. package/dist/es2017/features/index.d.ts.map +1 -0
  1664. package/dist/es2017/features/list/dash.d.ts +1 -0
  1665. package/dist/es2017/features/list/dash.d.ts.map +1 -0
  1666. package/dist/es2017/features/list/dash_wasm.d.ts +1 -0
  1667. package/dist/es2017/features/list/dash_wasm.d.ts.map +1 -0
  1668. package/dist/es2017/features/list/debug_element.d.ts +1 -0
  1669. package/dist/es2017/features/list/debug_element.d.ts.map +1 -0
  1670. package/dist/es2017/features/list/directfile.d.ts +1 -0
  1671. package/dist/es2017/features/list/directfile.d.ts.map +1 -0
  1672. package/dist/es2017/features/list/eme.d.ts +1 -0
  1673. package/dist/es2017/features/list/eme.d.ts.map +1 -0
  1674. package/dist/es2017/features/list/html_sami_parser.d.ts +1 -0
  1675. package/dist/es2017/features/list/html_sami_parser.d.ts.map +1 -0
  1676. package/dist/es2017/features/list/html_srt_parser.d.ts +1 -0
  1677. package/dist/es2017/features/list/html_srt_parser.d.ts.map +1 -0
  1678. package/dist/es2017/features/list/html_text_buffer.d.ts +1 -0
  1679. package/dist/es2017/features/list/html_text_buffer.d.ts.map +1 -0
  1680. package/dist/es2017/features/list/html_ttml_parser.d.ts +1 -0
  1681. package/dist/es2017/features/list/html_ttml_parser.d.ts.map +1 -0
  1682. package/dist/es2017/features/list/html_vtt_parser.d.ts +1 -0
  1683. package/dist/es2017/features/list/html_vtt_parser.d.ts.map +1 -0
  1684. package/dist/es2017/features/list/index.d.ts +1 -0
  1685. package/dist/es2017/features/list/index.d.ts.map +1 -0
  1686. package/dist/es2017/features/list/media_source_main.d.ts +1 -0
  1687. package/dist/es2017/features/list/media_source_main.d.ts.map +1 -0
  1688. package/dist/es2017/features/list/native_sami_parser.d.ts +1 -0
  1689. package/dist/es2017/features/list/native_sami_parser.d.ts.map +1 -0
  1690. package/dist/es2017/features/list/native_srt_parser.d.ts +1 -0
  1691. package/dist/es2017/features/list/native_srt_parser.d.ts.map +1 -0
  1692. package/dist/es2017/features/list/native_text_buffer.d.ts +1 -0
  1693. package/dist/es2017/features/list/native_text_buffer.d.ts.map +1 -0
  1694. package/dist/es2017/features/list/native_ttml_parser.d.ts +1 -0
  1695. package/dist/es2017/features/list/native_ttml_parser.d.ts.map +1 -0
  1696. package/dist/es2017/features/list/native_vtt_parser.d.ts +1 -0
  1697. package/dist/es2017/features/list/native_vtt_parser.d.ts.map +1 -0
  1698. package/dist/es2017/features/list/smooth.d.ts +1 -0
  1699. package/dist/es2017/features/list/smooth.d.ts.map +1 -0
  1700. package/dist/es2017/features/types.d.ts +1 -0
  1701. package/dist/es2017/features/types.d.ts.map +1 -0
  1702. package/dist/es2017/index.d.ts +1 -0
  1703. package/dist/es2017/index.d.ts.map +1 -0
  1704. package/dist/es2017/index.js +4 -0
  1705. package/dist/es2017/log.d.ts +1 -0
  1706. package/dist/es2017/log.d.ts.map +1 -0
  1707. package/dist/es2017/main_thread/api/debug/buffer_graph.d.ts +4 -3
  1708. package/dist/es2017/main_thread/api/debug/buffer_graph.d.ts.map +1 -0
  1709. package/dist/es2017/main_thread/api/debug/buffer_graph.js +20 -9
  1710. package/dist/es2017/main_thread/api/debug/buffer_size_graph.d.ts +1 -0
  1711. package/dist/es2017/main_thread/api/debug/buffer_size_graph.d.ts.map +1 -0
  1712. package/dist/es2017/main_thread/api/debug/constants.d.ts +1 -0
  1713. package/dist/es2017/main_thread/api/debug/constants.d.ts.map +1 -0
  1714. package/dist/es2017/main_thread/api/debug/index.d.ts +1 -0
  1715. package/dist/es2017/main_thread/api/debug/index.d.ts.map +1 -0
  1716. package/dist/es2017/main_thread/api/debug/modules/general_info.d.ts +1 -0
  1717. package/dist/es2017/main_thread/api/debug/modules/general_info.d.ts.map +1 -0
  1718. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.d.ts +1 -0
  1719. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -0
  1720. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.js +24 -5
  1721. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_size.d.ts +1 -0
  1722. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_size.d.ts.map +1 -0
  1723. package/dist/es2017/main_thread/api/debug/render.d.ts +1 -0
  1724. package/dist/es2017/main_thread/api/debug/render.d.ts.map +1 -0
  1725. package/dist/es2017/main_thread/api/debug/utils.d.ts +1 -0
  1726. package/dist/es2017/main_thread/api/debug/utils.d.ts.map +1 -0
  1727. package/dist/es2017/main_thread/api/index.d.ts +1 -0
  1728. package/dist/es2017/main_thread/api/index.d.ts.map +1 -0
  1729. package/dist/es2017/main_thread/api/option_utils.d.ts +1 -0
  1730. package/dist/es2017/main_thread/api/option_utils.d.ts.map +1 -0
  1731. package/dist/es2017/main_thread/api/public_api.d.ts +13 -8
  1732. package/dist/es2017/main_thread/api/public_api.d.ts.map +1 -0
  1733. package/dist/es2017/main_thread/api/public_api.js +15 -19
  1734. package/dist/es2017/main_thread/api/utils.d.ts +1 -0
  1735. package/dist/es2017/main_thread/api/utils.d.ts.map +1 -0
  1736. package/dist/es2017/main_thread/decrypt/attach_media_keys.d.ts +1 -0
  1737. package/dist/es2017/main_thread/decrypt/attach_media_keys.d.ts.map +1 -0
  1738. package/dist/es2017/main_thread/decrypt/clear_on_stop.d.ts +1 -0
  1739. package/dist/es2017/main_thread/decrypt/clear_on_stop.d.ts.map +1 -0
  1740. package/dist/es2017/main_thread/decrypt/content_decryptor.d.ts +1 -0
  1741. package/dist/es2017/main_thread/decrypt/content_decryptor.d.ts.map +1 -0
  1742. package/dist/es2017/main_thread/decrypt/content_decryptor.js +12 -1
  1743. package/dist/es2017/main_thread/decrypt/create_or_load_session.d.ts +1 -0
  1744. package/dist/es2017/main_thread/decrypt/create_or_load_session.d.ts.map +1 -0
  1745. package/dist/es2017/main_thread/decrypt/create_session.d.ts +1 -0
  1746. package/dist/es2017/main_thread/decrypt/create_session.d.ts.map +1 -0
  1747. package/dist/es2017/main_thread/decrypt/dispose_decryption_resources.d.ts +1 -0
  1748. package/dist/es2017/main_thread/decrypt/dispose_decryption_resources.d.ts.map +1 -0
  1749. package/dist/es2017/main_thread/decrypt/find_key_system.d.ts +9 -0
  1750. package/dist/es2017/main_thread/decrypt/find_key_system.d.ts.map +1 -0
  1751. package/dist/es2017/main_thread/decrypt/find_key_system.js +26 -1
  1752. package/dist/es2017/main_thread/decrypt/get_key_system_configuration.d.ts +1 -0
  1753. package/dist/es2017/main_thread/decrypt/get_key_system_configuration.d.ts.map +1 -0
  1754. package/dist/es2017/main_thread/decrypt/get_media_keys.d.ts +1 -0
  1755. package/dist/es2017/main_thread/decrypt/get_media_keys.d.ts.map +1 -0
  1756. package/dist/es2017/main_thread/decrypt/index.d.ts +1 -0
  1757. package/dist/es2017/main_thread/decrypt/index.d.ts.map +1 -0
  1758. package/dist/es2017/main_thread/decrypt/init_media_keys.d.ts +1 -0
  1759. package/dist/es2017/main_thread/decrypt/init_media_keys.d.ts.map +1 -0
  1760. package/dist/es2017/main_thread/decrypt/session_events_listener.d.ts +1 -0
  1761. package/dist/es2017/main_thread/decrypt/session_events_listener.d.ts.map +1 -0
  1762. package/dist/es2017/main_thread/decrypt/session_events_listener.js +2 -2
  1763. package/dist/es2017/main_thread/decrypt/set_server_certificate.d.ts +1 -0
  1764. package/dist/es2017/main_thread/decrypt/set_server_certificate.d.ts.map +1 -0
  1765. package/dist/es2017/main_thread/decrypt/types.d.ts +1 -0
  1766. package/dist/es2017/main_thread/decrypt/types.d.ts.map +1 -0
  1767. package/dist/es2017/main_thread/decrypt/utils/are_init_values_compatible.d.ts +1 -0
  1768. package/dist/es2017/main_thread/decrypt/utils/are_init_values_compatible.d.ts.map +1 -0
  1769. package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.d.ts +1 -0
  1770. package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.d.ts.map +1 -0
  1771. package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.js +1 -1
  1772. package/dist/es2017/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts +1 -0
  1773. package/dist/es2017/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts.map +1 -0
  1774. package/dist/es2017/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts +1 -0
  1775. package/dist/es2017/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts.map +1 -0
  1776. package/dist/es2017/main_thread/decrypt/utils/get_drm_system_id.d.ts +1 -0
  1777. package/dist/es2017/main_thread/decrypt/utils/get_drm_system_id.d.ts.map +1 -0
  1778. package/dist/es2017/main_thread/decrypt/utils/init_data_values_container.d.ts +1 -0
  1779. package/dist/es2017/main_thread/decrypt/utils/init_data_values_container.d.ts.map +1 -0
  1780. package/dist/es2017/main_thread/decrypt/utils/is_session_usable.d.ts +1 -0
  1781. package/dist/es2017/main_thread/decrypt/utils/is_session_usable.d.ts.map +1 -0
  1782. package/dist/es2017/main_thread/decrypt/utils/key_id_comparison.d.ts +1 -0
  1783. package/dist/es2017/main_thread/decrypt/utils/key_id_comparison.d.ts.map +1 -0
  1784. package/dist/es2017/main_thread/decrypt/utils/key_session_record.d.ts +1 -0
  1785. package/dist/es2017/main_thread/decrypt/utils/key_session_record.d.ts.map +1 -0
  1786. package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.d.ts +1 -0
  1787. package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.d.ts.map +1 -0
  1788. package/dist/es2017/main_thread/decrypt/utils/media_keys_infos_store.d.ts +1 -0
  1789. package/dist/es2017/main_thread/decrypt/utils/media_keys_infos_store.d.ts.map +1 -0
  1790. package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts +1 -0
  1791. package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -0
  1792. package/dist/es2017/main_thread/decrypt/utils/serializable_bytes.d.ts +1 -0
  1793. package/dist/es2017/main_thread/decrypt/utils/serializable_bytes.d.ts.map +1 -0
  1794. package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.d.ts +1 -0
  1795. package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.d.ts.map +1 -0
  1796. package/dist/es2017/main_thread/init/directfile_content_initializer.d.ts +1 -0
  1797. package/dist/es2017/main_thread/init/directfile_content_initializer.d.ts.map +1 -0
  1798. package/dist/es2017/main_thread/init/directfile_content_initializer.js +3 -1
  1799. package/dist/es2017/main_thread/init/index.d.ts +3 -1
  1800. package/dist/es2017/main_thread/init/index.d.ts.map +1 -0
  1801. package/dist/es2017/main_thread/init/index.js +1 -1
  1802. package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts +1 -0
  1803. package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts.map +1 -0
  1804. package/dist/es2017/main_thread/init/media_source_content_initializer.js +5 -1
  1805. package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts +6 -0
  1806. package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -0
  1807. package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +39 -4
  1808. package/dist/es2017/main_thread/init/send_message.d.ts +1 -0
  1809. package/dist/es2017/main_thread/init/send_message.d.ts.map +1 -0
  1810. package/dist/es2017/main_thread/init/types.d.ts +4 -2
  1811. package/dist/es2017/main_thread/init/types.d.ts.map +1 -0
  1812. package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts +1 -0
  1813. package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -0
  1814. package/dist/es2017/main_thread/init/utils/create_media_source.d.ts +1 -0
  1815. package/dist/es2017/main_thread/init/utils/create_media_source.d.ts.map +1 -0
  1816. package/dist/es2017/main_thread/init/utils/get_initial_time.d.ts +1 -0
  1817. package/dist/es2017/main_thread/init/utils/get_initial_time.d.ts.map +1 -0
  1818. package/dist/es2017/main_thread/init/utils/get_loaded_reference.d.ts +1 -0
  1819. package/dist/es2017/main_thread/init/utils/get_loaded_reference.d.ts.map +1 -0
  1820. package/dist/es2017/main_thread/init/utils/initial_seek_and_play.d.ts +1 -0
  1821. package/dist/es2017/main_thread/init/utils/initial_seek_and_play.d.ts.map +1 -0
  1822. package/dist/es2017/main_thread/init/utils/initialize_content_decryption.d.ts +1 -0
  1823. package/dist/es2017/main_thread/init/utils/initialize_content_decryption.d.ts.map +1 -0
  1824. package/dist/es2017/main_thread/init/utils/main_thread_text_displayer_interface.d.ts +1 -0
  1825. package/dist/es2017/main_thread/init/utils/main_thread_text_displayer_interface.d.ts.map +1 -0
  1826. package/dist/es2017/main_thread/init/utils/rebuffering_controller.d.ts +1 -0
  1827. package/dist/es2017/main_thread/init/utils/rebuffering_controller.d.ts.map +1 -0
  1828. package/dist/es2017/main_thread/init/utils/rebuffering_controller.js +3 -3
  1829. package/dist/es2017/main_thread/init/utils/stream_events_emitter/are_same_stream_events.d.ts +1 -0
  1830. package/dist/es2017/main_thread/init/utils/stream_events_emitter/are_same_stream_events.d.ts.map +1 -0
  1831. package/dist/es2017/main_thread/init/utils/stream_events_emitter/index.d.ts +1 -0
  1832. package/dist/es2017/main_thread/init/utils/stream_events_emitter/index.d.ts.map +1 -0
  1833. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +1 -0
  1834. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -0
  1835. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +2 -4
  1836. package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +1 -0
  1837. package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts.map +1 -0
  1838. package/dist/es2017/main_thread/init/utils/stream_events_emitter/types.d.ts +1 -0
  1839. package/dist/es2017/main_thread/init/utils/stream_events_emitter/types.d.ts.map +1 -0
  1840. package/dist/es2017/main_thread/init/utils/throw_on_media_error.d.ts +1 -0
  1841. package/dist/es2017/main_thread/init/utils/throw_on_media_error.d.ts.map +1 -0
  1842. package/dist/es2017/main_thread/text_displayer/html/html_parsers.d.ts +1 -0
  1843. package/dist/es2017/main_thread/text_displayer/html/html_parsers.d.ts.map +1 -0
  1844. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.d.ts +1 -0
  1845. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -0
  1846. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.js +7 -8
  1847. package/dist/es2017/main_thread/text_displayer/html/index.d.ts +1 -0
  1848. package/dist/es2017/main_thread/text_displayer/html/index.d.ts.map +1 -0
  1849. package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.d.ts +1 -0
  1850. package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.d.ts.map +1 -0
  1851. package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.js +7 -7
  1852. package/dist/es2017/main_thread/text_displayer/html/update_proportional_elements.d.ts +1 -0
  1853. package/dist/es2017/main_thread/text_displayer/html/update_proportional_elements.d.ts.map +1 -0
  1854. package/dist/es2017/main_thread/text_displayer/html/utils.d.ts +1 -0
  1855. package/dist/es2017/main_thread/text_displayer/html/utils.d.ts.map +1 -0
  1856. package/dist/es2017/main_thread/text_displayer/index.d.ts +3 -2
  1857. package/dist/es2017/main_thread/text_displayer/index.d.ts.map +1 -0
  1858. package/dist/es2017/main_thread/text_displayer/manual_time_ranges.d.ts +1 -0
  1859. package/dist/es2017/main_thread/text_displayer/manual_time_ranges.d.ts.map +1 -0
  1860. package/dist/es2017/main_thread/text_displayer/native/index.d.ts +1 -0
  1861. package/dist/es2017/main_thread/text_displayer/native/index.d.ts.map +1 -0
  1862. package/dist/es2017/main_thread/text_displayer/native/native_parsers.d.ts +1 -0
  1863. package/dist/es2017/main_thread/text_displayer/native/native_parsers.d.ts.map +1 -0
  1864. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.d.ts +1 -0
  1865. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.d.ts.map +1 -0
  1866. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.js +2 -2
  1867. package/dist/es2017/main_thread/text_displayer/types.d.ts +1 -0
  1868. package/dist/es2017/main_thread/text_displayer/types.d.ts.map +1 -0
  1869. package/dist/es2017/main_thread/tracks_store/index.d.ts +1 -0
  1870. package/dist/es2017/main_thread/tracks_store/index.d.ts.map +1 -0
  1871. package/dist/es2017/main_thread/tracks_store/media_element_tracks_store.d.ts +1 -0
  1872. package/dist/es2017/main_thread/tracks_store/media_element_tracks_store.d.ts.map +1 -0
  1873. package/dist/es2017/main_thread/tracks_store/track_dispatcher.d.ts +1 -0
  1874. package/dist/es2017/main_thread/tracks_store/track_dispatcher.d.ts.map +1 -0
  1875. package/dist/es2017/main_thread/tracks_store/tracks_store.d.ts +1 -0
  1876. package/dist/es2017/main_thread/tracks_store/tracks_store.d.ts.map +1 -0
  1877. package/dist/es2017/main_thread/types.d.ts +1 -0
  1878. package/dist/es2017/main_thread/types.d.ts.map +1 -0
  1879. package/dist/es2017/manifest/classes/adaptation.d.ts +1 -0
  1880. package/dist/es2017/manifest/classes/adaptation.d.ts.map +1 -0
  1881. package/dist/es2017/manifest/classes/index.d.ts +12 -6
  1882. package/dist/es2017/manifest/classes/index.d.ts.map +1 -0
  1883. package/dist/es2017/manifest/classes/index.js +2 -6
  1884. package/dist/es2017/manifest/classes/manifest.d.ts +2 -1
  1885. package/dist/es2017/manifest/classes/manifest.d.ts.map +1 -0
  1886. package/dist/es2017/manifest/classes/period.d.ts +1 -0
  1887. package/dist/es2017/manifest/classes/period.d.ts.map +1 -0
  1888. package/dist/es2017/manifest/classes/representation.d.ts +1 -0
  1889. package/dist/es2017/manifest/classes/representation.d.ts.map +1 -0
  1890. package/dist/es2017/manifest/classes/representation_index/index.d.ts +3 -1
  1891. package/dist/es2017/manifest/classes/representation_index/index.d.ts.map +1 -0
  1892. package/dist/es2017/manifest/classes/representation_index/index.js +1 -1
  1893. package/dist/es2017/manifest/classes/representation_index/static.d.ts +1 -0
  1894. package/dist/es2017/manifest/classes/representation_index/static.d.ts.map +1 -0
  1895. package/dist/es2017/manifest/classes/representation_index/types.d.ts +1 -0
  1896. package/dist/es2017/manifest/classes/representation_index/types.d.ts.map +1 -0
  1897. package/dist/es2017/manifest/classes/types.d.ts +1 -0
  1898. package/dist/es2017/manifest/classes/types.d.ts.map +1 -0
  1899. package/dist/es2017/manifest/classes/update_period_in_place.d.ts +1 -0
  1900. package/dist/es2017/manifest/classes/update_period_in_place.d.ts.map +1 -0
  1901. package/dist/es2017/manifest/classes/update_periods.d.ts +1 -0
  1902. package/dist/es2017/manifest/classes/update_periods.d.ts.map +1 -0
  1903. package/dist/es2017/manifest/classes/utils.d.ts +1 -0
  1904. package/dist/es2017/manifest/classes/utils.d.ts.map +1 -0
  1905. package/dist/es2017/manifest/index.d.ts +3 -1
  1906. package/dist/es2017/manifest/index.d.ts.map +1 -0
  1907. package/dist/es2017/manifest/types.d.ts +1 -0
  1908. package/dist/es2017/manifest/types.d.ts.map +1 -0
  1909. package/dist/es2017/manifest/utils.d.ts +1 -0
  1910. package/dist/es2017/manifest/utils.d.ts.map +1 -0
  1911. package/dist/es2017/minimal.d.ts +1 -0
  1912. package/dist/es2017/minimal.d.ts.map +1 -0
  1913. package/dist/es2017/mse/index.d.ts +3 -1
  1914. package/dist/es2017/mse/index.d.ts.map +1 -0
  1915. package/dist/es2017/mse/main_codec_support_prober.d.ts +1 -0
  1916. package/dist/es2017/mse/main_codec_support_prober.d.ts.map +1 -0
  1917. package/dist/es2017/mse/main_media_source_interface.d.ts +1 -0
  1918. package/dist/es2017/mse/main_media_source_interface.d.ts.map +1 -0
  1919. package/dist/es2017/mse/types.d.ts +1 -0
  1920. package/dist/es2017/mse/types.d.ts.map +1 -0
  1921. package/dist/es2017/mse/utils/end_of_stream.d.ts +1 -0
  1922. package/dist/es2017/mse/utils/end_of_stream.d.ts.map +1 -0
  1923. package/dist/es2017/mse/utils/end_of_stream.js +6 -1
  1924. package/dist/es2017/mse/utils/media_source_duration_updater.d.ts +1 -0
  1925. package/dist/es2017/mse/utils/media_source_duration_updater.d.ts.map +1 -0
  1926. package/dist/es2017/mse/worker_codec_support_prober.d.ts +1 -0
  1927. package/dist/es2017/mse/worker_codec_support_prober.d.ts.map +1 -0
  1928. package/dist/es2017/mse/worker_media_source_interface.d.ts +1 -0
  1929. package/dist/es2017/mse/worker_media_source_interface.d.ts.map +1 -0
  1930. package/dist/es2017/multithread_types.d.ts +22 -4
  1931. package/dist/es2017/multithread_types.d.ts.map +1 -0
  1932. package/dist/es2017/parsers/containers/isobmff/constants.d.ts +1 -0
  1933. package/dist/es2017/parsers/containers/isobmff/constants.d.ts.map +1 -0
  1934. package/dist/es2017/parsers/containers/isobmff/create_box.d.ts +1 -0
  1935. package/dist/es2017/parsers/containers/isobmff/create_box.d.ts.map +1 -0
  1936. package/dist/es2017/parsers/containers/isobmff/drm/index.d.ts +1 -0
  1937. package/dist/es2017/parsers/containers/isobmff/drm/index.d.ts.map +1 -0
  1938. package/dist/es2017/parsers/containers/isobmff/drm/playready.d.ts +1 -0
  1939. package/dist/es2017/parsers/containers/isobmff/drm/playready.d.ts.map +1 -0
  1940. package/dist/es2017/parsers/containers/isobmff/extract_complete_chunks.d.ts +1 -0
  1941. package/dist/es2017/parsers/containers/isobmff/extract_complete_chunks.d.ts.map +1 -0
  1942. package/dist/es2017/parsers/containers/isobmff/find_complete_box.d.ts +1 -0
  1943. package/dist/es2017/parsers/containers/isobmff/find_complete_box.d.ts.map +1 -0
  1944. package/dist/es2017/parsers/containers/isobmff/get_box.d.ts +1 -0
  1945. package/dist/es2017/parsers/containers/isobmff/get_box.d.ts.map +1 -0
  1946. package/dist/es2017/parsers/containers/isobmff/index.d.ts +3 -1
  1947. package/dist/es2017/parsers/containers/isobmff/index.d.ts.map +1 -0
  1948. package/dist/es2017/parsers/containers/isobmff/read.d.ts +1 -0
  1949. package/dist/es2017/parsers/containers/isobmff/read.d.ts.map +1 -0
  1950. package/dist/es2017/parsers/containers/isobmff/take_pssh_out.d.ts +1 -0
  1951. package/dist/es2017/parsers/containers/isobmff/take_pssh_out.d.ts.map +1 -0
  1952. package/dist/es2017/parsers/containers/isobmff/utils.d.ts +1 -0
  1953. package/dist/es2017/parsers/containers/isobmff/utils.d.ts.map +1 -0
  1954. package/dist/es2017/parsers/containers/isobmff/utils.js +3 -1
  1955. package/dist/es2017/parsers/containers/matroska/index.d.ts +3 -1
  1956. package/dist/es2017/parsers/containers/matroska/index.d.ts.map +1 -0
  1957. package/dist/es2017/parsers/containers/matroska/utils.d.ts +1 -0
  1958. package/dist/es2017/parsers/containers/matroska/utils.d.ts.map +1 -0
  1959. package/dist/es2017/parsers/images/bif.d.ts +1 -0
  1960. package/dist/es2017/parsers/images/bif.d.ts.map +1 -0
  1961. package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.d.ts +1 -0
  1962. package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.d.ts.map +1 -0
  1963. package/dist/es2017/parsers/manifest/dash/common/content_protection_parser.d.ts +99 -0
  1964. package/dist/es2017/parsers/manifest/dash/common/content_protection_parser.d.ts.map +1 -0
  1965. package/dist/es2017/parsers/manifest/dash/common/content_protection_parser.js +198 -0
  1966. package/dist/es2017/parsers/manifest/dash/common/convert_supplemental_codecs.d.ts +1 -0
  1967. package/dist/es2017/parsers/manifest/dash/common/convert_supplemental_codecs.d.ts.map +1 -0
  1968. package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +1 -0
  1969. package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts.map +1 -0
  1970. package/dist/es2017/parsers/manifest/dash/common/get_clock_offset.d.ts +1 -0
  1971. package/dist/es2017/parsers/manifest/dash/common/get_clock_offset.d.ts.map +1 -0
  1972. package/dist/es2017/parsers/manifest/dash/common/get_hdr_information.d.ts +1 -0
  1973. package/dist/es2017/parsers/manifest/dash/common/get_hdr_information.d.ts.map +1 -0
  1974. package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +1 -0
  1975. package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts.map +1 -0
  1976. package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +1 -0
  1977. package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts.map +1 -0
  1978. package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.d.ts +1 -0
  1979. package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.d.ts.map +1 -0
  1980. package/dist/es2017/parsers/manifest/dash/common/index.d.ts +4 -2
  1981. package/dist/es2017/parsers/manifest/dash/common/index.d.ts.map +1 -0
  1982. package/dist/es2017/parsers/manifest/dash/common/indexes/base.d.ts +1 -0
  1983. package/dist/es2017/parsers/manifest/dash/common/indexes/base.d.ts.map +1 -0
  1984. package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +1 -0
  1985. package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.d.ts.map +1 -0
  1986. package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +1 -0
  1987. package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts.map +1 -0
  1988. package/dist/es2017/parsers/manifest/dash/common/indexes/index.d.ts +11 -5
  1989. package/dist/es2017/parsers/manifest/dash/common/indexes/index.d.ts.map +1 -0
  1990. package/dist/es2017/parsers/manifest/dash/common/indexes/list.d.ts +1 -0
  1991. package/dist/es2017/parsers/manifest/dash/common/indexes/list.d.ts.map +1 -0
  1992. package/dist/es2017/parsers/manifest/dash/common/indexes/template.d.ts +1 -0
  1993. package/dist/es2017/parsers/manifest/dash/common/indexes/template.d.ts.map +1 -0
  1994. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +1 -0
  1995. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts.map +1 -0
  1996. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +1 -0
  1997. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts.map +1 -0
  1998. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +1 -0
  1999. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts.map +1 -0
  2000. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +1 -0
  2001. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts.map +1 -0
  2002. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/index.d.ts +4 -2
  2003. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/index.d.ts.map +1 -0
  2004. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +1 -0
  2005. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts.map +1 -0
  2006. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +1 -0
  2007. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts.map +1 -0
  2008. package/dist/es2017/parsers/manifest/dash/common/indexes/tokens.d.ts +1 -0
  2009. package/dist/es2017/parsers/manifest/dash/common/indexes/tokens.d.ts.map +1 -0
  2010. package/dist/es2017/parsers/manifest/dash/common/indexes/utils.d.ts +1 -0
  2011. package/dist/es2017/parsers/manifest/dash/common/indexes/utils.d.ts.map +1 -0
  2012. package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.d.ts +1 -0
  2013. package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.d.ts.map +1 -0
  2014. package/dist/es2017/parsers/manifest/dash/common/manifest_bounds_calculator.d.ts +1 -0
  2015. package/dist/es2017/parsers/manifest/dash/common/manifest_bounds_calculator.d.ts.map +1 -0
  2016. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +4 -0
  2017. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.d.ts.map +1 -0
  2018. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.js +1 -0
  2019. package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.d.ts +1 -0
  2020. package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.d.ts.map +1 -0
  2021. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.d.ts +1 -0
  2022. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.d.ts.map +1 -0
  2023. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.js +9 -4
  2024. package/dist/es2017/parsers/manifest/dash/common/parse_periods.d.ts +4 -0
  2025. package/dist/es2017/parsers/manifest/dash/common/parse_periods.d.ts.map +1 -0
  2026. package/dist/es2017/parsers/manifest/dash/common/parse_periods.js +5 -3
  2027. package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.d.ts +1 -0
  2028. package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.d.ts.map +1 -0
  2029. package/dist/es2017/parsers/manifest/dash/common/parse_representations.d.ts +4 -0
  2030. package/dist/es2017/parsers/manifest/dash/common/parse_representations.d.ts.map +1 -0
  2031. package/dist/es2017/parsers/manifest/dash/common/parse_representations.js +9 -47
  2032. package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.d.ts +1 -0
  2033. package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.d.ts.map +1 -0
  2034. package/dist/es2017/parsers/manifest/dash/fast-js-parser/index.d.ts +1 -0
  2035. package/dist/es2017/parsers/manifest/dash/fast-js-parser/index.d.ts.map +1 -0
  2036. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts +1 -0
  2037. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts.map +1 -0
  2038. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.d.ts +1 -0
  2039. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.d.ts.map +1 -0
  2040. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.d.ts +1 -0
  2041. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.d.ts.map +1 -0
  2042. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.d.ts +1 -0
  2043. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.d.ts.map +1 -0
  2044. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.js +7 -0
  2045. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.d.ts +1 -0
  2046. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.d.ts.map +1 -0
  2047. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.d.ts +1 -0
  2048. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.d.ts.map +1 -0
  2049. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts +1 -0
  2050. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts.map +1 -0
  2051. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.js +12 -1
  2052. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts +1 -0
  2053. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts.map +1 -0
  2054. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Period.js +15 -1
  2055. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts +1 -0
  2056. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts.map +1 -0
  2057. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.d.ts +1 -0
  2058. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.d.ts.map +1 -0
  2059. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.d.ts +1 -0
  2060. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.d.ts.map +1 -0
  2061. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.d.ts +1 -0
  2062. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.d.ts.map +1 -0
  2063. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.d.ts +1 -0
  2064. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.d.ts.map +1 -0
  2065. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.d.ts +1 -0
  2066. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.d.ts.map +1 -0
  2067. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +1 -1
  2068. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts.map +1 -0
  2069. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +1 -2
  2070. package/dist/es2017/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.d.ts +1 -0
  2071. package/dist/es2017/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.d.ts.map +1 -0
  2072. package/dist/es2017/parsers/manifest/dash/index.d.ts +1 -0
  2073. package/dist/es2017/parsers/manifest/dash/index.d.ts.map +1 -0
  2074. package/dist/es2017/parsers/manifest/dash/native-parser/index.d.ts +1 -0
  2075. package/dist/es2017/parsers/manifest/dash/native-parser/index.d.ts.map +1 -0
  2076. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts +1 -0
  2077. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts.map +1 -0
  2078. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/BaseURL.d.ts +1 -0
  2079. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/BaseURL.d.ts.map +1 -0
  2080. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.d.ts +1 -0
  2081. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.d.ts.map +1 -0
  2082. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.d.ts +1 -0
  2083. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.d.ts.map +1 -0
  2084. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.js +7 -0
  2085. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts +1 -0
  2086. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts.map +1 -0
  2087. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Initialization.d.ts +1 -0
  2088. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Initialization.d.ts.map +1 -0
  2089. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts +1 -0
  2090. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts.map +1 -0
  2091. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/MPD.js +12 -1
  2092. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts +1 -0
  2093. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts.map +1 -0
  2094. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Period.js +15 -1
  2095. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts +1 -0
  2096. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts.map +1 -0
  2097. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.d.ts +1 -0
  2098. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.d.ts.map +1 -0
  2099. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentList.d.ts +1 -0
  2100. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentList.d.ts.map +1 -0
  2101. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.d.ts +1 -0
  2102. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.d.ts.map +1 -0
  2103. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.d.ts +1 -0
  2104. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.d.ts.map +1 -0
  2105. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.d.ts +1 -0
  2106. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.d.ts.map +1 -0
  2107. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +1 -1
  2108. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts.map +1 -0
  2109. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.js +1 -2
  2110. package/dist/es2017/parsers/manifest/dash/native-parser/parse_from_document.d.ts +1 -0
  2111. package/dist/es2017/parsers/manifest/dash/native-parser/parse_from_document.d.ts.map +1 -0
  2112. package/dist/es2017/parsers/manifest/dash/node_parser_types.d.ts +9 -0
  2113. package/dist/es2017/parsers/manifest/dash/node_parser_types.d.ts.map +1 -0
  2114. package/dist/es2017/parsers/manifest/dash/parsers_types.d.ts +2 -1
  2115. package/dist/es2017/parsers/manifest/dash/parsers_types.d.ts.map +1 -0
  2116. package/dist/es2017/parsers/manifest/dash/wasm-parser/index.d.ts +4 -2
  2117. package/dist/es2017/parsers/manifest/dash/wasm-parser/index.d.ts.map +1 -0
  2118. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +1 -0
  2119. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts.map +1 -0
  2120. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +1 -0
  2121. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts.map +1 -0
  2122. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +1 -0
  2123. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts.map +1 -0
  2124. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +1 -0
  2125. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts.map +1 -0
  2126. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +1 -0
  2127. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts.map +1 -0
  2128. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +6 -0
  2129. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +1 -0
  2130. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts.map +1 -0
  2131. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +1 -0
  2132. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts.map +1 -0
  2133. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +14 -0
  2134. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +1 -0
  2135. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts.map +1 -0
  2136. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +14 -0
  2137. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +1 -0
  2138. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts.map +1 -0
  2139. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +1 -0
  2140. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts.map +1 -0
  2141. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +1 -0
  2142. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts.map +1 -0
  2143. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +1 -0
  2144. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts.map +1 -0
  2145. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +1 -0
  2146. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts.map +1 -0
  2147. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +1 -0
  2148. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts.map +1 -0
  2149. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +1 -0
  2150. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts.map +1 -0
  2151. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts +1 -0
  2152. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts.map +1 -0
  2153. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +1 -0
  2154. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts.map +1 -0
  2155. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts +1 -0
  2156. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts.map +1 -0
  2157. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/types.d.ts +3 -0
  2158. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/types.d.ts.map +1 -0
  2159. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +1 -0
  2160. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.d.ts.map +1 -0
  2161. package/dist/es2017/parsers/manifest/index.d.ts +1 -0
  2162. package/dist/es2017/parsers/manifest/index.d.ts.map +1 -0
  2163. package/dist/es2017/parsers/manifest/local/index.d.ts +2 -1
  2164. package/dist/es2017/parsers/manifest/local/index.d.ts.map +1 -0
  2165. package/dist/es2017/parsers/manifest/local/parse_local_manifest.d.ts +1 -0
  2166. package/dist/es2017/parsers/manifest/local/parse_local_manifest.d.ts.map +1 -0
  2167. package/dist/es2017/parsers/manifest/local/representation_index.d.ts +1 -0
  2168. package/dist/es2017/parsers/manifest/local/representation_index.d.ts.map +1 -0
  2169. package/dist/es2017/parsers/manifest/local/types.d.ts +1 -0
  2170. package/dist/es2017/parsers/manifest/local/types.d.ts.map +1 -0
  2171. package/dist/es2017/parsers/manifest/metaplaylist/index.d.ts +4 -2
  2172. package/dist/es2017/parsers/manifest/metaplaylist/index.d.ts.map +1 -0
  2173. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +1 -0
  2174. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts.map +1 -0
  2175. package/dist/es2017/parsers/manifest/metaplaylist/representation_index.d.ts +1 -0
  2176. package/dist/es2017/parsers/manifest/metaplaylist/representation_index.d.ts.map +1 -0
  2177. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts +1 -0
  2178. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts.map +1 -0
  2179. package/dist/es2017/parsers/manifest/smooth/get_codecs.d.ts +1 -0
  2180. package/dist/es2017/parsers/manifest/smooth/get_codecs.d.ts.map +1 -0
  2181. package/dist/es2017/parsers/manifest/smooth/index.d.ts +5 -2
  2182. package/dist/es2017/parsers/manifest/smooth/index.d.ts.map +1 -0
  2183. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts +1 -0
  2184. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -0
  2185. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts +1 -0
  2186. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -0
  2187. package/dist/es2017/parsers/manifest/smooth/representation_index.d.ts +1 -0
  2188. package/dist/es2017/parsers/manifest/smooth/representation_index.d.ts.map +1 -0
  2189. package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +1 -0
  2190. package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts.map +1 -0
  2191. package/dist/es2017/parsers/manifest/smooth/utils/add_segment_infos.d.ts +1 -0
  2192. package/dist/es2017/parsers/manifest/smooth/utils/add_segment_infos.d.ts.map +1 -0
  2193. package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -0
  2194. package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts.map +1 -0
  2195. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts +1 -0
  2196. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -0
  2197. package/dist/es2017/parsers/manifest/smooth/utils/tokens.d.ts +1 -0
  2198. package/dist/es2017/parsers/manifest/smooth/utils/tokens.d.ts.map +1 -0
  2199. package/dist/es2017/parsers/manifest/types.d.ts +1 -0
  2200. package/dist/es2017/parsers/manifest/types.d.ts.map +1 -0
  2201. package/dist/es2017/parsers/manifest/utils/check_manifest_ids.d.ts +1 -0
  2202. package/dist/es2017/parsers/manifest/utils/check_manifest_ids.d.ts.map +1 -0
  2203. package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.d.ts +1 -0
  2204. package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.d.ts.map +1 -0
  2205. package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +1 -0
  2206. package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.d.ts.map +1 -0
  2207. package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +1 -0
  2208. package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.d.ts.map +1 -0
  2209. package/dist/es2017/parsers/manifest/utils/get_maximum_positions.d.ts +1 -0
  2210. package/dist/es2017/parsers/manifest/utils/get_maximum_positions.d.ts.map +1 -0
  2211. package/dist/es2017/parsers/manifest/utils/get_minimum_position.d.ts +1 -0
  2212. package/dist/es2017/parsers/manifest/utils/get_minimum_position.d.ts.map +1 -0
  2213. package/dist/es2017/parsers/manifest/utils/index_helpers.d.ts +1 -0
  2214. package/dist/es2017/parsers/manifest/utils/index_helpers.d.ts.map +1 -0
  2215. package/dist/es2017/parsers/manifest/utils/update_segment_timeline.d.ts +1 -0
  2216. package/dist/es2017/parsers/manifest/utils/update_segment_timeline.d.ts.map +1 -0
  2217. package/dist/es2017/parsers/texttracks/index.d.ts +2 -1
  2218. package/dist/es2017/parsers/texttracks/index.d.ts.map +1 -0
  2219. package/dist/es2017/parsers/texttracks/sami/html.d.ts +1 -0
  2220. package/dist/es2017/parsers/texttracks/sami/html.d.ts.map +1 -0
  2221. package/dist/es2017/parsers/texttracks/sami/native.d.ts +1 -0
  2222. package/dist/es2017/parsers/texttracks/sami/native.d.ts.map +1 -0
  2223. package/dist/es2017/parsers/texttracks/srt/find_end_of_cue_block.d.ts +1 -0
  2224. package/dist/es2017/parsers/texttracks/srt/find_end_of_cue_block.d.ts.map +1 -0
  2225. package/dist/es2017/parsers/texttracks/srt/get_cue_blocks.d.ts +1 -0
  2226. package/dist/es2017/parsers/texttracks/srt/get_cue_blocks.d.ts.map +1 -0
  2227. package/dist/es2017/parsers/texttracks/srt/html.d.ts +1 -0
  2228. package/dist/es2017/parsers/texttracks/srt/html.d.ts.map +1 -0
  2229. package/dist/es2017/parsers/texttracks/srt/native.d.ts +1 -0
  2230. package/dist/es2017/parsers/texttracks/srt/native.d.ts.map +1 -0
  2231. package/dist/es2017/parsers/texttracks/srt/parse_cue.d.ts +1 -0
  2232. package/dist/es2017/parsers/texttracks/srt/parse_cue.d.ts.map +1 -0
  2233. package/dist/es2017/parsers/texttracks/srt/parse_timestamp.d.ts +1 -0
  2234. package/dist/es2017/parsers/texttracks/srt/parse_timestamp.d.ts.map +1 -0
  2235. package/dist/es2017/parsers/texttracks/ttml/get_parameters.d.ts +1 -0
  2236. package/dist/es2017/parsers/texttracks/ttml/get_parameters.d.ts.map +1 -0
  2237. package/dist/es2017/parsers/texttracks/ttml/get_styling.d.ts +1 -0
  2238. package/dist/es2017/parsers/texttracks/ttml/get_styling.d.ts.map +1 -0
  2239. package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.d.ts +1 -0
  2240. package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.d.ts.map +1 -0
  2241. package/dist/es2017/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.d.ts +1 -0
  2242. package/dist/es2017/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.d.ts.map +1 -0
  2243. package/dist/es2017/parsers/texttracks/ttml/html/apply_extent.d.ts +1 -0
  2244. package/dist/es2017/parsers/texttracks/ttml/html/apply_extent.d.ts.map +1 -0
  2245. package/dist/es2017/parsers/texttracks/ttml/html/apply_font_size.d.ts +1 -0
  2246. package/dist/es2017/parsers/texttracks/ttml/html/apply_font_size.d.ts.map +1 -0
  2247. package/dist/es2017/parsers/texttracks/ttml/html/apply_line_height.d.ts +1 -0
  2248. package/dist/es2017/parsers/texttracks/ttml/html/apply_line_height.d.ts.map +1 -0
  2249. package/dist/es2017/parsers/texttracks/ttml/html/apply_origin.d.ts +1 -0
  2250. package/dist/es2017/parsers/texttracks/ttml/html/apply_origin.d.ts.map +1 -0
  2251. package/dist/es2017/parsers/texttracks/ttml/html/apply_padding.d.ts +1 -0
  2252. package/dist/es2017/parsers/texttracks/ttml/html/apply_padding.d.ts.map +1 -0
  2253. package/dist/es2017/parsers/texttracks/ttml/html/create_element.d.ts +1 -0
  2254. package/dist/es2017/parsers/texttracks/ttml/html/create_element.d.ts.map +1 -0
  2255. package/dist/es2017/parsers/texttracks/ttml/html/generate_css_test_outline.d.ts +1 -0
  2256. package/dist/es2017/parsers/texttracks/ttml/html/generate_css_test_outline.d.ts.map +1 -0
  2257. package/dist/es2017/parsers/texttracks/ttml/html/index.d.ts +1 -0
  2258. package/dist/es2017/parsers/texttracks/ttml/html/index.d.ts.map +1 -0
  2259. package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.d.ts +1 -0
  2260. package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.d.ts.map +1 -0
  2261. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +1 -0
  2262. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts.map +1 -0
  2263. package/dist/es2017/parsers/texttracks/ttml/html/ttml_color_to_css_color.d.ts +1 -0
  2264. package/dist/es2017/parsers/texttracks/ttml/html/ttml_color_to_css_color.d.ts.map +1 -0
  2265. package/dist/es2017/parsers/texttracks/ttml/native/index.d.ts +1 -0
  2266. package/dist/es2017/parsers/texttracks/ttml/native/index.d.ts.map +1 -0
  2267. package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.d.ts +1 -0
  2268. package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.d.ts.map +1 -0
  2269. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +1 -0
  2270. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts.map +1 -0
  2271. package/dist/es2017/parsers/texttracks/ttml/parse_ttml.d.ts +1 -0
  2272. package/dist/es2017/parsers/texttracks/ttml/parse_ttml.d.ts.map +1 -0
  2273. package/dist/es2017/parsers/texttracks/ttml/regexps.d.ts +1 -0
  2274. package/dist/es2017/parsers/texttracks/ttml/regexps.d.ts.map +1 -0
  2275. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +1 -0
  2276. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts.map +1 -0
  2277. package/dist/es2017/parsers/texttracks/ttml/time_parsing.d.ts +1 -0
  2278. package/dist/es2017/parsers/texttracks/ttml/time_parsing.d.ts.map +1 -0
  2279. package/dist/es2017/parsers/texttracks/ttml/xml_utils.d.ts +1 -0
  2280. package/dist/es2017/parsers/texttracks/ttml/xml_utils.d.ts.map +1 -0
  2281. package/dist/es2017/parsers/texttracks/types.d.ts +1 -0
  2282. package/dist/es2017/parsers/texttracks/types.d.ts.map +1 -0
  2283. package/dist/es2017/parsers/texttracks/webvtt/get_cue_blocks.d.ts +1 -0
  2284. package/dist/es2017/parsers/texttracks/webvtt/get_cue_blocks.d.ts.map +1 -0
  2285. package/dist/es2017/parsers/texttracks/webvtt/get_style_blocks.d.ts +1 -0
  2286. package/dist/es2017/parsers/texttracks/webvtt/get_style_blocks.d.ts.map +1 -0
  2287. package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +1 -0
  2288. package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts.map +1 -0
  2289. package/dist/es2017/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts +1 -0
  2290. package/dist/es2017/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts.map +1 -0
  2291. package/dist/es2017/parsers/texttracks/webvtt/html/create_style_attribute.d.ts +1 -0
  2292. package/dist/es2017/parsers/texttracks/webvtt/html/create_style_attribute.d.ts.map +1 -0
  2293. package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.d.ts +1 -0
  2294. package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.d.ts.map +1 -0
  2295. package/dist/es2017/parsers/texttracks/webvtt/html/index.d.ts +2 -1
  2296. package/dist/es2017/parsers/texttracks/webvtt/html/index.d.ts.map +1 -0
  2297. package/dist/es2017/parsers/texttracks/webvtt/html/parse_style_block.d.ts +1 -0
  2298. package/dist/es2017/parsers/texttracks/webvtt/html/parse_style_block.d.ts.map +1 -0
  2299. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts +1 -0
  2300. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts.map +1 -0
  2301. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts +1 -0
  2302. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts.map +1 -0
  2303. package/dist/es2017/parsers/texttracks/webvtt/native/index.d.ts +1 -0
  2304. package/dist/es2017/parsers/texttracks/webvtt/native/index.d.ts.map +1 -0
  2305. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts +1 -0
  2306. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts.map +1 -0
  2307. package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +1 -0
  2308. package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts.map +1 -0
  2309. package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.d.ts +1 -0
  2310. package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.d.ts.map +1 -0
  2311. package/dist/es2017/parsers/texttracks/webvtt/parse_cue_block.d.ts +1 -0
  2312. package/dist/es2017/parsers/texttracks/webvtt/parse_cue_block.d.ts.map +1 -0
  2313. package/dist/es2017/parsers/texttracks/webvtt/parse_timestamp.d.ts +1 -0
  2314. package/dist/es2017/parsers/texttracks/webvtt/parse_timestamp.d.ts.map +1 -0
  2315. package/dist/es2017/parsers/texttracks/webvtt/utils.d.ts +1 -0
  2316. package/dist/es2017/parsers/texttracks/webvtt/utils.d.ts.map +1 -0
  2317. package/dist/es2017/playback_observer/index.d.ts +1 -0
  2318. package/dist/es2017/playback_observer/index.d.ts.map +1 -0
  2319. package/dist/es2017/playback_observer/media_element_playback_observer.d.ts +1 -0
  2320. package/dist/es2017/playback_observer/media_element_playback_observer.d.ts.map +1 -0
  2321. package/dist/es2017/playback_observer/types.d.ts +1 -0
  2322. package/dist/es2017/playback_observer/types.d.ts.map +1 -0
  2323. package/dist/es2017/playback_observer/utils/generate_read_only_observer.d.ts +1 -0
  2324. package/dist/es2017/playback_observer/utils/generate_read_only_observer.d.ts.map +1 -0
  2325. package/dist/es2017/playback_observer/utils/observation_position.d.ts +12 -0
  2326. package/dist/es2017/playback_observer/utils/observation_position.d.ts.map +1 -0
  2327. package/dist/es2017/playback_observer/utils/observation_position.js +11 -0
  2328. package/dist/es2017/playback_observer/worker_playback_observer.d.ts +1 -0
  2329. package/dist/es2017/playback_observer/worker_playback_observer.d.ts.map +1 -0
  2330. package/dist/es2017/public_types.d.ts +3 -2
  2331. package/dist/es2017/public_types.d.ts.map +1 -0
  2332. package/dist/es2017/tools/TextTrackRenderer/index.d.ts +4 -2
  2333. package/dist/es2017/tools/TextTrackRenderer/index.d.ts.map +1 -0
  2334. package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.d.ts +1 -0
  2335. package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.d.ts.map +1 -0
  2336. package/dist/es2017/tools/index.d.ts +1 -0
  2337. package/dist/es2017/tools/index.d.ts.map +1 -0
  2338. package/dist/es2017/tools/parseBIFThumbnails/index.d.ts +1 -0
  2339. package/dist/es2017/tools/parseBIFThumbnails/index.d.ts.map +1 -0
  2340. package/dist/es2017/tools/string_utils/index.d.ts +1 -0
  2341. package/dist/es2017/tools/string_utils/index.d.ts.map +1 -0
  2342. package/dist/es2017/transports/dash/add_segment_integrity_checks_to_loader.d.ts +1 -0
  2343. package/dist/es2017/transports/dash/add_segment_integrity_checks_to_loader.d.ts.map +1 -0
  2344. package/dist/es2017/transports/dash/construct_segment_url.d.ts +1 -0
  2345. package/dist/es2017/transports/dash/construct_segment_url.d.ts.map +1 -0
  2346. package/dist/es2017/transports/dash/get_events_out_of_emsgs.d.ts +1 -0
  2347. package/dist/es2017/transports/dash/get_events_out_of_emsgs.d.ts.map +1 -0
  2348. package/dist/es2017/transports/dash/index.d.ts +1 -0
  2349. package/dist/es2017/transports/dash/index.d.ts.map +1 -0
  2350. package/dist/es2017/transports/dash/init_segment_loader.d.ts +1 -0
  2351. package/dist/es2017/transports/dash/init_segment_loader.d.ts.map +1 -0
  2352. package/dist/es2017/transports/dash/low_latency_segment_loader.d.ts +1 -0
  2353. package/dist/es2017/transports/dash/low_latency_segment_loader.d.ts.map +1 -0
  2354. package/dist/es2017/transports/dash/low_latency_segment_loader.js +1 -0
  2355. package/dist/es2017/transports/dash/manifest_parser.d.ts +1 -0
  2356. package/dist/es2017/transports/dash/manifest_parser.d.ts.map +1 -0
  2357. package/dist/es2017/transports/dash/pipelines.d.ts +1 -0
  2358. package/dist/es2017/transports/dash/pipelines.d.ts.map +1 -0
  2359. package/dist/es2017/transports/dash/segment_loader.d.ts +1 -0
  2360. package/dist/es2017/transports/dash/segment_loader.d.ts.map +1 -0
  2361. package/dist/es2017/transports/dash/segment_parser.d.ts +1 -0
  2362. package/dist/es2017/transports/dash/segment_parser.d.ts.map +1 -0
  2363. package/dist/es2017/transports/dash/text_loader.d.ts +1 -0
  2364. package/dist/es2017/transports/dash/text_loader.d.ts.map +1 -0
  2365. package/dist/es2017/transports/dash/text_parser.d.ts +1 -0
  2366. package/dist/es2017/transports/dash/text_parser.d.ts.map +1 -0
  2367. package/dist/es2017/transports/index.d.ts +1 -0
  2368. package/dist/es2017/transports/index.d.ts.map +1 -0
  2369. package/dist/es2017/transports/local/index.d.ts +1 -0
  2370. package/dist/es2017/transports/local/index.d.ts.map +1 -0
  2371. package/dist/es2017/transports/local/pipelines.d.ts +1 -0
  2372. package/dist/es2017/transports/local/pipelines.d.ts.map +1 -0
  2373. package/dist/es2017/transports/local/segment_loader.d.ts +1 -0
  2374. package/dist/es2017/transports/local/segment_loader.d.ts.map +1 -0
  2375. package/dist/es2017/transports/local/segment_parser.d.ts +1 -0
  2376. package/dist/es2017/transports/local/segment_parser.d.ts.map +1 -0
  2377. package/dist/es2017/transports/local/text_parser.d.ts +1 -0
  2378. package/dist/es2017/transports/local/text_parser.d.ts.map +1 -0
  2379. package/dist/es2017/transports/metaplaylist/index.d.ts +1 -0
  2380. package/dist/es2017/transports/metaplaylist/index.d.ts.map +1 -0
  2381. package/dist/es2017/transports/metaplaylist/manifest_loader.d.ts +1 -0
  2382. package/dist/es2017/transports/metaplaylist/manifest_loader.d.ts.map +1 -0
  2383. package/dist/es2017/transports/metaplaylist/pipelines.d.ts +1 -0
  2384. package/dist/es2017/transports/metaplaylist/pipelines.d.ts.map +1 -0
  2385. package/dist/es2017/transports/smooth/extract_timings_infos.d.ts +1 -0
  2386. package/dist/es2017/transports/smooth/extract_timings_infos.d.ts.map +1 -0
  2387. package/dist/es2017/transports/smooth/index.d.ts +1 -0
  2388. package/dist/es2017/transports/smooth/index.d.ts.map +1 -0
  2389. package/dist/es2017/transports/smooth/is_mp4_embedded_track.d.ts +1 -0
  2390. package/dist/es2017/transports/smooth/is_mp4_embedded_track.d.ts.map +1 -0
  2391. package/dist/es2017/transports/smooth/isobmff/create_audio_init_segment.d.ts +1 -0
  2392. package/dist/es2017/transports/smooth/isobmff/create_audio_init_segment.d.ts.map +1 -0
  2393. package/dist/es2017/transports/smooth/isobmff/create_boxes.d.ts +1 -0
  2394. package/dist/es2017/transports/smooth/isobmff/create_boxes.d.ts.map +1 -0
  2395. package/dist/es2017/transports/smooth/isobmff/create_init_segment.d.ts +1 -0
  2396. package/dist/es2017/transports/smooth/isobmff/create_init_segment.d.ts.map +1 -0
  2397. package/dist/es2017/transports/smooth/isobmff/create_traf_box.d.ts +1 -0
  2398. package/dist/es2017/transports/smooth/isobmff/create_traf_box.d.ts.map +1 -0
  2399. package/dist/es2017/transports/smooth/isobmff/create_video_init_segment.d.ts +1 -0
  2400. package/dist/es2017/transports/smooth/isobmff/create_video_init_segment.d.ts.map +1 -0
  2401. package/dist/es2017/transports/smooth/isobmff/get_aaces_header.d.ts +1 -0
  2402. package/dist/es2017/transports/smooth/isobmff/get_aaces_header.d.ts.map +1 -0
  2403. package/dist/es2017/transports/smooth/isobmff/index.d.ts +5 -2
  2404. package/dist/es2017/transports/smooth/isobmff/index.d.ts.map +1 -0
  2405. package/dist/es2017/transports/smooth/isobmff/parse_tfrf.d.ts +1 -0
  2406. package/dist/es2017/transports/smooth/isobmff/parse_tfrf.d.ts.map +1 -0
  2407. package/dist/es2017/transports/smooth/isobmff/parse_tfxd.d.ts +1 -0
  2408. package/dist/es2017/transports/smooth/isobmff/parse_tfxd.d.ts.map +1 -0
  2409. package/dist/es2017/transports/smooth/isobmff/patch_segment.d.ts +1 -0
  2410. package/dist/es2017/transports/smooth/isobmff/patch_segment.d.ts.map +1 -0
  2411. package/dist/es2017/transports/smooth/pipelines.d.ts +1 -0
  2412. package/dist/es2017/transports/smooth/pipelines.d.ts.map +1 -0
  2413. package/dist/es2017/transports/smooth/segment_loader.d.ts +1 -0
  2414. package/dist/es2017/transports/smooth/segment_loader.d.ts.map +1 -0
  2415. package/dist/es2017/transports/smooth/utils.d.ts +1 -0
  2416. package/dist/es2017/transports/smooth/utils.d.ts.map +1 -0
  2417. package/dist/es2017/transports/types.d.ts +1 -0
  2418. package/dist/es2017/transports/types.d.ts.map +1 -0
  2419. package/dist/es2017/transports/utils/byte_range.d.ts +1 -0
  2420. package/dist/es2017/transports/utils/byte_range.d.ts.map +1 -0
  2421. package/dist/es2017/transports/utils/call_custom_manifest_loader.d.ts +1 -0
  2422. package/dist/es2017/transports/utils/call_custom_manifest_loader.d.ts.map +1 -0
  2423. package/dist/es2017/transports/utils/check_isobmff_integrity.d.ts +1 -0
  2424. package/dist/es2017/transports/utils/check_isobmff_integrity.d.ts.map +1 -0
  2425. package/dist/es2017/transports/utils/generate_manifest_loader.d.ts +1 -0
  2426. package/dist/es2017/transports/utils/generate_manifest_loader.d.ts.map +1 -0
  2427. package/dist/es2017/transports/utils/get_isobmff_timing_infos.d.ts +1 -0
  2428. package/dist/es2017/transports/utils/get_isobmff_timing_infos.d.ts.map +1 -0
  2429. package/dist/es2017/transports/utils/infer_segment_container.d.ts +1 -0
  2430. package/dist/es2017/transports/utils/infer_segment_container.d.ts.map +1 -0
  2431. package/dist/es2017/transports/utils/parse_text_track.d.ts +1 -0
  2432. package/dist/es2017/transports/utils/parse_text_track.d.ts.map +1 -0
  2433. package/dist/es2017/utils/are_arrays_of_numbers_equal.d.ts +1 -0
  2434. package/dist/es2017/utils/are_arrays_of_numbers_equal.d.ts.map +1 -0
  2435. package/dist/es2017/utils/are_codecs_compatible.d.ts +1 -0
  2436. package/dist/es2017/utils/are_codecs_compatible.d.ts.map +1 -0
  2437. package/dist/es2017/utils/array_find.d.ts +1 -0
  2438. package/dist/es2017/utils/array_find.d.ts.map +1 -0
  2439. package/dist/es2017/utils/array_find_index.d.ts +1 -0
  2440. package/dist/es2017/utils/array_find_index.d.ts.map +1 -0
  2441. package/dist/es2017/utils/array_includes.d.ts +1 -0
  2442. package/dist/es2017/utils/array_includes.d.ts.map +1 -0
  2443. package/dist/es2017/utils/assert.d.ts +1 -1
  2444. package/dist/es2017/utils/assert.d.ts.map +1 -0
  2445. package/dist/es2017/utils/assert.js +1 -2
  2446. package/dist/es2017/utils/base64.d.ts +1 -0
  2447. package/dist/es2017/utils/base64.d.ts.map +1 -0
  2448. package/dist/es2017/utils/byte_parsing.d.ts +1 -0
  2449. package/dist/es2017/utils/byte_parsing.d.ts.map +1 -0
  2450. package/dist/es2017/utils/cancellable_sleep.d.ts +1 -0
  2451. package/dist/es2017/utils/cancellable_sleep.d.ts.map +1 -0
  2452. package/dist/es2017/utils/create_cancellable_promise.d.ts +1 -0
  2453. package/dist/es2017/utils/create_cancellable_promise.d.ts.map +1 -0
  2454. package/dist/es2017/utils/deep_merge.d.ts +1 -0
  2455. package/dist/es2017/utils/deep_merge.d.ts.map +1 -0
  2456. package/dist/es2017/utils/event_emitter.d.ts +1 -0
  2457. package/dist/es2017/utils/event_emitter.d.ts.map +1 -0
  2458. package/dist/es2017/utils/flat_map.d.ts +1 -0
  2459. package/dist/es2017/utils/flat_map.d.ts.map +1 -0
  2460. package/dist/es2017/utils/get_fuzzed_delay.d.ts +1 -0
  2461. package/dist/es2017/utils/get_fuzzed_delay.d.ts.map +1 -0
  2462. package/dist/es2017/utils/global_scope.d.ts +1 -0
  2463. package/dist/es2017/utils/global_scope.d.ts.map +1 -0
  2464. package/dist/es2017/utils/hash_buffer.d.ts +1 -0
  2465. package/dist/es2017/utils/hash_buffer.d.ts.map +1 -0
  2466. package/dist/es2017/utils/id_generator.d.ts +1 -0
  2467. package/dist/es2017/utils/id_generator.d.ts.map +1 -0
  2468. package/dist/es2017/utils/is_node.d.ts +1 -0
  2469. package/dist/es2017/utils/is_node.d.ts.map +1 -0
  2470. package/dist/es2017/utils/is_non_empty_string.d.ts +1 -0
  2471. package/dist/es2017/utils/is_non_empty_string.d.ts.map +1 -0
  2472. package/dist/es2017/utils/is_null_or_undefined.d.ts +1 -0
  2473. package/dist/es2017/utils/is_null_or_undefined.d.ts.map +1 -0
  2474. package/dist/es2017/utils/is_worker.d.ts +1 -0
  2475. package/dist/es2017/utils/is_worker.d.ts.map +1 -0
  2476. package/dist/es2017/utils/languages/ISO_639-1_to_ISO_639-3.d.ts +1 -0
  2477. package/dist/es2017/utils/languages/ISO_639-1_to_ISO_639-3.d.ts.map +1 -0
  2478. package/dist/es2017/utils/languages/ISO_639-2_to_ISO_639-3.d.ts +1 -0
  2479. package/dist/es2017/utils/languages/ISO_639-2_to_ISO_639-3.d.ts.map +1 -0
  2480. package/dist/es2017/utils/languages/index.d.ts +5 -2
  2481. package/dist/es2017/utils/languages/index.d.ts.map +1 -0
  2482. package/dist/es2017/utils/languages/index.js +2 -2
  2483. package/dist/es2017/utils/languages/normalize.d.ts +3 -1
  2484. package/dist/es2017/utils/languages/normalize.d.ts.map +1 -0
  2485. package/dist/es2017/utils/languages/normalize.js +5 -2
  2486. package/dist/es2017/utils/logger.d.ts +1 -0
  2487. package/dist/es2017/utils/logger.d.ts.map +1 -0
  2488. package/dist/es2017/utils/monotonic_timestamp.d.ts +1 -0
  2489. package/dist/es2017/utils/monotonic_timestamp.d.ts.map +1 -0
  2490. package/dist/es2017/utils/noop.d.ts +1 -0
  2491. package/dist/es2017/utils/noop.d.ts.map +1 -0
  2492. package/dist/es2017/utils/object_assign.d.ts +1 -0
  2493. package/dist/es2017/utils/object_assign.d.ts.map +1 -0
  2494. package/dist/es2017/utils/object_values.d.ts +1 -0
  2495. package/dist/es2017/utils/object_values.d.ts.map +1 -0
  2496. package/dist/es2017/utils/queue_microtask.d.ts +1 -0
  2497. package/dist/es2017/utils/queue_microtask.d.ts.map +1 -0
  2498. package/dist/es2017/utils/ranges.d.ts +3 -1
  2499. package/dist/es2017/utils/ranges.d.ts.map +1 -0
  2500. package/dist/es2017/utils/reference.d.ts +1 -0
  2501. package/dist/es2017/utils/reference.d.ts.map +1 -0
  2502. package/dist/es2017/utils/request/fetch.d.ts +1 -0
  2503. package/dist/es2017/utils/request/fetch.d.ts.map +1 -0
  2504. package/dist/es2017/utils/request/fetch.js +14 -0
  2505. package/dist/es2017/utils/request/index.d.ts +9 -4
  2506. package/dist/es2017/utils/request/index.d.ts.map +1 -0
  2507. package/dist/es2017/utils/request/index.js +3 -3
  2508. package/dist/es2017/utils/request/request_error.d.ts +1 -1
  2509. package/dist/es2017/utils/request/request_error.d.ts.map +1 -0
  2510. package/dist/es2017/utils/request/request_error.js +13 -12
  2511. package/dist/es2017/utils/request/xhr.d.ts +1 -0
  2512. package/dist/es2017/utils/request/xhr.d.ts.map +1 -0
  2513. package/dist/es2017/utils/request/xhr.js +17 -0
  2514. package/dist/es2017/utils/resolve_url.d.ts +14 -10
  2515. package/dist/es2017/utils/resolve_url.d.ts.map +1 -0
  2516. package/dist/es2017/utils/resolve_url.js +206 -65
  2517. package/dist/es2017/utils/retry_promise_with_backoff.d.ts +1 -0
  2518. package/dist/es2017/utils/retry_promise_with_backoff.d.ts.map +1 -0
  2519. package/dist/es2017/utils/sleep.d.ts +1 -0
  2520. package/dist/es2017/utils/sleep.d.ts.map +1 -0
  2521. package/dist/es2017/utils/slice_uint8array.d.ts +1 -0
  2522. package/dist/es2017/utils/slice_uint8array.d.ts.map +1 -0
  2523. package/dist/es2017/utils/sorted_list.d.ts +1 -0
  2524. package/dist/es2017/utils/sorted_list.d.ts.map +1 -0
  2525. package/dist/es2017/utils/starts_with.d.ts +1 -0
  2526. package/dist/es2017/utils/starts_with.d.ts.map +1 -0
  2527. package/dist/es2017/utils/string_parsing.d.ts +2 -1
  2528. package/dist/es2017/utils/string_parsing.d.ts.map +1 -0
  2529. package/dist/es2017/utils/string_parsing.js +1 -1
  2530. package/dist/es2017/utils/sync_or_async.d.ts +1 -0
  2531. package/dist/es2017/utils/sync_or_async.d.ts.map +1 -0
  2532. package/dist/es2017/utils/task_canceller.d.ts +1 -1
  2533. package/dist/es2017/utils/task_canceller.d.ts.map +1 -0
  2534. package/dist/es2017/utils/task_canceller.js +2 -2
  2535. package/dist/es2017/utils/warn_once.d.ts +1 -0
  2536. package/dist/es2017/utils/warn_once.d.ts.map +1 -0
  2537. package/dist/es2017/utils/weak_map_memory.d.ts +1 -0
  2538. package/dist/es2017/utils/weak_map_memory.d.ts.map +1 -0
  2539. package/dist/es2017/utils/wrapInPromise.d.ts +1 -0
  2540. package/dist/es2017/utils/wrapInPromise.d.ts.map +1 -0
  2541. package/dist/es2017/utils/xml-parser.d.ts +1 -0
  2542. package/dist/es2017/utils/xml-parser.d.ts.map +1 -0
  2543. package/dist/es2017/worker_entry_point.d.ts +1 -0
  2544. package/dist/es2017/worker_entry_point.d.ts.map +1 -0
  2545. package/dist/mpd-parser.wasm +0 -0
  2546. package/dist/rx-player.js +17 -55660
  2547. package/dist/worker.js +7 -7
  2548. package/package.json +23 -45
  2549. package/src/README.md +364 -0
  2550. package/src/__GENERATED_CODE/embedded_dash_wasm.ts +3 -0
  2551. package/src/__GENERATED_CODE/embedded_worker.ts +3 -0
  2552. package/src/__GENERATED_CODE/index.ts +2 -0
  2553. package/src/compat/README.md +35 -0
  2554. package/src/compat/__tests__/add_text_track.test.ts +114 -0
  2555. package/src/compat/__tests__/browser_compatibility_types.test.ts +118 -0
  2556. package/src/compat/__tests__/browser_version.test.ts +72 -0
  2557. package/src/compat/__tests__/can_patch_isobmff.test.ts +33 -0
  2558. package/src/compat/__tests__/can_rely_on_video_visibility_and_size.test.ts +61 -0
  2559. package/src/compat/__tests__/can_reuse_media_keys.test.ts +36 -0
  2560. package/src/compat/__tests__/change_source_buffer_type.test.ts +39 -0
  2561. package/src/compat/__tests__/clear_element_src.test.ts +239 -0
  2562. package/src/compat/__tests__/enable_audio_track.test.ts +336 -0
  2563. package/src/compat/__tests__/generate_init_data.test.ts +20 -0
  2564. package/src/compat/__tests__/is_codec_supported.test.ts +65 -0
  2565. package/src/compat/__tests__/is_seeking_approximate.test.ts +33 -0
  2566. package/src/compat/__tests__/is_vtt_cue.test.ts +57 -0
  2567. package/src/compat/__tests__/make_vtt_cue.test.ts +80 -0
  2568. package/src/compat/__tests__/patch_webkit_source_buffer.test.ts +97 -0
  2569. package/src/compat/__tests__/remove_cue.test.ts +217 -0
  2570. package/src/compat/__tests__/should_favour_custom_safari_EME.test.ts +112 -0
  2571. package/src/compat/__tests__/should_reload_media_source_on_decipherability_update.test.ts +38 -0
  2572. package/src/compat/__tests__/should_renew_media_key_system_access.test.ts +40 -0
  2573. package/src/compat/__tests__/should_unset_media_keys.test.ts +37 -0
  2574. package/src/compat/__tests__/should_validate_metadata.test.ts +40 -0
  2575. package/src/compat/__tests__/should_wait_for_data_before_loaded.test.ts +66 -0
  2576. package/src/compat/__tests__/should_wait_for_have_enough_data.test.ts +37 -0
  2577. package/src/compat/add_class_name.ts +42 -0
  2578. package/src/compat/add_text_track.ts +56 -0
  2579. package/src/compat/browser_compatibility_types.ts +215 -0
  2580. package/src/compat/browser_detection.ts +181 -0
  2581. package/src/compat/browser_version.ts +44 -0
  2582. package/src/compat/can_patch_isobmff.ts +30 -0
  2583. package/src/compat/can_rely_on_request_media_key_system_access.ts +42 -0
  2584. package/src/compat/can_rely_on_video_visibility_and_size.ts +52 -0
  2585. package/src/compat/can_reuse_media_keys.ts +17 -0
  2586. package/src/compat/can_seek_directly_after_loaded_metadata.ts +9 -0
  2587. package/src/compat/change_source_buffer_type.ts +69 -0
  2588. package/src/compat/clear_element_src.ts +55 -0
  2589. package/src/compat/eme/close_session.ts +113 -0
  2590. package/src/compat/eme/constants.ts +21 -0
  2591. package/src/compat/eme/custom_key_system_access.ts +67 -0
  2592. package/src/compat/eme/custom_media_keys/ie11_media_keys.ts +200 -0
  2593. package/src/compat/eme/custom_media_keys/index.ts +22 -0
  2594. package/src/compat/eme/custom_media_keys/moz_media_keys_constructor.ts +86 -0
  2595. package/src/compat/eme/custom_media_keys/ms_media_keys_constructor.ts +67 -0
  2596. package/src/compat/eme/custom_media_keys/old_webkit_media_keys.ts +242 -0
  2597. package/src/compat/eme/custom_media_keys/types.ts +61 -0
  2598. package/src/compat/eme/custom_media_keys/webkit_media_keys.ts +306 -0
  2599. package/src/compat/eme/custom_media_keys/webkit_media_keys_constructor.ts +48 -0
  2600. package/src/compat/eme/eme-api-implementation.ts +321 -0
  2601. package/src/compat/eme/generate_key_request.ts +161 -0
  2602. package/src/compat/eme/get_init_data.ts +159 -0
  2603. package/src/compat/eme/get_uuid_kid_from_keystatus_kid.ts +35 -0
  2604. package/src/compat/eme/get_webkit_fairplay_initdata.ts +72 -0
  2605. package/src/compat/eme/index.ts +39 -0
  2606. package/src/compat/eme/load_session.ts +73 -0
  2607. package/src/compat/eme/set_media_keys.ts +49 -0
  2608. package/src/compat/enable_audio_track.ts +33 -0
  2609. package/src/compat/event_listeners.ts +633 -0
  2610. package/src/compat/generate_init_data.ts +69 -0
  2611. package/src/compat/get_start_date.ts +46 -0
  2612. package/src/compat/has_issues_with_high_media_source_duration.ts +27 -0
  2613. package/src/compat/has_mse_in_worker.ts +6 -0
  2614. package/src/compat/has_webassembly.ts +7 -0
  2615. package/src/compat/has_worker_api.ts +15 -0
  2616. package/src/compat/is_codec_supported.ts +67 -0
  2617. package/src/compat/is_debug_mode_enabled.ts +12 -0
  2618. package/src/compat/is_seeking_approximate.ts +32 -0
  2619. package/src/compat/is_vtt_cue.ts +31 -0
  2620. package/src/compat/make_vtt_cue.ts +51 -0
  2621. package/src/compat/may_media_element_fail_on_undecipherable_data.ts +18 -0
  2622. package/src/compat/on_height_width_change.ts +126 -0
  2623. package/src/compat/patch_webkit_source_buffer.ts +93 -0
  2624. package/src/compat/remove_cue.ts +64 -0
  2625. package/src/compat/should_await_set_media_keys.ts +20 -0
  2626. package/src/compat/should_favour_custom_safari_EME.ts +29 -0
  2627. package/src/compat/should_reload_media_source_on_decipherability_update.ts +31 -0
  2628. package/src/compat/should_renew_media_key_system_access.ts +26 -0
  2629. package/src/compat/should_unset_media_keys.ts +27 -0
  2630. package/src/compat/should_validate_metadata.ts +27 -0
  2631. package/src/compat/should_wait_for_data_before_loaded.ts +33 -0
  2632. package/src/compat/should_wait_for_have_enough_data.ts +17 -0
  2633. package/src/config.ts +26 -0
  2634. package/src/core/README.md +53 -0
  2635. package/src/core/adaptive/README.md +154 -0
  2636. package/src/core/adaptive/__tests__/buffer_based_chooser.test.ts +539 -0
  2637. package/src/core/adaptive/adaptive_representation_selector.ts +850 -0
  2638. package/src/core/adaptive/buffer_based_chooser.ts +266 -0
  2639. package/src/core/adaptive/guess_based_chooser.ts +324 -0
  2640. package/src/core/adaptive/index.ts +47 -0
  2641. package/src/core/adaptive/network_analyzer.ts +437 -0
  2642. package/src/core/adaptive/utils/__tests__/bandwith_estimator.test.ts +117 -0
  2643. package/src/core/adaptive/utils/__tests__/ewma.test.ts +64 -0
  2644. package/src/core/adaptive/utils/__tests__/filter_by_bitrate.test.ts +41 -0
  2645. package/src/core/adaptive/utils/__tests__/filter_by_resolution.test.ts +83 -0
  2646. package/src/core/adaptive/utils/__tests__/get_buffer_levels.test.ts +35 -0
  2647. package/src/core/adaptive/utils/__tests__/select_optimal_representation.test.ts +48 -0
  2648. package/src/core/adaptive/utils/bandwidth_estimator.ts +86 -0
  2649. package/src/core/adaptive/utils/ewma.ts +58 -0
  2650. package/src/core/adaptive/utils/filter_by_bitrate.ts +46 -0
  2651. package/src/core/adaptive/utils/filter_by_resolution.ts +65 -0
  2652. package/src/core/adaptive/utils/get_buffer_levels.ts +55 -0
  2653. package/src/core/adaptive/utils/last_estimate_storage.ts +79 -0
  2654. package/src/core/adaptive/utils/pending_requests_store.ts +157 -0
  2655. package/src/core/adaptive/utils/representation_score_calculator.ts +174 -0
  2656. package/src/core/adaptive/utils/select_optimal_representation.ts +44 -0
  2657. package/src/core/fetchers/README.md +83 -0
  2658. package/src/core/fetchers/cdn_prioritizer.ts +209 -0
  2659. package/src/core/fetchers/index.ts +36 -0
  2660. package/src/core/fetchers/manifest/index.ts +25 -0
  2661. package/src/core/fetchers/manifest/manifest_fetcher.ts +836 -0
  2662. package/src/core/fetchers/segment/__tests__/initialization_segment_cache.test.ts +301 -0
  2663. package/src/core/fetchers/segment/__tests__/task_prioritizer.test.ts +942 -0
  2664. package/src/core/fetchers/segment/index.ts +22 -0
  2665. package/src/core/fetchers/segment/initialization_segment_cache.ts +65 -0
  2666. package/src/core/fetchers/segment/prioritized_segment_fetcher.ts +105 -0
  2667. package/src/core/fetchers/segment/segment_fetcher.ts +528 -0
  2668. package/src/core/fetchers/segment/segment_fetcher_creator.ts +122 -0
  2669. package/src/core/fetchers/segment/task_prioritizer.ts +461 -0
  2670. package/src/core/fetchers/utils/error_selector.ts +34 -0
  2671. package/src/core/fetchers/utils/schedule_request.ts +445 -0
  2672. package/src/core/main/README.md +18 -0
  2673. package/src/core/main/common/DecipherabilityFreezeDetector.ts +147 -0
  2674. package/src/core/main/common/content_time_boundaries_observer.ts +656 -0
  2675. package/src/core/main/common/create_content_time_boundaries_observer.ts +71 -0
  2676. package/src/core/main/common/get_buffered_data_per_media_buffer.ts +49 -0
  2677. package/src/core/main/worker/content_preparer.ts +422 -0
  2678. package/src/core/main/worker/globals.ts +38 -0
  2679. package/src/core/main/worker/index.ts +2 -0
  2680. package/src/core/main/worker/send_message.ts +26 -0
  2681. package/src/core/main/worker/track_choice_setter.ts +170 -0
  2682. package/src/core/main/worker/worker_main.ts +929 -0
  2683. package/src/core/main/worker/worker_text_displayer_interface.ts +162 -0
  2684. package/src/core/segment_sinks/README.md +203 -0
  2685. package/src/core/segment_sinks/garbage_collector.ts +197 -0
  2686. package/src/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.ts +372 -0
  2687. package/src/core/segment_sinks/implementations/audio_video/index.ts +18 -0
  2688. package/src/core/segment_sinks/implementations/index.ts +22 -0
  2689. package/src/core/segment_sinks/implementations/text/index.ts +5 -0
  2690. package/src/core/segment_sinks/implementations/text/text_segment_buffer.ts +242 -0
  2691. package/src/core/segment_sinks/implementations/types.ts +347 -0
  2692. package/src/core/segment_sinks/implementations/utils/manual_time_ranges.ts +76 -0
  2693. package/src/core/segment_sinks/index.ts +66 -0
  2694. package/src/core/segment_sinks/inventory/buffered_history.ts +126 -0
  2695. package/src/core/segment_sinks/inventory/index.ts +25 -0
  2696. package/src/core/segment_sinks/inventory/segment_inventory.ts +1386 -0
  2697. package/src/core/segment_sinks/inventory/types.ts +43 -0
  2698. package/src/core/segment_sinks/inventory/utils.ts +59 -0
  2699. package/src/core/segment_sinks/segment_buffers_store.ts +422 -0
  2700. package/src/core/stream/README.md +56 -0
  2701. package/src/core/stream/adaptation/adaptation_stream.ts +495 -0
  2702. package/src/core/stream/adaptation/get_representations_switch_strategy.ts +171 -0
  2703. package/src/core/stream/adaptation/index.ts +20 -0
  2704. package/src/core/stream/adaptation/types.ts +210 -0
  2705. package/src/core/stream/index.ts +44 -0
  2706. package/src/core/stream/orchestrator/README.md +337 -0
  2707. package/src/core/stream/orchestrator/get_time_ranges_for_content.ts +75 -0
  2708. package/src/core/stream/orchestrator/index.ts +31 -0
  2709. package/src/core/stream/orchestrator/stream_orchestrator.ts +787 -0
  2710. package/src/core/stream/period/index.ts +20 -0
  2711. package/src/core/stream/period/period_stream.ts +579 -0
  2712. package/src/core/stream/period/types.ts +124 -0
  2713. package/src/core/stream/period/utils/get_adaptation_switch_strategy.ts +196 -0
  2714. package/src/core/stream/representation/README.md +22 -0
  2715. package/src/core/stream/representation/index.ts +20 -0
  2716. package/src/core/stream/representation/representation_stream.ts +511 -0
  2717. package/src/core/stream/representation/types.ts +339 -0
  2718. package/src/core/stream/representation/utils/append_segment_to_buffer.ts +94 -0
  2719. package/src/core/stream/representation/utils/check_for_discontinuity.ts +325 -0
  2720. package/src/core/stream/representation/utils/downloading_queue.ts +644 -0
  2721. package/src/core/stream/representation/utils/get_buffer_status.ts +307 -0
  2722. package/src/core/stream/representation/utils/get_needed_segments.ts +671 -0
  2723. package/src/core/stream/representation/utils/get_segment_priority.ts +43 -0
  2724. package/src/core/stream/representation/utils/push_init_segment.ts +88 -0
  2725. package/src/core/stream/representation/utils/push_media_segment.ts +119 -0
  2726. package/src/core/types.ts +53 -0
  2727. package/src/default_config.ts +1196 -0
  2728. package/src/errors/README.md +17 -0
  2729. package/src/errors/__tests__/encrypted_media_error.test.ts +30 -0
  2730. package/src/errors/__tests__/error_message.test.ts +8 -0
  2731. package/src/errors/__tests__/format_error.test.ts +54 -0
  2732. package/src/errors/__tests__/is_known_error.test.ts +39 -0
  2733. package/src/errors/__tests__/media_error.test.ts +39 -0
  2734. package/src/errors/__tests__/network_error.test.ts +53 -0
  2735. package/src/errors/__tests__/other_error.test.ts +38 -0
  2736. package/src/errors/custom_loader_error.ts +45 -0
  2737. package/src/errors/encrypted_media_error.ts +98 -0
  2738. package/src/errors/error_codes.ts +146 -0
  2739. package/src/errors/error_message.ts +25 -0
  2740. package/src/errors/format_error.ts +41 -0
  2741. package/src/errors/index.ts +53 -0
  2742. package/src/errors/is_known_error.ts +37 -0
  2743. package/src/errors/media_error.ts +109 -0
  2744. package/src/errors/network_error.ts +91 -0
  2745. package/src/errors/other_error.ts +65 -0
  2746. package/src/errors/source_buffer_error.ts +59 -0
  2747. package/src/errors/worker_initialization_error.ts +32 -0
  2748. package/src/experimental/README.md +19 -0
  2749. package/src/experimental/features/__tests__/index.test.ts +11 -0
  2750. package/src/experimental/features/__tests__/local.test.ts +21 -0
  2751. package/src/experimental/features/__tests__/metaplaylist.test.ts +21 -0
  2752. package/src/experimental/features/__tests__/multi_thread.test.ts +18 -0
  2753. package/src/experimental/features/index.ts +19 -0
  2754. package/src/experimental/features/local.ts +29 -0
  2755. package/src/experimental/features/metaplaylist.ts +29 -0
  2756. package/src/experimental/features/multi_thread.ts +13 -0
  2757. package/src/experimental/index.ts +3 -0
  2758. package/src/experimental/tools/VideoThumbnailLoader/features/dash.ts +23 -0
  2759. package/src/experimental/tools/VideoThumbnailLoader/features/metaplaylist.ts +23 -0
  2760. package/src/experimental/tools/VideoThumbnailLoader/index.ts +19 -0
  2761. package/src/experimental/tools/VideoThumbnailLoader/load_and_push_segment.ts +75 -0
  2762. package/src/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.ts +83 -0
  2763. package/src/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.ts +50 -0
  2764. package/src/experimental/tools/VideoThumbnailLoader/types.ts +32 -0
  2765. package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.ts +438 -0
  2766. package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.ts +34 -0
  2767. package/src/experimental/tools/createMetaplaylist/get_duration_from_manifest.ts +136 -0
  2768. package/src/experimental/tools/createMetaplaylist/index.ts +75 -0
  2769. package/src/experimental/tools/index.ts +21 -0
  2770. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/capabilities.test.ts +24 -0
  2771. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/DRMInfos.test.ts +116 -0
  2772. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/HDCPPolicy.test.ts +127 -0
  2773. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/decodingInfos.test.ts +372 -0
  2774. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/defaultCodecFinder.test.ts +137 -0
  2775. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaContentType.test.ts +274 -0
  2776. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaDisplayInfos.test.ts +174 -0
  2777. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/utils.test.ts +242 -0
  2778. package/src/experimental/tools/mediaCapabilitiesProber/api/index.ts +192 -0
  2779. package/src/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.ts +143 -0
  2780. package/src/experimental/tools/mediaCapabilitiesProber/capabilities.ts +129 -0
  2781. package/src/experimental/tools/mediaCapabilitiesProber/index.ts +20 -0
  2782. package/src/experimental/tools/mediaCapabilitiesProber/log.ts +21 -0
  2783. package/src/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.ts +71 -0
  2784. package/src/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.ts +103 -0
  2785. package/src/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.ts +106 -0
  2786. package/src/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.ts +70 -0
  2787. package/src/experimental/tools/mediaCapabilitiesProber/probers/index.ts +40 -0
  2788. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.ts +71 -0
  2789. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.ts +102 -0
  2790. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.ts +111 -0
  2791. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.ts +61 -0
  2792. package/src/experimental/tools/mediaCapabilitiesProber/types.ts +75 -0
  2793. package/src/experimental/tools/mediaCapabilitiesProber/utils.ts +112 -0
  2794. package/src/features/README.md +10 -0
  2795. package/src/features/__tests__/add_features.test.ts +57 -0
  2796. package/src/features/add_features.ts +38 -0
  2797. package/src/features/features_object.ts +38 -0
  2798. package/src/features/index.ts +38 -0
  2799. package/src/features/list/__tests__/dash.test.ts +27 -0
  2800. package/src/features/list/__tests__/dash_wasm.test.ts +32 -0
  2801. package/src/features/list/__tests__/debug_element.test.ts +13 -0
  2802. package/src/features/list/__tests__/directfile.test.ts +19 -0
  2803. package/src/features/list/__tests__/eme.test.ts +13 -0
  2804. package/src/features/list/__tests__/html_sami_parser.test.ts +20 -0
  2805. package/src/features/list/__tests__/html_srt_parser.test.ts +19 -0
  2806. package/src/features/list/__tests__/html_text_buffer.test.ts +13 -0
  2807. package/src/features/list/__tests__/html_ttml_parser.test.ts +19 -0
  2808. package/src/features/list/__tests__/html_vtt_parser.test.ts +19 -0
  2809. package/src/features/list/__tests__/index.test.ts +56 -0
  2810. package/src/features/list/__tests__/native_sami_parser.test.ts +20 -0
  2811. package/src/features/list/__tests__/native_srt_parser.test.ts +19 -0
  2812. package/src/features/list/__tests__/native_text_buffer.test.ts +13 -0
  2813. package/src/features/list/__tests__/native_ttml_parser.test.ts +19 -0
  2814. package/src/features/list/__tests__/native_vtt_parser.test.ts +19 -0
  2815. package/src/features/list/__tests__/smooth.test.ts +21 -0
  2816. package/src/features/list/dash.ts +37 -0
  2817. package/src/features/list/dash_wasm.ts +41 -0
  2818. package/src/features/list/debug_element.ts +13 -0
  2819. package/src/features/list/directfile.ts +31 -0
  2820. package/src/features/list/eme.ts +29 -0
  2821. package/src/features/list/html_sami_parser.ts +31 -0
  2822. package/src/features/list/html_srt_parser.ts +31 -0
  2823. package/src/features/list/html_text_buffer.ts +29 -0
  2824. package/src/features/list/html_ttml_parser.ts +31 -0
  2825. package/src/features/list/html_vtt_parser.ts +31 -0
  2826. package/src/features/list/index.ts +33 -0
  2827. package/src/features/list/media_source_main.ts +13 -0
  2828. package/src/features/list/native_sami_parser.ts +31 -0
  2829. package/src/features/list/native_srt_parser.ts +31 -0
  2830. package/src/features/list/native_text_buffer.ts +29 -0
  2831. package/src/features/list/native_ttml_parser.ts +31 -0
  2832. package/src/features/list/native_vtt_parser.ts +31 -0
  2833. package/src/features/list/smooth.ts +35 -0
  2834. package/src/features/types.ts +187 -0
  2835. package/src/globals.dev.d.ts +17 -0
  2836. package/src/globals.prod.d.ts +17 -0
  2837. package/src/index.ts +67 -0
  2838. package/src/log.ts +22 -0
  2839. package/src/main_thread/README.md +42 -0
  2840. package/src/main_thread/api/README.md +32 -0
  2841. package/src/main_thread/api/__tests__/option_utils.test.ts +1094 -0
  2842. package/src/main_thread/api/__tests__/public_api.test.ts +481 -0
  2843. package/src/main_thread/api/__tests__/utils.test.ts +176 -0
  2844. package/src/main_thread/api/debug/buffer_graph.ts +243 -0
  2845. package/src/main_thread/api/debug/buffer_size_graph.ts +127 -0
  2846. package/src/main_thread/api/debug/constants.ts +2 -0
  2847. package/src/main_thread/api/debug/index.ts +3 -0
  2848. package/src/main_thread/api/debug/modules/general_info.ts +214 -0
  2849. package/src/main_thread/api/debug/modules/segment_buffer_content.ts +186 -0
  2850. package/src/main_thread/api/debug/modules/segment_buffer_size.ts +43 -0
  2851. package/src/main_thread/api/debug/render.ts +40 -0
  2852. package/src/main_thread/api/debug/utils.ts +100 -0
  2853. package/src/main_thread/api/index.ts +18 -0
  2854. package/src/main_thread/api/option_utils.ts +462 -0
  2855. package/src/main_thread/api/public_api.ts +3295 -0
  2856. package/src/main_thread/api/utils.ts +255 -0
  2857. package/src/main_thread/decrypt/README.md +28 -0
  2858. package/src/main_thread/decrypt/__tests__/__global__/content_decryptor.test.ts +45 -0
  2859. package/src/main_thread/decrypt/__tests__/__global__/find_key_system.test.ts +60 -0
  2860. package/src/main_thread/decrypt/__tests__/__global__/get_license.test.ts +488 -0
  2861. package/src/main_thread/decrypt/__tests__/__global__/init_data.test.ts +733 -0
  2862. package/src/main_thread/decrypt/__tests__/__global__/media_key_system_access.test.ts +833 -0
  2863. package/src/main_thread/decrypt/__tests__/__global__/media_keys.test.ts +362 -0
  2864. package/src/main_thread/decrypt/__tests__/__global__/server_certificate.test.ts +260 -0
  2865. package/src/main_thread/decrypt/__tests__/__global__/utils.ts +525 -0
  2866. package/src/main_thread/decrypt/attach_media_keys.ts +117 -0
  2867. package/src/main_thread/decrypt/clear_on_stop.ts +48 -0
  2868. package/src/main_thread/decrypt/content_decryptor.ts +1274 -0
  2869. package/src/main_thread/decrypt/create_or_load_session.ts +138 -0
  2870. package/src/main_thread/decrypt/create_session.ts +213 -0
  2871. package/src/main_thread/decrypt/dispose_decryption_resources.ts +39 -0
  2872. package/src/main_thread/decrypt/find_key_system.ts +430 -0
  2873. package/src/main_thread/decrypt/get_key_system_configuration.ts +36 -0
  2874. package/src/main_thread/decrypt/get_media_keys.ts +144 -0
  2875. package/src/main_thread/decrypt/index.ts +29 -0
  2876. package/src/main_thread/decrypt/init_media_keys.ts +53 -0
  2877. package/src/main_thread/decrypt/session_events_listener.ts +360 -0
  2878. package/src/main_thread/decrypt/set_server_certificate.ts +107 -0
  2879. package/src/main_thread/decrypt/types.ts +411 -0
  2880. package/src/main_thread/decrypt/utils/__tests__/are_init_values_compatible.test.ts +162 -0
  2881. package/src/main_thread/decrypt/utils/__tests__/clean_old_loaded_sessions.test.ts +152 -0
  2882. package/src/main_thread/decrypt/utils/__tests__/clean_old_stored_persistent_info.test.ts +128 -0
  2883. package/src/main_thread/decrypt/utils/are_init_values_compatible.ts +162 -0
  2884. package/src/main_thread/decrypt/utils/check_key_statuses.ts +230 -0
  2885. package/src/main_thread/decrypt/utils/clean_old_loaded_sessions.ts +45 -0
  2886. package/src/main_thread/decrypt/utils/clean_old_stored_persistent_info.ts +50 -0
  2887. package/src/main_thread/decrypt/utils/get_drm_system_id.ts +41 -0
  2888. package/src/main_thread/decrypt/utils/init_data_values_container.ts +129 -0
  2889. package/src/main_thread/decrypt/utils/is_session_usable.ts +67 -0
  2890. package/src/main_thread/decrypt/utils/key_id_comparison.ts +57 -0
  2891. package/src/main_thread/decrypt/utils/key_session_record.ts +172 -0
  2892. package/src/main_thread/decrypt/utils/loaded_sessions_store.ts +511 -0
  2893. package/src/main_thread/decrypt/utils/media_keys_infos_store.ts +84 -0
  2894. package/src/main_thread/decrypt/utils/persistent_sessions_store.ts +373 -0
  2895. package/src/main_thread/decrypt/utils/serializable_bytes.ts +56 -0
  2896. package/src/main_thread/decrypt/utils/server_certificate_store.ts +146 -0
  2897. package/src/main_thread/init/README.md +90 -0
  2898. package/src/main_thread/init/directfile_content_initializer.ts +331 -0
  2899. package/src/main_thread/init/index.ts +22 -0
  2900. package/src/main_thread/init/media_source_content_initializer.ts +1147 -0
  2901. package/src/main_thread/init/multi_thread_content_initializer.ts +2060 -0
  2902. package/src/main_thread/init/send_message.ts +15 -0
  2903. package/src/main_thread/init/types.ts +250 -0
  2904. package/src/main_thread/init/utils/__tests__/are_same_stream_events.test.ts +55 -0
  2905. package/src/main_thread/init/utils/__tests__/refresh_scheduled_events_list.test.ts +73 -0
  2906. package/src/main_thread/init/utils/create_core_playback_observer.ts +196 -0
  2907. package/src/main_thread/init/utils/create_media_source.ts +123 -0
  2908. package/src/main_thread/init/utils/get_initial_time.ts +169 -0
  2909. package/src/main_thread/init/utils/get_loaded_reference.ts +85 -0
  2910. package/src/main_thread/init/utils/initial_seek_and_play.ts +287 -0
  2911. package/src/main_thread/init/utils/initialize_content_decryption.ts +201 -0
  2912. package/src/main_thread/init/utils/main_thread_text_displayer_interface.ts +59 -0
  2913. package/src/main_thread/init/utils/rebuffering_controller.ts +637 -0
  2914. package/src/main_thread/init/utils/stream_events_emitter/are_same_stream_events.ts +38 -0
  2915. package/src/main_thread/init/utils/stream_events_emitter/index.ts +19 -0
  2916. package/src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts +93 -0
  2917. package/src/main_thread/init/utils/stream_events_emitter/stream_events_emitter.ts +259 -0
  2918. package/src/main_thread/init/utils/stream_events_emitter/types.ts +46 -0
  2919. package/src/main_thread/init/utils/throw_on_media_error.ts +76 -0
  2920. package/src/main_thread/text_displayer/html/__tests__/text_track_cues_store.test.ts +310 -0
  2921. package/src/main_thread/text_displayer/html/__tests__/utils.test.ts +377 -0
  2922. package/src/main_thread/text_displayer/html/html_parsers.ts +35 -0
  2923. package/src/main_thread/text_displayer/html/html_text_displayer.ts +436 -0
  2924. package/src/main_thread/text_displayer/html/index.ts +2 -0
  2925. package/src/main_thread/text_displayer/html/text_track_cues_store.ts +380 -0
  2926. package/src/main_thread/text_displayer/html/update_proportional_elements.ts +76 -0
  2927. package/src/main_thread/text_displayer/html/utils.ts +166 -0
  2928. package/src/main_thread/text_displayer/index.ts +3 -0
  2929. package/src/main_thread/text_displayer/manual_time_ranges.ts +60 -0
  2930. package/src/main_thread/text_displayer/native/index.ts +2 -0
  2931. package/src/main_thread/text_displayer/native/native_parsers.ts +31 -0
  2932. package/src/main_thread/text_displayer/native/native_text_displayer.ts +254 -0
  2933. package/src/main_thread/text_displayer/types.ts +74 -0
  2934. package/src/main_thread/tracks_store/README.md +21 -0
  2935. package/src/main_thread/tracks_store/__tests__/media_element_tracks_store.test.ts +172 -0
  2936. package/src/main_thread/tracks_store/index.ts +22 -0
  2937. package/src/main_thread/tracks_store/media_element_tracks_store.ts +811 -0
  2938. package/src/main_thread/tracks_store/track_dispatcher.ts +296 -0
  2939. package/src/main_thread/tracks_store/tracks_store.ts +1493 -0
  2940. package/src/main_thread/types.ts +15 -0
  2941. package/src/manifest/README.md +11 -0
  2942. package/src/manifest/classes/README.md +55 -0
  2943. package/src/manifest/classes/__tests__/adaptation.test.ts +390 -0
  2944. package/src/manifest/classes/__tests__/manifest.test.ts +523 -0
  2945. package/src/manifest/classes/__tests__/period.test.ts +967 -0
  2946. package/src/manifest/classes/__tests__/representation.test.ts +482 -0
  2947. package/src/manifest/classes/__tests__/update_period_in_place.test.ts +1318 -0
  2948. package/src/manifest/classes/__tests__/update_periods.test.ts +959 -0
  2949. package/src/manifest/classes/adaptation.ts +286 -0
  2950. package/src/manifest/classes/index.ts +53 -0
  2951. package/src/manifest/classes/manifest.ts +707 -0
  2952. package/src/manifest/classes/period.ts +267 -0
  2953. package/src/manifest/classes/representation.ts +487 -0
  2954. package/src/manifest/classes/representation_index/__tests__/static.test.ts +64 -0
  2955. package/src/manifest/classes/representation_index/index.ts +26 -0
  2956. package/src/manifest/classes/representation_index/static.ts +169 -0
  2957. package/src/manifest/classes/representation_index/types.ts +458 -0
  2958. package/src/manifest/classes/types.ts +30 -0
  2959. package/src/manifest/classes/update_period_in_place.ts +163 -0
  2960. package/src/manifest/classes/update_periods.ts +279 -0
  2961. package/src/manifest/classes/utils.ts +71 -0
  2962. package/src/manifest/index.ts +45 -0
  2963. package/src/manifest/types.ts +407 -0
  2964. package/src/manifest/utils.ts +672 -0
  2965. package/src/minimal.ts +47 -0
  2966. package/src/mse/README.md +30 -0
  2967. package/src/mse/index.ts +7 -0
  2968. package/src/mse/main_codec_support_prober.ts +52 -0
  2969. package/src/mse/main_media_source_interface.ts +595 -0
  2970. package/src/mse/types.ts +314 -0
  2971. package/src/mse/utils/end_of_stream.ts +126 -0
  2972. package/src/mse/utils/media_source_duration_updater.ts +366 -0
  2973. package/src/mse/worker_codec_support_prober.ts +75 -0
  2974. package/src/mse/worker_media_source_interface.ts +471 -0
  2975. package/src/multithread_types.ts +999 -0
  2976. package/src/parsers/README.md +20 -0
  2977. package/src/parsers/containers/isobmff/__tests__/find_complete_box.test.ts +42 -0
  2978. package/src/parsers/containers/isobmff/constants.ts +24 -0
  2979. package/src/parsers/containers/isobmff/create_box.ts +72 -0
  2980. package/src/parsers/containers/isobmff/drm/index.ts +17 -0
  2981. package/src/parsers/containers/isobmff/drm/playready.ts +38 -0
  2982. package/src/parsers/containers/isobmff/extract_complete_chunks.ts +74 -0
  2983. package/src/parsers/containers/isobmff/find_complete_box.ts +58 -0
  2984. package/src/parsers/containers/isobmff/get_box.ts +276 -0
  2985. package/src/parsers/containers/isobmff/index.ts +40 -0
  2986. package/src/parsers/containers/isobmff/read.ts +96 -0
  2987. package/src/parsers/containers/isobmff/take_pssh_out.ts +97 -0
  2988. package/src/parsers/containers/isobmff/utils.ts +576 -0
  2989. package/src/parsers/containers/matroska/index.ts +18 -0
  2990. package/src/parsers/containers/matroska/utils.ts +325 -0
  2991. package/src/parsers/images/bif.ts +145 -0
  2992. package/src/parsers/manifest/dash/common/__tests__/attach_trickmode_track.test.ts +48 -0
  2993. package/src/parsers/manifest/dash/common/__tests__/convert_supplemental_codecs.test.ts +34 -0
  2994. package/src/parsers/manifest/dash/common/__tests__/flatten_overlapping_period.test.ts +143 -0
  2995. package/src/parsers/manifest/dash/common/__tests__/get_clock_offset.test.ts +52 -0
  2996. package/src/parsers/manifest/dash/common/__tests__/get_http_utc-timing_url.test.ts +150 -0
  2997. package/src/parsers/manifest/dash/common/__tests__/get_periods_time_infos.test.ts +91 -0
  2998. package/src/parsers/manifest/dash/common/__tests__/manifest_bounds_calculator.test.ts +265 -0
  2999. package/src/parsers/manifest/dash/common/__tests__/parse_availability_start_time.test.ts +65 -0
  3000. package/src/parsers/manifest/dash/common/attach_trickmode_track.ts +54 -0
  3001. package/src/parsers/manifest/dash/common/content_protection_parser.ts +255 -0
  3002. package/src/parsers/manifest/dash/common/convert_supplemental_codecs.ts +25 -0
  3003. package/src/parsers/manifest/dash/common/flatten_overlapping_periods.ts +89 -0
  3004. package/src/parsers/manifest/dash/common/get_clock_offset.ts +40 -0
  3005. package/src/parsers/manifest/dash/common/get_hdr_information.ts +86 -0
  3006. package/src/parsers/manifest/dash/common/get_http_utc-timing_url.ts +44 -0
  3007. package/src/parsers/manifest/dash/common/get_minimum_and_maximum_positions.ts +41 -0
  3008. package/src/parsers/manifest/dash/common/get_periods_time_infos.ts +93 -0
  3009. package/src/parsers/manifest/dash/common/index.ts +37 -0
  3010. package/src/parsers/manifest/dash/common/indexes/__tests__/tokens.test.ts +48 -0
  3011. package/src/parsers/manifest/dash/common/indexes/base.ts +451 -0
  3012. package/src/parsers/manifest/dash/common/indexes/get_init_segment.ts +58 -0
  3013. package/src/parsers/manifest/dash/common/indexes/get_segments_from_timeline.ts +149 -0
  3014. package/src/parsers/manifest/dash/common/indexes/index.ts +37 -0
  3015. package/src/parsers/manifest/dash/common/indexes/list.ts +361 -0
  3016. package/src/parsers/manifest/dash/common/indexes/template.ts +675 -0
  3017. package/src/parsers/manifest/dash/common/indexes/timeline/__tests__/parse_s_element.test.ts +180 -0
  3018. package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.ts +57 -0
  3019. package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.ts +115 -0
  3020. package/src/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.ts +73 -0
  3021. package/src/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.ts +171 -0
  3022. package/src/parsers/manifest/dash/common/indexes/timeline/index.ts +20 -0
  3023. package/src/parsers/manifest/dash/common/indexes/timeline/parse_s_element.ts +118 -0
  3024. package/src/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.ts +1095 -0
  3025. package/src/parsers/manifest/dash/common/indexes/tokens.ts +127 -0
  3026. package/src/parsers/manifest/dash/common/indexes/utils.ts +30 -0
  3027. package/src/parsers/manifest/dash/common/infer_adaptation_type.ts +140 -0
  3028. package/src/parsers/manifest/dash/common/manifest_bounds_calculator.ts +174 -0
  3029. package/src/parsers/manifest/dash/common/parse_adaptation_sets.ts +573 -0
  3030. package/src/parsers/manifest/dash/common/parse_availability_start_time.ts +37 -0
  3031. package/src/parsers/manifest/dash/common/parse_mpd.ts +428 -0
  3032. package/src/parsers/manifest/dash/common/parse_periods.ts +388 -0
  3033. package/src/parsers/manifest/dash/common/parse_representation_index.ts +215 -0
  3034. package/src/parsers/manifest/dash/common/parse_representations.ts +305 -0
  3035. package/src/parsers/manifest/dash/common/resolve_base_urls.ts +58 -0
  3036. package/src/parsers/manifest/dash/fast-js-parser/__tests__/parse_from_xml_string.test.ts +25 -0
  3037. package/src/parsers/manifest/dash/fast-js-parser/index.ts +18 -0
  3038. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.ts +427 -0
  3039. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.ts +36 -0
  3040. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.ts +50 -0
  3041. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.ts +101 -0
  3042. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.ts +123 -0
  3043. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.ts +52 -0
  3044. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.ts +228 -0
  3045. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Period.ts +191 -0
  3046. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.ts +262 -0
  3047. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.ts +134 -0
  3048. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.ts +52 -0
  3049. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.ts +104 -0
  3050. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.ts +37 -0
  3051. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.ts +66 -0
  3052. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/AdaptationSet.test.ts +519 -0
  3053. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/ContentComponent.test.ts +48 -0
  3054. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/ContentProtection.test.ts +180 -0
  3055. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/Initialization.test.ts +105 -0
  3056. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/SegmentURL.test.ts +145 -0
  3057. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/utils.test.ts +188 -0
  3058. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/utils.ts +399 -0
  3059. package/src/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.ts +135 -0
  3060. package/src/parsers/manifest/dash/index.ts +22 -0
  3061. package/src/parsers/manifest/dash/native-parser/__tests__/parse_from_document.test.ts +28 -0
  3062. package/src/parsers/manifest/dash/native-parser/index.ts +18 -0
  3063. package/src/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.ts +425 -0
  3064. package/src/parsers/manifest/dash/native-parser/node_parsers/BaseURL.ts +34 -0
  3065. package/src/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.ts +49 -0
  3066. package/src/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.ts +99 -0
  3067. package/src/parsers/manifest/dash/native-parser/node_parsers/EventStream.ts +118 -0
  3068. package/src/parsers/manifest/dash/native-parser/node_parsers/Initialization.ts +47 -0
  3069. package/src/parsers/manifest/dash/native-parser/node_parsers/MPD.ts +198 -0
  3070. package/src/parsers/manifest/dash/native-parser/node_parsers/Period.ts +163 -0
  3071. package/src/parsers/manifest/dash/native-parser/node_parsers/Representation.ts +257 -0
  3072. package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.ts +129 -0
  3073. package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentList.ts +50 -0
  3074. package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.ts +102 -0
  3075. package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.ts +33 -0
  3076. package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.ts +61 -0
  3077. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/AdaptationSet.test.ts +617 -0
  3078. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/ContentComponent.test.ts +52 -0
  3079. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/ContentProtection.test.ts +246 -0
  3080. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/Initialization.test.ts +116 -0
  3081. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/SegmentTimeline.test.ts +104 -0
  3082. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/SegmentURL.test.ts +165 -0
  3083. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/utils.test.ts +201 -0
  3084. package/src/parsers/manifest/dash/native-parser/node_parsers/utils.ts +385 -0
  3085. package/src/parsers/manifest/dash/native-parser/parse_from_document.ts +125 -0
  3086. package/src/parsers/manifest/dash/node_parser_types.ts +440 -0
  3087. package/src/parsers/manifest/dash/parsers_types.ts +90 -0
  3088. package/src/parsers/manifest/dash/wasm-parser/Cargo.lock +25 -0
  3089. package/src/parsers/manifest/dash/wasm-parser/Cargo.toml +16 -0
  3090. package/src/parsers/manifest/dash/wasm-parser/README.md +243 -0
  3091. package/src/parsers/manifest/dash/wasm-parser/index.ts +20 -0
  3092. package/src/parsers/manifest/dash/wasm-parser/rs/errors.rs +28 -0
  3093. package/src/parsers/manifest/dash/wasm-parser/rs/events.rs +382 -0
  3094. package/src/parsers/manifest/dash/wasm-parser/rs/lib.rs +85 -0
  3095. package/src/parsers/manifest/dash/wasm-parser/rs/processor/attributes.rs +416 -0
  3096. package/src/parsers/manifest/dash/wasm-parser/rs/processor/mod.rs +472 -0
  3097. package/src/parsers/manifest/dash/wasm-parser/rs/processor/s_element.rs +72 -0
  3098. package/src/parsers/manifest/dash/wasm-parser/rs/reader.rs +17 -0
  3099. package/src/parsers/manifest/dash/wasm-parser/rs/reportable.rs +147 -0
  3100. package/src/parsers/manifest/dash/wasm-parser/rs/utils.rs +266 -0
  3101. package/src/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.ts +495 -0
  3102. package/src/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.ts +376 -0
  3103. package/src/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.ts +38 -0
  3104. package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.ts +52 -0
  3105. package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.ts +64 -0
  3106. package/src/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.ts +137 -0
  3107. package/src/parsers/manifest/dash/wasm-parser/ts/generators/MPD.ts +191 -0
  3108. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Period.ts +208 -0
  3109. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Representation.ts +252 -0
  3110. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.ts +44 -0
  3111. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.ts +111 -0
  3112. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.ts +56 -0
  3113. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.ts +132 -0
  3114. package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.ts +63 -0
  3115. package/src/parsers/manifest/dash/wasm-parser/ts/generators/XLink.ts +64 -0
  3116. package/src/parsers/manifest/dash/wasm-parser/ts/generators/index.ts +17 -0
  3117. package/src/parsers/manifest/dash/wasm-parser/ts/generators/root.ts +69 -0
  3118. package/src/parsers/manifest/dash/wasm-parser/ts/parsers_stack.ts +82 -0
  3119. package/src/parsers/manifest/dash/wasm-parser/ts/types.ts +299 -0
  3120. package/src/parsers/manifest/dash/wasm-parser/ts/utils.ts +48 -0
  3121. package/src/parsers/manifest/index.ts +17 -0
  3122. package/src/parsers/manifest/local/index.ts +25 -0
  3123. package/src/parsers/manifest/local/parse_local_manifest.ts +180 -0
  3124. package/src/parsers/manifest/local/representation_index.ts +254 -0
  3125. package/src/parsers/manifest/local/types.ts +293 -0
  3126. package/src/parsers/manifest/metaplaylist/index.ts +25 -0
  3127. package/src/parsers/manifest/metaplaylist/metaplaylist_parser.ts +366 -0
  3128. package/src/parsers/manifest/metaplaylist/representation_index.ts +274 -0
  3129. package/src/parsers/manifest/smooth/create_parser.ts +723 -0
  3130. package/src/parsers/manifest/smooth/get_codecs.ts +52 -0
  3131. package/src/parsers/manifest/smooth/index.ts +23 -0
  3132. package/src/parsers/manifest/smooth/parse_C_nodes.ts +68 -0
  3133. package/src/parsers/manifest/smooth/parse_protection_node.ts +83 -0
  3134. package/src/parsers/manifest/smooth/representation_index.ts +547 -0
  3135. package/src/parsers/manifest/smooth/shared_smooth_segment_timeline.ts +246 -0
  3136. package/src/parsers/manifest/smooth/utils/add_segment_infos.ts +78 -0
  3137. package/src/parsers/manifest/smooth/utils/parseBoolean.ts +29 -0
  3138. package/src/parsers/manifest/smooth/utils/reduceChildren.ts +36 -0
  3139. package/src/parsers/manifest/smooth/utils/tokens.ts +44 -0
  3140. package/src/parsers/manifest/types.ts +403 -0
  3141. package/src/parsers/manifest/utils/__tests__/get_first_time_from_adaptations.test.ts +224 -0
  3142. package/src/parsers/manifest/utils/__tests__/get_last_time_from_adaptation.test.ts +224 -0
  3143. package/src/parsers/manifest/utils/__tests__/index_helpers.test.ts +25 -0
  3144. package/src/parsers/manifest/utils/__tests__/update_segment_timeline.test.ts +613 -0
  3145. package/src/parsers/manifest/utils/check_manifest_ids.ts +79 -0
  3146. package/src/parsers/manifest/utils/clear_timeline_from_position.ts +77 -0
  3147. package/src/parsers/manifest/utils/get_first_time_from_adaptation.ts +49 -0
  3148. package/src/parsers/manifest/utils/get_last_time_from_adaptation.ts +51 -0
  3149. package/src/parsers/manifest/utils/get_maximum_positions.ts +88 -0
  3150. package/src/parsers/manifest/utils/get_minimum_position.ts +81 -0
  3151. package/src/parsers/manifest/utils/index_helpers.ts +203 -0
  3152. package/src/parsers/manifest/utils/update_segment_timeline.ts +145 -0
  3153. package/src/parsers/texttracks/index.ts +21 -0
  3154. package/src/parsers/texttracks/sami/html.ts +220 -0
  3155. package/src/parsers/texttracks/sami/native.ts +190 -0
  3156. package/src/parsers/texttracks/srt/__tests__/find_end_of_cue_block.test.ts +84 -0
  3157. package/src/parsers/texttracks/srt/__tests__/get_cue_blocks.test.ts +88 -0
  3158. package/src/parsers/texttracks/srt/__tests__/parse_cue.test.ts +87 -0
  3159. package/src/parsers/texttracks/srt/__tests__/parse_timestamp.test.ts +21 -0
  3160. package/src/parsers/texttracks/srt/find_end_of_cue_block.ts +46 -0
  3161. package/src/parsers/texttracks/srt/get_cue_blocks.ts +50 -0
  3162. package/src/parsers/texttracks/srt/html.ts +183 -0
  3163. package/src/parsers/texttracks/srt/native.ts +72 -0
  3164. package/src/parsers/texttracks/srt/parse_cue.ts +72 -0
  3165. package/src/parsers/texttracks/srt/parse_timestamp.ts +35 -0
  3166. package/src/parsers/texttracks/ttml/__tests__/resolve_styles_inheritance.test.ts +257 -0
  3167. package/src/parsers/texttracks/ttml/get_parameters.ts +101 -0
  3168. package/src/parsers/texttracks/ttml/get_styling.ts +145 -0
  3169. package/src/parsers/texttracks/ttml/get_time_delimiters.ts +50 -0
  3170. package/src/parsers/texttracks/ttml/html/__tests__/__global__/html_ttml_parser.test.ts +187 -0
  3171. package/src/parsers/texttracks/ttml/html/__tests__/generate_css_test_outline.test.ts +19 -0
  3172. package/src/parsers/texttracks/ttml/html/__tests__/ttml_color_to_css_color.test.ts +38 -0
  3173. package/src/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.ts +69 -0
  3174. package/src/parsers/texttracks/ttml/html/apply_extent.ts +56 -0
  3175. package/src/parsers/texttracks/ttml/html/apply_font_size.ts +59 -0
  3176. package/src/parsers/texttracks/ttml/html/apply_line_height.ts +48 -0
  3177. package/src/parsers/texttracks/ttml/html/apply_origin.ts +55 -0
  3178. package/src/parsers/texttracks/ttml/html/apply_padding.ts +134 -0
  3179. package/src/parsers/texttracks/ttml/html/create_element.ts +552 -0
  3180. package/src/parsers/texttracks/ttml/html/generate_css_test_outline.ts +48 -0
  3181. package/src/parsers/texttracks/ttml/html/index.ts +23 -0
  3182. package/src/parsers/texttracks/ttml/html/parse_cue.ts +62 -0
  3183. package/src/parsers/texttracks/ttml/html/parse_ttml_to_div.ts +56 -0
  3184. package/src/parsers/texttracks/ttml/html/ttml_color_to_css_color.ts +92 -0
  3185. package/src/parsers/texttracks/ttml/native/index.ts +23 -0
  3186. package/src/parsers/texttracks/ttml/native/parse_cue.ts +231 -0
  3187. package/src/parsers/texttracks/ttml/native/parse_ttml_to_vtt.ts +39 -0
  3188. package/src/parsers/texttracks/ttml/parse_ttml.ts +216 -0
  3189. package/src/parsers/texttracks/ttml/regexps.ts +61 -0
  3190. package/src/parsers/texttracks/ttml/resolve_styles_inheritance.ts +81 -0
  3191. package/src/parsers/texttracks/ttml/time_parsing.ts +145 -0
  3192. package/src/parsers/texttracks/ttml/xml_utils.ts +169 -0
  3193. package/src/parsers/texttracks/types.ts +38 -0
  3194. package/src/parsers/texttracks/webvtt/__tests__/get_cue_blocks.test.ts +165 -0
  3195. package/src/parsers/texttracks/webvtt/__tests__/get_style_blocks.test.ts +45 -0
  3196. package/src/parsers/texttracks/webvtt/__tests__/parse_cue_block.test.ts +187 -0
  3197. package/src/parsers/texttracks/webvtt/__tests__/parse_timestamp.test.ts +24 -0
  3198. package/src/parsers/texttracks/webvtt/__tests__/utils.test.ts +374 -0
  3199. package/src/parsers/texttracks/webvtt/get_cue_blocks.ts +48 -0
  3200. package/src/parsers/texttracks/webvtt/get_style_blocks.ts +57 -0
  3201. package/src/parsers/texttracks/webvtt/html/__tests__/convert_payload_to_html.test.ts +94 -0
  3202. package/src/parsers/texttracks/webvtt/html/__tests__/create_default_style_elements.test.ts +27 -0
  3203. package/src/parsers/texttracks/webvtt/html/__tests__/create_style_attribute.test.ts +140 -0
  3204. package/src/parsers/texttracks/webvtt/html/__tests__/create_styled_element.test.ts +104 -0
  3205. package/src/parsers/texttracks/webvtt/html/__tests__/parse_style_block.test.ts +279 -0
  3206. package/src/parsers/texttracks/webvtt/html/__tests__/parse_webvtt_to_div.test.ts +156 -0
  3207. package/src/parsers/texttracks/webvtt/html/__tests__/to_html.test.ts +206 -0
  3208. package/src/parsers/texttracks/webvtt/html/convert_payload_to_html.ts +43 -0
  3209. package/src/parsers/texttracks/webvtt/html/create_default_style_elements.ts +26 -0
  3210. package/src/parsers/texttracks/webvtt/html/create_style_attribute.ts +219 -0
  3211. package/src/parsers/texttracks/webvtt/html/create_styled_element.ts +88 -0
  3212. package/src/parsers/texttracks/webvtt/html/index.ts +25 -0
  3213. package/src/parsers/texttracks/webvtt/html/parse_style_block.ts +80 -0
  3214. package/src/parsers/texttracks/webvtt/html/parse_webvtt_to_div.ts +63 -0
  3215. package/src/parsers/texttracks/webvtt/html/to_html.ts +91 -0
  3216. package/src/parsers/texttracks/webvtt/native/index.ts +23 -0
  3217. package/src/parsers/texttracks/webvtt/native/parse_vtt_to_cues.ts +68 -0
  3218. package/src/parsers/texttracks/webvtt/native/set_settings_on_cue.ts +96 -0
  3219. package/src/parsers/texttracks/webvtt/native/to_native_cue.ts +32 -0
  3220. package/src/parsers/texttracks/webvtt/parse_cue_block.ts +128 -0
  3221. package/src/parsers/texttracks/webvtt/parse_timestamp.ts +37 -0
  3222. package/src/parsers/texttracks/webvtt/utils.ts +139 -0
  3223. package/src/playback_observer/index.ts +12 -0
  3224. package/src/playback_observer/media_element_playback_observer.ts +947 -0
  3225. package/src/playback_observer/types.ts +238 -0
  3226. package/src/playback_observer/utils/generate_read_only_observer.ts +64 -0
  3227. package/src/playback_observer/utils/observation_position.ts +116 -0
  3228. package/src/playback_observer/worker_playback_observer.ts +140 -0
  3229. package/src/public_types.ts +1077 -0
  3230. package/src/tools/README.md +7 -0
  3231. package/src/tools/TextTrackRenderer/index.ts +27 -0
  3232. package/src/tools/TextTrackRenderer/text_track_renderer.ts +105 -0
  3233. package/src/tools/index.ts +21 -0
  3234. package/src/tools/parseBIFThumbnails/index.ts +42 -0
  3235. package/src/tools/string_utils/index.ts +24 -0
  3236. package/src/transports/README.md +251 -0
  3237. package/src/transports/dash/add_segment_integrity_checks_to_loader.ts +97 -0
  3238. package/src/transports/dash/construct_segment_url.ts +32 -0
  3239. package/src/transports/dash/get_events_out_of_emsgs.ts +113 -0
  3240. package/src/transports/dash/index.ts +23 -0
  3241. package/src/transports/dash/init_segment_loader.ts +125 -0
  3242. package/src/transports/dash/low_latency_segment_loader.ts +93 -0
  3243. package/src/transports/dash/manifest_parser.ts +376 -0
  3244. package/src/transports/dash/pipelines.ts +69 -0
  3245. package/src/transports/dash/segment_loader.ts +273 -0
  3246. package/src/transports/dash/segment_parser.ts +204 -0
  3247. package/src/transports/dash/text_loader.ts +123 -0
  3248. package/src/transports/dash/text_parser.ts +250 -0
  3249. package/src/transports/index.ts +17 -0
  3250. package/src/transports/local/index.ts +18 -0
  3251. package/src/transports/local/pipelines.ts +96 -0
  3252. package/src/transports/local/segment_loader.ts +213 -0
  3253. package/src/transports/local/segment_parser.ts +106 -0
  3254. package/src/transports/local/text_parser.ts +197 -0
  3255. package/src/transports/metaplaylist/README.md +89 -0
  3256. package/src/transports/metaplaylist/index.ts +23 -0
  3257. package/src/transports/metaplaylist/manifest_loader.ts +63 -0
  3258. package/src/transports/metaplaylist/pipelines.ts +400 -0
  3259. package/src/transports/smooth/extract_timings_infos.ts +134 -0
  3260. package/src/transports/smooth/index.ts +23 -0
  3261. package/src/transports/smooth/is_mp4_embedded_track.ts +25 -0
  3262. package/src/transports/smooth/isobmff/__tests__/create_boxes.test.ts +323 -0
  3263. package/src/transports/smooth/isobmff/create_audio_init_segment.ts +88 -0
  3264. package/src/transports/smooth/isobmff/create_boxes.ts +526 -0
  3265. package/src/transports/smooth/isobmff/create_init_segment.ts +92 -0
  3266. package/src/transports/smooth/isobmff/create_traf_box.ts +36 -0
  3267. package/src/transports/smooth/isobmff/create_video_init_segment.ts +78 -0
  3268. package/src/transports/smooth/isobmff/get_aaces_header.ts +50 -0
  3269. package/src/transports/smooth/isobmff/index.ts +31 -0
  3270. package/src/transports/smooth/isobmff/parse_tfrf.ts +54 -0
  3271. package/src/transports/smooth/isobmff/parse_tfxd.ts +38 -0
  3272. package/src/transports/smooth/isobmff/patch_segment.ts +174 -0
  3273. package/src/transports/smooth/pipelines.ts +416 -0
  3274. package/src/transports/smooth/segment_loader.ts +326 -0
  3275. package/src/transports/smooth/utils.ts +47 -0
  3276. package/src/transports/types.ts +802 -0
  3277. package/src/transports/utils/__tests__/byte_range.test.ts +36 -0
  3278. package/src/transports/utils/__tests__/check_isobmff_integrity.test.ts +143 -0
  3279. package/src/transports/utils/__tests__/infer_segment_container.test.ts +66 -0
  3280. package/src/transports/utils/byte_range.ts +24 -0
  3281. package/src/transports/utils/call_custom_manifest_loader.ts +145 -0
  3282. package/src/transports/utils/check_isobmff_integrity.ts +50 -0
  3283. package/src/transports/utils/generate_manifest_loader.ts +97 -0
  3284. package/src/transports/utils/get_isobmff_timing_infos.ts +90 -0
  3285. package/src/transports/utils/infer_segment_container.ts +47 -0
  3286. package/src/transports/utils/parse_text_track.ts +160 -0
  3287. package/src/utils/README.md +12 -0
  3288. package/src/utils/__tests__/are_arrays_of_numbers_equal.test.ts +69 -0
  3289. package/src/utils/__tests__/are_codecs_compatible.test.ts +59 -0
  3290. package/src/utils/__tests__/array_find.test.ts +112 -0
  3291. package/src/utils/__tests__/array_find_index.test.ts +111 -0
  3292. package/src/utils/__tests__/array_includes.test.ts +115 -0
  3293. package/src/utils/__tests__/assert.test.ts +244 -0
  3294. package/src/utils/__tests__/base64.test.ts +204 -0
  3295. package/src/utils/__tests__/byte_parsing.test.ts +205 -0
  3296. package/src/utils/__tests__/deep_merge.test.ts +48 -0
  3297. package/src/utils/__tests__/event_emitter.test.ts +537 -0
  3298. package/src/utils/__tests__/flat_map.test.ts +60 -0
  3299. package/src/utils/__tests__/get_fuzzed_delay.test.ts +17 -0
  3300. package/src/utils/__tests__/hash_buffer.test.ts +28 -0
  3301. package/src/utils/__tests__/id_generator.test.ts +68 -0
  3302. package/src/utils/__tests__/is_non_empty_string.test.ts +28 -0
  3303. package/src/utils/__tests__/is_null_or_undefined.test.ts +18 -0
  3304. package/src/utils/__tests__/logger.test.ts +197 -0
  3305. package/src/utils/__tests__/noop.test.ts +8 -0
  3306. package/src/utils/__tests__/object_assign.test.ts +59 -0
  3307. package/src/utils/__tests__/object_values.test.ts +11 -0
  3308. package/src/utils/__tests__/ranges.test.ts +1150 -0
  3309. package/src/utils/__tests__/resolve_url.test.ts +157 -0
  3310. package/src/utils/__tests__/retry_promise_with_backoff.test.ts +40 -0
  3311. package/src/utils/__tests__/sorted_list.test.ts +302 -0
  3312. package/src/utils/__tests__/starts_with.test.ts +50 -0
  3313. package/src/utils/__tests__/string_parsing.test.ts +273 -0
  3314. package/src/utils/__tests__/warn_once.test.ts +23 -0
  3315. package/src/utils/__tests__/weak_map_memory.test.ts +169 -0
  3316. package/src/utils/__tests__/xml-parser.test.ts +441 -0
  3317. package/src/utils/are_arrays_of_numbers_equal.ts +39 -0
  3318. package/src/utils/are_codecs_compatible.ts +51 -0
  3319. package/src/utils/array_find.ts +52 -0
  3320. package/src/utils/array_find_index.ts +54 -0
  3321. package/src/utils/array_includes.ts +89 -0
  3322. package/src/utils/assert.ts +112 -0
  3323. package/src/utils/base64.ts +211 -0
  3324. package/src/utils/byte_parsing.ts +274 -0
  3325. package/src/utils/cancellable_sleep.ts +41 -0
  3326. package/src/utils/create_cancellable_promise.ts +63 -0
  3327. package/src/utils/deep_merge.ts +52 -0
  3328. package/src/utils/event_emitter.ts +155 -0
  3329. package/src/utils/flat_map.ts +47 -0
  3330. package/src/utils/get_fuzzed_delay.ts +27 -0
  3331. package/src/utils/global_scope.ts +22 -0
  3332. package/src/utils/hash_buffer.ts +42 -0
  3333. package/src/utils/id_generator.ts +35 -0
  3334. package/src/utils/is_node.ts +21 -0
  3335. package/src/utils/is_non_empty_string.ts +23 -0
  3336. package/src/utils/is_null_or_undefined.ts +27 -0
  3337. package/src/utils/is_worker.ts +8 -0
  3338. package/src/utils/languages/ISO_639-1_to_ISO_639-3.ts +207 -0
  3339. package/src/utils/languages/ISO_639-2_to_ISO_639-3.ts +43 -0
  3340. package/src/utils/languages/__tests__/normalize.test.ts +326 -0
  3341. package/src/utils/languages/index.ts +24 -0
  3342. package/src/utils/languages/normalize.ts +155 -0
  3343. package/src/utils/logger.ts +116 -0
  3344. package/src/utils/monotonic_timestamp.ts +43 -0
  3345. package/src/utils/noop.ts +26 -0
  3346. package/src/utils/object_assign.ts +90 -0
  3347. package/src/utils/object_values.ts +29 -0
  3348. package/src/utils/queue_microtask.ts +5 -0
  3349. package/src/utils/ranges.ts +571 -0
  3350. package/src/utils/reference.ts +395 -0
  3351. package/src/utils/request/__tests__/request_error.test.ts +30 -0
  3352. package/src/utils/request/fetch.ts +292 -0
  3353. package/src/utils/request/index.ts +34 -0
  3354. package/src/utils/request/request_error.ts +91 -0
  3355. package/src/utils/request/xhr.ts +325 -0
  3356. package/src/utils/resolve_url.ts +280 -0
  3357. package/src/utils/retry_promise_with_backoff.ts +100 -0
  3358. package/src/utils/sleep.ts +14 -0
  3359. package/src/utils/slice_uint8array.ts +45 -0
  3360. package/src/utils/sorted_list.ts +240 -0
  3361. package/src/utils/starts_with.ts +43 -0
  3362. package/src/utils/string_parsing.ts +432 -0
  3363. package/src/utils/sync_or_async.ts +94 -0
  3364. package/src/utils/task_canceller.ts +367 -0
  3365. package/src/utils/warn_once.ts +34 -0
  3366. package/src/utils/weak_map_memory.ts +89 -0
  3367. package/src/utils/wrapInPromise.ts +22 -0
  3368. package/src/utils/xml-parser.ts +396 -0
  3369. package/src/worker_entry_point.ts +7 -0
  3370. package/vitest.config.mjs +97 -0
  3371. package/vitest.config.unit.mjs +24 -0
  3372. package/dist/commonjs/__GENERATED_CODE/embedded_worker_es5.d.ts +0 -3
  3373. package/dist/commonjs/__GENERATED_CODE/embedded_worker_es5.js +0 -6
  3374. package/dist/commonjs/main_thread/decrypt/__tests__/__global__/utils.d.ts +0 -184
  3375. package/dist/commonjs/main_thread/decrypt/__tests__/__global__/utils.js +0 -439
  3376. package/dist/es2017/__GENERATED_CODE/embedded_worker_es5.d.ts +0 -3
  3377. package/dist/es2017/__GENERATED_CODE/embedded_worker_es5.js +0 -3
  3378. package/dist/es2017/main_thread/decrypt/__tests__/__global__/utils.d.ts +0 -184
  3379. package/dist/es2017/main_thread/decrypt/__tests__/__global__/utils.js +0 -378
  3380. package/dist/rx-player.min.js +0 -2
  3381. package/dist/rx-player.min.js.LICENSE.txt +0 -1
  3382. package/dist/worker.es5.js +0 -2
  3383. package/dist/worker.es5.js.LICENSE.txt +0 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EMBEDDED_WORKER = void 0;
4
- var blob = new Blob(["(function(){" + "\"use strict\";(()=>{var Hs=Object.defineProperty,Gs=Object.defineProperties;var Ks=Object.getOwnPropertyDescriptors;var za=Object.getOwnPropertySymbols;var js=Object.prototype.hasOwnProperty,Ys=Object.prototype.propertyIsEnumerable;var Wa=(n,e,t)=>e in n?Hs(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,_e=(n,e)=>{for(var t in e||(e={}))js.call(e,t)&&Wa(n,t,e[t]);if(za)for(var t of za(e))Ys.call(e,t)&&Wa(n,t,e[t]);return n},Le=(n,e)=>Gs(n,Ks(e));var b={PRODUCTION:0,DEV:1,CURRENT_ENV:0};var $s={DEFAULT_REQUEST_TIMEOUT:3e4,DEFAULT_CONNECTION_TIMEOUT:15e3,DEFAULT_TEXT_TRACK_MODE:\"native\",DEFAULT_ENABLE_FAST_SWITCHING:!0,DELTA_POSITION_AFTER_RELOAD:{bitrateSwitch:-.1,trackSwitch:{audio:0,video:0,other:0}},DEFAULT_CODEC_SWITCHING_BEHAVIOR:\"continue\",DEFAULT_AUTO_PLAY:!1,DEFAULT_WANTED_BUFFER_AHEAD:30,DEFAULT_MAX_BUFFER_AHEAD:1/0,DEFAULT_MAX_BUFFER_BEHIND:1/0,DEFAULT_MAX_VIDEO_BUFFER_SIZE:1/0,MAXIMUM_MAX_BUFFER_AHEAD:{text:18e3},MINIMUM_MAX_BUFFER_AHEAD:{text:120},MAXIMUM_MAX_BUFFER_BEHIND:{text:18e3},DEFAULT_BASE_BANDWIDTH:0,INACTIVITY_DELAY:6e4,DEFAULT_THROTTLE_VIDEO_BITRATE_WHEN_HIDDEN:!1,DEFAULT_VIDEO_RESOLUTION_LIMIT:\"none\",DEFAULT_LIVE_GAP:{DEFAULT:10,LOW_LATENCY:3.5},BUFFER_DISCONTINUITY_THRESHOLD:.2,BITRATE_REBUFFERING_RATIO:1.5,DEFAULT_MAX_MANIFEST_REQUEST_RETRY:4,DEFAULT_CDN_DOWNGRADE_TIME:60,DEFAULT_MAX_REQUESTS_RETRY_ON_ERROR:4,INITIAL_BACKOFF_DELAY_BASE:{REGULAR:200,LOW_LATENCY:50},MAX_BACKOFF_DELAY_BASE:{REGULAR:3e3,LOW_LATENCY:1e3},SAMPLING_INTERVAL_MEDIASOURCE:1e3,SAMPLING_INTERVAL_LOW_LATENCY:500,SAMPLING_INTERVAL_NO_MEDIASOURCE:500,ABR_ENTER_BUFFER_BASED_ALGO:10,ABR_EXIT_BUFFER_BASED_ALGO:5,ABR_MINIMUM_TOTAL_BYTES:15e4,ABR_MINIMUM_CHUNK_SIZE:16e3,ABR_STARVATION_FACTOR:{DEFAULT:.72,LOW_LATENCY:.72},ABR_REGULAR_FACTOR:{DEFAULT:.72,LOW_LATENCY:.72},ABR_STARVATION_GAP:{DEFAULT:5,LOW_LATENCY:5},OUT_OF_STARVATION_GAP:{DEFAULT:7,LOW_LATENCY:7},ABR_STARVATION_DURATION_DELTA:.1,ABR_FAST_EMA:2,ABR_SLOW_EMA:10,RESUME_GAP_AFTER_SEEKING:{DEFAULT:1.5,LOW_LATENCY:.5},RESUME_GAP_AFTER_NOT_ENOUGH_DATA:{DEFAULT:.5,LOW_LATENCY:.5},RESUME_GAP_AFTER_BUFFERING:{DEFAULT:5,LOW_LATENCY:.5},REBUFFERING_GAP:{DEFAULT:.5,LOW_LATENCY:.2},MINIMUM_BUFFER_AMOUNT_BEFORE_FREEZING:2,UNFREEZING_SEEK_DELAY:6e3,FREEZING_STALLED_DELAY:600,UNFREEZING_DELTA_POSITION:.001,SEGMENT_SYNCHRONIZATION_DELAY:1500,MISSING_DATA_TRIGGER_SYNC_DELAY:.1,MAX_TIME_MISSING_FROM_COMPLETE_SEGMENT:.15,MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:.4,MAX_MANIFEST_BUFFERED_DURATION_DIFFERENCE:.3,MINIMUM_SEGMENT_SIZE:.001,APPEND_WINDOW_SECURITIES:{START:.2,END:.1},MAXIMUM_HTML_TEXT_TRACK_UPDATE_INTERVAL:50,TEXT_TRACK_SIZE_CHECKS_INTERVAL:250,BUFFER_PADDING:{audio:1,video:3,other:1},SEGMENT_PRIORITIES_STEPS:[2,4,8,12,18,25],MAX_HIGH_PRIORITY_LEVEL:1,MIN_CANCELABLE_PRIORITY:3,EME_DEFAULT_VIDEO_CODECS:['video/mp4;codecs=\"avc1.4d401e\"','video/mp4;codecs=\"avc1.42e01e\"','video/webm;codecs=\"vp8\"'],EME_DEFAULT_AUDIO_CODECS:['audio/mp4;codecs=\"mp4a.40.2\"',\"audio/webm;codecs=opus\"],EME_DEFAULT_WIDEVINE_ROBUSTNESSES:[\"HW_SECURE_ALL\",\"HW_SECURE_DECODE\",\"HW_SECURE_CRYPTO\",\"SW_SECURE_DECODE\",\"SW_SECURE_CRYPTO\"],EME_DEFAULT_PLAYREADY_RECOMMENDATION_ROBUSTNESSES:[\"3000\",\"2000\"],EME_KEY_SYSTEMS:{clearkey:[\"webkit-org.w3.clearkey\",\"org.w3.clearkey\"],widevine:[\"com.widevine.alpha\"],playready:[\"com.microsoft.playready.recommendation\",\"com.microsoft.playready\",\"com.chromecast.playready\",\"com.youtube.playready\"],fairplay:[\"com.apple.fps.1_0\"]},MAX_CONSECUTIVE_MANIFEST_PARSING_IN_UNSAFE_MODE:10,MIN_MANIFEST_PARSING_TIME_TO_ENTER_UNSAFE_MODE:200,MIN_DASH_S_ELEMENTS_TO_PARSE_UNSAFELY:300,OUT_OF_SYNC_MANIFEST_REFRESH_DELAY:3e3,FAILED_PARTIAL_UPDATE_MANIFEST_REFRESH_DELAY:3e3,DASH_FALLBACK_LIFETIME_WHEN_MINIMUM_UPDATE_PERIOD_EQUAL_0:3,EME_DEFAULT_MAX_SIMULTANEOUS_MEDIA_KEY_SESSIONS:15,EME_MAX_STORED_PERSISTENT_SESSION_INFORMATION:1e3,EME_WAITING_DELAY_LOADED_SESSION_EMPTY_KEYSTATUSES:100,FORCED_ENDED_THRESHOLD:8e-4,ADAP_REP_SWITCH_BUFFER_PADDINGS:{video:{before:5,after:5},audio:{before:2,after:2.5},text:{before:0,after:0}},SOURCE_BUFFER_FLUSHING_INTERVAL:500,CONTENT_REPLACEMENT_PADDING:1.2,CACHE_LOAD_DURATION_THRESHOLDS:{video:50,audio:10},STREAM_EVENT_EMITTER_POLL_INTERVAL:250,DEFAULT_MAXIMUM_TIME_ROUNDING_ERROR:.001,BUFFERED_HISTORY_RETENTION_TIME:6e4,BUFFERED_HISTORY_MAXIMUM_ENTRIES:200,MIN_BUFFER_AHEAD:5,UPTO_CURRENT_POSITION_CLEANUP:5,DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE:\"seamless\",DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE:\"seamless\",DEFAULT_VIDEO_TRACK_SWITCHING_MODE:\"reload\",DEFAULT_AUDIO_TRACK_SWITCHING_MODE:\"seamless\"},Va=$s;function Xs(n,...e){if(n==null)throw new TypeError(\"Cannot convert undefined or null to object\");let t=Object(n);for(let r=0;r<e.length;r++){let i=e[r];for(let a in i)Object.prototype.hasOwnProperty.call(i,a)&&(t[a]=i[a])}return t}var H=typeof Object.assign==\"function\"?Object.assign:Xs;function qr(n){return n!=null&&!Array.isArray(n)&&typeof n==\"object\"}function jt(n,...e){if(e.length===0)return n;let t=e.shift();if(qr(n)&&qr(t))for(let r in t)if(qr(t[r])){let i=n[r];i===void 0&&(i={},n[r]=i),jt(i,t[r])}else H(n,{[r]:t[r]});return jt(n,...e)}var Hr=class{constructor(){this._config=Va}update(e){let t=jt(this._config,e);this._config=t}getCurrent(){return this._config}},Zs=new Hr,U=Zs;var Ge=class n extends Error{constructor(e,t,r){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"CustomLoaderError\",this.message=e,this.canRetry=t,this.xhr=r}};function v(n){return n==null}var oe=class{constructor(){this._listeners={}}addEventListener(e,t,r){let i=this._listeners[e];Array.isArray(i)?i.push(t):this._listeners[e]=[t],r!==void 0&&r.register(()=>{this.removeEventListener(e,t)})}removeEventListener(e,t){if(v(e)){this._listeners={};return}let r=this._listeners[e];if(!Array.isArray(r))return;if(v(t)){delete this._listeners[e];return}let i=r.indexOf(t);i!==-1&&r.splice(i,1),r.length===0&&delete this._listeners[e]}trigger(e,t){let r=this._listeners[e];Array.isArray(r)&&r.slice().forEach(i=>{try{i(t)}catch(a){if(b.CURRENT_ENV===b.DEV)throw a instanceof Error?a:new Error(\"EventEmitter: listener error\");console.error(\"RxPlayer: EventEmitter error\",a instanceof Error?a:null)}})}};function N(){}var Js=\"NONE\",Yt=class extends oe{constructor(){super(),this.error=N,this.warn=N,this.info=N,this.debug=N,this._levels={NONE:0,ERROR:1,WARNING:2,INFO:3,DEBUG:4},this._currentLevel=Js}setLevel(e,t){let r,i=this._levels[e];typeof i==\"number\"?(r=i,this._currentLevel=e):(r=0,this._currentLevel=\"NONE\"),t===void 0?(this.error=r>=this._levels.ERROR?console.error.bind(console):N,this.warn=r>=this._levels.WARNING?console.warn.bind(console):N,this.info=r>=this._levels.INFO?console.info.bind(console):N,this.debug=r>=this._levels.DEBUG?console.log.bind(console):N):(this.error=r>=this._levels.ERROR?(...a)=>t(\"ERROR\",a):N,this.warn=r>=this._levels.WARNING?(...a)=>t(\"WARNING\",a):N,this.info=r>=this._levels.INFO?(...a)=>t(\"INFO\",a):N,this.debug=r>=this._levels.DEBUG?(...a)=>t(\"DEBUG\",a):N),this.trigger(\"onLogLevelChange\",this._currentLevel)}getLevel(){return this._currentLevel}hasLevel(e){return this._levels[e]>=this._levels[this._currentLevel]}};var eu=new Yt,c=eu;var ot=typeof WorkerGlobalScope!=\"undefined\"&&self instanceof WorkerGlobalScope;var tu=typeof window==\"undefined\"&&!ot,er=tu;var tr;ot?tr=self:er?tr=global:tr=window;var Ee=tr;function ne(n,e,t){if(typeof Array.prototype.findIndex==\"function\")return n.findIndex(e,t);let r=n.length>>>0;for(let i=0;i<r;i++)if(e.call(t,n[i],i,n))return i;return-1}var nr=class{constructor(e,t){this._value=e,this._listeners=[],this._isFinished=!1,this._onFinishCbs=[],t!==void 0&&(this._deregisterCancellation=t.register(()=>this.finish()))}getValue(){return this._value}setValue(e){if(this._isFinished){b.CURRENT_ENV===b.DEV&&console.error(\"Finished shared references cannot be updated\");return}if(this._value=e,this._listeners.length===0)return;let t=this._listeners.slice();for(let r of t)try{r.hasBeenCleared||r.trigger(e,r.complete)}catch(i){}}setValueIfChanged(e){e!==this._value&&this.setValue(e)}onUpdate(e,t){let r=()=>{if((t==null?void 0:t.clearSignal)!==void 0&&t.clearSignal.deregister(r),i.hasBeenCleared)return;i.hasBeenCleared=!0;let a=this._listeners.indexOf(i);a>=0&&this._listeners.splice(a,1)},i={trigger:e,complete:r,hasBeenCleared:!1};if(this._listeners.push(i),(t==null?void 0:t.emitCurrentValue)===!0&&e(this._value,r),this._isFinished||i.hasBeenCleared){r();return}(t==null?void 0:t.clearSignal)!==void 0&&t.clearSignal.register(r)}waitUntilDefined(e,t){this.onUpdate((r,i)=>{r!==void 0&&(i(),e(this._value))},{clearSignal:t==null?void 0:t.clearSignal,emitCurrentValue:!0})}_onFinished(e,t){if(t.isCancelled())return N;let r=()=>{let o=ne(this._onFinishCbs,s=>s.trigger===i);o>=0&&(this._onFinishCbs[o].hasBeenCleared=!0,this._onFinishCbs.splice(o,1))},i=()=>{r(),e()},a=t.register(r);return this._onFinishCbs.push({trigger:i,hasBeenCleared:!1}),a}finish(){this._deregisterCancellation!==void 0&&this._deregisterCancellation(),this._isFinished=!0;let e=this._listeners.slice();for(let t of e)try{t.hasBeenCleared||(t.complete(),t.hasBeenCleared=!0)}catch(r){}if(this._listeners.length=0,this._onFinishCbs.length>0){let t=this._onFinishCbs.slice();for(let r of t)try{r.hasBeenCleared||(r.trigger(),r.hasBeenCleared=!0)}catch(i){}this._onFinishCbs.length=0}}};function Qt(n,e,t){let r=new nr(e(n.getValue()),t);return n.onUpdate(function(a){r.setValue(e(a))},{clearSignal:t}),n._onFinished(()=>{r.finish()},t),r}var G=nr;var Gr=new G(0);function qa({date:n,timestamp:e}){let t=n-e,r=typeof performance!=\"undefined\"?Date.now()-performance.now():0;Gr.setValueIfChanged(r-t)}var nu=typeof performance!=\"undefined\"?()=>performance.now()+Gr.getValue():()=>Date.now()+Gr.getValue(),L=nu;var re=class n extends Error{constructor(e,t,r){switch(super(),Object.setPrototypeOf(this,n.prototype),this.name=\"RequestError\",this.url=e,this.status=t,this.type=r,r){case\"TIMEOUT\":this.message=\"The request timed out\";break;case\"ERROR_EVENT\":this.message=\"An error prevented the request to be performed successfully\";break;case\"PARSE_ERROR\":this.message=\"An error happened while formatting the response data\";break;case\"ERROR_HTTP_CODE\":this.message=\"An HTTP status code indicating failure was received: \"+String(this.status);break}}serialize(){return{url:this.url,status:this.status,type:this.type}}},Se={TIMEOUT:\"TIMEOUT\",ERROR_EVENT:\"ERROR_EVENT\",ERROR_HTTP_CODE:\"ERROR_HTTP_CODE\",PARSE_ERROR:\"PARSE_ERROR\"};var Kr=typeof Headers==\"function\"?Headers:null,jr=typeof AbortController==\"function\"?AbortController:null;function rr(n){let e;if(!v(n.headers))if(v(Kr))e=n.headers;else{e=new Kr;let m=Object.keys(n.headers);for(let p=0;p<m.length;p++){let g=m[p];e.append(g,n.headers[g])}}c.debug(\"Fetch: Called with URL\",n.url);let t=null,r=!1,i=!1,a=L(),o=v(jr)?null:new jr;function s(){if(v(o)){c.warn(\"Fetch: AbortController API not available.\");return}o.abort()}let u;n.timeout!==void 0&&(u=setTimeout(()=>{r=!0,l!==void 0&&clearTimeout(l),s()},n.timeout));let l;n.connectionTimeout!==void 0&&(l=setTimeout(()=>{i=!0,u!==void 0&&clearTimeout(u),s()},n.connectionTimeout));let d=n.cancelSignal.register(function(p){t=p,s()}),f={method:\"GET\"};return e!==void 0&&(f.headers=e),f.signal=v(o)?null:o.signal,fetch(n.url,f).then(m=>{if(l!==void 0&&clearTimeout(l),m.status>=300)throw c.warn(\"Fetch: Request HTTP Error\",m.status,m.url),new re(m.url,m.status,Se.ERROR_HTTP_CODE);if(v(m.body))throw new re(m.url,m.status,Se.PARSE_ERROR);let p=m.headers.get(\"Content-Length\"),g=!v(p)&&!isNaN(+p)?+p:void 0,h=m.body.getReader(),I=0;return y();async function y(){let E=await h.read();if(!E.done&&!v(E.value)){I+=E.value.byteLength;let R=L(),T={url:m.url,currentTime:R,duration:R-a,sendingTime:a,chunkSize:E.value.byteLength,chunk:E.value.buffer,size:I,totalSize:g};return n.onData(T),y()}else if(E.done){u!==void 0&&clearTimeout(u),d();let R=L();return{requestDuration:R-a,receivedTime:R,sendingTime:a,size:I,status:m.status,url:m.url}}return y()}}).catch(m=>{throw t!==null?t:(d(),r?(c.warn(\"Fetch: Request timed out.\"),new re(n.url,0,Se.TIMEOUT)):i?(c.warn(\"Fetch: Request connection timed out.\"),new re(n.url,0,Se.TIMEOUT)):m instanceof re?m:(c.warn(\"Fetch: Request Error\",m instanceof Error?m.toString():\"\"),new re(n.url,0,Se.ERROR_EVENT)))})}function $t(){return typeof Ee.fetch==\"function\"&&!v(jr)&&!v(Kr)}function Z(n){return typeof n==\"string\"&&n.length>0}var ru=\"json\";function Yr(n){let e={url:n.url,headers:n.headers,responseType:v(n.responseType)?ru:n.responseType,timeout:n.timeout,connectionTimeout:n.connectionTimeout};return new Promise((t,r)=>{let{onProgress:i,cancelSignal:a}=n,{url:o,headers:s,responseType:u,timeout:l,connectionTimeout:d}=e,f=new XMLHttpRequest;f.open(\"GET\",o,!0);let m;l!==void 0&&(f.timeout=l,m=setTimeout(()=>{I(),r(new re(o,f.status,Se.TIMEOUT))},l+3e3));let p;if(d!==void 0&&(p=setTimeout(()=>{I(),f.readyState!==XMLHttpRequest.DONE&&f.abort(),r(new re(o,f.status,Se.TIMEOUT))},d)),f.responseType=u,f.responseType===\"document\"&&f.overrideMimeType(\"text/xml\"),!v(s)){let y=s;for(let E in y)y.hasOwnProperty(E)&&f.setRequestHeader(E,y[E])}let g=L(),h=null;if(a!==void 0&&(h=a.register(function(E){I(),f.readyState!==XMLHttpRequest.DONE&&f.abort(),r(E)}),a.isCancelled()))return;f.onerror=function(){I(),r(new re(o,f.status,Se.ERROR_EVENT))},f.ontimeout=function(){I(),r(new re(o,f.status,Se.TIMEOUT))},d!==void 0&&(f.onreadystatechange=function(){f.readyState>=XMLHttpRequest.HEADERS_RECEIVED&&clearTimeout(p)}),i!==void 0&&(f.onprogress=function(E){let R=L();i({url:o,duration:R-g,sendingTime:g,currentTime:R,size:E.loaded,totalSize:E.total})}),f.onload=function(E){if(f.readyState===XMLHttpRequest.DONE)if(I(),f.status>=200&&f.status<300){let R=L(),T=f.response instanceof ArrayBuffer?f.response.byteLength:E.total,C=f.status,P=f.responseType,x=Z(f.responseURL)?f.responseURL:o,_;if(P===\"json\"?_=typeof f.response==\"object\"?f.response:iu(f.responseText):_=f.response,v(_)){r(new re(o,f.status,Se.PARSE_ERROR));return}t({status:C,url:x,responseType:P,sendingTime:g,receivedTime:R,requestDuration:R-g,size:T,responseData:_})}else r(new re(o,f.status,Se.ERROR_HTTP_CODE))},f.send();function I(){m!==void 0&&clearTimeout(m),p!==void 0&&clearTimeout(p),h!==null&&h()}})}function iu(n){try{return JSON.parse(n)}catch(e){return null}}var le=Yr;var It=Se,Fe={NETWORK_ERROR:\"NETWORK_ERROR\",MEDIA_ERROR:\"MEDIA_ERROR\",ENCRYPTED_MEDIA_ERROR:\"ENCRYPTED_MEDIA_ERROR\",OTHER_ERROR:\"OTHER_ERROR\"};function $e(n,e){return`${n}: ${e}`}var Xt=class n extends Error{constructor(e,t,r){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"EncryptedMediaError\",this.type=Fe.ENCRYPTED_MEDIA_ERROR,this.code=e,this._originalMessage=t,this.message=$e(this.code,t),this.fatal=!1,typeof(r==null?void 0:r.keyStatuses)==\"string\"&&(this.keyStatuses=r.keyStatuses)}serialize(){return{name:this.name,code:this.code,reason:this._originalMessage,keyStatuses:this.keyStatuses}}};var j=class n extends Error{constructor(e,t,r){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"MediaError\",this.type=Fe.MEDIA_ERROR,this._originalMessage=t,this.code=e,this.message=$e(this.code,t),this.fatal=!1,(r==null?void 0:r.tracks)!==void 0&&(r==null?void 0:r.tracks.length)>0&&(this.tracksInfo=r.tracks)}serialize(){return{name:this.name,code:this.code,reason:this._originalMessage,tracks:this.tracksInfo}}};var Ke=class n extends Error{constructor(e,t){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"NetworkError\",this.type=Fe.NETWORK_ERROR,this.url=t.url,this.status=t.status,this.errorType=t.type,this._baseError=t,this.code=e,this.message=$e(this.code,t.message),this.fatal=!1}isHttpError(e){return this.errorType===It.ERROR_HTTP_CODE&&this.status===e}serialize(){return{name:this.name,code:this.code,baseError:this._baseError.serialize()}}};var Re=class n extends Error{constructor(e,t){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"OtherError\",this.type=Fe.OTHER_ERROR,this.code=e,this.message=$e(this.code,t),this.fatal=!1,this._originalMessage=t}serialize(){return{name:this.name,code:this.code,reason:this._originalMessage}}};function Mt(n){return(n instanceof Xt||n instanceof j||n instanceof Re||n instanceof Ke)&&Object.keys(Fe).indexOf(n.type)>=0}function ge(n,{defaultCode:e,defaultReason:t}){if(Mt(n))return n;let r=n instanceof Error?n.toString():t;return new Re(e,r)}var Ce=class n extends Error{constructor(e,t,r){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"SourceBufferError\",this.errorName=e,this.message=t,this.isBufferFull=r}serialize(){return{errorName:this.name,message:this.message,isBufferFull:this.isBufferFull}}toString(){return`${this.errorName}: ${this.message}`}};var au={dashParsers:{wasm:null,native:null,fastJs:null},codecSupportProber:null,createDebugElement:null,directfile:null,decrypt:null,htmlTextDisplayer:null,htmlTextTracksParsers:{},mainThreadMediaSourceInit:null,multithread:null,nativeTextDisplayer:null,nativeTextTracksParsers:{},transports:{}},Ha=au;var ae=Ha;function K(n,e,t){if(typeof Array.prototype.find==\"function\")return n.find(e,t);let r=n.length>>>0;for(let i=0;i<r;i++){let a=n[i];if(e.call(t,a,i,n))return a}}var ou={aa:\"aar\",ab:\"abk\",ae:\"ave\",af:\"afr\",ak:\"aka\",am:\"amh\",an:\"arg\",ar:\"ara\",as:\"asm\",av:\"ava\",ay:\"aym\",az:\"aze\",ba:\"bak\",be:\"bel\",bg:\"bul\",bi:\"bis\",bm:\"bam\",bn:\"ben\",bo:\"bod\",br:\"bre\",bs:\"bos\",ca:\"cat\",ce:\"che\",ch:\"cha\",co:\"cos\",cr:\"cre\",cs:\"ces\",cu:\"chu\",cv:\"chv\",cy:\"cym\",da:\"dan\",de:\"deu\",dv:\"div\",dz:\"dzo\",ee:\"ewe\",el:\"ell\",en:\"eng\",eo:\"epo\",es:\"spa\",et:\"est\",eu:\"eus\",fa:\"fas\",ff:\"ful\",fi:\"fin\",fj:\"fij\",fo:\"fao\",fr:\"fra\",fy:\"fry\",ga:\"gle\",gd:\"gla\",gl:\"glg\",gn:\"grn\",gu:\"guj\",gv:\"glv\",ha:\"hau\",he:\"heb\",hi:\"hin\",ho:\"hmo\",hr:\"hrv\",ht:\"hat\",hu:\"hun\",hy:\"hye\",hz:\"her\",ia:\"ina\",id:\"ind\",ie:\"ile\",ig:\"ibo\",ii:\"iii\",ik:\"ipk\",io:\"ido\",is:\"isl\",it:\"ita\",iu:\"iku\",ja:\"jpn\",jv:\"jav\",ka:\"kat\",kg:\"kon\",ki:\"kik\",kj:\"kua\",kk:\"kaz\",kl:\"kal\",km:\"khm\",kn:\"kan\",ko:\"kor\",kr:\"kau\",ks:\"kas\",ku:\"kur\",kv:\"kom\",kw:\"cor\",ky:\"kir\",la:\"lat\",lb:\"ltz\",lg:\"lug\",li:\"lim\",ln:\"lin\",lo:\"lao\",lt:\"lit\",lu:\"lub\",lv:\"lav\",mg:\"mlg\",mh:\"mah\",mi:\"mri\",mk:\"mkd\",ml:\"mal\",mn:\"mon\",mr:\"mar\",ms:\"msa\",mt:\"mlt\",my:\"mya\",na:\"nau\",nb:\"nob\",nd:\"nde\",ne:\"nep\",ng:\"ndo\",nl:\"nld\",nn:\"nno\",no:\"nor\",nr:\"nbl\",nv:\"nav\",ny:\"nya\",oc:\"oci\",oj:\"oji\",om:\"orm\",or:\"ori\",os:\"oss\",pa:\"pan\",pi:\"pli\",pl:\"pol\",ps:\"pus\",pt:\"por\",qu:\"que\",rm:\"roh\",rn:\"run\",ro:\"ron\",ru:\"rus\",rw:\"kin\",sa:\"san\",sc:\"srd\",sd:\"snd\",se:\"sme\",sg:\"sag\",si:\"sin\",sk:\"slk\",sl:\"slv\",sm:\"smo\",sn:\"sna\",so:\"som\",sq:\"sqi\",sr:\"srp\",ss:\"ssw\",st:\"sot\",su:\"sun\",sv:\"swe\",sw:\"swa\",ta:\"tam\",te:\"tel\",tg:\"tgk\",th:\"tha\",ti:\"tir\",tk:\"tuk\",tl:\"tgl\",tn:\"tsn\",to:\"ton\",tr:\"tur\",ts:\"tso\",tt:\"tat\",tw:\"twi\",ty:\"tah\",ug:\"uig\",uk:\"ukr\",ur:\"urd\",uz:\"uzb\",ve:\"ven\",vi:\"vie\",vo:\"vol\",wa:\"wln\",wo:\"wol\",xh:\"xho\",yi:\"yid\",yo:\"yor\",za:\"zha\",zh:\"zho\",zu:\"zul\"},Ga=ou;var su={alb:\"sqi\",arm:\"hye\",baq:\"eus\",bur:\"mya\",chi:\"zho\",cze:\"ces\",dut:\"nld\",fre:\"fra\",geo:\"kat\",ger:\"deu\",gre:\"ell\",ice:\"isl\",mac:\"mkd\",mao:\"mri\",may:\"msa\",per:\"fas\",slo:\"slk\",rum:\"ron\",tib:\"bod\",wel:\"cym\"},Ka=su;function uu(n){if(v(n)||n===\"\")return\"\";let t=(\"\"+n).toLowerCase().split(\"-\")[0],r=du(t);return Z(r)?r:n}function du(n){let e;switch(n.length){case 2:e=Ga[n];break;case 3:e=Ka[n];break}return e}var ja=uu;var Ya=ja;function ir(n,e){if(n.length!==e.length)return!1;if(n===e)return!0;for(let t=n.length-1;t>=0;t--)if(n[t]!==e[t])return!1;return!0}function Ae(){let n=\"\",e=-1;return function(){return e++,e>=Number.MAX_SAFE_INTEGER&&(n+=\"0\",e=0),n+String(e)}}var lu=Ae(),Qr=class{constructor(e,t){var r,i,a,o,s;if(this.id=e.id,this.uniqueId=lu(),this.bitrate=e.bitrate,this.codecs=[],e.isSpatialAudio!==void 0&&(this.isSpatialAudio=e.isSpatialAudio),e.height!==void 0&&(this.height=e.height),e.width!==void 0&&(this.width=e.width),e.mimeType!==void 0&&(this.mimeType=e.mimeType),e.contentProtections!==void 0&&(this.contentProtections=e.contentProtections),e.frameRate!==void 0&&(this.frameRate=e.frameRate),e.hdrInfo!==void 0&&(this.hdrInfo=e.hdrInfo),this.cdnMetadata=e.cdnMetadata,this.index=e.index,t===\"audio\"||t===\"video\")if(ae.codecSupportProber!==null){if(e.supplementalCodecs!==void 0){let u=ae.codecSupportProber.isSupported((r=this.mimeType)!=null?r:\"\",(i=e.supplementalCodecs)!=null?i:\"\");u!==!1&&(this.codecs=[e.supplementalCodecs],u===!0&&(this.isSupported=!0))}this.isSupported!==!0&&(this.codecs.length>0?this.codecs.push((a=e.codecs)!=null?a:\"\"):(this.codecs=e.codecs===void 0?[]:[e.codecs],this.isSupported=ae.codecSupportProber.isSupported((o=this.mimeType)!=null?o:\"\",(s=e.codecs)!=null?s:\"\")))}else e.supplementalCodecs!==void 0&&this.codecs.push(e.supplementalCodecs),e.codecs!==void 0&&this.codecs.push(e.codecs);else e.codecs!==void 0&&this.codecs.push(e.codecs),this.isSupported=!0}refreshCodecSupport(e){var i;let t=(i=this.mimeType)!=null?i:\"\",r=this.codecs;r.length===0&&(r=[\"\"]);for(let a=0;a<r.length;a++)for(let o of e){let s=r[a];if(o.codec===s&&o.mimeType===t){if(o.result){this.isSupported=!0,this.codecs=[s];return}else if(a===r.length){this.isSupported=!1,this.codecs=[s];return}}}}getMimeTypeString(){var e,t,r;return`${(e=this.mimeType)!=null?e:\"\"};codecs=\"${(r=(t=this.codecs)==null?void 0:t[0])!=null?r:\"\"}\"`}getEncryptionData(e){var i,a;let t=this.getAllEncryptionData(),r=[];for(let o=0;o<t.length;o++){let s=!1,u=t[o];for(let l=0;l<u.values.length;l++)if(u.values[l].systemId.toLowerCase()===e.toLowerCase())if(s)r[r.length-1].values.push(u.values[l]);else{let d=(a=(i=this.contentProtections)==null?void 0:i.keyIds)==null?void 0:a.map(f=>f.keyId);r.push({type:u.type,keyIds:d,values:[u.values[l]]}),s=!0}}return r}getAllEncryptionData(){var t,r;if(this.contentProtections===void 0||this.contentProtections.initData.length===0)return[];let e=(r=(t=this.contentProtections)==null?void 0:t.keyIds)==null?void 0:r.map(i=>i.keyId);return this.contentProtections.initData.map(i=>({type:i.type,keyIds:e,values:i.values}))}addProtectionData(e,t,r){let i=!1;if(this.contentProtections===void 0)return this.contentProtections={keyIds:t!==void 0?[{keyId:t}]:[],initData:[{type:e,values:r}]},!0;if(t!==void 0){let o=this.contentProtections.keyIds;if(o===void 0)this.contentProtections.keyIds=[{keyId:t}];else{let s=!1;for(let u of o)ir(u.keyId,t)&&(s=!0);s||(c.warn(\"Manifest: found unanounced key id.\"),o.push({keyId:t}))}}let a=this.contentProtections.initData;for(let o=0;o<a.length;o++)if(a[o].type===e){let s=a[o].values;for(let u=0;u<r.length;u++){let l=r[u],d;for(d=0;d<s.length;d++)if(l.systemId===s[d].systemId){if(ir(l.data,s[d].data))break;c.warn(\"Manifest: different init data for the same system ID\")}d===s.length&&(s.push(l),i=!0)}return i}return this.contentProtections.initData.push({type:e,values:r}),!0}getMetadataSnapshot(){return{id:this.id,uniqueId:this.uniqueId,bitrate:this.bitrate,codecs:this.codecs,mimeType:this.mimeType,width:this.width,height:this.height,frameRate:this.frameRate,isSupported:this.isSupported,hdrInfo:this.hdrInfo,contentProtections:this.contentProtections,decipherable:this.decipherable}}},Zt=Qr;var st=class n{constructor(e,t={}){let{trickModeTracks:r}=e,{representationFilter:i,isManuallyAdded:a}=t;this.id=e.id,this.type=e.type,e.isTrickModeTrack!==void 0&&(this.isTrickModeTrack=e.isTrickModeTrack),e.language!==void 0&&(this.language=e.language,this.normalizedLanguage=Ya(e.language)),e.closedCaption!==void 0&&(this.isClosedCaption=e.closedCaption),e.audioDescription!==void 0&&(this.isAudioDescription=e.audioDescription),e.isDub!==void 0&&(this.isDub=e.isDub),e.forcedSubtitles!==void 0&&(this.isForcedSubtitles=e.forcedSubtitles),e.isSignInterpreted!==void 0&&(this.isSignInterpreted=e.isSignInterpreted),e.label!==void 0&&(this.label=e.label),r!==void 0&&r.length>0&&(this.trickModeTracks=r.map(l=>new n(l)));let o=e.representations,s=[],u;for(let l=0;l<o.length;l++){let d=new Zt(o[l],this.type),f=!0;if(!v(i)){let m={id:d.id,bitrate:d.bitrate,codecs:d.codecs,height:d.height,width:d.width,frameRate:d.frameRate,hdrInfo:d.hdrInfo};if(d.contentProtections!==void 0&&(m.contentProtections={},d.contentProtections.keyIds!==void 0)){let p=d.contentProtections.keyIds.map(({keyId:g})=>g);m.contentProtections.keyIds=p}f=i(m,{trackType:this.type,language:this.language,normalizedLanguage:this.normalizedLanguage,isClosedCaption:this.isClosedCaption,isDub:this.isDub,isAudioDescription:this.isAudioDescription,isSignInterpreted:this.isSignInterpreted})}f?(s.push(d),u===void 0&&(d.isSupported===!0?u=!0:d.isSupported===!1&&(u=!1))):c.debug(\"Filtering Representation due to representationFilter\",this.type,`Adaptation: ${this.id}`,`Representation: ${d.id}`,`(${d.bitrate})`)}s.sort((l,d)=>l.bitrate-d.bitrate),this.representations=s,this.isSupported=u,this.manuallyAdded=a===!0}refreshCodecSupport(e){for(let t of this.representations)t.isSupported===void 0&&(t.refreshCodecSupport(e),this.isSupported!==!0&&t.isSupported===!0?this.isSupported=!0:this.isSupported===void 0&&t.isSupported===!1&&(this.isSupported=!1))}getRepresentation(e){return K(this.representations,({id:t})=>e===t)}getMetadataSnapshot(){let e=[],t=this.representations;for(let r of t)e.push(r.getMetadataSnapshot());return{id:this.id,type:this.type,isSupported:this.isSupported,language:this.language,isForcedSubtitles:this.isForcedSubtitles,isClosedCaption:this.isClosedCaption,isAudioDescription:this.isAudioDescription,isSignInterpreted:this.isSignInterpreted,normalizedLanguage:this.normalizedLanguage,representations:e,label:this.label,isDub:this.isDub}}};function se(n,e,t){if(typeof Array.prototype.includes==\"function\")return n.includes(e,t);let r=n.length>>>0;if(r===0)return!1;let i=t|0,a=i>=0?Math.min(i,r-1):Math.max(r+i,0),o=(s,u)=>s===u||typeof s==\"number\"&&typeof u==\"number\"&&isNaN(s)&&isNaN(u);for(;a<r;){if(o(n[a],e))return!0;a++}return!1}var Qa=[];function Xe(n){se(Qa,n)||(console.warn(n),Qa.push(n))}function $r(n){return Object.keys(n).map(e=>n[e])}var ar=typeof Object.values==\"function\"?Object.values:$r;var Ot=[\"audio\",\"video\",\"text\"];function Xa(n){var a,o;let e=n.timeBounds;if(e.timeshiftDepth===null)return(a=e.minimumSafePosition)!=null?a:0;let{maximumTimeData:t}=e,r;if(!e.maximumTimeData.isLinear)r=t.maximumSafePosition;else{let s=L()-t.time;r=t.maximumSafePosition+s/1e3}let i=r-e.timeshiftDepth;return Math.max((o=e.minimumSafePosition)!=null?o:0,i)}function Za(n){let{maximumTimeData:e}=n.timeBounds;if(!n.isLive||e.livePosition===void 0)return;if(!e.isLinear)return e.livePosition;let t=L()-e.time;return e.livePosition+t/1e3}function Ja(n){let{maximumTimeData:e}=n.timeBounds;if(!e.isLinear)return e.maximumSafePosition;let t=L()-e.time;return e.maximumSafePosition+t/1e3}function eo(n,e){if(e===void 0)return Zr(n).filter(r=>r.isSupported===!0);let t=n.adaptations[e];return t===void 0?[]:t.filter(r=>r.isSupported===!0)}function to(n,e){let t=null;for(let r=n.periods.length-1;r>=0;r--){let i=n.periods[r];if(Xr(i,e,t))return i;t=i}}function no(n,e){let t=e.end;if(t===void 0)return null;let r=K(n.periods,i=>i.end===void 0||t<i.end);return r===void 0?null:r}function Xr(n,e,t){return e>=n.start&&(n.end===void 0||e<n.end)?!0:e===n.end&&(t===null||t.start>n.end)}function Zr(n){let e=n.adaptations;return $r(e).reduce((t,r)=>v(r)?t:t.concat(r),[])}function fu(n,e){var r,i;let t={language:(r=n.language)!=null?r:\"\",normalized:(i=n.normalizedLanguage)!=null?i:\"\",audioDescription:n.isAudioDescription===!0,id:n.id,representations:(e?n.representations.filter(a=>a.isSupported===!0&&a.decipherable!==!1):n.representations).map(pu),label:n.label};return n.isDub===!0&&(t.dub=!0),t}function mu(n){var e,t;return{language:(e=n.language)!=null?e:\"\",normalized:(t=n.normalizedLanguage)!=null?t:\"\",closedCaption:n.isClosedCaption===!0,id:n.id,label:n.label,forced:n.isForcedSubtitles}}function cu(n,e){let t=n.trickModeTracks!==void 0?n.trickModeTracks.map(i=>{let a=(e?i.representations.filter(s=>s.isSupported===!0&&s.decipherable!==!1):i.representations).map($a),o={id:i.id,representations:a,isTrickModeTrack:!0};return i.isSignInterpreted===!0&&(o.signInterpreted=!0),o}):void 0,r={id:n.id,representations:(e?n.representations.filter(i=>i.isSupported===!0&&i.decipherable!==!1):n.representations).map($a),label:n.label};return n.isSignInterpreted===!0&&(r.signInterpreted=!0),n.isTrickModeTrack===!0&&(r.isTrickModeTrack=!0),t!==void 0&&(r.trickModeTracks=t),r}function pu(n){let{id:e,bitrate:t,codecs:r,isSpatialAudio:i,isSupported:a,decipherable:o}=n;return{id:e,bitrate:t,codec:r==null?void 0:r[0],isSpatialAudio:i,isCodecSupported:a,decipherable:o}}function $a(n){let{id:e,bitrate:t,frameRate:r,width:i,height:a,codecs:o,hdrInfo:s,isSupported:u,decipherable:l}=n;return{id:e,bitrate:t,frameRate:r,width:i,height:a,codec:o==null?void 0:o[0],hdrInfo:s,isCodecSupported:u,decipherable:l}}function ut(n){switch(n.type){case\"audio\":return{type:\"audio\",track:fu(n,!1)};case\"video\":return{type:\"video\",track:cu(n,!1)};case\"text\":return{type:\"text\",track:mu(n)}}}function ro(n){return new Function(`return (${n}(arguments[0], arguments[1]))`)}var dt=class{constructor(e,t,r){if(this.id=e.id,this.adaptations=Object.keys(e.adaptations).reduce((i,a)=>{let o=e.adaptations[a];if(v(o))return i;let s=o.map(u=>{let l=new st(u,{representationFilter:r});return l.representations.length>0&&l.isSupported===!1&&t.push(l),l}).filter(u=>u.representations.length>0);if(s.every(u=>u.isSupported===!1)&&o.length>0&&(a===\"video\"||a===\"audio\"))throw new j(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"No supported \"+a+\" adaptations\",{tracks:void 0});return s.length>0&&(i[a]=s),i},{}),!Array.isArray(this.adaptations.video)&&!Array.isArray(this.adaptations.audio))throw new j(\"MANIFEST_PARSE_ERROR\",\"No supported audio and video tracks.\");this.duration=e.duration,this.start=e.start,!v(this.duration)&&!v(this.start)&&(this.end=this.start+this.duration),this.streamEvents=e.streamEvents===void 0?[]:e.streamEvents}refreshCodecSupport(e,t){Object.keys(this.adaptations).forEach(r=>{let i=this.adaptations[r];if(i===void 0)return;let a=!1;for(let o of i){let s=o.isSupported;o.refreshCodecSupport(e),s!==!1&&o.isSupported===!1&&t.push(o),a===!1?a=o.isSupported:a===void 0&&o.isSupported===!0&&(a=!0)}if((r===\"video\"||r===\"audio\")&&a===!1)throw new j(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"No supported \"+r+\" adaptations\",{tracks:void 0})},{})}getAdaptations(){return Zr(this)}getAdaptationsForType(e){let t=this.adaptations[e];return t!=null?t:[]}getAdaptation(e){return K(this.getAdaptations(),({id:t})=>e===t)}getSupportedAdaptations(e){return eo(this,e)}containsTime(e,t){return Xr(this,e,t)}getMetadataSnapshot(){let e={},t=this.getAdaptations();for(let r of t){let i=e[r.type];i===void 0&&(i=[],e[r.type]=i),i.push(r.getMetadataSnapshot())}return{start:this.start,end:this.end,id:this.id,streamEvents:this.streamEvents,adaptations:e}}};function Jt(n,e,t){let r={updatedAdaptations:[],removedAdaptations:[],addedAdaptations:[]};n.start=e.start,n.end=e.end,n.duration=e.duration,n.streamEvents=e.streamEvents;let i=n.getAdaptations(),a=e.getAdaptations();for(let o=0;o<i.length;o++){let s=i[o],u=ne(a,l=>l.id===s.id);if(u===-1){c.warn('Manifest: Adaptation \"'+i[o].id+'\" not found when merging.');let[l]=i.splice(o,1);o--,r.removedAdaptations.push({id:l.id,trackType:l.type})}else{let[l]=a.splice(u,1),d=[],f=[],m=[];r.updatedAdaptations.push({adaptation:s.id,trackType:s.type,updatedRepresentations:d,addedRepresentations:f,removedRepresentations:m});let p=s.representations,g=l.representations.slice();for(let h=0;h<p.length;h++){let I=p[h],y=ne(g,E=>E.id===I.id);if(y===-1){c.warn(`Manifest: Representation \"${p[h].id}\" not found when merging.`);let[E]=p.splice(h,1);h--,m.push(E.id)}else{let[E]=g.splice(y,1);d.push(I.getMetadataSnapshot()),I.cdnMetadata=E.cdnMetadata,t===0?I.index._replace(E.index):I.index._update(E.index)}}g.length>0&&(c.warn(`Manifest: ${g.length} new Representations found when merging.`),s.representations.push(...g),f.push(...g.map(h=>h.getMetadataSnapshot())))}}if(a.length>0){c.warn(`Manifest: ${a.length} new Adaptations found when merging.`);for(let o of a){let s=n.adaptations[o.type];s===void 0?n.adaptations[o.type]=[o]:s.push(o),r.addedAdaptations.push(o.getMetadataSnapshot())}}return r}function io(n,e){let t={updatedPeriods:[],addedPeriods:[],removedPeriods:[]},r=0;for(let a=0;a<e.length;a++){let o=e[a],s=r,u=n[s];for(;u!==void 0&&u.id!==o.id;)s++,u=n[s];if(u!==void 0){let l=Jt(u,o,0);t.updatedPeriods.push({period:{id:u.id,start:u.start,end:u.end,duration:u.duration,streamEvents:u.streamEvents},result:l});let d=e.slice(r,a),f=s-r,m=n.splice(r,f,...d);t.removedPeriods.push(...m.map(p=>({id:p.id,start:p.start,end:p.end}))),t.addedPeriods.push(...d.map(p=>p.getMetadataSnapshot())),r=a+1}}if(r>n.length)return c.error(\"Manifest: error when updating Periods\"),t;if(r<n.length){let a=n.splice(r,n.length-r);t.removedPeriods.push(...a.map(o=>({id:o.id,start:o.start,end:o.end})))}let i=e.slice(r,e.length);return i.length>0&&(n.push(...i),t.addedPeriods.push(...i.map(a=>a.getMetadataSnapshot()))),t}function ao(n,e){let t={updatedPeriods:[],addedPeriods:[],removedPeriods:[]};if(n.length===0)return n.splice(0,0,...e),t.addedPeriods.push(...e.map(s=>s.getMetadataSnapshot())),t;if(e.length===0)return t;let r=n[n.length-1];if(r.start<e[0].start){if(r.end!==e[0].start)throw new j(\"MANIFEST_UPDATE_ERROR\",\"Cannot perform partial update: not enough data\");return n.push(...e),t.addedPeriods.push(...e.map(s=>s.getMetadataSnapshot())),t}let i=ne(n,({id:s})=>s===e[0].id);if(i<0)throw new j(\"MANIFEST_UPDATE_ERROR\",\"Cannot perform partial update: incoherent data\");let a=Jt(n[i],e[0],1);t.updatedPeriods.push({period:H(n[i].getMetadataSnapshot(),{adaptations:void 0}),result:a});let o=i+1;for(let s=1;s<e.length;s++){let u=e[s],l=-1;for(let d=o;d<n.length;d++)if(u.id===n[d].id){l=d;break}if(l<0){let d=-1;for(let p=o;p<n.length;p++)if(u.start<n[p].start){d=p;break}let f=d-o,m=n.splice(o,f,u);t.addedPeriods.push(u.getMetadataSnapshot()),t.removedPeriods.push(...m.map(p=>({id:p.id,start:p.start,end:p.end})))}else{if(l>o){c.warn(\"Manifest: old Periods not found in new when updating, removing\");let f=n.splice(o,l-o);t.removedPeriods.push(...f.map(m=>({id:m.id,start:m.start,end:m.end}))),l=o}let d=Jt(n[l],u,0);t.updatedPeriods.push({period:H(n[l].getMetadataSnapshot(),{adaptations:void 0}),result:d})}o++}if(o<n.length){c.warn(\"Manifest: Ending Periods not found in new when updating, removing\");let s=n.splice(o,n.length-o);t.removedPeriods.push(...s.map(u=>({id:u.id,start:u.start,end:u.end})))}return t}var gu=Ae(),en=class extends oe{constructor(e,t,r){var s;super();let{representationFilter:i,manifestUpdateUrl:a}=t;this.manifestFormat=0,this.id=gu(),this.expired=(s=e.expired)!=null?s:null,this.transport=e.transportType,this.clockOffset=e.clockOffset;let o=[];if(this.periods=e.periods.map(u=>new dt(u,o,i)).sort((u,l)=>u.start-l.start),o.length>0){let u=new j(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"An Adaptation contains only incompatible codecs.\",{tracks:o.map(ut)});r.push(u)}this.adaptations=this.periods[0]===void 0?{}:this.periods[0].adaptations,this.timeBounds=e.timeBounds,this.isDynamic=e.isDynamic,this.isLive=e.isLive,this.isLastPeriodKnown=e.isLastPeriodKnown,this.uris=e.uris===void 0?[]:e.uris,this.updateUrl=a,this.lifetime=e.lifetime,this.clockOffset=e.clockOffset,this.suggestedPresentationDelay=e.suggestedPresentationDelay,this.availabilityStartTime=e.availabilityStartTime,this.publishTime=e.publishTime}refreshCodecSupport(e){let t=[];for(let r of this.periods)r.refreshCodecSupport(e,t);return t.length>0?new j(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"An Adaptation contains only incompatible codecs.\",{tracks:t.map(ut)}):null}getPeriod(e){return K(this.periods,t=>e===t.id)}getPeriodForTime(e){return to(this,e)}getNextPeriod(e){return K(this.periods,t=>t.start>e)}getPeriodAfter(e){return no(this,e)}getUrls(){return this.uris}replace(e){this._performUpdate(e,0)}update(e){this._performUpdate(e,1)}getMinimumSafePosition(){return Xa(this)}getLivePosition(){return Za(this)}getMaximumSafePosition(){return Ja(this)}updateRepresentationsDeciperability(e){let t=hu(this,e);t.length>0&&this.trigger(\"decipherabilityUpdate\",t)}getAdaptations(){Xe(\"manifest.getAdaptations() is deprecated. Please use manifest.period[].getAdaptations() instead\");let e=this.periods[0];if(e===void 0)return[];let t=e.adaptations,r=[];for(let i in t)if(t.hasOwnProperty(i)){let a=t[i];r.push(...a)}return r}getAdaptationsForType(e){Xe(\"manifest.getAdaptationsForType(type) is deprecated. Please use manifest.period[].getAdaptationsForType(type) instead\");let t=this.periods[0];if(t===void 0)return[];let r=t.adaptations[e];return r===void 0?[]:r}getAdaptation(e){return Xe(\"manifest.getAdaptation(id) is deprecated. Please use manifest.period[].getAdaptation(id) instead\"),K(this.getAdaptations(),({id:t})=>e===t)}getMetadataSnapshot(){let e=[];for(let t of this.periods)e.push(t.getMetadataSnapshot());return{manifestFormat:1,id:this.id,periods:e,isDynamic:this.isDynamic,isLive:this.isLive,isLastPeriodKnown:this.isLastPeriodKnown,suggestedPresentationDelay:this.suggestedPresentationDelay,clockOffset:this.clockOffset,uris:this.uris,availabilityStartTime:this.availabilityStartTime,timeBounds:this.timeBounds}}_performUpdate(e,t){this.availabilityStartTime=e.availabilityStartTime,this.expired=e.expired,this.isDynamic=e.isDynamic,this.isLive=e.isLive,this.isLastPeriodKnown=e.isLastPeriodKnown,this.lifetime=e.lifetime,this.clockOffset=e.clockOffset,this.suggestedPresentationDelay=e.suggestedPresentationDelay,this.transport=e.transport,this.publishTime=e.publishTime;let r;if(t===0)this.timeBounds=e.timeBounds,this.uris=e.uris,r=io(this.periods,e.periods);else{this.timeBounds.maximumTimeData=e.timeBounds.maximumTimeData,this.updateUrl=e.uris[0],r=ao(this.periods,e.periods);let i=this.getMinimumSafePosition();for(;this.periods.length>0;){let a=this.periods[0];if(a.end===void 0||a.end>i)break;this.periods.shift()}}this.adaptations=this.periods[0]===void 0?{}:this.periods[0].adaptations,this.trigger(\"manifestUpdate\",r)}};function hu(n,e){let t=[];for(let r of n.periods)for(let i of r.getAdaptations())for(let a of i.representations){let o={manifest:n,period:r,adaptation:i,representation:a},s=e(o);s!==a.decipherable&&(t.push(o),a.decipherable=s,c.debug(`Decipherability changed for \"${a.id}\"`,`(${a.bitrate})`,String(a.decipherable)))}return t}function Ze(n,e){return n.segment.id===e.segment.id&&n.representation.uniqueId===e.representation.uniqueId}function bt(n){if(v(n))return\"\";let{period:e,adaptation:t,representation:r,segment:i}=n,a;return i.isInit?a=\"init\":i.complete?a=`${i.time}-${i.duration}`:a=`${i.time}`,`${t.type} P: ${e.id} A: ${t.id} R: ${r.id} S: ${a}`}var wt=en;var lt=Ee,St=lt===void 0?void 0:v(lt.MediaSource)?v(lt.MozMediaSource)?v(lt.WebKitMediaSource)?lt.MSMediaSource:lt.WebKitMediaSource:lt.MozMediaSource:lt.MediaSource;var Iu=200,or=new Map;function Jr(n){if(v(St))return ot&&c.error(\"Compat: Cannot request codec support in a worker without MSE.\"),!1;if(typeof St.isTypeSupported==\"function\"){let e=or.get(n);if(e!==void 0)return e;{let t=St.isTypeSupported(n);return or.size>=Iu&&or.clear(),or.set(n,t),t}}return!0}var bu=50,ei=class{constructor(){this._cachedCodecSupport=new Map}isSupported(e,t){let r=`${e!=null?e:\"\"};codecs=\"${t!=null?t:\"\"}\"`,i=this._cachedCodecSupport.get(r);if(i!==void 0)return i;this._cachedCodecSupport.size>=bu&&this._cachedCodecSupport.clear();let a=Jr(r);return this._cachedCodecSupport.set(r,a),a}},Su=new ei,oo=Su;var ti=class{constructor(){this._currentCacheSize=0,this._cachedCodecSupport=new Map}isSupported(e,t){var i;let r=(i=this._cachedCodecSupport.get(e))==null?void 0:i.get(t);if(r!==void 0)return r}updateCache(e,t,r){this._currentCacheSize>=50&&(this._cachedCodecSupport.clear(),this._currentCacheSize=0);let i=this._cachedCodecSupport.get(e);if(i!==void 0)i.set(t,r);else{let a=new Map;a.set(t,r),this._cachedCodecSupport.set(e,a)}}},so=new ti;var sr=class n extends Error{constructor(e){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"AssertionError\",this.message=e}};function he(n,e){if(b.DEV===b.CURRENT_ENV&&!n)throw new sr(e===void 0?\"invalid assertion\":e)}function ze(n){throw new sr(\"Unreachable path taken\")}var yu=\"<\";var uo=\">\";var Tu=`\\r\n\t>/= `;function ni(n,e={}){var m,p;let t=(m=e.pos)!=null?m:0,r=e.keepComments===!0,i=e.keepWhitespace===!0,a;if(e.attrValue!==void 0)for(e.attrName=(p=e.attrName)!=null?p:\"id\",a=[];(t=f())!==-1;)t=n.lastIndexOf(\"<\",t),t!==-1&&a.push(l()),n=n.substring(t),t=0;else a=o(\"\");return e.filter&&(a=lo(a,e.filter)),a;function o(g){let h=[];for(;n[t];)if(n.charCodeAt(t)===60){if(n.charCodeAt(t+1)===47){let y=t+2;if(t=n.indexOf(uo,t),n.substring(y,t).indexOf(g)===-1){let R=n.substring(0,t).split(`\n`);throw new Error(`Unexpected close tag\nLine: `+(R.length-1)+`\nColumn: `+(R[R.length-1].length+1)+`\nChar: `+n[t])}return t!==-1&&(t+=1),h}else if(n.charCodeAt(t+1)===33){if(n.charCodeAt(t+2)===45){let y=t;for(;t!==-1&&!(n.charCodeAt(t)===62&&n.charCodeAt(t-1)===45&&n.charCodeAt(t-2)===45);)t=n.indexOf(uo,t+1);t===-1&&(t=n.length),r&&h.push(n.substring(y,t+1))}else if(n.charCodeAt(t+2)===91&&n.charCodeAt(t+8)===91&&n.substring(t+3,t+8).toLowerCase()===\"cdata\"){let y=n.indexOf(\"]]>\",t);y===-1?(h.push(n.substring(t+9)),t=n.length):(h.push(n.substring(t+9,y)),t=y+3);continue}else{let y=t+1;t+=2;let E=!1;for(;(n.charCodeAt(t)!==62||E)&&n[t];)n.charCodeAt(t)===91?E=!0:E&&n.charCodeAt(t)===93&&(E=!1),t++;h.push(n.substring(y,t))}t++;continue}let I=l();h.push(I),I.tagName[0]===\"?\"&&(h.push(...I.children),I.children=[])}else{let I=s();if(i)I.length>0&&h.push(I);else{let y=I.trim();y.length>0&&h.push(y)}t++}return h}function s(){let g=t;return t=n.indexOf(yu,t)-1,t===-2&&(t=n.length),n.slice(g,t+1)}function u(){let g=t;for(;Tu.indexOf(n[t])===-1&&n[t];)t++;return n.slice(g,t)}function l(){let g=t;t++;let h=u(),I={},y=[];for(;n.charCodeAt(t)!==62&&n[t];){let E=n.charCodeAt(t);if(E>64&&E<91||E>96&&E<123){let R=u(),T=n.charCodeAt(t);for(;T&&T!==39&&T!==34&&!(T>64&&T<91||T>96&&T<123)&&T!==62;)t++,T=n.charCodeAt(t);let C;T===39||T===34?C=d():(C=null,t--),I[R]=C===null?null:fo(C)}t++}return n.charCodeAt(t-1)!==47?(t++,y=o(h)):t++,{tagName:h,attributes:I,children:y,posStart:g,posEnd:t}}function d(){let g=n[t],h=t+1;return t=n.indexOf(g,h),n.slice(h,t)}function f(){let g=new RegExp(\"\\\\s\"+e.attrName+`\\\\s*=['\"]`+e.attrValue+`['\"]`).exec(n);return g?g.index:-1}}function lo(n,e,t=0,r=\"\"){let i=[];return n.forEach(function(a,o){if(typeof a==\"object\"&&(e(a,o,t,r)&&i.push(a),a.children.length>0)){let s=lo(a.children,e,t+1,(r?r+\".\":\"\")+o+\".\"+a.tagName);i=i.concat(s)}}),i}function ur(n){if(Array.isArray(n)){let e=\"\";return n.forEach(function(t){e+=\" \"+ur(t),e=e.trim()}),e}else return typeof n==\"object\"?ur(n.children):\" \"+fo(n)}function fo(n){return n.indexOf(\"&\")<0?n:n.replace(/&lt;/g,\"<\").replace(/&gt;/g,\">\").replace(/&quot;/g,'\"').replace(/&apos;/g,\"'\").replace(/&#x([A-Fa-f0-9]+);/g,(e,t)=>String.fromCharCode(parseInt(t,16))).replace(/&amp;/g,\"&\")}function ri(n,e,t){let{repeatCount:r}=n;if(r>=0)return r;let i;return v(e)?t!==void 0?i=t:i=Number.MAX_VALUE:i=e.start,Math.ceil((i-n.start)/n.duration)-1}function De(n,e,t){let{start:r,duration:i}=n;if(i<=0)return r;let a=ri(n,e,t);return r+(a+1)*i}function Pe(n,e){var t;return n*e.timescale+((t=e.indexTimeOffset)!=null?t:0)}function je(n,e){var t;return(n-((t=e.indexTimeOffset)!=null?t:0))/e.timescale}function mo(n,e,t){return[n*t,(n+e)*t]}function _u(n,e){let t=0,r=n.length;for(;t<r;){let i=t+r>>>1;n[i].start<=e?t=i+1:r=i}return t-1}function co(n,e,t){let{timeline:r}=n,i=Pe(e,n);if(i<0)return null;let a=_u(r,i);if(a<0||a>=r.length-1)return null;let o=r[a];if(o.duration<=0)return null;let s=r[a+1];if(s===void 0)return null;let u=s.start,l=De(o,s,t);return i>=l&&i<u?je(u,n):null}function Je(n,e){var i;let{initialization:t}=n,r={};return e!==void 0&&(r.isEMSGWhitelisted=e),{id:\"init\",isInit:!0,time:0,end:0,duration:0,timescale:1,range:v(t)?void 0:t.range,indexRange:n.indexRange,url:(i=t==null?void 0:t.url)!=null?i:null,complete:!0,privateInfos:r,timestampOffset:-(n.indexTimeOffset/n.timescale)}}function Eu(n,e){let t=n.toString();return t.length>=e?t:(new Array(e+1).join(\"0\")+t).slice(-e)}function ii(n){return(e,t,r)=>{let i=Z(r)?parseInt(r,10):1;return Eu(String(n),i)}}function Ne(n,e,t){return Ru(n,e,t)}function Ru(n,e,t){return n.indexOf(\"$\")===-1?n:n.replace(/\\$\\$/g,\"$\").replace(/\\$RepresentationID\\$/g,String(e)).replace(/\\$Bandwidth(\\%0(\\d+)d)?\\$/g,ii(t===void 0?0:t))}function dr(n,e){return function(r){return r.indexOf(\"$\")===-1?r:r.replace(/\\$\\$/g,\"$\").replace(/\\$Number(\\%0(\\d+)d)?\\$/g,(i,a,o)=>{if(e===void 0)throw new Error(\"Segment number not defined in a $Number$ scheme\");return ii(e)(i,a,o)}).replace(/\\$Time(\\%0(\\d+)d)?\\$/g,(i,a,o)=>{if(n===void 0)throw new Error(\"Segment time not defined in a $Time$ scheme\");return ii(n)(i,a,o)})}}function Pu(n,e,t){let r=t-n;return r>0?Math.floor(r/e):0}function tn(n,e,t,r,i,a){var E;let o=r.getEstimatedMaximumPosition((E=n.availabilityTimeOffset)!=null?E:0),s=Math.min(e+t,o!=null?o:1/0),u=Pe(e,n),l=Pe(s,n),{timeline:d,timescale:f,segmentUrlTemplate:m,startNumber:p,endNumber:g}=n,h=p!=null?p:1,I=[],y=d.length;for(let R=0;R<y;R++){let T=d[R],{duration:C,start:P,range:x}=T,_;o===void 0?_=i:_=Math.min(o*f,i!=null?i:1/0);let A=ri(T,d[R+1],_),M=n.availabilityTimeComplete!==!1||R!==y-1&&A!==0,k=Pu(P,C,u),D=P+k*C;for(;D<l&&k<=A;){let w=h+k;if(g!==void 0&&w>g)break;let O=m===null?null:dr(D,w)(m),B=D-n.indexTimeOffset,z=C;B<0&&(z=C+B,B=0);let q={id:String(D),time:B/f,end:(B+z)/f,duration:z/f,isInit:!1,range:x,timescale:1,url:O,number:w,timestampOffset:-(n.indexTimeOffset/f),complete:M,privateInfos:{isEMSGWhitelisted:a}};I.push(q),k++,D=P+k*C}if(D>=l||(h+=A+1,g!==void 0&&h>g))return I}return I}function vu(n,e){if(e.timescale!==n.timescale){let{timescale:t}=n;n.timeline.push({start:e.time/e.timescale*t,duration:e.duration/e.timescale*t,repeatCount:e.count===void 0?0:e.count,range:e.range})}else n.timeline.push({start:e.time,duration:e.duration,repeatCount:e.count===void 0?0:e.count,range:e.range});return!0}var yt=class{constructor(e,t){var g,h,I,y;let{periodStart:r,periodEnd:i,representationId:a,representationBitrate:o,isEMSGWhitelisted:s}=t,u=(g=e.timescale)!=null?g:1,d=((h=e.presentationTimeOffset)!=null?h:0)-r*u,f=((I=e.initialization)==null?void 0:I.media)===void 0?null:Ne(e.initialization.media,a,o),m=e.media===void 0?null:Ne(e.media,a,o),p;e.initialization!==void 0?p=e.initialization.range:e.indexRange!==void 0&&(p=[0,e.indexRange[0]-1]),this._index={indexRange:e.indexRange,indexTimeOffset:d,initialization:{url:f,range:p},segmentUrlTemplate:m,startNumber:e.startNumber,endNumber:e.endNumber,timeline:(y=e.timeline)!=null?y:[],timescale:u},this._manifestBoundsCalculator=t.manifestBoundsCalculator,this._scaledPeriodStart=Pe(r,this._index),this._scaledPeriodEnd=v(i)?void 0:Pe(i,this._index),this._isInitialized=this._index.timeline.length>0,this._isEMSGWhitelisted=s}getInitSegment(){return Je(this._index,this._isEMSGWhitelisted)}getSegments(e,t){return tn(this._index,e,t,this._manifestBoundsCalculator,this._scaledPeriodEnd,this._isEMSGWhitelisted)}shouldRefresh(){return!1}getFirstAvailablePosition(){let e=this._index;return e.timeline.length===0?null:je(Math.max(this._scaledPeriodStart,e.timeline[0].start),e)}getLastAvailablePosition(){var i;let{timeline:e}=this._index;if(e.length===0)return null;let t=e[e.length-1],r=Math.min(De(t,null,this._scaledPeriodEnd),(i=this._scaledPeriodEnd)!=null?i:1/0);return je(r,this._index)}getEnd(){return this.getLastAvailablePosition()}awaitSegmentBetween(){return!1}isSegmentStillAvailable(){return!0}checkDiscontinuity(){return null}canBeOutOfSyncError(){return!1}isStillAwaitingFutureSegments(){return!1}isInitialized(){return this._isInitialized}initialize(e){if(!this._isInitialized){for(let t=0;t<e.length;t++)vu(this._index,e[t]);this._isInitialized=!0}}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `BaseRepresentationIndex`\")}_replace(e){this._index=e._index,this._isInitialized=e._isInitialized,this._scaledPeriodEnd=e._scaledPeriodEnd,this._isEMSGWhitelisted=e._isEMSGWhitelisted}_update(){c.error(\"Base RepresentationIndex: Cannot update a SegmentList\")}};var Tt=class{constructor(e,t){var p,g,h;if(e.duration===void 0)throw new Error(\"Invalid SegmentList: no duration\");let{periodStart:r,periodEnd:i,representationId:a,representationBitrate:o,isEMSGWhitelisted:s}=t;this._isEMSGWhitelisted=s,this._periodStart=r,this._periodEnd=i;let u=(p=e.presentationTimeOffset)!=null?p:0,l=(g=e.timescale)!=null?g:1,d=u-r*l,f=((h=e.initialization)==null?void 0:h.media)===void 0?null:Ne(e.initialization.media,a,o),m=e.list.map(I=>({url:I.media===void 0?null:Ne(I.media,a,o),mediaRange:I.mediaRange}));this._index={list:m,timescale:l,duration:e.duration,indexTimeOffset:d,indexRange:e.indexRange,initialization:v(e.initialization)?void 0:{url:f,range:e.initialization.range}}}getInitSegment(){let e=Je(this._index);return e.privateInfos===void 0&&(e.privateInfos={}),e.privateInfos.isEMSGWhitelisted=this._isEMSGWhitelisted,e}getSegments(e,t){let r=this._index,{duration:i,list:a,timescale:o}=r,s=i/o,u=e-this._periodStart,[l,d]=mo(u,t,o),f=Math.min(a.length-1,Math.floor(d/i)),m=[],p=Math.floor(l/i);for(;p<=f;){let g=a[p].mediaRange,h=a[p].url,I=p*s+this._periodStart,y={id:String(p),time:I,isInit:!1,range:g,duration:s,timescale:1,end:I+s,url:h,timestampOffset:-(r.indexTimeOffset/o),complete:!0,privateInfos:{isEMSGWhitelisted:this._isEMSGWhitelisted}};m.push(y),p++}return m}shouldRefresh(e,t){return!1}getFirstAvailablePosition(){return this._periodStart}getLastAvailablePosition(){var i;let e=this._index,{duration:t,list:r}=e;return Math.min(r.length*t/e.timescale+this._periodStart,(i=this._periodEnd)!=null?i:1/0)}getEnd(){return this.getLastAvailablePosition()}awaitSegmentBetween(){return!1}isSegmentStillAvailable(){return!0}checkDiscontinuity(){return null}canBeOutOfSyncError(){return!1}isStillAwaitingFutureSegments(){return!1}isInitialized(){return!0}initialize(){c.error(\"A `ListRepresentationIndex` does not need to be initialized\")}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `ListRepresentationIndex`\")}_replace(e){this._index=e._index}_update(){c.error(\"A `ListRepresentationIndex` cannot be updated\")}};function Dt(n){return U.getCurrent().DEFAULT_MAXIMUM_TIME_ROUNDING_ERROR*n}var _t=class{constructor(e,t){var y,E,R;let{availabilityTimeOffset:r,manifestBoundsCalculator:i,isDynamic:a,periodEnd:o,periodStart:s,representationId:u,representationBitrate:l,isEMSGWhitelisted:d}=t,f=(y=e.timescale)!=null?y:1;this._availabilityTimeOffset=r,this._manifestBoundsCalculator=i;let m=(E=e.presentationTimeOffset)!=null?E:0,p=s*f,g=m-p;if(e.duration===void 0)throw new Error(\"Invalid SegmentTemplate: no duration\");let h=((R=e.initialization)==null?void 0:R.media)===void 0?null:Ne(e.initialization.media,u,l),I=e.media===void 0?null:Ne(e.media,u,l);this._index={duration:e.duration,timescale:f,indexRange:e.indexRange,indexTimeOffset:g,initialization:v(e.initialization)?void 0:{url:h,range:e.initialization.range},url:I,presentationTimeOffset:m,startNumber:e.startNumber,endNumber:e.endNumber},this._isDynamic=a,this._periodStart=s,this._scaledRelativePeriodEnd=o===void 0?void 0:(o-s)*f,this._isEMSGWhitelisted=d}getInitSegment(){return Je(this._index,this._isEMSGWhitelisted)}getSegments(e,t){let r=this._index,{duration:i,startNumber:a,endNumber:o,timescale:s,url:u}=r,l=this._periodStart*s,d=this._scaledRelativePeriodEnd,f=e*s-l,m=(e+t)*s-l,p=this._getFirstSegmentStart(),g=this._getLastSegmentStart();if(v(p)||v(g))return[];let h=Math.max(p,f),I=Math.min(g,m);if(I+i<=h)return[];let y=[],E=a!=null?a:1,R=Math.floor(h/i);for(let T=R*i;T<=I;T+=i){let C=R+E;if(o!==void 0&&C>o)return y;let P=!v(d)&&T+i>d?d-T:i,x=T+l,_=T+this._index.presentationTimeOffset,A=u===null?null:dr(_,C)(u),M={id:String(C),number:C,time:x/s,end:(x+P)/s,duration:P/s,timescale:1,isInit:!1,scaledDuration:P/s,url:A,timestampOffset:-(r.indexTimeOffset/s),complete:!0,privateInfos:{isEMSGWhitelisted:this._isEMSGWhitelisted}};y.push(M),R++}return y}getFirstAvailablePosition(){let e=this._getFirstSegmentStart();return v(e)?e:e/this._index.timescale+this._periodStart}getLastAvailablePosition(){let e=this._getLastSegmentStart();if(v(e))return e;let t=this._estimateRelativeScaledEnd();return Math.min(e+this._index.duration,t!=null?t:1/0)/this._index.timescale+this._periodStart}getEnd(){if(!this._isDynamic)return this.getLastAvailablePosition();let e=this._estimateRelativeScaledEnd();if(e===void 0)return;let{timescale:t}=this._index;return(e+this._periodStart*t)/t}awaitSegmentBetween(e,t){if(he(e<=t),!this._isDynamic)return!1;let{timescale:r}=this._index,i=Dt(r),a=this._periodStart*r,o=e*r-a,s=t*r-a,u=this._getLastSegmentStart();if(v(u)){let f=this._estimateRelativeScaledEnd();return f===void 0?s+i>=0:s+i>=0&&o<f-i}let l=u+this._index.duration,d=this._estimateRelativeScaledEnd();return d===void 0?s>l-i:s>l-i&&o<d-i}shouldRefresh(){return!1}checkDiscontinuity(){return null}isSegmentStillAvailable(e){if(e.isInit)return!0;let t=this.getSegments(e.time,.1);return t.length===0?!1:t[0].time===e.time&&t[0].end===e.end&&t[0].number===e.number}canBeOutOfSyncError(){return!1}isStillAwaitingFutureSegments(){if(!this._isDynamic)return!1;let e=this._estimateRelativeScaledEnd();if(e===void 0)return!0;let{timescale:t}=this._index,r=this._getLastSegmentStart();if(v(r))return!0;let i=r+this._index.duration,a=Dt(t);return i+a<e}isInitialized(){return!0}initialize(){c.error(\"A `TemplateRepresentationIndex` does not need to be initialized\")}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `TemplateRepresentationIndex`\")}_replace(e){this._index=e._index,this._isDynamic=e._isDynamic,this._periodStart=e._periodStart,this._scaledRelativePeriodEnd=e._scaledRelativePeriodEnd,this._manifestBoundsCalculator=e._manifestBoundsCalculator}_update(e){this._replace(e)}_getFirstSegmentStart(){var o;if(!this._isDynamic)return 0;if(this._scaledRelativePeriodEnd===0||this._scaledRelativePeriodEnd===void 0){let s=this._manifestBoundsCalculator.getEstimatedMaximumPosition((o=this._availabilityTimeOffset)!=null?o:0);if(s!==void 0&&s<this._periodStart)return null}let{duration:e,timescale:t}=this._index,r=this._manifestBoundsCalculator.getEstimatedMinimumSegmentTime();if(r===void 0)return;let i=r>this._periodStart?(r-this._periodStart)*t:0;return Math.floor(i/e)*e}_getLastSegmentStart(){var a,o;let{duration:e,timescale:t,endNumber:r,startNumber:i=1}=this._index;if(this._isDynamic){let s=this._manifestBoundsCalculator.getEstimatedLiveEdge();if(s!==void 0&&this._scaledRelativePeriodEnd!==void 0&&this._scaledRelativePeriodEnd<s-this._periodStart*this._index.timescale){let f=Math.ceil(this._scaledRelativePeriodEnd/e);return r!==void 0&&r-i+1<f&&(f=r-i+1),(f-1)*e}let u=this._manifestBoundsCalculator.getEstimatedMaximumPosition((a=this._availabilityTimeOffset)!=null?a:0);if(u===void 0)return;let l=(u-this._periodStart)*t;if(l<0)return null;let d=Math.floor(l/e);return r!==void 0&&r-i+1<d&&(d=r-i+1),d<=0?null:(d-1)*e}else{let s=(o=this._scaledRelativePeriodEnd)!=null?o:0,u=Math.ceil(s/e);r!==void 0&&r-i+1<u&&(u=r-i+1);let l=(u-1)*e,d=U.getCurrent().MINIMUM_SEGMENT_SIZE*t;return r!==void 0||s-l>d||u<2?l:(u-2)*e}}_estimateRelativeScaledEnd(){var e,t;if(this._index.endNumber!==void 0){let r=this._index.endNumber-((e=this._index.startNumber)!=null?e:1)+1;return Math.max(Math.min(r*this._index.duration,(t=this._scaledRelativePeriodEnd)!=null?t:1/0),0)}if(this._scaledRelativePeriodEnd!==void 0)return Math.max(this._scaledRelativePeriodEnd,0)}};function ai(n,e){let t=0;for(;n.length>0;){let r=n[0];if(r.start>=e||r.repeatCount===-1)return t;if(r.repeatCount===0)n.shift(),t+=1;else{let i=n[1];if(i!==void 0&&i.start<=e)n.shift(),t+=1;else{if(r.duration<=0)return t;let a=r.start+r.duration,o=1;for(;a<e&&o<=r.repeatCount;)a+=r.duration,o++;if(o>r.repeatCount)n.shift(),t=r.repeatCount+1;else{let s=r.repeatCount-o;return r.start=a,r.repeatCount=s,t+=o,t}}}}return t}function oi(n,e){if(n.length===0)return n.push(...e),!0;if(e.length===0)return!1;let t=n.length,r=e[0].start,i=n[t-1];if(De(i,e[0])<r)throw new j(\"MANIFEST_UPDATE_ERROR\",\"Cannot perform partial update: not enough data\");for(let d=t-1;d>=0;d--){let f=n[d].start;if(f===r){let m=t-d;return n.splice(d,m,...e),!1}else if(f<r){let m=n[d];if(m.start+m.duration>r)return c.warn(\"RepresentationIndex: Manifest update removed all previous segments\"),n.splice(0,t,...e),!0;if(m.repeatCount===void 0||m.repeatCount<=0)return m.repeatCount<0&&(m.repeatCount=Math.floor((r-m.start)/m.duration)-1),n.splice(d+1,t-(d+1),...e),!1;if(m.start+m.duration*(m.repeatCount+1)<=r)return n.splice(d+1,t-(d+1),...e),!1;let g=(r-m.start)/m.duration-1;if(g%1===0&&m.duration===e[0].duration){let h=e[0].repeatCount<0?-1:e[0].repeatCount+g+1;return n.splice(d,t-d,...e),n[d].start=m.start,n[d].repeatCount=h,!1}return c.warn(\"RepresentationIndex: Manifest update removed previous segments\"),n[d].repeatCount=Math.floor(g),n.splice(d+1,t-(d+1),...e),!1}}let o=n[n.length-1],s=e[e.length-1];if(o.repeatCount!==void 0&&o.repeatCount<0)return o.start>s.start?(c.warn(\"RepresentationIndex: The new index is older than the previous one\"),!1):(c.warn('RepresentationIndex: The new index is \"bigger\" than the previous one'),n.splice(0,t,...e),!0);let u=o.start+o.duration*(o.repeatCount+1),l=s.start+s.duration*(s.repeatCount+1);return u>=l?(c.warn(\"RepresentationIndex: The new index is older than the previous one\"),!1):(c.warn('RepresentationIndex: The new index is \"bigger\" than the previous one'),n.splice(0,t,...e),!0)}function nn(n,e,t){let r=n.start,i=n.duration,a=n.repeatCount;return r===void 0&&(e===null?r=0:v(e.duration)||(r=e.start+e.duration*(e.repeatCount+1))),(i===void 0||isNaN(i))&&t!==null&&t.start!==void 0&&!isNaN(t.start)&&r!==void 0&&!isNaN(r)&&(i=t.start-r),r!==void 0&&!isNaN(r)&&i!==void 0&&!isNaN(i)&&(a===void 0||!isNaN(a))?{start:r,duration:i,repeatCount:a===void 0?0:a}:(c.warn('DASH: A \"S\" Element could not have been parsed.'),null)}function rn(n){let e={};for(let t of Object.keys(n.attributes)){let r=n.attributes[t];if(!v(r))switch(t){case\"t\":let i=parseInt(r,10);isNaN(i)?c.warn(`DASH: invalid t (\"${r}\")`):e.start=i;break;case\"d\":let a=parseInt(r,10);isNaN(a)?c.warn(`DASH: invalid d (\"${r}\")`):e.duration=a;break;case\"r\":let o=parseInt(r,10);isNaN(o)?c.warn(`DASH: invalid r (\"${r}\")`):e.repeatCount=o;break}}return e}function an(n){let e={};for(let t=0;t<n.attributes.length;t++){let r=n.attributes[t];switch(r.name){case\"t\":let i=parseInt(r.value,10);isNaN(i)?c.warn(`DASH: invalid t (\"${r.value}\")`):e.start=i;break;case\"d\":let a=parseInt(r.value,10);isNaN(a)?c.warn(`DASH: invalid d (\"${r.value}\")`):e.duration=a;break;case\"r\":let o=parseInt(r.value,10);isNaN(o)?c.warn(`DASH: invalid r (\"${r.value}\")`):e.repeatCount=o;break}}return e}function ft(n){let e=[];if(Array.isArray(n))for(let r=0;r<n.length;r++)e.push(rn(n[r]));else for(let r=0;r<n.length;r++)e.push(an(n[r]));let t=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[t.length-1]===void 0?null:t[t.length-1],o=e[r+1]===void 0?null:e[r+1],s=nn(i,a,o);s!==null&&t.push(s)}return t}function si(n,e){if(n.length===0||e.length===0)return null;let t=n[0].start,r=Array.isArray(e)?e[0].attributes.t:e[0].getAttribute(\"t\"),i=v(r)?null:parseInt(r,10);if(i===null||Number.isNaN(i))return null;if(t===i)return{prevSegmentsIdx:0,newElementsIdx:0,repeatNumberInPrevSegments:0,repeatNumberInNewElements:0};if(t<i){let a=n[0],o=0;for(;;){if(a.repeatCount>0){let s=i-a.start;if(s%a.duration===0&&s/a.duration<=a.repeatCount)return{repeatNumberInPrevSegments:s/a.duration,prevSegmentsIdx:o,newElementsIdx:0,repeatNumberInNewElements:0}}if(o++,o>=n.length)return null;if(a=n[o],a.start===i)return{prevSegmentsIdx:o,newElementsIdx:0,repeatNumberInPrevSegments:0,repeatNumberInNewElements:0};if(a.start>i)return null}}else{let a=0,o=Array.isArray(e)?e[0]:null,s=Array.isArray(e)?null:e[0],u=i;for(;;){let l=o!==null?o.attributes.d:s==null?void 0:s.getAttribute(\"d\"),d=v(l)?null:parseInt(l,10);if(d===null||Number.isNaN(d))return null;let f=o!==null?o.attributes.r:s==null?void 0:s.getAttribute(\"r\"),m=v(f)?null:parseInt(f,10);if(m!==null){if(Number.isNaN(m)||m<0)return null;if(m>0){let h=t-u;if(h%d===0&&h/d<=m)return{repeatNumberInPrevSegments:0,repeatNumberInNewElements:h/d,prevSegmentsIdx:0,newElementsIdx:a}}u+=d*(m+1)}else u+=d;if(a++,a>=e.length)return null;Array.isArray(e)?o=e[a]:s=e[a];let p=o!==null?o.attributes.t:s==null?void 0:s.getAttribute(\"t\"),g=v(p)?null:parseInt(p,10);if(g!==null){if(Number.isNaN(g))return null;u=g}if(u===t)return{newElementsIdx:a,prevSegmentsIdx:0,repeatNumberInPrevSegments:0,repeatNumberInNewElements:0};if(u>i)return null}}}function ui(n,e){var h;let t=si(e,n);if(t===null)return c.warn('DASH: Cannot perform \"based\" update. Common segment not found.'),ft(n);let{prevSegmentsIdx:r,newElementsIdx:i,repeatNumberInPrevSegments:a,repeatNumberInNewElements:o}=t,u=e.length-r+i-1;if(u>=n.length)return c.info('DASH: Cannot perform \"based\" update. New timeline too short'),ft(n);let l=e.slice(r);if(a>0){let I=l[0];I.start+=I.duration*a,l[0].repeatCount-=a}if(o>0&&i!==0)return c.info('DASH: Cannot perform \"based\" update. The new timeline has a different form.'),ft(n);let d=l[l.length-1],f=Array.isArray(n)?rn(n[u]):an(n[u]),m=((h=f.repeatCount)!=null?h:0)-o;if(f.duration!==d.duration||d.repeatCount>m)return c.info('DASH: Cannot perform \"based\" update. The new timeline has a different form at the beginning.'),ft(n);f.repeatCount!==void 0&&f.repeatCount>d.repeatCount&&(d.repeatCount=f.repeatCount);let p=[],g=[];if(Array.isArray(n))for(let I=u+1;I<n.length;I++)g.push(rn(n[I]));else for(let I=u+1;I<n.length;I++)g.push(an(n[I]));for(let I=0;I<g.length;I++){let y=g[I],E=p[p.length-1]===void 0?d:p[p.length-1],R=g[I+1]===void 0?null:g[I+1],T=nn(y,E,R);T!==null&&p.push(T)}return l.concat(p)}var on=class n{constructor(e,t){var T,C,P,x,_;if(!n.isTimelineIndexArgument(e))throw new Error(\"The given index is not compatible with a TimelineRepresentationIndex.\");let{availabilityTimeComplete:r,availabilityTimeOffset:i,manifestBoundsCalculator:a,isDynamic:o,isLastPeriod:s,representationId:u,representationBitrate:l,periodStart:d,periodEnd:f,isEMSGWhitelisted:m}=t,p=(T=e.timescale)!=null?T:1,g=(C=e.presentationTimeOffset)!=null?C:0,h=d*p,I=g-h;this._manifestBoundsCalculator=a,this._isEMSGWhitelisted=m,this._isLastPeriod=s,this._lastUpdate=(P=t.receivedTime)!=null?P:L(),this._unsafelyBaseOnPreviousIndex=null,t.unsafelyBaseOnPreviousRepresentation!==null&&t.unsafelyBaseOnPreviousRepresentation.index instanceof n&&(t.unsafelyBaseOnPreviousRepresentation.index._unsafelyBaseOnPreviousIndex=null,this._unsafelyBaseOnPreviousIndex=t.unsafelyBaseOnPreviousRepresentation.index),this._isDynamic=o,this._parseTimeline=(x=e.timelineParser)!=null?x:null;let y=((_=e.initialization)==null?void 0:_.media)===void 0?null:Ne(e.initialization.media,u,l),E=e.media===void 0?null:Ne(e.media,u,l),R;i===void 0&&r===void 0?R=1/0:R=i!=null?i:0,this._index={availabilityTimeComplete:r!=null?r:!0,availabilityTimeOffset:R,indexRange:e.indexRange,indexTimeOffset:I,initialization:v(e.initialization)?void 0:{url:y,range:e.initialization.range},segmentUrlTemplate:E,startNumber:e.startNumber,endNumber:e.endNumber,timeline:e.timeline===void 0?null:di(e.timeline,e.startNumber,e.endNumber),timescale:p},this._scaledPeriodStart=Pe(d,this._index),this._scaledPeriodEnd=f===void 0?void 0:Pe(f,this._index)}getInitSegment(){return Je(this._index,this._isEMSGWhitelisted)}getSegments(e,t){return this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline()),tn(this._index,e,t,this._manifestBoundsCalculator,this._scaledPeriodEnd,this._isEMSGWhitelisted)}shouldRefresh(){return!1}getFirstAvailablePosition(){this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let e=this._index.timeline;return e.length===0?null:je(Math.max(this._scaledPeriodStart,e[0].start),this._index)}getLastAvailablePosition(){var r;this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let e=lr(this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd);if(e===null)return null;let t=Math.min(e.end,(r=this._scaledPeriodEnd)!=null?r:1/0);return je(t,this._index)}getEnd(){var r;if(this._isDynamic&&!this._isLastPeriod)return;if(this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline()),this._index.timeline.length<=0)return null;let e=this._index.timeline[this._index.timeline.length-1],t=Math.min(De(e,null,this._scaledPeriodEnd),(r=this._scaledPeriodEnd)!=null?r:1/0);return je(t,this._index)}awaitSegmentBetween(e,t){var l,d;if(he(e<=t),!this._isDynamic)return!1;this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let{timescale:r,timeline:i}=this._index,a=Dt(r),o=Pe(t,this._index),s=lr(this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd);if(s!==null&&Math.min(s.end,(l=this._scaledPeriodEnd)!=null?l:1/0)+a>=Math.min(o,(d=this._scaledPeriodEnd)!=null?d:1/0))return!1;let u=Pe(e,this._index);if(i.length>0&&s!==null&&!s.isLastOfTimeline){let f=i[i.length-1],p=De(f,null,this._scaledPeriodEnd)+a;if(u<p+a)return!0}return this._isLastPeriod?this._scaledPeriodEnd===void 0?o+a>this._scaledPeriodStart?void 0:!1:u-a<this._scaledPeriodEnd&&o+a>this._scaledPeriodStart:!1}isSegmentStillAvailable(e){return e.isInit?!0:(this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline()),Cu(e,this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd))}checkDiscontinuity(e){this._refreshTimeline();let t=this._index.timeline;return t===null&&(t=this._getTimeline(),this._index.timeline=t),co({timeline:t,timescale:this._index.timescale,indexTimeOffset:this._index.indexTimeOffset},e,this._scaledPeriodEnd)}canBeOutOfSyncError(e){return this._isDynamic?e instanceof Ke&&e.isHttpError(404):!1}_replace(e){this._parseTimeline=e._parseTimeline,this._index=e._index,this._isDynamic=e._isDynamic,this._scaledPeriodStart=e._scaledPeriodStart,this._scaledPeriodEnd=e._scaledPeriodEnd,this._lastUpdate=e._lastUpdate,this._manifestBoundsCalculator=e._manifestBoundsCalculator,this._isLastPeriod=e._isLastPeriod}_update(e){this._index.timeline===null&&(this._index.timeline=this._getTimeline()),e._index.timeline===null&&(e._index.timeline=e._getTimeline()),oi(this._index.timeline,e._index.timeline)&&(this._index.startNumber=e._index.startNumber),this._index.availabilityTimeOffset=e._index.availabilityTimeOffset,this._index.availabilityTimeComplete=e._index.availabilityTimeComplete,this._index.endNumber=e._index.endNumber,this._isDynamic=e._isDynamic,this._scaledPeriodStart=e._scaledPeriodStart,this._scaledPeriodEnd=e._scaledPeriodEnd,this._lastUpdate=e._lastUpdate,this._isLastPeriod=e._isLastPeriod}isStillAwaitingFutureSegments(){var o;if(!this._isDynamic)return!1;this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let{timeline:e}=this._index;if(e.length===0){if(this._scaledPeriodEnd!==void 0){let s=this._manifestBoundsCalculator.getEstimatedLiveEdge();if(s!==void 0&&Pe(s,this._index)>this._scaledPeriodEnd)return!1}return this._isLastPeriod}let t=Dt(this._index.timescale),r=lr(this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd);if(r!==null&&!r.isLastOfTimeline){let s=Math.min(r.end,(o=this._scaledPeriodEnd)!=null?o:1/0);return!(this._scaledPeriodEnd!==void 0&&s+t>=this._scaledPeriodEnd)}if(!this._isLastPeriod)return!1;if(this._scaledPeriodEnd===void 0)return!0;let i=e[e.length-1];return De(i,null,this._scaledPeriodEnd)+t<this._scaledPeriodEnd}isInitialized(){return!0}initialize(){c.error(\"A `TimelineRepresentationIndex` does not need to be initialized\")}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `TimelineRepresentationIndex`\")}static isTimelineIndexArgument(e){return typeof e.timelineParser==\"function\"||Array.isArray(e.timeline)}_refreshTimeline(){if(this._index.timeline===null&&(this._index.timeline=this._getTimeline()),!this._isDynamic)return;let e=this._manifestBoundsCalculator.getEstimatedMinimumSegmentTime();if(v(e))return;let t=Pe(e,this._index),r=ai(this._index.timeline,t);this._index.startNumber!==void 0?this._index.startNumber+=r:this._index.endNumber!==void 0&&(this._index.startNumber=r+1)}_getTimeline(){if(this._parseTimeline===null)return this._index.timeline!==null?this._index.timeline:(c.error(\"DASH: Timeline already lazily parsed.\"),[]);let e=this._parseTimeline();this._parseTimeline=null;let{MIN_DASH_S_ELEMENTS_TO_PARSE_UNSAFELY:t}=U.getCurrent();if(this._unsafelyBaseOnPreviousIndex===null||e.length<t)return di(ft(e),this._index.startNumber,this._index.endNumber);let r;return this._unsafelyBaseOnPreviousIndex._index.timeline===null?(r=this._unsafelyBaseOnPreviousIndex._getTimeline(),this._unsafelyBaseOnPreviousIndex._index.timeline=r):r=this._unsafelyBaseOnPreviousIndex._index.timeline,this._unsafelyBaseOnPreviousIndex=null,di(ui(e,r),this._index.startNumber,this._index.endNumber)}};function di(n,e,t){if(t===void 0)return n;let r=e!=null?e:1;for(let i=0;i<n.length;i++){let a=n[i];if(r+=a.repeatCount+1,r>t){if(r===t+1)return n.slice(0,i+1);{let o=n.slice(0,i),s=_e({},a),u=r-a.repeatCount-1;return s.repeatCount=Math.max(0,t-u),o.push(s),o}}}return n}function Cu(n,e,t,r){let i=lr(e,t,r);if(i===null)return!1;for(let a=0;a<e.timeline.length;a++){if(i.timelineIdx<a)return!1;let o=e.timeline[a],s=(o.start-e.indexTimeOffset)/e.timescale;if(s>n.time)return!1;if(s===n.time)return o.range===void 0?n.range===void 0:!v(n.range)&&o.range[0]===n.range[0]&&o.range[1]===n.range[1];if(o.repeatCount>=0&&o.duration!==void 0){let l=(s-o.start)/o.duration-1;return l%1===0&&l<=i.newRepeatCount}}return!1}function lr(n,e,t){if(n.timeline.length<=0)return null;if(n.availabilityTimeOffset===1/0){let i=n.timeline.length-1,a=n.timeline[i];return{isLastOfTimeline:!0,timelineIdx:i,newRepeatCount:a.repeatCount,end:De(a,null,t)}}let r=e.getEstimatedMaximumPosition(n.availabilityTimeOffset);if(r===void 0){let i=n.timeline.length-1,a=n.timeline[i];return{isLastOfTimeline:!0,timelineIdx:i,newRepeatCount:a.repeatCount,end:De(a,null,t)}}for(let i=n.timeline.length-1;i>=n.timeline.length;i--){let a=n.timeline[i],o=a.start+a.duration;if(je(o,n)<=r){let s=De(a,n.timeline[i+1],t);if(je(s,n)<=r)return{isLastOfTimeline:i===n.timeline.length-1,timelineIdx:i,newRepeatCount:a.repeatCount,end:o};{let l=Pe(r,n)-a.start,d=Math.floor(l/a.duration);return he(d>=1),{isLastOfTimeline:!1,timelineIdx:i,newRepeatCount:d-1,end:a.start+d*a.duration}}}}return null}var fr=on;var po=/^(?:[a-z]+:)?\\/\\//i,Au=/\\/\\.{1,2}\\//;function ku(n){if(!Au.test(n))return n;let e=[],t=n.split(\"/\");for(let r=0,i=t.length;r<i;r++)if(t[r]===\"..\")e.pop();else{if(t[r]===\".\")continue;e.push(t[r])}return e.join(\"/\")}function sn(...n){let e=n.length;if(e===0)return\"\";let t=\"\";for(let r=0;r<e;r++){let i=n[r];typeof i!=\"string\"||i===\"\"||(po.test(i)?t=i:(i[0]===\"/\"&&(i=i.substring(1)),t[t.length-1]===\"/\"&&(t=t.substring(0,t.length-1)),t=t+\"/\"+i))}return ku(t)}function li(n){let e=n.lastIndexOf(\"/\");if(e<0)return n.length;if(po.test(n)){let r=n.indexOf(\"/\");if(r>=0&&e===r+1)return n.length}let t=n.indexOf(\"?\");return t>=0&&t<e?li(n.substring(0,t)):e+1}function mr(n){let e=Date.parse(n)-L();if(isNaN(e)){c.warn(\"DASH Parser: Invalid clock received: \",n);return}return e}function fi(n){let e=n.children.utcTimings.filter(t=>(t.schemeIdUri===\"urn:mpeg:dash:utc:http-iso:2014\"||t.schemeIdUri===\"urn:mpeg:dash:utc:http-xsdate:2014\")&&t.value!==void 0);return e.length>0?e[0].value:void 0}function cr(n){let{representations:e}=n,t=null;for(let r=0;r<e.length;r++){let i=e[r].index.getLastAvailablePosition();if(i===void 0)return;i!==null&&(t=t===null?i:Math.min(t,i))}return t===null?null:t}function mi(n){for(let e=n.length-1;e>=0;e--){let t=n[e].adaptations,r=t.audio===void 0?void 0:t.audio[0],i=t.video===void 0?void 0:t.video[0];if(r!==void 0||i!==void 0){let a=null,o=null;if(r!==void 0){let s=cr(r);if(s===void 0)return{safe:void 0,unsafe:void 0};a=s}if(i!==void 0){let s=cr(i);if(s===void 0)return{safe:void 0,unsafe:void 0};o=s}if(r!==void 0&&a===null||i!==void 0&&o===null)return c.info(\"Parser utils: found Period with no segment. \",\"Going to previous one to calculate last position\"),{safe:void 0,unsafe:void 0};if(o!==null)return a!==null?{safe:Math.min(a,o),unsafe:Math.max(a,o)}:{safe:o,unsafe:o};if(a!==null)return{safe:a,unsafe:a}}}return{safe:void 0,unsafe:void 0}}function pr(n){let{representations:e}=n,t=null;for(let r=0;r<e.length;r++){let i=e[r].index.getFirstAvailablePosition();if(i===void 0)return;i!==null&&(t=t===null?i:Math.max(t,i))}return t===null?null:t}function ci(n){for(let e=0;e<=n.length-1;e++){let t=n[e].adaptations,r=t.audio===void 0?void 0:t.audio[0],i=t.video===void 0?void 0:t.video[0];if(r!==void 0||i!==void 0){let a=null,o=null;if(r!==void 0){let s=pr(r);if(s===void 0)return;a=s}if(i!==void 0){let s=pr(i);if(s===void 0)return;o=s}if(r!==void 0&&a===null||i!==void 0&&o===null){c.info(\"Parser utils: found Period with no segment. \",\"Going to next one to calculate first position\");return}if(o!==null)return a!==null?Math.max(a,o):o;if(a!==null)return a}}}function pi(n){if(n.length===0)throw new Error(\"DASH Parser: no period available for a dynamic content\");let e=ci(n),t=mi(n);return{minimumSafePosition:e,maximumSafePosition:t.safe,maximumUnsafePosition:t.unsafe}}var un=class{constructor(e){this._isDynamic=e.isDynamic,this._timeShiftBufferDepth=!e.isDynamic||e.timeShiftBufferDepth===void 0?null:e.timeShiftBufferDepth,this._serverTimestampOffset=e.serverTimestampOffset,this._availabilityStartTime=e.availabilityStartTime}setLastPosition(e,t){this._lastPosition=e,this._positionTime=t}lastPositionIsKnown(){return this._isDynamic?this._positionTime!==void 0&&this._lastPosition!==void 0:this._lastPosition!==void 0}getEstimatedMinimumSegmentTime(){var r;if(!this._isDynamic||this._timeShiftBufferDepth===null)return 0;let e=(r=this.getEstimatedLiveEdge())!=null?r:this.getEstimatedMaximumPosition(0);return e===void 0?void 0:e-this._timeShiftBufferDepth}getEstimatedLiveEdge(){if(!(!this._isDynamic||this._serverTimestampOffset===void 0))return(L()+this._serverTimestampOffset)/1e3-this._availabilityStartTime}getEstimatedMaximumPosition(e){if(!this._isDynamic)return this._lastPosition;let t=this.getEstimatedLiveEdge();return t!==void 0&&e!==1/0?t+e:this._positionTime!==void 0&&this._lastPosition!==void 0?Math.max(this._lastPosition-this._positionTime+L()/1e3,0):this._lastPosition}};function gi(n,e){return n.type!==\"dynamic\"?0:v(n.availabilityStartTime)?e!=null?e:0:n.availabilityStartTime}function hi(n,e){return typeof Array.prototype.flatMap==\"function\"?n.flatMap(e):n.reduce((t,r)=>{let i=e(r);return Array.isArray(i)?(t.push(...i),t):(t.push(i),t)},[])}var xu=typeof Ee==\"object\"&&typeof Ee.TextDecoder==\"function\",Mu=typeof Ee==\"object\"&&typeof Ee.TextEncoder==\"function\";function dn(n){if(Mu)try{return new TextEncoder().encode(n)}catch(i){let a=i instanceof Error?i:\"\";c.warn(\"Utils: could not use TextEncoder to encode string into UTF-8, fallbacking to another implementation\",a)}let e,t=encodeURIComponent(n);if(typeof unescape==\"function\")e=unescape(t);else{let i=/[0-9a-fA-F]/,a=t.length;e=\"\";for(let o=0;o<t.length;o++){let s=!1;if(t[o]===\"%\"){if(o<=a-6&&t[o+1]===\"u\"&&i.test(t[o+2])&&i.test(t[o+3])&&i.test(t[o+4])&&i.test(t[o+5])){let u=parseInt(t.substring(o+1,o+6),16);e+=String.fromCharCode(u),s=!0,o+=5}else if(o<=a-3&&i.test(t[o+1])&&i.test(t[o+2])){let u=parseInt(t.substring(o+1,o+3),16);e+=String.fromCharCode(u),s=!0,o+=2}}s||(e+=t[o])}}let r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e.charCodeAt(i)&255;return r}function Ou(n){let t=\"\";for(let r=0;r<n.length;r+=16e3){let i=n.subarray(r,r+16e3);t+=String.fromCharCode.apply(null,i)}return t}function go(n,e){let t=n.toString(16);return t.length>=e?t:new Array(e-t.length+1).join(\"0\")+t}function Be(n){if(xu)try{return new TextDecoder().decode(n)}catch(i){let a=i instanceof Error?i:\"\";c.warn(\"Utils: could not use TextDecoder to parse UTF-8, fallbacking to another implementation\",a)}let e=n;e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3));let t=Ou(e),r;if(typeof escape==\"function\")r=escape(t);else{let i=/[A-Za-z0-9*_\\+-\\.\\/]/;r=\"\";for(let a=0;a<t.length;a++)if(i.test(t[a]))r+=t[a];else{let o=t.charCodeAt(a);r+=o>=256?\"%u\"+go(o,4):\"%\"+go(o,2)}}return decodeURIComponent(r)}function ln(n){let e=n.length,t=new Uint8Array(e/2);for(let r=0,i=0;r<e;r+=2,i++)t[i]=parseInt(n.substring(r,r+2),16)&255;return t}function ho(n,e=\"\"){let t=\"\";for(let r=0;r<n.byteLength;r++)t+=(n[r]>>>4).toString(16),t+=(n[r]&15).toString(16),e.length>0&&r<n.byteLength-1&&(t+=e);return t}function Ii(n,e){let t=e;for(;t<n.length&&n[t]!==0;)t+=1;let r=n.subarray(e,t);return{end:t+1,string:Be(r)}}function bi(n){if(n.length===0)return[];let e=[n[0]];for(let t=1;t<n.length;t++){let r=n[t],i=e[e.length-1];for(;(i.duration===void 0||i.start+i.duration>r.start)&&(c.warn(\"DASH: Updating overlapping Periods.\",i==null?void 0:i.start,r.start),i.duration=r.start-i.start,i.end=r.start,!(i.duration>0));){if(e.pop(),e.length===0)break;i=e[e.length-1]}e.push(r)}return e}function Si(n,e){let t=[];return n.forEach((r,i)=>{let a;if(!v(r.attributes.start))a=r.attributes.start;else if(i===0)a=!e.isDynamic||v(e.availabilityStartTime)?0:e.availabilityStartTime;else{let l=t[t.length-1];if(!v(l)&&!v(l.periodEnd))a=l.periodEnd;else throw new Error(\"Missing start time when parsing periods.\")}let o,s=n[i+1];v(r.attributes.duration)?i===n.length-1?o=e.duration:v(s.attributes.start)||(o=s.attributes.start-a):o=r.attributes.duration;let u=v(o)?void 0:a+o;t.push({periodStart:a,periodDuration:o,periodEnd:u})}),t}function wu(n,e){for(let t of e){let{adaptation:r,trickModeAttachedAdaptationIds:i}=t;for(let a of i)for(let o of Ot){let s=n[o];if(s!==void 0)for(let u of s)u.id===a&&(u.trickModeTracks===void 0&&(u.trickModeTracks=[]),u.trickModeTracks.push(r))}}}var Io=wu;var Du=[\"subtitle\",\"caption\"];function yi(n,e,t,r){function i(o,s){let u=o.split(\"/\")[0];if(se(Ot,u))return u;if(o===\"application/ttml+xml\")return\"text\";if(o===\"application/mp4\")return s!==null&&K(s,l=>l.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&se(Du,l.value))!==void 0?\"text\":void 0}function a(o){switch(o.substring(0,3)){case\"avc\":case\"hev\":case\"hvc\":case\"vp8\":case\"vp9\":case\"av1\":return\"video\";case\"vtt\":return\"text\"}switch(o.substring(0,4)){case\"mp4a\":return\"audio\";case\"wvtt\":case\"stpp\":return\"text\"}}if(e!==null){let o=i(e,r);if(o!==void 0)return o}if(t!==null){let o=a(t);if(o!==void 0)return o}for(let o=0;o<n.length;o++){let s=n[o],{mimeType:u,codecs:l}=s.attributes;if(u!==void 0){let d=i(u,r);if(d!==void 0)return d}if(l!==void 0){let d=a(l);if(d!==void 0)return d}}}var Nu=/[, ]+/g;function bo(n){return Z(n)?n.trim().replace(Nu,\", \"):\"\"}function So(n){let[e,t,r,i,a,o,s,u]=n.split(\".\");if(e!==\"vp08\"&&e!==\"vp09\"&&e!==\"vp10\")return;let l,d,f;if((i!==void 0&&i===\"10\"||i===\"12\")&&(l=parseInt(i,10)),s!==void 0&&(s===\"16\"?d=\"pq\":s===\"18\"&&(d=\"hlg\")),o!==void 0&&u!==void 0&&o===\"09\"&&u===\"09\"&&(f=\"rec2020\"),!(l===void 0||d===void 0))return{colorDepth:l,eotf:d,colorSpace:f}}function Ti(n,e){var g,h,I;let{availabilityTimeOffset:t,manifestBoundsCalculator:r,isDynamic:i,end:a,start:o,receivedTime:s,unsafelyBaseOnPreviousRepresentation:u,inbandEventStreams:l,isLastPeriod:d}=e,m={availabilityTimeComplete:void 0,availabilityTimeOffset:t,unsafelyBaseOnPreviousRepresentation:u,isEMSGWhitelisted:y=>l===void 0?!1:l.some(({schemeIdUri:E})=>E===y.schemeIdUri),isLastPeriod:d,manifestBoundsCalculator:r,isDynamic:i,periodEnd:a,periodStart:o,receivedTime:s,representationBitrate:n.attributes.bitrate,representationId:n.attributes.id},p;if(n.children.segmentBase!==void 0){let{segmentBase:y}=n.children;p=new yt(y,m)}else if(n.children.segmentList!==void 0){let{segmentList:y}=n.children;p=new Tt(y,m)}else if(n.children.segmentTemplate!==void 0||e.parentSegmentTemplates.length>0){let y=e.parentSegmentTemplates.slice(),E=n.children.segmentTemplate;E!==void 0&&y.push(E);let R=H({},...y);(R.availabilityTimeOffset!==void 0||e.availabilityTimeOffset!==void 0)&&(m.availabilityTimeOffset=((g=R.availabilityTimeOffset)!=null?g:0)+((h=e.availabilityTimeOffset)!=null?h:0)),(R.availabilityTimeComplete!==void 0||e.availabilityTimeComplete!==void 0)&&(m.availabilityTimeComplete=(I=R.availabilityTimeComplete)!=null?I:e.availabilityTimeComplete),p=fr.isTimelineIndexArgument(R)?new fr(R,m):new _t(R,m)}else{let y=e.adaptation.children;if(y.segmentBase!==void 0){let{segmentBase:E}=y;p=new yt(E,m)}else if(y.segmentList!==void 0){let{segmentList:E}=y;p=new Tt(E,m)}else p=new _t({duration:Number.MAX_VALUE,timescale:1,startNumber:0,media:\"\"},m)}return p}function et(n,e){var i;if(e.length===0)return n;let t=e.map(a=>({url:a.value}));if(n.length===0)return t;let r=[];for(let a=0;a<n.length;a++){let o=n[a];for(let s=0;s<t.length;s++){let u=t[s],l=sn(o.url,u.url);r.push({url:l,serviceLocation:(i=u.serviceLocation)!=null?i:o.serviceLocation})}}return r}function Bu(n,e){let t=[];if(n.children.inbandEventStreams!==void 0&&t.push(...n.children.inbandEventStreams),e.children.inbandEventStreams!==void 0&&t.push(...e.children.inbandEventStreams),t.length!==0)return t}function Uu({adaptationProfiles:n,essentialProperties:e,supplementalProperties:t,manifestProfiles:r,codecs:i}){if(((n!=null?n:\"\")+(r!=null?r:\"\")).indexOf(\"http://dashif.org/guidelines/dash-if-uhd#hevc-hdr-pq10\")!==-1&&(i===\"hvc1.2.4.L153.B0\"||i===\"hev1.2.4.L153.B0\"))return{colorDepth:10,eotf:\"pq\",colorSpace:\"rec2020\"};let o=K([...e!=null?e:[],...t!=null?t:[]],s=>s.schemeIdUri===\"urn:mpeg:mpegB:cicp:TransferCharacteristics\");if(o!==void 0)switch(o.value){case\"15\":return;case\"16\":return{eotf:\"pq\"};case\"18\":return{eotf:\"hlg\"}}if(i!==void 0&&/^vp(08|09|10)/.exec(i))return So(i)}function _i(n,e,t){var i,a,o,s,u;let r=[];for(let l of n){let d=l.attributes.id!==void 0?l.attributes.id:String(l.attributes.bitrate)+(l.attributes.height!==void 0?`-${l.attributes.height}`:\"\")+(l.attributes.width!==void 0?`-${l.attributes.width}`:\"\")+(l.attributes.mimeType!==void 0?`-${l.attributes.mimeType}`:\"\")+(l.attributes.codecs!==void 0?`-${l.attributes.codecs}`:\"\");for(;r.some(_=>_.id===d);)d+=\"-dup\";let f=(a=(i=t.unsafelyBaseOnPreviousAdaptation)==null?void 0:i.getRepresentation(d))!=null?a:null,m=Bu(l,e),p=(o=l.attributes.availabilityTimeComplete)!=null?o:t.availabilityTimeComplete,g;(l.attributes.availabilityTimeOffset!==void 0||t.availabilityTimeOffset!==void 0)&&(g=((s=l.attributes.availabilityTimeOffset)!=null?s:0)+((u=t.availabilityTimeOffset)!=null?u:0));let h=H({},t,{availabilityTimeOffset:g,availabilityTimeComplete:p,unsafelyBaseOnPreviousRepresentation:f,adaptation:e,inbandEventStreams:m}),I=Ti(l,h),y;l.attributes.bitrate===void 0?(c.warn(\"DASH: No usable bitrate found in the Representation.\"),y=0):y=l.attributes.bitrate;let E=et(t.baseURLs,l.children.baseURLs),R=E.length===0?[{baseUrl:\"\",id:void 0}]:E.map(_=>({baseUrl:_.url,id:_.serviceLocation})),T={bitrate:y,cdnMetadata:R,index:I,id:d};l.children.supplementalProperties!==void 0&&K(l.children.supplementalProperties,_=>_.schemeIdUri===\"tag:dolby.com,2018:dash:EC3_ExtensionType:2018\"&&_.value===\"JOC\")&&(T.isSpatialAudio=!0);let C;l.attributes.codecs!==void 0?C=l.attributes.codecs:e.attributes.codecs!==void 0&&(C=e.attributes.codecs),C!==void 0&&(C=C===\"mp4a.40.02\"?\"mp4a.40.2\":C,T.codecs=C);let P;l.attributes.supplementalCodecs!==void 0?P=l.attributes.supplementalCodecs:e.attributes.supplementalCodecs!==void 0&&(P=e.attributes.supplementalCodecs),P!==void 0&&(T.supplementalCodecs=bo(P)),l.attributes.frameRate!==void 0?T.frameRate=l.attributes.frameRate:e.attributes.frameRate!==void 0&&(T.frameRate=e.attributes.frameRate),l.attributes.height!==void 0?T.height=l.attributes.height:e.attributes.height!==void 0&&(T.height=e.attributes.height),l.attributes.mimeType!==void 0?T.mimeType=l.attributes.mimeType:e.attributes.mimeType!==void 0&&(T.mimeType=e.attributes.mimeType),l.attributes.width!==void 0?T.width=l.attributes.width:e.attributes.width!==void 0&&(T.width=e.attributes.width);let x=e.children.contentProtections!==void 0?e.children.contentProtections:[];if(l.children.contentProtections!==void 0&&x.push(...l.children.contentProtections),x.length>0){let _=x.reduce((A,M)=>{let k;if(M.attributes.schemeIdUri!==void 0&&M.attributes.schemeIdUri.substring(0,9)===\"urn:uuid:\"&&(k=M.attributes.schemeIdUri.substring(9).replace(/-/g,\"\").toLowerCase()),M.attributes.keyId!==void 0&&M.attributes.keyId.length>0){let D={keyId:M.attributes.keyId,systemId:k};A.keyIds===void 0?A.keyIds=[D]:A.keyIds.push(D)}if(k!==void 0){let{cencPssh:D}=M.children,w=[];for(let O of D)w.push({systemId:k,data:O});if(w.length>0){let O=K(A.initData,B=>B.type===\"cenc\");O===void 0?A.initData.push({type:\"cenc\",values:w}):O.values.push(...w)}}return A},{keyIds:void 0,initData:[]});(Object.keys(_.initData).length>0||_.keyIds!==void 0&&_.keyIds.length>0)&&(T.contentProtections=_)}T.hdrInfo=Uu({adaptationProfiles:e.attributes.profiles,supplementalProperties:e.children.supplementalProperties,essentialProperties:e.children.essentialProperties,manifestProfiles:t.manifestProfiles,codecs:C}),r.push(T)}return r}function Lu(n){if(n===void 0)return!1;let e=n.schemeIdUri===\"urn:tva:metadata:cs:AudioPurposeCS:2007\"&&n.value===\"1\",t=n.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&n.value===\"description\";return e||t}function Fu(n,e){return!!(n!==void 0&&n.some(r=>r.schemeIdUri===\"urn:tva:metadata:cs:AudioPurposeCS:2007\"&&r.value===\"2\")||e!==void 0&&e.some(r=>r.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&r.value===\"caption\"))}function zu(n){return n===void 0?!1:n.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&n.value===\"sign\"}function Wu(n,e){if(Z(n.attributes.id))return n.attributes.id;let{isClosedCaption:t,isForcedSubtitle:r,isAudioDescription:i,isSignInterpreted:a,isTrickModeTrack:o,type:s}=e,u=s;return Z(n.attributes.language)&&(u+=`-${n.attributes.language}`),t===!0&&(u+=\"-cc\"),r===!0&&(u+=\"-cc\"),i===!0&&(u+=\"-ad\"),a===!0&&(u+=\"-si\"),o&&(u+=\"-trickMode\"),Z(n.attributes.contentType)&&(u+=`-${n.attributes.contentType}`),Z(n.attributes.codecs)&&(u+=`-${n.attributes.codecs}`),Z(n.attributes.mimeType)&&(u+=`-${n.attributes.mimeType}`),n.attributes.frameRate!==void 0&&(u+=`-${String(n.attributes.frameRate)}`),u}function Vu(n){if(!v(n.children.supplementalProperties)){let{supplementalProperties:e}=n.children;for(let t of e)if(t.schemeIdUri===\"urn:mpeg:dash:adaptation-set-switching:2016\"&&!v(t.value))return t.value.split(\",\").map(r=>r.trim()).filter(r=>r)}return[]}function Ei(n,e){var s,u,l,d,f,m,p;let t={video:[],audio:[],text:[]},r=[],i={},a=[];for(let g=0;g<n.length;g++){let h=n[g],I=h.children,{essentialProperties:y,roles:E,label:R}=I,T=Array.isArray(E)&&E.some(be=>be.value===\"main\")&&E.some(be=>be.schemeIdUri===\"urn:mpeg:dash:role:2011\"),C=h.children.representations,P=(s=h.attributes.availabilityTimeComplete)!=null?s:e.availabilityTimeComplete,x;(h.attributes.availabilityTimeOffset!==void 0||e.availabilityTimeOffset!==void 0)&&(x=((u=h.attributes.availabilityTimeOffset)!=null?u:0)+((l=e.availabilityTimeOffset)!=null?l:0));let _=h.attributes.mimeType,A=h.attributes.codecs,M=yi(C,Z(_)?_:null,Z(A)?A:null,v(I.roles)?null:I.roles);if(M===void 0)continue;let k=(d=h.attributes.selectionPriority)!=null?d:1,D=h.attributes.id,w=Vu(h),O=[];e.segmentTemplate!==void 0&&O.push(e.segmentTemplate),h.children.segmentTemplate!==void 0&&O.push(h.children.segmentTemplate);let B={availabilityTimeComplete:P,availabilityTimeOffset:x,baseURLs:et(e.baseURLs,I.baseURLs),manifestBoundsCalculator:e.manifestBoundsCalculator,end:e.end,isDynamic:e.isDynamic,isLastPeriod:e.isLastPeriod,manifestProfiles:e.manifestProfiles,parentSegmentTemplates:O,receivedTime:e.receivedTime,start:e.start,unsafelyBaseOnPreviousAdaptation:null},z=Array.isArray(y)?K(y,be=>be.schemeIdUri===\"http://dashif.org/guidelines/trickmode\"):void 0,q=(f=z==null?void 0:z.value)==null?void 0:f.split(\" \"),J=q!==void 0,{accessibilities:$}=I,V;E!==void 0&&E.some(be=>be.value===\"dub\")&&(V=!0);let Y;M!==\"text\"?Y=!1:Y=Fu($,E);let X;M===\"text\"&&E!==void 0&&E.some(be=>be.value===\"forced-subtitle\"||be.value===\"forced_subtitle\")&&(X=!0);let me;M!==\"audio\"?me=!1:$!==void 0&&(me=$.some(Lu));let ce;M!==\"video\"?ce=!1:$!==void 0&&(ce=$.some(zu));let de=Wu(h,{isAudioDescription:me,isForcedSubtitle:X,isClosedCaption:Y,isSignInterpreted:ce,isTrickModeTrack:J,type:M});for(;se(a,de);)de+=\"-dup\";let Ie=de;a.push(de),B.unsafelyBaseOnPreviousAdaptation=(p=(m=e.unsafelyBaseOnPreviousPeriod)==null?void 0:m.getAdaptation(de))!=null?p:null;let Jn=_i(C,h,B),pe={id:de,representations:Jn,type:M,isTrickModeTrack:J};if(v(h.attributes.language)||(pe.language=h.attributes.language),v(Y)||(pe.closedCaption=Y),v(me)||(pe.audioDescription=me),V===!0&&(pe.isDub=!0),X!==void 0&&(pe.forcedSubtitles=X),ce===!0&&(pe.isSignInterpreted=!0),R!==void 0&&(pe.label=R),q!==void 0)r.push({adaptation:pe,trickModeAttachedAdaptationIds:q});else{let be=-1;for(let Kt of w){let He=i[Kt];if(He!==void 0&&He.newID!==Ie&&se(He.adaptationSetSwitchingIDs,D)){be=ne(t[M],xt=>xt[0].id===Kt);let xe=t[M][be];if(xe!==void 0&&xe[0].audioDescription===pe.audioDescription&&xe[0].closedCaption===pe.closedCaption&&xe[0].language===pe.language){c.info('DASH Parser: merging \"switchable\" AdaptationSets',D,Kt),xe[0].representations.push(...pe.representations),xe[1]={priority:Math.max(k,xe[1].priority),isMainAdaptation:T||xe[1].isMainAdaptation,indexInMpd:Math.min(g,xe[1].indexInMpd)};break}}}be<0&&t[M].push([pe,{priority:k,isMainAdaptation:T,indexInMpd:g}])}!v(D)&&v(i[D])&&(i[D]={newID:Ie,adaptationSetSwitchingIDs:w})}let o=Ot.reduce((g,h)=>{let I=t[h];return I.length>0&&(I.sort(yo),g[h]=I.map(([y])=>y)),g},{});return t.video.sort(yo),Io(o,r),o}function yo(n,e){let t=e[1].priority-n[1].priority;return t!==0?t:n[1].isMainAdaptation!==e[1].isMainAdaptation?n[1].isMainAdaptation?-1:1:n[1].indexInMpd-e[1].indexInMpd}var qu=Ae();function Ri(n,e){var o,s,u,l;let t=[],r=Si(n,e);if(r.length!==n.length)throw new Error(\"MPD parsing error: the time information are incoherent.\");let{isDynamic:i,manifestBoundsCalculator:a}=e;!i&&!v(e.duration)&&a.setLastPosition(e.duration);for(let d=n.length-1;d>=0;d--){let f=d===n.length-1,m=n[d],p=e.xlinkInfos.get(m),g=et(e.baseURLs,m.children.baseURLs),{periodStart:h,periodDuration:I,periodEnd:y}=r[d],E;for(v(m.attributes.id)?(c.warn(\"DASH: No usable id found in the Period. Generating one.\"),E=\"gen-dash-period-\"+qu()):E=m.attributes.id;t.some(O=>O.id===E);)E+=\"-dup\";let R=p!==void 0?p.receivedTime:e.receivedTime,T=(s=(o=e.unsafelyBaseOnPreviousManifest)==null?void 0:o.getPeriod(E))!=null?s:null,C=m.attributes.availabilityTimeComplete,P=m.attributes.availabilityTimeOffset,{manifestProfiles:x}=e,{segmentTemplate:_}=m.children,A={availabilityTimeComplete:C,availabilityTimeOffset:P,baseURLs:g,manifestBoundsCalculator:a,end:y,isDynamic:i,isLastPeriod:f,manifestProfiles:x,receivedTime:R,segmentTemplate:_,start:h,unsafelyBaseOnPreviousPeriod:T},M=Ei(m.children.adaptations,A),k=((u=e.xmlNamespaces)!=null?u:[]).concat((l=m.attributes.namespaces)!=null?l:[]),D=Gu(m.children.eventStreams,h,k),w={id:E,start:h,end:y,duration:I,adaptations:M,streamEvents:D};if(t.unshift(w),!a.lastPositionIsKnown()){let O=Hu(M);if(!i)typeof O==\"number\"&&a.setLastPosition(O);else if(typeof O==\"number\"){let B=L()/1e3;a.setLastPosition(O,B)}else{let B=To(e,h);if(B!==void 0){let[z,q]=B;a.setLastPosition(z,q)}}}}if(e.isDynamic&&!a.lastPositionIsKnown()){let d=To(e,0);if(d!==void 0){let[f,m]=d;a.setLastPosition(f,m)}}return bi(t)}function To(n,e){if(v(n.clockOffset)){let t=Date.now()/1e3;if(t>=e){c.warn(\"DASH Parser: no clock synchronization mechanism found. Using the system clock instead.\");let r=t-n.availabilityStartTime,i=L()/1e3;return[r,i]}}else{let t=n.clockOffset/1e3-n.availabilityStartTime,r=L()/1e3,i=r+t;if(i>=e)return[i,r]}}function Hu(n){let e=null,t=!0,r=ar(n).filter(a=>!v(a)),i=hi(r,a=>a);for(let a of i){let o=a.representations;for(let s of o){let u=s.index.getLastAvailablePosition();u!==null&&(t=!1,typeof u==\"number\"&&(e=v(e)?u:Math.max(e,u)))}}if(v(e)){if(t)return null}else return e}function Gu(n,e,t){var i,a;let r=[];for(let o of n){let{schemeIdUri:s=\"\",timescale:u=1}=o.attributes,l=t.concat((i=o.attributes.namespaces)!=null?i:[]);for(let d of o.children.events)if(d.eventStreamData!==void 0){let f=((a=d.presentationTime)!=null?a:0)/u+e,m=d.duration===void 0?void 0:f+d.duration/u,p,g;if(!ot&&d.eventStreamData instanceof Element)p=d.eventStreamData;else try{g={namespaces:l,data:typeof d.eventStreamData==\"string\"?d.eventStreamData:Be(new Uint8Array(d.eventStreamData))}}catch(h){c.error(\"DASH: Error while parsing event-stream:\",h instanceof Error?h.message:\"Unknown error\")}r.push({start:f,end:m,id:d.id,data:{type:\"dash-event-stream\",value:{schemeIdUri:s,timescale:u,element:p,xmlData:g}}})}}return r}function Nt(n,e,t,r,i=new WeakMap){let{children:a,attributes:o}=n;if(v(e.externalClockOffset)){let u=o.type===\"dynamic\",l=K(a.utcTimings,m=>m.schemeIdUri===\"urn:mpeg:dash:utc:direct:2014\"&&!v(m.value)),d=!v(l)&&!v(l.value)?mr(l.value):void 0,f=!v(d)&&!isNaN(d)?d:void 0;if(!v(f)&&r!==!0)e.externalClockOffset=f;else if(u&&r!==!0){let m=fi(n);if(!v(m)&&m.length>0)return{type:\"needs-clock\",value:{url:m,continue:function(g){return g.success?(e.externalClockOffset=mr(g.data),Nt(n,e,t,!0)):(t.push(g.error),c.warn(\"DASH Parser: Error on fetching the clock ressource\",g.error),Nt(n,e,t,!0))}}}}}let s=[];for(let u=0;u<a.periods.length;u++){let{xlinkHref:l,xlinkActuate:d}=a.periods[u].attributes;!v(l)&&d===\"onLoad\"&&s.push({index:u,ressource:l})}return s.length===0?Ku(n,e,t,i):{type:\"needs-xlinks\",value:{xlinksUrls:s.map(({ressource:u})=>u),continue:function(l){if(l.length!==s.length)throw new Error(\"DASH parser: wrong number of loaded ressources.\");for(let d=l.length-1;d>=0;d--){let f=s[d].index,{parsed:m,warnings:p,receivedTime:g,sendingTime:h,url:I}=l[d];p.length>0&&t.push(...p);for(let y of m)i.set(y,{receivedTime:g,sendingTime:h,url:I});a.periods.splice(f,1,...m)}return Nt(n,e,t,r,i)}}}}function Ku(n,e,t,r){var D,w,O,B;let{children:i,attributes:a}=n,o=a.type===\"dynamic\",s=e.url!==void 0?[{url:e.url.substring(0,li(e.url))}]:[],u=et(s,i.baseURLs),l=gi(a,e.referenceDateTime),d=a.timeShiftBufferDepth,{externalClockOffset:f,unsafelyBaseOnPreviousManifest:m}=e,{externalClockOffset:p}=e,g=new un({availabilityStartTime:l,isDynamic:o,timeShiftBufferDepth:d,serverTimestampOffset:p}),h={availabilityStartTime:l,baseURLs:u,clockOffset:f,duration:a.duration,isDynamic:o,manifestBoundsCalculator:g,manifestProfiles:n.attributes.profiles,receivedTime:e.manifestReceivedTime,timeShiftBufferDepth:d,unsafelyBaseOnPreviousManifest:m,xlinkInfos:r,xmlNamespaces:n.attributes.namespaces},I=Ri(i.periods,h),y=a.duration,E,R,T=null,C;a.minimumUpdatePeriod!==void 0&&a.minimumUpdatePeriod>=0&&(E=a.minimumUpdatePeriod===0?U.getCurrent().DASH_FALLBACK_LIFETIME_WHEN_MINIMUM_UPDATE_PERIOD_EQUAL_0:a.minimumUpdatePeriod);let{minimumSafePosition:P,maximumSafePosition:x,maximumUnsafePosition:_}=pi(I),A=L();if(o){let z;x!==void 0?z=x:p===void 0?(c.warn(\"DASH Parser: use system clock to define maximum position\"),z=Date.now()/1e3-l):z=(L()+p)/1e3-l;let q=g.getEstimatedLiveEdge();q===void 0&&(_!==void 0?q=_:q=z),C={isLinear:!0,maximumSafePosition:z,livePosition:q,time:A},R=P,T=d!=null?d:null,T!==null&&R!==void 0&&q-R>T&&(T=q-R)}else{R=P,R===void 0&&(R=(w=(D=I[0])==null?void 0:D.start)!=null?w:0);let z=y!=null?y:1/0;if(I[I.length-1]!==void 0){let q=I[I.length-1],J=(O=q.end)!=null?O:q.duration!==void 0?q.start+q.duration:void 0;J!==void 0&&J<z&&(z=J)}x!==void 0&&x<z&&(z=x),C={isLinear:!1,maximumSafePosition:z,livePosition:void 0,time:A}}let M=!o||n.attributes.minimumUpdatePeriod===void 0&&(((B=I[I.length-1])==null?void 0:B.end)!==void 0||n.attributes.duration!==void 0);return{type:\"done\",value:{parsed:{availabilityStartTime:l,clockOffset:e.externalClockOffset,isDynamic:o,isLive:o,isLastPeriodKnown:M,periods:I,publishTime:a.publishTime,suggestedPresentationDelay:a.suggestedPresentationDelay,transportType:\"dash\",timeBounds:{minimumSafePosition:R,timeshiftDepth:T,maximumTimeData:C},lifetime:E,uris:v(e.url)?i.locations:[e.url,...i.locations]},warnings:t}}}var gr=Nt;function Ye(n,e,t){if(typeof String.prototype.startsWith==\"function\")return n.startsWith(e,t);let r=typeof t==\"number\"?Math.max(t,0):0;return n.substring(r,r+e.length)===e}var _o=[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,62,255,255,255,63,52,53,54,55,56,57,58,59,60,61,255,255,255,0,255,255,255,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,255,255,255,255,255,255,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];function hr(n){if(n>=_o.length)throw new Error(\"Unable to parse base64 string.\");let e=_o[n];if(e===255)throw new Error(\"Unable to parse base64 string.\");return e}function Ir(n){let e=n.length%4,t=n;e!==0&&(c.warn(\"base64ToBytes: base64 given miss padding\"),t+=e===3?\"=\":e===2?\"==\":\"===\");let r=t.indexOf(\"=\");if(r!==-1&&r<t.length-2)throw new Error(\"Unable to parse base64 string.\");let i=t.endsWith(\"==\")?2:t.endsWith(\"=\")?1:0,a=t.length,o=new Uint8Array(a/4*3),s;for(let u=0,l=0;u<a;u+=4,l+=3)s=hr(t.charCodeAt(u))<<18|hr(t.charCodeAt(u+1))<<12|hr(t.charCodeAt(u+2))<<6|hr(t.charCodeAt(u+3)),o[l]=s>>16,o[l+1]=s>>8&255,o[l+2]=s&255;return o.subarray(0,o.length-i)}var ju=/^P(([\\d.]*)Y)?(([\\d.]*)M)?(([\\d.]*)D)?T?(([\\d.]*)H)?(([\\d.]*)M)?(([\\d.]*)S)?/,Yu=/([0-9]+)-([0-9]+)/;function ve(n,e){return n===\"true\"?[!0,null]:n===\"false\"?[!1,null]:[!1,new Me(`\\`${e}\\` property is not a boolean value but \"${n}\"`)]}function ee(n,e){let t=parseInt(n,10);return isNaN(t)?[null,new Me(`\\`${e}\\` property is not an integer value but \"${n}\"`)]:[t,null]}function ke(n,e){if(n===\"INF\")return[1/0,null];let t=parseFloat(n);return isNaN(t)?[null,new Me(`\\`${e}\\` property is invalid: \"${n}\"`)]:[t,null]}function Pi(n,e){if(n===\"true\")return[!0,null];if(n===\"false\")return[!1,null];let t=parseInt(n,10);return isNaN(t)?[null,new Me(`\\`${e}\\` property is not a boolean nor an integer but \"${n}\"`)]:[t,null]}function br(n,e){let t=Date.parse(n);return isNaN(t)?[null,new Me(`\\`${e}\\` is in an invalid date format: \"${n}\"`)]:[new Date(Date.parse(n)).getTime()/1e3,null]}function We(n,e){if(!Z(n))return[0,new Me(`\\`${e}\\` property is empty`)];let t=ju.exec(n);return t===null?[null,new Me(`\\`${e}\\` property has an unrecognized format \"${n}\"`)]:[parseFloat(Z(t[2])?t[2]:\"0\")*365*24*60*60+parseFloat(Z(t[4])?t[4]:\"0\")*30*24*60*60+parseFloat(Z(t[6])?t[6]:\"0\")*24*60*60+parseFloat(Z(t[8])?t[8]:\"0\")*60*60+parseFloat(Z(t[10])?t[10]:\"0\")*60+parseFloat(Z(t[12])?t[12]:\"0\"),null]}function Et(n,e){let t=Yu.exec(n);return t===null?[null,new Me(`\\`${e}\\` property has an unrecognized format \"${n}\"`)]:[[+t[1],+t[2]],null]}function Eo(n,e){try{return[Ir(n),null]}catch(t){return[null,new Me(`\\`${e}\\` is not a valid base64 string: \"${n}\"`)]}}function Bt(n,e){let t=/^(\\d+)\\/(\\d+)$/.exec(n);return t!==null?[+t[1]/+t[2],null]:ke(n,e)}function ye(n){let e,t;for(let r of Object.keys(n.attributes)){let i=n.attributes[r];if(!v(i))switch(r){case\"schemeIdUri\":e=i;break;case\"value\":t=i;break}}return{schemeIdUri:e,value:t}}function fe(n,e){return function(t,{asKey:r,parser:i,dashName:a}){let[o,s]=i(t,a);s!==null&&(c.warn(s.message),e.push(s)),o!==null&&(n[r]=o)}}var Me=class n extends Error{constructor(e){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"MPDError\",this.message=e}};function mt(n){return ur(n)}function tt(n){let e=typeof n==\"string\"?n:mt(n.children),t=[];return e===null||e.length===0?[void 0,t]:[{value:e},t]}function vi(n){let e={};for(let t of Object.keys(n.attributes)){let r=n.attributes[t];if(!v(r))switch(t){case\"id\":e.id=r;break;case\"lang\":e.language=r;break;case\"contentType\":e.contentType=r;break;case\"par\":e.par=r;break}}return e}function Qu(n){let e=[],t=[];for(let r=0;r<n.length;r++){let i=n[r];if(typeof i!=\"string\"&&i.tagName===\"cenc:pssh\"){let a=mt(i.children);if(a!==null&&a.length>0){let[o,s]=Eo(a,\"cenc:pssh\");s!==null&&(c.warn(s.message),e.push(s)),o!==null&&t.push(o)}}}return[{cencPssh:t},e]}function $u(n){let e={};for(let t of Object.keys(n.attributes)){let r=n.attributes[t];if(!v(r))switch(t){case\"schemeIdUri\":e.schemeIdUri=r;break;case\"value\":e.value=r;break;case\"cenc:default_KID\":e.keyId=ln(r.replace(/-/g,\"\"))}}return e}function fn(n){let[e,t]=Qu(n.children),r=$u(n);return[{children:e,attributes:r},t]}function Ci(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"range\":r(a,{asKey:\"range\",parser:Et,dashName:\"range\"});break;case\"sourceURL\":e.media=a;break}}return[e,t]}function nt(n){let e={},t=[],r=fe(e,t),i=n.children;for(let a=0;a<i.length;a++){let o=i[a];if(typeof o!=\"string\"&&o.tagName===\"Initialization\"){let[s,u]=Ci(o);e.initialization=s,t=t.concat(u)}}for(let a of Object.keys(n.attributes)){let o=n.attributes[a];if(!v(o))switch(a){case\"timescale\":r(o,{asKey:\"timescale\",parser:ee,dashName:\"timescale\"});break;case\"presentationTimeOffset\":r(o,{asKey:\"presentationTimeOffset\",parser:ke,dashName:\"presentationTimeOffset\"});break;case\"indexRange\":r(o,{asKey:\"indexRange\",parser:Et,dashName:\"indexRange\"});break;case\"indexRangeExact\":r(o,{asKey:\"indexRangeExact\",parser:ve,dashName:\"indexRangeExact\"});break;case\"availabilityTimeOffset\":r(o,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":r(o,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break;case\"duration\":r(o,{asKey:\"duration\",parser:ee,dashName:\"duration\"});break;case\"startNumber\":r(o,{asKey:\"startNumber\",parser:ee,dashName:\"startNumber\"});break;case\"endNumber\":r(o,{asKey:\"endNumber\",parser:ee,dashName:\"endNumber\"});break}}return[e,t]}function Ai(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"media\":e.media=a;break;case\"indexRange\":r(a,{asKey:\"indexRange\",parser:Et,dashName:\"indexRange\"});break;case\"index\":e.index=a;break;case\"mediaRange\":r(a,{asKey:\"mediaRange\",parser:Et,dashName:\"mediaRange\"});break}}return[e,t]}function mn(n){let[e,t]=nt(n),r=t,i=[],a=n.children;for(let s=0;s<a.length;s++){let u=a[s];if(typeof u!=\"string\"&&u.tagName===\"SegmentURL\"){let[l,d]=Ai(u);i.push(l),r=r.concat(d)}}return[H(e,{list:i}),r]}function ki(n){let e=n.children;return function(){for(let t=e.length-1;t>=0;t--){let r=e[t];(typeof r==\"string\"||r.tagName!==\"S\")&&e.splice(t,1)}return e}}function Rt(n){let[e,t]=nt(n),r=t,i;for(let s=0;s<n.children.length;s++){let u=n.children[s];typeof u!=\"string\"&&u.tagName===\"SegmentTimeline\"&&(i=ki(u))}let a=H({},e,{duration:e.duration,timelineParser:i}),o=fe(a,r);for(let s of Object.keys(n.attributes)){let u=n.attributes[s];if(!v(u))switch(s){case\"initialization\":v(a.initialization)&&(a.initialization={media:u});break;case\"index\":a.index=u;break;case\"availabilityTimeOffset\":o(u,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":o(u,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break;case\"media\":a.media=u;break;case\"bitstreamSwitching\":o(u,{asKey:\"bitstreamSwitching\",parser:ve,dashName:\"bitstreamSwitching\"});break}}return[a,r]}function Xu(n){let e={baseURLs:[]},t=[],r=[];for(let i=0;i<n.length;i++){let a=n[i];if(typeof a!=\"string\")switch(a.tagName){case\"BaseURL\":let[o,s]=tt(a);o!==void 0&&e.baseURLs.push(o),r=r.concat(s);break;case\"InbandEventStream\":e.inbandEventStreams===void 0&&(e.inbandEventStreams=[]),e.inbandEventStreams.push(ye(a));break;case\"SegmentBase\":let[u,l]=nt(a);e.segmentBase=u,l.length>0&&(r=r.concat(l));break;case\"SegmentList\":let[d,f]=mn(a);r=r.concat(f),e.segmentList=d;break;case\"SegmentTemplate\":let[m,p]=Rt(a);r=r.concat(p),e.segmentTemplate=m;break;case\"ContentProtection\":let[g,h]=fn(a);h.length>0&&(r=r.concat(h)),g!==void 0&&t.push(g);break;case\"SupplementalProperty\":v(e.supplementalProperties)?e.supplementalProperties=[ye(a)]:e.supplementalProperties.push(ye(a));break}}return t.length>0&&(e.contentProtections=t),[e,r]}function Zu(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"audioSamplingRate\":e.audioSamplingRate=a;break;case\"bandwidth\":r(a,{asKey:\"bitrate\",parser:ee,dashName:\"bandwidth\"});break;case\"codecs\":e.codecs=a;break;case\"codingDependency\":r(a,{asKey:\"codingDependency\",parser:ve,dashName:\"codingDependency\"});break;case\"frameRate\":r(a,{asKey:\"frameRate\",parser:Bt,dashName:\"frameRate\"});break;case\"height\":r(a,{asKey:\"height\",parser:ee,dashName:\"height\"});break;case\"id\":e.id=a;break;case\"maxPlayoutRate\":r(a,{asKey:\"maxPlayoutRate\",parser:ke,dashName:\"maxPlayoutRate\"});break;case\"maximumSAPPeriod\":r(a,{asKey:\"maximumSAPPeriod\",parser:ke,dashName:\"maximumSAPPeriod\"});break;case\"mimeType\":e.mimeType=a;break;case\"profiles\":e.profiles=a;break;case\"qualityRanking\":r(a,{asKey:\"qualityRanking\",parser:ee,dashName:\"qualityRanking\"});break;case\"scte214:supplementalCodecs\":e.supplementalCodecs=a;break;case\"segmentProfiles\":e.segmentProfiles=a;break;case\"width\":r(a,{asKey:\"width\",parser:ee,dashName:\"width\"});break;case\"availabilityTimeOffset\":r(a,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":r(a,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break}}return e.bitrate===void 0&&t.push(new Me(\"No bitrate found on a Representation\")),[e,t]}function Ro(n){let[e,t]=Xu(n.children),[r,i]=Zu(n),a=t.concat(i);return[{children:e,attributes:r},a]}function Ju(n){let e={baseURLs:[],representations:[]},t=[],r=[];for(let i=0;i<n.length;i++){let a=n[i];if(typeof a!=\"string\")switch(a.tagName){case\"Accessibility\":e.accessibilities===void 0?e.accessibilities=[ye(a)]:e.accessibilities.push(ye(a));break;case\"BaseURL\":let[o,s]=tt(a);o!==void 0&&e.baseURLs.push(o),s.length>0&&(r=r.concat(s));break;case\"ContentComponent\":e.contentComponent=vi(a);break;case\"EssentialProperty\":v(e.essentialProperties)?e.essentialProperties=[ye(a)]:e.essentialProperties.push(ye(a));break;case\"InbandEventStream\":e.inbandEventStreams===void 0&&(e.inbandEventStreams=[]),e.inbandEventStreams.push(ye(a));break;case\"Label\":let u=mt(a.children);u!=null&&(e.label=u);break;case\"Representation\":let[l,d]=Ro(a);e.representations.push(l),d.length>0&&(r=r.concat(d));break;case\"Role\":v(e.roles)?e.roles=[ye(a)]:e.roles.push(ye(a));break;case\"SupplementalProperty\":v(e.supplementalProperties)?e.supplementalProperties=[ye(a)]:e.supplementalProperties.push(ye(a));break;case\"SegmentBase\":let[f,m]=nt(a);e.segmentBase=f,m.length>0&&(r=r.concat(m));break;case\"SegmentList\":let[p,g]=mn(a);e.segmentList=p,g.length>0&&(r=r.concat(g));break;case\"SegmentTemplate\":let[h,I]=Rt(a);e.segmentTemplate=h,I.length>0&&(r=r.concat(I));break;case\"ContentProtection\":let[y,E]=fn(a);E.length>0&&(r=r.concat(E)),y!==void 0&&t.push(y);break}}return t.length>0&&(e.contentProtections=t),[e,r]}function ed(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"id\":e.id=a;break;case\"group\":r(a,{asKey:\"group\",parser:ee,dashName:\"group\"});break;case\"lang\":e.language=a;break;case\"contentType\":e.contentType=a;break;case\"par\":e.par=a;break;case\"minBandwidth\":r(a,{asKey:\"minBitrate\",parser:ee,dashName:\"minBandwidth\"});break;case\"maxBandwidth\":r(a,{asKey:\"maxBitrate\",parser:ee,dashName:\"maxBandwidth\"});break;case\"minWidth\":r(a,{asKey:\"minWidth\",parser:ee,dashName:\"minWidth\"});break;case\"maxWidth\":r(a,{asKey:\"maxWidth\",parser:ee,dashName:\"maxWidth\"});break;case\"minHeight\":r(a,{asKey:\"minHeight\",parser:ee,dashName:\"minHeight\"});break;case\"maxHeight\":r(a,{asKey:\"maxHeight\",parser:ee,dashName:\"maxHeight\"});break;case\"minFrameRate\":r(a,{asKey:\"minFrameRate\",parser:Bt,dashName:\"minFrameRate\"});break;case\"maxFrameRate\":r(a,{asKey:\"maxFrameRate\",parser:Bt,dashName:\"maxFrameRate\"});break;case\"selectionPriority\":r(a,{asKey:\"selectionPriority\",parser:ee,dashName:\"selectionPriority\"});break;case\"segmentAlignment\":r(a,{asKey:\"segmentAlignment\",parser:Pi,dashName:\"segmentAlignment\"});break;case\"subsegmentAlignment\":r(a,{asKey:\"subsegmentAlignment\",parser:Pi,dashName:\"subsegmentAlignment\"});break;case\"bitstreamSwitching\":r(a,{asKey:\"bitstreamSwitching\",parser:ve,dashName:\"bitstreamSwitching\"});break;case\"audioSamplingRate\":e.audioSamplingRate=a;break;case\"codecs\":e.codecs=a;break;case\"scte214:supplementalCodecs\":e.supplementalCodecs=a;break;case\"codingDependency\":r(a,{asKey:\"codingDependency\",parser:ve,dashName:\"codingDependency\"});break;case\"frameRate\":r(a,{asKey:\"frameRate\",parser:Bt,dashName:\"frameRate\"});break;case\"height\":r(a,{asKey:\"height\",parser:ee,dashName:\"height\"});break;case\"maxPlayoutRate\":r(a,{asKey:\"maxPlayoutRate\",parser:ke,dashName:\"maxPlayoutRate\"});break;case\"maximumSAPPeriod\":r(a,{asKey:\"maximumSAPPeriod\",parser:ke,dashName:\"maximumSAPPeriod\"});break;case\"mimeType\":e.mimeType=a;break;case\"profiles\":e.profiles=a;break;case\"segmentProfiles\":e.segmentProfiles=a;break;case\"width\":r(a,{asKey:\"width\",parser:ee,dashName:\"width\"});break;case\"availabilityTimeOffset\":r(a,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":r(a,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break}}return[e,t]}function Po(n){let e=n.children,[t,r]=Ju(e),[i,a]=ed(n),o=r.concat(a);return[{children:t,attributes:i},o]}function td(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"schemeIdUri\":e.schemeIdUri=a;break;case\"value\":e.value=a;break;case\"timescale\":r(a,{asKey:\"timescale\",parser:ee,dashName:\"timescale\"});break;default:Ye(i,\"xmlns:\")&&(e.namespaces===void 0&&(e.namespaces=[]),e.namespaces.push({key:i.substring(6),value:a}));break}}return[e,t]}function vo(n,e){let[t,r]=td(n),i=[];for(let a of n.children)if(typeof a!=\"string\"&&a.tagName===\"Event\"){let o={};if(v(a.attributes.id)||(o.id=a.attributes.id),!v(a.attributes.presentationTime)){let[s,u]=ee(a.attributes.presentationTime,\"presentationTime\");u!==null&&r.push(u),s!==null&&(o.presentationTime=s)}if(!v(a.attributes.duration)){let[s,u]=ee(a.attributes.duration,\"duration\");u!==null&&r.push(u),s!==null&&(o.duration=s)}if(a.posStart<a.posEnd){let s=e.substring(a.posStart,a.posEnd);o.eventStreamData=s}i.push(o)}return[{children:{events:i},attributes:t},r]}function nd(n,e){let t=[],r=[],i,a=[],o=[];for(let s=0;s<n.length;s++){let u=n[s];if(typeof u!=\"string\")switch(u.tagName){case\"BaseURL\":let[l,d]=tt(u);l!==void 0&&t.push(l),a=a.concat(d);break;case\"AdaptationSet\":let[f,m]=Po(u);r.push(f),a=a.concat(m);break;case\"EventStream\":let[p,g]=vo(u,e);o.push(p),a=a.concat(g);break;case\"SegmentTemplate\":let[h,I]=Rt(u);i=h,I.length>0&&(a=a.concat(I));break}}return[{baseURLs:t,adaptations:r,eventStreams:o,segmentTemplate:i},a]}function rd(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"id\":e.id=a;break;case\"start\":r(a,{asKey:\"start\",parser:We,dashName:\"start\"});break;case\"duration\":r(a,{asKey:\"duration\",parser:We,dashName:\"duration\"});break;case\"bitstreamSwitching\":r(a,{asKey:\"bitstreamSwitching\",parser:ve,dashName:\"bitstreamSwitching\"});break;case\"xlink:href\":e.xlinkHref=a;break;case\"xlink:actuate\":e.xlinkActuate=a;break;default:Ye(i,\"xmlns:\")&&(e.namespaces===void 0&&(e.namespaces=[]),e.namespaces.push({key:i.substring(6),value:a}));break}}return[e,t]}function Sr(n,e){let[t,r]=nd(n.children,e),[i,a]=rd(n),o=r.concat(a);return[{children:t,attributes:i},o]}function id(n,e){let t=[],r=[],i=[],a=[],o=[];for(let s=0;s<n.length;s++){let u=n[s];if(typeof u!=\"string\")switch(u.tagName){case\"BaseURL\":let[l,d]=tt(u);l!==void 0&&t.push(l),o=o.concat(d);break;case\"Location\":r.push(mt(u.children));break;case\"Period\":let[f,m]=Sr(u,e);i.push(f),o=o.concat(m);break;case\"UTCTiming\":let p=ye(u);a.push(p);break}}return[{baseURLs:t,locations:r,periods:i,utcTimings:a},o]}function ad(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"id\":e.id=a;break;case\"profiles\":e.profiles=a;break;case\"type\":e.type=a;break;case\"availabilityStartTime\":r(a,{asKey:\"availabilityStartTime\",parser:br,dashName:\"availabilityStartTime\"});break;case\"availabilityEndTime\":r(a,{asKey:\"availabilityEndTime\",parser:br,dashName:\"availabilityEndTime\"});break;case\"publishTime\":r(a,{asKey:\"publishTime\",parser:br,dashName:\"publishTime\"});break;case\"mediaPresentationDuration\":r(a,{asKey:\"duration\",parser:We,dashName:\"mediaPresentationDuration\"});break;case\"minimumUpdatePeriod\":r(a,{asKey:\"minimumUpdatePeriod\",parser:We,dashName:\"minimumUpdatePeriod\"});break;case\"minBufferTime\":r(a,{asKey:\"minBufferTime\",parser:We,dashName:\"minBufferTime\"});break;case\"timeShiftBufferDepth\":r(a,{asKey:\"timeShiftBufferDepth\",parser:We,dashName:\"timeShiftBufferDepth\"});break;case\"suggestedPresentationDelay\":r(a,{asKey:\"suggestedPresentationDelay\",parser:We,dashName:\"suggestedPresentationDelay\"});break;case\"maxSegmentDuration\":r(a,{asKey:\"maxSegmentDuration\",parser:We,dashName:\"maxSegmentDuration\"});break;case\"maxSubsegmentDuration\":r(a,{asKey:\"maxSubsegmentDuration\",parser:We,dashName:\"maxSubsegmentDuration\"});break;default:Ye(i,\"xmlns:\")&&(e.namespaces===void 0&&(e.namespaces=[]),e.namespaces.push({key:i.substring(6),value:a}));break}}return[e,t]}function Co(n,e){let[t,r]=id(n.children,e),[i,a]=ad(n),o=r.concat(a);return[{children:t,attributes:i},o]}function xi(n,e){let t=ni(n),r=t[t.length-1];if(r===void 0||typeof r==\"string\"||r.tagName!==\"MPD\")throw new Error(\"DASH Parser: document root should be MPD\");let[i,a]=Co(r,n),o=gr(i,e,a);return s(o);function s(u){if(u.type===\"done\")return u;if(u.type===\"needs-clock\")return{type:\"needs-resources\",value:{urls:[u.value.url],format:\"string\",continue(l){if(l.length!==1)throw new Error(\"DASH parser: wrong number of loaded ressources.\");let d=u.value.continue(l[0].responseData);return s(d)}}};if(u.type===\"needs-xlinks\")return{type:\"needs-resources\",value:{urls:u.value.xlinksUrls,format:\"string\",continue(l){let d=[];for(let m=0;m<l.length;m++){let{responseData:p,receivedTime:g,sendingTime:h,url:I}=l[m];if(!p.success)throw p.error;let y=\"<root>\"+p.data+\"</root>\",E=ni(y),R=E[E.length-1];if(R===void 0||typeof R==\"string\")throw new Error(\"DASH parser: Invalid external ressources\");let T=R.children,C=[],P=[];for(let x=0;x<T.length;x++){let _=T[x];if(typeof _==\"string\"||_.tagName!==\"Period\")continue;let[A,M]=Sr(_,y);P.push(...M),C.push(A)}d.push({url:I,receivedTime:g,sendingTime:h,parsed:C,warnings:P})}let f=u.value.continue(d);return s(f)}}};ze(u)}}var Ao=xi;var od=typeof WebAssembly==\"object\"&&typeof WebAssembly.instantiate==\"function\",ko=od;function F(n,e,t,r){let i=new Uint8Array(e,t,r);return n.decode(i)}function Mi(n){return n===1/0?!0:n===-1/0?!1:n}function ct(n,e){let t=new TextDecoder;return function(i,a,o){i===64&&(n.value=F(t,e.buffer,a,o))}}function xo(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 60:n.language=F(t,e.buffer,a,o);break;case 61:n.contentType=F(t,e.buffer,a,o);break;case 62:n.par=F(t,e.buffer,a,o);break}}}function yr(n,e){let t=n.attributes,r=n.children,i=new TextDecoder;return function(o,s,u){switch(o){case 16:t.schemeIdUri=F(i,e.buffer,s,u);break;case 13:t.value=F(i,e.buffer,s,u);break;case 14:let l=F(i,e.buffer,s,u);t.keyId=ln(l.replace(/-/g,\"\"));break;case 15:try{let d=F(i,e.buffer,s,u);r.cencPssh.push(Ir(d))}catch(d){}break}}}function Ve(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 16:n.schemeIdUri=F(t,e.buffer,a,o);break;case 17:n.value=F(t,e.buffer,a,o);break}}}function Ut(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 29:{let s=new DataView(e.buffer);n.initialization===void 0&&(n.initialization={}),n.initialization.range=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 67:n.initialization===void 0&&(n.initialization={}),n.initialization.media=F(t,e.buffer,a,o);break;case 43:{let s=new DataView(e.buffer);n.availabilityTimeOffset=s.getFloat64(a,!0);break}case 22:{n.availabilityTimeComplete=new DataView(e.buffer).getUint8(0)===0;break}case 24:{let s=new DataView(e.buffer);n.presentationTimeOffset=s.getFloat64(a,!0);break}case 27:{let s=new DataView(e.buffer);n.timescale=s.getFloat64(a,!0);break}case 31:{let s=new DataView(e.buffer);n.indexRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 23:{n.indexRangeExact=new DataView(e.buffer).getUint8(0)===0;break}case 1:{let s=new DataView(e.buffer);n.duration=s.getFloat64(a,!0);break}case 20:{let s=new DataView(e.buffer);n.startNumber=s.getFloat64(a,!0);break}case 76:{let s=new DataView(e.buffer);n.endNumber=s.getFloat64(a,!0);break}}}}function Mo(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 28:n.index=F(t,e.buffer,a,o);break;case 31:{let s=new DataView(e.buffer);n.indexRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 30:n.media=F(t,e.buffer,a,o);break;case 18:{let s=new DataView(e.buffer);n.mediaRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}}}}function Tr(n,e,t){return function(i){switch(i){case 20:{let a={};n.list===void 0&&(n.list=[]),n.list.push(a);let o=Mo(a,e);t.pushParsers(i,N,o);break}default:t.pushParsers(i,N,N);break}}}function Lt(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 19:{let s=new DataView(e.buffer);n.timeline=[];let u=a;for(let l=0;l<o/24;l++)n.timeline.push({start:s.getFloat64(u,!0),duration:s.getFloat64(u+8,!0),repeatCount:s.getFloat64(u+16,!0)}),u+=24;break}case 67:n.initialization={media:F(t,e.buffer,a,o)};break;case 28:n.index=F(t,e.buffer,a,o);break;case 43:{let s=new DataView(e.buffer);n.availabilityTimeOffset=s.getFloat64(a,!0);break}case 22:{n.availabilityTimeComplete=new DataView(e.buffer).getUint8(0)===0;break}case 24:{let s=new DataView(e.buffer);n.presentationTimeOffset=s.getFloat64(a,!0);break}case 27:{let s=new DataView(e.buffer);n.timescale=s.getFloat64(a,!0);break}case 31:{let s=new DataView(e.buffer);n.indexRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 23:{n.indexRangeExact=new DataView(e.buffer).getUint8(0)===0;break}case 30:n.media=F(t,e.buffer,a,o);break;case 32:{n.bitstreamSwitching=new DataView(e.buffer).getUint8(0)===0;break}case 1:{let s=new DataView(e.buffer);n.duration=s.getFloat64(a,!0);break}case 20:{let s=new DataView(e.buffer);n.startNumber=s.getFloat64(a,!0);break}case 76:{let s=new DataView(e.buffer);n.endNumber=s.getFloat64(a,!0);break}}}}function Oo(n,e,t){return function(i){switch(i){case 15:{let a={value:\"\",attributes:{}};n.baseURLs.push(a),t.pushParsers(i,N,ct(a,e));break}case 10:{let a={children:{cencPssh:[]},attributes:{}};n.contentProtections===void 0&&(n.contentProtections=[]),n.contentProtections.push(a);let o=yr(a,e);t.pushParsers(i,N,o);break}case 19:{let a={};n.inbandEventStreams===void 0&&(n.inbandEventStreams=[]),n.inbandEventStreams.push(a),t.pushParsers(i,N,Ve(a,e));break}case 13:{let a={};n.supplementalProperties===void 0&&(n.supplementalProperties=[]),n.supplementalProperties.push(a);let o=Ve(a,e);t.pushParsers(i,N,o);break}case 17:{let a={};n.segmentBase=a;let o=Ut(a,e);t.pushParsers(i,N,o);break}case 18:{let a={list:[]};n.segmentList=a;let o=Tr(a,e,t),s=Ut(a,e);t.pushParsers(i,o,s);break}case 16:{let a={};n.segmentTemplate=a,t.pushParsers(i,N,Lt(a,e));break}default:t.pushParsers(i,N,N);break}}}function wo(n,e){let t=new TextDecoder;return function(i,a,o){let s=new DataView(e.buffer);switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 3:n.audioSamplingRate=F(t,e.buffer,a,o);break;case 63:n.bitrate=s.getFloat64(a,!0);break;case 4:n.codecs=F(t,e.buffer,a,o);break;case 77:n.supplementalCodecs=F(t,e.buffer,a,o);break;case 5:n.codingDependency=new DataView(e.buffer).getUint8(0)===0;break;case 6:n.frameRate=s.getFloat64(a,!0);break;case 7:n.height=s.getFloat64(a,!0);break;case 8:n.width=s.getFloat64(a,!0);break;case 9:n.maxPlayoutRate=s.getFloat64(a,!0);break;case 10:n.maximumSAPPeriod=s.getFloat64(a,!0);break;case 11:n.mimeType=F(t,e.buffer,a,o);break;case 2:n.profiles=F(t,e.buffer,a,o);break;case 65:n.qualityRanking=s.getFloat64(a,!0);break;case 12:n.segmentProfiles=F(t,e.buffer,a,o);break;case 43:n.availabilityTimeOffset=s.getFloat64(a,!0);break;case 22:n.availabilityTimeComplete=s.getUint8(0)===0;break}}}function Do(n,e,t){return function(i){switch(i){case 8:{let a={};n.accessibilities===void 0&&(n.accessibilities=[]),n.accessibilities.push(a);let o=Ve(a,e);t.pushParsers(i,N,o);break}case 15:{let a={value:\"\",attributes:{}};n.baseURLs.push(a);let o=ct(a,e);t.pushParsers(i,N,o);break}case 9:{let a={};n.contentComponent=a,t.pushParsers(i,N,xo(a,e));break}case 10:{let a={children:{cencPssh:[]},attributes:{}};n.contentProtections===void 0&&(n.contentProtections=[]),n.contentProtections.push(a);let o=yr(a,e);t.pushParsers(i,N,o);break}case 11:{let a={};n.essentialProperties===void 0&&(n.essentialProperties=[]),n.essentialProperties.push(a);let o=N,s=Ve(a,e);t.pushParsers(i,o,s);break}case 19:{let a={};n.inbandEventStreams===void 0&&(n.inbandEventStreams=[]),n.inbandEventStreams.push(a);let o=N,s=Ve(a,e);t.pushParsers(i,o,s);break}case 7:{let a={children:{baseURLs:[]},attributes:{}};n.representations.push(a);let o=Oo(a.children,e,t),s=wo(a.attributes,e);t.pushParsers(i,o,s);break}case 12:{let a={};n.roles===void 0&&(n.roles=[]),n.roles.push(a);let o=Ve(a,e);t.pushParsers(i,N,o);break}case 13:{let a={};n.supplementalProperties===void 0&&(n.supplementalProperties=[]),n.supplementalProperties.push(a);let o=Ve(a,e);t.pushParsers(i,N,o);break}case 17:{let a={};n.segmentBase=a;let o=Ut(a,e);t.pushParsers(i,N,o);break}case 18:{let a={list:[]};n.segmentList=a;let o=Tr(a,e,t),s=Ut(a,e);t.pushParsers(i,o,s);break}case 16:{let a={};n.segmentTemplate=a,t.pushParsers(i,N,Lt(a,e));break}default:t.pushParsers(i,N,N);break}}}function No(n,e){let t=new TextDecoder;return function(i,a,o){let s=new DataView(e.buffer);switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 48:n.group=s.getFloat64(a,!0);break;case 60:n.language=F(t,e.buffer,a,o);break;case 61:n.contentType=F(t,e.buffer,a,o);break;case 62:n.par=F(t,e.buffer,a,o);break;case 53:n.minBitrate=s.getFloat64(a,!0);break;case 49:n.maxBitrate=s.getFloat64(a,!0);break;case 56:n.minWidth=s.getFloat64(a,!0);break;case 52:n.maxWidth=s.getFloat64(a,!0);break;case 55:n.minHeight=s.getFloat64(a,!0);break;case 51:n.maxHeight=s.getFloat64(a,!0);break;case 54:n.minFrameRate=s.getFloat64(a,!0);break;case 50:n.maxFrameRate=s.getFloat64(a,!0);break;case 57:n.selectionPriority=s.getFloat64(a,!0);break;case 58:n.segmentAlignment=Mi(s.getFloat64(a,!0));break;case 59:n.subsegmentAlignment=Mi(s.getFloat64(a,!0));break;case 32:n.bitstreamSwitching=s.getFloat64(a,!0)!==0;break;case 3:n.audioSamplingRate=F(t,e.buffer,a,o);break;case 4:n.codecs=F(t,e.buffer,a,o);break;case 77:n.supplementalCodecs=F(t,e.buffer,a,o);break;case 2:n.profiles=F(t,e.buffer,a,o);break;case 12:n.segmentProfiles=F(t,e.buffer,a,o);break;case 11:n.mimeType=F(t,e.buffer,a,o);break;case 5:n.codingDependency=s.getFloat64(a,!0)!==0;break;case 6:n.frameRate=s.getFloat64(a,!0);break;case 7:n.height=s.getFloat64(a,!0);break;case 8:n.width=s.getFloat64(a,!0);break;case 9:n.maxPlayoutRate=s.getFloat64(a,!0);break;case 10:n.maximumSAPPeriod=s.getFloat64(a,!0);break;case 43:n.availabilityTimeOffset=s.getFloat64(a,!0);break;case 22:n.availabilityTimeComplete=s.getUint8(0)===0;break;case 71:let u=F(t,e.buffer,a,o);n.label=u;break}}}function Bo(n,e,t,r){return function(a){switch(a){case 6:{let o={};n.events.push(o);let s=sd(o,e,r);t.pushParsers(a,N,s);break}default:t.pushParsers(a,N,N);break}}}function Uo(n,e){let t=new TextDecoder;return function(i,a,o){let s=new DataView(e.buffer);switch(i){case 16:n.schemeIdUri=F(t,e.buffer,a,o);break;case 17:n.value=F(t,e.buffer,a,o);break;case 27:n.timescale=s.getFloat64(a,!0);break;case 70:let u={key:\"\",value:\"\"},l=a,d=s.getUint32(l);l+=4,u.key=F(t,e.buffer,l,d),l+=d;let f=s.getUint32(l);l+=4,u.value=F(t,e.buffer,l,f),n.namespaces===void 0?n.namespaces=[u]:n.namespaces.push(u);break}}}function sd(n,e,t){let r=new TextDecoder;return function(a,o,s){let u=new DataView(e.buffer);switch(a){case 25:n.presentationTime=u.getFloat64(o,!0);break;case 1:n.duration=u.getFloat64(o,!0);break;case 0:n.id=F(r,e.buffer,o,s);break;case 69:let l=u.getFloat64(o,!0),d=u.getFloat64(o+8,!0);n.eventStreamData=t.slice(l,d);break}}}function _r(n,e,t,r){return function(a){switch(a){case 4:{let o={children:{baseURLs:[],representations:[]},attributes:{}};n.adaptations.push(o);let s=Do(o.children,e,t),u=No(o.attributes,e);t.pushParsers(a,s,u);break}case 15:{let o={value:\"\",attributes:{}};n.baseURLs.push(o);let s=N,u=ct(o,e);t.pushParsers(a,s,u);break}case 5:{let o={children:{events:[]},attributes:{}};n.eventStreams.push(o);let s=Bo(o.children,e,t,r),u=Uo(o.attributes,e);t.pushParsers(a,s,u);break}case 16:{let o={};n.segmentTemplate=o,t.pushParsers(a,N,Lt(o,e));break}default:t.pushParsers(a,N,N);break}}}function Er(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 45:n.start=new DataView(e.buffer).getFloat64(a,!0);break;case 1:n.duration=new DataView(e.buffer).getFloat64(a,!0);break;case 32:n.bitstreamSwitching=new DataView(e.buffer).getUint8(0)===0;break;case 46:n.xlinkHref=F(t,e.buffer,a,o);break;case 47:n.xlinkActuate=F(t,e.buffer,a,o);break;case 43:n.availabilityTimeOffset=new DataView(e.buffer).getFloat64(a,!0);break;case 22:n.availabilityTimeComplete=new DataView(e.buffer).getUint8(0)===0;break;case 70:let s={key:\"\",value:\"\"},u=new DataView(e.buffer),l=a,d=u.getUint32(l);l+=4,s.key=F(t,e.buffer,l,d),l+=d;let f=u.getUint32(l);l+=4,s.value=F(t,e.buffer,l,f),n.namespaces===void 0?n.namespaces=[s]:n.namespaces.push(s);break}}}function Lo(n,e,t,r){return function(a){switch(a){case 15:{let o={value:\"\",attributes:{}};n.baseURLs.push(o);let s=N,u=ct(o,e);t.pushParsers(a,s,u);break}case 2:{let o={children:{adaptations:[],baseURLs:[],eventStreams:[]},attributes:{}};n.periods.push(o);let s=_r(o.children,e,t,r),u=Er(o.attributes,e);t.pushParsers(a,s,u);break}case 3:{let o={};n.utcTimings.push(o);let s=N,u=Ve(o,e);t.pushParsers(a,s,u);break}default:t.pushParsers(a,N,N);break}}}function Fo(n,e,t){let r,i=new TextDecoder;return function(o,s,u){switch(o){case 0:e.id=F(i,t.buffer,s,u);break;case 2:e.profiles=F(i,t.buffer,s,u);break;case 33:e.type=F(i,t.buffer,s,u);break;case 34:let l=F(i,t.buffer,s,u);e.availabilityStartTime=new Date(l).getTime()/1e3;break;case 35:let d=F(i,t.buffer,s,u);e.availabilityEndTime=new Date(d).getTime()/1e3;break;case 36:let f=F(i,t.buffer,s,u);e.publishTime=new Date(f).getTime()/1e3;break;case 68:r=new DataView(t.buffer),e.duration=r.getFloat64(s,!0);break;case 37:r=new DataView(t.buffer),e.minimumUpdatePeriod=r.getFloat64(s,!0);break;case 38:r=new DataView(t.buffer),e.minBufferTime=r.getFloat64(s,!0);break;case 39:r=new DataView(t.buffer),e.timeShiftBufferDepth=r.getFloat64(s,!0);break;case 40:r=new DataView(t.buffer),e.suggestedPresentationDelay=r.getFloat64(s,!0);break;case 41:r=new DataView(t.buffer),e.maxSegmentDuration=r.getFloat64(s,!0);break;case 42:r=new DataView(t.buffer),e.maxSubsegmentDuration=r.getFloat64(s,!0);break;case 66:let m=F(i,t.buffer,s,u);n.locations.push(m);break;case 70:let p={key:\"\",value:\"\"};r=new DataView(t.buffer);let g=s,h=r.getUint32(g);g+=4,p.key=F(i,t.buffer,g,h),g+=h;let I=r.getUint32(g);g+=4,p.value=F(i,t.buffer,g,I),e.namespaces===void 0?e.namespaces=[p]:e.namespaces.push(p);break}}}function Oi(n,e,t,r){return function(a){switch(a){case 1:n.mpd={children:{baseURLs:[],locations:[],periods:[],utcTimings:[]},attributes:{}};let o=Lo(n.mpd.children,e,t,r),s=Fo(n.mpd.children,n.mpd.attributes,e);t.pushParsers(a,o,s);break;default:t.pushParsers(a,N,N);break}}}function zo(n,e,t,r){return function(a){switch(a){case 2:{let o={children:{adaptations:[],baseURLs:[],eventStreams:[]},attributes:{}};n.periods.push(o);let s=_r(o.children,e,t,r),u=Er(o.attributes,e);t.pushParsers(a,s,u);break}default:t.pushParsers(a,N,N);break}}}var cn=class{constructor(){this._currentNodeId=null,this.childrenParser=N,this.attributeParser=N,this._stack=[{nodeId:null,children:N,attribute:N}]}pushParsers(e,t,r){this._currentNodeId=e,this.childrenParser=t,this.attributeParser=r,this._stack.push({nodeId:e,attribute:r,children:t})}popIfCurrent(e){if(this._currentNodeId!==e)return;this._stack.pop();let{nodeId:t,children:r,attribute:i}=this._stack[this._stack.length-1];this._currentNodeId=t,this.attributeParser=i,this.childrenParser=r}reset(){this.childrenParser=N,this.attributeParser=N,this._stack=[{nodeId:null,children:N,attribute:N}]}};var ud=15e3,pn=class{constructor(){this._parsersStack=new cn,this._instance=null,this._mpdData=null,this._linearMemory=null,this.status=\"uninitialized\",this._initProm=null,this._warnings=[],this._isParsing=!1}waitForInitialization(){var e;return(e=this._initProm)!=null?e:Promise.reject(\"No initialization performed yet.\")}async initialize(e){if(this.status!==\"uninitialized\")return Promise.reject(new Error(\"DashWasmParser already initialized.\"));if(!this.isCompatible())return this.status=\"failure\",Promise.reject(new Error(\"Target not compatible with WebAssembly.\"));this.status=\"initializing\";let t=this._parsersStack,r=new TextDecoder,i=this,a={env:{memoryBase:0,tableBase:0,memory:new WebAssembly.Memory({initial:10}),table:new WebAssembly.Table({initial:1,element:\"anyfunc\"}),onTagOpen:l,onCustomEvent:m,onAttribute:f,readNext:p,onTagClose:d}},o=null,s;typeof e.wasmUrl==\"string\"?s=fetch(e.wasmUrl):(o=URL.createObjectURL(new Blob([e.wasmUrl],{type:\"application/wasm\"})),s=fetch(o));let u=typeof WebAssembly.instantiateStreaming==\"function\"?WebAssembly.instantiateStreaming(s,a):Promise.reject(\"`WebAssembly.instantiateStreaming` API not available\");return this._initProm=u.catch(async g=>{o!==null&&(URL.revokeObjectURL(o),o=null),c.warn(\"Unable to call `instantiateStreaming` on WASM\",g instanceof Error?g:\"\");let h=await s;if(h.status<200||h.status>=300)throw new Error(\"WebAssembly request failed. status: \"+String(h.status));let I=await h.arrayBuffer();return WebAssembly.instantiate(I,a)}).then(g=>{o!==null&&(URL.revokeObjectURL(o),o=null),this._instance=g,this._linearMemory=this._instance.instance.exports.memory,this.status=\"initialized\"}).catch(g=>{let h=g instanceof Error?g.toString():\"Unknown error\";throw c.warn(\"DW: Could not create DASH-WASM parser:\",h),this.status=\"failure\",g}),this._initProm;function l(g){return t.childrenParser(g)}function d(g){return t.popIfCurrent(g)}function f(g,h,I){return t.attributeParser(g,h,I)}function m(g,h,I){let y=i._linearMemory,E=new Uint8Array(y.buffer,h,I);if(g===1){let R=r.decode(E);c.warn(\"WASM Error Event:\",R),i._warnings.push(new Error(R))}else if(g===0){let R=r.decode(E);c.warn(\"WASM Log Event:\",R)}}function p(g,h){if(i._mpdData===null)throw new Error(\"DashWasmParser Error: No MPD to read.\");let I=i._linearMemory,{mpd:y,cursor:E}=i._mpdData,R=Math.min(h,ud,y.byteLength-E);return new Uint8Array(I.buffer,g,R).set(new Uint8Array(y,E,R)),i._mpdData.cursor+=R,R}}runWasmParser(e,t){let[r,i]=this._parseMpd(e);if(r===null)throw new Error(\"DASH Parser: Unknown error while parsing the MPD\");let a=gr(r,t,i);return this._processParserReturnValue(a)}isCompatible(){return ko&&typeof Ee.TextDecoder==\"function\"}_parseMpd(e){var s;if(this._instance===null)throw new Error(\"DashWasmParser not initialized\");if(this._isParsing)throw new Error(\"Parsing operation already pending.\");this._isParsing=!0,this._mpdData={mpd:e,cursor:0};let t={},r=this._linearMemory,i=Oi(t,r,this._parsersStack,e);this._parsersStack.pushParsers(null,i,N),this._warnings=[];try{this._instance.instance.exports.parse()}catch(u){throw this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,u}let a=(s=t.mpd)!=null?s:null,o=this._warnings;return this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,[a,o]}_parseXlink(e){if(this._instance===null)throw new Error(\"DashWasmParser not initialized\");if(this._isParsing)throw new Error(\"Parsing operation already pending.\");this._isParsing=!0,this._mpdData={mpd:e,cursor:0};let t={periods:[]},r=this._linearMemory,i=zo(t,r,this._parsersStack,e);this._parsersStack.pushParsers(null,i,N),this._warnings=[];try{this._instance.instance.exports.parse()}catch(s){throw this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,s}let{periods:a}=t,o=this._warnings;return this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,[a,o]}_processParserReturnValue(e){if(e.type===\"done\")return e;if(e.type===\"needs-clock\"){let t=r=>{if(r.length!==1)throw new Error(\"DASH parser: wrong number of loaded ressources.\");let i=e.value.continue(r[0].responseData);return this._processParserReturnValue(i)};return{type:\"needs-resources\",value:{urls:[e.value.url],format:\"string\",continue:t}}}else if(e.type===\"needs-xlinks\"){let t=r=>{let i=[];for(let o=0;o<r.length;o++){let{responseData:s,receivedTime:u,sendingTime:l,url:d}=r[o];if(!s.success)throw s.error;let[f,m]=this._parseXlink(s.data);i.push({url:d,receivedTime:u,sendingTime:l,parsed:f,warnings:m})}let a=e.value.continue(i);return this._processParserReturnValue(a)};return{type:\"needs-resources\",value:{urls:e.value.xlinksUrls,format:\"arraybuffer\",continue:t}}}else ze(e)}};var Wo=pn;var Pt=class{constructor(e,t){this._last=e,this._wanted=t}serialize(){return[this._last,this._wanted]}getPolled(){return this._last}getWanted(){var e;return(e=this._wanted)!=null?e:this._last}forceWantedPosition(e){this._wanted=e}isAwaitingFuturePosition(){return this._wanted!==null}};function Rr(n,e,t){let r=e(n.getReference(),t);return{getCurrentTime(){return n.getCurrentTime()},getReadyState(){return n.getReadyState()},getPlaybackRate(){return n.getPlaybackRate()},getIsPaused(){return n.getIsPaused()},getReference(){return r},listen(i,a){var o;t.isCancelled()||((o=a==null?void 0:a.clearSignal)==null?void 0:o.isCancelled())===!0||r.onUpdate(i,{clearSignal:a==null?void 0:a.clearSignal,emitCurrentValue:a==null?void 0:a.includeLastObservation})},deriveReadOnlyObserver(i){return Rr(this,i,t)}}}var gn=class{constructor(e,t,r,i){this._src=e,this._contentId=t,this._messageSender=r,this._cancelSignal=i}getCurrentTime(){}getReadyState(){}getIsPaused(){}getReference(){return this._src}setPlaybackRate(e){this._messageSender({type:\"update-playback-rate\",contentId:this._contentId,value:e})}getPlaybackRate(){}listen(e,t){var r;this._cancelSignal.isCancelled()||((r=t==null?void 0:t.clearSignal)==null?void 0:r.isCancelled())===!0||this._src.onUpdate(e,{clearSignal:t==null?void 0:t.clearSignal,emitCurrentValue:t==null?void 0:t.includeLastObservation})}deriveReadOnlyObserver(e){return Rr(this,e,this._cancelSignal)}};function wi(n,e){return(t,r,i)=>new Promise((a,o)=>{let s=Date.now()-L(),u=!1,m={reject:h=>{var R,T;if(u||i.isCancelled())return;u=!0,i.deregister(g);let I=h,y=(R=I==null?void 0:I.message)!=null?R:\"Unknown error when fetching the Manifest through a custom manifestLoader.\",E=new Ge(y,(T=I==null?void 0:I.canRetry)!=null?T:!1,I==null?void 0:I.xhr);o(E)},resolve:h=>{if(u||i.isCancelled())return;u=!0,i.deregister(g);let I=h.receivingTime!==void 0?h.receivingTime-s:void 0,y=h.sendingTime!==void 0?h.sendingTime-s:void 0;a({responseData:h.data,size:h.size,requestDuration:h.duration,url:h.url,receivedTime:I,sendingTime:y})},fallback:()=>{u||i.isCancelled()||(u=!0,i.deregister(g),e(t,r,i).then(a,o))}},p=n({url:t,timeout:r.timeout},m);i.register(g);function g(h){u||(u=!0,typeof p==\"function\"&&p(),o(h))}})}function dd(n){return function(t,r,i){if(t===void 0)throw new Error(\"Cannot perform HTTP(s) request. URL not known\");switch(n){case\"arraybuffer\":return le({url:t,responseType:\"arraybuffer\",timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:i});case\"text\":return le({url:t,responseType:\"text\",timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:i});case\"document\":return le({url:t,responseType:\"document\",timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:i});default:ze(n)}}}function Di({customManifestLoader:n},e){let t=dd(e);return typeof n!=\"function\"?t:wi(n,t)}function Ni(n){let{referenceDateTime:e}=n,t=n.serverSyncInfos!==void 0?n.serverSyncInfos.serverTimestamp-n.serverSyncInfos.clientTime:void 0;return function(i,a,o,s,u){var E;let{responseData:l}=i,d=a.externalClockOffset,f=(E=i.url)!=null?E:a.originalUrl,m=t!=null?t:d,g={unsafelyBaseOnPreviousManifest:a.unsafeMode?a.previousManifest:null,url:f,referenceDateTime:e,externalClockOffset:m},h=ae.dashParsers;if(h.wasm===null||h.wasm.status===\"uninitialized\"||h.wasm.status===\"failure\")return c.debug(\"DASH: WASM MPD Parser not initialized. Running JS one.\"),I();{let R=pd(l);if(!gd(R))return c.info(\"DASH: MPD doesn't seem to be UTF-8-encoded. Running JS parser instead of the WASM one.\"),I();if(h.wasm.status===\"initialized\"){c.debug(\"DASH: Running WASM MPD Parser.\");let T=h.wasm.runWasmParser(R,g);return y(T)}else return c.debug(\"DASH: Awaiting WASM initialization before parsing the MPD.\"),h.wasm.waitForInitialization().catch(()=>{}).then(()=>{if(h.wasm===null||h.wasm.status!==\"initialized\")return c.warn(\"DASH: WASM MPD parser initialization failed. Running JS parser instead\"),I();c.debug(\"DASH: Running WASM MPD Parser.\");let C=h.wasm.runWasmParser(R,g);return y(C)})}function I(){if(h.fastJs!==null){let R=md(l),T=h.fastJs(R,g);return y(T)}else if(h.native!==null){let R=cd(l),T=h.native(R,g);return y(T)}else throw new Error(\"No MPD parser is imported\")}function y(R){if(R.type===\"done\"){if(R.value.warnings.length>0&&o(R.value.warnings),s.isCancelled())return Promise.reject(s.cancellationError);let P=[];return{manifest:new wt(R.value.parsed,n,P),url:f,warnings:P}}let{value:T}=R,C=T.urls.map(P=>u(()=>{let x=U.getCurrent().DEFAULT_REQUEST_TIMEOUT,_=U.getCurrent().DEFAULT_CONNECTION_TIMEOUT;return T.format===\"string\"?le({url:P,responseType:\"text\",timeout:x,connectionTimeout:_,cancelSignal:s}):le({url:P,responseType:\"arraybuffer\",timeout:x,connectionTimeout:_,cancelSignal:s})}).then(x=>{if(T.format===\"string\"){if(typeof x.responseData!=\"string\")throw new Error(\"External DASH resources should have been a string\");return H(x,{responseData:{success:!0,data:x.responseData}})}else{if(!(x.responseData instanceof ArrayBuffer))throw new Error(\"External DASH resources should have been ArrayBuffers\");return H(x,{responseData:{success:!0,data:x.responseData}})}},x=>{let _=ge(x,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"An unknown error occured when parsing ressources.\"});return H({},{size:void 0,requestDuration:void 0,responseData:{success:!1,error:_}})}));return Promise.all(C).then(P=>T.format===\"string\"?(ld(P),y(T.continue(P))):(fd(P),y(T.continue(P))))}}}function ld(n){b.CURRENT_ENV!==b.PRODUCTION&&n.forEach(e=>{let{responseData:t}=e;if(!(t.success&&typeof t.data==\"string\")&&t.success)throw new Error(\"Invalid data given to the LoadedRessource\")})}function fd(n){b.CURRENT_ENV!==b.PRODUCTION&&n.forEach(e=>{let{responseData:t}=e;if(!(t.success&&t.data instanceof ArrayBuffer)&&t.success)throw new Error(\"Invalid data given to the LoadedRessource\")})}function md(n){if(n instanceof ArrayBuffer)return Be(new Uint8Array(n));if(typeof n==\"string\")return n;if(n instanceof Document)return n.documentElement.outerHTML;throw new Error(\"DASH Manifest Parser: Unrecognized Manifest format\")}function cd(n){if(n instanceof ArrayBuffer)return new DOMParser().parseFromString(Be(new Uint8Array(n)),\"text/xml\");if(typeof n==\"string\")return new DOMParser().parseFromString(n,\"text/xml\");if(n instanceof Document)return n;throw new Error(\"DASH Manifest Parser: Unrecognized Manifest format\")}function pd(n){if(n instanceof ArrayBuffer)return n;if(typeof n==\"string\")return dn(n).buffer;if(n instanceof Document)return dn(n.documentElement.innerHTML).buffer;throw new Error(\"DASH Manifest Parser: Unrecognized Manifest format\")}function gd(n){let e=new DataView(n);return e.getUint16(0)===61371&&e.getUint8(2)===191?!0:!(e.getUint16(0)===65279||e.getUint16(0)===65534)}function Oe([n,e]){return e===1/0?`bytes=${n}-`:`bytes=${n}-${e}`}function qe(n,e){if(n===\"audio\"||n===\"video\")return e===\"video/mp4\"||e===\"audio/mp4\"?\"mp4\":e===\"video/webm\"||e===\"audio/webm\"?\"webm\":void 0;if(n===\"text\")return e===\"application/mp4\"?\"mp4\":void 0}var W=class{constructor(){let[e,t]=hd();this._isUsed=!1,this._trigger=e,this.signal=new Bi(t)}isUsed(){return this._isUsed}linkToSignal(e){let t=e.register(()=>{this.cancel()});return this.signal.register(t),t}cancel(e){if(this._isUsed)return;this._isUsed=!0;let t=e!=null?e:new ie;this._trigger(t)}static isCancellationError(e){return e instanceof ie}},Bi=class{constructor(e){this._isCancelled=!1,this.cancellationError=null,this._listeners=[],e(t=>{for(this.cancellationError=t,this._isCancelled=!0;this._listeners.length>0;)try{let r=this._listeners.pop();r==null||r(t)}catch(r){c.error(\"Error while calling clean up listener\",r instanceof Error?r.toString():\"Unknown error\")}})}isCancelled(){return this._isCancelled}register(e){return this._isCancelled?(he(this.cancellationError!==null),e(this.cancellationError),N):(this._listeners.push(e),()=>this.deregister(e))}deregister(e){for(let t=this._listeners.length-1;t>=0;t--)this._listeners[t]===e&&this._listeners.splice(t,1)}},ie=class n extends Error{constructor(){super(),Object.setPrototypeOf(this,n.prototype),this.name=\"CancellationError\",this.message=\"This task was cancelled.\"}};function hd(){let n=N;return[function(t){n(t)},function(t){n=t}]}function vt(...n){let e=n.length,t=-1,r=0,i;for(;++t<e;)i=n[t],r+=typeof i==\"number\"?i:i.length;let a=new Uint8Array(r),o=0;for(t=-1;++t<e;)i=n[t],typeof i==\"number\"?o+=i:i.length>0&&(a.set(i,o),o+=i.length);return a}function Vo(n,e){return(n[e+0]<<8)+(n[e+1]<<0)}function Ui(n,e){return n[e+0]*65536+n[e+1]*256+n[e+2]}function te(n,e){return n[e+0]*16777216+n[e+1]*65536+n[e+2]*256+n[e+3]}function pt(n,e){return(n[e+0]*16777216+n[e+1]*65536+n[e+2]*256+n[e+3])*4294967296+n[e+4]*16777216+n[e+5]*65536+n[e+6]*256+n[e+7]}function Qe(n,e){let t=n.length,r=0;for(;r+8<=t;){let i=te(n,r);if(i===0)i=t-r;else if(i===1){if(r+16>t)return-1;i=pt(n,r+8)}if(isNaN(i)||i<=0)return-1;if(te(n,r+4)===e)return r+i<=t?r:-1;r+=i}return-1}function Pr(n){let e=0,t=[],r=null;for(;e<=n.length;){if(e===n.length){r=null;break}r=n.subarray(e,1/0);let i=Qe(r,1836019558);if(i<0)break;let a=te(n,i+e),o=e+i+a;if(o>n.length)break;let s=Qe(r,1835295092);if(s<0)break;let u=te(n,s+e),l=e+s+u;if(l>n.length)break;let d=Math.max(o,l),f=n.subarray(e,d);t.push(f),e=d}return t.length===0?[null,r]:[t,r]}function Id(n,e,t){return new Uint8Array(Array.prototype.slice.call(n,e,t))}function bd(n,e,t){return n.slice(e,t)}var Li=typeof Uint8Array.prototype.slice==\"function\"?bd:Id;function Fi(n,e){let t=n;for(let r of e){let i=ue(t,r);if(i===null)return null;t=i}return t}function ue(n,e){let t=Ft(n,e);return t!==null?n.subarray(t[1],t[2]):null}function qo(n,e){let t=[],r=n;for(;;){let i=Ft(r,e);if(i===null)return t;he(i[2]!==0&&r.length!==0),t.push(r.subarray(i[1],i[2])),r=r.subarray(i[2])}}function Ft(n,e){let t=n.length,r=0,i,a=0,o;for(;r+8<=t;){if(o=r,a=te(n,o),o+=4,i=te(n,o),o+=4,a===0)a=t-r;else if(a===1){if(o+8>t)return null;a=pt(n,o),o+=8}if(a<0)throw new Error(\"ISOBMFF: Size out of range\");if(i===e)return e===1970628964&&(o+=16),[r,o,r+a];r+=a}return null}function vr(n){let e=0,t=ue(n,1836019574);if(t===null)return[];let r=[];for(;e<t.length;){let i;try{i=Ft(t,1886614376)}catch(s){let u=s instanceof Error?s:\"\";return c.warn(\"Error while removing PSSH from ISOBMFF\",u),r}if(i===null)return r;let a=Li(t,i[0],i[2]),o=Ho(a,i[1]-i[0]);o!==void 0&&r.push({systemId:o,data:a}),t[i[0]+4]=102,t[i[0]+5]=114,t[i[0]+6]=101,t[i[0]+7]=101,e=i[2]}return r}function Ho(n,e){if(n[e]>1){c.warn(\"ISOBMFF: un-handled PSSH version\");return}let t=e+4;if(t+16>n.length)return;let r=Li(n,t,t+16);return ho(r)}function zi(n){let e=ue(n,1836019558);return e===null?null:ue(e,1953653094)}function Go(n){return qo(n,1836019558).reduce((t,r)=>{let i=ue(r,1953653094);return i!==null&&t.push(i),t},[])}function Wi(n){return ue(n,1835295092)}function Vi(n){let e=ue(n,1836019574);if(e===null)return null;let t=ue(e,1953653099);return t===null?null:ue(t,1835297121)}function Ko(n,e=0){return ue(n.subarray(e),1701671783)}function hn(n,e){let t=Ft(n,1936286840);if(t===null)return null;let r=e,i=t[2]-t[0],a=t[1],o=n[a];a+=8;let s=te(n,a);a+=4;let u;if(o===0)u=te(n,a),a+=4,r+=te(n,a)+i,a+=4;else if(o===1)u=pt(n,a),a+=8,r+=pt(n,a)+i,a+=8;else return null;let l=[];a+=2;let d=Vo(n,a);for(a+=2;--d>=0;){let f=te(n,a);a+=4;let m=(f&2147483648)>>>31,p=f&2147483647;if(m===1)throw new Error(\"sidx with reference_type `1` not yet implemented\");let g=te(n,a);a+=4,a+=4,l.push({time:u,duration:g,timescale:s,range:[r,r+p-1]}),u+=g,r+=p}return l}function qi(n){let e=zi(n);if(e===null)return;let t=ue(e,1952867444);if(t===null)return;let r=t[0];if(r===1)return pt(t,4);if(r===0)return te(t,4)}function Sd(n){let e=ue(n,1952868452);if(e===null)return;let t=1,r=Ui(e,t);t+=3;let i=(r&1)>0,a=(r&2)>0;return(r&8)>0?(t+=4,i&&(t+=8),a&&(t+=4),te(e,t)):void 0}function Hi(n){let e=Go(n);if(e.length===0)return;let t=0;for(let r of e){let i=ue(r,1953658222);if(i===null)return;let a=0,o=i[a];if(a+=1,o>1)return;let s=Ui(i,a);a+=3;let u=(s&256)>0,l=0;if(!u&&(l=Sd(r),l===void 0))return;let d=(s&1)>0,f=(s&4)>0,m=(s&512)>0,p=(s&1024)>0,g=(s&2048)>0,h=te(i,a);a+=4,d&&(a+=4),f&&(a+=4);let I=h,y=0;for(;I-- >0;)u?(y+=te(i,a),a+=4):y+=l,m&&(a+=4),p&&(a+=4),g&&(a+=4);t+=y}return t}function In(n){let e=Vi(n);if(e===null)return;let t=ue(e,1835296868);if(t===null)return;let r=0,i=t[r];if(r+=4,i===1)return te(t,r+16);if(i===0)return te(t,r+8)}function jo(n){let e=[],t=0;for(;t<n.length;){let r=Ko(n,t);if(r===null)break;let i=r.length;t+=i;let a=r[0];if(a!==0)c.warn(\"ISOBMFF: EMSG version \"+a.toString()+\" not supported.\");else{let o=4,{end:s,string:u}=Ii(r,o);o=s;let{end:l,string:d}=Ii(r,o);o=l;let f=te(r,o);o+=4;let m=te(r,o);o+=4;let p=te(r,o);o+=4;let g=te(r,o);o+=4;let h=r.subarray(o,i),I={schemeIdUri:u,value:d,timescale:f,presentationTimeDelta:m,eventDuration:p,id:g,messageData:h};e.push(I)}}if(e.length!==0)return e}function Yo(n){let e=Fi(n,[1836019574,1953653099,1835297121,1835626086,1937007212,1937011556]);if(e===null)return null;let t=e.subarray(8),r=ue(t,1701733238),i=0;if(r===null?(i=28,r=ue(t,1701733217)):i=78,r===null)return null;let a=Fi(r.subarray(i),[1936289382,1935894633,1952804451]);return a===null||a.byteLength<24?null:a.subarray(8,24)}function Gi(n,e){if(e){if(Qe(n,1718909296)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `ftyp` box\");if(Qe(n,1836019574)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `moov` box\")}else{if(Qe(n,1836019558)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `moof` box\");if(Qe(n,1835295092)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `mdat` box\")}}function bn(n){return(e,t,r,i,a)=>{return new Promise((s,u)=>{let l=new W,d=l.linkToSignal(i);l.signal.register(u),n(e,t,r,l.signal,Le(_e({},a),{onNewChunk(m){try{o(m),a.onNewChunk(m)}catch(p){f(),l.cancel(),u(p)}}})).then(m=>{if(f(),!l.isUsed()){if(m.resultType===\"segment-loaded\")try{o(m.resultData.responseData)}catch(p){u(p);return}s(m)}},m=>{f(),u(m)});function f(){l.signal.deregister(u),d()}});function o(s){!(s instanceof ArrayBuffer)&&!(s instanceof Uint8Array)||qe(t.type,t.mimeType)!==\"mp4\"||Gi(new Uint8Array(s),t.segment.isInit)}}}function Sn(n,e){return n===null?null:e.url===null?n.baseUrl:sn(n.baseUrl,e.url)}function yn(n,e,t,r,i){if(e.range===void 0)return le({url:n,responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}).then(s=>({resultType:\"segment-loaded\",resultData:s}));if(e.indexRange===void 0)return le({url:n,headers:{Range:Oe(e.range)},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}).then(s=>({resultType:\"segment-loaded\",resultData:s}));if(e.range[1]+1===e.indexRange[0])return le({url:n,headers:{Range:Oe([e.range[0],e.indexRange[1]])},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}).then(s=>({resultType:\"segment-loaded\",resultData:s}));let a=le({url:n,headers:{Range:Oe(e.range)},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}),o=le({url:n,headers:{Range:Oe(e.indexRange)},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress});return Promise.all([a,o]).then(([s,u])=>{let l=vt(new Uint8Array(s.responseData),new Uint8Array(u.responseData)),d=Math.min(s.sendingTime,u.sendingTime),f=Math.max(s.receivedTime,u.receivedTime);return{resultType:\"segment-loaded\",resultData:{url:n,responseData:l,size:s.size+u.size,requestDuration:f-d,sendingTime:d,receivedTime:f}}})}function Tn(n,e,t,r,i){let{segment:a}=e,o=a.range!==void 0?{Range:Oe(a.range)}:void 0,s=null;function u(l){let d=new Uint8Array(l.chunk),f=s!==null?vt(s,d):d,m=Pr(f),p=m[0];s=m[1],!(p!==null&&(p.forEach(g=>{r.onNewChunk(g)}),i.isCancelled()))&&(r.onProgress({duration:l.duration,size:l.size,totalSize:l.totalSize}),i.isCancelled())}return rr({url:n,headers:o,onData:u,timeout:t.timeout,cancelSignal:i}).then(l=>({resultType:\"chunk-complete\",resultData:l}))}function Qo(n,e,t,r,i,a){if(e.segment.isInit)return yn(n,e.segment,r,a,i);let o=qe(e.type,e.mimeType);if(t&&(o===\"mp4\"||o===void 0)){if($t())return Tn(n,e,r,i,a);Xe(\"DASH: Your browser does not have the fetch API. You will have a higher chance of rebuffering when playing close to the live edge\")}let{segment:s}=e;return le({url:n,responseType:\"arraybuffer\",headers:s.range!==void 0?{Range:Oe(s.range)}:void 0,timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:a,onProgress:i.onProgress}).then(u=>({resultType:\"segment-loaded\",resultData:u}))}function Ki({lowLatencyMode:n,segmentLoader:e,checkMediaSegmentIntegrity:t}){return t!==!0?r:bn(r);function r(i,a,o,s,u){let l=Sn(i,a.segment);return l===null?Promise.resolve({resultType:\"segment-created\",resultData:null}):n||e===void 0?Qo(l,a,n,o,u,s):new Promise((d,f)=>{let m=!1,y={reject:P=>{var M,k;if(m||s.isCancelled())return;m=!0,s.deregister(C);let x=P,_=(M=x==null?void 0:x.message)!=null?M:\"Unknown error when fetching a DASH segment through a custom segmentLoader.\",A=new Ge(_,(k=x==null?void 0:x.canRetry)!=null?k:!1,x==null?void 0:x.xhr);f(A)},resolve:P=>{m||s.isCancelled()||(m=!0,s.deregister(C),d({resultType:\"segment-loaded\",resultData:{responseData:P.data,size:P.size,requestDuration:P.duration}}))},progress:P=>{m||s.isCancelled()||u.onProgress({duration:P.duration,size:P.size,totalSize:P.totalSize})},fallback:()=>{m||s.isCancelled()||(m=!0,s.deregister(C),Qo(l,a,n,o,u,s).then(d,f))}},E;a.segment.range!==void 0&&(E=[a.segment.range],a.segment.indexRange!==void 0&&E.push(a.segment.indexRange));let R={isInit:a.segment.isInit,timeout:o.timeout,byteRanges:E,trackType:a.type,url:l},T=e(R,y);s.register(C);function C(P){m||(m=!0,typeof T==\"function\"&&T(),f(P))}})}}var Yi=408125543,$o=357149030,yd=2807729,Td=17545,_d=475249515,Ed=187,Rd=179,Pd=183,vd=241;function gt(n,e,t,[r,i]){let a=r;for(;a<i;){let o=Ad(t,a);if(o===null)return null;let{value:s,length:u}=o,l=a+u,d=kd(t,l);if(d===null)return null;let{length:f,value:m}=d,p=l+f,g=p+m;if(s===n)return[p,g];if(e.length>0){for(let h=0;h<e.length;h++)if(s===e[h]){let I=e.slice(h+1,e.length);return gt(n,I,t,[p,g])}}a=g}return null}function Cr(n,e){let t=gt(yd,[Yi,$o],n,[e,n.length]);if(t===null)return null;let r=t[1]-t[0];return 1e9/ji(n,t[0],r)}function Cd(n,e){let t=gt(Td,[Yi,$o],n,[e,n.length]);if(t===null)return null;let r=t[1]-t[0];return r===4?xd(n,t[0]):r===8?Md(n,t[0]):null}function Qi(n,e){let t=gt(Yi,[],n,[e,n.length]);if(t===null)return null;let[r,i]=t,a=Cr(n,r);if(a===null)return null;let o=Cd(n,r);if(o===null)return null;let s=gt(_d,[],n,[r,i]);if(s===null)return null;let u=[],l=s[0];for(;l<s[1];){let f=gt(Ed,[],n,[l,s[1]]);if(f===null)break;let m=gt(Rd,[],n,[f[0],f[1]]);if(m===null)return null;let p=ji(n,m[0],m[1]-m[0]),g=gt(vd,[Pd],n,[f[0],f[1]]);if(g===null)return null;let h=ji(n,g[0],g[1]-g[0])+r;u.push({time:p,rangeStart:h}),l=f[1]}let d=[];for(let f=0;f<u.length;f++){let m=u[f];f===u.length-1?d.push({time:m.time,timescale:a,duration:f===0?o:o-m.time,range:[m.rangeStart,1/0]}):d.push({time:m.time,timescale:a,duration:u[f+1].time-m.time,range:[m.rangeStart,u[f+1].rangeStart-1]})}return d}function Xo(n,e){for(let t=1;t<=8;t++)if(n[e]>=Math.pow(2,8-t))return t}function Ad(n,e){let t=Xo(n,e);if(t===void 0)return c.warn(\"webm: unrepresentable length\"),null;if(e+t>n.length)return c.warn(\"webm: impossible length\"),null;let r=0;for(let i=0;i<t;i++)r=n[e+i]*Math.pow(2,(t-i-1)*8)+r;return{length:t,value:r}}function kd(n,e){let t=Xo(n,e);if(t===void 0)return c.warn(\"webm: unrepresentable length\"),null;if(e+t>n.length)return c.warn(\"webm: impossible length\"),null;let r=(n[e]&(1<<8-t)-1)*Math.pow(2,(t-1)*8);for(let i=1;i<t;i++)r=n[e+i]*Math.pow(2,(t-i-1)*8)+r;return{length:t,value:r}}function xd(n,e){return new DataView(n.buffer).getFloat32(e)}function Md(n,e){return new DataView(n.buffer).getFloat64(e)}function ji(n,e,t){let r=0;for(let i=0;i<t;i++)r=n[e+i]*Math.pow(2,(t-i-1)*8)+r;return r}function _n(n,e,t,r){let i=qi(n);if(i===void 0||r===void 0)return null;let a=t.timestampOffset!==void 0?i+t.timestampOffset*r:i,o=Hi(n);if(a<0&&(o!==void 0&&(o+=a),a=0),e||!t.complete)return o===void 0&&c.warn(\"DASH: Chunked segments should indicate a duration through their trun boxes\"),{time:a/r,duration:o!==void 0?o/r:void 0};let s,u=t.duration*r,l=Math.min(r*.9,u/4);return o!==void 0&&Math.abs(o-u)<=l&&(s=o),{time:a/r,duration:s!==void 0?s/r:s}}function Od(n,e){if(n.length<=0)return!1;let t=n.length;for(let r=0;r<t;r++){let i=n[r],a=e,{messageData:o}=i,s=Be(o),u=Date.parse(s);if(a===void 0||u===void 0||isNaN(u)||u>=a)return!0}return!1}function $i(n,e){if(n.length===0)return;let{manifestRefreshEventsFromEMSGs:t,EMSGs:r}=n.reduce((o,s)=>(s.schemeIdUri===\"urn:mpeg:dash:event:2012\"&&s.value===\"1\"?(o.manifestRefreshEventsFromEMSGs===void 0&&(o.manifestRefreshEventsFromEMSGs=[]),o.manifestRefreshEventsFromEMSGs.push(s)):(o.EMSGs===void 0&&(o.EMSGs=[]),o.EMSGs.push(s)),o),{manifestRefreshEventsFromEMSGs:void 0,EMSGs:void 0}),i=r==null?void 0:r.map(o=>({type:\"emsg\",value:o})),a=e===void 0||t===void 0?!1:Od(t,e);return{inbandEvents:i,needsManifestRefresh:a}}function Xi({__priv_patchLastSegmentInSidx:n}){return function(t,r,i){var R,T;let{segment:a,periodStart:o,periodEnd:s}=r,{data:u,isChunked:l}=t,d=[o,s];if(u===null)return a.isInit?{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:void 0}:{segmentType:\"media\",chunkData:null,chunkSize:0,chunkInfos:null,chunkOffset:0,protectionData:[],appendWindow:d};let f=u instanceof Uint8Array?u:new Uint8Array(u),m=qe(r.type,r.mimeType),p=m===\"mp4\"||m===void 0,g=[];if(p){let C=vr(f),P;a.isInit&&(P=(R=Yo(f))!=null?R:void 0),(C.length>0||P!==void 0)&&g.push({initDataType:\"cenc\",keyId:P,initData:C})}if(!a.isInit){let C=p?_n(f,l,a,i):null,P=(T=a.timestampOffset)!=null?T:0;if(p){let x=jo(f);if(x!==void 0){let _=x.filter(M=>a.privateInfos===void 0||a.privateInfos.isEMSGWhitelisted===void 0?!1:a.privateInfos.isEMSGWhitelisted(M)),A=$i(_,r.manifestPublishTime);if(A!==void 0){let{needsManifestRefresh:M,inbandEvents:k}=A;return{segmentType:\"media\",chunkData:f,chunkSize:f.length,chunkInfos:C,chunkOffset:P,appendWindow:d,inbandEvents:k,protectionData:g,needsManifestRefresh:M}}}}return{segmentType:\"media\",chunkData:f,chunkSize:f.length,chunkInfos:C,chunkOffset:P,protectionData:g,appendWindow:d}}let{indexRange:h}=a,I;if(m===\"webm\")I=Qi(f,0);else if(p&&(I=hn(f,Array.isArray(h)?h[0]:0),n===!0&&I!==null&&I.length>0)){let C=I[I.length-1];Array.isArray(C.range)&&(C.range[1]=1/0)}let y;p?y=In(f):m===\"webm\"&&(y=Cr(f,0));let E=v(y)?void 0:y;return{segmentType:\"init\",initializationData:f,initializationDataSize:f.length,protectionData:g,initTimescale:E,segmentList:I!=null?I:void 0}}}function Zi({lowLatencyMode:n,checkMediaSegmentIntegrity:e}){return e!==!0?t:bn(t);function t(r,i,a,o,s){let{segment:u}=i,{range:l}=u,d=Sn(r,u);if(d===null)return Promise.resolve({resultType:\"segment-created\",resultData:null});if(u.isInit)return yn(d,u,a,o,s);let f=qe(i.type,i.mimeType),m=f===\"mp4\"||f===void 0;if(n&&m){if($t())return Tn(d,i,a,s,o);Xe(\"DASH: Your browser does not have the fetch API. You will have a higher chance of rebuffering when playing close to the live edge\")}return m?le({url:d,responseType:\"arraybuffer\",headers:Array.isArray(l)?{Range:Oe(l)}:null,timeout:a.timeout,connectionTimeout:a.connectionTimeout,onProgress:s.onProgress,cancelSignal:o}).then(p=>({resultType:\"segment-loaded\",resultData:p})):le({url:d,responseType:\"text\",headers:Array.isArray(l)?{Range:Oe(l)}:null,timeout:a.timeout,connectionTimeout:a.connectionTimeout,onProgress:s.onProgress,cancelSignal:o}).then(p=>({resultType:\"segment-loaded\",resultData:p}))}}function wd(n){let e=Wi(n);return e===null?\"\":Be(e)}function Dd(n){if(n===void 0)throw new Error(\"Cannot parse subtitles: unknown format\");switch(n.toLowerCase()){case\"stpp\":case\"stpp.ttml.im1t\":return\"ttml\";case\"wvtt\":return\"vtt\"}throw new Error(`The codec used for the subtitles \"${n}\" is not managed yet.`)}function Nd(n,e){switch(e){case\"application/ttml+xml\":return\"ttml\";case\"application/x-sami\":case\"application/smil\":return\"sami\";case\"text/vtt\":return\"vtt\"}if(n!==void 0&&n.toLowerCase()===\"srt\")return\"srt\";throw new Error(`could not find a text-track parser for the type ${e!=null?e:\"\"}`)}function Zo({segment:n,language:e,codecs:t},r,i,a){if(n.isInit)return null;let o,s;i===null?a?(o=n.time,s=n.end):c.warn(\"Transport: Unavailable time data for current text track.\"):(o=i.time,i.duration!==void 0?s=o+i.duration:!a&&n.complete&&(s=o+n.duration));let u=Dd(t);return{data:wd(r),type:u,language:e,start:o,end:s}}function Jo(n,e,t){let{segment:r}=n;if(r.isInit)return null;let i,a;t?c.warn(\"Transport: Unavailable time data for current text track.\"):(i=r.time,r.complete&&(a=r.time+r.duration));let o=Nd(n.codecs,n.mimeType);return{data:e,type:o,language:n.language,start:i,end:a}}function Bd(n,e,t,r,i){var m;let{segment:a}=t,{isInit:o,indexRange:s}=a,u;if(typeof n==\"string\"?u=dn(n):n instanceof Uint8Array?u=n:u=new Uint8Array(n),o){let p=hn(u,Array.isArray(s)?s[0]:0);if(i===!0&&p!==null&&p.length>0){let h=p[p.length-1];Array.isArray(h.range)&&(h.range[1]=1/0)}let g=In(u);return{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:g,segmentList:p!=null?p:void 0}}let l=_n(u,e,a,r),d=Zo(t,u,l,e),f=(m=a.timestampOffset)!=null?m:0;return{segmentType:\"media\",chunkData:d,chunkSize:u.length,chunkInfos:l,chunkOffset:f,protectionData:[],appendWindow:[t.periodStart,t.periodEnd]}}function Ud(n,e,t){let{periodStart:r,periodEnd:i,segment:a}=t,{timestampOffset:o=0}=a;if(a.isInit)return{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:void 0};let s,u;if(typeof n!=\"string\"){let d=n instanceof Uint8Array?n:new Uint8Array(n);s=Be(d),u=d.length}else s=n;return{segmentType:\"media\",chunkData:Jo(t,s,e),chunkSize:u,chunkInfos:null,chunkOffset:o,protectionData:[],appendWindow:[r,i]}}function Ji({__priv_patchLastSegmentInSidx:n}){return function(t,r,i){var f;let{periodStart:a,periodEnd:o,segment:s}=r,{data:u,isChunked:l}=t;if(u===null)return s.isInit?{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:void 0}:{segmentType:\"media\",chunkData:null,chunkSize:0,chunkInfos:null,chunkOffset:(f=s.timestampOffset)!=null?f:0,protectionData:[],appendWindow:[a,o]};let d=qe(r.type,r.mimeType);if(d===\"webm\")throw new Error(\"Text tracks with a WEBM container are not yet handled.\");return d===\"mp4\"?Bd(u,l,r,i,n):Ud(u,l,r)}}function es(n){let e=Di({customManifestLoader:n.manifestLoader},Ld()?\"text\":\"arraybuffer\"),t=Ni(n),r=Ki(n),i=Xi(n),a=Zi(n),o=Ji(n);return{manifest:{loadManifest:e,parseManifest:t},audio:{loadSegment:r,parseSegment:i},video:{loadSegment:r,parseSegment:i},text:{loadSegment:a,parseSegment:o}}}function Ld(){return ae.dashParsers.wasm!==null&&(ae.dashParsers.wasm.status===\"initialized\"||ae.dashParsers.wasm.status===\"initializing\")}var ts=es;var Ct=typeof queueMicrotask==\"function\"?queueMicrotask:function(e){Promise.resolve().then(e,()=>e())};var At=class{constructor(e){this._array=[],this._sortingFn=e}add(...e){e.sort(this._sortingFn);let t=0;for(let r=0;r<e.length;r++){let i=e[r],a=!1;for(;!a&&t<this._array.length;)this._sortingFn(i,this._array[t])<0?(this._array.splice(t,0,i),a=!0):t++;a||this._array.push(i)}}length(){return this._array.length}get(e){if(e<0||e>=this._array.length)throw new Error(\"Invalid index.\");return this._array[e]}toArray(){return this._array.slice()}findFirst(e){return K(this._array,e)}has(e){return se(this._array,e)}removeElement(e){let t=this._array.indexOf(e);if(t>=0)return this._array.splice(t,1),t}head(){return this._array[0]}last(){return this._array[this._array.length-1]}shift(){return this._array.shift()}pop(){return this._array.pop()}};var En=class{constructor(e){this._weakMap=new WeakMap,this._fn=e}get(e){let t=this._weakMap.get(e);if(t===void 0){let r=this._fn(e);return this._weakMap.set(e,r),r}else return t}destroy(e){this._weakMap.delete(e)}};var Fd=.016666666666666666;function ns(n,e){return Math.abs(n-e)<Fd}function is(n,e){let t=Math.min(n.start,e.start),r=Math.max(n.end,e.end);return{start:t,end:r}}function zd(n){for(let e=0;e<n.length;e++){let t=n[e];t.start===t.end&&n.splice(e--,1)}return n}function Wd(n){for(let e=1;e<n.length;e++){let t=n[e-1],r=n[e];if(os(t,r)){let i=is(t,r);n.splice(--e,2,i)}}return n}function ea(n,e){return n.end<=e.start}function rs({start:n,end:e},t){return n<=t&&t<e}function as(n,e){return rs(n,e.start)||n.start<e.end&&e.end<n.end||rs(e,n.start)}function os(n,e){return ns(e.start,n.end)||ns(e.end,n.start)}function ta(n){let e=[];for(let t=0;t<n.length;t++)e.push({start:n.start(t),end:n.end(t)});return e}function Vd(n,e){for(let t=n.length-1;t>=0;t--){let r=n[t].start;if(e>=r){let i=n[t].end;if(e<i)return n[t]}}return null}function ss(n,e){let t=null,r=[];for(let i=0;i<n.length;i++){let a=n[i].start,o=n[i].end;e<a||e>=o?r.push({start:a,end:o}):t={start:a,end:o}}return{outerRanges:r,innerRange:t}}function Ar(n,e){let t=Vd(n,e);return t!==null?t.end-e:1/0}function zt(n,e){if(e.start===e.end)return n;let t=e,r=0;for(;r<n.length;r++){let i=n[r],a=as(t,i),o=os(t,i);if(a||o)t=is(t,i),n.splice(r--,1);else if(r===0){if(ea(t,n[0]))break}else if(ea(n[r-1],t)&&ea(t,i))break}return n.splice(r,0,t),Wd(zd(n))}function qd(n,e){let t=[];for(let r=0;r<e.length;r++)as(n,e[r])&&t.push(e[r]);return t}function kr(n,e){let t=[];for(let r=0;r<n.length;r++){let i=n[r],a=[],o=qd(i,e);if(o.length>0)for(let s=0;s<o.length;s++){let u=o[s];a.push({start:Math.max(i.start,u.start),end:Math.min(i.end,u.end)})}if(a.length===0)t.push(i);else{let s=i.start;for(let u=0;u<a.length;u++)a[u].start>s&&t.push({start:s,end:a[u].start}),s=a[u].end;s<i.end&&t.push({start:s,end:i.end})}}return t}function xr({segmentSink:n,playbackObserver:e,maxBufferBehind:t,maxBufferAhead:r},i){let a,o=[];e.listen(u=>{a=u.position.getWanted(),o=u.buffered[n.bufferType],s()},{includeLastObservation:!0,clearSignal:i});function s(){o!==null&&Hd(n,a,o,t.getValue(),r.getValue(),i).catch(u=>{let l=u instanceof Error?u.message:\"Unknown error\";c.error(\"Could not run BufferGarbageCollector:\",l)})}t.onUpdate(s,{clearSignal:i}),r.onUpdate(s,{clearSignal:i}),s()}async function Hd(n,e,t,r,i,a){if(!isFinite(r)&&!isFinite(i))return Promise.resolve();let o=[],{innerRange:s,outerRanges:u}=ss(t,e),l=()=>{if(isFinite(r)){for(let f=0;f<u.length;f++){let m=u[f];e-r>=m.end?o.push(m):e>=m.end&&e-r>m.start&&e-r<m.end&&o.push({start:m.start,end:e-r})}v(s)||e-r>s.start&&o.push({start:s.start,end:e-r})}},d=()=>{if(isFinite(i)){for(let f=0;f<u.length;f++){let m=u[f];e+i<=m.start?o.push(m):e<=m.start&&e+i<m.end&&e+i>m.start&&o.push({start:e+i,end:m.end})}v(s)||e+i<s.end&&o.push({start:e+i,end:s.end})}};l(),d();for(let f of o)if(f.start<f.end){if(c.debug(\"GC: cleaning range from SegmentSink\",f.start,f.end),a.cancellationError!==null)throw a.cancellationError;await n.removeBuffer(f.start,f.end)}}var Rn=class{constructor(e,t){this._history=[],this._lifetime=e,this._maxHistoryLength=t}addBufferedSegment(e,t){let r=L();this._history.push({date:r,buffered:t,context:e}),this._cleanHistory(r)}getHistoryFor(e){return this._history.filter(t=>Ze(t.context,e))}_cleanHistory(e){let t=e-this._lifetime,r=0;for(let i of this._history)if(i.date<t)r++;else break;if(r>0&&(this._history=this._history.splice(r)),this._history.length>this._maxHistoryLength){let i=this._history.length-this._maxHistoryLength;this._history=this._history.splice(i)}}};var Pn=class{constructor(){let{BUFFERED_HISTORY_RETENTION_TIME:e,BUFFERED_HISTORY_MAXIMUM_ENTRIES:t}=U.getCurrent();this._inventory=[],this._bufferedHistory=new Rn(e,t)}reset(){this._inventory.length=0}synchronizeBuffered(e){var u,l,d,f,m,p,g;let t=this._inventory,r=0,i=t[0],{MINIMUM_SEGMENT_SIZE:a}=U.getCurrent(),o=i==null?void 0:i.infos.adaptation.type;if(c.hasLevel(\"DEBUG\")){let h=e.map(I=>`${I.start}-${I.end}`).join(\",\");c.debug(`SI: synchronizing ${o!=null?o:\"unknown\"} buffered ranges:`,h)}let s=e.length;for(let h=0;h<s;h++){if(i===void 0)return;let I=e[h].start,y=e[h].end;if(y-I<a){c.warn(\"SI: skipped range when synchronizing because it was too small\",o,I,y);continue}let E=r;for(;i!==void 0&&((u=i.bufferedEnd)!=null?u:i.end)-I<a;)i=t[++r];let R=null,T=r-E;if(T>0){let P=t[E+T-1];R={end:(l=P.bufferedEnd)!=null?l:P.end,precizeEnd:P.precizeEnd},c.debug(`SI: ${T} segments GCed.`,o);let x=t.splice(E,T);for(let _ of x)_.bufferedStart===void 0&&_.bufferedEnd===void 0&&_.status!==2&&this._bufferedHistory.addBufferedSegment(_.infos,null);r=E}if(i===void 0)return;if(y-((d=i.bufferedStart)!=null?d:i.start)>=a){if(Gd(i,I,R,o),r===t.length-1){ds(i,y,o);return}i=t[++r];let P=(f=i.bufferedStart)!=null?f:i.start,x=(m=i.bufferedEnd)!=null?m:i.end,_=h<s-1?e[h+1].start:void 0;for(;i!==void 0&&!(y<P||y-P<a&&x-y>=a||_!==void 0&&y-P<x-_);){let A=t[r-1];A.bufferedEnd===void 0&&(i.precizeStart?A.bufferedEnd=i.start:A.infos.segment.complete?A.bufferedEnd=A.end:A.bufferedEnd=i.start,c.debug(\"SI: calculating buffered end of contiguous segment\",o,A.bufferedEnd,A.end)),i.bufferedStart=A.bufferedEnd,i=t[++r],i!==void 0&&(P=(p=i.bufferedStart)!=null?p:i.start,x=(g=i.bufferedEnd)!=null?g:i.end)}}let C=t[r-1];C!==void 0&&ds(C,y,o)}if(!v(i)){let{SEGMENT_SYNCHRONIZATION_DELAY:h}=U.getCurrent(),I=L();for(let y=r;y<t.length;y++){let E=t[y];I-E.insertionTs>=h&&(c.debug(\"SI: A segment at the end has been completely GCed\",o,`${E.start}-${E.end}`),E.bufferedStart===void 0&&E.bufferedEnd===void 0&&E.status!==2&&this._bufferedHistory.addBufferedSegment(E.infos,null),t.splice(y,1),y--)}}o!==void 0&&c.hasLevel(\"DEBUG\")&&c.debug(`SI: current ${o} inventory timeline:\n`+Kd(this._inventory))}insertChunk({period:e,adaptation:t,representation:r,segment:i,chunkSize:a,start:o,end:s},u,l){if(i.isInit)return;let d=t.type;if(o>=s){c.warn(\"SI: Invalid chunked inserted: starts before it ends\",d,o,s);return}let f=this._inventory,m={status:u?0:2,insertionTs:l,chunkSize:a,splitted:!1,start:o,end:s,precizeStart:!1,precizeEnd:!1,bufferedStart:void 0,bufferedEnd:void 0,infos:{segment:i,period:e,adaptation:t,representation:r}};for(let g=f.length-1;g>=0;g--){let h=f[g];if(h.start<=o)if(h.end<=o){for(c.debug(\"SI: Pushing segment strictly after previous one.\",d,o,h.end),this._inventory.splice(g+1,0,m),g+=2;g<f.length&&f[g].start<m.end;){if(f[g].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,f[g].start),f[g].start=m.end,f[g].bufferedStart=void 0,f[g].precizeStart=f[g].precizeStart&&m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,f[g].start,f[g].end),f.splice(g,1)}return}else if(h.start===o)if(h.end<=s){for(c.debug(\"SI: Segment pushed replace another one\",d,o,s,h.end),this._inventory.splice(g,1,m),g+=1;g<f.length&&f[g].start<m.end;){if(f[g].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,f[g].start),f[g].start=m.end,f[g].bufferedStart=void 0,f[g].precizeStart=f[g].precizeStart&&m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,f[g].start,f[g].end),f.splice(g,1)}return}else{c.debug(\"SI: Segment pushed ends before another with the same start\",d,o,s,h.end),f.splice(g,0,m),h.start=m.end,h.bufferedStart=void 0,h.precizeStart=h.precizeStart&&m.precizeEnd;return}else if(h.end<=m.end){for(c.debug(\"SI: Segment pushed updates end of previous one\",d,o,s,h.start,h.end),this._inventory.splice(g+1,0,m),h.end=m.start,h.bufferedEnd=void 0,h.precizeEnd=h.precizeEnd&&m.precizeStart,g+=2;g<f.length&&f[g].start<m.end;){if(f[g].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,f[g].start),f[g].start=m.end,f[g].bufferedStart=void 0,f[g].precizeStart=f[g].precizeStart&&m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,f[g].start,f[g].end),f.splice(g,1)}return}else{c.warn(\"SI: Segment pushed is contained in a previous one\",d,o,s,h.start,h.end);let I={status:h.status,insertionTs:h.insertionTs,chunkSize:h.chunkSize,splitted:!0,start:m.end,end:h.end,precizeStart:h.precizeStart&&h.precizeEnd&&m.precizeEnd,precizeEnd:h.precizeEnd,bufferedStart:void 0,bufferedEnd:h.end,infos:h.infos};h.end=m.start,h.splitted=!0,h.bufferedEnd=void 0,h.precizeEnd=h.precizeEnd&&m.precizeStart,f.splice(g+1,0,m),f.splice(g+2,0,I);return}}let p=this._inventory[0];if(p===void 0){c.debug(\"SI: first segment pushed\",d,o,s),this._inventory.push(m);return}if(p.start>=s)c.debug(\"SI: Segment pushed comes before all previous ones\",d,o,s,p.start),this._inventory.splice(0,0,m);else if(p.end<=s){for(c.debug(\"SI: Segment pushed starts before and completely recovers the previous first one\",d,o,s,p.start,p.end),this._inventory.splice(0,1,m);f.length>1&&f[1].start<m.end;){if(f[1].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,f[1].start),f[1].start=m.end,f[1].bufferedStart=void 0,f[1].precizeStart=m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,f[1].start,f[1].end),f.splice(1,1)}return}else{c.debug(\"SI: Segment pushed start of the next one\",d,o,s,p.start,p.end),p.start=s,p.bufferedStart=void 0,p.precizeStart=m.precizeEnd,this._inventory.splice(0,0,m);return}}completeSegment(e){if(e.segment.isInit)return;let t=this._inventory,r=[];for(let i=0;i<t.length;i++)if(Ze(t[i].infos,e)){let a=!1;r.length>0&&(a=!0,r.length===1&&(c.warn(\"SI: Completed Segment is splitted.\",e.segment.id,e.segment.time,e.segment.end),r[0].splitted=!0));let o=i,s=t[i].chunkSize;for(i+=1;i<t.length&&Ze(t[i].infos,e);){let m=t[i].chunkSize;s!==void 0&&m!==void 0&&(s+=m),i++}let u=i-1,l=u-o,d=t[u].end,f=t[u].bufferedEnd;l>0&&(this._inventory.splice(o+1,l),i-=l),this._inventory[o].status===0&&(this._inventory[o].status=1),this._inventory[o].chunkSize=s,this._inventory[o].end=d,this._inventory[o].bufferedEnd=f,this._inventory[o].splitted=a,r.push(this._inventory[o])}if(r.length===0)c.warn(\"SI: Completed Segment not found\",e.segment.id,e.segment.time);else for(let i of r)i.bufferedStart!==void 0&&i.bufferedEnd!==void 0?i.status!==2&&this._bufferedHistory.addBufferedSegment(i.infos,{start:i.bufferedStart,end:i.bufferedEnd}):c.debug(\"SI: buffered range not known after sync. Skipping history.\",i.start,i.end)}getInventory(){return this._inventory}getHistoryFor(e){return this._bufferedHistory.getHistoryFor(e)}};function na(n){if(n.bufferedStart===void 0||n.status!==1)return!1;let{start:e,end:t}=n,r=t-e,{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:i,MAX_MANIFEST_BUFFERED_DURATION_DIFFERENCE:a}=U.getCurrent();return Math.abs(e-n.bufferedStart)<=i&&(n.bufferedEnd===void 0||n.bufferedEnd>n.bufferedStart&&Math.abs(n.bufferedEnd-n.bufferedStart-r)<=Math.min(a,r/3))}function us(n){if(n.bufferedEnd===void 0||!n.infos.segment.complete||n.status!==1)return!1;let{start:e,end:t}=n,r=t-e,{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:i,MAX_MANIFEST_BUFFERED_DURATION_DIFFERENCE:a}=U.getCurrent();return Math.abs(t-n.bufferedEnd)<=i&&n.bufferedStart!==void 0&&n.bufferedEnd>n.bufferedStart&&Math.abs(n.bufferedEnd-n.bufferedStart-r)<=Math.min(a,r/3)}function Gd(n,e,t,r){let{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:i,MISSING_DATA_TRIGGER_SYNC_DELAY:a,SEGMENT_SYNCHRONIZATION_DELAY:o}=U.getCurrent();if(n.bufferedStart!==void 0)n.bufferedStart<e&&(c.debug(\"SI: Segment partially GCed at the start\",r,n.bufferedStart,e),n.bufferedStart=e),!n.precizeStart&&na(n)&&(n.start=n.bufferedStart,n.precizeStart=!0);else if(n.precizeStart)c.debug(\"SI: buffered start is precize start\",r,n.start),n.bufferedStart=n.start;else if(t!==null&&t.end>e&&(t.precizeEnd||n.start-t.end<=i))c.debug(\"SI: buffered start is end of previous segment\",r,e,n.start,t.end),n.bufferedStart=t.end,na(n)&&(n.start=t.end,n.precizeStart=!0);else if(n.start-e<=i){let s=L();if(n.start-e>=a&&s-n.insertionTs<o){c.debug(\"SI: Ignored bufferedStart synchronization\",r,e,n.start,s-n.insertionTs);return}c.debug(\"SI: found true buffered start\",r,e,n.start),n.bufferedStart=e,na(n)&&(n.start=e,n.precizeStart=!0)}else if(e<n.start)c.debug(\"SI: range start too far from expected start\",r,e,n.start),n.bufferedStart=n.start;else{let s=L();if(n.start-e>=a&&s-n.insertionTs<o){c.debug(\"SI: Ignored bufferedStart synchronization\",r,e,n.start,s-n.insertionTs);return}c.debug(\"SI: Segment appears immediately garbage collected at the start\",r,e,n.start),n.bufferedStart=e}}function ds(n,e,t){let{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:r,MISSING_DATA_TRIGGER_SYNC_DELAY:i,SEGMENT_SYNCHRONIZATION_DELAY:a}=U.getCurrent();if(n.bufferedEnd!==void 0)n.bufferedEnd>e&&(c.debug(\"SI: Segment partially GCed at the end\",t,n.bufferedEnd,e),n.bufferedEnd=e),!n.precizeEnd&&e-n.end<=r&&us(n)&&(n.precizeEnd=!0,n.end=e);else if(n.precizeEnd)c.debug(\"SI: buffered end is precize end\",t,n.end),n.bufferedEnd=n.end;else if(e-n.end<=r||!n.infos.segment.complete){let o=L();if(e-n.end>=i&&o-n.insertionTs<a){c.debug(\"SI: Ignored bufferedEnd synchronization\",t,e,n.end,o-n.insertionTs);return}c.debug(\"SI: found true buffered end\",t,e,n.end),n.bufferedEnd=e,us(n)&&(n.end=e,n.precizeEnd=!0)}else if(e>n.end)c.debug(\"SI: range end too far from expected end\",t,e,n.end),n.bufferedEnd=n.end;else{let o=L();if(e-n.end>=i&&o-n.insertionTs<a){c.debug(\"SI: Ignored bufferedEnd synchronization\",t,e,n.end,o-n.insertionTs);return}c.debug(\"SI: Segment appears immediately garbage collected at the end\",t,n.bufferedEnd,e),n.bufferedEnd=e}}function Kd(n){let e=.016666666666666666,t={},r=[],i=null,a=null;function o(u){let l=String.fromCharCode(r.length+65);return r.push({letter:l,periodId:u.period.id,representationId:u.representation.id,bitrate:u.representation.bitrate}),l}let s=\"\";for(let u=0;u<n.length;u++){let l=n[u];if(l.bufferedStart!==void 0&&l.bufferedEnd!==void 0){let d=l.infos.period.id,f=l.infos.representation.id,m=t[d],p;m===void 0?(p=o(l.infos),t[d]={[f]:p}):m[f]===void 0?(p=o(l.infos),m[f]=p):p=m[f],i===null?s+=`${l.bufferedStart.toFixed(2)}|${p}|`:a===p?i.bufferedEnd+e<l.bufferedStart&&(s+=`${i.bufferedEnd.toFixed(2)} ~ ${l.bufferedStart.toFixed(2)}|${p}|`):s+=`${i.bufferedEnd.toFixed(2)} ~ ${l.bufferedStart.toFixed(2)}|${p}|`,i=l,a=p}}return i!==null&&(s+=String(i.end.toFixed(2))),r.forEach(u=>{var l;s+=`\n[${u.letter}] P: ${u.periodId} || R: ${u.representationId}(${(l=u.bitrate)!=null?l:\"unknown bitrate\"})`}),s}function Wt(n,e){for(let t=0;t<n.length;t++)if(n[t].infos.period.start>=e.start)return t>0?n[t-1]:null;return n.length>0?n[n.length-1]:null}function Vt(n,e){for(let t=0;t<n.length;t++)if(n[t].infos.period.start>e.start)return n[t];return null}var ls=Pn;var qt=class{constructor(){this._segmentInventory=new ls}synchronizeInventory(e){this._segmentInventory.synchronizeBuffered(e)}getLastKnownInventory(){return this._segmentInventory.getInventory()}getSegmentHistory(e){return this._segmentInventory.getHistoryFor(e)}};var vn=class extends qt{constructor(e,t,r){super(),c.info(\"AVSB: calling `mediaSource.addSourceBuffer`\",t);let i=r.addSourceBuffer(e,t);this.bufferType=e,this._sourceBuffer=i,this._lastInitSegmentUniqueId=null,this.codec=t,this._initSegmentsMap=new Map,this._pendingOperations=[]}declareInitSegment(e,t){fs(t),this._initSegmentsMap.set(e,t)}freeInitSegment(e){this._initSegmentsMap.delete(e)}async pushChunk(e){fs(e.data.chunk),c.debug(\"AVSB: receiving order to push data to the SourceBuffer\",this.bufferType,bt(e.inventoryInfos));let t=this._getActualDataToPush(e.data);t.length===0&&t.push(new Uint8Array);let r=Promise.all(t.map(o=>{let{codec:s,timestampOffset:u,appendWindow:l}=e.data;return c.debug(\"AVSB: pushing segment\",this.bufferType,bt(e.inventoryInfos)),this._sourceBuffer.appendBuffer(o,{codec:s,timestampOffset:u,appendWindow:l})}));this._addToOperationQueue(r,{type:0,value:e});let i;try{i=await r}catch(o){throw this._segmentInventory.insertChunk(e.inventoryInfos,!1,L()),o}e.inventoryInfos!==null&&this._segmentInventory.insertChunk(e.inventoryInfos,!0,L());let a=i[i.length-1];return this._segmentInventory.synchronizeBuffered(a),a}async removeBuffer(e,t){c.debug(\"AVSB: receiving order to remove data from the SourceBuffer\",this.bufferType,e,t);let r=this._sourceBuffer.remove(e,t);this._addToOperationQueue(r,{type:1,value:{start:e,end:t}});let i=await r;return this._segmentInventory.synchronizeBuffered(i),i}async signalSegmentComplete(e){if(this._pendingOperations.length>0){let{promise:t}=this._pendingOperations[this._pendingOperations.length-1];this._addToOperationQueue(t,{type:2,value:e});try{await t}catch(r){}}this._segmentInventory.completeSegment(e)}getPendingOperations(){return this._pendingOperations.map(e=>e.operation)}dispose(){try{c.debug(\"AVSB: Calling `dispose` on the SourceBufferInterface\"),this._sourceBuffer.dispose()}catch(e){c.debug(`AVSB: Failed to dispose a ${this.bufferType} SourceBufferInterface:`,e instanceof Error?e:\"\")}}_getActualDataToPush(e){let t=[];if(e.initSegmentUniqueId!==null&&!this._isLastInitSegment(e.initSegmentUniqueId)){let r=this._initSegmentsMap.get(e.initSegmentUniqueId);if(r===void 0)throw new Error(\"Invalid initialization segment uniqueId\");let i=new ArrayBuffer(r.byteLength),a=new Uint8Array(i);a.set(r instanceof ArrayBuffer?new Uint8Array(r):new Uint8Array(r.buffer)),r=a,t.push(r),this._lastInitSegmentUniqueId=e.initSegmentUniqueId}return e.chunk!==null&&t.push(e.chunk),t}_isLastInitSegment(e){return this._lastInitSegmentUniqueId===null?!1:this._lastInitSegmentUniqueId===e}_addToOperationQueue(e,t){let r={operation:t,promise:e};this._pendingOperations.push(r);let i=()=>{let a=this._pendingOperations.indexOf(r);a>=0&&this._pendingOperations.splice(a,1)};e.then(i,i)}};function fs(n){if(b.CURRENT_ENV!==b.PRODUCTION&&(typeof n!=\"object\"||n!==null&&!(n instanceof ArrayBuffer)&&!(n.buffer instanceof ArrayBuffer)))throw new Error(\"Invalid data given to the AudioVideoSegmentSink\")}var Or=vn;var Cn=class extends qt{constructor(e){c.debug(\"HTSB: Creating TextSegmentSink\"),super(),this.bufferType=\"text\",this._sender=e,this._pendingOperations=[],this._sender.reset()}declareInitSegment(e){c.warn(\"HTSB: Declaring initialization segment for Text SegmentSink\",e)}freeInitSegment(e){c.warn(\"HTSB: Freeing initialization segment for Text SegmentSink\",e)}async pushChunk(e){let{data:t}=e;Yd(t.chunk);let r=this._sender.pushTextData(Le(_e({},t),{chunk:t.chunk}));this._addToOperationQueue(r,{type:0,value:e});let i=await r;return e.inventoryInfos!==null&&this._segmentInventory.insertChunk(e.inventoryInfos,!0,L()),this._segmentInventory.synchronizeBuffered(i),i}async removeBuffer(e,t){let r=this._sender.remove(e,t);this._addToOperationQueue(r,{type:1,value:{start:e,end:t}});let i=await r;return this._segmentInventory.synchronizeBuffered(i),i}async signalSegmentComplete(e){if(this._pendingOperations.length>0){let{promise:t}=this._pendingOperations[this._pendingOperations.length-1];this._addToOperationQueue(t,{type:2,value:e});try{await t}catch(r){}}this._segmentInventory.completeSegment(e)}getPendingOperations(){return this._pendingOperations.map(e=>e.operation)}dispose(){c.debug(\"HTSB: Disposing TextSegmentSink\"),this._sender.reset()}_addToOperationQueue(e,t){let r={operation:t,promise:e};this._pendingOperations.push(r);let i=()=>{let a=this._pendingOperations.indexOf(r);a>=0&&this._pendingOperations.splice(a,1)};e.then(i,i)}};function Yd(n){if(b.CURRENT_ENV!==b.PRODUCTION&&(typeof n!=\"object\"||n===null||typeof n.data!=\"string\"||typeof n.type!=\"string\"||n.language!==void 0&&typeof n.language!=\"string\"||n.start!==void 0&&typeof n.start!=\"number\"||n.end!==void 0&&typeof n.end!=\"number\"))throw new Error(\"Invalid format given to a TextSegmentSink\")}b.CURRENT_ENV===b.DEV&&(Qd=function(e){function t(r){}});var Qd;var ms=Cn;function kt(n,e){let t;return new Promise((r,i)=>{if(n.cancellationError!==null)return i(n.cancellationError);let a=!1;t=e(function(u){n.deregister(o),a=!0,r(u)},function(u){n.deregister(o),a=!0,i(u)}),a||n.register(o);function o(s){t!==void 0&&t(),i(s)}})}var $d=[\"audio\",\"video\",\"text\"],An=class n{static isNative(e){return cs(e)}constructor(e,t,r){this._mediaSource=e,this._textInterface=r,this._hasVideo=t,this._initializedSegmentSinks={},this._onNativeBufferAddedOrDisabled=[]}getBufferTypes(){let e=this.getNativeBufferTypes();return this._textInterface!==null&&e.push(\"text\"),e}getNativeBufferTypes(){return this._hasVideo?[\"video\",\"audio\"]:[\"audio\"]}getStatus(e){let t=this._initializedSegmentSinks[e];return t===void 0?{type:\"uninitialized\"}:t===null?{type:\"disabled\"}:{type:\"initialized\",value:t}}waitForUsableBuffers(e){return this._areNativeBuffersUsable()?Promise.resolve():kt(e,t=>{let r,i=()=>{let a=this._onNativeBufferAddedOrDisabled.indexOf(r);a>=0&&this._onNativeBufferAddedOrDisabled.splice(a,1)};return r=()=>{this._areNativeBuffersUsable()&&(i(),t())},this._onNativeBufferAddedOrDisabled.push(r),i})}disableSegmentSink(e){let t=this._initializedSegmentSinks[e];if(t===null){c.warn(`SBS: The ${e} SegmentSink was already disabled.`);return}if(t!==void 0)throw new Error(\"Cannot disable an active SegmentSink.\");this._initializedSegmentSinks[e]=null,n.isNative(e)&&this._onNativeBufferAddedOrDisabled.forEach(r=>r())}createSegmentSink(e,t){let r=this._initializedSegmentSinks[e];if(cs(e)){if(!v(r))return r instanceof Or&&r.codec!==t?c.warn(\"SB: Reusing native SegmentSink with codec\",r.codec,\"for codec\",t):c.info(\"SB: Reusing native SegmentSink with codec\",t),r;c.info(\"SB: Adding native SegmentSink with codec\",t);let a=e===\"audio\"?\"audio\":\"video\",o=new Or(a,t,this._mediaSource);return this._initializedSegmentSinks[e]=o,this._onNativeBufferAddedOrDisabled.forEach(s=>s()),o}if(!v(r))return c.info(\"SB: Reusing a previous custom SegmentSink for the type\",e),r;let i;if(e===\"text\"){if(c.info(\"SB: Creating a new text SegmentSink\"),this._textInterface===null)throw new Error(\"HTML Text track feature not activated\");return i=new ms(this._textInterface),this._initializedSegmentSinks.text=i,i}throw c.error(\"SB: Unknown buffer type:\",e),new j(\"BUFFER_TYPE_UNKNOWN\",\"The player wants to create a SegmentSink of an unknown type.\")}disposeSegmentSink(e){let t=this._initializedSegmentSinks[e];if(v(t)){c.warn(\"SB: Trying to dispose a SegmentSink that does not exist\");return}c.info(\"SB: Aborting SegmentSink\",e),t.dispose(),delete this._initializedSegmentSinks[e]}disposeAll(){$d.forEach(e=>{this.getStatus(e).type===\"initialized\"&&this.disposeSegmentSink(e)})}_areNativeBuffersUsable(){let e=this.getNativeBufferTypes();return!(e.some(i=>this._initializedSegmentSinks[i]===void 0)||e.every(i=>this._initializedSegmentSinks[i]===null))}};function cs(n){return n===\"audio\"||n===\"video\"}var ht=An;function kn(n,e){return kt(e,t=>{let r=setTimeout(()=>t(),n);return()=>clearTimeout(r)})}var xn=class extends oe{constructor(e,t,r,i){super(),this._content=e,this._currentCanceller=null,this._downloadQueue=t,this._initSegmentRequest=null,this._mediaSegmentRequest=null,this._segmentFetcher=r,this._initSegmentInfoRef=new G(void 0),this._mediaSegmentAwaitingInitMetadata=null,i||this._initSegmentInfoRef.setValue(null)}getRequestedInitSegment(){return this._initSegmentRequest===null?null:this._initSegmentRequest.segment}getRequestedMediaSegment(){return this._mediaSegmentRequest===null?null:this._mediaSegmentRequest.segment}start(){this._currentCanceller===null&&(this._currentCanceller=new W,this._downloadQueue.onUpdate(e=>{let{segmentQueue:t}=e;if(t.length>0&&t[0].segment.id===this._mediaSegmentAwaitingInitMetadata)return;let r=this._mediaSegmentRequest;if(t.length===0){if(r===null)return;c.debug(\"Stream: no more media segment to request. Cancelling queue.\",this._content.adaptation.type),this._restartMediaSegmentDownloadingQueue();return}else if(r===null){c.debug(\"Stream: Media segments now need to be requested. Starting queue.\",this._content.adaptation.type,t.length),this._restartMediaSegmentDownloadingQueue();return}else{let i=t[0];if(r.segment.id!==i.segment.id){c.debug(\"Stream: Next media segment changed, cancelling previous\",this._content.adaptation.type),this._restartMediaSegmentDownloadingQueue();return}r.priority!==i.priority&&(c.debug(\"Stream: Priority of next media segment changed, updating\",this._content.adaptation.type,r.priority,i.priority),this._segmentFetcher.updatePriority(r.request,i.priority));return}},{emitCurrentValue:!0,clearSignal:this._currentCanceller.signal}),this._downloadQueue.onUpdate(e=>{var r;let t=this._initSegmentRequest;if(e.initSegment!==null&&t!==null){e.initSegment.priority!==t.priority&&this._segmentFetcher.updatePriority(t.request,e.initSegment.priority);return}else if(((r=e.initSegment)==null?void 0:r.segment.id)===(t==null?void 0:t.segment.id))return;e.initSegment===null&&c.debug(\"Stream: no more init segment to request. Cancelling queue.\",this._content.adaptation.type),this._restartInitSegmentDownloadingQueue(e.initSegment)},{emitCurrentValue:!0,clearSignal:this._currentCanceller.signal}))}stop(){var e;(e=this._currentCanceller)==null||e.cancel(),this._currentCanceller=null}_restartMediaSegmentDownloadingQueue(){this._mediaSegmentRequest!==null&&this._mediaSegmentRequest.canceller.cancel();let{segmentQueue:e}=this._downloadQueue.getValue(),t=e[0],r=i=>{if(this._currentCanceller!==null&&this._currentCanceller.isUsed()){this._mediaSegmentRequest=null;return}if(i===void 0){this._mediaSegmentRequest=null,this.trigger(\"emptyQueue\",null);return}let a=new W,o=this._currentCanceller===null?N:a.linkToSignal(this._currentCanceller.signal),{segment:s,priority:u}=i,l=H({segment:s},this._content),d=!1,f=!1;a.signal.register(()=>{this._mediaSegmentRequest=null,!d&&(this._mediaSegmentAwaitingInitMetadata===s.id&&(this._mediaSegmentAwaitingInitMetadata=null),d=!0,f=!1)});let m=h=>{he(h.segmentType===\"media\",\"Should have loaded a media segment.\"),this.trigger(\"parsedMediaSegment\",H({},h,{segment:s}))},p=()=>{let h=this._downloadQueue.getValue().segmentQueue;if(h.length===0){d=!0,this.trigger(\"emptyQueue\",null);return}else h[0].segment.id===s.id&&h.shift();d=!0,r(h[0])},g=this._segmentFetcher.createRequest(l,u,{onRetry:h=>{this.trigger(\"requestRetry\",{segment:s,error:h})},beforeInterrupted(){c.info(\"Stream: segment request interrupted temporarly.\",s.id,s.time)},onChunk:h=>{let I=this._initSegmentInfoRef.getValue();I!==void 0?m(h(I!=null?I:void 0)):(f=!0,this._initSegmentInfoRef.waitUntilDefined(y=>{m(h(y!=null?y:void 0))},{clearSignal:a.signal}))},onAllChunksReceived:()=>{f?(this._mediaSegmentAwaitingInitMetadata=s.id,this._initSegmentInfoRef.waitUntilDefined(()=>{this._mediaSegmentAwaitingInitMetadata=null,f=!1,this.trigger(\"fullyLoadedSegment\",s)},{clearSignal:a.signal})):this.trigger(\"fullyLoadedSegment\",s)},beforeEnded:()=>{o(),this._mediaSegmentRequest=null,f?this._initSegmentInfoRef.waitUntilDefined(p,{clearSignal:a.signal}):p()}},a.signal);g.catch(h=>{o(),d||(d=!0,this.stop(),this.trigger(\"error\",h))}),this._mediaSegmentRequest={segment:s,priority:u,request:g,canceller:a}};r(t)}_restartInitSegmentDownloadingQueue(e){if(this._currentCanceller!==null&&this._currentCanceller.isUsed()||(this._initSegmentRequest!==null&&this._initSegmentRequest.canceller.cancel(),e===null))return;let t=new W,r=this._currentCanceller===null?N:t.linkToSignal(this._currentCanceller.signal),{segment:i,priority:a}=e,o=H({segment:i},this._content),s=!1,u=this._segmentFetcher.createRequest(o,a,{onRetry:l=>{this.trigger(\"requestRetry\",{segment:i,error:l})},beforeInterrupted:()=>{c.info(\"Stream: init segment request interrupted temporarly.\",i.id)},beforeEnded:()=>{r(),this._initSegmentRequest=null,s=!0},onChunk:l=>{var f;let d=l(void 0);he(d.segmentType===\"init\",\"Should have loaded an init segment.\"),this.trigger(\"parsedInitSegment\",H({},d,{segment:i})),d.segmentType===\"init\"&&this._initSegmentInfoRef.setValue((f=d.initTimescale)!=null?f:null)},onAllChunksReceived:()=>{this.trigger(\"fullyLoadedSegment\",i)}},t.signal);u.catch(l=>{r(),s||(s=!0,this.stop(),this.trigger(\"error\",l))}),t.signal.register(()=>{this._initSegmentRequest=null,!s&&(s=!0)}),this._initSegmentRequest={segment:i,priority:a,request:u,canceller:t}}};function ra(n,e,t,r,i){let{period:a,adaptation:o,representation:s}=n,u=Xd(i,e);if(u===null){if(t===null){if(r&&a.end!==void 0&&e.end>=a.end)return{start:void 0,end:null};let f=s.index.checkDiscontinuity(e.start);if(f!==null)return{start:void 0,end:f}}return null}let l=i[u];if(l.bufferedStart!==void 0&&l.bufferedStart>e.start&&(t===null||l.infos.segment.end<=t)){let f=l.bufferedStart;return!r&&s.index.awaitSegmentBetween(e.start,f)!==!1?null:(c.debug(\"RS: current discontinuity encountered\",o.type,l.bufferedStart),{start:void 0,end:f})}let d=Zd(i,e,u+1);if(d!==null){let f=i[d-1],m=i[d];if(t===null||m.infos.segment.end<=t){if(!r&&s.index.awaitSegmentBetween(f.infos.segment.end,m.infos.segment.time)!==!1)return null;let p=f.bufferedEnd,g=m.bufferedStart;return c.debug(\"RS: future discontinuity encountered\",o.type,p,g),{start:p,end:g}}}if(t===null){if(r&&a.end!==void 0){if(e.end<a.end)return null;let f=Jd(i,a.end);if(f!==null){let m=i[f];if(m.bufferedEnd!==void 0&&m.bufferedEnd<a.end)return c.debug(\"RS: discontinuity encountered at the end of the current period\",o.type,m.bufferedEnd,a.end),{start:m.bufferedEnd,end:null}}}if(a.end!==void 0&&e.end>=a.end)return null;for(let f=i.length-1;f>=0;f--){let m=i[f];if(m.bufferedStart===void 0)break;if(m.bufferedStart<e.end){if(m.bufferedEnd!==void 0&&m.bufferedEnd<e.end){let p=s.index.checkDiscontinuity(e.end);if(p!==null)return{start:m.bufferedEnd,end:p}}return null}}}return null}function Xd(n,e){for(let t=0;t<n.length;t++){let r=n[t];if(r.bufferedStart===void 0||r.bufferedEnd===void 0||r.bufferedStart>=e.end)return null;if(r.bufferedEnd>e.start)return t}return null}function Zd(n,e,t){if(t<=0)return c.error(\"RS: Asked to check a discontinuity before the first chunk.\"),null;for(let r=t;r<n.length;r++){let i=n[r],a=n[r-1];if(i.bufferedStart===void 0||a.bufferedEnd===void 0||i.bufferedStart>=e.end)return null;if(i.bufferedStart-a.bufferedEnd>0)return r}return null}function Jd(n,e){for(let t=n.length-1;t>=0;t--){let r=n[t];if(r.bufferedStart===void 0)return null;if(r.bufferedStart<e)return t}return null}function ia({bufferedSegments:n,content:e,currentPlaybackTime:t,fastSwitchThreshold:r,getBufferedHistory:i,neededRange:a,segmentsBeingPushed:o,maxBufferSize:s}){let{adaptation:u,representation:l}=e,d=el(n,o,s),f=l.index.getSegments(a.start,a.end-a.start),m=n.filter(T=>!ps(T.infos,e,t,r)).filter((T,C,P)=>{let x=C===0?null:P[C-1],_=C>=P.length-1?null:P[C+1],A=null;if(rl(T,x,a.start)){if(A=i(T.infos),al(A,T.bufferedStart))return!1;c.debug(\"Stream: skipping segment gc-ed at the start\",T.start,T.bufferedStart)}if(il(T,_,a.end)){if(A=A!=null?A:i(T.infos),ol(A,T.bufferedEnd))return!1;c.debug(\"Stream: skipping segment gc-ed at the end\",T.end,T.bufferedEnd)}return!0}),{MINIMUM_SEGMENT_SIZE:p,MIN_BUFFER_AHEAD:g}=U.getCurrent(),h=!1,I=Math.min(1/60,p),y=!1,E=[];return{segmentsToLoad:f.filter(T=>{let C=H({segment:T},e);if(o.length>0&&o.some(D=>Ze(C,D)))return!1;let{duration:P,time:x,end:_}=T;if(T.isInit)return!0;if(h)return E.push(T),!1;if(T.complete&&P<p||o.length>0&&o.some(D=>{if(D.period.id!==e.period.id||D.adaptation.id!==e.adaptation.id)return!1;let{segment:w}=D;if(w.time-I>x)return!1;if(w.complete){if(w.end+I<_)return!1}else if(Math.abs(x-w.time)>x)return!1;return!ps(D,C,t,r)}))return!1;for(let k=0;k<m.length;k++){let D=m[k],w=D.infos.period.id===e.period.id;if(D.status===1&&w){let O=D.infos.segment;if(x-O.time>-I){if(O.complete){if(O.end-_>-I)return!1}else if(Math.abs(x-O.time)<I)return!1}}}let A=P*e.representation.bitrate;if(d-A<0&&(y=!0,x>a.start+g))return h=!0,E.push(T),!1;let M=i(C);if(M.length>1){let k=M[M.length-1],D=M[M.length-2];if(k.buffered===null&&D.buffered===null)return c.warn(\"Stream: Segment GCed multiple times in a row, ignoring it.\",\"If this happens a lot and lead to unpleasant experience, please check your device's available memory. If it's low when this message is emitted, you might want to update the RxPlayer's settings (`maxBufferAhead`, `maxVideoBufferSize` etc.) so less memory is used by regular media data buffering.\"+u.type,l.id,T.time),!1}for(let k=0;k<m.length;k++){let D=m[k];if(D.end+I>x){let w=D.start>x+I||tl(m,k).end<_-I;return w&&(d-=A),w}}return d-=A,!0}),segmentsOnHold:E,isBufferFull:y}}function el(n,e,t){let r=t*8e3;return r-=e.reduce((i,a)=>{let{bitrate:o}=a.representation,{duration:s}=a.segment;return i+o*s},0),n.reduce((i,a)=>a.chunkSize!==void 0?i-a.chunkSize*8:i,r)}function tl(n,e){let t=e+1,{MINIMUM_SEGMENT_SIZE:r}=U.getCurrent(),i=Math.min(1/60,r);for(;t<n.length-1&&n[t-1].end+i>n[t].start;)t++;return t--,n[t]}function ps(n,e,t,r){let{CONTENT_REPLACEMENT_PADDING:i}=U.getCurrent();if(n.period.id!==e.period.id)return!1;let{segment:a}=n;return a.time<t+i?!1:n.adaptation.id!==e.adaptation.id?!0:nl(n.representation,e.representation,r)}function nl(n,e,t){let r=n.bitrate,{BITRATE_REBUFFERING_RATIO:i}=U.getCurrent();if(t===void 0){let a=r*i;return e.bitrate>a}return r<t&&e.bitrate>r}function rl(n,e,t){let{MAX_TIME_MISSING_FROM_COMPLETE_SEGMENT:r}=U.getCurrent();return n.bufferedStart===void 0||e!==null&&e.bufferedEnd!==void 0&&n.bufferedStart-e.bufferedEnd<.1?!1:t<n.bufferedStart&&n.bufferedStart-n.start>r?(c.info(\"Stream: The start of the wanted segment has been garbage collected\",n.start,n.bufferedStart),!0):!1}function il(n,e,t){let{MAX_TIME_MISSING_FROM_COMPLETE_SEGMENT:r}=U.getCurrent();return n.bufferedEnd===void 0||e!==null&&e.bufferedStart!==void 0&&e.bufferedStart-n.bufferedEnd<.1?!1:t>n.bufferedEnd&&n.end-n.bufferedEnd>r?(c.info(\"Stream: The end of the wanted segment has been garbage collected\",n.end,n.bufferedEnd),!0):!1}function al(n,e){var o,s;if(n.length<2)return!0;let r=(o=n[n.length-1].buffered)==null?void 0:o.start;if(e!==void 0&&r!==void 0&&e-r>.05)return!0;let a=(s=n[n.length-2].buffered)==null?void 0:s.start;return a===void 0||r===void 0?!0:Math.abs(a-r)>.01}function ol(n,e){var o,s;if(n.length<2)return!0;let r=(o=n[n.length-1].buffered)==null?void 0:o.end;if(e!==void 0&&r!==void 0&&r-e>.05)return!0;let a=(s=n[n.length-2].buffered)==null?void 0:s.end;return a===void 0||r===void 0?!0:Math.abs(a-r)>.01}function Mn(n,e){let t=n-e,{SEGMENT_PRIORITIES_STEPS:r}=U.getCurrent();for(let i=0;i<r.length;i++)if(t<r[i])return i;return r.length}function aa(n,e,t,r,i,a,o){var _,A,M;let{representation:s}=n,u=(A=(_=t.getIsPaused())!=null?_:t.getReference().getValue().paused.pending)!=null?A:t.getReference().getValue().paused.last,l=(M=t.getPlaybackRate())!=null?M:t.getReference().getValue().speed,d=e;(u===void 0||l===void 0||u||l<=0)&&(d-=.1);let f=sl(n,d,i),m=s.index.shouldRefresh(f.start,f.end),p=o.getPendingOperations().filter(k=>k.type===2).map(k=>k.value),g=o.getLastKnownInventory(),h=t.getCurrentTime();h===void 0&&(h=t.getReference().getValue().position.getWanted());let I=o.getSegmentHistory.bind(o),{segmentsToLoad:y,segmentsOnHold:E,isBufferFull:R}=ia({content:n,bufferedSegments:g,currentPlaybackTime:h,fastSwitchThreshold:r,getBufferedHistory:I,neededRange:f,segmentsBeingPushed:p,maxBufferSize:a}),T=y.map(k=>({priority:Mn(k.time,d),segment:k})),C=s.index.isInitialized()&&!s.index.isStillAwaitingFutureSegments()&&f.hasReachedPeriodEnd&&T.length===0&&E.length===0,P=null;return p.length>0&&(P=Math.min(...p.map(k=>k.segment.time))),E.length>0&&(P=P!==null?Math.min(P,E[0].time):E[0].time),T.length>0&&(P=P!==null?Math.min(P,T[0].segment.time):T[0].segment.time),{imminentDiscontinuity:ra(n,f,P,C,g),hasFinishedLoading:C,neededSegments:T,isBufferFull:R,shouldRefreshManifest:m}}function sl(n,e,t){var f;let r,{manifest:i,period:a,representation:o}=n,s=o.index.getLastAvailablePosition(),u=o.index;!v(s)&&ht.isNative(n.adaptation.type)&&e>=s&&u.isInitialized()&&!u.isStillAwaitingFutureSegments()&&ul(i,a,e)?r=s-1:r=e-.1;let l=r+t,d;return!o.index.isInitialized()||o.index.isStillAwaitingFutureSegments()||a.end===void 0?d=!1:s===void 0?d=l>=a.end:s===null?d=!0:d=l>=s,{start:Math.max(r,a.start),end:Math.min(l,(f=a.end)!=null?f:1/0),hasReachedPeriodEnd:d}}function ul(n,e,t){var i;let r=n.getPeriodAfter(e);return e.containsTime(t,r)&&n.isLastPeriodKnown&&e.id===((i=n.periods[n.periods.length-1])==null?void 0:i.id)}function oa(n){return new Promise(e=>{setTimeout(e,n)})}async function On(n,e,t,r,i){try{return await e.pushChunk(t)}catch(a){if(i.isCancelled()&&a instanceof ie)throw a;if(!(a instanceof Ce)||!a.isBufferFull){let u=a instanceof Error?a.toString():\"An unknown error happened when pushing content\";throw new j(\"BUFFER_APPEND_ERROR\",u,{tracks:[ut(t.inventoryInfos.adaptation)]})}let{position:o}=n.getReference().getValue(),s=o.getWanted();try{c.warn(\"Stream: Running garbage collector\");let u=Math.max(s-5,0),l=s+r.getValue()+12;if(await e.removeBuffer(0,u),await e.removeBuffer(l,Number.MAX_VALUE),await oa(200),i.cancellationError!==null)throw i.cancellationError;return await e.pushChunk(t)}catch(u){if(u instanceof ie)throw u;let l=u instanceof Error?u.toString():\"Could not clean the buffer\";throw new j(\"BUFFER_FULL_ERROR\",l,{tracks:[ut(t.inventoryInfos.adaptation)]})}}}async function sa({playbackObserver:n,content:e,initSegmentUniqueId:t,segment:r,segmentSink:i,bufferGoal:a},o){if(o.cancellationError!==null)throw o.cancellationError;let s=e.representation.getMimeTypeString(),u={initSegmentUniqueId:t,chunk:null,timestampOffset:0,appendWindow:[void 0,void 0],codec:s},l=H({segment:r,chunkSize:void 0,start:0,end:0},e),d=await On(n,i,{data:u,inventoryInfos:l},a,o);return{content:e,segment:r,buffered:d}}async function ua({playbackObserver:n,bufferGoal:e,content:t,initSegmentUniqueId:r,parsedSegment:i,segment:a,segmentSink:o},s){var P,x;if(i.chunkData===null)return null;if(s.cancellationError!==null)throw s.cancellationError;let{chunkData:u,chunkInfos:l,chunkOffset:d,chunkSize:f,appendWindow:m}=i,p=t.representation.getMimeTypeString(),{APPEND_WINDOW_SECURITIES:g}=U.getCurrent(),h=[m[0]!==void 0?Math.max(0,m[0]-g.START):void 0,m[1]!==void 0?m[1]+g.END:void 0],I={initSegmentUniqueId:r,chunk:u,timestampOffset:d,appendWindow:h,codec:p},y=(P=l==null?void 0:l.time)!=null?P:a.time,E=(x=l==null?void 0:l.duration)!=null?x:a.duration,R=y+E;h[0]!==void 0&&(y=Math.max(y,h[0])),h[1]!==void 0&&(R=Math.min(R,h[1]));let T=H({segment:a,chunkSize:f,start:y,end:R},t),C=await On(n,o,{data:I,inventoryInfos:T},e,s);return{content:t,segment:a,buffered:C}}function da({content:n,options:e,playbackObserver:t,segmentSink:r,segmentFetcher:i,terminate:a},o,s){let{period:u,adaptation:l,representation:d}=n,{bufferGoal:f,maxBufferSize:m,drmSystemId:p,fastSwitchThreshold:g}=e,h=l.type,I=new W;I.linkToSignal(s);let y=new W;y.linkToSignal(I.signal);let E={segment:d.index.getInitSegment(),uniqueId:null,isLoaded:!1};I.signal.register(()=>{E.uniqueId!==null&&r.freeInitSegment(E.uniqueId)});let R=new G({initSegment:null,segmentQueue:[]},y.signal),T=E.segment!==null;T||(E.isLoaded=!0);let C=!1;if(p!==void 0){let M=d.getEncryptionData(p);if(M.length>0&&M.every(k=>k.keyIds!==void 0)&&(C=!0,o.encryptionDataEncountered(M.map(k=>H({content:n},k))),I.isUsed()))return}let P=new xn(n,R,i,T);P.addEventListener(\"error\",M=>{y.signal.isCancelled()||(I.cancel(),o.error(M))}),P.addEventListener(\"parsedInitSegment\",_),P.addEventListener(\"parsedMediaSegment\",_),P.addEventListener(\"emptyQueue\",x),P.addEventListener(\"requestRetry\",M=>{if(o.warning(M.error),y.signal.isCancelled())return;let k=M.segment,{index:D}=d;D.isSegmentStillAvailable(k)===!1?x():D.canBeOutOfSyncError(M.error,k)&&o.manifestMightBeOufOfSync()}),P.addEventListener(\"fullyLoadedSegment\",M=>{r.signalSegmentComplete(H({segment:M},n)).catch(A)}),P.start(),y.signal.register(()=>{P.removeEventListener(),P.stop()}),t.listen(x,{includeLastObservation:!1,clearSignal:y.signal}),n.manifest.addEventListener(\"manifestUpdate\",x,y.signal),f.onUpdate(x,{emitCurrentValue:!1,clearSignal:y.signal}),m.onUpdate(x,{emitCurrentValue:!1,clearSignal:y.signal}),a.onUpdate(x,{emitCurrentValue:!1,clearSignal:y.signal}),x();return;function x(){if(y.isUsed())return;let M=t.getReference().getValue(),k=M.position.getWanted(),D=aa(n,k,t,g.getValue(),f.getValue(),m.getValue(),r),{neededSegments:w}=D,O=null;if(d.index.isInitialized()){if(w.length>0&&!E.isLoaded&&E.segment!==null){let q=w[0].priority;O={segment:E.segment,priority:q}}}else if(E.segment===null)c.warn(\"Stream: Uninitialized index without an initialization segment\");else if(E.isLoaded)c.warn(\"Stream: Uninitialized index with an already loaded initialization segment\");else{let q=M.position.getWanted();O={segment:E.segment,priority:Mn(u.start,q)}}let B=a.getValue();if(B===null)R.setValue({initSegment:O,segmentQueue:w});else if(B.urgent){c.debug(\"Stream: Urgent switch, terminate now.\",h),R.setValue({initSegment:null,segmentQueue:[]}),R.finish(),y.cancel(),o.terminating();return}else{let q=w[0],J=P.getRequestedInitSegment(),$=P.getRequestedMediaSegment(),V=$===null||q===void 0||$.id!==q.segment.id?[]:[q],Y=J===null?null:O;if(R.setValue({initSegment:Y,segmentQueue:V}),V.length===0&&Y===null){c.debug(\"Stream: No request left, terminate\",h),R.finish(),y.cancel(),o.terminating();return}}if(o.streamStatusUpdate({period:u,position:M.position.getWanted(),bufferType:h,imminentDiscontinuity:D.imminentDiscontinuity,isEmptyStream:!1,hasFinishedLoading:D.hasFinishedLoading,neededSegments:D.neededSegments}),y.signal.isCancelled())return;let{UPTO_CURRENT_POSITION_CLEANUP:z}=U.getCurrent();if(D.isBufferFull){let q=Math.max(0,k-z);q>0&&r.removeBuffer(0,q).catch(A)}D.shouldRefreshManifest&&o.needsManifestRefresh()}function _(M){if(!I.isUsed()){for(let k of M.protectionData)d.addProtectionData(k.initDataType,k.keyId,k.initData);if(!C){let k=d.getAllEncryptionData();if(k.length>0&&(o.encryptionDataEncountered(k.map(D=>H({content:n},D))),C=!0,I.isUsed()))return}if(M.segmentType===\"init\"){if(!d.index.isInitialized()&&M.segmentList!==void 0&&d.index.initialize(M.segmentList),E.isLoaded=!0,M.initializationData!==null){let k=d.uniqueId;E.uniqueId=k,r.declareInitSegment(k,M.initializationData),sa({playbackObserver:t,bufferGoal:f,content:n,initSegmentUniqueId:k,segment:M.segment,segmentData:M.initializationData,segmentSink:r},I.signal).then(D=>{D!==null&&o.addedSegment(D)}).catch(A)}x();return}else{let{inbandEvents:k,predictedSegments:D,needsManifestRefresh:w}=M;if(D!==void 0&&d.index.addPredictedSegments(D,M.segment),w===!0&&(o.needsManifestRefresh(),I.isUsed())||k!==void 0&&k.length>0&&(o.inbandEvent(k),I.isUsed()))return;let O=E.uniqueId;ua({playbackObserver:t,bufferGoal:f,content:n,initSegmentUniqueId:O,parsedSegment:M,segment:M.segment,segmentSink:r},I.signal).then(B=>{B!==null&&o.addedSegment(B)}).catch(A)}}}function A(M){I.isUsed()&&M instanceof ie||(I.cancel(),o.error(M))}}var gs=da;function la(n,e,t,r,i){var m,p,g,h;if(t.switchingMode===\"lazy\")return{type:\"continue\",value:void 0};let a=r.getLastKnownInventory(),o=[];for(let I of a)I.infos.period.id===n.id&&(I.infos.adaptation.id!==e.id||!se(t.representationIds,I.infos.representation.id))&&zt(o,{start:(m=I.bufferedStart)!=null?m:I.start,end:(p=I.bufferedEnd)!=null?p:I.end});let s=r.getPendingOperations();for(let I of s)if(I.type===0){let y=I.value.inventoryInfos;if(y.period.id===n.id&&(y.adaptation.id!==e.id||!se(t.representationIds,y.representation.id))){let E=y.segment.time,R=E+y.segment.duration;zt(o,{start:E,end:R})}}if(o.length===0)return{type:\"continue\",value:void 0};if(t.switchingMode===\"reload\"){let I=i.getReadyState();if(I===void 0||I>1)return{type:\"needs-reload\",value:void 0}}let u=t.switchingMode===\"direct\",l=[],d=Wt(a,n);if(d!==null&&(d.bufferedEnd===void 0||n.start-d.bufferedEnd<1)&&l.push({start:0,end:n.start+1}),!u){let{ADAP_REP_SWITCH_BUFFER_PADDINGS:I}=U.getCurrent(),y=e.type,E=(g=I[y].before)!=null?g:0,R=(h=I[y].after)!=null?h:0,T=i.getCurrentTime();T===void 0&&(T=i.getReference().getValue().position.getPolled()),l.push({start:T-E,end:T+R})}if(n.end!==void 0){let I=Vt(a,n);I!==null&&(I.bufferedStart===void 0||I.bufferedStart-n.end<1)&&l.push({start:n.end-1,end:Number.MAX_VALUE})}let f=kr(o,l);return f.length===0?{type:\"continue\",value:void 0}:u?{type:\"flush-buffer\",value:f}:{type:\"clean-buffer\",value:f}}function fa({playbackObserver:n,content:e,options:t,representationEstimator:r,segmentSink:i,segmentFetcherCreator:a,wantedBufferAhead:o,maxVideoBufferSize:s},u,l){let{manifest:d,period:f,adaptation:m}=e,p=new W;p.linkToSignal(l);let g=new Map,h=new G(null,p.signal),I,y=e.representations.getValue().representationIds,E=e.adaptation.representations.filter(w=>se(y,w.id)&&w.decipherable!==!1&&w.isSupported!==!1),R=new G(E,p.signal),{estimates:T,callbacks:C}=r({manifest:d,period:f,adaptation:m},h,R,n,p.signal),P=a.createSegmentFetcher(m.type,{onRequestBegin:C.requestBegin,onRequestEnd:C.requestEnd,onProgress:C.requestProgress,onMetrics:C.metrics}),x=new G(0);T.onUpdate(({bitrate:w,knownStableBitrate:O})=>{t.enableFastSwitching&&x.setValueIfChanged(O),!(w===void 0||w===I)&&(I=w,c.debug(`Stream: new ${m.type} bitrate estimate`,w),u.bitrateEstimateChange({type:m.type,bitrate:w}))},{emitCurrentValue:!0,clearSignal:p.signal});let _;e.representations.onUpdate(w=>{_!==void 0&&_.cancel();let O=e.representations.getValue().representationIds,B=e.adaptation.representations.filter(z=>se(O,z.id));R.setValueIfChanged(B),_=new W,_.linkToSignal(p.signal),A(w,_.signal).catch(z=>{(_==null?void 0:_.isUsed())===!0&&W.isCancellationError(z)||(p.cancel(),u.error(z))})},{clearSignal:p.signal,emitCurrentValue:!0});return;async function A(w,O){let B=la(f,m,w,i,n);switch(B.type){case\"continue\":break;case\"needs-reload\":return Ct(()=>{n.listen(()=>{if(O.isCancelled())return;let{DELTA_POSITION_AFTER_RELOAD:z}=U.getCurrent(),q=z.bitrateSwitch;return u.waitingMediaSourceReload({bufferType:m.type,period:f,timeOffset:q,stayInPeriod:!0})},{includeLastObservation:!0,clearSignal:O})});case\"flush-buffer\":case\"clean-buffer\":for(let z of B.value)if(await i.removeBuffer(z.start,z.end),O.isCancelled())return;if(B.type===\"flush-buffer\"&&(u.needsBufferFlush(),O.isCancelled()))return;break;default:ze(B)}M(O)}function M(w){let O=new W;O.linkToSignal(w);let{representation:B}=T.getValue();if(B===null)return;let z=new G(null,O.signal);T.onUpdate($=>{if(!($.representation===null||$.representation.id===B.id))return $.urgent?(c.info(\"Stream: urgent Representation switch\",m.type),z.setValue({urgent:!0})):(c.info(\"Stream: slow Representation switch\",m.type),z.setValue({urgent:!1}))},{clearSignal:O.signal,emitCurrentValue:!0});let q={type:m.type,adaptation:m,period:f,representation:B};if(h.setValue(B),p.isUsed()||(u.representationChange(q),p.isUsed()))return;let J={streamStatusUpdate:u.streamStatusUpdate,encryptionDataEncountered:u.encryptionDataEncountered,manifestMightBeOufOfSync:u.manifestMightBeOufOfSync,needsManifestRefresh:u.needsManifestRefresh,inbandEvent:u.inbandEvent,warning:u.warning,error($){p.cancel(),u.error($)},addedSegment($){C.addedSegment($)},terminating(){if(!O.isUsed())return O.cancel(),M(w)}};k(B,z,J,w)}function k(w,O,B,z){let q=new W;q.linkToSignal(z);let J=Qt(o,Y=>Y*D(w),q.signal),$=m.type===\"video\"?s:new G(1/0);c.info(\"Stream: changing representation\",m.type,w.id,w.bitrate);let V=H({},B,{error(Y){var me;let X=ge(Y,{defaultCode:\"NONE\",defaultReason:\"Unknown `RepresentationStream` error\"});if(X.code!==\"BUFFER_FULL_ERROR\")B.error(Y);else{let ce=o.getValue(),Ie=((me=g.get(w.id))!=null?me:1)*.7;if(Ie<=.05||ce*Ie<=2)throw X;g.set(w.id,Ie),kn(4e3,p.signal).then(()=>k(w,O,B,z)).catch(N)}},terminating(){q.cancel(),B.terminating()}});gs({playbackObserver:n,content:{representation:w,adaptation:m,period:f,manifest:d},segmentSink:i,segmentFetcher:P,terminate:O,options:{bufferGoal:J,maxBufferSize:$,drmSystemId:t.drmSystemId,fastSwitchThreshold:x}},V,z),d.addEventListener(\"manifestUpdate\",Y=>{for(let X of Y.updatedPeriods)if(X.period.id===f.id){for(let me of X.result.updatedAdaptations)if(me.adaptation===m.id){for(let ce of me.removedRepresentations)if(ce===w.id)return z.isCancelled()?void 0:u.waitingMediaSourceReload({bufferType:m.type,period:f,timeOffset:0,stayInPeriod:!0})}}else if(X.period.start>f.start)break},z)}function D(w){let O=g.get(w.id),B=O!==void 0?O:1;return O===void 0&&g.set(w.id,B),B}}var hs=fa;function dl(n,e){let[t,...r]=n.split(\";\"),[i,...a]=e.split(\";\");if(t!==i)return!1;let o=K(r,d=>Ye(d,\"codecs=\")),s=K(a,d=>Ye(d,\"codecs=\"));if(o===void 0||s===void 0)return!1;let u=o.substring(7),l=s.substring(7);return u.split(\".\")[0]===l.split(\".\")[0]}var Is=dl;function ma(n,e,t,r,i,a){var p,g,h,I;if(n.codec!==void 0&&a.onCodecSwitch===\"reload\"&&!ll(t,n.codec))return{type:\"needs-reload\",value:void 0};let o=n.getLastKnownInventory(),s=[];for(let y of o)y.infos.period.id===e.id&&y.infos.adaptation.id!==t.id&&zt(s,{start:(p=y.bufferedStart)!=null?p:y.start,end:(g=y.bufferedEnd)!=null?g:y.end});let u=n.getPendingOperations();for(let y of u)if(y.type===0){let E=y.value.inventoryInfos;if(E.period.id===e.id&&E.adaptation.id!==t.id){let R=E.segment.time,T=R+E.segment.duration;zt(s,{start:R,end:T})}}if(s.length===0)return{type:\"continue\",value:void 0};if(r===\"reload\"){let y=i.getReadyState();if(y===void 0||y>1)return{type:\"needs-reload\",value:void 0}}let l=r===\"direct\",d=[],f=Wt(o,e);if(f!==null&&(f.bufferedEnd===void 0||e.start-f.bufferedEnd<1)&&d.push({start:0,end:e.start+1}),!l){let y=t.type,{ADAP_REP_SWITCH_BUFFER_PADDINGS:E}=U.getCurrent(),R=(h=E[y].before)!=null?h:0,T=(I=E[y].after)!=null?I:0,C=i.getCurrentTime();C===void 0&&(C=i.getReference().getValue().position.getPolled()),d.push({start:C-R,end:C+T})}if(e.end!==void 0){let y=Vt(o,e);y!==null&&(y.bufferedStart===void 0||y.bufferedStart-e.end<1)&&d.push({start:e.end-1,end:Number.MAX_VALUE})}let m=kr(s,d);return m.length===0?{type:\"continue\",value:void 0}:l&&t.type!==\"text\"?{type:\"flush-buffer\",value:m}:{type:\"clean-buffer\",value:m}}function ll(n,e){return n.representations.some(t=>t.isSupported===!0&&t.decipherable!==!1&&Is(t.getMimeTypeString(),e))}function ca({bufferType:n,content:e,garbageCollectors:t,playbackObserver:r,representationEstimator:i,segmentFetcherCreator:a,segmentSinksStore:o,options:s,wantedBufferAhead:u,maxVideoBufferSize:l},d,f){let{manifest:m,period:p}=e,g=new G(void 0,f);if(d.periodStreamReady({type:n,manifest:m,period:p,adaptationRef:g}),f.isCancelled())return;let h,I=!0;g.onUpdate(R=>{(async()=>{var w;if(R===void 0)return;let T=new W;if(T.linkToSignal(f),h==null||h.cancel(),h=T,R===null){c.info(`Stream: Set no ${n} Adaptation. P:`,p.start);let O=o.getStatus(n);if(O.type===\"initialized\"){if(c.info(`Stream: Clearing previous ${n} SegmentSink`),ht.isNative(n))return E(0,!0,T.signal);{let B=(w=p.end)!=null?w:1/0;if(p.start>B)c.warn(\"Stream: Can't free buffer: period's start is after its end\");else if(await O.value.removeBuffer(p.start,B),T.isUsed())return}}else if(O.type===\"uninitialized\"&&(o.disableSegmentSink(n),T.isUsed()))return;return d.adaptationChange({type:n,adaptation:null,period:p}),T.isUsed()?void 0:bs(r,u,n,{period:p},d,T.signal)}let C=p.adaptations[n],P=K(C!=null?C:[],O=>O.id===R.adaptationId);if(P===void 0){h.cancel(),c.warn(\"Stream: Unfound chosen Adaptation choice\",R.adaptationId);return}let{DELTA_POSITION_AFTER_RELOAD:x}=U.getCurrent(),_=!1,A;if(I)A=0;else if(R.relativeResumingPosition!==void 0)A=R.relativeResumingPosition;else switch(_=!0,n){case\"audio\":A=x.trackSwitch.audio;break;case\"video\":A=x.trackSwitch.video;break;default:A=x.trackSwitch.other;break}if(I=!1,ht.isNative(n)&&o.getStatus(n).type===\"disabled\")return E(A,!0,T.signal);m.addEventListener(\"manifestUpdate\",O=>{for(let B of O.updatedPeriods)if(B.period.id===p.id){for(let z of B.result.removedAdaptations)if(z.id===P.id)return E(A,!0,T.signal)}else if(B.period.start>p.start)break},h.signal);let{representations:M}=R;if(c.info(`Stream: Updating ${n} adaptation`,`A: ${P.id}`,`P: ${p.start}`),d.adaptationChange({type:n,adaptation:P,period:p}),T.isUsed())return;let k=fl(o,n,P),D=ma(k,p,P,R.switchingMode,r,s);if(D.type===\"needs-reload\")return E(A,!0,T.signal);if(await o.waitForUsableBuffers(T.signal),!T.isUsed()){if(D.type===\"flush-buffer\"||D.type===\"clean-buffer\"){for(let{start:O,end:B}of D.value)if(await k.removeBuffer(O,B),T.isUsed())return;if(D.type===\"flush-buffer\"&&(d.needsBufferFlush({relativeResumingPosition:A,relativePosHasBeenDefaulted:_}),T.isUsed()))return}t.get(k)(T.signal),y(P,M,k,T.signal)}})().catch(T=>{T instanceof ie||(h==null||h.cancel(),d.error(T))})},{clearSignal:f,emitCurrentValue:!0});function y(R,T,C,P){let x=cl(r,R.type);hs({content:{manifest:m,period:p,adaptation:R,representations:T},options:s,playbackObserver:x,representationEstimator:i,segmentSink:C,segmentFetcherCreator:a,wantedBufferAhead:u,maxVideoBufferSize:l},Le(_e({},d),{error:_}),P);function _(A){if(!ht.isNative(n)){c.error(`Stream: ${n} Stream crashed. Aborting it.`,A instanceof Error?A:\"\"),o.disposeSegmentSink(n);let M=ge(A,{defaultCode:\"NONE\",defaultReason:\"Unknown `AdaptationStream` error\"});return d.warning(M),P.isCancelled()?void 0:bs(r,u,n,{period:p},d,P)}c.error(`Stream: ${n} Stream crashed. Stopping playback.`,A instanceof Error?A:\"\"),d.error(A)}}function E(R,T,C){Ct(()=>{r.listen(()=>{C.isCancelled()||d.waitingMediaSourceReload({bufferType:n,period:p,timeOffset:R,stayInPeriod:T})},{includeLastObservation:!0,clearSignal:C})})}}function fl(n,e,t){let r=n.getStatus(e);if(r.type===\"initialized\")return c.info(\"Stream: Reusing a previous SegmentSink for the type\",e),r.value;let i=ml(t);return n.createSegmentSink(e,i)}function ml(n){let e=n.representations.filter(t=>t.isSupported===!0&&t.decipherable!==!1);if(e.length===0)throw new j(\"NO_PLAYABLE_REPRESENTATION\",\"No Representation in the chosen \"+n.type+\" Adaptation can be played\",{tracks:[ut(n)]});return e[0].getMimeTypeString()}function cl(n,e){return n.deriveReadOnlyObserver(function(r,i){let a=new G(o(),i);return r.onUpdate(s,{clearSignal:i,emitCurrentValue:!1}),a;function o(){let u=r.getValue(),l=u.buffered[e],d=l!==null?Ar(l,u.position.getWanted()):0;return H({},u,{bufferGap:d,buffered:l})}function s(){a.setValue(o())}})}function bs(n,e,t,r,i,a){let{period:o}=r,s=!1;e.onUpdate(u,{emitCurrentValue:!1,clearSignal:a}),n.listen(u,{includeLastObservation:!1,clearSignal:a}),u();function u(){let l=n.getReference().getValue(),d=e.getValue(),f=l.position.getWanted();o.end!==void 0&&f+d>=o.end&&(c.debug('Stream: full \"empty\" AdaptationStream',t),s=!0),i.streamStatusUpdate({period:o,bufferType:t,imminentDiscontinuity:null,position:f,isEmptyStream:!0,hasFinishedLoading:s,neededSegments:[]})}}var Ss=ca;function wr(n,e){if(e.length===0)return[];let t=[],r=n.getLastKnownInventory();for(let i=0;i<r.length;i++){let a=r[i];if(e.some(s=>a.infos.period.id===s.period.id&&a.infos.adaptation.id===s.adaptation.id&&a.infos.representation.id===s.representation.id)){let{bufferedStart:s,bufferedEnd:u}=a;if(s===void 0||u===void 0)return c.warn(\"SO: No buffered start or end found from a segment.\"),[{start:0,end:Number.MAX_VALUE}];let l=t[t.length-1];l!==void 0&&l.end===s?l.end=u:t.push({start:s,end:u})}}return t}function pa(n,e,t,r,i,a,o,s){let{manifest:u,initialPeriod:l}=n,{maxBufferAhead:d,maxBufferBehind:f,wantedBufferAhead:m,maxVideoBufferSize:p}=a,{MINIMUM_MAX_BUFFER_AHEAD:g,MAXIMUM_MAX_BUFFER_AHEAD:h,MAXIMUM_MAX_BUFFER_BEHIND:I}=U.getCurrent(),y=new En(T=>{var _,A;let{bufferType:C}=T,P=(_=I[C])!=null?_:1/0,x=(A=h[C])!=null?A:1/0;return M=>{xr({segmentSink:T,playbackObserver:e,maxBufferBehind:Qt(f,k=>Math.min(k,P),M),maxBufferAhead:Qt(d,k=>{var w;let D=Math.max(k,(w=g[C])!=null?w:0);return Math.min(D,x)},M)},M)}});for(let T of r.getBufferTypes())E(T,l);function E(T,C){let P=new At((D,w)=>D.start-w.start),x=!1,_=new W;return _.linkToSignal(s),e.listen(({position:D})=>{var B;let w=D.getWanted();if(!x||!M(w))return;for(c.info(\"Stream: Destroying all PeriodStreams due to out of bounds situation\",T,w),x=!1;P.length()>0;){let z=P.get(P.length()-1);P.removeElement(z),o.periodStreamCleared({type:T,manifest:u,period:z})}_.cancel(),_=new W,_.linkToSignal(s);let O=(B=u.getPeriodForTime(w))!=null?B:u.getNextPeriod(w);if(O===void 0){c.warn(\"Stream: The wanted position is not found in the Manifest.\"),x=!0;return}A(O)},{clearSignal:s,includeLastObservation:!0}),u.addEventListener(\"decipherabilityUpdate\",D=>{s.isCancelled()||k(D).catch(w=>{s.isCancelled()||(_.cancel(),o.error(w))})},s),A(C);function A(D){let w=Le(_e({},o),{waitingMediaSourceReload(O){let B=P.head();B===void 0||B.id!==O.period.id?o.lockedStream({bufferType:O.bufferType,period:O.period}):o.needsMediaSourceReload({timeOffset:O.timeOffset,minimumPosition:O.stayInPeriod?O.period.start:void 0,maximumPosition:O.stayInPeriod?O.period.end:void 0})},periodStreamReady(O){x=!0,P.add(O.period),o.periodStreamReady(O)},periodStreamCleared(O){P.removeElement(O.period),o.periodStreamCleared(O)},error(O){_.cancel(),o.error(O)}});R(T,D,w,_.signal)}function M(D){let w=P.head(),O=P.last();return w===void 0||O===void 0?!0:w.start>D||(v(O.end)?1/0:O.end)<D}async function k(D){let w=r.getStatus(T),O=D.filter(V=>V.adaptation.type===T);if(O.length===0||w.type!==\"initialized\"||O.every(V=>V.representation.decipherable===!0))return;let B=w.value,z=O.filter(V=>V.representation.decipherable===void 0),q=O.filter(V=>V.representation.decipherable===!1),J=wr(B,q),$=wr(B,z);for(x=!1,c.info(\"Stream: Destroying all PeriodStreams for decipherability matters\",T);P.length()>0;){let V=P.get(P.length()-1);P.removeElement(V),o.periodStreamCleared({type:T,manifest:u,period:V})}_.cancel(),_=new W,_.linkToSignal(s);for(let{start:V,end:Y}of[...J,...$]){if(s.isCancelled())return;if(V<Y){if(s.isCancelled())return;await B.removeBuffer(V,Y)}}Ct(()=>{if(s.isCancelled())return;let V=e.getReference().getValue();if(ys(V,J)){if(o.needsDecipherabilityFlush(),s.isCancelled())return}else if(ys(V,$)&&(o.needsBufferFlush(),s.isCancelled()))return;let Y=V.position.getWanted(),X=u.getPeriodForTime(Y);if(X===void 0){o.error(new j(\"MEDIA_TIME_NOT_FOUND\",\"The wanted position is not found in the Manifest.\"));return}A(X)})}}function R(T,C,P,x){c.info(\"Stream: Creating new Stream for\",T,C.start);let _=null,A=new W;A.linkToSignal(x),e.listen(({position:O},B)=>{if(C.end!==void 0&&O.getWanted()>=C.end){let z=u.getPeriodAfter(C);if(C.containsTime(O.getWanted(),z))return;c.info(\"Stream: Destroying PeriodStream as the current playhead moved above it\",T,C.start,O.getWanted(),C.end),B(),P.periodStreamCleared({type:T,manifest:u,period:C}),A.cancel()}},{clearSignal:x,includeLastObservation:!0});let M={bufferType:T,content:{manifest:u,period:C},garbageCollectors:y,maxVideoBufferSize:p,segmentFetcherCreator:i,segmentSinksStore:r,options:a,playbackObserver:e,representationEstimator:t,wantedBufferAhead:m},k=Le(_e({},P),{streamStatusUpdate(O){if(O.hasFinishedLoading){let B=u.getPeriodAfter(C);B!==null&&D(B)}else _!==null&&(c.info(\"Stream: Destroying next PeriodStream due to current one being active\",T,_.period.start),P.periodStreamCleared({type:T,manifest:u,period:_.period}),_.canceller.cancel(),_=null);P.streamStatusUpdate(O)},error(O){_!==null&&(_.canceller.cancel(),_=null),A.cancel(),P.error(O)}});Ss(M,k,A.signal),w(A.signal);function D(O){if(_!==null){if(_.period.id===O.id)return;c.warn(\"Stream: Creating next `PeriodStream` while one was already created.\",T,O.id,_.period.id),P.periodStreamCleared({type:T,manifest:u,period:_.period}),_.canceller.cancel()}let B=new W;B.linkToSignal(x),_={canceller:B,period:O},R(T,O,P,_.canceller.signal)}function w(O){u.addEventListener(\"manifestUpdate\",B=>{for(let z of B.removedPeriods)if(z.id===C.id){if(u.periods.length>0&&u.periods[0].start<=z.start)return Ct(()=>{if(!O.isCancelled())return o.needsMediaSourceReload({timeOffset:0,minimumPosition:void 0,maximumPosition:void 0})})}else if(z.start>C.start)break;if(B.addedPeriods.length>0&&_!==null){let z=u.getPeriodAfter(C);(z===null||_.period.id!==z.id)&&(c.warn(\"Stream: Destroying next PeriodStream due to new one being added\",T,_.period.start),P.periodStreamCleared({type:T,manifest:u,period:_.period}),_.canceller.cancel(),_=null)}},O)}}}function ys(n,e){if(e.length===0)return!1;let t=n.position.getPolled();return n.speed>=0?e[e.length-1].end>=t-5:e[0].start<=t+5}var Ts=pa;var _s=Ts;var wn=class extends oe{constructor(e,t,r){super(),this._canceller=new W,this._manifest=e,this._activeStreams=new Map,this._allBufferTypes=r,this._lastCurrentPeriodId=null;let i=new ga(e);this._maximumPositionCalculator=i;let a=this._canceller.signal;t.listen(({position:o})=>{let s=o.getWanted();if(s<e.getMinimumSafePosition()){let u=new j(\"MEDIA_TIME_BEFORE_MANIFEST\",\"The current position is behind the earliest time announced in the Manifest.\");this.trigger(\"warning\",u)}else if(s>i.getMaximumAvailablePosition()){let u=new j(\"MEDIA_TIME_AFTER_MANIFEST\",\"The current position is after the latest time announced in the Manifest.\");this.trigger(\"warning\",u)}},{includeLastObservation:!0,clearSignal:a}),e.addEventListener(\"manifestUpdate\",()=>{this.trigger(\"endingPositionChange\",this._getManifestEndTime()),!a.isCancelled()&&this._checkEndOfStream()},a)}getCurrentEndingTime(){return this._getManifestEndTime()}onAdaptationChange(e,t,r){if(this._manifest.isLastPeriodKnown){let i=this._manifest.periods[this._manifest.periods.length-1];if(t.id===(i==null?void 0:i.id)&&(e===\"audio\"||e===\"video\")){e===\"audio\"?this._maximumPositionCalculator.updateLastAudioAdaptation(r):this._maximumPositionCalculator.updateLastVideoAdaptation(r);let a=this._maximumPositionCalculator.getEndingPosition(),o=a!==void 0?{isEnd:!0,endingPosition:a}:{isEnd:!1,endingPosition:this._maximumPositionCalculator.getMaximumAvailablePosition()};this.trigger(\"endingPositionChange\",o)}}this._canceller.isUsed()||r===null&&this._addActivelyLoadedPeriod(t,e)}onRepresentationChange(e,t){this._addActivelyLoadedPeriod(t,e)}onPeriodCleared(e,t){this._removeActivelyLoadedPeriod(t,e)}onLastSegmentFinishedLoading(e){let t=this._lazilyCreateActiveStreamInfo(e);t.hasFinishedLoadingLastPeriod||(t.hasFinishedLoadingLastPeriod=!0,this._checkEndOfStream())}onLastSegmentLoadingResume(e){let t=this._lazilyCreateActiveStreamInfo(e);t.hasFinishedLoadingLastPeriod&&(t.hasFinishedLoadingLastPeriod=!1,this._checkEndOfStream())}dispose(){this.removeEventListener(),this._canceller.cancel()}_addActivelyLoadedPeriod(e,t){let r=this._lazilyCreateActiveStreamInfo(t);r.activePeriods.has(e)||(r.activePeriods.add(e),this._checkCurrentPeriod())}_removeActivelyLoadedPeriod(e,t){let r=this._activeStreams.get(t);r!==void 0&&r.activePeriods.has(e)&&(r.activePeriods.removeElement(e),this._checkCurrentPeriod())}_checkCurrentPeriod(){if(this._allBufferTypes.length===0)return;let e=this._activeStreams.get(this._allBufferTypes[0]);if(e!==void 0)for(let t of e.activePeriods.toArray()){let r=!0;for(let i=1;i<this._allBufferTypes.length;i++){let a=this._activeStreams.get(this._allBufferTypes[i]);if(a===void 0)return;if(!a.activePeriods.toArray().some(u=>u.id===t.id)){r=!1;break}}if(r){this._lastCurrentPeriodId!==t.id&&(this._lastCurrentPeriodId=t.id,this.trigger(\"periodChange\",t));return}}}_getManifestEndTime(){let e=this._maximumPositionCalculator.getEndingPosition();return e!==void 0?{isEnd:!0,endingPosition:e}:{isEnd:!1,endingPosition:this._maximumPositionCalculator.getMaximumAvailablePosition()}}_lazilyCreateActiveStreamInfo(e){let t=this._activeStreams.get(e);return t===void 0&&(t={activePeriods:new At((r,i)=>r.start-i.start),hasFinishedLoadingLastPeriod:!1},this._activeStreams.set(e,t)),t}_checkEndOfStream(){if(!this._manifest.isLastPeriodKnown)return;this._allBufferTypes.every(t=>{let r=this._activeStreams.get(t);return r!==void 0&&r.hasFinishedLoadingLastPeriod})?this.trigger(\"endOfStream\",null):this.trigger(\"resumeStream\",null)}},ga=class{constructor(e){this._manifest=e,this._lastAudioAdaptation=void 0,this._lastVideoAdaptation=void 0}updateLastAudioAdaptation(e){this._lastAudioAdaptation=e}updateLastVideoAdaptation(e){this._lastVideoAdaptation=e}getMaximumAvailablePosition(){if(this._manifest.isDynamic)return this._manifest.getMaximumSafePosition();if(this._lastVideoAdaptation===void 0||this._lastAudioAdaptation===void 0)return this._manifest.getMaximumSafePosition();if(this._lastAudioAdaptation===null){if(this._lastVideoAdaptation===null)return this._manifest.getMaximumSafePosition();{let e=Dr(this._lastVideoAdaptation);return typeof e!=\"number\"?this._manifest.getMaximumSafePosition():e}}else if(this._lastVideoAdaptation===null){let e=Dr(this._lastAudioAdaptation);return typeof e!=\"number\"?this._manifest.getMaximumSafePosition():e}else{let e=Dr(this._lastAudioAdaptation),t=Dr(this._lastVideoAdaptation);return typeof e!=\"number\"||typeof t!=\"number\"?this._manifest.getMaximumSafePosition():Math.min(e,t)}}getEndingPosition(){var e,t;if(!this._manifest.isDynamic)return this.getMaximumAvailablePosition();if(!(this._lastVideoAdaptation===void 0||this._lastAudioAdaptation===void 0)){if(this._lastAudioAdaptation===null)return this._lastVideoAdaptation===null?void 0:(e=Nr(this._lastVideoAdaptation))!=null?e:void 0;if(this._lastVideoAdaptation===null)return(t=Nr(this._lastAudioAdaptation))!=null?t:void 0;{let r=Nr(this._lastAudioAdaptation),i=Nr(this._lastVideoAdaptation);return typeof r!=\"number\"||typeof i!=\"number\"?void 0:Math.min(r,i)}}}};function Dr(n){let{representations:e}=n,t=null,r;for(let i=0;i<e.length;i++)if(e[i].index!==r){r=e[i].index;let a=e[i].index.getLastAvailablePosition();if(a===void 0)return;a!==null&&(t=v(t)?a:Math.min(t,a))}return t}function Nr(n){let{representations:e}=n,t=null,r;for(let i=0;i<e.length;i++)if(e[i].index!==r){r=e[i].index;let a=e[i].index.getEnd();if(a===void 0)return;a!==null&&(t=v(t)?a:Math.min(t,a))}return t}function ha(n,e,t,r,i,a){a.register(()=>{e.interruptDurationSetting()});let o=new wn(n,t,r.getBufferTypes());a.register(()=>{o.dispose()}),o.addEventListener(\"warning\",u=>i.onWarning(u)),o.addEventListener(\"periodChange\",u=>i.onPeriodChanged(u)),o.addEventListener(\"endingPositionChange\",u=>{e.setDuration(u.endingPosition,u.isEnd)}),o.addEventListener(\"endOfStream\",()=>{c.debug(\"Init: end-of-stream order received.\"),e.maintainEndOfStream()}),o.addEventListener(\"resumeStream\",()=>{e.stopEndOfStream()});let s=o.getCurrentEndingTime();return e.setDuration(s.endingPosition,s.isEnd),o}function Ia(n,e){let t={audio:null,video:null,text:null};if(e!==null&&(t.text=e.getBufferedRanges()),n===null)return t;let r=K(n.sourceBuffers,s=>s.type===\"audio\"),i=K(n.sourceBuffers,s=>s.type===\"video\"),a=r==null?void 0:r.getBuffered();a!==void 0&&(t.audio=a);let o=i==null?void 0:i.getBuffered();return o!==void 0&&(t.video=o),t}function ba(n,e){if(typeof n.changeType==\"function\"){try{n.changeType(e)}catch(t){return c.warn(\"Could not call 'changeType' on the given SourceBuffer:\",t instanceof Error?t:\"\"),!1}return!0}return!1}var pl=[\"\",\"webkit\",\"moz\",\"ms\"];function gl(n,e){let t=document.createElement(n.tagName),r=\"on\"+e;return r in t?!0:(t.setAttribute(r,\"return;\"),typeof t[r]==\"function\")}function hl(n,e){return e.filter(t=>gl(n,t))[0]}function Il(n,e){return n.reduce((t,r)=>t.concat((e===void 0?pl:e).map(i=>i+r)),[])}function Te(n,e){let t,r=Il(n,e);return(i,a,o)=>{if(!o.isCancelled()){if(typeof HTMLElement!=\"undefined\"&&i instanceof HTMLElement)if(typeof t==\"undefined\"&&(t=hl(i,r)),Z(t))i.addEventListener(t,a),o.register(()=>{t!==void 0&&i.removeEventListener(t,a)});else{b.CURRENT_ENV===b.DEV&&c.warn(`compat: element ${i.tagName} does not support any of these events: `+r.join(\", \"));return}r.forEach(s=>{let u=!1;typeof i.addEventListener==\"function\"?i.addEventListener(s,a):(u=!0,i[\"on\"+s]=a),o.register(()=>{typeof i.removeEventListener==\"function\"&&i.removeEventListener(s,a),u&&delete i[\"on\"+s]})})}}}var CD=Te([\"loadedmetadata\"]),AD=Te([\"timeupdate\"]),kD=Te([\"addtrack\"]),xD=Te([\"removetrack\"]),Ht=Te([\"sourceopen\",\"webkitsourceopen\"]),Br=Te([\"sourceclose\",\"webkitsourceclose\"]),Ur=Te([\"sourceended\",\"webkitsourceended\"]),Es=Te([\"update\"]),Rs=Te([\"removesourcebuffer\"]),MD=Te([\"keymessage\",\"message\"]),OD=Te([\"keyadded\",\"ready\"]),wD=Te([\"keyerror\",\"error\"]),DD=Te([\"keystatuseschange\"]),ND=Te([\"seeking\"]),BD=Te([\"seeked\"]),UD=Te([\"ended\"]);function bl(n){let e=[];for(let t=0;t<n.length;t++){let r=n[t];r.updating&&e.push(r)}return e}function Dn(n,e){if(c.debug(\"Init: Trying to call endOfStream\"),n.readyState!==\"open\"){c.debug(\"Init: MediaSource not open, cancel endOfStream\");return}let{sourceBuffers:t}=n,r=bl(t);if(r.length===0){c.info(\"Init: Triggering end of stream\"),n.endOfStream();return}c.debug(\"Init: Waiting SourceBuffers to be updated before calling endOfStream.\");let i=new W;i.linkToSignal(e);for(let a of r)Es(a,()=>{i.cancel(),Dn(n,e)},i.signal);Rs(t,()=>{i.cancel(),Dn(n,e)},i.signal)}function Ps(n,e){let t=new W;t.linkToSignal(e),Ht(n,()=>{c.debug(\"Init: MediaSource re-opened while end-of-stream is active\"),t.cancel(),t=new W,t.linkToSignal(e),Dn(n,t.signal)},e),Dn(n,t.signal)}var Sl=!1,yl=!1,vs=!1,Tl=!1,_l=!1,El=!1,Rl=!1,Pl=!1,vl=!1,Cl=!1,Al=!1,kl=!1,xl=!1,Sa=!1,Ml=!1;(function(){var e,t,r;er||(typeof Ee.MSInputMethodContext!=\"undefined\"&&typeof document.documentMode!=\"undefined\"?(yl=!0,vs=!0):navigator.appName===\"Microsoft Internet Explorer\"||navigator.appName===\"Netscape\"&&/(Trident|Edge)\\//.test(navigator.userAgent)?vs=!0:navigator.userAgent.toLowerCase().indexOf(\"edg/\")!==-1?Sl=!0:navigator.userAgent.toLowerCase().indexOf(\"firefox\")!==-1?Tl=!0:typeof navigator.platform==\"string\"&&/iPad|iPhone|iPod/.test(navigator.platform)?El=!0:(Object.prototype.toString.call(Ee.HTMLElement).indexOf(\"Constructor\")>=0||((t=(e=Ee.safari)==null?void 0:e.pushNotification)==null?void 0:t.toString())===\"[object SafariRemoteNotification]\"||/Safari\\/(\\d+)/.test(navigator.userAgent)&&/Version\\/(\\d+)/.test(navigator.userAgent)&&((r=navigator.vendor)==null?void 0:r.indexOf(\"Apple\"))!==-1&&!/Chrome\\/(\\d+)/.test(navigator.userAgent)&&!/Chromium\\/(\\d+)/.test(navigator.userAgent))&&(_l=!0),/SamsungBrowser/.test(navigator.userAgent)&&(Rl=!0),navigator.userAgent.indexOf(\"PlayStation 4\")!==-1?xl=!0:navigator.userAgent.indexOf(\"PlayStation 5\")!==-1?Sa=!0:/Tizen/.test(navigator.userAgent)?Pl=!0:/[Ww]eb[O0]S/.test(navigator.userAgent)?(vl=!0,/[Ww]eb[O0]S.TV-2022/.test(navigator.userAgent)||/[Cc]hr[o0]me\\/87/.test(navigator.userAgent)?Al=!0:(/[Ww]eb[O0]S.TV-2021/.test(navigator.userAgent)||/[Cc]hr[o0]me\\/79/.test(navigator.userAgent))&&(Cl=!0)):/[Pp]anasonic/.test(navigator.userAgent)?kl=!0:navigator.userAgent.indexOf(\"Xbox\")!==-1&&(Ml=!0))})();function ya(){return Sa}var Ol=365*24*3600,Nn=class{constructor(e){this._mediaSource=e,this._currentMediaSourceDurationUpdateCanceller=null}updateDuration(e,t){this._currentMediaSourceDurationUpdateCanceller!==null&&this._currentMediaSourceDurationUpdateCanceller.cancel(),this._currentMediaSourceDurationUpdateCanceller=new W;let r=this._mediaSource,i=this._currentMediaSourceDurationUpdateCanceller.signal,a=Nl(r,i),o=new W;o.linkToSignal(i),a.onUpdate(s,{emitCurrentValue:!0,clearSignal:i});function s(){if(o.cancel(),!a.getValue())return;o=new W,o.linkToSignal(i);let u=Dl(r.sourceBuffers,o.signal),l=new W;return l.linkToSignal(o.signal),u.onUpdate(d=>{l.cancel(),l=new W,l.linkToSignal(o.signal),!d&&As(r,e,t,l.signal)},{clearSignal:o.signal,emitCurrentValue:!0})}}stopUpdating(){this._currentMediaSourceDurationUpdateCanceller!==null&&(this._currentMediaSourceDurationUpdateCanceller.cancel(),this._currentMediaSourceDurationUpdateCanceller=null)}};function wl(n,e,t){let r=e;t||(r=ya()?1/0:Cs(e));let i=0;for(let a=0;a<n.sourceBuffers.length;a++){let o=n.sourceBuffers[a],s=o.buffered.length;s>0&&(i=Math.max(o.buffered.end(s-1)))}if(r===n.duration)return\"success\";if(i>r){if(i<n.duration)try{c.info(\"Init: Updating duration to what is currently buffered\",i),n.duration=i}catch(a){return c.warn(\"Duration Updater: Can't update duration on the MediaSource.\",a instanceof Error?a:\"\"),\"failed\"}return\"partial\"}else{let a=n.duration;try{if(c.info(\"Init: Updating duration\",r),n.duration=r,n.readyState===\"open\"&&!isFinite(r)){let s=Cs(e);c.info(\"Init: calling `mediaSource.setLiveSeekableRange`\",s),n.setLiveSeekableRange(0,s)}}catch(s){return c.warn(\"Duration Updater: Can't update duration on the MediaSource.\",s instanceof Error?s:\"\"),\"failed\"}let o=Math.abs(n.duration-r);if(o>=.1){let s=Math.abs(n.duration-a);return o<s?\"partial\":\"failed\"}return\"success\"}}function Dl(n,e){if(n.length===0){let i=new G(!1);return i.finish(),i}let t=new G(!1,e);r();for(let i=0;i<n.length;i++){let a=n[i];a.addEventListener(\"updatestart\",r),a.addEventListener(\"update\",r),e.register(()=>{a.removeEventListener(\"updatestart\",r),a.removeEventListener(\"update\",r)})}return t;function r(){for(let i=0;i<n.length;i++)if(n[i].updating){t.setValueIfChanged(!0);return}t.setValueIfChanged(!1)}}function Nl(n,e){let t=new G(n.readyState===\"open\",e);return Ht(n,()=>{c.debug(\"Init: Reacting to MediaSource open in duration updater\"),t.setValueIfChanged(!0)},e),Ur(n,()=>{c.debug(\"Init: Reacting to MediaSource ended in duration updater\"),t.setValueIfChanged(!1)},e),Br(n,()=>{c.debug(\"Init: Reacting to MediaSource close in duration updater\"),t.setValueIfChanged(!1)},e),t}function As(n,e,t,r){if(wl(n,e,t)===\"success\")return;let a=setTimeout(()=>{o(),As(n,e,t,r)},2e3),o=r.register(()=>{clearTimeout(a)})}function Cs(n){return Math.max(Math.pow(2,32),n+Ol)}var Bn=class extends oe{constructor(e){if(super(),this.id=e,this.sourceBuffers=[],this._canceller=new W,v(St))throw new j(\"MEDIA_SOURCE_NOT_SUPPORTED\",\"No MediaSource Object was found in the current browser.\");c.info(\"Init: Creating MediaSource\");let t=new St;this.readyState=t.readyState;let r=t.handle;this.handle=v(r)?{type:\"media-source\",value:t}:{type:\"handle\",value:r},this._mediaSource=t,this._durationUpdater=new Nn(t),this._endOfStreamCanceller=null,Ht(t,()=>{this.readyState=t.readyState,this.trigger(\"mediaSourceOpen\",null)},this._canceller.signal),Ur(t,()=>{this.readyState=t.readyState,this.trigger(\"mediaSourceEnded\",null)},this._canceller.signal),Br(t,()=>{this.readyState=t.readyState,this.trigger(\"mediaSourceClose\",null)},this._canceller.signal)}addSourceBuffer(e,t){let r=this._mediaSource.addSourceBuffer(t),i=new Ta(e,t,r);return this.sourceBuffers.push(i),i}setDuration(e,t){this._durationUpdater.updateDuration(e,t)}interruptDurationSetting(){this._durationUpdater.stopUpdating()}maintainEndOfStream(){this._endOfStreamCanceller===null&&(this._endOfStreamCanceller=new W,this._endOfStreamCanceller.linkToSignal(this._canceller.signal),c.debug(\"Init: end-of-stream order received.\"),Ps(this._mediaSource,this._endOfStreamCanceller.signal))}stopEndOfStream(){this._endOfStreamCanceller!==null&&(c.debug(\"Init: resume-stream order received.\"),this._endOfStreamCanceller.cancel(),this._endOfStreamCanceller=null)}dispose(){this.sourceBuffers.forEach(e=>e.dispose()),this._canceller.cancel(),Bl(this._mediaSource)}},Ta=class{constructor(e,t,r){this.type=e,this.codec=t,this._canceller=new W,this._sourceBuffer=r,this._operationQueue=[],this._currentOperations=[];let i=o=>{let s;o instanceof Error?s=o:o.error instanceof Error?s=o.error:s=new Error(\"Unknown SourceBuffer Error\");let u=this._currentOperations;if(this._currentOperations=[],u.length===0)c.error(\"SBI: error for an unknown operation\",s);else{let l=new Ce(s.name,s.message,s.name===\"QuotaExceededError\");for(let d of u)d.reject(l)}},a=()=>{let o=this._currentOperations;this._currentOperations=[];try{for(let s of o)s.resolve(ta(this._sourceBuffer.buffered))}catch(s){for(let u of o)s instanceof Error&&s.name===\"InvalidStateError\"?u.resolve([]):u.reject(s)}this._performNextOperation()};r.addEventListener(\"error\",i),r.addEventListener(\"updateend\",a),this._canceller.signal.register(()=>{r.removeEventListener(\"error\",i),r.removeEventListener(\"updateend\",a)})}appendBuffer(...e){return c.debug(\"SBI: receiving order to push data to the SourceBuffer\",this.type),this._addToQueue({operationName:0,params:e})}remove(e,t){return c.debug(\"SBI: receiving order to remove data from the SourceBuffer\",this.type,e,t),this._addToQueue({operationName:1,params:[e,t]})}getBuffered(){try{return ta(this._sourceBuffer.buffered)}catch(e){return c.error(\"Failed to get buffered time range of SourceBuffer\",this.type,e instanceof Error?e:null),[]}}abort(){try{this._sourceBuffer.abort()}catch(e){c.debug(\"Init: Failed to abort SourceBuffer:\",e instanceof Error?e:null)}this._emptyCurrentQueue()}dispose(){try{this._sourceBuffer.abort()}catch(e){}this._emptyCurrentQueue()}_emptyCurrentQueue(){let e=new ie;this._currentOperations.length>0&&(this._currentOperations.forEach(t=>{t.reject(e)}),this._currentOperations=[]),this._operationQueue.length>0&&(this._operationQueue.forEach(t=>{t.reject(e)}),this._operationQueue=[])}_addToQueue(e){return new Promise((t,r)=>{let i=this._operationQueue.length===0&&this._currentOperations.length===0,a=H({resolve:t,reject:r},e);this._operationQueue.push(a),i&&this._performNextOperation()})}_performNextOperation(){var t,r,i,a,o;if(this._currentOperations.length!==0||this._sourceBuffer.updating)return;let e=this._operationQueue.shift();if(e!==void 0)if(e.operationName===0){this._currentOperations=[{operationName:0,resolve:e.resolve,reject:e.reject}];let s=e.params[0],u=e.params[1],l=s;if(this._operationQueue.length>0&&this._operationQueue[0].operationName===0){let d;s instanceof ArrayBuffer?d=new Uint8Array(s):s instanceof Uint8Array?d=s:d=new Uint8Array(s.buffer);let f=[d];for(;((t=this._operationQueue[0])==null?void 0:t.operationName)===0;){let m=this._operationQueue[0],p=(r=u.appendWindow)!=null?r:[void 0,void 0],g=(i=m.params[1].appendWindow)!=null?i:[void 0,void 0],h=(a=u.timestampOffset)!=null?a:0,I=(o=m.params[1].timestampOffset)!=null?o:0;if(p[0]===g[0]&&p[1]===g[1]&&u.codec===m.params[1].codec&&h===I){let y=m.params[0],E;y instanceof ArrayBuffer?E=new Uint8Array(y):y instanceof Uint8Array?E=y:E=new Uint8Array(y.buffer),f.push(E),this._operationQueue.splice(0,1),this._currentOperations.push({operationName:0,resolve:m.resolve,reject:m.reject})}else break}f.length>1&&(c.info(`MMSI: Merging ${f.length} segments together for perf`,this.type),l=vt(...f))}try{this._appendBufferNow(l,u)}catch(d){let f=d instanceof Error?new Ce(d.name,d.message,d.name===\"QuotaExceededError\"):new Ce(\"Error\",\"Unknown SourceBuffer Error during appendBuffer\",!1);this._currentOperations.forEach(m=>{m.reject(f)}),this._currentOperations=[]}}else{this._currentOperations=[e];let[s,u]=e.params;c.debug(\"SBI: removing data from SourceBuffer\",this.type,s,u);try{this._sourceBuffer.remove(s,u)}catch(l){let d=l instanceof Error?new Ce(l.name,l.message,!1):new Ce(\"Error\",\"Unknown SourceBuffer Error during remove\",!1);e.reject(d),this._currentOperations=[]}}}_appendBufferNow(e,t){let r=this._sourceBuffer,{codec:i,timestampOffset:a,appendWindow:o=[]}=t;if(i!==void 0&&i!==this.codec&&(c.debug(\"SBI: updating codec\",i),ba(r,i)?this.codec=i:c.debug(\"SBI: could not update codec\",i,this.codec)),a!==void 0&&r.timestampOffset!==a){let s=a;c.debug(\"SBI: updating timestampOffset\",i,r.timestampOffset,s),r.timestampOffset=s}if(o[0]===void 0)r.appendWindowStart>0&&(c.debug(\"SBI: re-setting `appendWindowStart` to `0`\"),r.appendWindowStart=0);else if(o[0]!==r.appendWindowStart){if(o[0]>=r.appendWindowEnd){let s=o[0]+1;c.debug(\"SBI: pre-updating `appendWindowEnd`\",s),r.appendWindowEnd=s}c.debug(\"SBI: setting `appendWindowStart`\",o[0]),r.appendWindowStart=o[0]}o[1]===void 0?r.appendWindowEnd!==1/0&&(c.debug(\"SBI: re-setting `appendWindowEnd` to `Infinity`\"),r.appendWindowEnd=1/0):o[1]!==r.appendWindowEnd&&(c.debug(\"SBI: setting `appendWindowEnd`\",o[1]),r.appendWindowEnd=o[1]),c.debug(\"SBI: pushing segment\",this.type),r.appendBuffer(e)}};function Bl(n){if(n.readyState!==\"closed\"){let{readyState:e,sourceBuffers:t}=n;for(let r=t.length-1;r>=0;r--){let i=t[r];try{if(e===\"open\"){c.info(\"Init: Aborting SourceBuffer before removing\");try{i.abort()}catch(a){}}c.info(\"Init: Removing SourceBuffer from mediaSource\"),n.removeSourceBuffer(i)}catch(a){}}t.length>0&&c.info(\"Init: Not all SourceBuffers could have been removed.\")}}var Ul=Ae(),Lr=Ae(),ks=1/0,Un=class extends oe{constructor(e,t,r){super(),this.id=e,this.sourceBuffers=[],this._canceller=new W,this.readyState=\"closed\",this._messageSender=r;let i=Ul();this._messageSender({type:\"create-media-source\",contentId:t,mediaSourceId:i})}onMediaSourceReadyStateChanged(e){switch(e){case\"closed\":this.readyState=\"closed\",this.trigger(\"mediaSourceClose\",null);break;case\"open\":this.readyState=\"open\",this.trigger(\"mediaSourceOpen\",null);break;case\"ended\":this.readyState=\"ended\",this.trigger(\"mediaSourceEnded\",null);break}}addSourceBuffer(e,t){this._messageSender({type:\"add-source-buffer\",mediaSourceId:this.id,value:{sourceBufferType:e,codec:t}});let r=new _a(e,t,this.id,this._messageSender);return this.sourceBuffers.push(r),r}setDuration(e,t){this._messageSender({type:\"update-media-source-duration\",mediaSourceId:this.id,value:{duration:e,isRealEndKnown:t}})}interruptDurationSetting(){this._messageSender({type:\"stop-media-source-duration\",mediaSourceId:this.id,value:null})}maintainEndOfStream(){this._messageSender({type:\"end-of-stream\",mediaSourceId:this.id,value:null})}stopEndOfStream(){this._messageSender({type:\"stop-end-of-stream\",mediaSourceId:this.id,value:null})}dispose(){this.sourceBuffers.forEach(e=>e.dispose()),this._canceller.cancel(),this._messageSender({type:\"dispose-media-source\",mediaSourceId:this.id,value:null})}},_a=class{constructor(e,t,r,i){this.type=e,this.codec=t,this._canceller=new W,this._mediaSourceId=r,this._queuedOperations=[],this._pendingOperations=new Map,this._messageSender=i}onOperationSuccess(e,t){let r=this._pendingOperations.get(e);r===void 0?c.warn(\"SBI: unknown SourceBuffer operation succeeded\"):(this._pendingOperations.delete(e),r.resolve(t)),this._performNextQueuedOperationIfItExists()}onOperationFailure(e,t){let r=t.errorName===\"CancellationError\"?new ie:new Ce(t.errorName,t.message,t.isBufferFull),i=this._pendingOperations.get(e);i===void 0?c.info(\"SBI: unknown SourceBuffer operation failed\",r):(this._pendingOperations.delete(e),i.reject(r));let a=new ie;for(let o of this._queuedOperations)o.reject(a);this._queuedOperations=[]}appendBuffer(e,t){return new Promise((r,i)=>{if(this._queuedOperations.length>0||this._pendingOperations.size>=ks){this._queuedOperations.push({operationName:0,params:[e,t],resolve:r,reject:i});return}try{let a;e instanceof ArrayBuffer?a=e:e.byteLength===e.buffer.byteLength?a=e.buffer:a=e.buffer.slice(e.byteOffset,e.byteLength+e.byteOffset);let o=Lr();this._messageSender({type:\"source-buffer-append\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:o,value:{data:a,params:t}},[a]),this._addOperationToQueue(o,r,i)}catch(a){i(a)}})}remove(e,t){return new Promise((r,i)=>{if(this._queuedOperations.length>0||this._pendingOperations.size>=ks){this._queuedOperations.push({operationName:1,params:[e,t],resolve:r,reject:i});return}try{let a=Lr();this._messageSender({type:\"source-buffer-remove\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:a,value:{start:e,end:t}}),this._addOperationToQueue(a,r,i)}catch(a){i(a)}})}abort(){this._messageSender({type:\"abort-source-buffer\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,value:null})}dispose(){this.abort(),this._canceller.cancel()}getBuffered(){}_addOperationToQueue(e,t,r){this._pendingOperations.set(e,{resolve:a,reject:o});let i=this._canceller.signal.register(s=>{this._pendingOperations.delete(e),r(s)});function a(s){i(),t(s)}function o(s){i(),r(s)}}_performNextQueuedOperationIfItExists(){let e=this._queuedOperations.shift();if(e!==void 0)try{if(e.operationName===0){let[t,r]=e.params,i;t instanceof ArrayBuffer?i=t:t.byteLength===t.buffer.byteLength?i=t.buffer:i=t.buffer.slice(t.byteOffset,t.byteLength+t.byteOffset);let a=Lr();this._messageSender({type:\"source-buffer-append\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:a,value:{data:i,params:r}},[i]),this._addOperationToQueue(a,e.resolve,e.reject)}else{let[t,r]=e.params,i=Lr();this._messageSender({type:\"source-buffer-remove\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:i,value:{start:t,end:r}}),this._addOperationToQueue(i,e.resolve,e.reject)}}catch(t){e.reject(t)}}};function Ea(n){let e=n.map(o=>Math.log(o/n[0])),t=e.map(o=>o-e[0]+1),r=(t[t.length-1]-1)/(n.length*2+10),i=1/r;return n.map((o,s)=>a(s));function a(o){if(o===0)return 0;let s=Math.min(Math.max(1,o),n.length-1);return n[s]===n[s-1]?a(o-1):i*(r+(n[s]*t[s-1]-n[s-1]*t[s])/(n[s]-n[s-1]))+4}}var Ue=class{constructor(e){this._alpha=Math.exp(Math.log(.5)/e),this._lastEstimate=0,this._totalWeight=0}addSample(e,t){let r=Math.pow(this._alpha,e),i=t*(1-r)+r*this._lastEstimate;isNaN(i)||(this._lastEstimate=i,this._totalWeight+=e)}getEstimate(){let e=1-Math.pow(this._alpha,this._totalWeight);return this._lastEstimate/e}};var Ln=class{constructor(){this._currentRepresentationData=null,this._lastRepresentationWithGoodScore=null}addSample(e,t,r){let i=r/t,a=this._currentRepresentationData,o;a!==null&&a.representation.id===e.id?(o=a.ewma,a.ewma.addSample(t,i),a.loadedDuration+=r,a.loadedSegments++):(o=new Ue(5),o.addSample(t,i),this._currentRepresentationData={representation:e,ewma:o,loadedDuration:r,loadedSegments:0}),o.getEstimate()>1&&this._lastRepresentationWithGoodScore!==e&&(c.debug(\"ABR: New last stable representation\",e.bitrate),this._lastRepresentationWithGoodScore=e)}getEstimate(e){if(this._currentRepresentationData===null||this._currentRepresentationData.representation.id!==e.id)return;let{ewma:t,loadedSegments:r,loadedDuration:i}=this._currentRepresentationData,a=t.getEstimate(),o=r>=5&&i>=10?1:0;return{score:a,confidenceLevel:o}}getLastStableRepresentation(){return this._lastRepresentationWithGoodScore}};var xs=6e3,Ll=15e3,Fl=3e3,zl=1e3,Wl=9e3,Fn=class{constructor(e){this._levelsMap=Ea(e).map(t=>t+4),this._bitrates=e,this._lastUnsuitableQualityTimestamp=void 0,this._blockRaiseDelay=xs,c.debug(\"ABR: Steps for buffer based chooser.\",this._levelsMap.map((t,r)=>`bufferLevel: ${t}, bitrate: ${e[r]}`).join(\" ,\"))}onAddedSegment(e){let t=this._levelsMap,r=this._bitrates,{bufferGap:i,currentBitrate:a,currentScore:o,speed:s}=e;if(v(a)){this._currentEstimate=r[0];return}let u=-1;for(let g=0;g<r.length;g++){let h=r[g];if(h===a)u=g;else if(h>a)break}if(u<0||r.length!==t.length){c.info(\"ABR: Current Bitrate not found in the calculated levels\"),this._currentEstimate=r[0];return}let l;o!==void 0&&(l=s===0?o.score:o.score/s);let d=isFinite(i)?i:0,f=L();if(d<t[u]||l!==void 0&&l<1&&(o==null?void 0:o.confidenceLevel)===1){if((this._lastUnsuitableQualityTimestamp===void 0?-1:f-this._lastUnsuitableQualityTimestamp)<this._blockRaiseDelay+Wl){let I=this._blockRaiseDelay+Fl;this._blockRaiseDelay=Math.min(I,Ll),c.debug(\"ABR: Incrementing blocking raise in BufferBasedChooser due to unstable quality\",this._blockRaiseDelay)}else{let I=this._blockRaiseDelay-zl;this._blockRaiseDelay=Math.max(xs,I),c.debug(\"ABR: Lowering quality in BufferBasedChooser\",this._blockRaiseDelay)}this._lastUnsuitableQualityTimestamp=f;let h=ne(r,I=>I===a);for(let I=h-1;I>=0;I--)if(d>=t[I]){this._currentEstimate=r[I];return}this._currentEstimate=r[0];return}if(this._lastUnsuitableQualityTimestamp!==void 0&&f-this._lastUnsuitableQualityTimestamp<this._blockRaiseDelay||l===void 0||l<1.15||(o==null?void 0:o.confidenceLevel)!==1){this._currentEstimate=a;return}let m=t[u],p=(()=>{for(let g=u+1;g<t.length;g++)if(t[g]>m)return g})();if(p!==void 0){let g=t[p];if(i>=g){c.debug(\"ABR: Raising quality in BufferBasedChooser\",r[p]),this._currentEstimate=r[p];return}}this._currentEstimate=a}getLastEstimate(){return this._currentEstimate}};function Vl(n,e){let t=-1;for(let o=0;o<n.length;o++){let{segment:s}=n[o].content;if(s.duration<=0)continue;let u=s.time+s.duration;if(!s.complete&&o===n.length-1&&e-s.time>-1.2){t=o;break}if(u>e&&e-s.time>-1.2){t=o;break}}if(t<0)return[];let r=n[t],i=r.content.segment.time,a=[r];for(let o=t+1;o<n.length&&n[o].content.segment.time===i;o++)a.push(n[o]);return a}function Fr(n){if(n.progress.length<5)return;let e=new Ue(2),{progress:t}=n;for(let r=1;r<t.length;r++){let i=t[r].size-t[r-1].size,a=t[r].timestamp-t[r-1].timestamp,o=i*8/(a/1e3);e.addSample(a/1e3,o)}return e.getEstimate()}function Ms(n,e){let t=(n.totalSize-n.size)*8;return Math.max(t/e,0)}function ql(n,e,t,r,i){if(r)return;let{bufferGap:a,speed:o,position:s}=e,u=isFinite(a)?a:0,l=s.getWanted()+u,d=Vl(n,l);if(d.length!==1)return;let f=d[0],m=L(),p=f.content.segment.duration*1.5;if(p=Math.min(p,3e3),p=Math.max(p,12e3),m-f.requestTimestamp<p)return;let g=f.progress.length>0?f.progress[f.progress.length-1]:void 0,h=Fr(f);if(g!==void 0&&h!==void 0){let C=Ms(g,h);if((m-g.timestamp)/1e3<=C&&C-u/o>2500)return h}if(!f.content.segment.complete)return;let I=f.content.segment.duration,y=(m-f.requestTimestamp)/1e3,E=y<=(I*1.5+2)/o;if(v(t)||E)return;let R=I/y,T=t.bitrate*Math.min(.7,R);if(i===void 0||T<i)return T}function Hl(n,e,t){if(t)return!0;let r=isFinite(n.bufferGap)?n.bufferGap:0,i=n.position.getWanted()+r,a=K(e,({content:f})=>f.segment.duration>0&&f.segment.time+f.segment.duration>i);if(a===void 0)return!0;let o=L(),s=a.progress.length>0?a.progress[a.progress.length-1]:void 0,u=Fr(a);if(s===void 0||u===void 0)return!0;let l=Ms(s,u);return(o-s.timestamp)/1e3>l*1.2?!0:l-r/n.speed>-1.5}var zn=class{constructor(e,t){let{ABR_STARVATION_GAP:r,OUT_OF_STARVATION_GAP:i,ABR_STARVATION_FACTOR:a,ABR_REGULAR_FACTOR:o}=U.getCurrent();this._initialBitrate=e,this._inStarvationMode=!1,this._lowLatencyMode=t,t?this._config={starvationGap:r.LOW_LATENCY,outOfStarvationGap:i.LOW_LATENCY,starvationBitrateFactor:a.LOW_LATENCY,regularBitrateFactor:o.LOW_LATENCY}:this._config={starvationGap:r.DEFAULT,outOfStarvationGap:i.DEFAULT,starvationBitrateFactor:a.DEFAULT,regularBitrateFactor:o.DEFAULT}}getBandwidthEstimate(e,t,r,i,a){let o,s,u=this._config,{bufferGap:l,position:d,duration:f}=e,m=isFinite(l)?l:0,{ABR_STARVATION_DURATION_DELTA:p}=U.getCurrent();return isNaN(f)||m+d.getWanted()<f-p?!this._inStarvationMode&&m<=u.starvationGap?(c.info(\"ABR: enter starvation mode.\"),this._inStarvationMode=!0):this._inStarvationMode&&m>=u.outOfStarvationGap&&(c.info(\"ABR: exit starvation mode.\"),this._inStarvationMode=!1):this._inStarvationMode&&(c.info(\"ABR: exit starvation mode.\"),this._inStarvationMode=!1),this._inStarvationMode&&(s=ql(i,e,r,this._lowLatencyMode,a),s!==void 0&&(c.info(\"ABR: starvation mode emergency estimate:\",s),t.reset(),o=v(r)?s:Math.min(s,r.bitrate))),v(o)&&(s=t.getEstimate(),s!==void 0?o=s*(this._inStarvationMode?u.starvationBitrateFactor:u.regularBitrateFactor):a!==void 0?o=a*(this._inStarvationMode?u.starvationBitrateFactor:u.regularBitrateFactor):o=this._initialBitrate),e.speed>1&&(o/=e.speed),{bandwidthEstimate:s,bitrateChosen:o}}isUrgent(e,t,r,i){return t===null?!0:e>=t.bitrate?!1:Hl(i,r,this._lowLatencyMode)}};var Wn=class{constructor(){this.bandwidth=void 0,this.representation=null,this.algorithmType=3}update(e,t,r){this.representation=e,this.bandwidth=t,this.algorithmType=r}};var Vn=class{constructor(e,t){this._scoreCalculator=e,this._lastAbrEstimate=t,this._consecutiveWrongGuesses=0,this._blockGuessesUntil=0,this._lastMaintanableBitrate=null}getGuess(e,t,r,i,a){let{bufferGap:o,speed:s}=t,u=this._lastAbrEstimate.representation;if(u===null)return null;if(i>u.bitrate)return this._lastAbrEstimate.algorithmType===2&&(this._lastAbrEstimate.representation!==null&&(this._lastMaintanableBitrate=this._lastAbrEstimate.representation.bitrate),this._consecutiveWrongGuesses=0),null;let l=this._scoreCalculator.getEstimate(r);if(this._lastAbrEstimate.algorithmType!==2){if(l===void 0)return null;if(this._canGuessHigher(o,s,l)){let f=Os(e,r);if(f!==null)return f}return null}if(this._isLastGuessValidated(u,i,l)&&(c.debug(\"ABR: Guessed Representation validated\",u.bitrate),this._lastMaintanableBitrate=u.bitrate,this._consecutiveWrongGuesses=0),r.id!==u.id)return u;if(this._shouldStopGuess(r,l,o,a))return this._consecutiveWrongGuesses++,this._blockGuessesUntil=L()+Math.min(this._consecutiveWrongGuesses*15e3,12e4),Gl(e,r);if(l===void 0)return r;if(this._canGuessHigher(o,s,l)){let f=Os(e,r);if(f!==null)return f}return r}_canGuessHigher(e,t,{score:r,confidenceLevel:i}){return isFinite(e)&&e>=2.5&&L()>this._blockGuessesUntil&&i===1&&r/t>1.01}_shouldStopGuess(e,t,r,i){if(t!==void 0&&t.score<1.01)return!0;if((t===void 0||t.score<1.2)&&r<.6)return!0;let a=i.filter(s=>s.content.representation.id===e.id),o=L();for(let s of a){let u=o-s.requestTimestamp;if(s.content.segment.isInit){if(u>1e3)return!0}else{if(u>s.content.segment.duration*1e3+200)return!0;{let l=Fr(s);if(l!==void 0&&l<e.bitrate*.8)return!0}}}return!1}_isLastGuessValidated(e,t,r){return r!==void 0&&r.confidenceLevel===1&&r.score>1.5?!0:t>=e.bitrate&&(this._lastMaintanableBitrate===null||this._lastMaintanableBitrate<e.bitrate)}};function Os(n,e){let t=n.length,r=ne(n,({id:i})=>i===e.id);if(r<0)return c.error(\"ABR: Current Representation not found.\"),null;for(;++r<t;)if(n[r].bitrate>e.bitrate)return n[r];return null}function Gl(n,e){let t=ne(n,({id:r})=>r===e.id);if(t<0)return c.error(\"ABR: Current Representation not found.\"),null;for(;--t>=0;)if(n[t].bitrate<e.bitrate)return n[t];return null}var qn=class{constructor(){let{ABR_FAST_EMA:e,ABR_SLOW_EMA:t}=U.getCurrent();this._fastEWMA=new Ue(e),this._slowEWMA=new Ue(t),this._bytesSampled=0}addSample(e,t){let{ABR_MINIMUM_CHUNK_SIZE:r}=U.getCurrent();if(t<r)return;let i=t*8e3/e,a=e/1e3;this._bytesSampled+=t,this._fastEWMA.addSample(a,i),this._slowEWMA.addSample(a,i)}getEstimate(){let{ABR_MINIMUM_TOTAL_BYTES:e}=U.getCurrent();if(!(this._bytesSampled<e))return Math.min(this._fastEWMA.getEstimate(),this._slowEWMA.getEstimate())}reset(){let{ABR_FAST_EMA:e,ABR_SLOW_EMA:t}=U.getCurrent();this._fastEWMA=new Ue(e),this._slowEWMA=new Ue(t),this._bytesSampled=0}};function Ra(n,e){if(n.length===0)return[];n.sort((a,o)=>a.bitrate-o.bitrate);let t=n[0].bitrate,r=Math.max(e,t),i=ne(n,a=>a.bitrate>r);return i===-1?n:n.slice(0,i)}function Pa(n,e){if(e.width===void 0||e.height===void 0)return n;let t=e.width*e.pixelRatio,r=e.height*e.pixelRatio,i=n.slice().sort((s,u)=>{var l,d;return((l=s.width)!=null?l:0)-((d=u.width)!=null?d:0)}),a=K(i,s=>typeof s.width==\"number\"&&s.width>=t&&typeof s.height==\"number\"&&s.height>=r);if(a===void 0)return n;let o=typeof a.width==\"number\"?a.width:0;return n.filter(s=>typeof s.width==\"number\"?s.width<=o:!0)}var Hn=class{constructor(){this._currentRequests={}}add(e){let{id:t,requestTimestamp:r,content:i}=e;this._currentRequests[t]={requestTimestamp:r,progress:[],content:i}}addProgress(e){let t=this._currentRequests[e.id];if(v(t)){if(b.CURRENT_ENV===b.DEV)throw new Error(\"ABR: progress for a request not added\");c.warn(\"ABR: progress for a request not added\");return}t.progress.push(e)}remove(e){if(v(this._currentRequests[e])){if(b.CURRENT_ENV===b.DEV)throw new Error(\"ABR: can't remove unknown request\");c.warn(\"ABR: can't remove unknown request\")}delete this._currentRequests[e]}getRequests(){return ar(this._currentRequests).filter(e=>!v(e)).sort((e,t)=>e.content.segment.time-t.content.segment.time)}};function zr(n,e){let t=ne(n,r=>r.bitrate>e);return t===-1?n[n.length-1]:t===0?n[0]:n[t-1]}var ws=new G(void 0);ws.finish();var Ds=new G(1/0);Ds.finish();function va(n){let e={},{initialBitrates:t,throttlers:r,lowLatencyMode:i}=n;return function(s,u,l,d,f){var I,y,E;let{type:m}=s.adaptation,p=a(m),g=(I=t[m])!=null?I:0,h={limitResolution:(y=r.limitResolution[m])!=null?y:ws,throttleBitrate:(E=r.throttleBitrate[m])!=null?E:Ds};return Kl({bandwidthEstimator:p,context:s,currentRepresentation:u,filters:h,initialBitrate:g,playbackObserver:d,representations:l,lowLatencyMode:i},f)};function a(o){let s=e[o];if(v(s)){c.debug(\"ABR: Creating new BandwidthEstimator for \",o);let u=new qn;return e[o]=u,u}return s}}function Kl({bandwidthEstimator:n,context:e,currentRepresentation:t,filters:r,initialBitrate:i,lowLatencyMode:a,playbackObserver:o,representations:s},u){let l=new Ln,d=new zn(i!=null?i:0,a),f=new Hn,m=N,p={metrics:E,requestBegin:R,requestProgress:T,requestEnd:C,addedSegment(P){m(P)}},g=new W;g.linkToSignal(u);let h=I(s.getValue(),g.signal);return s.onUpdate(y,{clearSignal:u}),{estimates:h,callbacks:p};function I(P,x){if(P.length<=1)return new G({bitrate:void 0,representation:P[0],urgent:!0,knownStableBitrate:void 0});let _=!1,A=P.sort((q,J)=>q.bitrate-J.bitrate),M=new Fn(A.map(q=>q.bitrate)),k=new Wn,D=new Vn(l,k),w=o.getReference().getValue(),O=new G(z());return o.listen(q=>{w=q,B()},{includeLastObservation:!1,clearSignal:x}),m=function(q){if(w===null)return;let{position:J,speed:$}=w,V=q.buffered,Y=Ar(V,J.getWanted()),{representation:X}=q.content,me=l.getEstimate(X),ce=X.bitrate,de={bufferGap:Y,currentBitrate:ce,currentScore:me,speed:$};M.onAddedSegment(de),B()},x.register(()=>{m=N}),r.throttleBitrate.onUpdate(B,{clearSignal:x}),r.limitResolution.onUpdate(B,{clearSignal:x}),O;function B(){O.setValue(z())}function z(){let{bufferGap:q,position:J,maximumPosition:$}=w,V=r.limitResolution.getValue(),Y=r.throttleBitrate.getValue(),X=t.getValue(),me=jl(A,V,Y),ce=f.getRequests(),{bandwidthEstimate:de,bitrateChosen:Ie}=d.getBandwidthEstimate(w,n,X,ce,k.bandwidth),Jn=l.getLastStableRepresentation(),pe=Jn===null?void 0:Jn.bitrate/(w.speed>0?w.speed:1),{ABR_ENTER_BUFFER_BASED_ALGO:be,ABR_EXIT_BUFFER_BASED_ALGO:Kt}=U.getCurrent();_&&q<=Kt?_=!1:!_&&isFinite(q)&&q>=be&&(_=!0);let He=zr(me,Ie),xe=M.getLastEstimate(),xt=He.bitrate,it=null;_&&xe!==void 0&&xe>xt&&(it=zr(me,xe),xt=it.bitrate);let at=null;return a&&X!==null&&e.manifest.isDynamic&&$-J.getWanted()<40&&(at=D.getGuess(A,w,X,xt,ce)),at!==null&&at.bitrate>xt?(c.debug(\"ABR: Choosing representation with guess-based estimation.\",at.bitrate,at.id),k.update(at,de,2),{bitrate:de,representation:at,urgent:X===null||at.bitrate<X.bitrate,knownStableBitrate:pe}):it!==null?(c.debug(\"ABR: Choosing representation with buffer-based estimation.\",it.bitrate,it.id),k.update(it,de,0),{bitrate:de,representation:it,urgent:d.isUrgent(it.bitrate,X,ce,w),knownStableBitrate:pe}):(c.debug(\"ABR: Choosing representation with bandwidth estimation.\",He.bitrate,He.id),k.update(He,de,1),{bitrate:de,representation:He,urgent:d.isUrgent(He.bitrate,X,ce,w),knownStableBitrate:pe})}}function y(){let P=s.getValue();g.cancel(),g=new W,g.linkToSignal(u),I(P,g.signal).onUpdate(function(A){h.setValue(A)},{clearSignal:g.signal,emitCurrentValue:!0})}function E(P){let{requestDuration:x,segmentDuration:_,size:A,content:M}=P;if(n.addSample(x,A),!M.segment.isInit){let{segment:k,representation:D}=M;if(_===void 0&&!k.complete)return;let w=_!=null?_:k.duration;l.addSample(D,x/1e3,w)}}function R(P){f.add(P)}function T(P){f.addProgress(P)}function C(P){f.remove(P.id)}}function jl(n,e,t){let r=n;return t!==void 0&&t<1/0&&(r=Ra(r,t)),e!==void 0&&(r=Pa(r,e)),r}var Ns=va;function rt(n){return n instanceof re?new Ke(\"PIPELINE_LOAD_ERROR\",n):ge(n,{defaultCode:\"PIPELINE_LOAD_ERROR\",defaultReason:\"Unknown error when fetching the Manifest\"})}function Ca(n){let e=(Math.random()*2-1)*.3;return n*(e+1)}function Yl(n){return n instanceof re?n.type===It.ERROR_HTTP_CODE?n.status>=500||n.status===404||n.status===415||n.status===412:n.type===It.TIMEOUT||n.type===It.ERROR_EVENT:n instanceof Ge?typeof n.canRetry==\"boolean\"?n.canRetry:n.xhr!==void 0?n.xhr.status>=500||n.xhr.status===404||n.xhr.status===415||n.xhr.status===412:!1:Mt(n)&&n.code===\"INTEGRITY_ERROR\"}async function Aa(n,e,t,r,i){if(i.cancellationError!==null)return Promise.reject(i.cancellationError);let{baseDelay:a,maxDelay:o,maxRetry:s,onRetry:u}=r;n!==null&&n.length===0&&c.warn(\"Fetchers: no CDN given to `scheduleRequestWithCdns`.\");let l=new Map,d=f();if(d===void 0)throw new Error(\"No CDN to request\");return m(d);function f(){if(n===null){let I=l.get(null);return I!==void 0&&I.isBlacklisted?void 0:null}else{if(e===null)return h(n);{let I=e.getCdnPreferenceForResource(n);return h(I)}}}async function m(I){try{return await t(I,i)}catch(y){if(W.isCancellationError(y))throw y;I!==null&&e!==null&&e.downgradeCdn(I);let E=l.get(I);if(E===void 0?(E={errorCounter:1,blockedUntil:void 0,isBlacklisted:!1},l.set(I,E)):E.errorCounter++,!Yl(y))return E.blockedUntil=void 0,E.isBlacklisted=!0,p(y);if(E.errorCounter>s)E.blockedUntil=void 0,E.isBlacklisted=!0;else{let R=E.errorCounter,T=Math.min(a*Math.pow(2,R-1),o),C=Ca(T);E.blockedUntil=L()+C}return p(y)}}async function p(I){let y=f();if(i.isCancelled())throw i.cancellationError;if(y===void 0)throw I;if(u(I),i.isCancelled())throw i.cancellationError;return g(y,I)}function g(I,y){let E=l.get(I);if(E===void 0||E.blockedUntil===void 0)return m(I);let R=L(),T=E.blockedUntil-R;if(T<=0)return m(I);let C=new W,P=C.linkToSignal(i);return new Promise((x,_)=>{e==null||e.addEventListener(\"priorityChange\",()=>{let k=f();if(i.isCancelled())throw i.cancellationError;if(k===void 0)return M(y);k!==I&&(C.cancel(),g(k,y).then(A,M))},C.signal),kn(T,C.signal).then(()=>m(I).then(A,M),N);function A(k){P(),x(k)}function M(k){P(),_(k)}})}function h(I){var E;if(l.size===0)return I[0];let y=L();return(E=I.filter(R=>{var T;return((T=l.get(R))==null?void 0:T.isBlacklisted)!==!0}).reduce((R,T)=>{var P;let C=(P=l.get(T))==null?void 0:P.blockedUntil;return C!==void 0&&C<=y&&(C=void 0),R===void 0?[T,C]:R[1]===void 0?R:C===void 0?[T,void 0]:C<R[1]?[T,C]:R},void 0))==null?void 0:E[0]}}function ka(n,e,t){return Aa(null,null,n,e,t)}var Gn=class extends oe{constructor(e,t,r){super(),this.scheduleManualRefresh=N,this._manifestUrls=e,this._pipelines=t.manifest,this._settings=r,this._canceller=new W,this._isStarted=!1,this._isRefreshPending=!1,this._consecutiveUnsafeMode=0,this._prioritizedContentUrl=null}dispose(){this._canceller.cancel(),this.removeEventListener()}start(){if(this._isStarted)return;this._isStarted=!0;let e,t=this._settings.initialManifest;t instanceof wt?e=Promise.resolve({manifest:t}):t!==void 0?e=this.parse(t,{previousManifest:null,unsafeMode:!1},void 0):e=this._fetchManifest(void 0).then(r=>r.parse({previousManifest:null,unsafeMode:!1})),e.then(r=>{this.trigger(\"manifestReady\",r.manifest),this._canceller.isUsed()||this._recursivelyRefreshManifest(r.manifest,r)}).catch(r=>this._onFatalError(r))}updateContentUrls(e,t){var r;this._prioritizedContentUrl=(r=e==null?void 0:e[0])!=null?r:void 0,t&&this.scheduleManualRefresh({enablePartialRefresh:!1,delay:0,canUseUnsafeMode:!1})}async _fetchManifest(e){var u;let t=this._canceller.signal,r=this._settings,i=this._pipelines,a=e!=null?e:(u=this._manifestUrls)==null?void 0:u[0],o=this._getBackoffSetting(l=>{this.trigger(\"warning\",rt(l))});try{let l=await s(a);return{parse:d=>this._parseLoadedManifest(l,d,a)}}catch(l){throw rt(l)}function s(l){let{loadManifest:d}=i,f=r.requestTimeout===void 0?U.getCurrent().DEFAULT_REQUEST_TIMEOUT:r.requestTimeout,m=r.connectionTimeout===void 0?U.getCurrent().DEFAULT_CONNECTION_TIMEOUT:r.connectionTimeout;return f<0&&(f=void 0),m<0&&(m=void 0),ka(()=>d(l,{timeout:f,connectionTimeout:m},t),o,t)}}parse(e,t,r){return this._parseLoadedManifest({responseData:e,size:void 0,requestDuration:void 0},t,r)}async _parseLoadedManifest(e,t,r){var h;let i=L(),a=this._canceller.signal,o=this.trigger.bind(this),{sendingTime:s,receivedTime:u}=e,l=this._getBackoffSetting(I=>{this.trigger(\"warning\",rt(I))}),d=r!=null?r:(h=this._manifestUrls)==null?void 0:h[0],f={externalClockOffset:t.externalClockOffset,unsafeMode:t.unsafeMode,previousManifest:t.previousManifest,originalUrl:d};try{let I=this._pipelines.parseManifest(e,f,p,a,m);if(Ql(I)){let{manifest:y,warnings:E}=await I;return g(y,E)}else return g(I.manifest,I.warnings)}catch(I){throw ge(I,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"Unknown error when parsing the Manifest\"})}async function m(I){try{return await ka(I,l,a)}catch(y){throw rt(y)}}function p(I){for(let y of I){if(a.isCancelled())return;let E=ge(y,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"Unknown error when parsing the Manifest\"});o(\"warning\",E)}}function g(I,y){p(y);let E=L()-i;return c.info(`MF: Manifest parsed in ${E}ms`),{manifest:I,sendingTime:s,receivedTime:u,parsingTime:E}}}_getBackoffSetting(e){let{DEFAULT_MAX_MANIFEST_REQUEST_RETRY:t,INITIAL_BACKOFF_DELAY_BASE:r,MAX_BACKOFF_DELAY_BASE:i}=U.getCurrent(),{lowLatencyMode:a,maxRetry:o}=this._settings,s=a?r.LOW_LATENCY:r.REGULAR,u=a?i.LOW_LATENCY:i.REGULAR,l=o!=null?o:t;return{onRetry:e,baseDelay:s,maxDelay:u,maxRetry:l}}_recursivelyRefreshManifest(e,{sendingTime:t,parsingTime:r,updatingTime:i}){let{MAX_CONSECUTIVE_MANIFEST_PARSING_IN_UNSAFE_MODE:a,MIN_MANIFEST_PARSING_TIME_TO_ENTER_UNSAFE_MODE:o}=U.getCurrent(),s=r!==void 0?r+(i!=null?i:0):void 0,u=!1;this._consecutiveUnsafeMode>0?u=this._consecutiveUnsafeMode<a:s!==void 0&&(u=s>=o);let l=t===void 0?0:L()-t,d=Math.max(this._settings.minimumManifestUpdateInterval-l,0),f=new W;if(f.linkToSignal(this._canceller.signal),this.scheduleManualRefresh=m=>{let{enablePartialRefresh:p,delay:g,canUseUnsafeMode:h}=m,I=h&&u,y=t===void 0?0:L()-t,E=Math.max(this._settings.minimumManifestUpdateInterval-y,0),R=setTimeout(()=>{f.cancel(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:p,unsafeMode:I})},Math.max((g!=null?g:0)-y,E));f.signal.register(()=>{clearTimeout(R)})},e.expired!==null){let m=setTimeout(()=>{var p;(p=e.expired)==null||p.then(()=>{f.cancel(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:!1,unsafeMode:u})},N)},d);f.signal.register(()=>{clearTimeout(m)})}if(e.lifetime!==void 0&&e.lifetime>=0){let m=e.lifetime*1e3-l,p;s===void 0?p=m:e.lifetime<3&&s>=100?(p=Math.min(Math.max(3e3-l,Math.max(m,0)+s),m*6),c.info(\"MUS: Manifest update rythm is too frequent. Postponing next request.\",m,p)):s>=e.lifetime*1e3/10?(p=Math.min(Math.max(m,0)+s,m*6),c.info(\"MUS: Manifest took too long to parse. Postponing next request\",p,p)):p=m;let g=setTimeout(()=>{f.cancel(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:!1,unsafeMode:u})},Math.max(p,d));f.signal.register(()=>{clearTimeout(g)})}}_triggerNextManifestRefresh(e,{enablePartialRefresh:t,unsafeMode:r}){let i=e.updateUrl,a,o;this._prioritizedContentUrl!==null?(a=!0,o=this._prioritizedContentUrl,this._prioritizedContentUrl=null):(a=!t||i===void 0,o=a?e.getUrls()[0]:i);let s=e.clockOffset;r?(this._consecutiveUnsafeMode+=1,c.info('Init: Refreshing the Manifest in \"unsafeMode\" for the '+String(this._consecutiveUnsafeMode)+\" consecutive time.\")):this._consecutiveUnsafeMode>0&&(c.info('Init: Not parsing the Manifest in \"unsafeMode\" anymore after '+String(this._consecutiveUnsafeMode)+\" consecutive times.\"),this._consecutiveUnsafeMode=0),!this._isRefreshPending&&(this._isRefreshPending=!0,this._fetchManifest(o).then(u=>u.parse({externalClockOffset:s,previousManifest:e,unsafeMode:r})).then(u=>{this._isRefreshPending=!1;let{manifest:l,sendingTime:d,parsingTime:f}=u,m=L();if(a)e.replace(l);else try{e.update(l)}catch(g){let h=g instanceof Error?g.message:\"unknown error\";c.warn(`MUS: Attempt to update Manifest failed: ${h}`,\"Re-downloading the Manifest fully\");let{FAILED_PARTIAL_UPDATE_MANIFEST_REFRESH_DELAY:I}=U.getCurrent(),y=d===void 0?0:L()-d,E=Math.max(this._settings.minimumManifestUpdateInterval-y,0),R=N,T=setTimeout(()=>{R(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:!1,unsafeMode:!1})},Math.max(I-y,E));R=this._canceller.signal.register(()=>{clearTimeout(T)});return}let p=L()-m;this._recursivelyRefreshManifest(e,{sendingTime:d,parsingTime:f,updatingTime:p})}).catch(u=>{this._isRefreshPending=!1,this._onFatalError(u)}))}_onFatalError(e){this._canceller.isUsed()||(this.trigger(\"error\",e),this.dispose())}};function Ql(n){return n instanceof Promise}var xa=Gn;function Ma(n,e){let t=new WeakMap;return{createRequest(r,i,a,o){let s=l=>e(r,a,l),u=n.create(s,i,a,o);return t.set(u,s),u},updatePriority(r,i){let a=t.get(r);if(a===void 0){c.warn(\"Fetchers: Cannot update the priority of a request: task not found.\");return}n.updatePriority(a,i)}}}var Kn=class extends oe{constructor(e){super(),this._downgradedCdnList={metadata:[],timeouts:[]},e.register(()=>{for(let t of this._downgradedCdnList.timeouts)clearTimeout(t);this._downgradedCdnList={metadata:[],timeouts:[]}})}getCdnPreferenceForResource(e){return e.length<=1?e:this._innerGetCdnPreferenceForResource(e)}downgradeCdn(e){let t=Bs(this._downgradedCdnList.metadata,e);t>=0&&this._removeIndexFromDowngradeList(t);let{DEFAULT_CDN_DOWNGRADE_TIME:r}=U.getCurrent(),i=r;this._downgradedCdnList.metadata.push(e);let a=setTimeout(()=>{let o=Bs(this._downgradedCdnList.metadata,e);o>=0&&this._removeIndexFromDowngradeList(o),this.trigger(\"priorityChange\",null)},i);this._downgradedCdnList.timeouts.push(a),this.trigger(\"priorityChange\",null)}_innerGetCdnPreferenceForResource(e){let[t,r]=e.reduce((i,a)=>(this._downgradedCdnList.metadata.some(o=>o.id===a.id&&o.baseUrl===a.baseUrl)?i[1].push(a):i[0].push(a),i),[[],[]]);return t.concat(r)}_removeIndexFromDowngradeList(e){this._downgradedCdnList.metadata.splice(e,1);let t=this._downgradedCdnList.timeouts.splice(e,1);clearTimeout(t[0])}};function Bs(n,e){return n.length===0?-1:e.id!==void 0?ne(n,t=>t.id===e.id):ne(n,t=>t.baseUrl===e.baseUrl)}var Oa=class{constructor(){this._cache=new WeakMap}add({representation:e,segment:t},r){t.isInit&&this._cache.set(e,r)}get({representation:e,segment:t}){if(t.isInit){let r=this._cache.get(e);if(r!==void 0)return r}return null}},Us=Oa;var $l=Ae();function wa(n,e,t,r,i){let a;i.connectionTimeout===void 0||i.connectionTimeout<0?a=void 0:a=i.connectionTimeout;let o={timeout:i.requestTimeout<0?void 0:i.requestTimeout,connectionTimeout:a},s=se([\"audio\",\"video\"],n)?new Us:void 0,{loadSegment:u,parseSegment:l}=e;return async function(f,m,p){var q,J,$;let{segment:g,adaptation:h,representation:I,manifest:y,period:E}=f,R=bt(f),T=$l(),C,P=[],x=0,_=!1,A={segment:g,type:h.type,language:h.language,isLive:y.isLive,periodStart:E.start,periodEnd:E.end,mimeType:I.mimeType,codecs:I.codecs[0],manifestPublishTime:y.publishTime},M={onProgress(V){var Y;C===void 0&&V.totalSize!==void 0&&V.size<V.totalSize&&((Y=r.onProgress)==null||Y.call(r,{duration:V.duration,size:V.size,totalSize:V.totalSize,timestamp:L(),id:T}))},onNewChunk(V){m.onChunk(O(V,!0))}},k=s!==void 0?s.get(f):null;if(k!==null)return c.debug(\"SF: Found wanted segment in cache\",R),m.onChunk(O(k,!1)),Promise.resolve();c.debug(\"SF: Beginning request\",R),(q=r.onRequestBegin)==null||q.call(r,{requestTimestamp:L(),id:T,content:f}),p.register(D);try{let V=await Aa(f.representation.cdnMetadata,t,w,H({onRetry:B},i),p);if(V.resultType===\"segment-loaded\"){let Y=V.resultData.responseData;s!==void 0&&s.add(f,V.resultData.responseData),m.onChunk(O(Y,!1))}else V.resultType===\"segment-created\"&&m.onChunk(O(V.resultData,!1));c.debug(\"SF: Segment request ended with success\",R),m.onAllChunksReceived(),V.resultType!==\"segment-created\"?(C=V.resultData,z()):C=null,p.isCancelled()||(J=r.onRequestEnd)==null||J.call(r,{id:T}),p.deregister(D)}catch(V){throw p.deregister(D),C=null,V instanceof ie?(c.debug(\"SF: Segment request aborted\",R),V):(c.debug(\"SF: Segment request failed\",R),($=r.onRequestEnd)==null||$.call(r,{id:T}),rt(V))}function D(){var V;C===void 0&&(c.debug(\"SF: Segment request cancelled\",R),C=null,(V=r.onRequestEnd)==null||V.call(r,{id:T}))}function w(V){return u(V,A,o,p,M)}function O(V,Y){P.push(!1);let X=P.length-1;return function(ce){let de={data:V,isChunked:Y};try{let Ie=l(de,A,ce);return P[X]||(x=x!==void 0&&Ie.segmentType===\"media\"&&Ie.chunkInfos!==null&&Ie.chunkInfos.duration!==void 0?x+Ie.chunkInfos.duration:void 0,P[X]=!0,z()),Ie}catch(Ie){throw ge(Ie,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"Unknown parsing error\"})}}}function B(V){m.onRetry(rt(V))}function z(){var V;_||!v(C)&&C.size!==void 0&&C.requestDuration!==void 0&&P.length>0&&P.every(Y=>Y)&&(_=!0,(V=r.onMetrics)==null||V.call(r,{size:C.size,requestDuration:C.requestDuration,content:f,segmentDuration:x}))}}}function Ls({maxRetry:n,lowLatencyMode:e,requestTimeout:t,connectionTimeout:r}){let{DEFAULT_MAX_REQUESTS_RETRY_ON_ERROR:i,DEFAULT_REQUEST_TIMEOUT:a,DEFAULT_CONNECTION_TIMEOUT:o,INITIAL_BACKOFF_DELAY_BASE:s,MAX_BACKOFF_DELAY_BASE:u}=U.getCurrent();return{maxRetry:n!=null?n:i,baseDelay:e?s.LOW_LATENCY:s.REGULAR,maxDelay:e?u.LOW_LATENCY:u.REGULAR,requestTimeout:t===void 0?a:t,connectionTimeout:r===void 0?o:r}}var Yn=class{constructor({prioritySteps:e}){if(this._minPendingPriority=null,this._waitingQueue=[],this._pendingTasks=[],this._prioritySteps=e,this._prioritySteps.high>=this._prioritySteps.low)throw new Error(\"TP: the max high level priority should be given a lowerpriority number than the min low priority.\")}create(e,t,r,i){let a;return kt(i,(o,s)=>(a={hasEnded:!1,priority:t,trigger:()=>{if(a.hasEnded)return;let l=()=>{p(),this._endTask(a)},d=g=>{r.beforeEnded(),l(),o(g)},f=g=>{l(),s(g)},m=new W,p=m.linkToSignal(i);a.interrupter=m,m.signal.register(()=>{a.interrupter=null,i.isCancelled()||r.beforeInterrupted()}),this._minPendingPriority=this._minPendingPriority===null?a.priority:Math.min(this._minPendingPriority,a.priority),this._pendingTasks.push(a),a.taskFn(m.signal).then(d).catch(g=>{!i.isCancelled()&&m.isUsed()&&g instanceof ie||f(g)})},taskFn:e,interrupter:null},this._canBeStartedNow(a)?(a.trigger(),this._isRunningHighPriorityTasks()&&this._interruptCancellableTasks()):this._waitingQueue.push(a),()=>this._endTask(a)))}_endTask(e){e.hasEnded=!0;let t=jn(e.taskFn,this._waitingQueue);if(t>=0)this._waitingQueue.splice(t,1);else{let r=jn(e.taskFn,this._pendingTasks);if(r<0)return;this._pendingTasks.splice(r,1),this._pendingTasks.length>0?this._minPendingPriority===e.priority&&(this._minPendingPriority=Math.min(...this._pendingTasks.map(i=>i.priority))):this._minPendingPriority=null,this._loopThroughWaitingQueue()}}updatePriority(e,t){let r=jn(e,this._waitingQueue);if(r>=0){let s=this._waitingQueue[r];if(s.priority===t||(s.priority=t,!this._canBeStartedNow(s)))return;this._findAndRunWaitingQueueTask(r),this._isRunningHighPriorityTasks()&&this._interruptCancellableTasks();return}let i=jn(e,this._pendingTasks);if(i<0){c.warn(\"TP: request to update the priority of a non-existent task\");return}let a=this._pendingTasks[i];if(a.priority===t)return;let o=a.priority;a.priority=t,this._minPendingPriority===null||t<this._minPendingPriority?this._minPendingPriority=t:this._minPendingPriority===o&&(this._pendingTasks.length===1?this._minPendingPriority=t:this._minPendingPriority=Math.min(...this._pendingTasks.map(s=>s.priority)),this._loopThroughWaitingQueue()),this._isRunningHighPriorityTasks()&&this._interruptCancellableTasks()}_loopThroughWaitingQueue(){let e=this._waitingQueue.reduce((t,r)=>t===null||t>r.priority?r.priority:t,null);if(!(e===null||this._minPendingPriority!==null&&this._minPendingPriority<e))for(let t=0;t<this._waitingQueue.length;t++){let r=this._minPendingPriority===null?e:Math.min(this._minPendingPriority,e);this._waitingQueue[t].priority<=r&&(this._findAndRunWaitingQueueTask(t),t--)}}_interruptCancellableTasks(){for(let e=0;e<this._pendingTasks.length;e++){let t=this._pendingTasks[e];if(t.priority>=this._prioritySteps.low)return this._interruptPendingTask(t),this._interruptCancellableTasks()}}_findAndRunWaitingQueueTask(e){return e>=this._waitingQueue.length||e<0?(c.warn(\"TP : Tried to start a non existing task\"),!1):(this._waitingQueue.splice(e,1)[0].trigger(),!0)}_interruptPendingTask(e){var r;let t=jn(e.taskFn,this._pendingTasks);if(t<0){c.warn(\"TP: Interrupting a non-existent pending task. Aborting...\");return}this._pendingTasks.splice(t,1),this._waitingQueue.push(e),this._pendingTasks.length===0?this._minPendingPriority=null:this._minPendingPriority===e.priority&&(this._minPendingPriority=Math.min(...this._pendingTasks.map(i=>i.priority))),(r=e.interrupter)==null||r.cancel()}_canBeStartedNow(e){return this._minPendingPriority===null||e.priority<=this._minPendingPriority}_isRunningHighPriorityTasks(){return this._minPendingPriority!==null&&this._minPendingPriority<=this._prioritySteps.high}};function jn(n,e){return ne(e,t=>t.taskFn===n)}var Qn=class{constructor(e,t,r){let i=new Kn(r),{MIN_CANCELABLE_PRIORITY:a,MAX_HIGH_PRIORITY_LEVEL:o}=U.getCurrent();this._transport=e,this._prioritizer=new Yn({prioritySteps:{high:o,low:a}}),this._cdnPrioritizer=i,this._backoffOptions=t}createSegmentFetcher(e,t){let r=Ls(this._backoffOptions),i=this._transport[e],a=wa(e,i,this._cdnPrioritizer,t,r);return Ma(this._prioritizer,a)}};var Da=Qn;var $n=class{constructor(e){this._segmentSinksStore=e,this._currentFreezeTimestamp=null}needToReload(e){let{readyState:t,rebuffering:r,freezing:i}=e;if((e.bufferGap!==void 0&&isFinite(e.bufferGap)?e.bufferGap:0)<6||r===null&&i===null||t>1)return this._currentFreezeTimestamp=null,!1;let o=L();this._currentFreezeTimestamp===null&&(this._currentFreezeTimestamp=o);let s=r!==null&&o-r.timestamp>4e3,u=i!==null&&o-i.timestamp>4e3;if((s||u)&&L()-this._currentFreezeTimestamp>4e3){let l=this._segmentSinksStore.getStatus(\"audio\"),d=this._segmentSinksStore.getStatus(\"video\"),f=!0,m=!0;for(let p of[l,d])if(p.type===\"initialized\")for(let g of p.value.getLastKnownInventory()){let{representation:h}=g.infos;if(h.decipherable===!1)return c.warn(\"Init: we have undecipherable segments left in the buffer, reloading\"),this._currentFreezeTimestamp=null,!0;h.contentProtections!==void 0&&(m=!1,h.decipherable!==!0&&(f=!1))}if(!m&&f)return c.warn(\"Init: we are frozen despite only having decipherable segments left in the buffer, reloading\"),this._currentFreezeTimestamp=null,!0}return!1}};var{DEFAULT_WANTED_BUFFER_AHEAD:Xl,DEFAULT_MAX_VIDEO_BUFFER_SIZE:Zl,DEFAULT_MAX_BUFFER_AHEAD:Jl,DEFAULT_MAX_BUFFER_BEHIND:ef}=U.getCurrent(),Na=new G(Xl),Ba=new G(Zl),Ua=new G(Jl),La=new G(ef),Wr=new G({height:void 0,width:void 0,pixelRatio:1}),Vr=new G(1/0);function Q(n,e){c.debug(\"<--- Sending to Main:\",n.type),e===void 0?postMessage(n):postMessage(n,e)}function we(n){return ge(n,{defaultCode:\"NONE\",defaultReason:\"An unknown error stopped content playback.\"}).serialize()}var Xn=class{constructor(){this._refs=new Map}reset(){var e,t,r,i,a,o,s,u,l,d,f,m;for(let p of this._refs.keys())(t=(e=this._refs.get(p))==null?void 0:e.audio)==null||t.trackReference.finish(),(i=(r=this._refs.get(p))==null?void 0:r.audio)==null||i.representations.finish(),(o=(a=this._refs.get(p))==null?void 0:a.video)==null||o.trackReference.finish(),(u=(s=this._refs.get(p))==null?void 0:s.video)==null||u.representations.finish(),(d=(l=this._refs.get(p))==null?void 0:l.text)==null||d.trackReference.finish(),(m=(f=this._refs.get(p))==null?void 0:f.text)==null||m.representations.finish();this._refs=new Map}addTrackSetter(e,t,r){var s,u;let i=this._refs.get(e);i===void 0&&(i={},this._refs.set(e,i)),i[t]!==void 0&&(c.warn(\"WP: Track for periodId already declared\",e,t),(s=i[t])==null||s.trackReference.finish(),(u=i[t])==null||u.representations.finish());let a=r.getValue(),o;v(a)?o=new G({representationIds:[],switchingMode:\"lazy\"}):(o=new G(a.representations.getValue()),r.setValue(H({},a,{representations:o}))),i[t]={trackReference:r,representations:o}}setTrack(e,t,r){var a;let i=(a=this._refs.get(e))==null?void 0:a[t];return i===void 0?(c.debug(\"WP: Setting track for inexistent periodId\",e,t),!1):(v(r)?(i.representations=new G({representationIds:[],switchingMode:\"lazy\"}),i.trackReference.setValue(r)):(i.representations=new G(r.initialRepresentations),i.trackReference.setValue({adaptationId:r.adaptationId,switchingMode:r.switchingMode,representations:i.representations,relativeResumingPosition:r.relativeResumingPosition})),!0)}updateRepresentations(e,t,r,i){var s;let a=(s=this._refs.get(e))==null?void 0:s[r];if(a===void 0)return c.debug(\"WP: Setting track for inexistent periodId\",e,r),!1;let o=a.trackReference.getValue();return v(o)||o.adaptationId!==t?(c.debug(\"WP: Desynchronized Adaptation id\",o==null?void 0:o.adaptationId,t),!1):(a.representations.setValue(i),!0)}removeTrackSetter(e,t){let r=this._refs.get(e),i=r==null?void 0:r[t];return r===void 0||i===void 0?(c.debug(\"WP: Removing track setter for inexistent periodId\",e,t),!1):(i.trackReference.finish(),i.representations.finish(),delete r[t],Object.keys(r).length===0&&this._refs.delete(e),!0)}};var Zn=class{constructor(e,t){this._contentId=e,this._messageSender=t,this._queues={pushTextData:[],remove:[]}}pushTextData(e){return new Promise((t,r)=>{this._messageSender({type:\"push-text-data\",contentId:this._contentId,value:e}),this._queues.pushTextData.push({resolve:t,reject:r})})}remove(e,t){return new Promise((r,i)=>{this._messageSender({type:\"remove-text-data\",contentId:this._contentId,value:{start:e,end:t}}),this._queues.remove.push({resolve:r,reject:i})})}reset(){this._messageSender({type:\"reset-text-displayer\",contentId:this._contentId,value:null}),this._resetCurrentQueue()}stop(){this._messageSender({type:\"stop-text-displayer\",contentId:this._contentId,value:null}),this._resetCurrentQueue()}_resetCurrentQueue(){let e=new ie;this._queues.pushTextData.forEach(t=>{t.reject(e)}),this._queues.remove.forEach(t=>{t.reject(e)})}onPushedTrackSuccess(e){let t=this._queues.pushTextData.shift();if(t===void 0){c.error(\"WMS: pushTextData success for inexistant operation\");return}t.resolve(e)}onPushedTrackError(e){let t=this._queues.pushTextData.shift();if(t===void 0){c.error(\"WMS: pushTextData error for inexistant operation\");return}t.reject(e)}onRemoveSuccess(e){let t=this._queues.remove.shift();if(t===void 0){c.error(\"WMS: remove success for inexistant operation\");return}t.resolve(e)}onRemoveError(e){let t=this._queues.pushTextData.shift();if(t===void 0){c.error(\"WMS: pushTextData error for inexistant operation\");return}t.reject(e)}};var Fs=Ae(),Gt=class{constructor({hasMseInWorker:e,hasVideo:t}){this._currentContent=null,this._currentMediaSourceCanceller=new W,this._hasVideo=t,this._hasMseInWorker=e;let r=new W;this._contentCanceller=r}initializeNewContent(e){return new Promise((t,r)=>{var x,_;this.disposeCurrentContent();let i=this._contentCanceller,a=new W;this._currentMediaSourceCanceller=a,a.linkToSignal(i.signal);let{contentId:o,url:s,hasText:u,transportOptions:l}=e,d=null;he(ae.transports.dash!==void 0,\"Multithread RxPlayer should have access to the DASH feature\");let f=typeof l.representationFilter==\"string\"?ro(l.representationFilter):void 0,m=ae.transports.dash(Le(_e({},l),{representationFilter:f})),p=new xa(s===void 0?void 0:[s],m,e.manifestRetryOptions),g=Ns({initialBitrates:{audio:(x=e.initialAudioBitrate)!=null?x:0,video:(_=e.initialVideoBitrate)!=null?_:0},lowLatencyMode:l.lowLatencyMode,throttlers:{limitResolution:{video:Wr},throttleBitrate:{video:Vr}}}),h=a.signal.register(A=>{r(A)}),I=new Da(m,e.segmentRetryOptions,i.signal),y=new Xn,[E,R,T]=zs(o,{hasMseInWorker:this._hasMseInWorker,hasVideo:this._hasVideo,hasText:u},a.signal),C=new $n(R);this._currentContent={contentId:o,decipherabilityFreezeDetector:C,mediaSource:E,manifest:null,manifestFetcher:p,representationEstimator:g,segmentSinksStore:R,segmentFetcherCreator:I,workerTextSender:T,trackChoiceSetter:y},E.addEventListener(\"mediaSourceOpen\",function(){P()},a.signal),i.signal.register(()=>{p.dispose()}),p.addEventListener(\"warning\",A=>{Q({type:\"warning\",contentId:o,value:we(A)})},i.signal),p.addEventListener(\"manifestReady\",A=>{if(d!==null){c.warn(\"WP: Multiple `manifestReady` events, ignoring\");return}d=A,this._currentContent!==null&&(this._currentContent.manifest=d),P()},a.signal),p.addEventListener(\"error\",A=>{r(A)},i.signal),p.start();function P(){if(d===null||E.readyState===\"closed\"||a.isUsed())return;let A=d.getMetadataSnapshot();d.addEventListener(\"manifestUpdate\",M=>{if(d===null)return;let k=H(d.getMetadataSnapshot(),{periods:[]});Q({type:\"manifest-update\",contentId:o,value:{manifest:k,updates:M}})},i.signal),h(),t(A)}})}getCurrentContent(){return this._currentContent}scheduleManifestRefresh(e){var t;(t=this._currentContent)==null||t.manifestFetcher.scheduleManualRefresh(e)}reloadMediaSource(e){if(this._currentMediaSourceCanceller.cancel(),this._currentContent===null)return Promise.reject(new Error(\"CP: No content anymore\"));this._currentContent.trackChoiceSetter.reset(),this._currentMediaSourceCanceller=new W,Q({type:\"reloading-media-source\",contentId:this._currentContent.contentId,value:e},[]);let[t,r,i]=zs(this._currentContent.contentId,{hasMseInWorker:this._hasMseInWorker,hasVideo:this._hasVideo,hasText:this._currentContent.workerTextSender!==null},this._currentMediaSourceCanceller.signal);return this._currentContent.mediaSource=t,this._currentContent.segmentSinksStore=r,this._currentContent.workerTextSender=i,new Promise((a,o)=>{t.addEventListener(\"mediaSourceOpen\",function(){a()},this._currentMediaSourceCanceller.signal),t.addEventListener(\"mediaSourceClose\",function(){o(new Error(\"MediaSource ReadyState changed to close during init.\"))},this._currentMediaSourceCanceller.signal),this._currentMediaSourceCanceller.signal.register(s=>{o(s)})})}disposeCurrentContent(){this._contentCanceller.cancel(),this._contentCanceller=new W}};function zs(n,e,t){let r;if(e.hasMseInWorker){let s=new Bn(Fs());r=s;let u,l=s.handle;if(l.type===\"handle\")u={type:\"handle\",value:l.value};else{let d=URL.createObjectURL(l.value);u={type:\"url\",value:d},t.register(()=>{URL.revokeObjectURL(d)})}Q({type:\"attach-media-source\",contentId:n,value:u,mediaSourceId:r.id},[l.value])}else r=new Un(Fs(),n,Q);let i=e.hasText?new Zn(n,Q):null,{hasVideo:a}=e,o=new ht(r,a,i);return t.register(()=>{o.disposeAll(),i==null||i.stop(),r.dispose()}),[r,o,i]}function Fa(){let n=!1,e=new Gt({hasMseInWorker:!1,hasVideo:!0}),t=null,r=new Wo;ae.dashParsers.wasm=r,ae.dashParsers.fastJs=Ao,ae.transports.dash=ts;let i=null;onmessage=function(a){var s,u,l;c.debug(\"Worker: received message\",a.data.type);let o=a.data;switch(o.type){case\"init\":he(!n),n=!0,qa(o.value),Ws(o.value.logLevel,o.value.sendBackLogs),o.value.dashWasmUrl!==void 0&&r.isCompatible()&&r.initialize({wasmUrl:o.value.dashWasmUrl}).catch(d=>{let f=d instanceof Error?d.toString():\"Unknown Error\";c.error(\"Worker: Could not initialize DASH_WASM parser\",f)}),(!o.value.hasVideo||o.value.hasMseInWorker)&&(e.disposeCurrentContent(),e=new Gt({hasMseInWorker:o.value.hasMseInWorker,hasVideo:o.value.hasVideo})),ae.codecSupportProber=o.value.hasMseInWorker?oo:so,Q({type:\"init-success\",value:null});break;case\"log-level-update\":Ws(o.value.logLevel,o.value.sendBackLogs);break;case\"prepare\":tf(e,o.value);break;case\"start\":{let d=e.getCurrentContent();if(o.contentId!==(d==null?void 0:d.contentId))return;t!==null&&(t.cancel(),t=null);let f=new W,m=new G(H(o.value.initialObservation,{position:new Pt(...o.value.initialObservation.position)}));i=m,t=f,t.signal.register(()=>{m.finish()}),Vs(o.value,e,m,f.signal);break}case\"observation\":{let d=e.getCurrentContent();if(o.contentId!==(d==null?void 0:d.contentId))return;let f=o.value,{buffered:m}=f,p=Ia(d.mediaSource,null);p.audio!==null&&(m.audio=p.audio),p.video!==null&&(m.video=p.video),i==null||i.setValue(H(f,{position:new Pt(...o.value.position)}));break}case\"ref-update\":nf(o);break;case\"stop\":if(o.contentId!==((s=e.getCurrentContent())==null?void 0:s.contentId))return;e.disposeCurrentContent(),t!==null&&(t.cancel(),t=null);break;case\"sb-success\":{let d=e.getCurrentContent();if(o.mediaSourceId!==(d==null?void 0:d.mediaSource.id))return;let{sourceBuffers:f}=d.mediaSource,m=K(f,p=>p.type===o.sourceBufferType);if(m===void 0){c.info(\"WP: Success for an unknown SourceBuffer\",o.sourceBufferType);return}if(m.onOperationSuccess===void 0){c.warn(\"WP: A SourceBufferInterface with MSE performed a cross-thread operation\",o.sourceBufferType);return}m.onOperationSuccess(o.operationId,o.value.buffered);break}case\"sb-error\":{let d=e.getCurrentContent();if(o.mediaSourceId!==(d==null?void 0:d.mediaSource.id))return;let{sourceBuffers:f}=d.mediaSource,m=K(f,p=>p.type===o.sourceBufferType);if(m===void 0){c.info(\"WP: Error for an unknown SourceBuffer\",o.sourceBufferType);return}if(m.onOperationFailure===void 0){c.warn(\"WP: A SourceBufferInterface with MSE performed a cross-thread operation\",o.sourceBufferType);return}m.onOperationFailure(o.operationId,o.value);break}case\"media-source-ready-state-change\":{let d=e.getCurrentContent();if(o.mediaSourceId!==(d==null?void 0:d.mediaSource.id))return;if(d.mediaSource.onMediaSourceReadyStateChanged===void 0){c.warn(\"WP: A MediaSourceInterface with MSE performed a cross-thread operation\");return}d.mediaSource.onMediaSourceReadyStateChanged(o.value);break}case\"decipherability-update\":{if(o.contentId!==((u=e.getCurrentContent())==null?void 0:u.contentId))return;let d=e.getCurrentContent();if(d===null||d.manifest===null)return;let f=o.value;d.manifest.updateRepresentationsDeciperability(m=>{for(let p of f)if(m.representation.uniqueId===p.representationUniqueId)return p.decipherable;return m.representation.decipherable});break}case\"codec-support-update\":{let d=e.getCurrentContent();if(d===null||d.manifest===null)return;if(typeof((l=ae.codecSupportProber)==null?void 0:l.updateCache)==\"function\")for(let{mimeType:f,codec:m,result:p}of o.value)ae.codecSupportProber.updateCache(f,m,p);try{let f=d.manifest.refreshCodecSupport(o.value);f!==null&&Q({type:\"warning\",contentId:d.contentId,value:we(f)})}catch(f){Q({type:\"error\",contentId:d.contentId,value:we(f)})}break}case\"urls-update\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;d.manifestFetcher.updateContentUrls(o.value.urls,o.value.refreshNow);break}case\"track-update\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;d.trackChoiceSetter.setTrack(o.value.periodId,o.value.bufferType,o.value.choice);break}case\"rep-update\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;d.trackChoiceSetter.updateRepresentations(o.value.periodId,o.value.adaptationId,o.value.bufferType,o.value.choice);break}case\"add-text-success\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Added text track but text track aren't enabled\");return}d.workerTextSender.onPushedTrackSuccess(o.value.ranges);break}case\"push-text-error\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Added text track but text track aren't enabled\");return}d.workerTextSender.onPushedTrackError(new Error(o.value.message));break}case\"remove-text-success\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Removed text track but text track aren't enabled\");return}d.workerTextSender.onRemoveSuccess(o.value.ranges);break}case\"remove-text-error\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Removed text track but text track aren't enabled\");return}d.workerTextSender.onRemoveError(new Error(o.value.message));break}default:ze(o)}}}function tf(n,e){n.initializeNewContent(e).then(t=>{Q({type:\"manifest-ready\",contentId:e.contentId,value:{manifest:t}})},t=>{Q({type:\"error\",contentId:e.contentId,value:we(t)})})}function nf(n){switch(n.value.name){case\"wantedBufferAhead\":Na.setValueIfChanged(n.value.newVal);break;case\"maxVideoBufferSize\":Ba.setValueIfChanged(n.value.newVal);break;case\"maxBufferBehind\":La.setValueIfChanged(n.value.newVal);break;case\"maxBufferAhead\":Ua.setValueIfChanged(n.value.newVal);break;case\"limitVideoResolution\":Wr.setValueIfChanged(n.value.newVal);break;case\"throttleVideoBitrate\":Vr.setValueIfChanged(n.value.newVal);break;default:ze(n.value)}}function Vs(n,e,t,r){var x;let i=new W;i.linkToSignal(r);let a=new Map,o=e.getCurrentContent();if(o===null||o.manifest===null){let _=new Re(\"NONE\",\"Loading content when none is prepared\");Q({type:\"error\",contentId:void 0,value:we(_)});return}let{contentId:s,manifest:u,mediaSource:l,representationEstimator:d,segmentSinksStore:f,segmentFetcherCreator:m}=o,{drmSystemId:p,enableFastSwitching:g,initialTime:h,onCodecSwitch:I}=n;if(t.onUpdate(_=>{o.decipherabilityFreezeDetector.needToReload(_)&&P({timeOffset:0,minimumPosition:0,maximumPosition:1/0}),[\"video\",\"audio\",\"text\"].forEach(A=>{var k;let M=f.getStatus(A);M.type===\"initialized\"&&M.value.synchronizeInventory((k=_.buffered[A])!=null?k:[])})}),((x=u.getPeriodForTime(h))!=null?x:u.getNextPeriod(h))===void 0){let _=new j(\"MEDIA_STARTING_TIME_NOT_FOUND\",\"Wanted starting time not found in the Manifest.\");Q({type:\"error\",contentId:s,value:we(_)});return}let E=new gn(t,s,Q,i.signal),R=ha(u,l,E,f,{onWarning:_=>Q({type:\"warning\",contentId:s,value:we(_)}),onPeriodChanged:_=>{Q({type:\"active-period-changed\",contentId:s,value:{periodId:_.id}})}},i.signal);_s({initialPeriod:u.periods[0],manifest:u},E,d,f,m,{wantedBufferAhead:Na,maxVideoBufferSize:Ba,maxBufferAhead:Ua,maxBufferBehind:La,drmSystemId:p,enableFastSwitching:g,onCodecSwitch:I},T(),i.signal);function T(){return{needsBufferFlush(_){Q({type:\"needs-buffer-flush\",contentId:s,value:_})},streamStatusUpdate(_){C(_),u.isLastPeriodKnown&&_.period.id===u.periods[u.periods.length-1].id&&(_.hasFinishedLoading||_.isEmptyStream?R.onLastSegmentFinishedLoading(_.bufferType):R.onLastSegmentLoadingResume(_.bufferType))},needsManifestRefresh(){e.scheduleManifestRefresh({enablePartialRefresh:!0,canUseUnsafeMode:!0})},manifestMightBeOufOfSync(){let{OUT_OF_SYNC_MANIFEST_REFRESH_DELAY:_}=U.getCurrent();e.scheduleManifestRefresh({enablePartialRefresh:!1,canUseUnsafeMode:!1,delay:_})},lockedStream(_){Q({type:\"locked-stream\",contentId:s,value:{periodId:_.period.id,bufferType:_.bufferType}})},adaptationChange(_){var A,M;R.onAdaptationChange(_.type,_.period,_.adaptation),!i.signal.isCancelled()&&Q({type:\"adaptation-changed\",contentId:s,value:{adaptationId:(M=(A=_.adaptation)==null?void 0:A.id)!=null?M:null,periodId:_.period.id,type:_.type}})},representationChange(_){var A,M;R.onRepresentationChange(_.type,_.period),!i.signal.isCancelled()&&Q({type:\"representation-changed\",contentId:s,value:{adaptationId:_.adaptation.id,representationId:(M=(A=_.representation)==null?void 0:A.id)!=null?M:null,periodId:_.period.id,type:_.type}})},inbandEvent(_){Q({type:\"inband-event\",contentId:s,value:_})},warning(_){Q({type:\"warning\",contentId:s,value:we(_)})},periodStreamReady(_){o!==null&&(o.trackChoiceSetter.addTrackSetter(_.period.id,_.type,_.adaptationRef),Q({type:\"period-stream-ready\",contentId:s,value:{periodId:_.period.id,bufferType:_.type}}))},periodStreamCleared(_){if(o===null)return;let A=a.get(_.period);A!==void 0&&(A.delete(_.type),A.size===0&&a.delete(_.period)),o.trackChoiceSetter.removeTrackSetter(_.period.id,_.type),Q({type:\"period-stream-cleared\",contentId:s,value:{periodId:_.period.id,bufferType:_.type}})},bitrateEstimateChange(_){Q({type:\"bitrate-estimate-change\",contentId:s,value:{bitrate:_.bitrate,bufferType:_.type}})},needsMediaSourceReload(_){P(_)},needsDecipherabilityFlush(){Q({type:\"needs-decipherability-flush\",contentId:s,value:null})},encryptionDataEncountered(_){for(let A of _){let M=A.content,k=_e({},M);k.manifest instanceof wt&&(k.manifest=k.manifest.getMetadataSnapshot()),k.period instanceof dt&&(k.period=k.period.getMetadataSnapshot()),k.adaptation instanceof st&&(k.adaptation=k.adaptation.getMetadataSnapshot()),k.representation instanceof Zt&&(k.representation=k.representation.getMetadataSnapshot()),Q({type:\"encryption-data-encountered\",contentId:s,value:{keyIds:A.keyIds,values:A.values,content:k,type:A.type}})}},error(_){Q({type:\"error\",contentId:s,value:we(_)})}}}function C(_){let{imminentDiscontinuity:A}=_,M=a.get(_.period),k=M==null?void 0:M.get(_.bufferType);if(k!==void 0){if(k.discontinuity===null){if(A===null)return}else if(A!==null&&k.discontinuity.start===A.start&&k.discontinuity.end===A.end)return}M===void 0&&(M=new Map,a.set(_.period,M));let D={periodId:_.period.id,bufferType:_.bufferType,discontinuity:_.imminentDiscontinuity,position:_.position};M.set(_.bufferType,D),Q({type:\"discontinuity-update\",contentId:s,value:D})}function P(_){let M=t.getValue().position.getWanted();i!==null&&i.cancel(),e.reloadMediaSource(_).then(()=>{Vs({initialTime:M,drmSystemId:n.drmSystemId,enableFastSwitching:n.enableFastSwitching,onCodecSwitch:n.onCodecSwitch},e,t,r)},k=>{Q({type:\"error\",contentId:s,value:we(k)})})}}function Ws(n,e){e?c.setLevel(n,(t,r)=>{let i=r.map(a=>a instanceof Error?we(a):a);postMessage({type:\"log\",value:{logLevel:t,logs:i}})}):c.setLevel(n)}var qs=Fa;qs();})();\n" + "})()"], { type: "application/javascript" });
4
+ var blob = new Blob(["(function(){" + "\"use strict\";(()=>{var $s=Object.defineProperty,Xs=Object.defineProperties;var Zs=Object.getOwnPropertyDescriptors;var Ga=Object.getOwnPropertySymbols;var Js=Object.prototype.hasOwnProperty,eu=Object.prototype.propertyIsEnumerable;var Ka=(n,e,t)=>e in n?$s(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,ge=(n,e)=>{for(var t in e||(e={}))Js.call(e,t)&&Ka(n,t,e[t]);if(Ga)for(var t of Ga(e))eu.call(e,t)&&Ka(n,t,e[t]);return n},Me=(n,e)=>Xs(n,Zs(e));var b={PRODUCTION:0,DEV:1,CURRENT_ENV:0};var nu={DEFAULT_REQUEST_TIMEOUT:3e4,DEFAULT_CONNECTION_TIMEOUT:15e3,DEFAULT_TEXT_TRACK_MODE:\"native\",DEFAULT_ENABLE_FAST_SWITCHING:!0,DELTA_POSITION_AFTER_RELOAD:{bitrateSwitch:-.1,trackSwitch:{audio:0,video:0,other:0}},DEFAULT_CODEC_SWITCHING_BEHAVIOR:\"continue\",DEFAULT_AUTO_PLAY:!1,DEFAULT_WANTED_BUFFER_AHEAD:30,DEFAULT_MAX_BUFFER_AHEAD:1/0,DEFAULT_MAX_BUFFER_BEHIND:1/0,DEFAULT_MAX_VIDEO_BUFFER_SIZE:1/0,MAXIMUM_MAX_BUFFER_AHEAD:{text:18e3},MINIMUM_MAX_BUFFER_AHEAD:{text:120},MAXIMUM_MAX_BUFFER_BEHIND:{text:18e3},DEFAULT_BASE_BANDWIDTH:0,INACTIVITY_DELAY:6e4,DEFAULT_THROTTLE_VIDEO_BITRATE_WHEN_HIDDEN:!1,DEFAULT_VIDEO_RESOLUTION_LIMIT:\"none\",DEFAULT_LIVE_GAP:{DEFAULT:10,LOW_LATENCY:3.5},BUFFER_DISCONTINUITY_THRESHOLD:.2,BITRATE_REBUFFERING_RATIO:1.5,DEFAULT_MAX_MANIFEST_REQUEST_RETRY:4,DEFAULT_CDN_DOWNGRADE_TIME:60,DEFAULT_MAX_REQUESTS_RETRY_ON_ERROR:4,INITIAL_BACKOFF_DELAY_BASE:{REGULAR:200,LOW_LATENCY:50},MAX_BACKOFF_DELAY_BASE:{REGULAR:3e3,LOW_LATENCY:1e3},SAMPLING_INTERVAL_MEDIASOURCE:1e3,SAMPLING_INTERVAL_LOW_LATENCY:500,SAMPLING_INTERVAL_NO_MEDIASOURCE:500,ABR_ENTER_BUFFER_BASED_ALGO:10,ABR_EXIT_BUFFER_BASED_ALGO:5,ABR_MINIMUM_TOTAL_BYTES:15e4,ABR_MINIMUM_CHUNK_SIZE:16e3,ABR_STARVATION_FACTOR:{DEFAULT:.72,LOW_LATENCY:.72},ABR_REGULAR_FACTOR:{DEFAULT:.72,LOW_LATENCY:.72},ABR_STARVATION_GAP:{DEFAULT:5,LOW_LATENCY:5},OUT_OF_STARVATION_GAP:{DEFAULT:7,LOW_LATENCY:7},ABR_STARVATION_DURATION_DELTA:.1,ABR_FAST_EMA:2,ABR_SLOW_EMA:10,RESUME_GAP_AFTER_SEEKING:{DEFAULT:1.5,LOW_LATENCY:.5},RESUME_GAP_AFTER_NOT_ENOUGH_DATA:{DEFAULT:.5,LOW_LATENCY:.5},RESUME_GAP_AFTER_BUFFERING:{DEFAULT:5,LOW_LATENCY:.5},REBUFFERING_GAP:{DEFAULT:.5,LOW_LATENCY:.2},MINIMUM_BUFFER_AMOUNT_BEFORE_FREEZING:2,UNFREEZING_SEEK_DELAY:6e3,FREEZING_STALLED_DELAY:600,UNFREEZING_DELTA_POSITION:.001,SEGMENT_SYNCHRONIZATION_DELAY:1500,MISSING_DATA_TRIGGER_SYNC_DELAY:.1,MAX_TIME_MISSING_FROM_COMPLETE_SEGMENT:.15,MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:.4,MAX_MANIFEST_BUFFERED_DURATION_DIFFERENCE:.3,MINIMUM_SEGMENT_SIZE:.001,APPEND_WINDOW_SECURITIES:{START:.2,END:.1},MAXIMUM_HTML_TEXT_TRACK_UPDATE_INTERVAL:50,TEXT_TRACK_SIZE_CHECKS_INTERVAL:250,BUFFER_PADDING:{audio:1,video:3,other:1},SEGMENT_PRIORITIES_STEPS:[2,4,8,12,18,25],MAX_HIGH_PRIORITY_LEVEL:1,MIN_CANCELABLE_PRIORITY:3,EME_DEFAULT_VIDEO_CODECS:['video/mp4;codecs=\"avc1.4d401e\"','video/mp4;codecs=\"avc1.42e01e\"','video/webm;codecs=\"vp8\"'],EME_DEFAULT_AUDIO_CODECS:['audio/mp4;codecs=\"mp4a.40.2\"',\"audio/webm;codecs=opus\"],EME_DEFAULT_WIDEVINE_ROBUSTNESSES:[\"HW_SECURE_ALL\",\"HW_SECURE_DECODE\",\"HW_SECURE_CRYPTO\",\"SW_SECURE_DECODE\",\"SW_SECURE_CRYPTO\"],EME_DEFAULT_PLAYREADY_RECOMMENDATION_ROBUSTNESSES:[\"3000\",\"2000\"],EME_KEY_SYSTEMS:{clearkey:[\"webkit-org.w3.clearkey\",\"org.w3.clearkey\"],widevine:[\"com.widevine.alpha\"],playready:[\"com.microsoft.playready.recommendation\",\"com.microsoft.playready\",\"com.chromecast.playready\",\"com.youtube.playready\"],fairplay:[\"com.apple.fps.1_0\"]},MAX_CONSECUTIVE_MANIFEST_PARSING_IN_UNSAFE_MODE:10,MIN_MANIFEST_PARSING_TIME_TO_ENTER_UNSAFE_MODE:200,MIN_DASH_S_ELEMENTS_TO_PARSE_UNSAFELY:300,OUT_OF_SYNC_MANIFEST_REFRESH_DELAY:3e3,FAILED_PARTIAL_UPDATE_MANIFEST_REFRESH_DELAY:3e3,DASH_FALLBACK_LIFETIME_WHEN_MINIMUM_UPDATE_PERIOD_EQUAL_0:3,EME_DEFAULT_MAX_SIMULTANEOUS_MEDIA_KEY_SESSIONS:15,EME_MAX_STORED_PERSISTENT_SESSION_INFORMATION:1e3,EME_WAITING_DELAY_LOADED_SESSION_EMPTY_KEYSTATUSES:100,FORCED_ENDED_THRESHOLD:8e-4,ADAP_REP_SWITCH_BUFFER_PADDINGS:{video:{before:5,after:5},audio:{before:2,after:2.5},text:{before:0,after:0}},SOURCE_BUFFER_FLUSHING_INTERVAL:500,CONTENT_REPLACEMENT_PADDING:1.2,CACHE_LOAD_DURATION_THRESHOLDS:{video:50,audio:10},STREAM_EVENT_EMITTER_POLL_INTERVAL:250,DEFAULT_MAXIMUM_TIME_ROUNDING_ERROR:.001,BUFFERED_HISTORY_RETENTION_TIME:6e4,BUFFERED_HISTORY_MAXIMUM_ENTRIES:200,MIN_BUFFER_AHEAD:5,UPTO_CURRENT_POSITION_CLEANUP:5,DEFAULT_VIDEO_REPRESENTATIONS_SWITCHING_MODE:\"seamless\",DEFAULT_AUDIO_REPRESENTATIONS_SWITCHING_MODE:\"seamless\",DEFAULT_VIDEO_TRACK_SWITCHING_MODE:\"reload\",DEFAULT_AUDIO_TRACK_SWITCHING_MODE:\"seamless\"},ja=nu;function ru(n,...e){if(n==null)throw new TypeError(\"Cannot convert undefined or null to object\");let t=Object(n);for(let r=0;r<e.length;r++){let i=e[r];for(let a in i)Object.prototype.hasOwnProperty.call(i,a)&&(t[a]=i[a])}return t}var H=typeof Object.assign==\"function\"?Object.assign:ru;function Gr(n){return n!=null&&!Array.isArray(n)&&typeof n==\"object\"}function Qt(n,...e){if(e.length===0)return n;let t=e.shift();if(Gr(n)&&Gr(t))for(let r in t)if(Gr(t[r])){let i=n[r];i===void 0&&(i={},n[r]=i),Qt(i,t[r])}else H(n,{[r]:t[r]});return Qt(n,...e)}var Kr=class{constructor(){this._config=ja}update(e){let t=Qt(this._config,e);this._config=t}getCurrent(){return this._config}},iu=new Kr,U=iu;var Ke=class n extends Error{constructor(e,t,r){super(e),Object.setPrototypeOf(this,n.prototype),this.name=\"CustomLoaderError\",this.canRetry=t,this.xhr=r}};function v(n){return n==null}var oe=class{constructor(){this._listeners={}}addEventListener(e,t,r){let i=this._listeners[e];Array.isArray(i)?i.push(t):this._listeners[e]=[t],r!==void 0&&r.register(()=>{this.removeEventListener(e,t)})}removeEventListener(e,t){if(v(e)){this._listeners={};return}let r=this._listeners[e];if(!Array.isArray(r))return;if(v(t)){delete this._listeners[e];return}let i=r.indexOf(t);i!==-1&&r.splice(i,1),r.length===0&&delete this._listeners[e]}trigger(e,t){let r=this._listeners[e];Array.isArray(r)&&r.slice().forEach(i=>{try{i(t)}catch(a){if(b.CURRENT_ENV===b.DEV)throw a instanceof Error?a:new Error(\"EventEmitter: listener error\");console.error(\"RxPlayer: EventEmitter error\",a instanceof Error?a:null)}})}};function D(){}var au=\"NONE\",$t=class extends oe{constructor(){super(),this.error=D,this.warn=D,this.info=D,this.debug=D,this._levels={NONE:0,ERROR:1,WARNING:2,INFO:3,DEBUG:4},this._currentLevel=au}setLevel(e,t){let r,i=this._levels[e];typeof i==\"number\"?(r=i,this._currentLevel=e):(r=0,this._currentLevel=\"NONE\"),t===void 0?(this.error=r>=this._levels.ERROR?console.error.bind(console):D,this.warn=r>=this._levels.WARNING?console.warn.bind(console):D,this.info=r>=this._levels.INFO?console.info.bind(console):D,this.debug=r>=this._levels.DEBUG?console.log.bind(console):D):(this.error=r>=this._levels.ERROR?(...a)=>t(\"ERROR\",a):D,this.warn=r>=this._levels.WARNING?(...a)=>t(\"WARNING\",a):D,this.info=r>=this._levels.INFO?(...a)=>t(\"INFO\",a):D,this.debug=r>=this._levels.DEBUG?(...a)=>t(\"DEBUG\",a):D),this.trigger(\"onLogLevelChange\",this._currentLevel)}getLevel(){return this._currentLevel}hasLevel(e){return this._levels[e]>=this._levels[this._currentLevel]}};var ou=new $t,c=ou;var st=typeof WorkerGlobalScope!=\"undefined\"&&self instanceof WorkerGlobalScope;var su=typeof window==\"undefined\"&&!st,nr=su;var rr;st?rr=self:nr?rr=global:rr=window;var Ee=rr;function ne(n,e,t){if(typeof Array.prototype.findIndex==\"function\")return n.findIndex(e,t);let r=n.length>>>0;for(let i=0;i<r;i++)if(e.call(t,n[i],i,n))return i;return-1}var ir=class{constructor(e,t){this._value=e,this._listeners=[],this._isFinished=!1,this._onFinishCbs=[],t!==void 0&&(this._deregisterCancellation=t.register(()=>this.finish()))}getValue(){return this._value}setValue(e){if(this._isFinished){b.CURRENT_ENV===b.DEV&&console.error(\"Finished shared references cannot be updated\");return}if(this._value=e,this._listeners.length===0)return;let t=this._listeners.slice();for(let r of t)try{r.hasBeenCleared||r.trigger(e,r.complete)}catch(i){}}setValueIfChanged(e){e!==this._value&&this.setValue(e)}onUpdate(e,t){let r=()=>{if((t==null?void 0:t.clearSignal)!==void 0&&t.clearSignal.deregister(r),i.hasBeenCleared)return;i.hasBeenCleared=!0;let a=this._listeners.indexOf(i);a>=0&&this._listeners.splice(a,1)},i={trigger:e,complete:r,hasBeenCleared:!1};if(this._listeners.push(i),(t==null?void 0:t.emitCurrentValue)===!0&&e(this._value,r),this._isFinished||i.hasBeenCleared){r();return}(t==null?void 0:t.clearSignal)!==void 0&&t.clearSignal.register(r)}waitUntilDefined(e,t){this.onUpdate((r,i)=>{r!==void 0&&(i(),e(this._value))},{clearSignal:t==null?void 0:t.clearSignal,emitCurrentValue:!0})}_onFinished(e,t){if(t.isCancelled())return D;let r=()=>{let o=ne(this._onFinishCbs,s=>s.trigger===i);o>=0&&(this._onFinishCbs[o].hasBeenCleared=!0,this._onFinishCbs.splice(o,1))},i=()=>{r(),e()},a=t.register(r);return this._onFinishCbs.push({trigger:i,hasBeenCleared:!1}),a}finish(){this._deregisterCancellation!==void 0&&this._deregisterCancellation(),this._isFinished=!0;let e=this._listeners.slice();for(let t of e)try{t.hasBeenCleared||(t.complete(),t.hasBeenCleared=!0)}catch(r){}if(this._listeners.length=0,this._onFinishCbs.length>0){let t=this._onFinishCbs.slice();for(let r of t)try{r.hasBeenCleared||(r.trigger(),r.hasBeenCleared=!0)}catch(i){}this._onFinishCbs.length=0}}};function Xt(n,e,t){let r=new ir(e(n.getValue()),t);return n.onUpdate(function(a){r.setValue(e(a))},{clearSignal:t}),n._onFinished(()=>{r.finish()},t),r}var j=ir;var jr=new j(0);function Ya({date:n,timestamp:e}){let t=n-e,r=typeof performance!=\"undefined\"?Date.now()-performance.now():0;jr.setValueIfChanged(r-t)}var uu=typeof performance!=\"undefined\"?()=>performance.now()+jr.getValue():()=>Date.now()+jr.getValue(),L=uu;var re=class n extends Error{constructor(e,t,r){let i;switch(r){case\"TIMEOUT\":i=\"The request timed out\";break;case\"ERROR_EVENT\":i=\"An error prevented the request to be performed successfully\";break;case\"PARSE_ERROR\":i=\"An error happened while formatting the response data\";break;case\"ERROR_HTTP_CODE\":i=\"An HTTP status code indicating failure was received: \"+String(t);break}super(i),Object.setPrototypeOf(this,n.prototype),this.name=\"RequestError\",this.url=e,this.status=t,this.type=r}serialize(){return{url:this.url,status:this.status,type:this.type}}},ye={TIMEOUT:\"TIMEOUT\",ERROR_EVENT:\"ERROR_EVENT\",ERROR_HTTP_CODE:\"ERROR_HTTP_CODE\",PARSE_ERROR:\"PARSE_ERROR\"};var Yr=typeof Headers==\"function\"?Headers:null,Qr=typeof AbortController==\"function\"?AbortController:null;function ar(n){var m,p;let e;if(!v(n.headers))if(v(Yr))e=n.headers;else{e=new Yr;let g=Object.keys(n.headers);for(let h=0;h<g.length;h++){let I=g[h];e.append(I,n.headers[I])}}c.debug(\"Fetch: Called with URL\",n.url);let t=null,r=!1,i=!1,a=L(),o=v(Qr)?null:new Qr;function s(){if(v(o)){c.warn(\"Fetch: AbortController API not available.\");return}o.abort()}let u;n.timeout!==void 0&&(u=setTimeout(()=>{r=!0,f!==void 0&&clearTimeout(f),s()},n.timeout));let f;n.connectionTimeout!==void 0&&(f=setTimeout(()=>{i=!0,u!==void 0&&clearTimeout(u),s()},n.connectionTimeout));let d=n.cancelSignal.register(function(h){t=h,s()}),l={method:\"GET\"};if(e!==void 0&&(l.headers=e),l.signal=v(o)?null:o.signal,c.hasLevel(\"DEBUG\")){let g=\"FETCH: Sending GET \"+n.url;n.timeout!==void 0&&(g+=\" to=\"+String(n.timeout/1e3)),n.connectionTimeout!==void 0&&(g+=\" cto=\"+String(n.connectionTimeout/1e3)),((m=n.headers)==null?void 0:m.Range)!==void 0&&(g+=\" Range=\"+((p=n.headers)==null?void 0:p.Range)),c.debug(g)}return fetch(n.url,l).then(g=>{if(f!==void 0&&clearTimeout(f),g.status>=300)throw c.warn(\"Fetch: Request HTTP Error\",g.status,g.url),new re(g.url,g.status,ye.ERROR_HTTP_CODE);if(v(g.body))throw new re(g.url,g.status,ye.PARSE_ERROR);let h=g.headers.get(\"Content-Length\"),I=!v(h)&&!isNaN(+h)?+h:void 0,y=g.body.getReader(),T=0;return P();async function P(){let E=await y.read();if(!E.done&&!v(E.value)){T+=E.value.byteLength;let C=L(),R={url:g.url,currentTime:C,duration:C-a,sendingTime:a,chunkSize:E.value.byteLength,chunk:E.value.buffer,size:T,totalSize:I};return n.onData(R),P()}else if(E.done){u!==void 0&&clearTimeout(u),d();let C=L();return{requestDuration:C-a,receivedTime:C,sendingTime:a,size:T,status:g.status,url:g.url}}return P()}}).catch(g=>{throw t!==null?t:(d(),r?(c.warn(\"Fetch: Request timed out.\"),new re(n.url,0,ye.TIMEOUT)):i?(c.warn(\"Fetch: Request connection timed out.\"),new re(n.url,0,ye.TIMEOUT)):g instanceof re?g:(c.warn(\"Fetch: Request Error\",g instanceof Error?g.toString():\"\"),new re(n.url,0,ye.ERROR_EVENT)))})}function Zt(){return typeof Ee.fetch==\"function\"&&!v(Qr)&&!v(Yr)}function J(n){return typeof n==\"string\"&&n.length>0}var du=\"json\";function $r(n){let e={url:n.url,headers:n.headers,responseType:v(n.responseType)?du:n.responseType,timeout:n.timeout,connectionTimeout:n.connectionTimeout};return new Promise((t,r)=>{let{onProgress:i,cancelSignal:a}=n,{url:o,headers:s,responseType:u,timeout:f,connectionTimeout:d}=e,l=new XMLHttpRequest;l.open(\"GET\",o,!0);let m;f!==void 0&&(l.timeout=f,m=setTimeout(()=>{I(),r(new re(o,l.status,ye.TIMEOUT))},f+3e3));let p;if(d!==void 0&&(p=setTimeout(()=>{I(),l.readyState!==XMLHttpRequest.DONE&&l.abort(),r(new re(o,l.status,ye.TIMEOUT))},d)),l.responseType=u,l.responseType===\"document\"&&l.overrideMimeType(\"text/xml\"),!v(s)){let y=s;for(let T in y)y.hasOwnProperty(T)&&l.setRequestHeader(T,y[T])}let g=L(),h=null;if(a!==void 0&&(h=a.register(function(T){I(),l.readyState!==XMLHttpRequest.DONE&&l.abort(),r(T)}),a.isCancelled()))return;if(l.onerror=function(){I(),r(new re(o,l.status,ye.ERROR_EVENT))},l.ontimeout=function(){I(),r(new re(o,l.status,ye.TIMEOUT))},d!==void 0&&(l.onreadystatechange=function(){l.readyState>=XMLHttpRequest.HEADERS_RECEIVED&&clearTimeout(p)}),i!==void 0&&(l.onprogress=function(T){let P=L();i({url:o,duration:P-g,sendingTime:g,currentTime:P,size:T.loaded,totalSize:T.total})}),l.onload=function(T){if(l.readyState===XMLHttpRequest.DONE)if(I(),l.status>=200&&l.status<300){let P=L(),E=l.response instanceof ArrayBuffer?l.response.byteLength:T.total,C=l.status,R=l.responseType,k=J(l.responseURL)?l.responseURL:o,_;if(R===\"json\"?_=typeof l.response==\"object\"?l.response:lu(l.responseText):_=l.response,v(_)){r(new re(o,l.status,ye.PARSE_ERROR));return}t({status:C,url:k,responseType:R,sendingTime:g,receivedTime:P,requestDuration:P-g,size:E,responseData:_})}else r(new re(o,l.status,ye.ERROR_HTTP_CODE))},c.hasLevel(\"DEBUG\")){let y=\"XHR: Sending GET \"+o;n.responseType!==void 0&&(y+=\" type=\"+n.responseType),f!==void 0&&(y+=\" to=\"+String(f/1e3)),d!==void 0&&(y+=\" cto=\"+String(d/1e3)),(s==null?void 0:s.Range)!==void 0&&(y+=\" Range=\"+(s==null?void 0:s.Range)),c.debug(y)}l.send();function I(){m!==void 0&&clearTimeout(m),p!==void 0&&clearTimeout(p),h!==null&&h()}})}function lu(n){try{return JSON.parse(n)}catch(e){return null}}var le=$r;var St=ye,ze={NETWORK_ERROR:\"NETWORK_ERROR\",MEDIA_ERROR:\"MEDIA_ERROR\",ENCRYPTED_MEDIA_ERROR:\"ENCRYPTED_MEDIA_ERROR\",OTHER_ERROR:\"OTHER_ERROR\"};function $e(n,e){return`${n}: ${e}`}var Jt=class n extends Error{constructor(e,t,r){super($e(e,t)),Object.setPrototypeOf(this,n.prototype),this.name=\"EncryptedMediaError\",this.type=ze.ENCRYPTED_MEDIA_ERROR,this.code=e,this._originalMessage=t,this.fatal=!1,typeof(r==null?void 0:r.keyStatuses)==\"string\"&&(this.keyStatuses=r.keyStatuses)}serialize(){return{name:this.name,code:this.code,reason:this._originalMessage,keyStatuses:this.keyStatuses}}};var Q=class n extends Error{constructor(e,t,r){super($e(e,t)),Object.setPrototypeOf(this,n.prototype),this.name=\"MediaError\",this.type=ze.MEDIA_ERROR,this._originalMessage=t,this.code=e,this.fatal=!1,(r==null?void 0:r.tracks)!==void 0&&(r==null?void 0:r.tracks.length)>0&&(this.tracksInfo=r.tracks)}serialize(){return{name:this.name,code:this.code,reason:this._originalMessage,tracks:this.tracksInfo}}};var je=class n extends Error{constructor(e,t){super($e(e,t.message)),Object.setPrototypeOf(this,n.prototype),this.name=\"NetworkError\",this.type=ze.NETWORK_ERROR,this.url=t.url,this.status=t.status,this.errorType=t.type,this._baseError=t,this.code=e,this.fatal=!1}isHttpError(e){return this.errorType===St.ERROR_HTTP_CODE&&this.status===e}serialize(){return{name:this.name,code:this.code,baseError:this._baseError.serialize()}}};var Re=class n extends Error{constructor(e,t){super($e(e,t)),Object.setPrototypeOf(this,n.prototype),this.name=\"OtherError\",this.type=ze.OTHER_ERROR,this.code=e,this.fatal=!1,this._originalMessage=t}serialize(){return{name:this.name,code:this.code,reason:this._originalMessage}}};function wt(n){return(n instanceof Jt||n instanceof Q||n instanceof Re||n instanceof je)&&Object.keys(ze).indexOf(n.type)>=0}function he(n,{defaultCode:e,defaultReason:t}){if(wt(n))return n;let r=n instanceof Error?n.toString():t;return new Re(e,r)}var Ce=class n extends Error{constructor(e,t,r){super(t),Object.setPrototypeOf(this,n.prototype),this.name=\"SourceBufferError\",this.errorName=e,this.isBufferFull=r}serialize(){return{errorName:this.name,message:this.message,isBufferFull:this.isBufferFull}}toString(){return`${this.errorName}: ${this.message}`}};var fu={dashParsers:{wasm:null,native:null,fastJs:null},codecSupportProber:null,createDebugElement:null,directfile:null,decrypt:null,htmlTextDisplayer:null,htmlTextTracksParsers:{},mainThreadMediaSourceInit:null,multithread:null,nativeTextDisplayer:null,nativeTextTracksParsers:{},transports:{}},Qa=fu;var ae=Qa;function K(n,e,t){if(typeof Array.prototype.find==\"function\")return n.find(e,t);let r=n.length>>>0;for(let i=0;i<r;i++){let a=n[i];if(e.call(t,a,i,n))return a}}var mu={aa:\"aar\",ab:\"abk\",ae:\"ave\",af:\"afr\",ak:\"aka\",am:\"amh\",an:\"arg\",ar:\"ara\",as:\"asm\",av:\"ava\",ay:\"aym\",az:\"aze\",ba:\"bak\",be:\"bel\",bg:\"bul\",bi:\"bis\",bm:\"bam\",bn:\"ben\",bo:\"bod\",br:\"bre\",bs:\"bos\",ca:\"cat\",ce:\"che\",ch:\"cha\",co:\"cos\",cr:\"cre\",cs:\"ces\",cu:\"chu\",cv:\"chv\",cy:\"cym\",da:\"dan\",de:\"deu\",dv:\"div\",dz:\"dzo\",ee:\"ewe\",el:\"ell\",en:\"eng\",eo:\"epo\",es:\"spa\",et:\"est\",eu:\"eus\",fa:\"fas\",ff:\"ful\",fi:\"fin\",fj:\"fij\",fo:\"fao\",fr:\"fra\",fy:\"fry\",ga:\"gle\",gd:\"gla\",gl:\"glg\",gn:\"grn\",gu:\"guj\",gv:\"glv\",ha:\"hau\",he:\"heb\",hi:\"hin\",ho:\"hmo\",hr:\"hrv\",ht:\"hat\",hu:\"hun\",hy:\"hye\",hz:\"her\",ia:\"ina\",id:\"ind\",ie:\"ile\",ig:\"ibo\",ii:\"iii\",ik:\"ipk\",io:\"ido\",is:\"isl\",it:\"ita\",iu:\"iku\",ja:\"jpn\",jv:\"jav\",ka:\"kat\",kg:\"kon\",ki:\"kik\",kj:\"kua\",kk:\"kaz\",kl:\"kal\",km:\"khm\",kn:\"kan\",ko:\"kor\",kr:\"kau\",ks:\"kas\",ku:\"kur\",kv:\"kom\",kw:\"cor\",ky:\"kir\",la:\"lat\",lb:\"ltz\",lg:\"lug\",li:\"lim\",ln:\"lin\",lo:\"lao\",lt:\"lit\",lu:\"lub\",lv:\"lav\",mg:\"mlg\",mh:\"mah\",mi:\"mri\",mk:\"mkd\",ml:\"mal\",mn:\"mon\",mr:\"mar\",ms:\"msa\",mt:\"mlt\",my:\"mya\",na:\"nau\",nb:\"nob\",nd:\"nde\",ne:\"nep\",ng:\"ndo\",nl:\"nld\",nn:\"nno\",no:\"nor\",nr:\"nbl\",nv:\"nav\",ny:\"nya\",oc:\"oci\",oj:\"oji\",om:\"orm\",or:\"ori\",os:\"oss\",pa:\"pan\",pi:\"pli\",pl:\"pol\",ps:\"pus\",pt:\"por\",qu:\"que\",rm:\"roh\",rn:\"run\",ro:\"ron\",ru:\"rus\",rw:\"kin\",sa:\"san\",sc:\"srd\",sd:\"snd\",se:\"sme\",sg:\"sag\",si:\"sin\",sk:\"slk\",sl:\"slv\",sm:\"smo\",sn:\"sna\",so:\"som\",sq:\"sqi\",sr:\"srp\",ss:\"ssw\",st:\"sot\",su:\"sun\",sv:\"swe\",sw:\"swa\",ta:\"tam\",te:\"tel\",tg:\"tgk\",th:\"tha\",ti:\"tir\",tk:\"tuk\",tl:\"tgl\",tn:\"tsn\",to:\"ton\",tr:\"tur\",ts:\"tso\",tt:\"tat\",tw:\"twi\",ty:\"tah\",ug:\"uig\",uk:\"ukr\",ur:\"urd\",uz:\"uzb\",ve:\"ven\",vi:\"vie\",vo:\"vol\",wa:\"wln\",wo:\"wol\",xh:\"xho\",yi:\"yid\",yo:\"yor\",za:\"zha\",zh:\"zho\",zu:\"zul\"},$a=mu;var cu={alb:\"sqi\",arm:\"hye\",baq:\"eus\",bur:\"mya\",chi:\"zho\",cze:\"ces\",dut:\"nld\",fre:\"fra\",geo:\"kat\",ger:\"deu\",gre:\"ell\",ice:\"isl\",mac:\"mkd\",mao:\"mri\",may:\"msa\",per:\"fas\",slo:\"slk\",rum:\"ron\",tib:\"bod\",wel:\"cym\"},Xa=cu;function pu(n){if(v(n)||n===\"\")return\"und\";let t=(\"\"+n).toLowerCase().split(\"-\")[0],r=gu(t);return J(r)?r:n}function gu(n){let e;switch(n.length){case 2:e=$a[n];break;case 3:e=Xa[n];break}return e}var Za=pu;var Ja=Za;function or(n,e){if(n.length!==e.length)return!1;if(n===e)return!0;for(let t=n.length-1;t>=0;t--)if(n[t]!==e[t])return!1;return!0}function Ae(){let n=\"\",e=-1;return function(){return e++,e>=Number.MAX_SAFE_INTEGER&&(n+=\"0\",e=0),n+String(e)}}var hu=Ae(),Xr=class{constructor(e,t){var r,i,a,o,s;if(this.id=e.id,this.uniqueId=hu(),this.bitrate=e.bitrate,this.codecs=[],e.isSpatialAudio!==void 0&&(this.isSpatialAudio=e.isSpatialAudio),e.height!==void 0&&(this.height=e.height),e.width!==void 0&&(this.width=e.width),e.mimeType!==void 0&&(this.mimeType=e.mimeType),e.contentProtections!==void 0&&(this.contentProtections=e.contentProtections),e.frameRate!==void 0&&(this.frameRate=e.frameRate),e.hdrInfo!==void 0&&(this.hdrInfo=e.hdrInfo),this.cdnMetadata=e.cdnMetadata,this.index=e.index,t===\"audio\"||t===\"video\")if(ae.codecSupportProber!==null){if(e.supplementalCodecs!==void 0){let u=ae.codecSupportProber.isSupported((r=this.mimeType)!=null?r:\"\",(i=e.supplementalCodecs)!=null?i:\"\");u!==!1&&(this.codecs=[e.supplementalCodecs],u===!0&&(this.isSupported=!0))}this.isSupported!==!0&&(this.codecs.length>0?this.codecs.push((a=e.codecs)!=null?a:\"\"):(this.codecs=e.codecs===void 0?[]:[e.codecs],this.isSupported=ae.codecSupportProber.isSupported((o=this.mimeType)!=null?o:\"\",(s=e.codecs)!=null?s:\"\")))}else e.supplementalCodecs!==void 0&&this.codecs.push(e.supplementalCodecs),e.codecs!==void 0&&this.codecs.push(e.codecs);else e.codecs!==void 0&&this.codecs.push(e.codecs),this.isSupported=!0}refreshCodecSupport(e){var i;let t=(i=this.mimeType)!=null?i:\"\",r=this.codecs;r.length===0&&(r=[\"\"]);for(let a=0;a<r.length;a++)for(let o of e){let s=r[a];if(o.codec===s&&o.mimeType===t){if(o.result){this.isSupported=!0,this.codecs=[s];return}else if(a===r.length){this.isSupported=!1,this.codecs=[s];return}}}}getMimeTypeString(){var e,t,r;return`${(e=this.mimeType)!=null?e:\"\"};codecs=\"${(r=(t=this.codecs)==null?void 0:t[0])!=null?r:\"\"}\"`}getEncryptionData(e){var i,a;let t=this.getAllEncryptionData(),r=[];for(let o=0;o<t.length;o++){let s=!1,u=t[o];for(let f=0;f<u.values.length;f++)if(u.values[f].systemId.toLowerCase()===e.toLowerCase())if(s)r[r.length-1].values.push(u.values[f]);else{let d=(a=(i=this.contentProtections)==null?void 0:i.keyIds)==null?void 0:a.map(l=>l.keyId);r.push({type:u.type,keyIds:d,values:[u.values[f]]}),s=!0}}return r}getAllEncryptionData(){var t,r;if(this.contentProtections===void 0||this.contentProtections.initData.length===0)return[];let e=(r=(t=this.contentProtections)==null?void 0:t.keyIds)==null?void 0:r.map(i=>i.keyId);return this.contentProtections.initData.map(i=>({type:i.type,keyIds:e,values:i.values}))}addProtectionData(e,t,r){let i=!1;if(this.contentProtections===void 0)return this.contentProtections={keyIds:t!==void 0?[{keyId:t}]:[],initData:[{type:e,values:r}]},!0;if(t!==void 0){let o=this.contentProtections.keyIds;if(o===void 0)this.contentProtections.keyIds=[{keyId:t}];else{let s=!1;for(let u of o)or(u.keyId,t)&&(s=!0);s||(c.warn(\"Manifest: found unanounced key id.\"),o.push({keyId:t}))}}let a=this.contentProtections.initData;for(let o=0;o<a.length;o++)if(a[o].type===e){let s=a[o].values;for(let u=0;u<r.length;u++){let f=r[u],d;for(d=0;d<s.length;d++)if(f.systemId===s[d].systemId){if(or(f.data,s[d].data))break;c.warn(\"Manifest: different init data for the same system ID\")}d===s.length&&(s.push(f),i=!0)}return i}return this.contentProtections.initData.push({type:e,values:r}),!0}getMetadataSnapshot(){return{id:this.id,uniqueId:this.uniqueId,bitrate:this.bitrate,codecs:this.codecs,mimeType:this.mimeType,width:this.width,height:this.height,frameRate:this.frameRate,isSupported:this.isSupported,hdrInfo:this.hdrInfo,contentProtections:this.contentProtections,decipherable:this.decipherable}}},en=Xr;var ut=class n{constructor(e,t={}){let{trickModeTracks:r}=e,{representationFilter:i,isManuallyAdded:a}=t;this.id=e.id,this.type=e.type,e.isTrickModeTrack!==void 0&&(this.isTrickModeTrack=e.isTrickModeTrack),e.language!==void 0&&(this.language=e.language,this.normalizedLanguage=Ja(e.language)),e.closedCaption!==void 0&&(this.isClosedCaption=e.closedCaption),e.audioDescription!==void 0&&(this.isAudioDescription=e.audioDescription),e.isDub!==void 0&&(this.isDub=e.isDub),e.forcedSubtitles!==void 0&&(this.isForcedSubtitles=e.forcedSubtitles),e.isSignInterpreted!==void 0&&(this.isSignInterpreted=e.isSignInterpreted),e.label!==void 0&&(this.label=e.label),r!==void 0&&r.length>0&&(this.trickModeTracks=r.map(f=>new n(f)));let o=e.representations,s=[],u;for(let f=0;f<o.length;f++){let d=new en(o[f],this.type),l=!0;if(!v(i)){let m={id:d.id,bitrate:d.bitrate,codecs:d.codecs,height:d.height,width:d.width,frameRate:d.frameRate,hdrInfo:d.hdrInfo};if(d.contentProtections!==void 0&&(m.contentProtections={},d.contentProtections.keyIds!==void 0)){let p=d.contentProtections.keyIds.map(({keyId:g})=>g);m.contentProtections.keyIds=p}l=i(m,{trackType:this.type,language:this.language,normalizedLanguage:this.normalizedLanguage,isClosedCaption:this.isClosedCaption,isDub:this.isDub,isAudioDescription:this.isAudioDescription,isSignInterpreted:this.isSignInterpreted})}l?(s.push(d),u===void 0&&(d.isSupported===!0?u=!0:d.isSupported===!1&&(u=!1))):c.debug(\"Filtering Representation due to representationFilter\",this.type,`Adaptation: ${this.id}`,`Representation: ${d.id}`,`(${d.bitrate})`)}s.sort((f,d)=>f.bitrate-d.bitrate),this.representations=s,this.isSupported=u,this.manuallyAdded=a===!0}refreshCodecSupport(e){for(let t of this.representations)t.isSupported===void 0&&(t.refreshCodecSupport(e),this.isSupported!==!0&&t.isSupported===!0?this.isSupported=!0:this.isSupported===void 0&&t.isSupported===!1&&(this.isSupported=!1))}getRepresentation(e){return K(this.representations,({id:t})=>e===t)}getMetadataSnapshot(){let e=[],t=this.representations;for(let r of t)e.push(r.getMetadataSnapshot());return{id:this.id,type:this.type,isSupported:this.isSupported,language:this.language,isForcedSubtitles:this.isForcedSubtitles,isClosedCaption:this.isClosedCaption,isAudioDescription:this.isAudioDescription,isSignInterpreted:this.isSignInterpreted,normalizedLanguage:this.normalizedLanguage,representations:e,label:this.label,isDub:this.isDub}}};function se(n,e,t){if(typeof Array.prototype.includes==\"function\")return n.includes(e,t);let r=n.length>>>0;if(r===0)return!1;let i=t|0,a=i>=0?Math.min(i,r-1):Math.max(r+i,0),o=(s,u)=>s===u||typeof s==\"number\"&&typeof u==\"number\"&&isNaN(s)&&isNaN(u);for(;a<r;){if(o(n[a],e))return!0;a++}return!1}var eo=[];function Xe(n){se(eo,n)||(console.warn(n),eo.push(n))}function Zr(n){return Object.keys(n).map(e=>n[e])}var sr=typeof Object.values==\"function\"?Object.values:Zr;var Dt=[\"audio\",\"video\",\"text\"];function no(n){var a,o;let e=n.timeBounds;if(e.timeshiftDepth===null)return(a=e.minimumSafePosition)!=null?a:0;let{maximumTimeData:t}=e,r;if(!e.maximumTimeData.isLinear)r=t.maximumSafePosition;else{let s=L()-t.time;r=t.maximumSafePosition+s/1e3}let i=r-e.timeshiftDepth;return Math.max((o=e.minimumSafePosition)!=null?o:0,i)}function ro(n){let{maximumTimeData:e}=n.timeBounds;if(!n.isLive||e.livePosition===void 0)return;if(!e.isLinear)return e.livePosition;let t=L()-e.time;return e.livePosition+t/1e3}function io(n){let{maximumTimeData:e}=n.timeBounds;if(!e.isLinear)return e.maximumSafePosition;let t=L()-e.time;return e.maximumSafePosition+t/1e3}function ao(n,e){if(e===void 0)return ei(n).filter(r=>r.isSupported===!0);let t=n.adaptations[e];return t===void 0?[]:t.filter(r=>r.isSupported===!0)}function oo(n,e){let t=null;for(let r=n.periods.length-1;r>=0;r--){let i=n.periods[r];if(Jr(i,e,t))return i;t=i}}function so(n,e){let t=e.end;if(t===void 0)return null;let r=K(n.periods,i=>i.end===void 0||t<i.end);return r===void 0?null:r}function Jr(n,e,t){return e>=n.start&&(n.end===void 0||e<n.end)?!0:e===n.end&&(t===null||t.start>n.end)}function ei(n){let e=n.adaptations;return Zr(e).reduce((t,r)=>v(r)?t:t.concat(r),[])}function Iu(n,e){var r,i;let t={language:(r=n.language)!=null?r:\"\",normalized:(i=n.normalizedLanguage)!=null?i:\"\",audioDescription:n.isAudioDescription===!0,id:n.id,representations:(e?n.representations.filter(a=>a.isSupported===!0&&a.decipherable!==!1):n.representations).map(yu),label:n.label};return n.isDub===!0&&(t.dub=!0),t}function bu(n){var e,t;return{language:(e=n.language)!=null?e:\"\",normalized:(t=n.normalizedLanguage)!=null?t:\"\",closedCaption:n.isClosedCaption===!0,id:n.id,label:n.label,forced:n.isForcedSubtitles}}function Su(n,e){let t=n.trickModeTracks!==void 0?n.trickModeTracks.map(i=>{let a=(e?i.representations.filter(s=>s.isSupported===!0&&s.decipherable!==!1):i.representations).map(to),o={id:i.id,representations:a,isTrickModeTrack:!0};return i.isSignInterpreted===!0&&(o.signInterpreted=!0),o}):void 0,r={id:n.id,representations:(e?n.representations.filter(i=>i.isSupported===!0&&i.decipherable!==!1):n.representations).map(to),label:n.label};return n.isSignInterpreted===!0&&(r.signInterpreted=!0),n.isTrickModeTrack===!0&&(r.isTrickModeTrack=!0),t!==void 0&&(r.trickModeTracks=t),r}function yu(n){let{id:e,bitrate:t,codecs:r,isSpatialAudio:i,isSupported:a,decipherable:o}=n;return{id:e,bitrate:t,codec:r==null?void 0:r[0],isSpatialAudio:i,isCodecSupported:a,decipherable:o}}function to(n){let{id:e,bitrate:t,frameRate:r,width:i,height:a,codecs:o,hdrInfo:s,isSupported:u,decipherable:f}=n;return{id:e,bitrate:t,frameRate:r,width:i,height:a,codec:o==null?void 0:o[0],hdrInfo:s,isCodecSupported:u,decipherable:f}}function dt(n){switch(n.type){case\"audio\":return{type:\"audio\",track:Iu(n,!1)};case\"video\":return{type:\"video\",track:Su(n,!1)};case\"text\":return{type:\"text\",track:bu(n)}}}function uo(n){return new Function(`return (${n}(arguments[0], arguments[1]))`)}var lt=class{constructor(e,t,r){if(this.id=e.id,this.adaptations=Object.keys(e.adaptations).reduce((i,a)=>{let o=e.adaptations[a];if(v(o))return i;let s=o.map(u=>{let f=new ut(u,{representationFilter:r});return f.representations.length>0&&f.isSupported===!1&&t.push(f),f}).filter(u=>u.representations.length>0);if(s.every(u=>u.isSupported===!1)&&o.length>0&&(a===\"video\"||a===\"audio\"))throw new Q(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"No supported \"+a+\" adaptations\",{tracks:void 0});return s.length>0&&(i[a]=s),i},{}),!Array.isArray(this.adaptations.video)&&!Array.isArray(this.adaptations.audio))throw new Q(\"MANIFEST_PARSE_ERROR\",\"No supported audio and video tracks.\");this.duration=e.duration,this.start=e.start,!v(this.duration)&&!v(this.start)&&(this.end=this.start+this.duration),this.streamEvents=e.streamEvents===void 0?[]:e.streamEvents}refreshCodecSupport(e,t){Object.keys(this.adaptations).forEach(r=>{let i=this.adaptations[r];if(i===void 0)return;let a=!1;for(let o of i){let s=o.isSupported;o.refreshCodecSupport(e),s!==!1&&o.isSupported===!1&&t.push(o),a===!1?a=o.isSupported:a===void 0&&o.isSupported===!0&&(a=!0)}if((r===\"video\"||r===\"audio\")&&a===!1)throw new Q(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"No supported \"+r+\" adaptations\",{tracks:void 0})},{})}getAdaptations(){return ei(this)}getAdaptationsForType(e){let t=this.adaptations[e];return t!=null?t:[]}getAdaptation(e){return K(this.getAdaptations(),({id:t})=>e===t)}getSupportedAdaptations(e){return ao(this,e)}containsTime(e,t){return Jr(this,e,t)}getMetadataSnapshot(){let e={},t=this.getAdaptations();for(let r of t){let i=e[r.type];i===void 0&&(i=[],e[r.type]=i),i.push(r.getMetadataSnapshot())}return{start:this.start,end:this.end,id:this.id,streamEvents:this.streamEvents,adaptations:e}}};function tn(n,e,t){let r={updatedAdaptations:[],removedAdaptations:[],addedAdaptations:[]};n.start=e.start,n.end=e.end,n.duration=e.duration,n.streamEvents=e.streamEvents;let i=n.getAdaptations(),a=e.getAdaptations();for(let o=0;o<i.length;o++){let s=i[o],u=ne(a,f=>f.id===s.id);if(u===-1){c.warn('Manifest: Adaptation \"'+i[o].id+'\" not found when merging.');let[f]=i.splice(o,1);o--,r.removedAdaptations.push({id:f.id,trackType:f.type})}else{let[f]=a.splice(u,1),d=[],l=[],m=[];r.updatedAdaptations.push({adaptation:s.id,trackType:s.type,updatedRepresentations:d,addedRepresentations:l,removedRepresentations:m});let p=s.representations,g=f.representations.slice();for(let h=0;h<p.length;h++){let I=p[h],y=ne(g,T=>T.id===I.id);if(y===-1){c.warn(`Manifest: Representation \"${p[h].id}\" not found when merging.`);let[T]=p.splice(h,1);h--,m.push(T.id)}else{let[T]=g.splice(y,1);d.push(I.getMetadataSnapshot()),I.cdnMetadata=T.cdnMetadata,t===0?I.index._replace(T.index):I.index._update(T.index)}}g.length>0&&(c.warn(`Manifest: ${g.length} new Representations found when merging.`),s.representations.push(...g),l.push(...g.map(h=>h.getMetadataSnapshot())))}}if(a.length>0){c.warn(`Manifest: ${a.length} new Adaptations found when merging.`);for(let o of a){let s=n.adaptations[o.type];s===void 0?n.adaptations[o.type]=[o]:s.push(o),r.addedAdaptations.push(o.getMetadataSnapshot())}}return r}function lo(n,e){let t={updatedPeriods:[],addedPeriods:[],removedPeriods:[]},r=0;for(let a=0;a<e.length;a++){let o=e[a],s=r,u=n[s];for(;u!==void 0&&u.id!==o.id;)s++,u=n[s];if(u!==void 0){let f=tn(u,o,0);t.updatedPeriods.push({period:{id:u.id,start:u.start,end:u.end,duration:u.duration,streamEvents:u.streamEvents},result:f});let d=e.slice(r,a),l=s-r,m=n.splice(r,l,...d);t.removedPeriods.push(...m.map(p=>({id:p.id,start:p.start,end:p.end}))),t.addedPeriods.push(...d.map(p=>p.getMetadataSnapshot())),r=a+1}}if(r>n.length)return c.error(\"Manifest: error when updating Periods\"),t;if(r<n.length){let a=n.splice(r,n.length-r);t.removedPeriods.push(...a.map(o=>({id:o.id,start:o.start,end:o.end})))}let i=e.slice(r,e.length);return i.length>0&&(n.push(...i),t.addedPeriods.push(...i.map(a=>a.getMetadataSnapshot()))),t}function fo(n,e){let t={updatedPeriods:[],addedPeriods:[],removedPeriods:[]};if(n.length===0)return n.splice(0,0,...e),t.addedPeriods.push(...e.map(s=>s.getMetadataSnapshot())),t;if(e.length===0)return t;let r=n[n.length-1];if(r.start<e[0].start){if(r.end!==e[0].start)throw new Q(\"MANIFEST_UPDATE_ERROR\",\"Cannot perform partial update: not enough data\");return n.push(...e),t.addedPeriods.push(...e.map(s=>s.getMetadataSnapshot())),t}let i=ne(n,({id:s})=>s===e[0].id);if(i<0)throw new Q(\"MANIFEST_UPDATE_ERROR\",\"Cannot perform partial update: incoherent data\");let a=tn(n[i],e[0],1);t.updatedPeriods.push({period:H(n[i].getMetadataSnapshot(),{adaptations:void 0}),result:a});let o=i+1;for(let s=1;s<e.length;s++){let u=e[s],f=-1;for(let d=o;d<n.length;d++)if(u.id===n[d].id){f=d;break}if(f<0){let d=-1;for(let p=o;p<n.length;p++)if(u.start<n[p].start){d=p;break}let l=d-o,m=n.splice(o,l,u);t.addedPeriods.push(u.getMetadataSnapshot()),t.removedPeriods.push(...m.map(p=>({id:p.id,start:p.start,end:p.end})))}else{if(f>o){c.warn(\"Manifest: old Periods not found in new when updating, removing\");let l=n.splice(o,f-o);t.removedPeriods.push(...l.map(m=>({id:m.id,start:m.start,end:m.end}))),f=o}let d=tn(n[f],u,0);t.updatedPeriods.push({period:H(n[f].getMetadataSnapshot(),{adaptations:void 0}),result:d})}o++}if(o<n.length){c.warn(\"Manifest: Ending Periods not found in new when updating, removing\");let s=n.splice(o,n.length-o);t.removedPeriods.push(...s.map(u=>({id:u.id,start:u.start,end:u.end})))}return t}var _u=Ae(),nn=class extends oe{constructor(e,t,r){var s;super();let{representationFilter:i,manifestUpdateUrl:a}=t;this.manifestFormat=0,this.id=_u(),this.expired=(s=e.expired)!=null?s:null,this.transport=e.transportType,this.clockOffset=e.clockOffset;let o=[];if(this.periods=e.periods.map(u=>new lt(u,o,i)).sort((u,f)=>u.start-f.start),o.length>0){let u=new Q(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"An Adaptation contains only incompatible codecs.\",{tracks:o.map(dt)});r.push(u)}this.adaptations=this.periods[0]===void 0?{}:this.periods[0].adaptations,this.timeBounds=e.timeBounds,this.isDynamic=e.isDynamic,this.isLive=e.isLive,this.isLastPeriodKnown=e.isLastPeriodKnown,this.uris=e.uris===void 0?[]:e.uris,this.updateUrl=a,this.lifetime=e.lifetime,this.clockOffset=e.clockOffset,this.suggestedPresentationDelay=e.suggestedPresentationDelay,this.availabilityStartTime=e.availabilityStartTime,this.publishTime=e.publishTime}refreshCodecSupport(e){let t=[];for(let r of this.periods)r.refreshCodecSupport(e,t);return t.length>0?new Q(\"MANIFEST_INCOMPATIBLE_CODECS_ERROR\",\"An Adaptation contains only incompatible codecs.\",{tracks:t.map(dt)}):null}getPeriod(e){return K(this.periods,t=>e===t.id)}getPeriodForTime(e){return oo(this,e)}getNextPeriod(e){return K(this.periods,t=>t.start>e)}getPeriodAfter(e){return so(this,e)}getUrls(){return this.uris}replace(e){this._performUpdate(e,0)}update(e){this._performUpdate(e,1)}getMinimumSafePosition(){return no(this)}getLivePosition(){return ro(this)}getMaximumSafePosition(){return io(this)}updateRepresentationsDeciperability(e){let t=Tu(this,e);t.length>0&&this.trigger(\"decipherabilityUpdate\",t)}getAdaptations(){Xe(\"manifest.getAdaptations() is deprecated. Please use manifest.period[].getAdaptations() instead\");let e=this.periods[0];if(e===void 0)return[];let t=e.adaptations,r=[];for(let i in t)if(t.hasOwnProperty(i)){let a=t[i];r.push(...a)}return r}getAdaptationsForType(e){Xe(\"manifest.getAdaptationsForType(type) is deprecated. Please use manifest.period[].getAdaptationsForType(type) instead\");let t=this.periods[0];if(t===void 0)return[];let r=t.adaptations[e];return r===void 0?[]:r}getAdaptation(e){return Xe(\"manifest.getAdaptation(id) is deprecated. Please use manifest.period[].getAdaptation(id) instead\"),K(this.getAdaptations(),({id:t})=>e===t)}getMetadataSnapshot(){let e=[];for(let t of this.periods)e.push(t.getMetadataSnapshot());return{manifestFormat:1,id:this.id,periods:e,isDynamic:this.isDynamic,isLive:this.isLive,isLastPeriodKnown:this.isLastPeriodKnown,suggestedPresentationDelay:this.suggestedPresentationDelay,clockOffset:this.clockOffset,uris:this.uris,availabilityStartTime:this.availabilityStartTime,timeBounds:this.timeBounds}}_performUpdate(e,t){this.availabilityStartTime=e.availabilityStartTime,this.expired=e.expired,this.isDynamic=e.isDynamic,this.isLive=e.isLive,this.isLastPeriodKnown=e.isLastPeriodKnown,this.lifetime=e.lifetime,this.clockOffset=e.clockOffset,this.suggestedPresentationDelay=e.suggestedPresentationDelay,this.transport=e.transport,this.publishTime=e.publishTime;let r;if(t===0)this.timeBounds=e.timeBounds,this.uris=e.uris,r=lo(this.periods,e.periods);else{this.timeBounds.maximumTimeData=e.timeBounds.maximumTimeData,this.updateUrl=e.uris[0],r=fo(this.periods,e.periods);let i=this.getMinimumSafePosition();for(;this.periods.length>0;){let a=this.periods[0];if(a.end===void 0||a.end>i)break;this.periods.shift()}}this.adaptations=this.periods[0]===void 0?{}:this.periods[0].adaptations,this.trigger(\"manifestUpdate\",r)}};function Tu(n,e){let t=[];for(let r of n.periods)for(let i of r.getAdaptations())for(let a of i.representations){let o={manifest:n,period:r,adaptation:i,representation:a},s=e(o);s!==a.decipherable&&(t.push(o),a.decipherable=s,c.debug(`Decipherability changed for \"${a.id}\"`,`(${a.bitrate})`,String(a.decipherable)))}return t}function Ze(n,e){return n.segment.id===e.segment.id&&n.representation.uniqueId===e.representation.uniqueId}function yt(n){if(v(n))return\"\";let{period:e,adaptation:t,representation:r,segment:i}=n,a;return i.isInit?a=\"init\":i.complete?a=`${i.time}-${i.duration}`:a=`${i.time}`,`${t.type} P: ${e.id} A: ${t.id} R: ${r.id} S: ${a}`}var Nt=nn;var ft=Ee,_t=ft===void 0?void 0:v(ft.MediaSource)?v(ft.MozMediaSource)?v(ft.WebKitMediaSource)?ft.MSMediaSource:ft.WebKitMediaSource:ft.MozMediaSource:ft.MediaSource;var Eu=200,ur=new Map;function ti(n){if(v(_t))return st&&c.error(\"Compat: Cannot request codec support in a worker without MSE.\"),!1;if(typeof _t.isTypeSupported==\"function\"){let e=ur.get(n);if(e!==void 0)return e;{let t=_t.isTypeSupported(n);return ur.size>=Eu&&ur.clear(),ur.set(n,t),t}}return!0}var Ru=50,ni=class{constructor(){this._cachedCodecSupport=new Map}isSupported(e,t){let r=`${e!=null?e:\"\"};codecs=\"${t!=null?t:\"\"}\"`,i=this._cachedCodecSupport.get(r);if(i!==void 0)return i;this._cachedCodecSupport.size>=Ru&&this._cachedCodecSupport.clear();let a=ti(r);return this._cachedCodecSupport.set(r,a),a}},Pu=new ni,mo=Pu;var ri=class{constructor(){this._currentCacheSize=0,this._cachedCodecSupport=new Map}isSupported(e,t){var i;let r=(i=this._cachedCodecSupport.get(e))==null?void 0:i.get(t);if(r!==void 0)return r}updateCache(e,t,r){this._currentCacheSize>=50&&(this._cachedCodecSupport.clear(),this._currentCacheSize=0);let i=this._cachedCodecSupport.get(e);if(i!==void 0)i.set(t,r);else{let a=new Map;a.set(t,r),this._cachedCodecSupport.set(e,a)}}},co=new ri;var dr=class n extends Error{constructor(e){super(e),Object.setPrototypeOf(this,n.prototype),this.name=\"AssertionError\"}};function Ie(n,e){if(b.DEV===b.CURRENT_ENV&&!n)throw new dr(e===void 0?\"invalid assertion\":e)}function We(n){throw new dr(\"Unreachable path taken\")}var vu=\"<\";var po=\">\";var Cu=`\\r\n\t>/= `;function ii(n,e={}){var m,p;let t=(m=e.pos)!=null?m:0,r=e.keepComments===!0,i=e.keepWhitespace===!0,a;if(e.attrValue!==void 0)for(e.attrName=(p=e.attrName)!=null?p:\"id\",a=[];(t=l())!==-1;)t=n.lastIndexOf(\"<\",t),t!==-1&&a.push(f()),n=n.substring(t),t=0;else a=o(\"\");return e.filter&&(a=go(a,e.filter)),a;function o(g){let h=[];for(;n[t];)if(n.charCodeAt(t)===60){if(n.charCodeAt(t+1)===47){let y=t+2;if(t=n.indexOf(po,t),n.substring(y,t).indexOf(g)===-1){let P=n.substring(0,t).split(`\n`);throw new Error(`Unexpected close tag\nLine: `+(P.length-1)+`\nColumn: `+(P[P.length-1].length+1)+`\nChar: `+n[t])}return t!==-1&&(t+=1),h}else if(n.charCodeAt(t+1)===33){if(n.charCodeAt(t+2)===45){let y=t;for(;t!==-1&&!(n.charCodeAt(t)===62&&n.charCodeAt(t-1)===45&&n.charCodeAt(t-2)===45);)t=n.indexOf(po,t+1);t===-1&&(t=n.length),r&&h.push(n.substring(y,t+1))}else if(n.charCodeAt(t+2)===91&&n.charCodeAt(t+8)===91&&n.substring(t+3,t+8).toLowerCase()===\"cdata\"){let y=n.indexOf(\"]]>\",t);y===-1?(h.push(n.substring(t+9)),t=n.length):(h.push(n.substring(t+9,y)),t=y+3);continue}else{let y=t+1;t+=2;let T=!1;for(;(n.charCodeAt(t)!==62||T)&&n[t];)n.charCodeAt(t)===91?T=!0:T&&n.charCodeAt(t)===93&&(T=!1),t++;h.push(n.substring(y,t))}t++;continue}let I=f();h.push(I),I.tagName[0]===\"?\"&&(h.push(...I.children),I.children=[])}else{let I=s();if(i)I.length>0&&h.push(I);else{let y=I.trim();y.length>0&&h.push(y)}t++}return h}function s(){let g=t;return t=n.indexOf(vu,t)-1,t===-2&&(t=n.length),n.slice(g,t+1)}function u(){let g=t;for(;Cu.indexOf(n[t])===-1&&n[t];)t++;return n.slice(g,t)}function f(){let g=t;t++;let h=u(),I={},y=[];for(;n.charCodeAt(t)!==62&&n[t];){let T=n.charCodeAt(t);if(T>64&&T<91||T>96&&T<123){let P=u(),E=n.charCodeAt(t);for(;E&&E!==39&&E!==34&&!(E>64&&E<91||E>96&&E<123)&&E!==62;)t++,E=n.charCodeAt(t);let C;E===39||E===34?C=d():(C=null,t--),I[P]=C===null?null:ho(C)}t++}return n.charCodeAt(t-1)!==47?(t++,y=o(h)):t++,{tagName:h,attributes:I,children:y,posStart:g,posEnd:t}}function d(){let g=n[t],h=t+1;return t=n.indexOf(g,h),n.slice(h,t)}function l(){let g=new RegExp(\"\\\\s\"+e.attrName+`\\\\s*=['\"]`+e.attrValue+`['\"]`).exec(n);return g?g.index:-1}}function go(n,e,t=0,r=\"\"){let i=[];return n.forEach(function(a,o){if(typeof a==\"object\"&&(e(a,o,t,r)&&i.push(a),a.children.length>0)){let s=go(a.children,e,t+1,(r?r+\".\":\"\")+o+\".\"+a.tagName);i=i.concat(s)}}),i}function lr(n){if(Array.isArray(n)){let e=\"\";return n.forEach(function(t){e+=\" \"+lr(t),e=e.trim()}),e}else return typeof n==\"object\"?lr(n.children):\" \"+ho(n)}function ho(n){return n.indexOf(\"&\")<0?n:n.replace(/&lt;/g,\"<\").replace(/&gt;/g,\">\").replace(/&quot;/g,'\"').replace(/&apos;/g,\"'\").replace(/&#x([A-Fa-f0-9]+);/g,(e,t)=>String.fromCharCode(parseInt(t,16))).replace(/&amp;/g,\"&\")}function ai(n,e,t){let{repeatCount:r}=n;if(r>=0)return r;let i;return v(e)?t!==void 0?i=t:i=Number.MAX_VALUE:i=e.start,Math.ceil((i-n.start)/n.duration)-1}function Ne(n,e,t){let{start:r,duration:i}=n;if(i<=0)return r;let a=ai(n,e,t);return r+(a+1)*i}function Pe(n,e){var t;return n*e.timescale+((t=e.indexTimeOffset)!=null?t:0)}function Ye(n,e){var t;return(n-((t=e.indexTimeOffset)!=null?t:0))/e.timescale}function Io(n,e,t){return[n*t,(n+e)*t]}function Au(n,e){let t=0,r=n.length;for(;t<r;){let i=t+r>>>1;n[i].start<=e?t=i+1:r=i}return t-1}function bo(n,e,t){let{timeline:r}=n,i=Pe(e,n);if(i<0)return null;let a=Au(r,i);if(a<0||a>=r.length-1)return null;let o=r[a];if(o.duration<=0)return null;let s=r[a+1];if(s===void 0)return null;let u=s.start,f=Ne(o,s,t);return i>=f&&i<u?Ye(u,n):null}function Je(n,e){var i;let{initialization:t}=n,r={};return e!==void 0&&(r.isEMSGWhitelisted=e),{id:\"init\",isInit:!0,time:0,end:0,duration:0,timescale:1,range:v(t)?void 0:t.range,indexRange:n.indexRange,url:(i=t==null?void 0:t.url)!=null?i:null,complete:!0,privateInfos:r,timestampOffset:-(n.indexTimeOffset/n.timescale)}}function ku(n,e){let t=n.toString();return t.length>=e?t:(new Array(e+1).join(\"0\")+t).slice(-e)}function oi(n){return(e,t,r)=>{let i=J(r)?parseInt(r,10):1;return ku(String(n),i)}}function Be(n,e,t){return xu(n,e,t)}function xu(n,e,t){return n.indexOf(\"$\")===-1?n:n.replace(/\\$\\$/g,\"$\").replace(/\\$RepresentationID\\$/g,String(e)).replace(/\\$Bandwidth(\\%0(\\d+)d)?\\$/g,oi(t===void 0?0:t))}function fr(n,e){return function(r){return r.indexOf(\"$\")===-1?r:r.replace(/\\$\\$/g,\"$\").replace(/\\$Number(\\%0(\\d+)d)?\\$/g,(i,a,o)=>{if(e===void 0)throw new Error(\"Segment number not defined in a $Number$ scheme\");return oi(e)(i,a,o)}).replace(/\\$Time(\\%0(\\d+)d)?\\$/g,(i,a,o)=>{if(n===void 0)throw new Error(\"Segment time not defined in a $Time$ scheme\");return oi(n)(i,a,o)})}}function Mu(n,e,t){let r=t-n;return r>0?Math.floor(r/e):0}function rn(n,e,t,r,i,a){var T;let o=r.getEstimatedMaximumPosition((T=n.availabilityTimeOffset)!=null?T:0),s=Math.min(e+t,o!=null?o:1/0),u=Pe(e,n),f=Pe(s,n),{timeline:d,timescale:l,segmentUrlTemplate:m,startNumber:p,endNumber:g}=n,h=p!=null?p:1,I=[],y=d.length;for(let P=0;P<y;P++){let E=d[P],{duration:C,start:R,range:k}=E,_;o===void 0?_=i:_=Math.min(o*l,i!=null?i:1/0);let A=ai(E,d[P+1],_),x=n.availabilityTimeComplete!==!1||P!==y-1&&A!==0,M=Mu(R,C,u),N=R+M*C;for(;N<f&&M<=A;){let w=h+M;if(g!==void 0&&w>g)break;let O=m===null?null:fr(N,w)(m),B=N-n.indexTimeOffset,V=C;B<0&&(V=C+B,B=0);let q={id:String(N),time:B/l,end:(B+V)/l,duration:V/l,isInit:!1,range:k,timescale:1,url:O,number:w,timestampOffset:-(n.indexTimeOffset/l),complete:x,privateInfos:{isEMSGWhitelisted:a}};I.push(q),M++,N=R+M*C}if(N>=f||(h+=A+1,g!==void 0&&h>g))return I}return I}function Ou(n,e){if(e.timescale!==n.timescale){let{timescale:t}=n;n.timeline.push({start:e.time/e.timescale*t,duration:e.duration/e.timescale*t,repeatCount:e.count===void 0?0:e.count,range:e.range})}else n.timeline.push({start:e.time,duration:e.duration,repeatCount:e.count===void 0?0:e.count,range:e.range});return!0}var Tt=class{constructor(e,t){var g,h,I,y;let{periodStart:r,periodEnd:i,representationId:a,representationBitrate:o,isEMSGWhitelisted:s}=t,u=(g=e.timescale)!=null?g:1,d=((h=e.presentationTimeOffset)!=null?h:0)-r*u,l=((I=e.initialization)==null?void 0:I.media)===void 0?null:Be(e.initialization.media,a,o),m=e.media===void 0?null:Be(e.media,a,o),p;e.initialization!==void 0?p=e.initialization.range:e.indexRange!==void 0&&(p=[0,e.indexRange[0]-1]),this._index={indexRange:e.indexRange,indexTimeOffset:d,initialization:{url:l,range:p},segmentUrlTemplate:m,startNumber:e.startNumber,endNumber:e.endNumber,timeline:(y=e.timeline)!=null?y:[],timescale:u},this._manifestBoundsCalculator=t.manifestBoundsCalculator,this._scaledPeriodStart=Pe(r,this._index),this._scaledPeriodEnd=v(i)?void 0:Pe(i,this._index),this._isInitialized=this._index.timeline.length>0,this._isEMSGWhitelisted=s}getInitSegment(){return Je(this._index,this._isEMSGWhitelisted)}getSegments(e,t){return rn(this._index,e,t,this._manifestBoundsCalculator,this._scaledPeriodEnd,this._isEMSGWhitelisted)}shouldRefresh(){return!1}getFirstAvailablePosition(){let e=this._index;return e.timeline.length===0?null:Ye(Math.max(this._scaledPeriodStart,e.timeline[0].start),e)}getLastAvailablePosition(){var i;let{timeline:e}=this._index;if(e.length===0)return null;let t=e[e.length-1],r=Math.min(Ne(t,null,this._scaledPeriodEnd),(i=this._scaledPeriodEnd)!=null?i:1/0);return Ye(r,this._index)}getEnd(){return this.getLastAvailablePosition()}awaitSegmentBetween(){return!1}isSegmentStillAvailable(){return!0}checkDiscontinuity(){return null}canBeOutOfSyncError(){return!1}isStillAwaitingFutureSegments(){return!1}isInitialized(){return this._isInitialized}initialize(e){if(!this._isInitialized){for(let t=0;t<e.length;t++)Ou(this._index,e[t]);this._isInitialized=!0}}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `BaseRepresentationIndex`\")}_replace(e){this._index=e._index,this._isInitialized=e._isInitialized,this._scaledPeriodEnd=e._scaledPeriodEnd,this._isEMSGWhitelisted=e._isEMSGWhitelisted}_update(){c.error(\"Base RepresentationIndex: Cannot update a SegmentList\")}};var Et=class{constructor(e,t){var p,g,h;if(e.duration===void 0)throw new Error(\"Invalid SegmentList: no duration\");let{periodStart:r,periodEnd:i,representationId:a,representationBitrate:o,isEMSGWhitelisted:s}=t;this._isEMSGWhitelisted=s,this._periodStart=r,this._periodEnd=i;let u=(p=e.presentationTimeOffset)!=null?p:0,f=(g=e.timescale)!=null?g:1,d=u-r*f,l=((h=e.initialization)==null?void 0:h.media)===void 0?null:Be(e.initialization.media,a,o),m=e.list.map(I=>({url:I.media===void 0?null:Be(I.media,a,o),mediaRange:I.mediaRange}));this._index={list:m,timescale:f,duration:e.duration,indexTimeOffset:d,indexRange:e.indexRange,initialization:v(e.initialization)?void 0:{url:l,range:e.initialization.range}}}getInitSegment(){let e=Je(this._index);return e.privateInfos===void 0&&(e.privateInfos={}),e.privateInfos.isEMSGWhitelisted=this._isEMSGWhitelisted,e}getSegments(e,t){let r=this._index,{duration:i,list:a,timescale:o}=r,s=i/o,u=e-this._periodStart,[f,d]=Io(u,t,o),l=Math.min(a.length-1,Math.floor(d/i)),m=[],p=Math.floor(f/i);for(;p<=l;){let g=a[p].mediaRange,h=a[p].url,I=p*s+this._periodStart,y={id:String(p),time:I,isInit:!1,range:g,duration:s,timescale:1,end:I+s,url:h,timestampOffset:-(r.indexTimeOffset/o),complete:!0,privateInfos:{isEMSGWhitelisted:this._isEMSGWhitelisted}};m.push(y),p++}return m}shouldRefresh(e,t){return!1}getFirstAvailablePosition(){return this._periodStart}getLastAvailablePosition(){var i;let e=this._index,{duration:t,list:r}=e;return Math.min(r.length*t/e.timescale+this._periodStart,(i=this._periodEnd)!=null?i:1/0)}getEnd(){return this.getLastAvailablePosition()}awaitSegmentBetween(){return!1}isSegmentStillAvailable(){return!0}checkDiscontinuity(){return null}canBeOutOfSyncError(){return!1}isStillAwaitingFutureSegments(){return!1}isInitialized(){return!0}initialize(){c.error(\"A `ListRepresentationIndex` does not need to be initialized\")}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `ListRepresentationIndex`\")}_replace(e){this._index=e._index}_update(){c.error(\"A `ListRepresentationIndex` cannot be updated\")}};function Bt(n){return U.getCurrent().DEFAULT_MAXIMUM_TIME_ROUNDING_ERROR*n}var Rt=class{constructor(e,t){var y,T,P;let{availabilityTimeOffset:r,manifestBoundsCalculator:i,isDynamic:a,periodEnd:o,periodStart:s,representationId:u,representationBitrate:f,isEMSGWhitelisted:d}=t,l=(y=e.timescale)!=null?y:1;this._availabilityTimeOffset=r,this._manifestBoundsCalculator=i;let m=(T=e.presentationTimeOffset)!=null?T:0,p=s*l,g=m-p;if(e.duration===void 0)throw new Error(\"Invalid SegmentTemplate: no duration\");let h=((P=e.initialization)==null?void 0:P.media)===void 0?null:Be(e.initialization.media,u,f),I=e.media===void 0?null:Be(e.media,u,f);this._index={duration:e.duration,timescale:l,indexRange:e.indexRange,indexTimeOffset:g,initialization:v(e.initialization)?void 0:{url:h,range:e.initialization.range},url:I,presentationTimeOffset:m,startNumber:e.startNumber,endNumber:e.endNumber},this._isDynamic=a,this._periodStart=s,this._scaledRelativePeriodEnd=o===void 0?void 0:(o-s)*l,this._isEMSGWhitelisted=d}getInitSegment(){return Je(this._index,this._isEMSGWhitelisted)}getSegments(e,t){let r=this._index,{duration:i,startNumber:a,endNumber:o,timescale:s,url:u}=r,f=this._periodStart*s,d=this._scaledRelativePeriodEnd,l=e*s-f,m=(e+t)*s-f,p=this._getFirstSegmentStart(),g=this._getLastSegmentStart();if(v(p)||v(g))return[];let h=Math.max(p,l),I=Math.min(g,m);if(I+i<=h)return[];let y=[],T=a!=null?a:1,P=Math.floor(h/i);for(let E=P*i;E<=I;E+=i){let C=P+T;if(o!==void 0&&C>o)return y;let R=!v(d)&&E+i>d?d-E:i,k=E+f,_=E+this._index.presentationTimeOffset,A=u===null?null:fr(_,C)(u),x={id:String(C),number:C,time:k/s,end:(k+R)/s,duration:R/s,timescale:1,isInit:!1,scaledDuration:R/s,url:A,timestampOffset:-(r.indexTimeOffset/s),complete:!0,privateInfos:{isEMSGWhitelisted:this._isEMSGWhitelisted}};y.push(x),P++}return y}getFirstAvailablePosition(){let e=this._getFirstSegmentStart();return v(e)?e:e/this._index.timescale+this._periodStart}getLastAvailablePosition(){let e=this._getLastSegmentStart();if(v(e))return e;let t=this._estimateRelativeScaledEnd();return Math.min(e+this._index.duration,t!=null?t:1/0)/this._index.timescale+this._periodStart}getEnd(){if(!this._isDynamic)return this.getLastAvailablePosition();let e=this._estimateRelativeScaledEnd();if(e===void 0)return;let{timescale:t}=this._index;return(e+this._periodStart*t)/t}awaitSegmentBetween(e,t){if(Ie(e<=t),!this._isDynamic)return!1;let{timescale:r}=this._index,i=Bt(r),a=this._periodStart*r,o=e*r-a,s=t*r-a,u=this._getLastSegmentStart();if(v(u)){let l=this._estimateRelativeScaledEnd();return l===void 0?s+i>=0:s+i>=0&&o<l-i}let f=u+this._index.duration,d=this._estimateRelativeScaledEnd();return d===void 0?s>f-i:s>f-i&&o<d-i}shouldRefresh(){return!1}checkDiscontinuity(){return null}isSegmentStillAvailable(e){if(e.isInit)return!0;let t=this.getSegments(e.time,.1);return t.length===0?!1:t[0].time===e.time&&t[0].end===e.end&&t[0].number===e.number}canBeOutOfSyncError(){return!1}isStillAwaitingFutureSegments(){if(!this._isDynamic)return!1;let e=this._estimateRelativeScaledEnd();if(e===void 0)return!0;let{timescale:t}=this._index,r=this._getLastSegmentStart();if(v(r))return!0;let i=r+this._index.duration,a=Bt(t);return i+a<e}isInitialized(){return!0}initialize(){c.error(\"A `TemplateRepresentationIndex` does not need to be initialized\")}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `TemplateRepresentationIndex`\")}_replace(e){this._index=e._index,this._isDynamic=e._isDynamic,this._periodStart=e._periodStart,this._scaledRelativePeriodEnd=e._scaledRelativePeriodEnd,this._manifestBoundsCalculator=e._manifestBoundsCalculator}_update(e){this._replace(e)}_getFirstSegmentStart(){var o;if(!this._isDynamic)return 0;if(this._scaledRelativePeriodEnd===0||this._scaledRelativePeriodEnd===void 0){let s=this._manifestBoundsCalculator.getEstimatedMaximumPosition((o=this._availabilityTimeOffset)!=null?o:0);if(s!==void 0&&s<this._periodStart)return null}let{duration:e,timescale:t}=this._index,r=this._manifestBoundsCalculator.getEstimatedMinimumSegmentTime();if(r===void 0)return;let i=r>this._periodStart?(r-this._periodStart)*t:0;return Math.floor(i/e)*e}_getLastSegmentStart(){var a,o;let{duration:e,timescale:t,endNumber:r,startNumber:i=1}=this._index;if(this._isDynamic){let s=this._manifestBoundsCalculator.getEstimatedLiveEdge();if(s!==void 0&&this._scaledRelativePeriodEnd!==void 0&&this._scaledRelativePeriodEnd<s-this._periodStart*this._index.timescale){let l=Math.ceil(this._scaledRelativePeriodEnd/e);return r!==void 0&&r-i+1<l&&(l=r-i+1),(l-1)*e}let u=this._manifestBoundsCalculator.getEstimatedMaximumPosition((a=this._availabilityTimeOffset)!=null?a:0);if(u===void 0)return;let f=(u-this._periodStart)*t;if(f<0)return null;let d=Math.floor(f/e);return r!==void 0&&r-i+1<d&&(d=r-i+1),d<=0?null:(d-1)*e}else{let s=(o=this._scaledRelativePeriodEnd)!=null?o:0,u=Math.ceil(s/e);r!==void 0&&r-i+1<u&&(u=r-i+1);let f=(u-1)*e,d=U.getCurrent().MINIMUM_SEGMENT_SIZE*t;return r!==void 0||s-f>d||u<2?f:(u-2)*e}}_estimateRelativeScaledEnd(){var e,t;if(this._index.endNumber!==void 0){let r=this._index.endNumber-((e=this._index.startNumber)!=null?e:1)+1;return Math.max(Math.min(r*this._index.duration,(t=this._scaledRelativePeriodEnd)!=null?t:1/0),0)}if(this._scaledRelativePeriodEnd!==void 0)return Math.max(this._scaledRelativePeriodEnd,0)}};function si(n,e){let t=0;for(;n.length>0;){let r=n[0];if(r.start>=e||r.repeatCount===-1)return t;if(r.repeatCount===0)n.shift(),t+=1;else{let i=n[1];if(i!==void 0&&i.start<=e)n.shift(),t+=1;else{if(r.duration<=0)return t;let a=r.start+r.duration,o=1;for(;a<e&&o<=r.repeatCount;)a+=r.duration,o++;if(o>r.repeatCount)n.shift(),t=r.repeatCount+1;else{let s=r.repeatCount-o;return r.start=a,r.repeatCount=s,t+=o,t}}}}return t}function ui(n,e){if(n.length===0)return n.push(...e),!0;if(e.length===0)return!1;let t=n.length,r=e[0].start,i=n[t-1];if(Ne(i,e[0])<r)throw new Q(\"MANIFEST_UPDATE_ERROR\",\"Cannot perform partial update: not enough data\");for(let d=t-1;d>=0;d--){let l=n[d].start;if(l===r){let m=t-d;return n.splice(d,m,...e),!1}else if(l<r){let m=n[d];if(m.start+m.duration>r)return c.warn(\"RepresentationIndex: Manifest update removed all previous segments\"),n.splice(0,t,...e),!0;if(m.repeatCount===void 0||m.repeatCount<=0)return m.repeatCount<0&&(m.repeatCount=Math.floor((r-m.start)/m.duration)-1),n.splice(d+1,t-(d+1),...e),!1;if(m.start+m.duration*(m.repeatCount+1)<=r)return n.splice(d+1,t-(d+1),...e),!1;let g=(r-m.start)/m.duration-1;if(g%1===0&&m.duration===e[0].duration){let h=e[0].repeatCount<0?-1:e[0].repeatCount+g+1;return n.splice(d,t-d,...e),n[d].start=m.start,n[d].repeatCount=h,!1}return c.warn(\"RepresentationIndex: Manifest update removed previous segments\"),n[d].repeatCount=Math.floor(g),n.splice(d+1,t-(d+1),...e),!1}}let o=n[n.length-1],s=e[e.length-1];if(o.repeatCount!==void 0&&o.repeatCount<0)return o.start>s.start?(c.warn(\"RepresentationIndex: The new index is older than the previous one\"),!1):(c.warn('RepresentationIndex: The new index is \"bigger\" than the previous one'),n.splice(0,t,...e),!0);let u=o.start+o.duration*(o.repeatCount+1),f=s.start+s.duration*(s.repeatCount+1);return u>=f?(c.warn(\"RepresentationIndex: The new index is older than the previous one\"),!1):(c.warn('RepresentationIndex: The new index is \"bigger\" than the previous one'),n.splice(0,t,...e),!0)}function an(n,e,t){let r=n.start,i=n.duration,a=n.repeatCount;return r===void 0&&(e===null?r=0:v(e.duration)||(r=e.start+e.duration*(e.repeatCount+1))),(i===void 0||isNaN(i))&&t!==null&&t.start!==void 0&&!isNaN(t.start)&&r!==void 0&&!isNaN(r)&&(i=t.start-r),r!==void 0&&!isNaN(r)&&i!==void 0&&!isNaN(i)&&(a===void 0||!isNaN(a))?{start:r,duration:i,repeatCount:a===void 0?0:a}:(c.warn('DASH: A \"S\" Element could not have been parsed.'),null)}function on(n){let e={};for(let t of Object.keys(n.attributes)){let r=n.attributes[t];if(!v(r))switch(t){case\"t\":let i=parseInt(r,10);isNaN(i)?c.warn(`DASH: invalid t (\"${r}\")`):e.start=i;break;case\"d\":let a=parseInt(r,10);isNaN(a)?c.warn(`DASH: invalid d (\"${r}\")`):e.duration=a;break;case\"r\":let o=parseInt(r,10);isNaN(o)?c.warn(`DASH: invalid r (\"${r}\")`):e.repeatCount=o;break}}return e}function sn(n){let e={};for(let t=0;t<n.attributes.length;t++){let r=n.attributes[t];switch(r.name){case\"t\":let i=parseInt(r.value,10);isNaN(i)?c.warn(`DASH: invalid t (\"${r.value}\")`):e.start=i;break;case\"d\":let a=parseInt(r.value,10);isNaN(a)?c.warn(`DASH: invalid d (\"${r.value}\")`):e.duration=a;break;case\"r\":let o=parseInt(r.value,10);isNaN(o)?c.warn(`DASH: invalid r (\"${r.value}\")`):e.repeatCount=o;break}}return e}function mt(n){let e=[];if(Array.isArray(n))for(let r=0;r<n.length;r++)e.push(on(n[r]));else for(let r=0;r<n.length;r++)e.push(sn(n[r]));let t=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[t.length-1]===void 0?null:t[t.length-1],o=e[r+1]===void 0?null:e[r+1],s=an(i,a,o);s!==null&&t.push(s)}return t}function di(n,e){if(n.length===0||e.length===0)return null;let t=n[0].start,r=Array.isArray(e)?e[0].attributes.t:e[0].getAttribute(\"t\"),i=v(r)?null:parseInt(r,10);if(i===null||Number.isNaN(i))return null;if(t===i)return{prevSegmentsIdx:0,newElementsIdx:0,repeatNumberInPrevSegments:0,repeatNumberInNewElements:0};if(t<i){let a=n[0],o=0;for(;;){if(a.repeatCount>0){let s=i-a.start;if(s%a.duration===0&&s/a.duration<=a.repeatCount)return{repeatNumberInPrevSegments:s/a.duration,prevSegmentsIdx:o,newElementsIdx:0,repeatNumberInNewElements:0}}if(o++,o>=n.length)return null;if(a=n[o],a.start===i)return{prevSegmentsIdx:o,newElementsIdx:0,repeatNumberInPrevSegments:0,repeatNumberInNewElements:0};if(a.start>i)return null}}else{let a=0,o=Array.isArray(e)?e[0]:null,s=Array.isArray(e)?null:e[0],u=i;for(;;){let f=o!==null?o.attributes.d:s==null?void 0:s.getAttribute(\"d\"),d=v(f)?null:parseInt(f,10);if(d===null||Number.isNaN(d))return null;let l=o!==null?o.attributes.r:s==null?void 0:s.getAttribute(\"r\"),m=v(l)?null:parseInt(l,10);if(m!==null){if(Number.isNaN(m)||m<0)return null;if(m>0){let h=t-u;if(h%d===0&&h/d<=m)return{repeatNumberInPrevSegments:0,repeatNumberInNewElements:h/d,prevSegmentsIdx:0,newElementsIdx:a}}u+=d*(m+1)}else u+=d;if(a++,a>=e.length)return null;Array.isArray(e)?o=e[a]:s=e[a];let p=o!==null?o.attributes.t:s==null?void 0:s.getAttribute(\"t\"),g=v(p)?null:parseInt(p,10);if(g!==null){if(Number.isNaN(g))return null;u=g}if(u===t)return{newElementsIdx:a,prevSegmentsIdx:0,repeatNumberInPrevSegments:0,repeatNumberInNewElements:0};if(u>i)return null}}}function li(n,e){var h;let t=di(e,n);if(t===null)return c.warn('DASH: Cannot perform \"based\" update. Common segment not found.'),mt(n);let{prevSegmentsIdx:r,newElementsIdx:i,repeatNumberInPrevSegments:a,repeatNumberInNewElements:o}=t,u=e.length-r+i-1;if(u>=n.length)return c.info('DASH: Cannot perform \"based\" update. New timeline too short'),mt(n);let f=e.slice(r);if(a>0){let I=f[0];I.start+=I.duration*a,f[0].repeatCount-=a}if(o>0&&i!==0)return c.info('DASH: Cannot perform \"based\" update. The new timeline has a different form.'),mt(n);let d=f[f.length-1],l=Array.isArray(n)?on(n[u]):sn(n[u]),m=((h=l.repeatCount)!=null?h:0)-o;if(l.duration!==d.duration||d.repeatCount>m)return c.info('DASH: Cannot perform \"based\" update. The new timeline has a different form at the beginning.'),mt(n);l.repeatCount!==void 0&&l.repeatCount>d.repeatCount&&(d.repeatCount=l.repeatCount);let p=[],g=[];if(Array.isArray(n))for(let I=u+1;I<n.length;I++)g.push(on(n[I]));else for(let I=u+1;I<n.length;I++)g.push(sn(n[I]));for(let I=0;I<g.length;I++){let y=g[I],T=p[p.length-1]===void 0?d:p[p.length-1],P=g[I+1]===void 0?null:g[I+1],E=an(y,T,P);E!==null&&p.push(E)}return f.concat(p)}var un=class n{constructor(e,t){var E,C,R,k,_;if(!n.isTimelineIndexArgument(e))throw new Error(\"The given index is not compatible with a TimelineRepresentationIndex.\");let{availabilityTimeComplete:r,availabilityTimeOffset:i,manifestBoundsCalculator:a,isDynamic:o,isLastPeriod:s,representationId:u,representationBitrate:f,periodStart:d,periodEnd:l,isEMSGWhitelisted:m}=t,p=(E=e.timescale)!=null?E:1,g=(C=e.presentationTimeOffset)!=null?C:0,h=d*p,I=g-h;this._manifestBoundsCalculator=a,this._isEMSGWhitelisted=m,this._isLastPeriod=s,this._lastUpdate=(R=t.receivedTime)!=null?R:L(),this._unsafelyBaseOnPreviousIndex=null,t.unsafelyBaseOnPreviousRepresentation!==null&&t.unsafelyBaseOnPreviousRepresentation.index instanceof n&&(t.unsafelyBaseOnPreviousRepresentation.index._unsafelyBaseOnPreviousIndex=null,this._unsafelyBaseOnPreviousIndex=t.unsafelyBaseOnPreviousRepresentation.index),this._isDynamic=o,this._parseTimeline=(k=e.timelineParser)!=null?k:null;let y=((_=e.initialization)==null?void 0:_.media)===void 0?null:Be(e.initialization.media,u,f),T=e.media===void 0?null:Be(e.media,u,f),P;i===void 0&&r===void 0?P=1/0:P=i!=null?i:0,this._index={availabilityTimeComplete:r!=null?r:!0,availabilityTimeOffset:P,indexRange:e.indexRange,indexTimeOffset:I,initialization:v(e.initialization)?void 0:{url:y,range:e.initialization.range},segmentUrlTemplate:T,startNumber:e.startNumber,endNumber:e.endNumber,timeline:e.timeline===void 0?null:fi(e.timeline,e.startNumber,e.endNumber),timescale:p},this._scaledPeriodStart=Pe(d,this._index),this._scaledPeriodEnd=l===void 0?void 0:Pe(l,this._index)}getInitSegment(){return Je(this._index,this._isEMSGWhitelisted)}getSegments(e,t){return this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline()),rn(this._index,e,t,this._manifestBoundsCalculator,this._scaledPeriodEnd,this._isEMSGWhitelisted)}shouldRefresh(){return!1}getFirstAvailablePosition(){this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let e=this._index.timeline;return e.length===0?null:Ye(Math.max(this._scaledPeriodStart,e[0].start),this._index)}getLastAvailablePosition(){var r;this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let e=mr(this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd);if(e===null)return null;let t=Math.min(e.end,(r=this._scaledPeriodEnd)!=null?r:1/0);return Ye(t,this._index)}getEnd(){var r;if(this._isDynamic&&!this._isLastPeriod)return;if(this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline()),this._index.timeline.length<=0)return null;let e=this._index.timeline[this._index.timeline.length-1],t=Math.min(Ne(e,null,this._scaledPeriodEnd),(r=this._scaledPeriodEnd)!=null?r:1/0);return Ye(t,this._index)}awaitSegmentBetween(e,t){var f,d;if(Ie(e<=t),!this._isDynamic)return!1;this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let{timescale:r,timeline:i}=this._index,a=Bt(r),o=Pe(t,this._index),s=mr(this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd);if(s!==null&&Math.min(s.end,(f=this._scaledPeriodEnd)!=null?f:1/0)+a>=Math.min(o,(d=this._scaledPeriodEnd)!=null?d:1/0))return!1;let u=Pe(e,this._index);if(i.length>0&&s!==null&&!s.isLastOfTimeline){let l=i[i.length-1],p=Ne(l,null,this._scaledPeriodEnd)+a;if(u<p+a)return!0}return this._isLastPeriod?this._scaledPeriodEnd===void 0?o+a>this._scaledPeriodStart?void 0:!1:u-a<this._scaledPeriodEnd&&o+a>this._scaledPeriodStart:!1}isSegmentStillAvailable(e){return e.isInit?!0:(this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline()),wu(e,this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd))}checkDiscontinuity(e){this._refreshTimeline();let t=this._index.timeline;return t===null&&(t=this._getTimeline(),this._index.timeline=t),bo({timeline:t,timescale:this._index.timescale,indexTimeOffset:this._index.indexTimeOffset},e,this._scaledPeriodEnd)}canBeOutOfSyncError(e){return this._isDynamic?e instanceof je&&e.isHttpError(404):!1}_replace(e){this._parseTimeline=e._parseTimeline,this._index=e._index,this._isDynamic=e._isDynamic,this._scaledPeriodStart=e._scaledPeriodStart,this._scaledPeriodEnd=e._scaledPeriodEnd,this._lastUpdate=e._lastUpdate,this._manifestBoundsCalculator=e._manifestBoundsCalculator,this._isLastPeriod=e._isLastPeriod}_update(e){this._index.timeline===null&&(this._index.timeline=this._getTimeline()),e._index.timeline===null&&(e._index.timeline=e._getTimeline()),ui(this._index.timeline,e._index.timeline)&&(this._index.startNumber=e._index.startNumber),this._index.availabilityTimeOffset=e._index.availabilityTimeOffset,this._index.availabilityTimeComplete=e._index.availabilityTimeComplete,this._index.endNumber=e._index.endNumber,this._isDynamic=e._isDynamic,this._scaledPeriodStart=e._scaledPeriodStart,this._scaledPeriodEnd=e._scaledPeriodEnd,this._lastUpdate=e._lastUpdate,this._isLastPeriod=e._isLastPeriod}isStillAwaitingFutureSegments(){var o;if(!this._isDynamic)return!1;this._refreshTimeline(),this._index.timeline===null&&(this._index.timeline=this._getTimeline());let{timeline:e}=this._index;if(e.length===0){if(this._scaledPeriodEnd!==void 0){let s=this._manifestBoundsCalculator.getEstimatedLiveEdge();if(s!==void 0&&Pe(s,this._index)>this._scaledPeriodEnd)return!1}return this._isLastPeriod}let t=Bt(this._index.timescale),r=mr(this._index,this._manifestBoundsCalculator,this._scaledPeriodEnd);if(r!==null&&!r.isLastOfTimeline){let s=Math.min(r.end,(o=this._scaledPeriodEnd)!=null?o:1/0);return!(this._scaledPeriodEnd!==void 0&&s+t>=this._scaledPeriodEnd)}if(!this._isLastPeriod)return!1;if(this._scaledPeriodEnd===void 0)return!0;let i=e[e.length-1];return Ne(i,null,this._scaledPeriodEnd)+t<this._scaledPeriodEnd}isInitialized(){return!0}initialize(){c.error(\"A `TimelineRepresentationIndex` does not need to be initialized\")}addPredictedSegments(){c.warn(\"Cannot add predicted segments to a `TimelineRepresentationIndex`\")}static isTimelineIndexArgument(e){return typeof e.timelineParser==\"function\"||Array.isArray(e.timeline)}_refreshTimeline(){if(this._index.timeline===null&&(this._index.timeline=this._getTimeline()),!this._isDynamic)return;let e=this._manifestBoundsCalculator.getEstimatedMinimumSegmentTime();if(v(e))return;let t=Pe(e,this._index),r=si(this._index.timeline,t);this._index.startNumber!==void 0?this._index.startNumber+=r:this._index.endNumber!==void 0&&(this._index.startNumber=r+1)}_getTimeline(){if(this._parseTimeline===null)return this._index.timeline!==null?this._index.timeline:(c.error(\"DASH: Timeline already lazily parsed.\"),[]);let e=this._parseTimeline();this._parseTimeline=null;let{MIN_DASH_S_ELEMENTS_TO_PARSE_UNSAFELY:t}=U.getCurrent();if(this._unsafelyBaseOnPreviousIndex===null||e.length<t)return fi(mt(e),this._index.startNumber,this._index.endNumber);let r;return this._unsafelyBaseOnPreviousIndex._index.timeline===null?(r=this._unsafelyBaseOnPreviousIndex._getTimeline(),this._unsafelyBaseOnPreviousIndex._index.timeline=r):r=this._unsafelyBaseOnPreviousIndex._index.timeline,this._unsafelyBaseOnPreviousIndex=null,fi(li(e,r),this._index.startNumber,this._index.endNumber)}};function fi(n,e,t){if(t===void 0)return n;let r=e!=null?e:1;for(let i=0;i<n.length;i++){let a=n[i];if(r+=a.repeatCount+1,r>t){if(r===t+1)return n.slice(0,i+1);{let o=n.slice(0,i),s=ge({},a),u=r-a.repeatCount-1;return s.repeatCount=Math.max(0,t-u),o.push(s),o}}}return n}function wu(n,e,t,r){let i=mr(e,t,r);if(i===null)return!1;for(let a=0;a<e.timeline.length;a++){if(i.timelineIdx<a)return!1;let o=e.timeline[a],s=(o.start-e.indexTimeOffset)/e.timescale;if(s>n.time)return!1;if(s===n.time)return o.range===void 0?n.range===void 0:!v(n.range)&&o.range[0]===n.range[0]&&o.range[1]===n.range[1];if(o.repeatCount>=0&&o.duration!==void 0){let f=(s-o.start)/o.duration-1;return f%1===0&&f<=i.newRepeatCount}}return!1}function mr(n,e,t){if(n.timeline.length<=0)return null;if(n.availabilityTimeOffset===1/0){let i=n.timeline.length-1,a=n.timeline[i];return{isLastOfTimeline:!0,timelineIdx:i,newRepeatCount:a.repeatCount,end:Ne(a,null,t)}}let r=e.getEstimatedMaximumPosition(n.availabilityTimeOffset);if(r===void 0){let i=n.timeline.length-1,a=n.timeline[i];return{isLastOfTimeline:!0,timelineIdx:i,newRepeatCount:a.repeatCount,end:Ne(a,null,t)}}for(let i=n.timeline.length-1;i>=n.timeline.length;i--){let a=n.timeline[i],o=a.start+a.duration;if(Ye(o,n)<=r){let s=Ne(a,n.timeline[i+1],t);if(Ye(s,n)<=r)return{isLastOfTimeline:i===n.timeline.length-1,timelineIdx:i,newRepeatCount:a.repeatCount,end:o};{let f=Pe(r,n)-a.start,d=Math.floor(f/a.duration);return Ie(d>=1),{isLastOfTimeline:!1,timelineIdx:i,newRepeatCount:d-1,end:a.start+d*a.duration}}}}return null}var cr=un;function Ue(n,e,t){if(typeof String.prototype.startsWith==\"function\")return n.startsWith(e,t);let r=typeof t==\"number\"?Math.max(t,0):0;return n.substring(r,r+e.length)===e}var Du=/^(?:[a-z]+:)?\\/\\//i,Nu=/^(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?([^#]*))?(?:#(.*))?$/;function pi(n){let e=n.lastIndexOf(\"/\");if(e<0)return n.length;if(Du.test(n)){let r=n.indexOf(\"/\");if(r>=0&&e===r+1)return n.length}let t=n.indexOf(\"?\");return t>=0&&t<e?pi(n.substring(0,t)):e+1}function Bu(n,e){let t=So(n),r=So(e);if(r.scheme)return mi(r);let i={scheme:t.scheme,authority:t.authority,path:\"\",query:r.query,fragment:r.fragment};return r.authority?(i.authority=r.authority,i.path=ci(r.path),mi(i)):(r.path===\"\"?(i.path=t.path,r.query||(i.query=t.query)):Ue(r.path,\"/\")?i.path=ci(r.path):i.path=ci(Lu(t,r.path)),mi(i))}var dn=new Map,Uu=200;function So(n){var r,i,a,o,s;if(dn.has(n))return dn.get(n);let e=n.match(Nu),t;return e===null?t={scheme:\"\",authority:\"\",path:\"\",query:\"\",fragment:\"\"}:t={scheme:(r=e[1])!=null?r:\"\",authority:(i=e[2])!=null?i:\"\",path:(a=e[3])!=null?a:\"\",query:(o=e[4])!=null?o:\"\",fragment:(s=e[5])!=null?s:\"\"},dn.size>=Uu&&dn.clear(),dn.set(n,t),t}function mi(n){let e=\"\";return n.scheme&&(e+=n.scheme+\":\"),n.authority&&(e+=\"//\"+n.authority),e+=n.path,n.query&&(e+=\"?\"+n.query),n.fragment&&(e+=\"#\"+n.fragment),e}function ci(n){let e=n.split(/(?=\\/)/),t=[];for(let r=0;r<e.length;r++){let i=e[r];if(!(i===\"..\"||i===\".\"||i===\"\")){if(i===\"/..\"){t.pop(),r===e.length-1&&t.push(\"/\");continue}if(i===\"/.\"){r===e.length-1&&t.push(\"/\");continue}t.push(i)}}return t.join(\"\")}function Lu(n,e){if(n.authority&&n.path===\"\")return\"/\"+e;let t=n.path;return t.substring(0,t.lastIndexOf(\"/\")+1)+e}function yo(...n){var r,i,a;let e=n.filter(o=>o!==\"\"),t=e.length;if(t===0)return\"\";if(t===1)return(r=e[0])!=null?r:\"\";{let o=(i=e[0])!=null?i:\"\",s=(a=e[1])!=null?a:\"\",u=Bu(o,s),f=e.slice(2);return yo(u,...f)}}var pr=yo;var ln=class{constructor(){this._refs=new Map,this._stored=[]}addReferences(e){for(let t of e)t.attributes.refId!==void 0&&this._refs.set(t.attributes.refId,t)}add(e,t){this._tryParsing(e,t,!1)||this._stored.push([e,t]),t.attributes.refId!==void 0&&(this._refs.set(t.attributes.refId,t),this._resolveStoredRefs(!1))}finalize(){this._resolveStoredRefs(!0)}_resolveStoredRefs(e){for(let t=this._stored.length-1;t>=0;t--){let[r,i]=this._stored[t];(this._tryParsing(r,i,e)||e)&&this._stored.splice(t,1)}return this._stored.length===0}_tryParsing(e,t,r){if(t.attributes.ref===void 0)return gi(e,t),!0;let i=this._getReferenced(t.attributes.ref);return i===void 0?(r&&(c.warn(\"DASH: forcing the parsing of a referencing ContentProtection\"),gi(e,t)),!1):(t.children.cencPssh.push(...i.children.cencPssh),t.attributes.keyId===void 0&&i.attributes.keyId!==void 0&&(t.attributes.keyId=i.attributes.keyId),t.attributes.schemeIdUri===void 0&&i.attributes.schemeIdUri!==void 0&&(t.attributes.schemeIdUri=i.attributes.schemeIdUri),t.attributes.value===void 0&&i.attributes.value!==void 0&&(t.attributes.value=i.attributes.value),gi(e,t),!0)}_getReferenced(e){return this._refs.get(e)}};function gi(n,e){let t;if(e.attributes.schemeIdUri!==void 0&&e.attributes.schemeIdUri.substring(0,9)===\"urn:uuid:\"&&(t=e.attributes.schemeIdUri.substring(9).replace(/-/g,\"\").toLowerCase()),e.attributes.keyId!==void 0&&e.attributes.keyId.length>0){let o={keyId:e.attributes.keyId,systemId:t};n.contentProtections===void 0?n.contentProtections={keyIds:[o],initData:[]}:n.contentProtections.keyIds===void 0?n.contentProtections.keyIds=[o]:n.contentProtections.keyIds.push(o)}if(t===void 0)return;let{cencPssh:r}=e.children,i=[];for(let o of r)i.push({systemId:t,data:o});if(i.length===0)return;if(n.contentProtections===void 0){n.contentProtections={keyIds:[],initData:[{type:\"cenc\",values:i}]};return}let a=K(n.contentProtections.initData,o=>o.type===\"cenc\");a===void 0?n.contentProtections.initData.push({type:\"cenc\",values:i}):a.values.push(...i)}function gr(n){let e=Date.parse(n)-L();if(isNaN(e)){c.warn(\"DASH Parser: Invalid clock received: \",n);return}return e}function hi(n){let e=n.children.utcTimings.filter(t=>(t.schemeIdUri===\"urn:mpeg:dash:utc:http-iso:2014\"||t.schemeIdUri===\"urn:mpeg:dash:utc:http-xsdate:2014\")&&t.value!==void 0);return e.length>0?e[0].value:void 0}function hr(n){let{representations:e}=n,t=null;for(let r=0;r<e.length;r++){let i=e[r].index.getLastAvailablePosition();if(i===void 0)return;i!==null&&(t=t===null?i:Math.min(t,i))}return t===null?null:t}function Ii(n){for(let e=n.length-1;e>=0;e--){let t=n[e].adaptations,r=t.audio===void 0?void 0:t.audio[0],i=t.video===void 0?void 0:t.video[0];if(r!==void 0||i!==void 0){let a=null,o=null;if(r!==void 0){let s=hr(r);if(s===void 0)return{safe:void 0,unsafe:void 0};a=s}if(i!==void 0){let s=hr(i);if(s===void 0)return{safe:void 0,unsafe:void 0};o=s}if(r!==void 0&&a===null||i!==void 0&&o===null)return c.info(\"Parser utils: found Period with no segment. \",\"Going to previous one to calculate last position\"),{safe:void 0,unsafe:void 0};if(o!==null)return a!==null?{safe:Math.min(a,o),unsafe:Math.max(a,o)}:{safe:o,unsafe:o};if(a!==null)return{safe:a,unsafe:a}}}return{safe:void 0,unsafe:void 0}}function Ir(n){let{representations:e}=n,t=null;for(let r=0;r<e.length;r++){let i=e[r].index.getFirstAvailablePosition();if(i===void 0)return;i!==null&&(t=t===null?i:Math.max(t,i))}return t===null?null:t}function bi(n){for(let e=0;e<=n.length-1;e++){let t=n[e].adaptations,r=t.audio===void 0?void 0:t.audio[0],i=t.video===void 0?void 0:t.video[0];if(r!==void 0||i!==void 0){let a=null,o=null;if(r!==void 0){let s=Ir(r);if(s===void 0)return;a=s}if(i!==void 0){let s=Ir(i);if(s===void 0)return;o=s}if(r!==void 0&&a===null||i!==void 0&&o===null){c.info(\"Parser utils: found Period with no segment. \",\"Going to next one to calculate first position\");return}if(o!==null)return a!==null?Math.max(a,o):o;if(a!==null)return a}}}function Si(n){if(n.length===0)throw new Error(\"DASH Parser: no period available for a dynamic content\");let e=bi(n),t=Ii(n);return{minimumSafePosition:e,maximumSafePosition:t.safe,maximumUnsafePosition:t.unsafe}}var fn=class{constructor(e){this._isDynamic=e.isDynamic,this._timeShiftBufferDepth=!e.isDynamic||e.timeShiftBufferDepth===void 0?null:e.timeShiftBufferDepth,this._serverTimestampOffset=e.serverTimestampOffset,this._availabilityStartTime=e.availabilityStartTime}setLastPosition(e,t){this._lastPosition=e,this._positionTime=t}lastPositionIsKnown(){return this._isDynamic?this._positionTime!==void 0&&this._lastPosition!==void 0:this._lastPosition!==void 0}getEstimatedMinimumSegmentTime(){var r;if(!this._isDynamic||this._timeShiftBufferDepth===null)return 0;let e=(r=this.getEstimatedLiveEdge())!=null?r:this.getEstimatedMaximumPosition(0);return e===void 0?void 0:e-this._timeShiftBufferDepth}getEstimatedLiveEdge(){if(!(!this._isDynamic||this._serverTimestampOffset===void 0))return(L()+this._serverTimestampOffset)/1e3-this._availabilityStartTime}getEstimatedMaximumPosition(e){if(!this._isDynamic)return this._lastPosition;let t=this.getEstimatedLiveEdge();return t!==void 0&&e!==1/0?t+e:this._positionTime!==void 0&&this._lastPosition!==void 0?Math.max(this._lastPosition-this._positionTime+L()/1e3,0):this._lastPosition}};function yi(n,e){return n.type!==\"dynamic\"?0:v(n.availabilityStartTime)?e!=null?e:0:n.availabilityStartTime}function _i(n,e){return typeof Array.prototype.flatMap==\"function\"?n.flatMap(e):n.reduce((t,r)=>{let i=e(r);return Array.isArray(i)?(t.push(...i),t):(t.push(i),t)},[])}var Fu=typeof Ee==\"object\"&&typeof Ee.TextDecoder==\"function\",zu=typeof Ee==\"object\"&&typeof Ee.TextEncoder==\"function\";function mn(n){if(zu)try{return new TextEncoder().encode(n)}catch(i){let a=i instanceof Error?i:\"\";c.warn(\"Utils: could not use TextEncoder to encode string into UTF-8, fallbacking to another implementation\",a)}let e,t=encodeURIComponent(n);if(typeof unescape==\"function\")e=unescape(t);else{let i=/[0-9a-fA-F]/,a=t.length;e=\"\";for(let o=0;o<t.length;o++){let s=!1;if(t[o]===\"%\"){if(o<=a-6&&t[o+1]===\"u\"&&i.test(t[o+2])&&i.test(t[o+3])&&i.test(t[o+4])&&i.test(t[o+5])){let u=parseInt(t.substring(o+1,o+6),16);e+=String.fromCharCode(u),s=!0,o+=5}else if(o<=a-3&&i.test(t[o+1])&&i.test(t[o+2])){let u=parseInt(t.substring(o+1,o+3),16);e+=String.fromCharCode(u),s=!0,o+=2}}s||(e+=t[o])}}let r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e.charCodeAt(i)&255;return r}function Wu(n){let t=\"\";for(let r=0;r<n.length;r+=16e3){let i=n.subarray(r,r+16e3);t+=String.fromCharCode.apply(null,i)}return t}function _o(n,e){let t=n.toString(16);return t.length>=e?t:new Array(e-t.length+1).join(\"0\")+t}function Le(n){if(Fu)try{return new TextDecoder().decode(n)}catch(i){let a=i instanceof Error?i:\"\";c.warn(\"Utils: could not use TextDecoder to parse UTF-8, fallbacking to another implementation\",a)}let e=n;e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3));let t=Wu(e),r;if(typeof escape==\"function\")r=escape(t);else{let i=/[A-Za-z0-9*_\\+-\\.\\/]/;r=\"\";for(let a=0;a<t.length;a++)if(i.test(t[a]))r+=t[a];else{let o=t.charCodeAt(a);r+=o>=256?\"%u\"+_o(o,4):\"%\"+_o(o,2)}}return decodeURIComponent(r)}function cn(n){let e=n.length,t=new Uint8Array(e/2);for(let r=0,i=0;r<e;r+=2,i++)t[i]=parseInt(n.substring(r,r+2),16)&255;return t}function To(n,e=\"\"){let t=\"\";for(let r=0;r<n.byteLength;r++)t+=(n[r]>>>4).toString(16),t+=(n[r]&15).toString(16),e.length>0&&r<n.byteLength-1&&(t+=e);return t}function Ti(n,e){let t=e;for(;t<n.length&&n[t]!==0;)t+=1;let r=n.subarray(e,t);return{end:t+1,string:Le(r)}}function Ei(n){if(n.length===0)return[];let e=[n[0]];for(let t=1;t<n.length;t++){let r=n[t],i=e[e.length-1];for(;(i.duration===void 0||i.start+i.duration>r.start)&&(c.warn(\"DASH: Updating overlapping Periods.\",i==null?void 0:i.start,r.start),i.duration=r.start-i.start,i.end=r.start,!(i.duration>0));){if(e.pop(),e.length===0)break;i=e[e.length-1]}e.push(r)}return e}function Ri(n,e){let t=[];return n.forEach((r,i)=>{let a;if(!v(r.attributes.start))a=r.attributes.start;else if(i===0)a=!e.isDynamic||v(e.availabilityStartTime)?0:e.availabilityStartTime;else{let f=t[t.length-1];if(!v(f)&&!v(f.periodEnd))a=f.periodEnd;else throw new Error(\"Missing start time when parsing periods.\")}let o,s=n[i+1];v(r.attributes.duration)?i===n.length-1?o=e.duration:v(s.attributes.start)||(o=s.attributes.start-a):o=r.attributes.duration;let u=v(o)?void 0:a+o;t.push({periodStart:a,periodDuration:o,periodEnd:u})}),t}function Vu(n,e){for(let t of e){let{adaptation:r,trickModeAttachedAdaptationIds:i}=t;for(let a of i)for(let o of Dt){let s=n[o];if(s!==void 0)for(let u of s)u.id===a&&(u.trickModeTracks===void 0&&(u.trickModeTracks=[]),u.trickModeTracks.push(r))}}}var Eo=Vu;var qu=[\"subtitle\",\"caption\"];function Pi(n,e,t,r){function i(o,s){let u=o.split(\"/\")[0];if(se(Dt,u))return u;if(o===\"application/ttml+xml\")return\"text\";if(o===\"application/mp4\")return s!==null&&K(s,f=>f.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&se(qu,f.value))!==void 0?\"text\":void 0}function a(o){switch(o.substring(0,3)){case\"avc\":case\"hev\":case\"hvc\":case\"vp8\":case\"vp9\":case\"av1\":return\"video\";case\"vtt\":return\"text\"}switch(o.substring(0,4)){case\"mp4a\":return\"audio\";case\"wvtt\":case\"stpp\":return\"text\"}}if(e!==null){let o=i(e,r);if(o!==void 0)return o}if(t!==null){let o=a(t);if(o!==void 0)return o}for(let o=0;o<n.length;o++){let s=n[o],{mimeType:u,codecs:f}=s.attributes;if(u!==void 0){let d=i(u,r);if(d!==void 0)return d}if(f!==void 0){let d=a(f);if(d!==void 0)return d}}}var Hu=/[, ]+/g;function Ro(n){return J(n)?n.trim().replace(Hu,\", \"):\"\"}function Po(n){let[e,t,r,i,a,o,s,u]=n.split(\".\");if(e!==\"vp08\"&&e!==\"vp09\"&&e!==\"vp10\")return;let f,d,l;if((i!==void 0&&i===\"10\"||i===\"12\")&&(f=parseInt(i,10)),s!==void 0&&(s===\"16\"?d=\"pq\":s===\"18\"&&(d=\"hlg\")),o!==void 0&&u!==void 0&&o===\"09\"&&u===\"09\"&&(l=\"rec2020\"),!(f===void 0||d===void 0))return{colorDepth:f,eotf:d,colorSpace:l}}function vi(n,e){var g,h,I;let{availabilityTimeOffset:t,manifestBoundsCalculator:r,isDynamic:i,end:a,start:o,receivedTime:s,unsafelyBaseOnPreviousRepresentation:u,inbandEventStreams:f,isLastPeriod:d}=e,m={availabilityTimeComplete:void 0,availabilityTimeOffset:t,unsafelyBaseOnPreviousRepresentation:u,isEMSGWhitelisted:y=>f===void 0?!1:f.some(({schemeIdUri:T})=>T===y.schemeIdUri),isLastPeriod:d,manifestBoundsCalculator:r,isDynamic:i,periodEnd:a,periodStart:o,receivedTime:s,representationBitrate:n.attributes.bitrate,representationId:n.attributes.id},p;if(n.children.segmentBase!==void 0){let{segmentBase:y}=n.children;p=new Tt(y,m)}else if(n.children.segmentList!==void 0){let{segmentList:y}=n.children;p=new Et(y,m)}else if(n.children.segmentTemplate!==void 0||e.parentSegmentTemplates.length>0){let y=e.parentSegmentTemplates.slice(),T=n.children.segmentTemplate;T!==void 0&&y.push(T);let P=H({},...y);(P.availabilityTimeOffset!==void 0||e.availabilityTimeOffset!==void 0)&&(m.availabilityTimeOffset=((g=P.availabilityTimeOffset)!=null?g:0)+((h=e.availabilityTimeOffset)!=null?h:0)),(P.availabilityTimeComplete!==void 0||e.availabilityTimeComplete!==void 0)&&(m.availabilityTimeComplete=(I=P.availabilityTimeComplete)!=null?I:e.availabilityTimeComplete),p=cr.isTimelineIndexArgument(P)?new cr(P,m):new Rt(P,m)}else{let y=e.adaptation.children;if(y.segmentBase!==void 0){let{segmentBase:T}=y;p=new Tt(T,m)}else if(y.segmentList!==void 0){let{segmentList:T}=y;p=new Et(T,m)}else p=new Rt({duration:Number.MAX_VALUE,timescale:1,startNumber:0,media:\"\"},m)}return p}function et(n,e){var i;if(e.length===0)return n;let t=e.map(a=>({url:a.value}));if(n.length===0)return t;let r=[];for(let a=0;a<n.length;a++){let o=n[a];for(let s=0;s<t.length;s++){let u=t[s],f=pr(o.url,u.url);r.push({url:f,serviceLocation:(i=u.serviceLocation)!=null?i:o.serviceLocation})}}return r}function Gu(n,e){let t=[];if(n.children.inbandEventStreams!==void 0&&t.push(...n.children.inbandEventStreams),e.children.inbandEventStreams!==void 0&&t.push(...e.children.inbandEventStreams),t.length!==0)return t}function Ku({adaptationProfiles:n,essentialProperties:e,supplementalProperties:t,manifestProfiles:r,codecs:i}){if(((n!=null?n:\"\")+(r!=null?r:\"\")).indexOf(\"http://dashif.org/guidelines/dash-if-uhd#hevc-hdr-pq10\")!==-1&&(i===\"hvc1.2.4.L153.B0\"||i===\"hev1.2.4.L153.B0\"))return{colorDepth:10,eotf:\"pq\",colorSpace:\"rec2020\"};let o=K([...e!=null?e:[],...t!=null?t:[]],s=>s.schemeIdUri===\"urn:mpeg:mpegB:cicp:TransferCharacteristics\");if(o!==void 0)switch(o.value){case\"15\":return;case\"16\":return{eotf:\"pq\"};case\"18\":return{eotf:\"hlg\"}}if(i!==void 0&&/^vp(08|09|10)/.exec(i))return Po(i)}function Ci(n,e,t){var i,a,o,s,u,f,d;let r=[];for(let l of n){let m=l.attributes.id!==void 0?l.attributes.id:String(l.attributes.bitrate)+(l.attributes.height!==void 0?`-${l.attributes.height}`:\"\")+(l.attributes.width!==void 0?`-${l.attributes.width}`:\"\")+(l.attributes.mimeType!==void 0?`-${l.attributes.mimeType}`:\"\")+(l.attributes.codecs!==void 0?`-${l.attributes.codecs}`:\"\");for(;r.some(A=>A.id===m);)m+=\"-dup\";let p=(a=(i=t.unsafelyBaseOnPreviousAdaptation)==null?void 0:i.getRepresentation(m))!=null?a:null,g=Gu(l,e),h=(o=l.attributes.availabilityTimeComplete)!=null?o:t.availabilityTimeComplete,I;(l.attributes.availabilityTimeOffset!==void 0||t.availabilityTimeOffset!==void 0)&&(I=((s=l.attributes.availabilityTimeOffset)!=null?s:0)+((u=t.availabilityTimeOffset)!=null?u:0));let y=H({},t,{availabilityTimeOffset:I,availabilityTimeComplete:h,unsafelyBaseOnPreviousRepresentation:p,adaptation:e,inbandEventStreams:g}),T=vi(l,y),P;l.attributes.bitrate===void 0?(c.warn(\"DASH: No usable bitrate found in the Representation.\"),P=0):P=l.attributes.bitrate;let E=et(t.baseURLs,l.children.baseURLs),C=E.length===0?[{baseUrl:\"\",id:void 0}]:E.map(A=>({baseUrl:A.url,id:A.serviceLocation})),R={bitrate:P,cdnMetadata:C,index:T,id:m};l.children.supplementalProperties!==void 0&&K(l.children.supplementalProperties,A=>A.schemeIdUri===\"tag:dolby.com,2018:dash:EC3_ExtensionType:2018\"&&A.value===\"JOC\")&&(R.isSpatialAudio=!0);let k;l.attributes.codecs!==void 0?k=l.attributes.codecs:e.attributes.codecs!==void 0&&(k=e.attributes.codecs),k!==void 0&&(k=k===\"mp4a.40.02\"?\"mp4a.40.2\":k,R.codecs=k);let _;l.attributes.supplementalCodecs!==void 0?_=l.attributes.supplementalCodecs:e.attributes.supplementalCodecs!==void 0&&(_=e.attributes.supplementalCodecs),_!==void 0&&(R.supplementalCodecs=Ro(_)),l.attributes.frameRate!==void 0?R.frameRate=l.attributes.frameRate:e.attributes.frameRate!==void 0&&(R.frameRate=e.attributes.frameRate),l.attributes.height!==void 0?R.height=l.attributes.height:e.attributes.height!==void 0&&(R.height=e.attributes.height),l.attributes.mimeType!==void 0?R.mimeType=l.attributes.mimeType:e.attributes.mimeType!==void 0&&(R.mimeType=e.attributes.mimeType),l.attributes.width!==void 0?R.width=l.attributes.width:e.attributes.width!==void 0&&(R.width=e.attributes.width);{let A=[...(f=e.children.contentProtections)!=null?f:[],...(d=l.children.contentProtections)!=null?d:[]];for(let x of A)t.contentProtectionParser.add(R,x)}R.hdrInfo=Ku({adaptationProfiles:e.attributes.profiles,supplementalProperties:e.children.supplementalProperties,essentialProperties:e.children.essentialProperties,manifestProfiles:t.manifestProfiles,codecs:k}),r.push(R)}return r}function ju(n){if(n===void 0)return!1;let e=n.schemeIdUri===\"urn:tva:metadata:cs:AudioPurposeCS:2007\"&&n.value===\"1\",t=n.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&n.value===\"description\";return e||t}function Yu(n,e){return!!(n!==void 0&&n.some(r=>r.schemeIdUri===\"urn:tva:metadata:cs:AudioPurposeCS:2007\"&&r.value===\"2\")||e!==void 0&&e.some(r=>r.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&r.value===\"caption\"))}function Qu(n){return n===void 0?!1:n.schemeIdUri===\"urn:mpeg:dash:role:2011\"&&n.value===\"sign\"}function $u(n,e){if(J(n.attributes.id))return n.attributes.id;let{isClosedCaption:t,isForcedSubtitle:r,isAudioDescription:i,isSignInterpreted:a,isTrickModeTrack:o,type:s}=e,u=s;return J(n.attributes.language)&&(u+=`-${n.attributes.language}`),t===!0&&(u+=\"-cc\"),r===!0&&(u+=\"-cc\"),i===!0&&(u+=\"-ad\"),a===!0&&(u+=\"-si\"),o&&(u+=\"-trickMode\"),J(n.attributes.contentType)&&(u+=`-${n.attributes.contentType}`),J(n.attributes.codecs)&&(u+=`-${n.attributes.codecs}`),J(n.attributes.mimeType)&&(u+=`-${n.attributes.mimeType}`),n.attributes.frameRate!==void 0&&(u+=`-${String(n.attributes.frameRate)}`),u}function Xu(n){if(!v(n.children.supplementalProperties)){let{supplementalProperties:e}=n.children;for(let t of e)if(t.schemeIdUri===\"urn:mpeg:dash:adaptation-set-switching:2016\"&&!v(t.value))return t.value.split(\",\").map(r=>r.trim()).filter(r=>r)}return[]}function Ai(n,e){var s,u,f,d,l,m,p;let t={video:[],audio:[],text:[]},r=[],i={},a=[];for(let g=0;g<n.length;g++){let h=n[g],I=h.children,{essentialProperties:y,roles:T,label:P}=I,E=Array.isArray(T)&&T.some(Se=>Se.value===\"main\")&&T.some(Se=>Se.schemeIdUri===\"urn:mpeg:dash:role:2011\"),C=h.children.representations,R=(s=h.attributes.availabilityTimeComplete)!=null?s:e.availabilityTimeComplete,k;(h.attributes.availabilityTimeOffset!==void 0||e.availabilityTimeOffset!==void 0)&&(k=((u=h.attributes.availabilityTimeOffset)!=null?u:0)+((f=e.availabilityTimeOffset)!=null?f:0));let _=h.attributes.mimeType,A=h.attributes.codecs,x=Pi(C,J(_)?_:null,J(A)?A:null,v(I.roles)?null:I.roles);if(x===void 0)continue;let M=(d=h.attributes.selectionPriority)!=null?d:1,N=h.attributes.id,w=Xu(h),O=[];e.segmentTemplate!==void 0&&O.push(e.segmentTemplate),h.children.segmentTemplate!==void 0&&O.push(h.children.segmentTemplate);let B={availabilityTimeComplete:R,availabilityTimeOffset:k,baseURLs:et(e.baseURLs,I.baseURLs),contentProtectionParser:e.contentProtectionParser,manifestBoundsCalculator:e.manifestBoundsCalculator,end:e.end,isDynamic:e.isDynamic,isLastPeriod:e.isLastPeriod,manifestProfiles:e.manifestProfiles,parentSegmentTemplates:O,receivedTime:e.receivedTime,start:e.start,unsafelyBaseOnPreviousAdaptation:null},V=Array.isArray(y)?K(y,Se=>Se.schemeIdUri===\"http://dashif.org/guidelines/trickmode\"):void 0,q=(l=V==null?void 0:V.value)==null?void 0:l.split(\" \"),Y=q!==void 0,{accessibilities:G}=I,z;T!==void 0&&T.some(Se=>Se.value===\"dub\")&&(z=!0);let X;x!==\"text\"?X=!1:X=Yu(G,T);let Z;x===\"text\"&&T!==void 0&&T.some(Se=>Se.value===\"forced-subtitle\"||Se.value===\"forced_subtitle\")&&(Z=!0);let me;x!==\"audio\"?me=!1:G!==void 0&&(me=G.some(ju));let ce;x!==\"video\"?ce=!1:G!==void 0&&(ce=G.some(Qu));let de=$u(h,{isAudioDescription:me,isForcedSubtitle:Z,isClosedCaption:X,isSignInterpreted:ce,isTrickModeTrack:Y,type:x});for(;se(a,de);)de+=\"-dup\";let be=de;a.push(de),B.unsafelyBaseOnPreviousAdaptation=(p=(m=e.unsafelyBaseOnPreviousPeriod)==null?void 0:m.getAdaptation(de))!=null?p:null;let tr=Ci(C,h,B),pe={id:de,representations:tr,type:x,isTrickModeTrack:Y};if(v(h.attributes.language)||(pe.language=h.attributes.language),v(X)||(pe.closedCaption=X),v(me)||(pe.audioDescription=me),z===!0&&(pe.isDub=!0),Z!==void 0&&(pe.forcedSubtitles=Z),ce===!0&&(pe.isSignInterpreted=!0),P!==void 0&&(pe.label=P),q!==void 0)r.push({adaptation:pe,trickModeAttachedAdaptationIds:q});else{let Se=-1;for(let Yt of w){let Ge=i[Yt];if(Ge!==void 0&&Ge.newID!==be&&se(Ge.adaptationSetSwitchingIDs,N)){Se=ne(t[x],Ot=>Ot[0].id===Yt);let xe=t[x][Se];if(xe!==void 0&&xe[0].audioDescription===pe.audioDescription&&xe[0].closedCaption===pe.closedCaption&&xe[0].language===pe.language){c.info('DASH Parser: merging \"switchable\" AdaptationSets',N,Yt),xe[0].representations.push(...pe.representations),xe[1]={priority:Math.max(M,xe[1].priority),isMainAdaptation:E||xe[1].isMainAdaptation,indexInMpd:Math.min(g,xe[1].indexInMpd)};break}}}Se<0&&t[x].push([pe,{priority:M,isMainAdaptation:E,indexInMpd:g}])}!v(N)&&v(i[N])&&(i[N]={newID:be,adaptationSetSwitchingIDs:w})}let o=Dt.reduce((g,h)=>{let I=t[h];return I.length>0&&(I.sort(vo),g[h]=I.map(([y])=>y)),g},{});return t.video.sort(vo),Eo(o,r),o}function vo(n,e){let t=e[1].priority-n[1].priority;return t!==0?t:n[1].isMainAdaptation!==e[1].isMainAdaptation?n[1].isMainAdaptation?-1:1:n[1].indexInMpd-e[1].indexInMpd}var Zu=Ae();function ki(n,e){var o,s,u,f,d;let t=[],r=Ri(n,e);if(r.length!==n.length)throw new Error(\"MPD parsing error: the time information are incoherent.\");let{isDynamic:i,manifestBoundsCalculator:a}=e;!i&&!v(e.duration)&&a.setLastPosition(e.duration);for(let l=n.length-1;l>=0;l--){let m=l===n.length-1,p=n[l],g=e.xlinkInfos.get(p),h=et(e.baseURLs,p.children.baseURLs),{periodStart:I,periodDuration:y,periodEnd:T}=r[l],P;for(v(p.attributes.id)?(c.warn(\"DASH: No usable id found in the Period. Generating one.\"),P=\"gen-dash-period-\"+Zu()):P=p.attributes.id;t.some(V=>V.id===P);)P+=\"-dup\";let E=g!==void 0?g.receivedTime:e.receivedTime,C=(s=(o=e.unsafelyBaseOnPreviousManifest)==null?void 0:o.getPeriod(P))!=null?s:null,R=p.attributes.availabilityTimeComplete,k=p.attributes.availabilityTimeOffset,{manifestProfiles:_,contentProtectionParser:A}=e,{segmentTemplate:x}=p.children;A.addReferences((u=p.children.contentProtections)!=null?u:[]);let M={availabilityTimeComplete:R,availabilityTimeOffset:k,baseURLs:h,contentProtectionParser:A,manifestBoundsCalculator:a,end:T,isDynamic:i,isLastPeriod:m,manifestProfiles:_,receivedTime:E,segmentTemplate:x,start:I,unsafelyBaseOnPreviousPeriod:C},N=Ai(p.children.adaptations,M),w=((f=e.xmlNamespaces)!=null?f:[]).concat((d=p.attributes.namespaces)!=null?d:[]),O=ed(p.children.eventStreams,I,w),B={id:P,start:I,end:T,duration:y,adaptations:N,streamEvents:O};if(t.unshift(B),!a.lastPositionIsKnown()){let V=Ju(N);if(!i)typeof V==\"number\"&&a.setLastPosition(V);else if(typeof V==\"number\"){let q=L()/1e3;a.setLastPosition(V,q)}else{let q=Co(e,I);if(q!==void 0){let[Y,G]=q;a.setLastPosition(Y,G)}}}}if(e.isDynamic&&!a.lastPositionIsKnown()){let l=Co(e,0);if(l!==void 0){let[m,p]=l;a.setLastPosition(m,p)}}return Ei(t)}function Co(n,e){if(v(n.clockOffset)){let t=Date.now()/1e3;if(t>=e){c.warn(\"DASH Parser: no clock synchronization mechanism found. Using the system clock instead.\");let r=t-n.availabilityStartTime,i=L()/1e3;return[r,i]}}else{let t=n.clockOffset/1e3-n.availabilityStartTime,r=L()/1e3,i=r+t;if(i>=e)return[i,r]}}function Ju(n){let e=null,t=!0,r=sr(n).filter(a=>!v(a)),i=_i(r,a=>a);for(let a of i){let o=a.representations;for(let s of o){let u=s.index.getLastAvailablePosition();u!==null&&(t=!1,typeof u==\"number\"&&(e=v(e)?u:Math.max(e,u)))}}if(v(e)){if(t)return null}else return e}function ed(n,e,t){var i,a;let r=[];for(let o of n){let{schemeIdUri:s=\"\",timescale:u=1}=o.attributes,f=t.concat((i=o.attributes.namespaces)!=null?i:[]);for(let d of o.children.events)if(d.eventStreamData!==void 0){let l=((a=d.presentationTime)!=null?a:0)/u+e,m=d.duration===void 0?void 0:l+d.duration/u,p,g;if(!st&&d.eventStreamData instanceof Element)p=d.eventStreamData;else try{g={namespaces:f,data:typeof d.eventStreamData==\"string\"?d.eventStreamData:Le(new Uint8Array(d.eventStreamData))}}catch(h){c.error(\"DASH: Error while parsing event-stream:\",h instanceof Error?h.message:\"Unknown error\")}r.push({start:l,end:m,id:d.id,data:{type:\"dash-event-stream\",value:{schemeIdUri:s,timescale:u,element:p,xmlData:g}}})}}return r}function Ut(n,e,t,r,i=new WeakMap){let{children:a,attributes:o}=n;if(v(e.externalClockOffset)){let u=o.type===\"dynamic\",f=K(a.utcTimings,m=>m.schemeIdUri===\"urn:mpeg:dash:utc:direct:2014\"&&!v(m.value)),d=!v(f)&&!v(f.value)?gr(f.value):void 0,l=!v(d)&&!isNaN(d)?d:void 0;if(!v(l)&&r!==!0)e.externalClockOffset=l;else if(u&&r!==!0){let m=hi(n);if(!v(m)&&m.length>0)return{type:\"needs-clock\",value:{url:m,continue:function(g){return g.success?(e.externalClockOffset=gr(g.data),Ut(n,e,t,!0)):(t.push(g.error),c.warn(\"DASH Parser: Error on fetching the clock ressource\",g.error),Ut(n,e,t,!0))}}}}}let s=[];for(let u=0;u<a.periods.length;u++){let{xlinkHref:f,xlinkActuate:d}=a.periods[u].attributes;!v(f)&&d===\"onLoad\"&&s.push({index:u,ressource:f})}return s.length===0?td(n,e,t,i):{type:\"needs-xlinks\",value:{xlinksUrls:s.map(({ressource:u})=>u),continue:function(f){if(f.length!==s.length)throw new Error(\"DASH parser: wrong number of loaded ressources.\");for(let d=f.length-1;d>=0;d--){let l=s[d].index,{parsed:m,warnings:p,receivedTime:g,sendingTime:h,url:I}=f[d];p.length>0&&t.push(...p);for(let y of m)i.set(y,{receivedTime:g,sendingTime:h,url:I});a.periods.splice(l,1,...m)}return Ut(n,e,t,r,i)}}}}function td(n,e,t,r){var w,O,B,V,q;let{children:i,attributes:a}=n,o=a.type===\"dynamic\",s=e.url!==void 0?[{url:e.url.substring(0,pi(e.url))}]:[],u=et(s,i.baseURLs),f=yi(a,e.referenceDateTime),d=a.timeShiftBufferDepth,{externalClockOffset:l,unsafelyBaseOnPreviousManifest:m}=e,{externalClockOffset:p}=e,g=new fn({availabilityStartTime:f,isDynamic:o,timeShiftBufferDepth:d,serverTimestampOffset:p}),h=new ln;h.addReferences((w=i.contentProtections)!=null?w:[]);let I={availabilityStartTime:f,baseURLs:u,clockOffset:l,contentProtectionParser:h,duration:a.duration,isDynamic:o,manifestBoundsCalculator:g,manifestProfiles:n.attributes.profiles,receivedTime:e.manifestReceivedTime,timeShiftBufferDepth:d,unsafelyBaseOnPreviousManifest:m,xlinkInfos:r,xmlNamespaces:n.attributes.namespaces},y=ki(i.periods,I);h.finalize();let T=a.duration,P,E,C=null,R;a.minimumUpdatePeriod!==void 0&&a.minimumUpdatePeriod>=0&&(P=a.minimumUpdatePeriod===0?U.getCurrent().DASH_FALLBACK_LIFETIME_WHEN_MINIMUM_UPDATE_PERIOD_EQUAL_0:a.minimumUpdatePeriod);let{minimumSafePosition:k,maximumSafePosition:_,maximumUnsafePosition:A}=Si(y),x=L();if(o){let Y;_!==void 0?Y=_:p===void 0?(c.warn(\"DASH Parser: use system clock to define maximum position\"),Y=Date.now()/1e3-f):Y=(L()+p)/1e3-f;let G=g.getEstimatedLiveEdge();G===void 0&&(A!==void 0?G=A:G=Y),R={isLinear:!0,maximumSafePosition:Y,livePosition:G,time:x},E=k,C=d!=null?d:null,C!==null&&E!==void 0&&G-E>C&&(C=G-E)}else{E=k,E===void 0&&(E=(B=(O=y[0])==null?void 0:O.start)!=null?B:0);let Y=T!=null?T:1/0;if(y[y.length-1]!==void 0){let G=y[y.length-1],z=(V=G.end)!=null?V:G.duration!==void 0?G.start+G.duration:void 0;z!==void 0&&z<Y&&(Y=z)}_!==void 0&&_<Y&&(Y=_),R={isLinear:!1,maximumSafePosition:Y,livePosition:void 0,time:x}}let M=!o||n.attributes.minimumUpdatePeriod===void 0&&(((q=y[y.length-1])==null?void 0:q.end)!==void 0||n.attributes.duration!==void 0);return{type:\"done\",value:{parsed:{availabilityStartTime:f,clockOffset:e.externalClockOffset,isDynamic:o,isLive:o,isLastPeriodKnown:M,periods:y,publishTime:a.publishTime,suggestedPresentationDelay:a.suggestedPresentationDelay,transportType:\"dash\",timeBounds:{minimumSafePosition:E,timeshiftDepth:C,maximumTimeData:R},lifetime:P,uris:v(e.url)?i.locations:[e.url,...i.locations]},warnings:t}}}var br=Ut;var Ao=[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,62,255,255,255,63,52,53,54,55,56,57,58,59,60,61,255,255,255,0,255,255,255,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,255,255,255,255,255,255,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];function Sr(n){if(n>=Ao.length)throw new Error(\"Unable to parse base64 string.\");let e=Ao[n];if(e===255)throw new Error(\"Unable to parse base64 string.\");return e}function yr(n){let e=n.length%4,t=n;e!==0&&(c.warn(\"base64ToBytes: base64 given miss padding\"),t+=e===3?\"=\":e===2?\"==\":\"===\");let r=t.indexOf(\"=\");if(r!==-1&&r<t.length-2)throw new Error(\"Unable to parse base64 string.\");let i=t.endsWith(\"==\")?2:t.endsWith(\"=\")?1:0,a=t.length,o=new Uint8Array(a/4*3),s;for(let u=0,f=0;u<a;u+=4,f+=3)s=Sr(t.charCodeAt(u))<<18|Sr(t.charCodeAt(u+1))<<12|Sr(t.charCodeAt(u+2))<<6|Sr(t.charCodeAt(u+3)),o[f]=s>>16,o[f+1]=s>>8&255,o[f+2]=s&255;return o.subarray(0,o.length-i)}var nd=/^P(([\\d.]*)Y)?(([\\d.]*)M)?(([\\d.]*)D)?T?(([\\d.]*)H)?(([\\d.]*)M)?(([\\d.]*)S)?/,rd=/([0-9]+)-([0-9]+)/;function ve(n,e){return n===\"true\"?[!0,null]:n===\"false\"?[!1,null]:[!1,new Oe(`\\`${e}\\` property is not a boolean value but \"${n}\"`)]}function ee(n,e){let t=parseInt(n,10);return isNaN(t)?[null,new Oe(`\\`${e}\\` property is not an integer value but \"${n}\"`)]:[t,null]}function ke(n,e){if(n===\"INF\")return[1/0,null];let t=parseFloat(n);return isNaN(t)?[null,new Oe(`\\`${e}\\` property is invalid: \"${n}\"`)]:[t,null]}function xi(n,e){if(n===\"true\")return[!0,null];if(n===\"false\")return[!1,null];let t=parseInt(n,10);return isNaN(t)?[null,new Oe(`\\`${e}\\` property is not a boolean nor an integer but \"${n}\"`)]:[t,null]}function _r(n,e){let t=Date.parse(n);return isNaN(t)?[null,new Oe(`\\`${e}\\` is in an invalid date format: \"${n}\"`)]:[new Date(Date.parse(n)).getTime()/1e3,null]}function Ve(n,e){if(!J(n))return[0,new Oe(`\\`${e}\\` property is empty`)];let t=nd.exec(n);return t===null?[null,new Oe(`\\`${e}\\` property has an unrecognized format \"${n}\"`)]:[parseFloat(J(t[2])?t[2]:\"0\")*365*24*60*60+parseFloat(J(t[4])?t[4]:\"0\")*30*24*60*60+parseFloat(J(t[6])?t[6]:\"0\")*24*60*60+parseFloat(J(t[8])?t[8]:\"0\")*60*60+parseFloat(J(t[10])?t[10]:\"0\")*60+parseFloat(J(t[12])?t[12]:\"0\"),null]}function Pt(n,e){let t=rd.exec(n);return t===null?[null,new Oe(`\\`${e}\\` property has an unrecognized format \"${n}\"`)]:[[+t[1],+t[2]],null]}function ko(n,e){try{return[yr(n),null]}catch(t){return[null,new Oe(`\\`${e}\\` is not a valid base64 string: \"${n}\"`)]}}function Lt(n,e){let t=/^(\\d+)\\/(\\d+)$/.exec(n);return t!==null?[+t[1]/+t[2],null]:ke(n,e)}function _e(n){let e,t;for(let r of Object.keys(n.attributes)){let i=n.attributes[r];if(!v(i))switch(r){case\"schemeIdUri\":e=i;break;case\"value\":t=i;break}}return{schemeIdUri:e,value:t}}function fe(n,e){return function(t,{asKey:r,parser:i,dashName:a}){let[o,s]=i(t,a);s!==null&&(c.warn(s.message),e.push(s)),o!==null&&(n[r]=o)}}var Oe=class n extends Error{constructor(e){super(e),Object.setPrototypeOf(this,n.prototype),this.name=\"MPDError\"}};function ct(n){return lr(n)}function tt(n){let e=typeof n==\"string\"?n:ct(n.children),t=[];return e===null||e.length===0?[void 0,t]:[{value:e},t]}function id(n){let e=[],t=[];for(let r=0;r<n.length;r++){let i=n[r];if(typeof i!=\"string\"&&i.tagName===\"cenc:pssh\"){let a=ct(i.children);if(a!==null&&a.length>0){let[o,s]=ko(a,\"cenc:pssh\");s!==null&&(c.warn(s.message),e.push(s)),o!==null&&t.push(o)}}}return[{cencPssh:t},e]}function ad(n){let e={};for(let t of Object.keys(n.attributes)){let r=n.attributes[t];if(!v(r))switch(t){case\"schemeIdUri\":e.schemeIdUri=r;break;case\"value\":e.value=r;break;case\"cenc:default_KID\":e.keyId=cn(r.replace(/-/g,\"\"));break;case\"ref\":e.ref=r;break;case\"refId\":e.refId=r;break}}return e}function nt(n){let[e,t]=id(n.children),r=ad(n);return[{children:e,attributes:r},t]}function Mi(n){let e={};for(let t of Object.keys(n.attributes)){let r=n.attributes[t];if(!v(r))switch(t){case\"id\":e.id=r;break;case\"lang\":e.language=r;break;case\"contentType\":e.contentType=r;break;case\"par\":e.par=r;break}}return e}function Oi(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"range\":r(a,{asKey:\"range\",parser:Pt,dashName:\"range\"});break;case\"sourceURL\":e.media=a;break}}return[e,t]}function rt(n){let e={},t=[],r=fe(e,t),i=n.children;for(let a=0;a<i.length;a++){let o=i[a];if(typeof o!=\"string\"&&o.tagName===\"Initialization\"){let[s,u]=Oi(o);e.initialization=s,t=t.concat(u)}}for(let a of Object.keys(n.attributes)){let o=n.attributes[a];if(!v(o))switch(a){case\"timescale\":r(o,{asKey:\"timescale\",parser:ee,dashName:\"timescale\"});break;case\"presentationTimeOffset\":r(o,{asKey:\"presentationTimeOffset\",parser:ke,dashName:\"presentationTimeOffset\"});break;case\"indexRange\":r(o,{asKey:\"indexRange\",parser:Pt,dashName:\"indexRange\"});break;case\"indexRangeExact\":r(o,{asKey:\"indexRangeExact\",parser:ve,dashName:\"indexRangeExact\"});break;case\"availabilityTimeOffset\":r(o,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":r(o,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break;case\"duration\":r(o,{asKey:\"duration\",parser:ee,dashName:\"duration\"});break;case\"startNumber\":r(o,{asKey:\"startNumber\",parser:ee,dashName:\"startNumber\"});break;case\"endNumber\":r(o,{asKey:\"endNumber\",parser:ee,dashName:\"endNumber\"});break}}return[e,t]}function wi(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"media\":e.media=a;break;case\"indexRange\":r(a,{asKey:\"indexRange\",parser:Pt,dashName:\"indexRange\"});break;case\"index\":e.index=a;break;case\"mediaRange\":r(a,{asKey:\"mediaRange\",parser:Pt,dashName:\"mediaRange\"});break}}return[e,t]}function pn(n){let[e,t]=rt(n),r=t,i=[],a=n.children;for(let s=0;s<a.length;s++){let u=a[s];if(typeof u!=\"string\"&&u.tagName===\"SegmentURL\"){let[f,d]=wi(u);i.push(f),r=r.concat(d)}}return[H(e,{list:i}),r]}function Di(n){let e=n.children;return function(){for(let t=e.length-1;t>=0;t--){let r=e[t];(typeof r==\"string\"||r.tagName!==\"S\")&&e.splice(t,1)}return e}}function vt(n){let[e,t]=rt(n),r=t,i;for(let s=0;s<n.children.length;s++){let u=n.children[s];typeof u!=\"string\"&&u.tagName===\"SegmentTimeline\"&&(i=Di(u))}let a=H({},e,{duration:e.duration,timelineParser:i}),o=fe(a,r);for(let s of Object.keys(n.attributes)){let u=n.attributes[s];if(!v(u))switch(s){case\"initialization\":v(a.initialization)&&(a.initialization={media:u});break;case\"index\":a.index=u;break;case\"availabilityTimeOffset\":o(u,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":o(u,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break;case\"media\":a.media=u;break;case\"bitstreamSwitching\":o(u,{asKey:\"bitstreamSwitching\",parser:ve,dashName:\"bitstreamSwitching\"});break}}return[a,r]}function od(n){let e={baseURLs:[]},t=[],r=[];for(let i=0;i<n.length;i++){let a=n[i];if(typeof a!=\"string\")switch(a.tagName){case\"BaseURL\":let[o,s]=tt(a);o!==void 0&&e.baseURLs.push(o),r=r.concat(s);break;case\"InbandEventStream\":e.inbandEventStreams===void 0&&(e.inbandEventStreams=[]),e.inbandEventStreams.push(_e(a));break;case\"SegmentBase\":let[u,f]=rt(a);e.segmentBase=u,f.length>0&&(r=r.concat(f));break;case\"SegmentList\":let[d,l]=pn(a);r=r.concat(l),e.segmentList=d;break;case\"SegmentTemplate\":let[m,p]=vt(a);r=r.concat(p),e.segmentTemplate=m;break;case\"ContentProtection\":let[g,h]=nt(a);h.length>0&&(r=r.concat(h)),g!==void 0&&t.push(g);break;case\"SupplementalProperty\":v(e.supplementalProperties)?e.supplementalProperties=[_e(a)]:e.supplementalProperties.push(_e(a));break}}return t.length>0&&(e.contentProtections=t),[e,r]}function sd(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"audioSamplingRate\":e.audioSamplingRate=a;break;case\"bandwidth\":r(a,{asKey:\"bitrate\",parser:ee,dashName:\"bandwidth\"});break;case\"codecs\":e.codecs=a;break;case\"codingDependency\":r(a,{asKey:\"codingDependency\",parser:ve,dashName:\"codingDependency\"});break;case\"frameRate\":r(a,{asKey:\"frameRate\",parser:Lt,dashName:\"frameRate\"});break;case\"height\":r(a,{asKey:\"height\",parser:ee,dashName:\"height\"});break;case\"id\":e.id=a;break;case\"maxPlayoutRate\":r(a,{asKey:\"maxPlayoutRate\",parser:ke,dashName:\"maxPlayoutRate\"});break;case\"maximumSAPPeriod\":r(a,{asKey:\"maximumSAPPeriod\",parser:ke,dashName:\"maximumSAPPeriod\"});break;case\"mimeType\":e.mimeType=a;break;case\"profiles\":e.profiles=a;break;case\"qualityRanking\":r(a,{asKey:\"qualityRanking\",parser:ee,dashName:\"qualityRanking\"});break;case\"scte214:supplementalCodecs\":e.supplementalCodecs=a;break;case\"segmentProfiles\":e.segmentProfiles=a;break;case\"width\":r(a,{asKey:\"width\",parser:ee,dashName:\"width\"});break;case\"availabilityTimeOffset\":r(a,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":r(a,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break}}return e.bitrate===void 0&&t.push(new Oe(\"No bitrate found on a Representation\")),[e,t]}function xo(n){let[e,t]=od(n.children),[r,i]=sd(n),a=t.concat(i);return[{children:e,attributes:r},a]}function ud(n){let e={baseURLs:[],representations:[]},t=[],r=[];for(let i=0;i<n.length;i++){let a=n[i];if(typeof a!=\"string\")switch(a.tagName){case\"Accessibility\":e.accessibilities===void 0?e.accessibilities=[_e(a)]:e.accessibilities.push(_e(a));break;case\"BaseURL\":let[o,s]=tt(a);o!==void 0&&e.baseURLs.push(o),s.length>0&&(r=r.concat(s));break;case\"ContentComponent\":e.contentComponent=Mi(a);break;case\"EssentialProperty\":v(e.essentialProperties)?e.essentialProperties=[_e(a)]:e.essentialProperties.push(_e(a));break;case\"InbandEventStream\":e.inbandEventStreams===void 0&&(e.inbandEventStreams=[]),e.inbandEventStreams.push(_e(a));break;case\"Label\":let u=ct(a.children);u!=null&&(e.label=u);break;case\"Representation\":let[f,d]=xo(a);e.representations.push(f),d.length>0&&(r=r.concat(d));break;case\"Role\":v(e.roles)?e.roles=[_e(a)]:e.roles.push(_e(a));break;case\"SupplementalProperty\":v(e.supplementalProperties)?e.supplementalProperties=[_e(a)]:e.supplementalProperties.push(_e(a));break;case\"SegmentBase\":let[l,m]=rt(a);e.segmentBase=l,m.length>0&&(r=r.concat(m));break;case\"SegmentList\":let[p,g]=pn(a);e.segmentList=p,g.length>0&&(r=r.concat(g));break;case\"SegmentTemplate\":let[h,I]=vt(a);e.segmentTemplate=h,I.length>0&&(r=r.concat(I));break;case\"ContentProtection\":let[y,T]=nt(a);T.length>0&&(r=r.concat(T)),y!==void 0&&t.push(y);break}}return t.length>0&&(e.contentProtections=t),[e,r]}function dd(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"id\":e.id=a;break;case\"group\":r(a,{asKey:\"group\",parser:ee,dashName:\"group\"});break;case\"lang\":e.language=a;break;case\"contentType\":e.contentType=a;break;case\"par\":e.par=a;break;case\"minBandwidth\":r(a,{asKey:\"minBitrate\",parser:ee,dashName:\"minBandwidth\"});break;case\"maxBandwidth\":r(a,{asKey:\"maxBitrate\",parser:ee,dashName:\"maxBandwidth\"});break;case\"minWidth\":r(a,{asKey:\"minWidth\",parser:ee,dashName:\"minWidth\"});break;case\"maxWidth\":r(a,{asKey:\"maxWidth\",parser:ee,dashName:\"maxWidth\"});break;case\"minHeight\":r(a,{asKey:\"minHeight\",parser:ee,dashName:\"minHeight\"});break;case\"maxHeight\":r(a,{asKey:\"maxHeight\",parser:ee,dashName:\"maxHeight\"});break;case\"minFrameRate\":r(a,{asKey:\"minFrameRate\",parser:Lt,dashName:\"minFrameRate\"});break;case\"maxFrameRate\":r(a,{asKey:\"maxFrameRate\",parser:Lt,dashName:\"maxFrameRate\"});break;case\"selectionPriority\":r(a,{asKey:\"selectionPriority\",parser:ee,dashName:\"selectionPriority\"});break;case\"segmentAlignment\":r(a,{asKey:\"segmentAlignment\",parser:xi,dashName:\"segmentAlignment\"});break;case\"subsegmentAlignment\":r(a,{asKey:\"subsegmentAlignment\",parser:xi,dashName:\"subsegmentAlignment\"});break;case\"bitstreamSwitching\":r(a,{asKey:\"bitstreamSwitching\",parser:ve,dashName:\"bitstreamSwitching\"});break;case\"audioSamplingRate\":e.audioSamplingRate=a;break;case\"codecs\":e.codecs=a;break;case\"scte214:supplementalCodecs\":e.supplementalCodecs=a;break;case\"codingDependency\":r(a,{asKey:\"codingDependency\",parser:ve,dashName:\"codingDependency\"});break;case\"frameRate\":r(a,{asKey:\"frameRate\",parser:Lt,dashName:\"frameRate\"});break;case\"height\":r(a,{asKey:\"height\",parser:ee,dashName:\"height\"});break;case\"maxPlayoutRate\":r(a,{asKey:\"maxPlayoutRate\",parser:ke,dashName:\"maxPlayoutRate\"});break;case\"maximumSAPPeriod\":r(a,{asKey:\"maximumSAPPeriod\",parser:ke,dashName:\"maximumSAPPeriod\"});break;case\"mimeType\":e.mimeType=a;break;case\"profiles\":e.profiles=a;break;case\"segmentProfiles\":e.segmentProfiles=a;break;case\"width\":r(a,{asKey:\"width\",parser:ee,dashName:\"width\"});break;case\"availabilityTimeOffset\":r(a,{asKey:\"availabilityTimeOffset\",parser:ke,dashName:\"availabilityTimeOffset\"});break;case\"availabilityTimeComplete\":r(a,{asKey:\"availabilityTimeComplete\",parser:ve,dashName:\"availabilityTimeComplete\"});break}}return[e,t]}function Mo(n){let e=n.children,[t,r]=ud(e),[i,a]=dd(n),o=r.concat(a);return[{children:t,attributes:i},o]}function ld(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"schemeIdUri\":e.schemeIdUri=a;break;case\"value\":e.value=a;break;case\"timescale\":r(a,{asKey:\"timescale\",parser:ee,dashName:\"timescale\"});break;default:Ue(i,\"xmlns:\")&&(e.namespaces===void 0&&(e.namespaces=[]),e.namespaces.push({key:i.substring(6),value:a}));break}}return[e,t]}function Oo(n,e){let[t,r]=ld(n),i=[];for(let a of n.children)if(typeof a!=\"string\"&&a.tagName===\"Event\"){let o={};if(v(a.attributes.id)||(o.id=a.attributes.id),!v(a.attributes.presentationTime)){let[s,u]=ee(a.attributes.presentationTime,\"presentationTime\");u!==null&&r.push(u),s!==null&&(o.presentationTime=s)}if(!v(a.attributes.duration)){let[s,u]=ee(a.attributes.duration,\"duration\");u!==null&&r.push(u),s!==null&&(o.duration=s)}if(a.posStart<a.posEnd){let s=e.substring(a.posStart,a.posEnd);o.eventStreamData=s}i.push(o)}return[{children:{events:i},attributes:t},r]}function fd(n,e){let t=[],r=[],i,a=[],o=[],s=[];for(let u=0;u<n.length;u++){let f=n[u];if(typeof f!=\"string\")switch(f.tagName){case\"BaseURL\":let[d,l]=tt(f);d!==void 0&&t.push(d),o=o.concat(l);break;case\"AdaptationSet\":let[m,p]=Mo(f);r.push(m),o=o.concat(p);break;case\"EventStream\":let[g,h]=Oo(f,e);s.push(g),o=o.concat(h);break;case\"SegmentTemplate\":let[I,y]=vt(f);i=I,y.length>0&&(o=o.concat(y));break;case\"ContentProtection\":let[T,P]=nt(f);P.length>0&&(o=o.concat(P)),T!==void 0&&a.push(T);break}}return[{baseURLs:t,adaptations:r,eventStreams:s,segmentTemplate:i,contentProtections:a},o]}function md(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"id\":e.id=a;break;case\"start\":r(a,{asKey:\"start\",parser:Ve,dashName:\"start\"});break;case\"duration\":r(a,{asKey:\"duration\",parser:Ve,dashName:\"duration\"});break;case\"bitstreamSwitching\":r(a,{asKey:\"bitstreamSwitching\",parser:ve,dashName:\"bitstreamSwitching\"});break;case\"xlink:href\":e.xlinkHref=a;break;case\"xlink:actuate\":e.xlinkActuate=a;break;default:Ue(i,\"xmlns:\")&&(e.namespaces===void 0&&(e.namespaces=[]),e.namespaces.push({key:i.substring(6),value:a}));break}}return[e,t]}function Tr(n,e){let[t,r]=fd(n.children,e),[i,a]=md(n),o=r.concat(a);return[{children:t,attributes:i},o]}function cd(n,e){let t=[],r=[],i=[],a=[],o=[],s=[];for(let u=0;u<n.length;u++){let f=n[u];if(typeof f!=\"string\")switch(f.tagName){case\"BaseURL\":let[d,l]=tt(f);d!==void 0&&t.push(d),s=s.concat(l);break;case\"Location\":r.push(ct(f.children));break;case\"Period\":let[m,p]=Tr(f,e);i.push(m),s=s.concat(p);break;case\"UTCTiming\":let g=_e(f);a.push(g);break;case\"ContentProtection\":let[h,I]=nt(f);I.length>0&&(s=s.concat(I)),h!==void 0&&o.push(h);break}}return[{baseURLs:t,locations:r,periods:i,utcTimings:a,contentProtections:o},s]}function pd(n){let e={},t=[],r=fe(e,t);for(let i of Object.keys(n.attributes)){let a=n.attributes[i];if(!v(a))switch(i){case\"id\":e.id=a;break;case\"profiles\":e.profiles=a;break;case\"type\":e.type=a;break;case\"availabilityStartTime\":r(a,{asKey:\"availabilityStartTime\",parser:_r,dashName:\"availabilityStartTime\"});break;case\"availabilityEndTime\":r(a,{asKey:\"availabilityEndTime\",parser:_r,dashName:\"availabilityEndTime\"});break;case\"publishTime\":r(a,{asKey:\"publishTime\",parser:_r,dashName:\"publishTime\"});break;case\"mediaPresentationDuration\":r(a,{asKey:\"duration\",parser:Ve,dashName:\"mediaPresentationDuration\"});break;case\"minimumUpdatePeriod\":r(a,{asKey:\"minimumUpdatePeriod\",parser:Ve,dashName:\"minimumUpdatePeriod\"});break;case\"minBufferTime\":r(a,{asKey:\"minBufferTime\",parser:Ve,dashName:\"minBufferTime\"});break;case\"timeShiftBufferDepth\":r(a,{asKey:\"timeShiftBufferDepth\",parser:Ve,dashName:\"timeShiftBufferDepth\"});break;case\"suggestedPresentationDelay\":r(a,{asKey:\"suggestedPresentationDelay\",parser:Ve,dashName:\"suggestedPresentationDelay\"});break;case\"maxSegmentDuration\":r(a,{asKey:\"maxSegmentDuration\",parser:Ve,dashName:\"maxSegmentDuration\"});break;case\"maxSubsegmentDuration\":r(a,{asKey:\"maxSubsegmentDuration\",parser:Ve,dashName:\"maxSubsegmentDuration\"});break;default:Ue(i,\"xmlns:\")&&(e.namespaces===void 0&&(e.namespaces=[]),e.namespaces.push({key:i.substring(6),value:a}));break}}return[e,t]}function wo(n,e){let[t,r]=cd(n.children,e),[i,a]=pd(n),o=r.concat(a);return[{children:t,attributes:i},o]}function Ni(n,e){let t=ii(n),r=t[t.length-1];if(r===void 0||typeof r==\"string\"||r.tagName!==\"MPD\")throw new Error(\"DASH Parser: document root should be MPD\");let[i,a]=wo(r,n),o=br(i,e,a);return s(o);function s(u){if(u.type===\"done\")return u;if(u.type===\"needs-clock\")return{type:\"needs-resources\",value:{urls:[u.value.url],format:\"string\",continue(f){if(f.length!==1)throw new Error(\"DASH parser: wrong number of loaded ressources.\");let d=u.value.continue(f[0].responseData);return s(d)}}};if(u.type===\"needs-xlinks\")return{type:\"needs-resources\",value:{urls:u.value.xlinksUrls,format:\"string\",continue(f){let d=[];for(let m=0;m<f.length;m++){let{responseData:p,receivedTime:g,sendingTime:h,url:I}=f[m];if(!p.success)throw p.error;let y=\"<root>\"+p.data+\"</root>\",T=ii(y),P=T[T.length-1];if(P===void 0||typeof P==\"string\")throw new Error(\"DASH parser: Invalid external ressources\");let E=P.children,C=[],R=[];for(let k=0;k<E.length;k++){let _=E[k];if(typeof _==\"string\"||_.tagName!==\"Period\")continue;let[A,x]=Tr(_,y);R.push(...x),C.push(A)}d.push({url:I,receivedTime:g,sendingTime:h,parsed:C,warnings:R})}let l=u.value.continue(d);return s(l)}}};We(u)}}var Do=Ni;var gd=typeof WebAssembly==\"object\"&&typeof WebAssembly.instantiate==\"function\",No=gd;function F(n,e,t,r){let i=new Uint8Array(e,t,r);return n.decode(i)}function Bi(n){return n===1/0?!0:n===-1/0?!1:n}function pt(n,e){let t=new TextDecoder;return function(i,a,o){i===64&&(n.value=F(t,e.buffer,a,o))}}function gt(n,e){let t=n.attributes,r=n.children,i=new TextDecoder;return function(o,s,u){switch(o){case 16:t.schemeIdUri=F(i,e.buffer,s,u);break;case 13:t.value=F(i,e.buffer,s,u);break;case 14:let f=F(i,e.buffer,s,u);t.keyId=cn(f.replace(/-/g,\"\"));break;case 15:try{let d=F(i,e.buffer,s,u);r.cencPssh.push(yr(d))}catch(d){}break;case 78:t.ref=F(i,e.buffer,s,u);break;case 79:t.refId=F(i,e.buffer,s,u);break}}}function Bo(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 60:n.language=F(t,e.buffer,a,o);break;case 61:n.contentType=F(t,e.buffer,a,o);break;case 62:n.par=F(t,e.buffer,a,o);break}}}function qe(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 16:n.schemeIdUri=F(t,e.buffer,a,o);break;case 17:n.value=F(t,e.buffer,a,o);break}}}function Ft(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 29:{let s=new DataView(e.buffer);n.initialization===void 0&&(n.initialization={}),n.initialization.range=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 67:n.initialization===void 0&&(n.initialization={}),n.initialization.media=F(t,e.buffer,a,o);break;case 43:{let s=new DataView(e.buffer);n.availabilityTimeOffset=s.getFloat64(a,!0);break}case 22:{n.availabilityTimeComplete=new DataView(e.buffer).getUint8(0)===0;break}case 24:{let s=new DataView(e.buffer);n.presentationTimeOffset=s.getFloat64(a,!0);break}case 27:{let s=new DataView(e.buffer);n.timescale=s.getFloat64(a,!0);break}case 31:{let s=new DataView(e.buffer);n.indexRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 23:{n.indexRangeExact=new DataView(e.buffer).getUint8(0)===0;break}case 1:{let s=new DataView(e.buffer);n.duration=s.getFloat64(a,!0);break}case 20:{let s=new DataView(e.buffer);n.startNumber=s.getFloat64(a,!0);break}case 76:{let s=new DataView(e.buffer);n.endNumber=s.getFloat64(a,!0);break}}}}function Uo(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 28:n.index=F(t,e.buffer,a,o);break;case 31:{let s=new DataView(e.buffer);n.indexRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 30:n.media=F(t,e.buffer,a,o);break;case 18:{let s=new DataView(e.buffer);n.mediaRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}}}}function Er(n,e,t){return function(i){switch(i){case 20:{let a={};n.list===void 0&&(n.list=[]),n.list.push(a);let o=Uo(a,e);t.pushParsers(i,D,o);break}default:t.pushParsers(i,D,D);break}}}function zt(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 19:{let s=new DataView(e.buffer);n.timeline=[];let u=a;for(let f=0;f<o/24;f++)n.timeline.push({start:s.getFloat64(u,!0),duration:s.getFloat64(u+8,!0),repeatCount:s.getFloat64(u+16,!0)}),u+=24;break}case 67:n.initialization={media:F(t,e.buffer,a,o)};break;case 28:n.index=F(t,e.buffer,a,o);break;case 43:{let s=new DataView(e.buffer);n.availabilityTimeOffset=s.getFloat64(a,!0);break}case 22:{n.availabilityTimeComplete=new DataView(e.buffer).getUint8(0)===0;break}case 24:{let s=new DataView(e.buffer);n.presentationTimeOffset=s.getFloat64(a,!0);break}case 27:{let s=new DataView(e.buffer);n.timescale=s.getFloat64(a,!0);break}case 31:{let s=new DataView(e.buffer);n.indexRange=[s.getFloat64(a,!0),s.getFloat64(a+8,!0)];break}case 23:{n.indexRangeExact=new DataView(e.buffer).getUint8(0)===0;break}case 30:n.media=F(t,e.buffer,a,o);break;case 32:{n.bitstreamSwitching=new DataView(e.buffer).getUint8(0)===0;break}case 1:{let s=new DataView(e.buffer);n.duration=s.getFloat64(a,!0);break}case 20:{let s=new DataView(e.buffer);n.startNumber=s.getFloat64(a,!0);break}case 76:{let s=new DataView(e.buffer);n.endNumber=s.getFloat64(a,!0);break}}}}function Lo(n,e,t){return function(i){switch(i){case 15:{let a={value:\"\",attributes:{}};n.baseURLs.push(a),t.pushParsers(i,D,pt(a,e));break}case 10:{let a={children:{cencPssh:[]},attributes:{}};n.contentProtections===void 0&&(n.contentProtections=[]),n.contentProtections.push(a);let o=gt(a,e);t.pushParsers(i,D,o);break}case 19:{let a={};n.inbandEventStreams===void 0&&(n.inbandEventStreams=[]),n.inbandEventStreams.push(a),t.pushParsers(i,D,qe(a,e));break}case 13:{let a={};n.supplementalProperties===void 0&&(n.supplementalProperties=[]),n.supplementalProperties.push(a);let o=qe(a,e);t.pushParsers(i,D,o);break}case 17:{let a={};n.segmentBase=a;let o=Ft(a,e);t.pushParsers(i,D,o);break}case 18:{let a={list:[]};n.segmentList=a;let o=Er(a,e,t),s=Ft(a,e);t.pushParsers(i,o,s);break}case 16:{let a={};n.segmentTemplate=a,t.pushParsers(i,D,zt(a,e));break}default:t.pushParsers(i,D,D);break}}}function Fo(n,e){let t=new TextDecoder;return function(i,a,o){let s=new DataView(e.buffer);switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 3:n.audioSamplingRate=F(t,e.buffer,a,o);break;case 63:n.bitrate=s.getFloat64(a,!0);break;case 4:n.codecs=F(t,e.buffer,a,o);break;case 77:n.supplementalCodecs=F(t,e.buffer,a,o);break;case 5:n.codingDependency=new DataView(e.buffer).getUint8(0)===0;break;case 6:n.frameRate=s.getFloat64(a,!0);break;case 7:n.height=s.getFloat64(a,!0);break;case 8:n.width=s.getFloat64(a,!0);break;case 9:n.maxPlayoutRate=s.getFloat64(a,!0);break;case 10:n.maximumSAPPeriod=s.getFloat64(a,!0);break;case 11:n.mimeType=F(t,e.buffer,a,o);break;case 2:n.profiles=F(t,e.buffer,a,o);break;case 65:n.qualityRanking=s.getFloat64(a,!0);break;case 12:n.segmentProfiles=F(t,e.buffer,a,o);break;case 43:n.availabilityTimeOffset=s.getFloat64(a,!0);break;case 22:n.availabilityTimeComplete=s.getUint8(0)===0;break}}}function zo(n,e,t){return function(i){switch(i){case 8:{let a={};n.accessibilities===void 0&&(n.accessibilities=[]),n.accessibilities.push(a);let o=qe(a,e);t.pushParsers(i,D,o);break}case 15:{let a={value:\"\",attributes:{}};n.baseURLs.push(a);let o=pt(a,e);t.pushParsers(i,D,o);break}case 9:{let a={};n.contentComponent=a,t.pushParsers(i,D,Bo(a,e));break}case 10:{let a={children:{cencPssh:[]},attributes:{}};n.contentProtections===void 0&&(n.contentProtections=[]),n.contentProtections.push(a);let o=gt(a,e);t.pushParsers(i,D,o);break}case 11:{let a={};n.essentialProperties===void 0&&(n.essentialProperties=[]),n.essentialProperties.push(a);let o=D,s=qe(a,e);t.pushParsers(i,o,s);break}case 19:{let a={};n.inbandEventStreams===void 0&&(n.inbandEventStreams=[]),n.inbandEventStreams.push(a);let o=D,s=qe(a,e);t.pushParsers(i,o,s);break}case 7:{let a={children:{baseURLs:[]},attributes:{}};n.representations.push(a);let o=Lo(a.children,e,t),s=Fo(a.attributes,e);t.pushParsers(i,o,s);break}case 12:{let a={};n.roles===void 0&&(n.roles=[]),n.roles.push(a);let o=qe(a,e);t.pushParsers(i,D,o);break}case 13:{let a={};n.supplementalProperties===void 0&&(n.supplementalProperties=[]),n.supplementalProperties.push(a);let o=qe(a,e);t.pushParsers(i,D,o);break}case 17:{let a={};n.segmentBase=a;let o=Ft(a,e);t.pushParsers(i,D,o);break}case 18:{let a={list:[]};n.segmentList=a;let o=Er(a,e,t),s=Ft(a,e);t.pushParsers(i,o,s);break}case 16:{let a={};n.segmentTemplate=a,t.pushParsers(i,D,zt(a,e));break}default:t.pushParsers(i,D,D);break}}}function Wo(n,e){let t=new TextDecoder;return function(i,a,o){let s=new DataView(e.buffer);switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 48:n.group=s.getFloat64(a,!0);break;case 60:n.language=F(t,e.buffer,a,o);break;case 61:n.contentType=F(t,e.buffer,a,o);break;case 62:n.par=F(t,e.buffer,a,o);break;case 53:n.minBitrate=s.getFloat64(a,!0);break;case 49:n.maxBitrate=s.getFloat64(a,!0);break;case 56:n.minWidth=s.getFloat64(a,!0);break;case 52:n.maxWidth=s.getFloat64(a,!0);break;case 55:n.minHeight=s.getFloat64(a,!0);break;case 51:n.maxHeight=s.getFloat64(a,!0);break;case 54:n.minFrameRate=s.getFloat64(a,!0);break;case 50:n.maxFrameRate=s.getFloat64(a,!0);break;case 57:n.selectionPriority=s.getFloat64(a,!0);break;case 58:n.segmentAlignment=Bi(s.getFloat64(a,!0));break;case 59:n.subsegmentAlignment=Bi(s.getFloat64(a,!0));break;case 32:n.bitstreamSwitching=s.getFloat64(a,!0)!==0;break;case 3:n.audioSamplingRate=F(t,e.buffer,a,o);break;case 4:n.codecs=F(t,e.buffer,a,o);break;case 77:n.supplementalCodecs=F(t,e.buffer,a,o);break;case 2:n.profiles=F(t,e.buffer,a,o);break;case 12:n.segmentProfiles=F(t,e.buffer,a,o);break;case 11:n.mimeType=F(t,e.buffer,a,o);break;case 5:n.codingDependency=s.getFloat64(a,!0)!==0;break;case 6:n.frameRate=s.getFloat64(a,!0);break;case 7:n.height=s.getFloat64(a,!0);break;case 8:n.width=s.getFloat64(a,!0);break;case 9:n.maxPlayoutRate=s.getFloat64(a,!0);break;case 10:n.maximumSAPPeriod=s.getFloat64(a,!0);break;case 43:n.availabilityTimeOffset=s.getFloat64(a,!0);break;case 22:n.availabilityTimeComplete=s.getUint8(0)===0;break;case 71:let u=F(t,e.buffer,a,o);n.label=u;break}}}function Vo(n,e,t,r){return function(a){switch(a){case 6:{let o={};n.events.push(o);let s=hd(o,e,r);t.pushParsers(a,D,s);break}default:t.pushParsers(a,D,D);break}}}function qo(n,e){let t=new TextDecoder;return function(i,a,o){let s=new DataView(e.buffer);switch(i){case 16:n.schemeIdUri=F(t,e.buffer,a,o);break;case 17:n.value=F(t,e.buffer,a,o);break;case 27:n.timescale=s.getFloat64(a,!0);break;case 70:let u={key:\"\",value:\"\"},f=a,d=s.getUint32(f);f+=4,u.key=F(t,e.buffer,f,d),f+=d;let l=s.getUint32(f);f+=4,u.value=F(t,e.buffer,f,l),n.namespaces===void 0?n.namespaces=[u]:n.namespaces.push(u);break}}}function hd(n,e,t){let r=new TextDecoder;return function(a,o,s){let u=new DataView(e.buffer);switch(a){case 25:n.presentationTime=u.getFloat64(o,!0);break;case 1:n.duration=u.getFloat64(o,!0);break;case 0:n.id=F(r,e.buffer,o,s);break;case 69:let f=u.getFloat64(o,!0),d=u.getFloat64(o+8,!0);n.eventStreamData=t.slice(f,d);break}}}function Rr(n,e,t,r){return function(a){switch(a){case 4:{let o={children:{baseURLs:[],representations:[]},attributes:{}};n.adaptations.push(o);let s=zo(o.children,e,t),u=Wo(o.attributes,e);t.pushParsers(a,s,u);break}case 15:{let o={value:\"\",attributes:{}};n.baseURLs.push(o);let s=D,u=pt(o,e);t.pushParsers(a,s,u);break}case 5:{let o={children:{events:[]},attributes:{}};n.eventStreams.push(o);let s=Vo(o.children,e,t,r),u=qo(o.attributes,e);t.pushParsers(a,s,u);break}case 16:{let o={};n.segmentTemplate=o,t.pushParsers(a,D,zt(o,e));break}case 10:{let o={children:{cencPssh:[]},attributes:{}};n.contentProtections===void 0&&(n.contentProtections=[]),n.contentProtections.push(o);let s=gt(o,e);t.pushParsers(a,D,s);break}default:t.pushParsers(a,D,D);break}}}function Pr(n,e){let t=new TextDecoder;return function(i,a,o){switch(i){case 0:n.id=F(t,e.buffer,a,o);break;case 45:n.start=new DataView(e.buffer).getFloat64(a,!0);break;case 1:n.duration=new DataView(e.buffer).getFloat64(a,!0);break;case 32:n.bitstreamSwitching=new DataView(e.buffer).getUint8(0)===0;break;case 46:n.xlinkHref=F(t,e.buffer,a,o);break;case 47:n.xlinkActuate=F(t,e.buffer,a,o);break;case 43:n.availabilityTimeOffset=new DataView(e.buffer).getFloat64(a,!0);break;case 22:n.availabilityTimeComplete=new DataView(e.buffer).getUint8(0)===0;break;case 70:let s={key:\"\",value:\"\"},u=new DataView(e.buffer),f=a,d=u.getUint32(f);f+=4,s.key=F(t,e.buffer,f,d),f+=d;let l=u.getUint32(f);f+=4,s.value=F(t,e.buffer,f,l),n.namespaces===void 0?n.namespaces=[s]:n.namespaces.push(s);break}}}function Ho(n,e,t,r){return function(a){switch(a){case 15:{let o={value:\"\",attributes:{}};n.baseURLs.push(o);let s=D,u=pt(o,e);t.pushParsers(a,s,u);break}case 2:{let o={children:{adaptations:[],baseURLs:[],eventStreams:[]},attributes:{}};n.periods.push(o);let s=Rr(o.children,e,t,r),u=Pr(o.attributes,e);t.pushParsers(a,s,u);break}case 3:{let o={};n.utcTimings.push(o);let s=D,u=qe(o,e);t.pushParsers(a,s,u);break}case 10:{let o={children:{cencPssh:[]},attributes:{}};n.contentProtections===void 0&&(n.contentProtections=[]),n.contentProtections.push(o);let s=gt(o,e);t.pushParsers(a,D,s);break}default:t.pushParsers(a,D,D);break}}}function Go(n,e,t){let r,i=new TextDecoder;return function(o,s,u){switch(o){case 0:e.id=F(i,t.buffer,s,u);break;case 2:e.profiles=F(i,t.buffer,s,u);break;case 33:e.type=F(i,t.buffer,s,u);break;case 34:let f=F(i,t.buffer,s,u);e.availabilityStartTime=new Date(f).getTime()/1e3;break;case 35:let d=F(i,t.buffer,s,u);e.availabilityEndTime=new Date(d).getTime()/1e3;break;case 36:let l=F(i,t.buffer,s,u);e.publishTime=new Date(l).getTime()/1e3;break;case 68:r=new DataView(t.buffer),e.duration=r.getFloat64(s,!0);break;case 37:r=new DataView(t.buffer),e.minimumUpdatePeriod=r.getFloat64(s,!0);break;case 38:r=new DataView(t.buffer),e.minBufferTime=r.getFloat64(s,!0);break;case 39:r=new DataView(t.buffer),e.timeShiftBufferDepth=r.getFloat64(s,!0);break;case 40:r=new DataView(t.buffer),e.suggestedPresentationDelay=r.getFloat64(s,!0);break;case 41:r=new DataView(t.buffer),e.maxSegmentDuration=r.getFloat64(s,!0);break;case 42:r=new DataView(t.buffer),e.maxSubsegmentDuration=r.getFloat64(s,!0);break;case 66:let m=F(i,t.buffer,s,u);n.locations.push(m);break;case 70:let p={key:\"\",value:\"\"};r=new DataView(t.buffer);let g=s,h=r.getUint32(g);g+=4,p.key=F(i,t.buffer,g,h),g+=h;let I=r.getUint32(g);g+=4,p.value=F(i,t.buffer,g,I),e.namespaces===void 0?e.namespaces=[p]:e.namespaces.push(p);break}}}function Ui(n,e,t,r){return function(a){switch(a){case 1:n.mpd={children:{baseURLs:[],locations:[],periods:[],utcTimings:[]},attributes:{}};let o=Ho(n.mpd.children,e,t,r),s=Go(n.mpd.children,n.mpd.attributes,e);t.pushParsers(a,o,s);break;default:t.pushParsers(a,D,D);break}}}function Ko(n,e,t,r){return function(a){switch(a){case 2:{let o={children:{adaptations:[],baseURLs:[],eventStreams:[]},attributes:{}};n.periods.push(o);let s=Rr(o.children,e,t,r),u=Pr(o.attributes,e);t.pushParsers(a,s,u);break}default:t.pushParsers(a,D,D);break}}}var gn=class{constructor(){this._currentNodeId=null,this.childrenParser=D,this.attributeParser=D,this._stack=[{nodeId:null,children:D,attribute:D}]}pushParsers(e,t,r){this._currentNodeId=e,this.childrenParser=t,this.attributeParser=r,this._stack.push({nodeId:e,attribute:r,children:t})}popIfCurrent(e){if(this._currentNodeId!==e)return;this._stack.pop();let{nodeId:t,children:r,attribute:i}=this._stack[this._stack.length-1];this._currentNodeId=t,this.attributeParser=i,this.childrenParser=r}reset(){this.childrenParser=D,this.attributeParser=D,this._stack=[{nodeId:null,children:D,attribute:D}]}};var Id=15e3,hn=class{constructor(){this._parsersStack=new gn,this._instance=null,this._mpdData=null,this._linearMemory=null,this.status=\"uninitialized\",this._initProm=null,this._warnings=[],this._isParsing=!1}waitForInitialization(){var e;return(e=this._initProm)!=null?e:Promise.reject(\"No initialization performed yet.\")}async initialize(e){if(this.status!==\"uninitialized\")return Promise.reject(new Error(\"DashWasmParser already initialized.\"));if(!this.isCompatible())return this.status=\"failure\",Promise.reject(new Error(\"Target not compatible with WebAssembly.\"));this.status=\"initializing\";let t=this._parsersStack,r=new TextDecoder,i=this,a={env:{memoryBase:0,tableBase:0,memory:new WebAssembly.Memory({initial:10}),table:new WebAssembly.Table({initial:1,element:\"anyfunc\"}),onTagOpen:f,onCustomEvent:m,onAttribute:l,readNext:p,onTagClose:d}},o=null,s;typeof e.wasmUrl==\"string\"?s=fetch(e.wasmUrl):(o=URL.createObjectURL(new Blob([e.wasmUrl],{type:\"application/wasm\"})),s=fetch(o));let u=typeof WebAssembly.instantiateStreaming==\"function\"?WebAssembly.instantiateStreaming(s,a):Promise.reject(\"`WebAssembly.instantiateStreaming` API not available\");return this._initProm=u.catch(async g=>{o!==null&&(URL.revokeObjectURL(o),o=null),c.warn(\"Unable to call `instantiateStreaming` on WASM\",g instanceof Error?g:\"\");let h=await s;if(h.status<200||h.status>=300)throw new Error(\"WebAssembly request failed. status: \"+String(h.status));let I=await h.arrayBuffer();return WebAssembly.instantiate(I,a)}).then(g=>{o!==null&&(URL.revokeObjectURL(o),o=null),this._instance=g,this._linearMemory=this._instance.instance.exports.memory,this.status=\"initialized\"}).catch(g=>{let h=g instanceof Error?g.toString():\"Unknown error\";throw c.warn(\"DW: Could not create DASH-WASM parser:\",h),this.status=\"failure\",g}),this._initProm;function f(g){return t.childrenParser(g)}function d(g){return t.popIfCurrent(g)}function l(g,h,I){return t.attributeParser(g,h,I)}function m(g,h,I){let y=i._linearMemory,T=new Uint8Array(y.buffer,h,I);if(g===1){let P=r.decode(T);c.warn(\"WASM Error Event:\",P),i._warnings.push(new Error(P))}else if(g===0){let P=r.decode(T);c.warn(\"WASM Log Event:\",P)}}function p(g,h){if(i._mpdData===null)throw new Error(\"DashWasmParser Error: No MPD to read.\");let I=i._linearMemory,{mpd:y,cursor:T}=i._mpdData,P=Math.min(h,Id,y.byteLength-T);return new Uint8Array(I.buffer,g,P).set(new Uint8Array(y,T,P)),i._mpdData.cursor+=P,P}}runWasmParser(e,t){let[r,i]=this._parseMpd(e);if(r===null)throw new Error(\"DASH Parser: Unknown error while parsing the MPD\");let a=br(r,t,i);return this._processParserReturnValue(a)}isCompatible(){return No&&typeof Ee.TextDecoder==\"function\"}_parseMpd(e){var s;if(this._instance===null)throw new Error(\"DashWasmParser not initialized\");if(this._isParsing)throw new Error(\"Parsing operation already pending.\");this._isParsing=!0,this._mpdData={mpd:e,cursor:0};let t={},r=this._linearMemory,i=Ui(t,r,this._parsersStack,e);this._parsersStack.pushParsers(null,i,D),this._warnings=[];try{this._instance.instance.exports.parse()}catch(u){throw this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,u}let a=(s=t.mpd)!=null?s:null,o=this._warnings;return this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,[a,o]}_parseXlink(e){if(this._instance===null)throw new Error(\"DashWasmParser not initialized\");if(this._isParsing)throw new Error(\"Parsing operation already pending.\");this._isParsing=!0,this._mpdData={mpd:e,cursor:0};let t={periods:[]},r=this._linearMemory,i=Ko(t,r,this._parsersStack,e);this._parsersStack.pushParsers(null,i,D),this._warnings=[];try{this._instance.instance.exports.parse()}catch(s){throw this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,s}let{periods:a}=t,o=this._warnings;return this._parsersStack.reset(),this._warnings=[],this._isParsing=!1,[a,o]}_processParserReturnValue(e){if(e.type===\"done\")return e;if(e.type===\"needs-clock\"){let t=r=>{if(r.length!==1)throw new Error(\"DASH parser: wrong number of loaded ressources.\");let i=e.value.continue(r[0].responseData);return this._processParserReturnValue(i)};return{type:\"needs-resources\",value:{urls:[e.value.url],format:\"string\",continue:t}}}else if(e.type===\"needs-xlinks\"){let t=r=>{let i=[];for(let o=0;o<r.length;o++){let{responseData:s,receivedTime:u,sendingTime:f,url:d}=r[o];if(!s.success)throw s.error;let[l,m]=this._parseXlink(s.data);i.push({url:d,receivedTime:u,sendingTime:f,parsed:l,warnings:m})}let a=e.value.continue(i);return this._processParserReturnValue(a)};return{type:\"needs-resources\",value:{urls:e.value.xlinksUrls,format:\"arraybuffer\",continue:t}}}else We(e)}};var jo=hn;var Ct=class{constructor(e,t){this._last=e,this._wanted=t}serialize(){return[this._last,this._wanted]}getPolled(){return this._last}getWanted(){var e;return(e=this._wanted)!=null?e:this._last}forceWantedPosition(e){this._wanted=e}isAwaitingFuturePosition(){return this._wanted!==null}};function vr(n,e,t){let r=e(n.getReference(),t);return{getCurrentTime(){return n.getCurrentTime()},getReadyState(){return n.getReadyState()},getPlaybackRate(){return n.getPlaybackRate()},getIsPaused(){return n.getIsPaused()},getReference(){return r},listen(i,a){var o;t.isCancelled()||((o=a==null?void 0:a.clearSignal)==null?void 0:o.isCancelled())===!0||r.onUpdate(i,{clearSignal:a==null?void 0:a.clearSignal,emitCurrentValue:a==null?void 0:a.includeLastObservation})},deriveReadOnlyObserver(i){return vr(this,i,t)}}}var In=class{constructor(e,t,r,i){this._src=e,this._contentId=t,this._messageSender=r,this._cancelSignal=i}getCurrentTime(){}getReadyState(){}getIsPaused(){}getReference(){return this._src}setPlaybackRate(e){this._messageSender({type:\"update-playback-rate\",contentId:this._contentId,value:e})}getPlaybackRate(){}listen(e,t){var r;this._cancelSignal.isCancelled()||((r=t==null?void 0:t.clearSignal)==null?void 0:r.isCancelled())===!0||this._src.onUpdate(e,{clearSignal:t==null?void 0:t.clearSignal,emitCurrentValue:t==null?void 0:t.includeLastObservation})}deriveReadOnlyObserver(e){return vr(this,e,this._cancelSignal)}};function Li(n,e){return(t,r,i)=>new Promise((a,o)=>{let s=Date.now()-L(),u=!1,m={reject:h=>{var P,E;if(u||i.isCancelled())return;u=!0,i.deregister(g);let I=h,y=(P=I==null?void 0:I.message)!=null?P:\"Unknown error when fetching the Manifest through a custom manifestLoader.\",T=new Ke(y,(E=I==null?void 0:I.canRetry)!=null?E:!1,I==null?void 0:I.xhr);o(T)},resolve:h=>{if(u||i.isCancelled())return;u=!0,i.deregister(g);let I=h.receivingTime!==void 0?h.receivingTime-s:void 0,y=h.sendingTime!==void 0?h.sendingTime-s:void 0;a({responseData:h.data,size:h.size,requestDuration:h.duration,url:h.url,receivedTime:I,sendingTime:y})},fallback:()=>{u||i.isCancelled()||(u=!0,i.deregister(g),e(t,r,i).then(a,o))}},p=n({url:t,timeout:r.timeout},m);i.register(g);function g(h){u||(u=!0,typeof p==\"function\"&&p(),o(h))}})}function bd(n){return function(t,r,i){if(t===void 0)throw new Error(\"Cannot perform HTTP(s) request. URL not known\");switch(n){case\"arraybuffer\":return le({url:t,responseType:\"arraybuffer\",timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:i});case\"text\":return le({url:t,responseType:\"text\",timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:i});case\"document\":return le({url:t,responseType:\"document\",timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:i});default:We(n)}}}function Fi({customManifestLoader:n},e){let t=bd(e);return typeof n!=\"function\"?t:Li(n,t)}function zi(n){let{referenceDateTime:e}=n,t=n.serverSyncInfos!==void 0?n.serverSyncInfos.serverTimestamp-n.serverSyncInfos.clientTime:void 0;return function(i,a,o,s,u){var T;let{responseData:f}=i,d=a.externalClockOffset,l=(T=i.url)!=null?T:a.originalUrl,m=t!=null?t:d,g={unsafelyBaseOnPreviousManifest:a.unsafeMode?a.previousManifest:null,url:l,referenceDateTime:e,externalClockOffset:m},h=ae.dashParsers;if(h.wasm===null||h.wasm.status===\"uninitialized\"||h.wasm.status===\"failure\")return c.debug(\"DASH: WASM MPD Parser not initialized. Running JS one.\"),I();{let P=Ed(f);if(!Rd(P))return c.info(\"DASH: MPD doesn't seem to be UTF-8-encoded. Running JS parser instead of the WASM one.\"),I();if(h.wasm.status===\"initialized\"){c.debug(\"DASH: Running WASM MPD Parser.\");let E=h.wasm.runWasmParser(P,g);return y(E)}else return c.debug(\"DASH: Awaiting WASM initialization before parsing the MPD.\"),h.wasm.waitForInitialization().catch(()=>{}).then(()=>{if(h.wasm===null||h.wasm.status!==\"initialized\")return c.warn(\"DASH: WASM MPD parser initialization failed. Running JS parser instead\"),I();c.debug(\"DASH: Running WASM MPD Parser.\");let C=h.wasm.runWasmParser(P,g);return y(C)})}function I(){if(h.fastJs!==null){let P=_d(f),E=h.fastJs(P,g);return y(E)}else if(h.native!==null){let P=Td(f),E=h.native(P,g);return y(E)}else throw new Error(\"No MPD parser is imported\")}function y(P){if(P.type===\"done\"){if(P.value.warnings.length>0&&o(P.value.warnings),s.isCancelled())return Promise.reject(s.cancellationError);let R=[];return{manifest:new Nt(P.value.parsed,n,R),url:l,warnings:R}}let{value:E}=P,C=E.urls.map(R=>u(()=>{let k=U.getCurrent().DEFAULT_REQUEST_TIMEOUT,_=U.getCurrent().DEFAULT_CONNECTION_TIMEOUT;return E.format===\"string\"?le({url:R,responseType:\"text\",timeout:k,connectionTimeout:_,cancelSignal:s}):le({url:R,responseType:\"arraybuffer\",timeout:k,connectionTimeout:_,cancelSignal:s})}).then(k=>{if(E.format===\"string\"){if(typeof k.responseData!=\"string\")throw new Error(\"External DASH resources should have been a string\");return H(k,{responseData:{success:!0,data:k.responseData}})}else{if(!(k.responseData instanceof ArrayBuffer))throw new Error(\"External DASH resources should have been ArrayBuffers\");return H(k,{responseData:{success:!0,data:k.responseData}})}},k=>{let _=he(k,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"An unknown error occured when parsing ressources.\"});return H({},{size:void 0,requestDuration:void 0,responseData:{success:!1,error:_}})}));return Promise.all(C).then(R=>E.format===\"string\"?(Sd(R),y(E.continue(R))):(yd(R),y(E.continue(R))))}}}function Sd(n){b.CURRENT_ENV!==b.PRODUCTION&&n.forEach(e=>{let{responseData:t}=e;if(!(t.success&&typeof t.data==\"string\")&&t.success)throw new Error(\"Invalid data given to the LoadedRessource\")})}function yd(n){b.CURRENT_ENV!==b.PRODUCTION&&n.forEach(e=>{let{responseData:t}=e;if(!(t.success&&t.data instanceof ArrayBuffer)&&t.success)throw new Error(\"Invalid data given to the LoadedRessource\")})}function _d(n){if(n instanceof ArrayBuffer)return Le(new Uint8Array(n));if(typeof n==\"string\")return n;if(n instanceof Document)return n.documentElement.outerHTML;throw new Error(\"DASH Manifest Parser: Unrecognized Manifest format\")}function Td(n){if(n instanceof ArrayBuffer)return new DOMParser().parseFromString(Le(new Uint8Array(n)),\"text/xml\");if(typeof n==\"string\")return new DOMParser().parseFromString(n,\"text/xml\");if(n instanceof Document)return n;throw new Error(\"DASH Manifest Parser: Unrecognized Manifest format\")}function Ed(n){if(n instanceof ArrayBuffer)return n;if(typeof n==\"string\")return mn(n).buffer;if(n instanceof Document)return mn(n.documentElement.innerHTML).buffer;throw new Error(\"DASH Manifest Parser: Unrecognized Manifest format\")}function Rd(n){let e=new DataView(n);return e.getUint16(0)===61371&&e.getUint8(2)===191?!0:!(e.getUint16(0)===65279||e.getUint16(0)===65534)}function we([n,e]){return e===1/0?`bytes=${n}-`:`bytes=${n}-${e}`}function He(n,e){if(n===\"audio\"||n===\"video\")return e===\"video/mp4\"||e===\"audio/mp4\"?\"mp4\":e===\"video/webm\"||e===\"audio/webm\"?\"webm\":void 0;if(n===\"text\")return e===\"application/mp4\"?\"mp4\":void 0}var W=class{constructor(){let[e,t]=Pd();this._isUsed=!1,this._trigger=e,this.signal=new Wi(t)}isUsed(){return this._isUsed}linkToSignal(e){let t=e.register(()=>{this.cancel()});return this.signal.register(t),t}cancel(e){if(this._isUsed)return;this._isUsed=!0;let t=e!=null?e:new ie;this._trigger(t)}static isCancellationError(e){return e instanceof ie}},Wi=class{constructor(e){this._isCancelled=!1,this.cancellationError=null,this._listeners=[],e(t=>{for(this.cancellationError=t,this._isCancelled=!0;this._listeners.length>0;)try{let r=this._listeners.pop();r==null||r(t)}catch(r){c.error(\"Error while calling clean up listener\",r instanceof Error?r.toString():\"Unknown error\")}})}isCancelled(){return this._isCancelled}register(e){return this._isCancelled?(Ie(this.cancellationError!==null),e(this.cancellationError),D):(this._listeners.push(e),()=>this.deregister(e))}deregister(e){for(let t=this._listeners.length-1;t>=0;t--)this._listeners[t]===e&&this._listeners.splice(t,1)}},ie=class n extends Error{constructor(){let e=\"This task was cancelled.\";super(e),Object.setPrototypeOf(this,n.prototype),this.name=\"CancellationError\"}};function Pd(){let n=D;return[function(t){n(t)},function(t){n=t}]}function At(...n){let e=n.length,t=-1,r=0,i;for(;++t<e;)i=n[t],r+=typeof i==\"number\"?i:i.length;let a=new Uint8Array(r),o=0;for(t=-1;++t<e;)i=n[t],typeof i==\"number\"?o+=i:i.length>0&&(a.set(i,o),o+=i.length);return a}function Yo(n,e){return(n[e+0]<<8)+(n[e+1]<<0)}function Vi(n,e){return n[e+0]*65536+n[e+1]*256+n[e+2]}function te(n,e){return n[e+0]*16777216+n[e+1]*65536+n[e+2]*256+n[e+3]}function ht(n,e){return(n[e+0]*16777216+n[e+1]*65536+n[e+2]*256+n[e+3])*4294967296+n[e+4]*16777216+n[e+5]*65536+n[e+6]*256+n[e+7]}function Qe(n,e){let t=n.length,r=0;for(;r+8<=t;){let i=te(n,r);if(i===0)i=t-r;else if(i===1){if(r+16>t)return-1;i=ht(n,r+8)}if(isNaN(i)||i<=0)return-1;if(te(n,r+4)===e)return r+i<=t?r:-1;r+=i}return-1}function Cr(n){let e=0,t=[],r=null;for(;e<=n.length;){if(e===n.length){r=null;break}r=n.subarray(e,1/0);let i=Qe(r,1836019558);if(i<0)break;let a=te(n,i+e),o=e+i+a;if(o>n.length)break;let s=Qe(r,1835295092);if(s<0)break;let u=te(n,s+e),f=e+s+u;if(f>n.length)break;let d=Math.max(o,f),l=n.subarray(e,d);t.push(l),e=d}return t.length===0?[null,r]:[t,r]}function vd(n,e,t){return new Uint8Array(Array.prototype.slice.call(n,e,t))}function Cd(n,e,t){return n.slice(e,t)}var qi=typeof Uint8Array.prototype.slice==\"function\"?Cd:vd;function Hi(n,e){let t=n;for(let r of e){let i=ue(t,r);if(i===null)return null;t=i}return t}function ue(n,e){let t=Wt(n,e);return t!==null?n.subarray(t[1],t[2]):null}function Qo(n,e){let t=[],r=n;for(;;){let i=Wt(r,e);if(i===null)return t;Ie(i[2]!==0&&r.length!==0),t.push(r.subarray(i[1],i[2])),r=r.subarray(i[2])}}function Wt(n,e){let t=n.length,r=0,i,a=0,o;for(;r+8<=t;){if(o=r,a=te(n,o),o+=4,i=te(n,o),o+=4,a===0)a=t-r;else if(a===1){if(o+8>t)return null;a=ht(n,o),o+=8}if(a<0)throw new Error(\"ISOBMFF: Size out of range\");if(i===e)return e===1970628964&&(o+=16),[r,o,r+a];r+=a}return null}function Ar(n){let e=0,t=ue(n,1836019574);if(t===null)return[];let r=[];for(;e<t.length;){let i;try{i=Wt(t,1886614376)}catch(s){let u=s instanceof Error?s:\"\";return c.warn(\"Error while removing PSSH from ISOBMFF\",u),r}if(i===null)return r;let a=qi(t,i[0],i[2]),o=$o(a,i[1]-i[0]);o!==void 0&&r.push({systemId:o,data:a}),t[i[0]+4]=102,t[i[0]+5]=114,t[i[0]+6]=101,t[i[0]+7]=101,e=i[2]}return r}function $o(n,e){if(n[e]>1){c.warn(\"ISOBMFF: un-handled PSSH version\");return}let t=e+4;if(t+16>n.length)return;let r=qi(n,t,t+16);return To(r)}function Gi(n){let e=ue(n,1836019558);return e===null?null:ue(e,1953653094)}function Xo(n){return Qo(n,1836019558).reduce((t,r)=>{let i=ue(r,1953653094);return i!==null&&t.push(i),t},[])}function Ki(n){return ue(n,1835295092)}function ji(n){let e=ue(n,1836019574);if(e===null)return null;let t=ue(e,1953653099);return t===null?null:ue(t,1835297121)}function Zo(n,e=0){return ue(n.subarray(e),1701671783)}function bn(n,e){let t=Wt(n,1936286840);if(t===null)return null;let r=e,i=t[2]-t[0],a=t[1],o=n[a];a+=8;let s=te(n,a);a+=4;let u;if(o===0)u=te(n,a),a+=4,r+=te(n,a)+i,a+=4;else if(o===1)u=ht(n,a),a+=8,r+=ht(n,a)+i,a+=8;else return null;let f=[];a+=2;let d=Yo(n,a);for(a+=2;--d>=0;){let l=te(n,a);a+=4;let m=(l&2147483648)>>>31,p=l&2147483647;if(m===1)throw new Error(\"sidx with reference_type `1` not yet implemented\");let g=te(n,a);a+=4,a+=4,f.push({time:u,duration:g,timescale:s,range:[r,r+p-1]}),u+=g,r+=p}return f}function Yi(n){let e=Gi(n);if(e===null)return;let t=ue(e,1952867444);if(t===null)return;let r=t[0];if(r===1)return ht(t,4);if(r===0)return te(t,4)}function Ad(n){let e=ue(n,1952868452);if(e===null)return;let t=1,r=Vi(e,t);t+=3;let i=(r&1)>0,a=(r&2)>0;return(r&8)>0?(t+=4,i&&(t+=8),a&&(t+=4),te(e,t)):void 0}function Qi(n){let e=Xo(n);if(e.length===0)return;let t=0;for(let r of e){let i=ue(r,1953658222);if(i===null)return;let a=0,o=i[a];if(a+=1,o>1)return;let s=Vi(i,a);a+=3;let u=(s&256)>0,f=0;if(!u&&(f=Ad(r),f===void 0))return;let d=(s&1)>0,l=(s&4)>0,m=(s&512)>0,p=(s&1024)>0,g=(s&2048)>0,h=te(i,a);a+=4,d&&(a+=4),l&&(a+=4);let I=h,y=0;for(;I-- >0;)u?(y+=te(i,a),a+=4):y+=f,m&&(a+=4),p&&(a+=4),g&&(a+=4);t+=y}return t}function Sn(n){let e=ji(n);if(e===null)return;let t=ue(e,1835296868);if(t===null)return;let r=0,i=t[r];if(r+=4,i===1)return te(t,r+16);if(i===0)return te(t,r+8)}function Jo(n){let e=[],t=0;for(;t<n.length;){let r=Zo(n,t);if(r===null)break;let i=r.length;t+=i;let a=r[0];if(a!==0)c.warn(\"ISOBMFF: EMSG version \"+a.toString()+\" not supported.\");else{let o=4,{end:s,string:u}=Ti(r,o);o=s;let{end:f,string:d}=Ti(r,o);o=f;let l=te(r,o);o+=4;let m=te(r,o);o+=4;let p=te(r,o);o+=4;let g=te(r,o);o+=4;let h=r.subarray(o,i),I={schemeIdUri:u,value:d,timescale:l,presentationTimeDelta:m,eventDuration:p,id:g,messageData:h};e.push(I)}}if(e.length!==0)return e}function es(n){let e=Hi(n,[1836019574,1953653099,1835297121,1835626086,1937007212,1937011556]);if(e===null)return null;let t=e.subarray(8),r=ue(t,1701733238),i=0;if(r===null?(i=28,r=ue(t,1701733217)):i=78,r===null)return null;let a=Hi(r.subarray(i),[1936289382,1935894633,1952804451]);if(a===null||a.byteLength<24)return null;let o=a.subarray(8,24);return o.every(s=>s===0)?null:o}function $i(n,e){if(e){if(Qe(n,1718909296)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `ftyp` box\");if(Qe(n,1836019574)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `moov` box\")}else{if(Qe(n,1836019558)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `moof` box\");if(Qe(n,1835295092)<0)throw new Re(\"INTEGRITY_ERROR\",\"Incomplete `mdat` box\")}}function yn(n){return(e,t,r,i,a)=>{return new Promise((s,u)=>{let f=new W,d=f.linkToSignal(i);f.signal.register(u),n(e,t,r,f.signal,Me(ge({},a),{onNewChunk(m){try{o(m),a.onNewChunk(m)}catch(p){l(),f.cancel(),u(p)}}})).then(m=>{if(l(),!f.isUsed()){if(m.resultType===\"segment-loaded\")try{o(m.resultData.responseData)}catch(p){u(p);return}s(m)}},m=>{l(),u(m)});function l(){f.signal.deregister(u),d()}});function o(s){!(s instanceof ArrayBuffer)&&!(s instanceof Uint8Array)||He(t.type,t.mimeType)!==\"mp4\"||$i(new Uint8Array(s),t.segment.isInit)}}}function _n(n,e){return n===null?null:e.url===null?n.baseUrl:pr(n.baseUrl,e.url)}function Tn(n,e,t,r,i){if(e.range===void 0)return le({url:n,responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}).then(s=>({resultType:\"segment-loaded\",resultData:s}));if(e.indexRange===void 0)return le({url:n,headers:{Range:we(e.range)},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}).then(s=>({resultType:\"segment-loaded\",resultData:s}));if(e.range[1]+1===e.indexRange[0])return le({url:n,headers:{Range:we([e.range[0],e.indexRange[1]])},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}).then(s=>({resultType:\"segment-loaded\",resultData:s}));let a=le({url:n,headers:{Range:we(e.range)},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress}),o=le({url:n,headers:{Range:we(e.indexRange)},responseType:\"arraybuffer\",timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:r,onProgress:i.onProgress});return Promise.all([a,o]).then(([s,u])=>{let f=At(new Uint8Array(s.responseData),new Uint8Array(u.responseData)),d=Math.min(s.sendingTime,u.sendingTime),l=Math.max(s.receivedTime,u.receivedTime);return{resultType:\"segment-loaded\",resultData:{url:n,responseData:f,size:s.size+u.size,requestDuration:l-d,sendingTime:d,receivedTime:l}}})}function En(n,e,t,r,i){let{segment:a}=e,o=a.range!==void 0?{Range:we(a.range)}:void 0,s=null;function u(f){let d=new Uint8Array(f.chunk),l=s!==null?At(s,d):d,m=Cr(l),p=m[0];s=m[1],!(p!==null&&(p.forEach(g=>{r.onNewChunk(g)}),i.isCancelled()))&&(r.onProgress({duration:f.duration,size:f.size,totalSize:f.totalSize}),i.isCancelled())}return ar({url:n,headers:o,onData:u,timeout:t.timeout,connectionTimeout:t.connectionTimeout,cancelSignal:i}).then(f=>({resultType:\"chunk-complete\",resultData:f}))}function ts(n,e,t,r,i,a){if(e.segment.isInit)return Tn(n,e.segment,r,a,i);let o=He(e.type,e.mimeType);if(t&&(o===\"mp4\"||o===void 0)){if(Zt())return En(n,e,r,i,a);Xe(\"DASH: Your browser does not have the fetch API. You will have a higher chance of rebuffering when playing close to the live edge\")}let{segment:s}=e;return le({url:n,responseType:\"arraybuffer\",headers:s.range!==void 0?{Range:we(s.range)}:void 0,timeout:r.timeout,connectionTimeout:r.connectionTimeout,cancelSignal:a,onProgress:i.onProgress}).then(u=>({resultType:\"segment-loaded\",resultData:u}))}function Xi({lowLatencyMode:n,segmentLoader:e,checkMediaSegmentIntegrity:t}){return t!==!0?r:yn(r);function r(i,a,o,s,u){let f=_n(i,a.segment);return f===null?Promise.resolve({resultType:\"segment-created\",resultData:null}):n||e===void 0?ts(f,a,n,o,u,s):new Promise((d,l)=>{let m=!1,y={reject:R=>{var x,M;if(m||s.isCancelled())return;m=!0,s.deregister(C);let k=R,_=(x=k==null?void 0:k.message)!=null?x:\"Unknown error when fetching a DASH segment through a custom segmentLoader.\",A=new Ke(_,(M=k==null?void 0:k.canRetry)!=null?M:!1,k==null?void 0:k.xhr);l(A)},resolve:R=>{m||s.isCancelled()||(m=!0,s.deregister(C),d({resultType:\"segment-loaded\",resultData:{responseData:R.data,size:R.size,requestDuration:R.duration}}))},progress:R=>{m||s.isCancelled()||u.onProgress({duration:R.duration,size:R.size,totalSize:R.totalSize})},fallback:()=>{m||s.isCancelled()||(m=!0,s.deregister(C),ts(f,a,n,o,u,s).then(d,l))}},T;a.segment.range!==void 0&&(T=[a.segment.range],a.segment.indexRange!==void 0&&T.push(a.segment.indexRange));let P={isInit:a.segment.isInit,timeout:o.timeout,byteRanges:T,trackType:a.type,url:f},E=e(P,y);s.register(C);function C(R){m||(m=!0,typeof E==\"function\"&&E(),l(R))}})}}var Ji=408125543,ns=357149030,kd=2807729,xd=17545,Md=475249515,Od=187,wd=179,Dd=183,Nd=241;function It(n,e,t,[r,i]){let a=r;for(;a<i;){let o=Ud(t,a);if(o===null)return null;let{value:s,length:u}=o,f=a+u,d=Ld(t,f);if(d===null)return null;let{length:l,value:m}=d,p=f+l,g=p+m;if(s===n)return[p,g];if(e.length>0){for(let h=0;h<e.length;h++)if(s===e[h]){let I=e.slice(h+1,e.length);return It(n,I,t,[p,g])}}a=g}return null}function kr(n,e){let t=It(kd,[Ji,ns],n,[e,n.length]);if(t===null)return null;let r=t[1]-t[0];return 1e9/Zi(n,t[0],r)}function Bd(n,e){let t=It(xd,[Ji,ns],n,[e,n.length]);if(t===null)return null;let r=t[1]-t[0];return r===4?Fd(n,t[0]):r===8?zd(n,t[0]):null}function ea(n,e){let t=It(Ji,[],n,[e,n.length]);if(t===null)return null;let[r,i]=t,a=kr(n,r);if(a===null)return null;let o=Bd(n,r);if(o===null)return null;let s=It(Md,[],n,[r,i]);if(s===null)return null;let u=[],f=s[0];for(;f<s[1];){let l=It(Od,[],n,[f,s[1]]);if(l===null)break;let m=It(wd,[],n,[l[0],l[1]]);if(m===null)return null;let p=Zi(n,m[0],m[1]-m[0]),g=It(Nd,[Dd],n,[l[0],l[1]]);if(g===null)return null;let h=Zi(n,g[0],g[1]-g[0])+r;u.push({time:p,rangeStart:h}),f=l[1]}let d=[];for(let l=0;l<u.length;l++){let m=u[l];l===u.length-1?d.push({time:m.time,timescale:a,duration:l===0?o:o-m.time,range:[m.rangeStart,1/0]}):d.push({time:m.time,timescale:a,duration:u[l+1].time-m.time,range:[m.rangeStart,u[l+1].rangeStart-1]})}return d}function rs(n,e){for(let t=1;t<=8;t++)if(n[e]>=Math.pow(2,8-t))return t}function Ud(n,e){let t=rs(n,e);if(t===void 0)return c.warn(\"webm: unrepresentable length\"),null;if(e+t>n.length)return c.warn(\"webm: impossible length\"),null;let r=0;for(let i=0;i<t;i++)r=n[e+i]*Math.pow(2,(t-i-1)*8)+r;return{length:t,value:r}}function Ld(n,e){let t=rs(n,e);if(t===void 0)return c.warn(\"webm: unrepresentable length\"),null;if(e+t>n.length)return c.warn(\"webm: impossible length\"),null;let r=(n[e]&(1<<8-t)-1)*Math.pow(2,(t-1)*8);for(let i=1;i<t;i++)r=n[e+i]*Math.pow(2,(t-i-1)*8)+r;return{length:t,value:r}}function Fd(n,e){return new DataView(n.buffer).getFloat32(e)}function zd(n,e){return new DataView(n.buffer).getFloat64(e)}function Zi(n,e,t){let r=0;for(let i=0;i<t;i++)r=n[e+i]*Math.pow(2,(t-i-1)*8)+r;return r}function Rn(n,e,t,r){let i=Yi(n);if(i===void 0||r===void 0)return null;let a=t.timestampOffset!==void 0?i+t.timestampOffset*r:i,o=Qi(n);if(a<0&&(o!==void 0&&(o+=a),a=0),e||!t.complete)return o===void 0&&c.warn(\"DASH: Chunked segments should indicate a duration through their trun boxes\"),{time:a/r,duration:o!==void 0?o/r:void 0};let s,u=t.duration*r,f=Math.min(r*.9,u/4);return o!==void 0&&Math.abs(o-u)<=f&&(s=o),{time:a/r,duration:s!==void 0?s/r:s}}function Wd(n,e){if(n.length<=0)return!1;let t=n.length;for(let r=0;r<t;r++){let i=n[r],a=e,{messageData:o}=i,s=Le(o),u=Date.parse(s);if(a===void 0||u===void 0||isNaN(u)||u>=a)return!0}return!1}function ta(n,e){if(n.length===0)return;let{manifestRefreshEventsFromEMSGs:t,EMSGs:r}=n.reduce((o,s)=>(s.schemeIdUri===\"urn:mpeg:dash:event:2012\"&&s.value===\"1\"?(o.manifestRefreshEventsFromEMSGs===void 0&&(o.manifestRefreshEventsFromEMSGs=[]),o.manifestRefreshEventsFromEMSGs.push(s)):(o.EMSGs===void 0&&(o.EMSGs=[]),o.EMSGs.push(s)),o),{manifestRefreshEventsFromEMSGs:void 0,EMSGs:void 0}),i=r==null?void 0:r.map(o=>({type:\"emsg\",value:o})),a=e===void 0||t===void 0?!1:Wd(t,e);return{inbandEvents:i,needsManifestRefresh:a}}function na({__priv_patchLastSegmentInSidx:n}){return function(t,r,i){var P,E;let{segment:a,periodStart:o,periodEnd:s}=r,{data:u,isChunked:f}=t,d=[o,s];if(u===null)return a.isInit?{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:void 0}:{segmentType:\"media\",chunkData:null,chunkSize:0,chunkInfos:null,chunkOffset:0,protectionData:[],appendWindow:d};let l=u instanceof Uint8Array?u:new Uint8Array(u),m=He(r.type,r.mimeType),p=m===\"mp4\"||m===void 0,g=[];if(p){let C=Ar(l),R;a.isInit&&(R=(P=es(l))!=null?P:void 0),(C.length>0||R!==void 0)&&g.push({initDataType:\"cenc\",keyId:R,initData:C})}if(!a.isInit){let C=p?Rn(l,f,a,i):null,R=(E=a.timestampOffset)!=null?E:0;if(p){let k=Jo(l);if(k!==void 0){let _=k.filter(x=>a.privateInfos===void 0||a.privateInfos.isEMSGWhitelisted===void 0?!1:a.privateInfos.isEMSGWhitelisted(x)),A=ta(_,r.manifestPublishTime);if(A!==void 0){let{needsManifestRefresh:x,inbandEvents:M}=A;return{segmentType:\"media\",chunkData:l,chunkSize:l.length,chunkInfos:C,chunkOffset:R,appendWindow:d,inbandEvents:M,protectionData:g,needsManifestRefresh:x}}}}return{segmentType:\"media\",chunkData:l,chunkSize:l.length,chunkInfos:C,chunkOffset:R,protectionData:g,appendWindow:d}}let{indexRange:h}=a,I;if(m===\"webm\")I=ea(l,0);else if(p&&(I=bn(l,Array.isArray(h)?h[0]:0),n===!0&&I!==null&&I.length>0)){let C=I[I.length-1];Array.isArray(C.range)&&(C.range[1]=1/0)}let y;p?y=Sn(l):m===\"webm\"&&(y=kr(l,0));let T=v(y)?void 0:y;return{segmentType:\"init\",initializationData:l,initializationDataSize:l.length,protectionData:g,initTimescale:T,segmentList:I!=null?I:void 0}}}function ra({lowLatencyMode:n,checkMediaSegmentIntegrity:e}){return e!==!0?t:yn(t);function t(r,i,a,o,s){let{segment:u}=i,{range:f}=u,d=_n(r,u);if(d===null)return Promise.resolve({resultType:\"segment-created\",resultData:null});if(u.isInit)return Tn(d,u,a,o,s);let l=He(i.type,i.mimeType),m=l===\"mp4\"||l===void 0;if(n&&m){if(Zt())return En(d,i,a,s,o);Xe(\"DASH: Your browser does not have the fetch API. You will have a higher chance of rebuffering when playing close to the live edge\")}return m?le({url:d,responseType:\"arraybuffer\",headers:Array.isArray(f)?{Range:we(f)}:null,timeout:a.timeout,connectionTimeout:a.connectionTimeout,onProgress:s.onProgress,cancelSignal:o}).then(p=>({resultType:\"segment-loaded\",resultData:p})):le({url:d,responseType:\"text\",headers:Array.isArray(f)?{Range:we(f)}:null,timeout:a.timeout,connectionTimeout:a.connectionTimeout,onProgress:s.onProgress,cancelSignal:o}).then(p=>({resultType:\"segment-loaded\",resultData:p}))}}function Vd(n){let e=Ki(n);return e===null?\"\":Le(e)}function qd(n){if(n===void 0)throw new Error(\"Cannot parse subtitles: unknown format\");switch(n.toLowerCase()){case\"stpp\":case\"stpp.ttml.im1t\":return\"ttml\";case\"wvtt\":return\"vtt\"}throw new Error(`The codec used for the subtitles \"${n}\" is not managed yet.`)}function Hd(n,e){switch(e){case\"application/ttml+xml\":return\"ttml\";case\"application/x-sami\":case\"application/smil\":return\"sami\";case\"text/vtt\":return\"vtt\"}if(n!==void 0&&n.toLowerCase()===\"srt\")return\"srt\";throw new Error(`could not find a text-track parser for the type ${e!=null?e:\"\"}`)}function is({segment:n,language:e,codecs:t},r,i,a){if(n.isInit)return null;let o,s;i===null?a?(o=n.time,s=n.end):c.warn(\"Transport: Unavailable time data for current text track.\"):(o=i.time,i.duration!==void 0?s=o+i.duration:!a&&n.complete&&(s=o+n.duration));let u=qd(t);return{data:Vd(r),type:u,language:e,start:o,end:s}}function as(n,e,t){let{segment:r}=n;if(r.isInit)return null;let i,a;t?c.warn(\"Transport: Unavailable time data for current text track.\"):(i=r.time,r.complete&&(a=r.time+r.duration));let o=Hd(n.codecs,n.mimeType);return{data:e,type:o,language:n.language,start:i,end:a}}function Gd(n,e,t,r,i){var m;let{segment:a}=t,{isInit:o,indexRange:s}=a,u;if(typeof n==\"string\"?u=mn(n):n instanceof Uint8Array?u=n:u=new Uint8Array(n),o){let p=bn(u,Array.isArray(s)?s[0]:0);if(i===!0&&p!==null&&p.length>0){let h=p[p.length-1];Array.isArray(h.range)&&(h.range[1]=1/0)}let g=Sn(u);return{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:g,segmentList:p!=null?p:void 0}}let f=Rn(u,e,a,r),d=is(t,u,f,e),l=(m=a.timestampOffset)!=null?m:0;return{segmentType:\"media\",chunkData:d,chunkSize:u.length,chunkInfos:f,chunkOffset:l,protectionData:[],appendWindow:[t.periodStart,t.periodEnd]}}function Kd(n,e,t){let{periodStart:r,periodEnd:i,segment:a}=t,{timestampOffset:o=0}=a;if(a.isInit)return{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:void 0};let s,u;if(typeof n!=\"string\"){let d=n instanceof Uint8Array?n:new Uint8Array(n);s=Le(d),u=d.length}else s=n;return{segmentType:\"media\",chunkData:as(t,s,e),chunkSize:u,chunkInfos:null,chunkOffset:o,protectionData:[],appendWindow:[r,i]}}function ia({__priv_patchLastSegmentInSidx:n}){return function(t,r,i){var l;let{periodStart:a,periodEnd:o,segment:s}=r,{data:u,isChunked:f}=t;if(u===null)return s.isInit?{segmentType:\"init\",initializationData:null,initializationDataSize:0,protectionData:[],initTimescale:void 0}:{segmentType:\"media\",chunkData:null,chunkSize:0,chunkInfos:null,chunkOffset:(l=s.timestampOffset)!=null?l:0,protectionData:[],appendWindow:[a,o]};let d=He(r.type,r.mimeType);if(d===\"webm\")throw new Error(\"Text tracks with a WEBM container are not yet handled.\");return d===\"mp4\"?Gd(u,f,r,i,n):Kd(u,f,r)}}function os(n){let e=Fi({customManifestLoader:n.manifestLoader},jd()?\"text\":\"arraybuffer\"),t=zi(n),r=Xi(n),i=na(n),a=ra(n),o=ia(n);return{manifest:{loadManifest:e,parseManifest:t},audio:{loadSegment:r,parseSegment:i},video:{loadSegment:r,parseSegment:i},text:{loadSegment:a,parseSegment:o}}}function jd(){return ae.dashParsers.wasm!==null&&(ae.dashParsers.wasm.status===\"initialized\"||ae.dashParsers.wasm.status===\"initializing\")}var ss=os;var kt=typeof queueMicrotask==\"function\"?queueMicrotask:function(e){Promise.resolve().then(e,()=>e())};var xt=class{constructor(e){this._array=[],this._sortingFn=e}add(...e){e.sort(this._sortingFn);let t=0;for(let r=0;r<e.length;r++){let i=e[r],a=!1;for(;!a&&t<this._array.length;)this._sortingFn(i,this._array[t])<0?(this._array.splice(t,0,i),a=!0):t++;a||this._array.push(i)}}length(){return this._array.length}get(e){if(e<0||e>=this._array.length)throw new Error(\"Invalid index.\");return this._array[e]}toArray(){return this._array.slice()}findFirst(e){return K(this._array,e)}has(e){return se(this._array,e)}removeElement(e){let t=this._array.indexOf(e);if(t>=0)return this._array.splice(t,1),t}head(){return this._array[0]}last(){return this._array[this._array.length-1]}shift(){return this._array.shift()}pop(){return this._array.pop()}};var Pn=class{constructor(e){this._weakMap=new WeakMap,this._fn=e}get(e){let t=this._weakMap.get(e);if(t===void 0){let r=this._fn(e);return this._weakMap.set(e,r),r}else return t}destroy(e){this._weakMap.delete(e)}};var Yd=.016666666666666666;function us(n,e){return Math.abs(n-e)<Yd}function ls(n,e){let t=Math.min(n.start,e.start),r=Math.max(n.end,e.end);return{start:t,end:r}}function Qd(n){for(let e=0;e<n.length;e++){let t=n[e];t.start===t.end&&n.splice(e--,1)}return n}function $d(n){for(let e=1;e<n.length;e++){let t=n[e-1],r=n[e];if(ms(t,r)){let i=ls(t,r);n.splice(--e,2,i)}}return n}function aa(n,e){return n.end<=e.start}function ds({start:n,end:e},t){return n<=t&&t<e}function fs(n,e){return ds(n,e.start)||n.start<e.end&&e.end<n.end||ds(e,n.start)}function ms(n,e){return us(e.start,n.end)||us(e.end,n.start)}function oa(n){let e=[];for(let t=0;t<n.length;t++)e.push({start:n.start(t),end:n.end(t)});return e}function Xd(n,e){for(let t=n.length-1;t>=0;t--){let r=n[t].start;if(e>=r){let i=n[t].end;if(e<i)return n[t]}}return null}function cs(n,e){let t=null,r=[];for(let i=0;i<n.length;i++){let a=n[i].start,o=n[i].end;e<a||e>=o?r.push({start:a,end:o}):t={start:a,end:o}}return{outerRanges:r,innerRange:t}}function xr(n,e){let t=Xd(n,e);return t!==null?t.end-e:1/0}function Vt(n,e){if(e.start===e.end)return n;let t=e,r=0;for(;r<n.length;r++){let i=n[r],a=fs(t,i),o=ms(t,i);if(a||o)t=ls(t,i),n.splice(r--,1);else if(r===0){if(aa(t,n[0]))break}else if(aa(n[r-1],t)&&aa(t,i))break}return n.splice(r,0,t),$d(Qd(n))}function Zd(n,e){let t=[];for(let r=0;r<e.length;r++)fs(n,e[r])&&t.push(e[r]);return t}function Mr(n,e){let t=[];for(let r=0;r<n.length;r++){let i=n[r],a=[],o=Zd(i,e);if(o.length>0)for(let s=0;s<o.length;s++){let u=o[s];a.push({start:Math.max(i.start,u.start),end:Math.min(i.end,u.end)})}if(a.length===0)t.push(i);else{let s=i.start;for(let u=0;u<a.length;u++)a[u].start>s&&t.push({start:s,end:a[u].start}),s=a[u].end;s<i.end&&t.push({start:s,end:i.end})}}return t}function Or({segmentSink:n,playbackObserver:e,maxBufferBehind:t,maxBufferAhead:r},i){let a,o=[];e.listen(u=>{a=u.position.getWanted(),o=u.buffered[n.bufferType],s()},{includeLastObservation:!0,clearSignal:i});function s(){o!==null&&Jd(n,a,o,t.getValue(),r.getValue(),i).catch(u=>{let f=u instanceof Error?u.message:\"Unknown error\";c.error(\"Could not run BufferGarbageCollector:\",f)})}t.onUpdate(s,{clearSignal:i}),r.onUpdate(s,{clearSignal:i}),s()}async function Jd(n,e,t,r,i,a){if(!isFinite(r)&&!isFinite(i))return Promise.resolve();let o=[],{innerRange:s,outerRanges:u}=cs(t,e),f=()=>{if(isFinite(r)){for(let l of u)e-r>=l.end?o.push(l):e>=l.end&&e-r>l.start&&e-r<l.end&&o.push({start:l.start,end:e-r});v(s)||e-r>s.start&&o.push({start:s.start,end:e-r})}},d=()=>{if(isFinite(i)){for(let l of u)e+i<=l.start?o.push(l):e<=l.start&&e+i<l.end&&e+i>l.start&&o.push({start:e+i,end:l.end});v(s)||e+i<s.end&&o.push({start:e+i,end:s.end})}};f(),d();for(let l of o)if(l.start<l.end){if(c.debug(\"GC: cleaning range from SegmentSink\",l.start,l.end),a.cancellationError!==null)throw a.cancellationError;await n.removeBuffer(l.start,l.end)}}var vn=class{constructor(e,t){this._history=[],this._lifetime=e,this._maxHistoryLength=t}addBufferedSegment(e,t){let r=L();this._history.push({date:r,buffered:t,context:e}),this._cleanHistory(r)}getHistoryFor(e){return this._history.filter(t=>Ze(t.context,e))}_cleanHistory(e){let t=e-this._lifetime,r=0;for(let i of this._history)if(i.date<t)r++;else break;if(r>0&&(this._history=this._history.splice(r)),this._history.length>this._maxHistoryLength){let i=this._history.length-this._maxHistoryLength;this._history=this._history.splice(i)}}};var Cn=class{constructor(){let{BUFFERED_HISTORY_RETENTION_TIME:e,BUFFERED_HISTORY_MAXIMUM_ENTRIES:t}=U.getCurrent();this._inventory=[],this._bufferedHistory=new vn(e,t)}reset(){this._inventory.length=0}synchronizeBuffered(e){var u,f,d,l,m,p,g;let t=this._inventory,r=0,i=t[0],{MINIMUM_SEGMENT_SIZE:a}=U.getCurrent(),o=i==null?void 0:i.infos.adaptation.type;if(c.hasLevel(\"DEBUG\")){let h=e.map(I=>`${I.start}-${I.end}`).join(\",\");c.debug(`SI: synchronizing ${o!=null?o:\"unknown\"} buffered ranges:`,h)}let s=e.length;for(let h=0;h<s;h++){if(i===void 0)return;let I=e[h].start,y=e[h].end;if(y-I<a){c.warn(\"SI: skipped range when synchronizing because it was too small\",o,I,y);continue}let T=r;for(;i!==void 0&&((u=i.bufferedEnd)!=null?u:i.end)-I<a;)i=t[++r];let P=null,E=r-T;if(E>0){let R=t[T+E-1];P={end:(f=R.bufferedEnd)!=null?f:R.end,precizeEnd:R.precizeEnd},c.debug(`SI: ${E} segments GCed.`,o);let k=t.splice(T,E);for(let _ of k)_.bufferedStart===void 0&&_.bufferedEnd===void 0&&_.status!==2&&this._bufferedHistory.addBufferedSegment(_.infos,null);r=T}if(i===void 0)return;if(y-((d=i.bufferedStart)!=null?d:i.start)>=a){if(el(i,I,P,o),r===t.length-1){gs(i,y,o);return}i=t[++r];let R=(l=i.bufferedStart)!=null?l:i.start,k=(m=i.bufferedEnd)!=null?m:i.end,_=h<s-1?e[h+1].start:void 0;for(;i!==void 0&&!(y<R||y-R<a&&k-y>=a||_!==void 0&&y-R<k-_);){let A=t[r-1];A.bufferedEnd===void 0&&(i.precizeStart?A.bufferedEnd=i.start:A.infos.segment.complete?A.bufferedEnd=A.end:A.bufferedEnd=i.start,c.debug(\"SI: calculating buffered end of contiguous segment\",o,A.bufferedEnd,A.end)),i.bufferedStart=A.bufferedEnd,i=t[++r],i!==void 0&&(R=(p=i.bufferedStart)!=null?p:i.start,k=(g=i.bufferedEnd)!=null?g:i.end)}}let C=t[r-1];C!==void 0&&gs(C,y,o)}if(!v(i)){let{SEGMENT_SYNCHRONIZATION_DELAY:h}=U.getCurrent(),I=L();for(let y=r;y<t.length;y++){let T=t[y];I-T.insertionTs>=h&&(c.debug(\"SI: A segment at the end has been completely GCed\",o,`${T.start}-${T.end}`),T.bufferedStart===void 0&&T.bufferedEnd===void 0&&T.status!==2&&this._bufferedHistory.addBufferedSegment(T.infos,null),t.splice(y,1),y--)}}o!==void 0&&c.hasLevel(\"DEBUG\")&&c.debug(`SI: current ${o} inventory timeline:\n`+tl(this._inventory))}insertChunk({period:e,adaptation:t,representation:r,segment:i,chunkSize:a,start:o,end:s},u,f){if(i.isInit)return;let d=t.type;if(o>=s){c.warn(\"SI: Invalid chunked inserted: starts before it ends\",d,o,s);return}let l=this._inventory,m={status:u?0:2,insertionTs:f,chunkSize:a,splitted:!1,start:o,end:s,precizeStart:!1,precizeEnd:!1,bufferedStart:void 0,bufferedEnd:void 0,infos:{segment:i,period:e,adaptation:t,representation:r}};for(let g=l.length-1;g>=0;g--){let h=l[g];if(h.start<=o)if(h.end<=o){for(c.debug(\"SI: Pushing segment strictly after previous one.\",d,o,h.end),this._inventory.splice(g+1,0,m),g+=2;g<l.length&&l[g].start<m.end;){if(l[g].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,l[g].start),l[g].start=m.end,l[g].bufferedStart=void 0,l[g].precizeStart=l[g].precizeStart&&m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,l[g].start,l[g].end),l.splice(g,1)}return}else if(h.start===o)if(h.end<=s){for(c.debug(\"SI: Segment pushed replace another one\",d,o,s,h.end),this._inventory.splice(g,1,m),g+=1;g<l.length&&l[g].start<m.end;){if(l[g].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,l[g].start),l[g].start=m.end,l[g].bufferedStart=void 0,l[g].precizeStart=l[g].precizeStart&&m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,l[g].start,l[g].end),l.splice(g,1)}return}else{c.debug(\"SI: Segment pushed ends before another with the same start\",d,o,s,h.end),l.splice(g,0,m),h.start=m.end,h.bufferedStart=void 0,h.precizeStart=h.precizeStart&&m.precizeEnd;return}else if(h.end<=m.end){for(c.debug(\"SI: Segment pushed updates end of previous one\",d,o,s,h.start,h.end),this._inventory.splice(g+1,0,m),h.end=m.start,h.bufferedEnd=void 0,h.precizeEnd=h.precizeEnd&&m.precizeStart,g+=2;g<l.length&&l[g].start<m.end;){if(l[g].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,l[g].start),l[g].start=m.end,l[g].bufferedStart=void 0,l[g].precizeStart=l[g].precizeStart&&m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,l[g].start,l[g].end),l.splice(g,1)}return}else{c.warn(\"SI: Segment pushed is contained in a previous one\",d,o,s,h.start,h.end);let I={status:h.status,insertionTs:h.insertionTs,chunkSize:h.chunkSize,splitted:!0,start:m.end,end:h.end,precizeStart:h.precizeStart&&h.precizeEnd&&m.precizeEnd,precizeEnd:h.precizeEnd,bufferedStart:void 0,bufferedEnd:h.end,infos:h.infos};h.end=m.start,h.splitted=!0,h.bufferedEnd=void 0,h.precizeEnd=h.precizeEnd&&m.precizeStart,l.splice(g+1,0,m),l.splice(g+2,0,I);return}}let p=this._inventory[0];if(p===void 0){c.debug(\"SI: first segment pushed\",d,o,s),this._inventory.push(m);return}if(p.start>=s)c.debug(\"SI: Segment pushed comes before all previous ones\",d,o,s,p.start),this._inventory.splice(0,0,m);else if(p.end<=s){for(c.debug(\"SI: Segment pushed starts before and completely recovers the previous first one\",d,o,s,p.start,p.end),this._inventory.splice(0,1,m);l.length>1&&l[1].start<m.end;){if(l[1].end>m.end){c.debug(\"SI: Segment pushed updates the start of the next one\",d,m.end,l[1].start),l[1].start=m.end,l[1].bufferedStart=void 0,l[1].precizeStart=m.precizeEnd;return}c.debug(\"SI: Segment pushed removes the next one\",d,o,s,l[1].start,l[1].end),l.splice(1,1)}return}else{c.debug(\"SI: Segment pushed start of the next one\",d,o,s,p.start,p.end),p.start=s,p.bufferedStart=void 0,p.precizeStart=m.precizeEnd,this._inventory.splice(0,0,m);return}}completeSegment(e){if(e.segment.isInit)return;let t=this._inventory,r=[];for(let i=0;i<t.length;i++)if(Ze(t[i].infos,e)){let a=!1;r.length>0&&(a=!0,r.length===1&&(c.warn(\"SI: Completed Segment is splitted.\",e.segment.id,e.segment.time,e.segment.end),r[0].splitted=!0));let o=i,s=t[i].chunkSize;for(i+=1;i<t.length&&Ze(t[i].infos,e);){let m=t[i].chunkSize;s!==void 0&&m!==void 0&&(s+=m),i++}let u=i-1,f=u-o,d=t[u].end,l=t[u].bufferedEnd;f>0&&(this._inventory.splice(o+1,f),i-=f),this._inventory[o].status===0&&(this._inventory[o].status=1),this._inventory[o].chunkSize=s,this._inventory[o].end=d,this._inventory[o].bufferedEnd=l,this._inventory[o].splitted=a,r.push(this._inventory[o])}if(r.length===0)c.warn(\"SI: Completed Segment not found\",e.segment.id,e.segment.time);else for(let i of r)i.bufferedStart!==void 0&&i.bufferedEnd!==void 0?i.status!==2&&this._bufferedHistory.addBufferedSegment(i.infos,{start:i.bufferedStart,end:i.bufferedEnd}):c.debug(\"SI: buffered range not known after sync. Skipping history.\",i.start,i.end)}getInventory(){return this._inventory}getHistoryFor(e){return this._bufferedHistory.getHistoryFor(e)}};function sa(n){if(n.bufferedStart===void 0||n.status!==1)return!1;let{start:e,end:t}=n,r=t-e,{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:i,MAX_MANIFEST_BUFFERED_DURATION_DIFFERENCE:a}=U.getCurrent();return Math.abs(e-n.bufferedStart)<=i&&(n.bufferedEnd===void 0||n.bufferedEnd>n.bufferedStart&&Math.abs(n.bufferedEnd-n.bufferedStart-r)<=Math.min(a,r/3))}function ps(n){if(n.bufferedEnd===void 0||!n.infos.segment.complete||n.status!==1)return!1;let{start:e,end:t}=n,r=t-e,{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:i,MAX_MANIFEST_BUFFERED_DURATION_DIFFERENCE:a}=U.getCurrent();return Math.abs(t-n.bufferedEnd)<=i&&n.bufferedStart!==void 0&&n.bufferedEnd>n.bufferedStart&&Math.abs(n.bufferedEnd-n.bufferedStart-r)<=Math.min(a,r/3)}function el(n,e,t,r){let{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:i,MISSING_DATA_TRIGGER_SYNC_DELAY:a,SEGMENT_SYNCHRONIZATION_DELAY:o}=U.getCurrent();if(n.bufferedStart!==void 0)n.bufferedStart<e&&(c.debug(\"SI: Segment partially GCed at the start\",r,n.bufferedStart,e),n.bufferedStart=e),!n.precizeStart&&sa(n)&&(n.start=n.bufferedStart,n.precizeStart=!0);else if(n.precizeStart)c.debug(\"SI: buffered start is precize start\",r,n.start),n.bufferedStart=n.start;else if(t!==null&&t.end>e&&(t.precizeEnd||n.start-t.end<=i))c.debug(\"SI: buffered start is end of previous segment\",r,e,n.start,t.end),n.bufferedStart=t.end,sa(n)&&(n.start=t.end,n.precizeStart=!0);else if(n.start-e<=i){let s=L();if(n.start-e>=a&&s-n.insertionTs<o){c.debug(\"SI: Ignored bufferedStart synchronization\",r,e,n.start,s-n.insertionTs);return}c.debug(\"SI: found true buffered start\",r,e,n.start),n.bufferedStart=e,sa(n)&&(n.start=e,n.precizeStart=!0)}else if(e<n.start)c.debug(\"SI: range start too far from expected start\",r,e,n.start),n.bufferedStart=n.start;else{let s=L();if(n.start-e>=a&&s-n.insertionTs<o){c.debug(\"SI: Ignored bufferedStart synchronization\",r,e,n.start,s-n.insertionTs);return}c.debug(\"SI: Segment appears immediately garbage collected at the start\",r,e,n.start),n.bufferedStart=e}}function gs(n,e,t){let{MAX_MANIFEST_BUFFERED_START_END_DIFFERENCE:r,MISSING_DATA_TRIGGER_SYNC_DELAY:i,SEGMENT_SYNCHRONIZATION_DELAY:a}=U.getCurrent();if(n.bufferedEnd!==void 0)n.bufferedEnd>e&&(c.debug(\"SI: Segment partially GCed at the end\",t,n.bufferedEnd,e),n.bufferedEnd=e),!n.precizeEnd&&e-n.end<=r&&ps(n)&&(n.precizeEnd=!0,n.end=e);else if(n.precizeEnd)c.debug(\"SI: buffered end is precize end\",t,n.end),n.bufferedEnd=n.end;else if(e-n.end<=r||!n.infos.segment.complete){let o=L();if(e-n.end>=i&&o-n.insertionTs<a){c.debug(\"SI: Ignored bufferedEnd synchronization\",t,e,n.end,o-n.insertionTs);return}c.debug(\"SI: found true buffered end\",t,e,n.end),n.bufferedEnd=e,ps(n)&&(n.end=e,n.precizeEnd=!0)}else if(e>n.end)c.debug(\"SI: range end too far from expected end\",t,e,n.end),n.bufferedEnd=n.end;else{let o=L();if(e-n.end>=i&&o-n.insertionTs<a){c.debug(\"SI: Ignored bufferedEnd synchronization\",t,e,n.end,o-n.insertionTs);return}c.debug(\"SI: Segment appears immediately garbage collected at the end\",t,n.bufferedEnd,e),n.bufferedEnd=e}}function tl(n){let e=.016666666666666666,t={},r=[],i=null,a=null;function o(u){let f=String.fromCharCode(r.length+65);return r.push({letter:f,periodId:u.period.id,representationId:u.representation.id,bitrate:u.representation.bitrate}),f}let s=\"\";for(let u=0;u<n.length;u++){let f=n[u];if(f.bufferedStart!==void 0&&f.bufferedEnd!==void 0){let d=f.infos.period.id,l=f.infos.representation.id,m=t[d],p;m===void 0?(p=o(f.infos),t[d]={[l]:p}):m[l]===void 0?(p=o(f.infos),m[l]=p):p=m[l],i===null?s+=`${f.bufferedStart.toFixed(2)}|${p}|`:a===p?i.bufferedEnd+e<f.bufferedStart&&(s+=`${i.bufferedEnd.toFixed(2)} ~ ${f.bufferedStart.toFixed(2)}|${p}|`):s+=`${i.bufferedEnd.toFixed(2)} ~ ${f.bufferedStart.toFixed(2)}|${p}|`,i=f,a=p}}return i!==null&&(s+=String(i.end.toFixed(2))),r.forEach(u=>{var f;s+=`\n[${u.letter}] P: ${u.periodId} || R: ${u.representationId}(${(f=u.bitrate)!=null?f:\"unknown bitrate\"})`}),s}function qt(n,e){for(let t=0;t<n.length;t++)if(n[t].infos.period.start>=e.start)return t>0?n[t-1]:null;return n.length>0?n[n.length-1]:null}function Ht(n,e){for(let t of n)if(t.infos.period.start>e.start)return t;return null}var hs=Cn;var Gt=class{constructor(){this._segmentInventory=new hs}synchronizeInventory(e){this._segmentInventory.synchronizeBuffered(e)}getLastKnownInventory(){return this._segmentInventory.getInventory()}getSegmentHistory(e){return this._segmentInventory.getHistoryFor(e)}};var An=class extends Gt{constructor(e,t,r){super(),c.info(\"AVSB: calling `mediaSource.addSourceBuffer`\",t);let i=r.addSourceBuffer(e,t);this.bufferType=e,this._sourceBuffer=i,this._lastInitSegmentUniqueId=null,this.codec=t,this._initSegmentsMap=new Map,this._pendingOperations=[]}declareInitSegment(e,t){Is(t),this._initSegmentsMap.set(e,t)}freeInitSegment(e){this._initSegmentsMap.delete(e)}async pushChunk(e){Is(e.data.chunk),c.debug(\"AVSB: receiving order to push data to the SourceBuffer\",this.bufferType,yt(e.inventoryInfos));let t=this._getActualDataToPush(e.data);t.length===0&&t.push(new Uint8Array);let r=Promise.all(t.map(o=>{let{codec:s,timestampOffset:u,appendWindow:f}=e.data;return c.debug(\"AVSB: pushing segment\",this.bufferType,yt(e.inventoryInfos)),this._sourceBuffer.appendBuffer(o,{codec:s,timestampOffset:u,appendWindow:f})}));this._addToOperationQueue(r,{type:0,value:e});let i;try{i=await r}catch(o){throw this._segmentInventory.insertChunk(e.inventoryInfos,!1,L()),o}e.inventoryInfos!==null&&this._segmentInventory.insertChunk(e.inventoryInfos,!0,L());let a=i[i.length-1];return this._segmentInventory.synchronizeBuffered(a),a}async removeBuffer(e,t){c.debug(\"AVSB: receiving order to remove data from the SourceBuffer\",this.bufferType,e,t);let r=this._sourceBuffer.remove(e,t);this._addToOperationQueue(r,{type:1,value:{start:e,end:t}});let i=await r;return this._segmentInventory.synchronizeBuffered(i),i}async signalSegmentComplete(e){if(this._pendingOperations.length>0){let{promise:t}=this._pendingOperations[this._pendingOperations.length-1];this._addToOperationQueue(t,{type:2,value:e});try{await t}catch(r){}}this._segmentInventory.completeSegment(e)}getPendingOperations(){return this._pendingOperations.map(e=>e.operation)}dispose(){try{c.debug(\"AVSB: Calling `dispose` on the SourceBufferInterface\"),this._sourceBuffer.dispose()}catch(e){c.debug(`AVSB: Failed to dispose a ${this.bufferType} SourceBufferInterface:`,e instanceof Error?e:\"\")}}_getActualDataToPush(e){let t=[];if(e.initSegmentUniqueId!==null&&!this._isLastInitSegment(e.initSegmentUniqueId)){let r=this._initSegmentsMap.get(e.initSegmentUniqueId);if(r===void 0)throw new Error(\"Invalid initialization segment uniqueId\");let i=new ArrayBuffer(r.byteLength),a=new Uint8Array(i);a.set(r instanceof ArrayBuffer?new Uint8Array(r):new Uint8Array(r.buffer)),r=a,t.push(r),this._lastInitSegmentUniqueId=e.initSegmentUniqueId}return e.chunk!==null&&t.push(e.chunk),t}_isLastInitSegment(e){return this._lastInitSegmentUniqueId===null?!1:this._lastInitSegmentUniqueId===e}_addToOperationQueue(e,t){let r={operation:t,promise:e};this._pendingOperations.push(r);let i=()=>{let a=this._pendingOperations.indexOf(r);a>=0&&this._pendingOperations.splice(a,1)};e.then(i,i)}};function Is(n){if(b.CURRENT_ENV!==b.PRODUCTION&&(typeof n!=\"object\"||n!==null&&!(n instanceof ArrayBuffer)&&!(n.buffer instanceof ArrayBuffer)))throw new Error(\"Invalid data given to the AudioVideoSegmentSink\")}var Dr=An;function Mt(n,e){let t;return new Promise((r,i)=>{if(n.cancellationError!==null)return i(n.cancellationError);let a=!1;t=e(function(u){n.deregister(o),a=!0,r(u)},function(u){n.deregister(o),a=!0,i(u)}),a||n.register(o);function o(s){t!==void 0&&t(),i(s)}})}var kn=class extends Gt{constructor(e){c.debug(\"HTSB: Creating TextSegmentSink\"),super(),this.bufferType=\"text\",this._sender=e,this._pendingOperations=[],this._sender.reset()}declareInitSegment(e){c.warn(\"HTSB: Declaring initialization segment for Text SegmentSink\",e)}freeInitSegment(e){c.warn(\"HTSB: Freeing initialization segment for Text SegmentSink\",e)}async pushChunk(e){let{data:t}=e;rl(t.chunk);let r=this._sender.pushTextData(Me(ge({},t),{chunk:t.chunk}));this._addToOperationQueue(r,{type:0,value:e});let i=await r;return e.inventoryInfos!==null&&this._segmentInventory.insertChunk(e.inventoryInfos,!0,L()),this._segmentInventory.synchronizeBuffered(i),i}async removeBuffer(e,t){let r=this._sender.remove(e,t);this._addToOperationQueue(r,{type:1,value:{start:e,end:t}});let i=await r;return this._segmentInventory.synchronizeBuffered(i),i}async signalSegmentComplete(e){if(this._pendingOperations.length>0){let{promise:t}=this._pendingOperations[this._pendingOperations.length-1];this._addToOperationQueue(t,{type:2,value:e});try{await t}catch(r){}}this._segmentInventory.completeSegment(e)}getPendingOperations(){return this._pendingOperations.map(e=>e.operation)}dispose(){c.debug(\"HTSB: Disposing TextSegmentSink\"),this._sender.reset()}_addToOperationQueue(e,t){let r={operation:t,promise:e};this._pendingOperations.push(r);let i=()=>{let a=this._pendingOperations.indexOf(r);a>=0&&this._pendingOperations.splice(a,1)};e.then(i,i)}};function rl(n){if(b.CURRENT_ENV!==b.PRODUCTION&&(typeof n!=\"object\"||n===null||typeof n.data!=\"string\"||typeof n.type!=\"string\"||n.language!==void 0&&typeof n.language!=\"string\"||n.start!==void 0&&typeof n.start!=\"number\"||n.end!==void 0&&typeof n.end!=\"number\"))throw new Error(\"Invalid format given to a TextSegmentSink\")}b.CURRENT_ENV===b.DEV&&(il=function(e){function t(r){}});var il;var bs=kn;var al=[\"audio\",\"video\",\"text\"],xn=class n{static isNative(e){return Ss(e)}constructor(e,t,r){this._mediaSource=e,this._textInterface=r,this._hasVideo=t,this._initializedSegmentSinks={},this._onNativeBufferAddedOrDisabled=[]}getBufferTypes(){let e=this.getNativeBufferTypes();return this._textInterface!==null&&e.push(\"text\"),e}getNativeBufferTypes(){return this._hasVideo?[\"video\",\"audio\"]:[\"audio\"]}getStatus(e){let t=this._initializedSegmentSinks[e];return t===void 0?{type:\"uninitialized\"}:t===null?{type:\"disabled\"}:{type:\"initialized\",value:t}}waitForUsableBuffers(e){return this._areNativeBuffersUsable()?Promise.resolve():Mt(e,t=>{let r,i=()=>{let a=this._onNativeBufferAddedOrDisabled.indexOf(r);a>=0&&this._onNativeBufferAddedOrDisabled.splice(a,1)};return r=()=>{this._areNativeBuffersUsable()&&(i(),t())},this._onNativeBufferAddedOrDisabled.push(r),i})}disableSegmentSink(e){let t=this._initializedSegmentSinks[e];if(t===null){c.warn(`SBS: The ${e} SegmentSink was already disabled.`);return}if(t!==void 0)throw new Error(\"Cannot disable an active SegmentSink.\");this._initializedSegmentSinks[e]=null,n.isNative(e)&&this._onNativeBufferAddedOrDisabled.forEach(r=>r())}createSegmentSink(e,t){let r=this._initializedSegmentSinks[e];if(Ss(e)){if(!v(r))return r instanceof Dr&&r.codec!==t?c.warn(\"SB: Reusing native SegmentSink with codec\",r.codec,\"for codec\",t):c.info(\"SB: Reusing native SegmentSink with codec\",t),r;c.info(\"SB: Adding native SegmentSink with codec\",t);let a=e===\"audio\"?\"audio\":\"video\",o=new Dr(a,t,this._mediaSource);return this._initializedSegmentSinks[e]=o,this._onNativeBufferAddedOrDisabled.forEach(s=>s()),o}if(!v(r))return c.info(\"SB: Reusing a previous custom SegmentSink for the type\",e),r;let i;if(e===\"text\"){if(c.info(\"SB: Creating a new text SegmentSink\"),this._textInterface===null)throw new Error(\"HTML Text track feature not activated\");return i=new bs(this._textInterface),this._initializedSegmentSinks.text=i,i}throw c.error(\"SB: Unknown buffer type:\",e),new Q(\"BUFFER_TYPE_UNKNOWN\",\"The player wants to create a SegmentSink of an unknown type.\")}disposeSegmentSink(e){let t=this._initializedSegmentSinks[e];if(v(t)){c.warn(\"SB: Trying to dispose a SegmentSink that does not exist\");return}c.info(\"SB: Aborting SegmentSink\",e),t.dispose(),delete this._initializedSegmentSinks[e]}disposeAll(){al.forEach(e=>{this.getStatus(e).type===\"initialized\"&&this.disposeSegmentSink(e)})}_areNativeBuffersUsable(){let e=this.getNativeBufferTypes();return!(e.some(i=>this._initializedSegmentSinks[i]===void 0)||e.every(i=>this._initializedSegmentSinks[i]===null))}createSegmentSinkMetricsForType(e){var t,r;return{bufferType:e,codec:(t=this._initializedSegmentSinks[e])==null?void 0:t.codec,segmentInventory:(r=this._initializedSegmentSinks[e])==null?void 0:r.getLastKnownInventory().map(i=>Me(ge({},i),{infos:ol(i.infos)}))}}getSegmentSinksMetrics(){return{segmentSinks:{audio:this.createSegmentSinkMetricsForType(\"audio\"),video:this.createSegmentSinkMetricsForType(\"video\"),text:this.createSegmentSinkMetricsForType(\"text\")}}}};function Ss(n){return n===\"audio\"||n===\"video\"}function ol(n){return{adaptation:n.adaptation.getMetadataSnapshot(),period:n.period.getMetadataSnapshot(),representation:n.representation.getMetadataSnapshot()}}var bt=xn;function Mn(n,e){return Mt(e,t=>{let r=setTimeout(()=>t(),n);return()=>clearTimeout(r)})}var On=class extends oe{constructor(e,t,r,i){super(),this._content=e,this._currentCanceller=null,this._downloadQueue=t,this._initSegmentRequest=null,this._mediaSegmentRequest=null,this._segmentFetcher=r,this._initSegmentInfoRef=new j(void 0),this._mediaSegmentAwaitingInitMetadata=null,i||this._initSegmentInfoRef.setValue(null)}getRequestedInitSegment(){return this._initSegmentRequest===null?null:this._initSegmentRequest.segment}getRequestedMediaSegment(){return this._mediaSegmentRequest===null?null:this._mediaSegmentRequest.segment}start(){this._currentCanceller===null&&(this._currentCanceller=new W,this._downloadQueue.onUpdate(e=>{let{segmentQueue:t}=e;if(t.length>0&&t[0].segment.id===this._mediaSegmentAwaitingInitMetadata)return;let r=this._mediaSegmentRequest;if(t.length===0){if(r===null)return;c.debug(\"Stream: no more media segment to request. Cancelling queue.\",this._content.adaptation.type),this._restartMediaSegmentDownloadingQueue();return}else if(r===null){c.debug(\"Stream: Media segments now need to be requested. Starting queue.\",this._content.adaptation.type,t.length),this._restartMediaSegmentDownloadingQueue();return}else{let i=t[0];if(r.segment.id!==i.segment.id){c.debug(\"Stream: Next media segment changed, cancelling previous\",this._content.adaptation.type),this._restartMediaSegmentDownloadingQueue();return}r.priority!==i.priority&&(c.debug(\"Stream: Priority of next media segment changed, updating\",this._content.adaptation.type,r.priority,i.priority),this._segmentFetcher.updatePriority(r.request,i.priority));return}},{emitCurrentValue:!0,clearSignal:this._currentCanceller.signal}),this._downloadQueue.onUpdate(e=>{var r;let t=this._initSegmentRequest;if(e.initSegment!==null&&t!==null){e.initSegment.priority!==t.priority&&this._segmentFetcher.updatePriority(t.request,e.initSegment.priority);return}else if(((r=e.initSegment)==null?void 0:r.segment.id)===(t==null?void 0:t.segment.id))return;e.initSegment===null&&c.debug(\"Stream: no more init segment to request. Cancelling queue.\",this._content.adaptation.type),this._restartInitSegmentDownloadingQueue(e.initSegment)},{emitCurrentValue:!0,clearSignal:this._currentCanceller.signal}))}stop(){var e;(e=this._currentCanceller)==null||e.cancel(),this._currentCanceller=null}_restartMediaSegmentDownloadingQueue(){this._mediaSegmentRequest!==null&&this._mediaSegmentRequest.canceller.cancel();let{segmentQueue:e}=this._downloadQueue.getValue(),t=e[0],r=i=>{if(this._currentCanceller!==null&&this._currentCanceller.isUsed()){this._mediaSegmentRequest=null;return}if(i===void 0){this._mediaSegmentRequest=null,this.trigger(\"emptyQueue\",null);return}let a=new W,o=this._currentCanceller===null?D:a.linkToSignal(this._currentCanceller.signal),{segment:s,priority:u}=i,f=H({segment:s},this._content),d=!1,l=!1;a.signal.register(()=>{this._mediaSegmentRequest=null,!d&&(this._mediaSegmentAwaitingInitMetadata===s.id&&(this._mediaSegmentAwaitingInitMetadata=null),d=!0,l=!1)});let m=h=>{Ie(h.segmentType===\"media\",\"Should have loaded a media segment.\"),this.trigger(\"parsedMediaSegment\",H({},h,{segment:s}))},p=()=>{let h=this._downloadQueue.getValue().segmentQueue;if(h.length===0){d=!0,this.trigger(\"emptyQueue\",null);return}else h[0].segment.id===s.id&&h.shift();d=!0,r(h[0])},g=this._segmentFetcher.createRequest(f,u,{onRetry:h=>{this.trigger(\"requestRetry\",{segment:s,error:h})},beforeInterrupted(){c.info(\"Stream: segment request interrupted temporarly.\",s.id,s.time)},onChunk:h=>{let I=this._initSegmentInfoRef.getValue();I!==void 0?m(h(I!=null?I:void 0)):(l=!0,this._initSegmentInfoRef.waitUntilDefined(y=>{m(h(y!=null?y:void 0))},{clearSignal:a.signal}))},onAllChunksReceived:()=>{l?(this._mediaSegmentAwaitingInitMetadata=s.id,this._initSegmentInfoRef.waitUntilDefined(()=>{this._mediaSegmentAwaitingInitMetadata=null,l=!1,this.trigger(\"fullyLoadedSegment\",s)},{clearSignal:a.signal})):this.trigger(\"fullyLoadedSegment\",s)},beforeEnded:()=>{o(),this._mediaSegmentRequest=null,l?this._initSegmentInfoRef.waitUntilDefined(p,{clearSignal:a.signal}):p()}},a.signal);g.catch(h=>{o(),d||(d=!0,this.stop(),this.trigger(\"error\",h))}),this._mediaSegmentRequest={segment:s,priority:u,request:g,canceller:a}};r(t)}_restartInitSegmentDownloadingQueue(e){if(this._currentCanceller!==null&&this._currentCanceller.isUsed()||(this._initSegmentRequest!==null&&this._initSegmentRequest.canceller.cancel(),e===null))return;let t=new W,r=this._currentCanceller===null?D:t.linkToSignal(this._currentCanceller.signal),{segment:i,priority:a}=e,o=H({segment:i},this._content),s=!1,u=this._segmentFetcher.createRequest(o,a,{onRetry:f=>{this.trigger(\"requestRetry\",{segment:i,error:f})},beforeInterrupted:()=>{c.info(\"Stream: init segment request interrupted temporarly.\",i.id)},beforeEnded:()=>{r(),this._initSegmentRequest=null,s=!0},onChunk:f=>{var l;let d=f(void 0);Ie(d.segmentType===\"init\",\"Should have loaded an init segment.\"),this.trigger(\"parsedInitSegment\",H({},d,{segment:i})),d.segmentType===\"init\"&&this._initSegmentInfoRef.setValue((l=d.initTimescale)!=null?l:null)},onAllChunksReceived:()=>{this.trigger(\"fullyLoadedSegment\",i)}},t.signal);u.catch(f=>{r(),s||(s=!0,this.stop(),this.trigger(\"error\",f))}),t.signal.register(()=>{this._initSegmentRequest=null,!s&&(s=!0)}),this._initSegmentRequest={segment:i,priority:a,request:u,canceller:t}}};function ua(n,e,t,r,i){let{period:a,adaptation:o,representation:s}=n,u=sl(i,e);if(u===null){if(t===null){if(r&&a.end!==void 0&&e.end>=a.end)return{start:void 0,end:null};let l=s.index.checkDiscontinuity(e.start);if(l!==null)return{start:void 0,end:l}}return null}let f=i[u];if(f.bufferedStart!==void 0&&f.bufferedStart>e.start&&(t===null||f.infos.segment.end<=t)){let l=f.bufferedStart;return!r&&s.index.awaitSegmentBetween(e.start,l)!==!1?null:(c.debug(\"RS: current discontinuity encountered\",o.type,f.bufferedStart),{start:void 0,end:l})}let d=ul(i,e,u+1);if(d!==null){let l=i[d-1],m=i[d];if(t===null||m.infos.segment.end<=t){if(!r&&s.index.awaitSegmentBetween(l.infos.segment.end,m.infos.segment.time)!==!1)return null;let p=l.bufferedEnd,g=m.bufferedStart;return c.debug(\"RS: future discontinuity encountered\",o.type,p,g),{start:p,end:g}}}if(t===null){if(r&&a.end!==void 0){if(e.end<a.end)return null;let l=dl(i,a.end);if(l!==null){let m=i[l];if(m.bufferedEnd!==void 0&&m.bufferedEnd<a.end)return c.debug(\"RS: discontinuity encountered at the end of the current period\",o.type,m.bufferedEnd,a.end),{start:m.bufferedEnd,end:null}}}if(a.end!==void 0&&e.end>=a.end)return null;for(let l=i.length-1;l>=0;l--){let m=i[l];if(m.bufferedStart===void 0)break;if(m.bufferedStart<e.end){if(m.bufferedEnd!==void 0&&m.bufferedEnd<e.end){let p=s.index.checkDiscontinuity(e.end);if(p!==null)return{start:m.bufferedEnd,end:p}}return null}}}return null}function sl(n,e){for(let t=0;t<n.length;t++){let r=n[t];if(r.bufferedStart===void 0||r.bufferedEnd===void 0||r.bufferedStart>=e.end)return null;if(r.bufferedEnd>e.start)return t}return null}function ul(n,e,t){if(t<=0)return c.error(\"RS: Asked to check a discontinuity before the first chunk.\"),null;for(let r=t;r<n.length;r++){let i=n[r],a=n[r-1];if(i.bufferedStart===void 0||a.bufferedEnd===void 0||i.bufferedStart>=e.end)return null;if(i.bufferedStart-a.bufferedEnd>0)return r}return null}function dl(n,e){for(let t=n.length-1;t>=0;t--){let r=n[t];if(r.bufferedStart===void 0)return null;if(r.bufferedStart<e)return t}return null}function da({bufferedSegments:n,content:e,currentPlaybackTime:t,fastSwitchThreshold:r,getBufferedHistory:i,neededRange:a,segmentsBeingPushed:o,maxBufferSize:s}){let{adaptation:u,representation:f}=e,d=ll(n,o,s),l=f.index.getSegments(a.start,a.end-a.start),m=n.filter(C=>!ys(C.infos,e,t,r)),p=Il(m,a,i),{MINIMUM_SEGMENT_SIZE:g,MIN_BUFFER_AHEAD:h}=U.getCurrent(),I=!1,y=Math.min(1/60,g),T=!1,P=[];return{segmentsToLoad:l.filter(C=>{let R=H({segment:C},e);if(o.length>0&&o.some(w=>Ze(R,w)))return!1;let{duration:k,time:_,end:A}=C;if(C.isInit)return!0;if(I)return P.push(C),!1;if(C.complete&&k<g||o.length>0&&o.some(w=>{if(w.period.id!==e.period.id||w.adaptation.id!==e.adaptation.id)return!1;let{segment:O}=w;if(O.time-y>_)return!1;if(O.complete){if(O.end+y<A)return!1}else if(Math.abs(_-O.time)>_)return!1;return!ys(w,R,t,r)}))return!1;for(let N=0;N<p.length;N++){let w=p[N],O=w.infos.period.id===e.period.id;if(w.status===1&&O){let B=w.infos.segment;if(_-B.time>-y){if(B.complete){if(B.end-A>-y)return!1}else if(Math.abs(_-B.time)<y)return!1}}}let x=k*e.representation.bitrate;if(d-x<0&&(T=!0,_>a.start+h))return I=!0,P.push(C),!1;let M=i(R);if(M.length>1){let N=M[M.length-1],w=M[M.length-2];if(N.buffered===null&&w.buffered===null)return c.warn(\"Stream: Segment GCed multiple times in a row, ignoring it.\",\"If this happens a lot and lead to unpleasant experience, please check your device's available memory. If it's low when this message is emitted, you might want to update the RxPlayer's settings (`maxBufferAhead`, `maxVideoBufferSize` etc.) so less memory is used by regular media data buffering.\"+u.type,f.id,C.time),!1}for(let N=0;N<p.length;N++){let w=p[N];if(w.end+y>_){let O=w.start>_+y||fl(p,N).end<A-y;return O&&(d-=x),O}}return d-=x,!0}),segmentsOnHold:P,isBufferFull:T}}function ll(n,e,t){let r=t*8e3;return r-=e.reduce((i,a)=>{let{bitrate:o}=a.representation,{duration:s}=a.segment;return i+o*s},0),n.reduce((i,a)=>a.chunkSize!==void 0?i-a.chunkSize*8:i,r)}function fl(n,e){let t=e+1,{MINIMUM_SEGMENT_SIZE:r}=U.getCurrent(),i=Math.min(1/60,r);for(;t<n.length-1&&n[t-1].end+i>n[t].start;)t++;return t--,n[t]}function ys(n,e,t,r){let{CONTENT_REPLACEMENT_PADDING:i}=U.getCurrent();if(n.period.id!==e.period.id)return!1;let{segment:a}=n;return a.time<t+i?!1:n.adaptation.id!==e.adaptation.id?!0:ml(n.representation,e.representation,r)}function ml(n,e,t){let r=n.bitrate,{BITRATE_REBUFFERING_RATIO:i}=U.getCurrent();if(t===void 0){let a=r*i;return e.bitrate>a}return r<t&&e.bitrate>r}function cl(n,e,t){let{MAX_TIME_MISSING_FROM_COMPLETE_SEGMENT:r}=U.getCurrent();return n.bufferedStart===void 0||e!==null&&e.bufferedEnd!==void 0&&n.bufferedStart-e.bufferedEnd<.1?!1:t<n.bufferedStart&&n.bufferedStart-n.start>r?(c.info(\"Stream: The start of the wanted segment has been garbage collected\",n.start,n.bufferedStart),!0):!1}function pl(n,e,t){let{MAX_TIME_MISSING_FROM_COMPLETE_SEGMENT:r}=U.getCurrent();return n.bufferedEnd===void 0||e!==null&&e.bufferedStart!==void 0&&e.bufferedStart-n.bufferedEnd<.1?!1:t>n.bufferedEnd&&n.end-n.bufferedEnd>r?(c.info(\"Stream: The end of the wanted segment has been garbage collected\",n.end,n.bufferedEnd),!0):!1}function gl(n,e){var o,s;if(n.length<2)return!0;let r=(o=n[n.length-1].buffered)==null?void 0:o.start;if(e!==void 0&&r!==void 0&&e-r>.05)return!0;let a=(s=n[n.length-2].buffered)==null?void 0:s.start;return a===void 0||r===void 0?!0:Math.abs(a-r)>.01}function hl(n,e){var o,s;if(n.length<2)return!0;let r=(o=n[n.length-1].buffered)==null?void 0:o.end;if(e!==void 0&&r!==void 0&&r-e>.05)return!0;let a=(s=n[n.length-2].buffered)==null?void 0:s.end;return a===void 0||r===void 0?!0:Math.abs(a-r)>.01}function Il(n,e,t){return n.filter((r,i,a)=>{let o=i===0?null:a[i-1],s=i>=a.length-1?null:a[i+1],u=null;if(cl(r,o,e.start)){if(u=t(r.infos),gl(u,r.bufferedStart))return!1;c.debug(\"Stream: skipping segment gc-ed at the start\",r.start,r.bufferedStart)}if(pl(r,s,e.end)){if(u=u!=null?u:t(r.infos),hl(u,r.bufferedEnd))return!1;c.debug(\"Stream: skipping segment gc-ed at the end\",r.end,r.bufferedEnd)}return!0})}function wn(n,e){let t=n-e,{SEGMENT_PRIORITIES_STEPS:r}=U.getCurrent();for(let i=0;i<r.length;i++)if(t<r[i])return i;return r.length}function la(n,e,t,r,i,a,o){var _,A,x;let{representation:s}=n,u=(A=(_=t.getIsPaused())!=null?_:t.getReference().getValue().paused.pending)!=null?A:t.getReference().getValue().paused.last,f=(x=t.getPlaybackRate())!=null?x:t.getReference().getValue().speed,d=e;(u===void 0||f===void 0||u||f<=0)&&(d-=.1);let l=bl(n,d,i),m=s.index.shouldRefresh(l.start,l.end),p=o.getPendingOperations().filter(M=>M.type===2).map(M=>M.value),g=o.getLastKnownInventory(),h=t.getCurrentTime();h===void 0&&(h=t.getReference().getValue().position.getWanted());let I=o.getSegmentHistory.bind(o),{segmentsToLoad:y,segmentsOnHold:T,isBufferFull:P}=da({content:n,bufferedSegments:g,currentPlaybackTime:h,fastSwitchThreshold:r,getBufferedHistory:I,neededRange:l,segmentsBeingPushed:p,maxBufferSize:a}),E=y.map(M=>({priority:wn(M.time,d),segment:M})),C=s.index.isInitialized()&&!s.index.isStillAwaitingFutureSegments()&&l.hasReachedPeriodEnd&&E.length===0&&T.length===0,R=null;return p.length>0&&(R=Math.min(...p.map(M=>M.segment.time))),T.length>0&&(R=R!==null?Math.min(R,T[0].time):T[0].time),E.length>0&&(R=R!==null?Math.min(R,E[0].segment.time):E[0].segment.time),{imminentDiscontinuity:ua(n,l,R,C,g),hasFinishedLoading:C,neededSegments:E,isBufferFull:P,shouldRefreshManifest:m}}function bl(n,e,t){var l;let r,{manifest:i,period:a,representation:o}=n,s=o.index.getLastAvailablePosition(),u=o.index;!v(s)&&bt.isNative(n.adaptation.type)&&e>=s&&u.isInitialized()&&!u.isStillAwaitingFutureSegments()&&Sl(i,a,e)?r=s-1:r=e-.1;let f=r+t,d;return!o.index.isInitialized()||o.index.isStillAwaitingFutureSegments()||a.end===void 0?d=!1:s===void 0?d=f>=a.end:s===null?d=!0:d=f>=s,{start:Math.max(r,a.start),end:Math.min(f,(l=a.end)!=null?l:1/0),hasReachedPeriodEnd:d}}function Sl(n,e,t){var i;let r=n.getPeriodAfter(e);return e.containsTime(t,r)&&n.isLastPeriodKnown&&e.id===((i=n.periods[n.periods.length-1])==null?void 0:i.id)}function fa(n){return new Promise(e=>{setTimeout(e,n)})}async function Dn(n,e,t,r,i){try{return await e.pushChunk(t)}catch(a){if(i.isCancelled()&&a instanceof ie)throw a;if(!(a instanceof Ce)||!a.isBufferFull){let u=a instanceof Error?a.toString():\"An unknown error happened when pushing content\";throw new Q(\"BUFFER_APPEND_ERROR\",u,{tracks:[dt(t.inventoryInfos.adaptation)]})}let{position:o}=n.getReference().getValue(),s=o.getWanted();try{c.warn(\"Stream: Running garbage collector\");let u=Math.max(s-5,0),f=s+r.getValue()+12;if(await e.removeBuffer(0,u),await e.removeBuffer(f,Number.MAX_VALUE),await fa(200),i.cancellationError!==null)throw i.cancellationError;return await e.pushChunk(t)}catch(u){if(u instanceof ie)throw u;let f=u instanceof Error?u.toString():\"Could not clean the buffer\";throw new Q(\"BUFFER_FULL_ERROR\",f,{tracks:[dt(t.inventoryInfos.adaptation)]})}}}async function ma({playbackObserver:n,content:e,initSegmentUniqueId:t,segment:r,segmentSink:i,bufferGoal:a},o){if(o.cancellationError!==null)throw o.cancellationError;let s=e.representation.getMimeTypeString(),u={initSegmentUniqueId:t,chunk:null,timestampOffset:0,appendWindow:[void 0,void 0],codec:s},f=H({segment:r,chunkSize:void 0,start:0,end:0},e),d=await Dn(n,i,{data:u,inventoryInfos:f},a,o);return{content:e,segment:r,buffered:d}}async function ca({playbackObserver:n,bufferGoal:e,content:t,initSegmentUniqueId:r,parsedSegment:i,segment:a,segmentSink:o},s){var R,k;if(i.chunkData===null)return null;if(s.cancellationError!==null)throw s.cancellationError;let{chunkData:u,chunkInfos:f,chunkOffset:d,chunkSize:l,appendWindow:m}=i,p=t.representation.getMimeTypeString(),{APPEND_WINDOW_SECURITIES:g}=U.getCurrent(),h=[m[0]!==void 0?Math.max(0,m[0]-g.START):void 0,m[1]!==void 0?m[1]+g.END:void 0],I={initSegmentUniqueId:r,chunk:u,timestampOffset:d,appendWindow:h,codec:p},y=(R=f==null?void 0:f.time)!=null?R:a.time,T=(k=f==null?void 0:f.duration)!=null?k:a.duration,P=y+T;h[0]!==void 0&&(y=Math.max(y,h[0])),h[1]!==void 0&&(P=Math.min(P,h[1]));let E=H({segment:a,chunkSize:l,start:y,end:P},t),C=await Dn(n,o,{data:I,inventoryInfos:E},e,s);return{content:t,segment:a,buffered:C}}function pa({content:n,options:e,playbackObserver:t,segmentSink:r,segmentFetcher:i,terminate:a},o,s){let{period:u,adaptation:f,representation:d}=n,{bufferGoal:l,maxBufferSize:m,drmSystemId:p,fastSwitchThreshold:g}=e,h=f.type,I=new W;I.linkToSignal(s);let y=new W;y.linkToSignal(I.signal);let T={segment:d.index.getInitSegment(),uniqueId:null,isLoaded:!1};I.signal.register(()=>{T.uniqueId!==null&&r.freeInitSegment(T.uniqueId)});let P=new j({initSegment:null,segmentQueue:[]},y.signal),E=T.segment!==null;E||(T.isLoaded=!0);let C=!1;if(p!==void 0){let x=d.getEncryptionData(p);if(x.length>0&&x.every(M=>M.keyIds!==void 0)&&(C=!0,o.encryptionDataEncountered(x.map(M=>H({content:n},M))),I.isUsed()))return}let R=new On(n,P,i,E);R.addEventListener(\"error\",x=>{y.signal.isCancelled()||(I.cancel(),o.error(x))}),R.addEventListener(\"parsedInitSegment\",_),R.addEventListener(\"parsedMediaSegment\",_),R.addEventListener(\"emptyQueue\",k),R.addEventListener(\"requestRetry\",x=>{if(o.warning(x.error),y.signal.isCancelled())return;let M=x.segment,{index:N}=d;N.isSegmentStillAvailable(M)===!1?k():N.canBeOutOfSyncError(x.error,M)&&o.manifestMightBeOufOfSync()}),R.addEventListener(\"fullyLoadedSegment\",x=>{r.signalSegmentComplete(H({segment:x},n)).catch(A)}),R.start(),y.signal.register(()=>{R.removeEventListener(),R.stop()}),t.listen(k,{includeLastObservation:!1,clearSignal:y.signal}),n.manifest.addEventListener(\"manifestUpdate\",k,y.signal),l.onUpdate(k,{emitCurrentValue:!1,clearSignal:y.signal}),m.onUpdate(k,{emitCurrentValue:!1,clearSignal:y.signal}),a.onUpdate(k,{emitCurrentValue:!1,clearSignal:y.signal}),k();return;function k(){if(y.isUsed())return;let x=t.getReference().getValue(),M=x.position.getWanted(),N=la(n,M,t,g.getValue(),l.getValue(),m.getValue(),r),{neededSegments:w}=N,O=null;if(d.index.isInitialized()){if(w.length>0&&!T.isLoaded&&T.segment!==null){let q=w[0].priority;O={segment:T.segment,priority:q}}}else if(T.segment===null)c.warn(\"Stream: Uninitialized index without an initialization segment\");else if(T.isLoaded)c.warn(\"Stream: Uninitialized index with an already loaded initialization segment\");else{let q=x.position.getWanted();O={segment:T.segment,priority:wn(u.start,q)}}let B=a.getValue();if(B===null)P.setValue({initSegment:O,segmentQueue:w});else if(B.urgent){c.debug(\"Stream: Urgent switch, terminate now.\",h),P.setValue({initSegment:null,segmentQueue:[]}),P.finish(),y.cancel(),o.terminating();return}else{let q=w[0],Y=R.getRequestedInitSegment(),G=R.getRequestedMediaSegment(),z=G===null||q===void 0||G.id!==q.segment.id?[]:[q],X=Y===null?null:O;if(P.setValue({initSegment:X,segmentQueue:z}),z.length===0&&X===null){c.debug(\"Stream: No request left, terminate\",h),P.finish(),y.cancel(),o.terminating();return}}if(o.streamStatusUpdate({period:u,position:x.position.getWanted(),bufferType:h,imminentDiscontinuity:N.imminentDiscontinuity,isEmptyStream:!1,hasFinishedLoading:N.hasFinishedLoading,neededSegments:N.neededSegments}),y.signal.isCancelled())return;let{UPTO_CURRENT_POSITION_CLEANUP:V}=U.getCurrent();if(N.isBufferFull){let q=Math.max(0,M-V);q>0&&r.removeBuffer(0,q).catch(A)}N.shouldRefreshManifest&&o.needsManifestRefresh()}function _(x){if(!I.isUsed()){for(let M of x.protectionData)d.addProtectionData(M.initDataType,M.keyId,M.initData);if(!C){let M=d.getAllEncryptionData();if(M.length>0&&(o.encryptionDataEncountered(M.map(N=>H({content:n},N))),C=!0,I.isUsed()))return}if(x.segmentType===\"init\"){if(!d.index.isInitialized()&&x.segmentList!==void 0&&d.index.initialize(x.segmentList),T.isLoaded=!0,x.initializationData!==null){let M=d.uniqueId;T.uniqueId=M,r.declareInitSegment(M,x.initializationData),ma({playbackObserver:t,bufferGoal:l,content:n,initSegmentUniqueId:M,segment:x.segment,segmentData:x.initializationData,segmentSink:r},I.signal).then(N=>{N!==null&&o.addedSegment(N)}).catch(A)}k();return}else{let{inbandEvents:M,predictedSegments:N,needsManifestRefresh:w}=x;if(N!==void 0&&d.index.addPredictedSegments(N,x.segment),w===!0&&(o.needsManifestRefresh(),I.isUsed())||M!==void 0&&M.length>0&&(o.inbandEvent(M),I.isUsed()))return;let O=T.uniqueId;ca({playbackObserver:t,bufferGoal:l,content:n,initSegmentUniqueId:O,parsedSegment:x,segment:x.segment,segmentSink:r},I.signal).then(B=>{B!==null&&o.addedSegment(B)}).catch(A)}}}function A(x){I.isUsed()&&x instanceof ie||(I.cancel(),o.error(x))}}var _s=pa;function ga(n,e,t,r,i){var m,p,g,h;if(t.switchingMode===\"lazy\")return{type:\"continue\",value:void 0};let a=r.getLastKnownInventory(),o=[];for(let I of a)I.infos.period.id===n.id&&(I.infos.adaptation.id!==e.id||!se(t.representationIds,I.infos.representation.id))&&Vt(o,{start:(m=I.bufferedStart)!=null?m:I.start,end:(p=I.bufferedEnd)!=null?p:I.end});let s=r.getPendingOperations();for(let I of s)if(I.type===0){let y=I.value.inventoryInfos;if(y.period.id===n.id&&(y.adaptation.id!==e.id||!se(t.representationIds,y.representation.id))){let T=y.segment.time,P=T+y.segment.duration;Vt(o,{start:T,end:P})}}if(o.length===0)return{type:\"continue\",value:void 0};if(t.switchingMode===\"reload\"){let I=i.getReadyState();if(I===void 0||I>1)return{type:\"needs-reload\",value:void 0}}let u=t.switchingMode===\"direct\",f=[],d=qt(a,n);if(d!==null&&(d.bufferedEnd===void 0||n.start-d.bufferedEnd<1)&&f.push({start:0,end:n.start+1}),!u){let{ADAP_REP_SWITCH_BUFFER_PADDINGS:I}=U.getCurrent(),y=e.type,T=(g=I[y].before)!=null?g:0,P=(h=I[y].after)!=null?h:0,E=i.getCurrentTime();E===void 0&&(E=i.getReference().getValue().position.getPolled()),f.push({start:E-T,end:E+P})}if(n.end!==void 0){let I=Ht(a,n);I!==null&&(I.bufferedStart===void 0||I.bufferedStart-n.end<1)&&f.push({start:n.end-1,end:Number.MAX_VALUE})}let l=Mr(o,f);return l.length===0?{type:\"continue\",value:void 0}:u?{type:\"flush-buffer\",value:l}:{type:\"clean-buffer\",value:l}}function ha({playbackObserver:n,content:e,options:t,representationEstimator:r,segmentSink:i,segmentFetcherCreator:a,wantedBufferAhead:o,maxVideoBufferSize:s},u,f){let{manifest:d,period:l,adaptation:m}=e,p=new W;p.linkToSignal(f);let g=new Map,h=new j(null,p.signal),I,y=e.representations.getValue().representationIds,T=e.adaptation.representations.filter(w=>se(y,w.id)&&w.decipherable!==!1&&w.isSupported!==!1),P=new j(T,p.signal),{estimates:E,callbacks:C}=r({manifest:d,period:l,adaptation:m},h,P,n,p.signal),R=a.createSegmentFetcher(m.type,{onRequestBegin:C.requestBegin,onRequestEnd:C.requestEnd,onProgress:C.requestProgress,onMetrics:C.metrics}),k=new j(0);E.onUpdate(({bitrate:w,knownStableBitrate:O})=>{t.enableFastSwitching&&k.setValueIfChanged(O),!(w===void 0||w===I)&&(I=w,c.debug(`Stream: new ${m.type} bitrate estimate`,w),u.bitrateEstimateChange({type:m.type,bitrate:w}))},{emitCurrentValue:!0,clearSignal:p.signal});let _;e.representations.onUpdate(w=>{_!==void 0&&_.cancel();let O=e.representations.getValue().representationIds,B=e.adaptation.representations.filter(V=>se(O,V.id));P.setValueIfChanged(B),_=new W,_.linkToSignal(p.signal),A(w,_.signal).catch(V=>{(_==null?void 0:_.isUsed())===!0&&W.isCancellationError(V)||(p.cancel(),u.error(V))})},{clearSignal:p.signal,emitCurrentValue:!0});return;async function A(w,O){let B=ga(l,m,w,i,n);switch(B.type){case\"continue\":break;case\"needs-reload\":return kt(()=>{n.listen(()=>{if(O.isCancelled())return;let{DELTA_POSITION_AFTER_RELOAD:V}=U.getCurrent(),q=V.bitrateSwitch;return u.waitingMediaSourceReload({bufferType:m.type,period:l,timeOffset:q,stayInPeriod:!0})},{includeLastObservation:!0,clearSignal:O})});case\"flush-buffer\":case\"clean-buffer\":for(let V of B.value)if(await i.removeBuffer(V.start,V.end),O.isCancelled())return;if(B.type===\"flush-buffer\"&&(u.needsBufferFlush(),O.isCancelled()))return;break;default:We(B)}x(O)}function x(w){let O=new W;O.linkToSignal(w);let{representation:B}=E.getValue();if(B===null)return;let V=new j(null,O.signal);E.onUpdate(G=>{if(!(G.representation===null||G.representation.id===B.id))return G.urgent?(c.info(\"Stream: urgent Representation switch\",m.type),V.setValue({urgent:!0})):(c.info(\"Stream: slow Representation switch\",m.type),V.setValue({urgent:!1}))},{clearSignal:O.signal,emitCurrentValue:!0});let q={type:m.type,adaptation:m,period:l,representation:B};if(h.setValue(B),p.isUsed()||(u.representationChange(q),p.isUsed()))return;let Y={streamStatusUpdate:u.streamStatusUpdate,encryptionDataEncountered:u.encryptionDataEncountered,manifestMightBeOufOfSync:u.manifestMightBeOufOfSync,needsManifestRefresh:u.needsManifestRefresh,inbandEvent:u.inbandEvent,warning:u.warning,error(G){p.cancel(),u.error(G)},addedSegment(G){C.addedSegment(G)},terminating(){if(!O.isUsed())return O.cancel(),x(w)}};M(B,V,Y,w)}function M(w,O,B,V){let q=new W;q.linkToSignal(V);let Y=Xt(o,X=>X*N(w),q.signal),G=m.type===\"video\"?s:new j(1/0);c.info(\"Stream: changing representation\",m.type,w.id,w.bitrate);let z=H({},B,{error(X){var me;let Z=he(X,{defaultCode:\"NONE\",defaultReason:\"Unknown `RepresentationStream` error\"});if(Z.code!==\"BUFFER_FULL_ERROR\")B.error(X);else{let ce=o.getValue(),be=((me=g.get(w.id))!=null?me:1)*.7;if(be<=.05||ce*be<=2)throw Z;g.set(w.id,be),Mn(4e3,p.signal).then(()=>M(w,O,B,V)).catch(D)}},terminating(){q.cancel(),B.terminating()}});_s({playbackObserver:n,content:{representation:w,adaptation:m,period:l,manifest:d},segmentSink:i,segmentFetcher:R,terminate:O,options:{bufferGoal:Y,maxBufferSize:G,drmSystemId:t.drmSystemId,fastSwitchThreshold:k}},z,V),d.addEventListener(\"manifestUpdate\",X=>{for(let Z of X.updatedPeriods)if(Z.period.id===l.id){for(let me of Z.result.updatedAdaptations)if(me.adaptation===m.id){for(let ce of me.removedRepresentations)if(ce===w.id)return V.isCancelled()?void 0:u.waitingMediaSourceReload({bufferType:m.type,period:l,timeOffset:0,stayInPeriod:!0})}}else if(Z.period.start>l.start)break},V)}function N(w){let O=g.get(w.id),B=O!==void 0?O:1;return O===void 0&&g.set(w.id,B),B}}var Ts=ha;function yl(n,e){let[t,...r]=n.split(\";\"),[i,...a]=e.split(\";\");if(t!==i)return!1;let o=K(r,d=>Ue(d,\"codecs=\")),s=K(a,d=>Ue(d,\"codecs=\"));if(o===void 0||s===void 0)return!1;let u=o.substring(7),f=s.substring(7);return u.split(\".\")[0]===f.split(\".\")[0]}var Es=yl;function Ia(n,e,t,r,i,a){var p,g,h,I;if(n.codec!==void 0&&a.onCodecSwitch===\"reload\"&&!_l(t,n.codec))return{type:\"needs-reload\",value:void 0};let o=n.getLastKnownInventory(),s=[];for(let y of o)y.infos.period.id===e.id&&y.infos.adaptation.id!==t.id&&Vt(s,{start:(p=y.bufferedStart)!=null?p:y.start,end:(g=y.bufferedEnd)!=null?g:y.end});let u=n.getPendingOperations();for(let y of u)if(y.type===0){let T=y.value.inventoryInfos;if(T.period.id===e.id&&T.adaptation.id!==t.id){let P=T.segment.time,E=P+T.segment.duration;Vt(s,{start:P,end:E})}}if(s.length===0)return{type:\"continue\",value:void 0};if(r===\"reload\"){let y=i.getReadyState();if(y===void 0||y>1)return{type:\"needs-reload\",value:void 0}}let f=r===\"direct\",d=[],l=qt(o,e);if(l!==null&&(l.bufferedEnd===void 0||e.start-l.bufferedEnd<1)&&d.push({start:0,end:e.start+1}),!f){let y=t.type,{ADAP_REP_SWITCH_BUFFER_PADDINGS:T}=U.getCurrent(),P=(h=T[y].before)!=null?h:0,E=(I=T[y].after)!=null?I:0,C=i.getCurrentTime();C===void 0&&(C=i.getReference().getValue().position.getPolled()),d.push({start:C-P,end:C+E})}if(e.end!==void 0){let y=Ht(o,e);y!==null&&(y.bufferedStart===void 0||y.bufferedStart-e.end<1)&&d.push({start:e.end-1,end:Number.MAX_VALUE})}let m=Mr(s,d);return m.length===0?{type:\"continue\",value:void 0}:f&&t.type!==\"text\"?{type:\"flush-buffer\",value:m}:{type:\"clean-buffer\",value:m}}function _l(n,e){return n.representations.some(t=>t.isSupported===!0&&t.decipherable!==!1&&Es(t.getMimeTypeString(),e))}function ba({bufferType:n,content:e,garbageCollectors:t,playbackObserver:r,representationEstimator:i,segmentFetcherCreator:a,segmentSinksStore:o,options:s,wantedBufferAhead:u,maxVideoBufferSize:f},d,l){let{manifest:m,period:p}=e,g=new j(void 0,l);if(d.periodStreamReady({type:n,manifest:m,period:p,adaptationRef:g}),l.isCancelled())return;let h,I=!0;g.onUpdate(P=>{(async()=>{var w;if(P===void 0)return;let E=new W;if(E.linkToSignal(l),h==null||h.cancel(),h=E,P===null){c.info(`Stream: Set no ${n} Adaptation. P:`,p.start);let O=o.getStatus(n);if(O.type===\"initialized\"){if(c.info(`Stream: Clearing previous ${n} SegmentSink`),bt.isNative(n))return T(0,!0,E.signal);{let B=(w=p.end)!=null?w:1/0;if(p.start>B)c.warn(\"Stream: Can't free buffer: period's start is after its end\");else if(await O.value.removeBuffer(p.start,B),E.isUsed())return}}else if(O.type===\"uninitialized\"&&(o.disableSegmentSink(n),E.isUsed()))return;return d.adaptationChange({type:n,adaptation:null,period:p}),E.isUsed()?void 0:Rs(r,u,n,{period:p},d,E.signal)}let C=p.adaptations[n],R=K(C!=null?C:[],O=>O.id===P.adaptationId);if(R===void 0){h.cancel(),c.warn(\"Stream: Unfound chosen Adaptation choice\",P.adaptationId);return}let{DELTA_POSITION_AFTER_RELOAD:k}=U.getCurrent(),_=!1,A;if(I)A=0;else if(P.relativeResumingPosition!==void 0)A=P.relativeResumingPosition;else switch(_=!0,n){case\"audio\":A=k.trackSwitch.audio;break;case\"video\":A=k.trackSwitch.video;break;default:A=k.trackSwitch.other;break}if(I=!1,bt.isNative(n)&&o.getStatus(n).type===\"disabled\")return T(A,!0,E.signal);m.addEventListener(\"manifestUpdate\",O=>{for(let B of O.updatedPeriods)if(B.period.id===p.id){for(let V of B.result.removedAdaptations)if(V.id===R.id)return T(A,!0,E.signal)}else if(B.period.start>p.start)break},h.signal);let{representations:x}=P;if(c.info(`Stream: Updating ${n} adaptation`,`A: ${R.id}`,`P: ${p.start}`),d.adaptationChange({type:n,adaptation:R,period:p}),E.isUsed())return;let M=Tl(o,n,R),N=Ia(M,p,R,P.switchingMode,r,s);if(N.type===\"needs-reload\")return T(A,!0,E.signal);if(await o.waitForUsableBuffers(E.signal),!E.isUsed()){if(N.type===\"flush-buffer\"||N.type===\"clean-buffer\"){for(let{start:O,end:B}of N.value)if(await M.removeBuffer(O,B),E.isUsed())return;if(N.type===\"flush-buffer\"&&(d.needsBufferFlush({relativeResumingPosition:A,relativePosHasBeenDefaulted:_}),E.isUsed()))return}t.get(M)(E.signal),y(R,x,M,E.signal)}})().catch(E=>{E instanceof ie||(h==null||h.cancel(),d.error(E))})},{clearSignal:l,emitCurrentValue:!0});function y(P,E,C,R){let k=Rl(r,P.type);Ts({content:{manifest:m,period:p,adaptation:P,representations:E},options:s,playbackObserver:k,representationEstimator:i,segmentSink:C,segmentFetcherCreator:a,wantedBufferAhead:u,maxVideoBufferSize:f},Me(ge({},d),{error:_}),R);function _(A){if(!bt.isNative(n)){c.error(`Stream: ${n} Stream crashed. Aborting it.`,A instanceof Error?A:\"\"),o.disposeSegmentSink(n);let x=he(A,{defaultCode:\"NONE\",defaultReason:\"Unknown `AdaptationStream` error\"});return d.warning(x),R.isCancelled()?void 0:Rs(r,u,n,{period:p},d,R)}c.error(`Stream: ${n} Stream crashed. Stopping playback.`,A instanceof Error?A:\"\"),d.error(A)}}function T(P,E,C){kt(()=>{r.listen(()=>{C.isCancelled()||d.waitingMediaSourceReload({bufferType:n,period:p,timeOffset:P,stayInPeriod:E})},{includeLastObservation:!0,clearSignal:C})})}}function Tl(n,e,t){let r=n.getStatus(e);if(r.type===\"initialized\")return c.info(\"Stream: Reusing a previous SegmentSink for the type\",e),r.value;let i=El(t);return n.createSegmentSink(e,i)}function El(n){let e=n.representations.filter(t=>t.isSupported===!0&&t.decipherable!==!1);if(e.length===0)throw new Q(\"NO_PLAYABLE_REPRESENTATION\",\"No Representation in the chosen \"+n.type+\" Adaptation can be played\",{tracks:[dt(n)]});return e[0].getMimeTypeString()}function Rl(n,e){return n.deriveReadOnlyObserver(function(r,i){let a=new j(o(),i);return r.onUpdate(s,{clearSignal:i,emitCurrentValue:!1}),a;function o(){let u=r.getValue(),f=u.buffered[e],d=f!==null?xr(f,u.position.getWanted()):0;return H({},u,{bufferGap:d,buffered:f})}function s(){a.setValue(o())}})}function Rs(n,e,t,r,i,a){let{period:o}=r,s=!1;e.onUpdate(u,{emitCurrentValue:!1,clearSignal:a}),n.listen(u,{includeLastObservation:!1,clearSignal:a}),u();function u(){let f=n.getReference().getValue(),d=e.getValue(),l=f.position.getWanted();o.end!==void 0&&l+d>=o.end&&(c.debug('Stream: full \"empty\" AdaptationStream',t),s=!0),i.streamStatusUpdate({period:o,bufferType:t,imminentDiscontinuity:null,position:l,isEmptyStream:!0,hasFinishedLoading:s,neededSegments:[]})}}var Ps=ba;function Nr(n,e){if(e.length===0)return[];let t=[],r=n.getLastKnownInventory();for(let i=0;i<r.length;i++){let a=r[i];if(e.some(s=>a.infos.period.id===s.period.id&&a.infos.adaptation.id===s.adaptation.id&&a.infos.representation.id===s.representation.id)){let{bufferedStart:s,bufferedEnd:u}=a;if(s===void 0||u===void 0)return c.warn(\"SO: No buffered start or end found from a segment.\"),[{start:0,end:Number.MAX_VALUE}];let f=t[t.length-1];f!==void 0&&f.end===s?f.end=u:t.push({start:s,end:u})}}return t}function Sa(n,e,t,r,i,a,o,s){let{manifest:u,initialPeriod:f}=n,{maxBufferAhead:d,maxBufferBehind:l,wantedBufferAhead:m,maxVideoBufferSize:p}=a,{MINIMUM_MAX_BUFFER_AHEAD:g,MAXIMUM_MAX_BUFFER_AHEAD:h,MAXIMUM_MAX_BUFFER_BEHIND:I}=U.getCurrent(),y=new Pn(E=>{var _,A;let{bufferType:C}=E,R=(_=I[C])!=null?_:1/0,k=(A=h[C])!=null?A:1/0;return x=>{Or({segmentSink:E,playbackObserver:e,maxBufferBehind:Xt(l,M=>Math.min(M,R),x),maxBufferAhead:Xt(d,M=>{var w;let N=Math.max(M,(w=g[C])!=null?w:0);return Math.min(N,k)},x)},x)}});for(let E of r.getBufferTypes())T(E,f);function T(E,C){let R=new xt((N,w)=>N.start-w.start),k=!1,_=new W;return _.linkToSignal(s),e.listen(({position:N})=>{var B;let w=N.getWanted();if(!k||!x(w))return;for(c.info(\"Stream: Destroying all PeriodStreams due to out of bounds situation\",E,w),k=!1;R.length()>0;){let V=R.get(R.length()-1);R.removeElement(V),o.periodStreamCleared({type:E,manifest:u,period:V})}_.cancel(),_=new W,_.linkToSignal(s);let O=(B=u.getPeriodForTime(w))!=null?B:u.getNextPeriod(w);if(O===void 0){c.warn(\"Stream: The wanted position is not found in the Manifest.\"),k=!0;return}A(O)},{clearSignal:s,includeLastObservation:!0}),u.addEventListener(\"decipherabilityUpdate\",N=>{s.isCancelled()||M(N).catch(w=>{s.isCancelled()||(_.cancel(),o.error(w))})},s),A(C);function A(N){let w=Me(ge({},o),{waitingMediaSourceReload(O){let B=R.head();B===void 0||B.id!==O.period.id?o.lockedStream({bufferType:O.bufferType,period:O.period}):o.needsMediaSourceReload({timeOffset:O.timeOffset,minimumPosition:O.stayInPeriod?O.period.start:void 0,maximumPosition:O.stayInPeriod?O.period.end:void 0})},periodStreamReady(O){k=!0,R.add(O.period),o.periodStreamReady(O)},periodStreamCleared(O){R.removeElement(O.period),o.periodStreamCleared(O)},error(O){_.cancel(),o.error(O)}});P(E,N,w,_.signal)}function x(N){let w=R.head(),O=R.last();return w===void 0||O===void 0?!0:w.start>N||(v(O.end)?1/0:O.end)<N}async function M(N){let w=r.getStatus(E),O=N.filter(z=>z.adaptation.type===E);if(O.length===0||w.type!==\"initialized\"||O.every(z=>z.representation.decipherable===!0))return;let B=w.value,V=O.filter(z=>z.representation.decipherable===void 0),q=O.filter(z=>z.representation.decipherable===!1),Y=Nr(B,q),G=Nr(B,V);for(k=!1,c.info(\"Stream: Destroying all PeriodStreams for decipherability matters\",E);R.length()>0;){let z=R.get(R.length()-1);R.removeElement(z),o.periodStreamCleared({type:E,manifest:u,period:z})}_.cancel(),_=new W,_.linkToSignal(s);for(let{start:z,end:X}of[...Y,...G]){if(s.isCancelled())return;if(z<X){if(s.isCancelled())return;await B.removeBuffer(z,X)}}kt(()=>{if(s.isCancelled())return;let z=e.getReference().getValue();if(vs(z,Y)){if(o.needsDecipherabilityFlush(),s.isCancelled())return}else if(vs(z,G)&&(o.needsBufferFlush(),s.isCancelled()))return;let X=z.position.getWanted(),Z=u.getPeriodForTime(X);if(Z===void 0){o.error(new Q(\"MEDIA_TIME_NOT_FOUND\",\"The wanted position is not found in the Manifest.\"));return}A(Z)})}}function P(E,C,R,k){c.info(\"Stream: Creating new Stream for\",E,C.start);let _=null,A=new W;A.linkToSignal(k),e.listen(({position:O},B)=>{if(C.end!==void 0&&O.getWanted()>=C.end){let V=u.getPeriodAfter(C);if(C.containsTime(O.getWanted(),V))return;c.info(\"Stream: Destroying PeriodStream as the current playhead moved above it\",E,C.start,O.getWanted(),C.end),B(),R.periodStreamCleared({type:E,manifest:u,period:C}),A.cancel()}},{clearSignal:k,includeLastObservation:!0});let x={bufferType:E,content:{manifest:u,period:C},garbageCollectors:y,maxVideoBufferSize:p,segmentFetcherCreator:i,segmentSinksStore:r,options:a,playbackObserver:e,representationEstimator:t,wantedBufferAhead:m},M=Me(ge({},R),{streamStatusUpdate(O){if(O.hasFinishedLoading){let B=u.getPeriodAfter(C);B!==null&&N(B)}else _!==null&&(c.info(\"Stream: Destroying next PeriodStream due to current one being active\",E,_.period.start),R.periodStreamCleared({type:E,manifest:u,period:_.period}),_.canceller.cancel(),_=null);R.streamStatusUpdate(O)},error(O){_!==null&&(_.canceller.cancel(),_=null),A.cancel(),R.error(O)}});Ps(x,M,A.signal),w(A.signal);function N(O){if(_!==null){if(_.period.id===O.id)return;c.warn(\"Stream: Creating next `PeriodStream` while one was already created.\",E,O.id,_.period.id),R.periodStreamCleared({type:E,manifest:u,period:_.period}),_.canceller.cancel()}let B=new W;B.linkToSignal(k),_={canceller:B,period:O},P(E,O,R,_.canceller.signal)}function w(O){u.addEventListener(\"manifestUpdate\",B=>{for(let V of B.removedPeriods)if(V.id===C.id){if(u.periods.length>0&&u.periods[0].start<=V.start)return kt(()=>{if(!O.isCancelled())return o.needsMediaSourceReload({timeOffset:0,minimumPosition:void 0,maximumPosition:void 0})})}else if(V.start>C.start)break;if(B.addedPeriods.length>0&&_!==null){let V=u.getPeriodAfter(C);(V===null||_.period.id!==V.id)&&(c.warn(\"Stream: Destroying next PeriodStream due to new one being added\",E,_.period.start),R.periodStreamCleared({type:E,manifest:u,period:_.period}),_.canceller.cancel(),_=null)}},O)}}}function vs(n,e){if(e.length===0)return!1;let t=n.position.getPolled();return n.speed>=0?e[e.length-1].end>=t-5:e[0].start<=t+5}var Cs=Sa;var As=Cs;var Nn=class extends oe{constructor(e,t,r){super(),this._canceller=new W,this._manifest=e,this._activeStreams=new Map,this._allBufferTypes=r,this._lastCurrentPeriodId=null;let i=new ya(e);this._maximumPositionCalculator=i;let a=this._canceller.signal;t.listen(({position:o})=>{let s=o.getWanted();if(s<e.getMinimumSafePosition()){let u=new Q(\"MEDIA_TIME_BEFORE_MANIFEST\",\"The current position is behind the earliest time announced in the Manifest.\");this.trigger(\"warning\",u)}else if(s>i.getMaximumAvailablePosition()){let u=new Q(\"MEDIA_TIME_AFTER_MANIFEST\",\"The current position is after the latest time announced in the Manifest.\");this.trigger(\"warning\",u)}},{includeLastObservation:!0,clearSignal:a}),e.addEventListener(\"manifestUpdate\",()=>{this.trigger(\"endingPositionChange\",this._getManifestEndTime()),!a.isCancelled()&&this._checkEndOfStream()},a)}getCurrentEndingTime(){return this._getManifestEndTime()}onAdaptationChange(e,t,r){if(this._manifest.isLastPeriodKnown){let i=this._manifest.periods[this._manifest.periods.length-1];if(t.id===(i==null?void 0:i.id)&&(e===\"audio\"||e===\"video\")){e===\"audio\"?this._maximumPositionCalculator.updateLastAudioAdaptation(r):this._maximumPositionCalculator.updateLastVideoAdaptation(r);let a=this._maximumPositionCalculator.getEndingPosition(),o=a!==void 0?{isEnd:!0,endingPosition:a}:{isEnd:!1,endingPosition:this._maximumPositionCalculator.getMaximumAvailablePosition()};this.trigger(\"endingPositionChange\",o)}}this._canceller.isUsed()||r===null&&this._addActivelyLoadedPeriod(t,e)}onRepresentationChange(e,t){this._addActivelyLoadedPeriod(t,e)}onPeriodCleared(e,t){this._removeActivelyLoadedPeriod(t,e)}onLastSegmentFinishedLoading(e){let t=this._lazilyCreateActiveStreamInfo(e);t.hasFinishedLoadingLastPeriod||(t.hasFinishedLoadingLastPeriod=!0,this._checkEndOfStream())}onLastSegmentLoadingResume(e){let t=this._lazilyCreateActiveStreamInfo(e);t.hasFinishedLoadingLastPeriod&&(t.hasFinishedLoadingLastPeriod=!1,this._checkEndOfStream())}dispose(){this.removeEventListener(),this._canceller.cancel()}_addActivelyLoadedPeriod(e,t){let r=this._lazilyCreateActiveStreamInfo(t);r.activePeriods.has(e)||(r.activePeriods.add(e),this._checkCurrentPeriod())}_removeActivelyLoadedPeriod(e,t){let r=this._activeStreams.get(t);r!==void 0&&r.activePeriods.has(e)&&(r.activePeriods.removeElement(e),this._checkCurrentPeriod())}_checkCurrentPeriod(){if(this._allBufferTypes.length===0)return;let e=this._activeStreams.get(this._allBufferTypes[0]);if(e!==void 0)for(let t of e.activePeriods.toArray()){let r=!0;for(let i of this._allBufferTypes){let a=this._activeStreams.get(i);if(a===void 0)return;if(!a.activePeriods.toArray().some(u=>u.id===t.id)){r=!1;break}}if(r){this._lastCurrentPeriodId!==t.id&&(this._lastCurrentPeriodId=t.id,this.trigger(\"periodChange\",t));return}}}_getManifestEndTime(){let e=this._maximumPositionCalculator.getEndingPosition();return e!==void 0?{isEnd:!0,endingPosition:e}:{isEnd:!1,endingPosition:this._maximumPositionCalculator.getMaximumAvailablePosition()}}_lazilyCreateActiveStreamInfo(e){let t=this._activeStreams.get(e);return t===void 0&&(t={activePeriods:new xt((r,i)=>r.start-i.start),hasFinishedLoadingLastPeriod:!1},this._activeStreams.set(e,t)),t}_checkEndOfStream(){if(!this._manifest.isLastPeriodKnown)return;this._allBufferTypes.every(t=>{let r=this._activeStreams.get(t);return r!==void 0&&r.hasFinishedLoadingLastPeriod})?this.trigger(\"endOfStream\",null):this.trigger(\"resumeStream\",null)}},ya=class{constructor(e){this._manifest=e,this._lastAudioAdaptation=void 0,this._lastVideoAdaptation=void 0}updateLastAudioAdaptation(e){this._lastAudioAdaptation=e}updateLastVideoAdaptation(e){this._lastVideoAdaptation=e}getMaximumAvailablePosition(){if(this._manifest.isDynamic)return this._manifest.getMaximumSafePosition();if(this._lastVideoAdaptation===void 0||this._lastAudioAdaptation===void 0)return this._manifest.getMaximumSafePosition();if(this._lastAudioAdaptation===null){if(this._lastVideoAdaptation===null)return this._manifest.getMaximumSafePosition();{let e=Br(this._lastVideoAdaptation);return typeof e!=\"number\"?this._manifest.getMaximumSafePosition():e}}else if(this._lastVideoAdaptation===null){let e=Br(this._lastAudioAdaptation);return typeof e!=\"number\"?this._manifest.getMaximumSafePosition():e}else{let e=Br(this._lastAudioAdaptation),t=Br(this._lastVideoAdaptation);return typeof e!=\"number\"||typeof t!=\"number\"?this._manifest.getMaximumSafePosition():Math.min(e,t)}}getEndingPosition(){var e,t;if(!this._manifest.isDynamic)return this.getMaximumAvailablePosition();if(!(this._lastVideoAdaptation===void 0||this._lastAudioAdaptation===void 0)){if(this._lastAudioAdaptation===null)return this._lastVideoAdaptation===null?void 0:(e=Ur(this._lastVideoAdaptation))!=null?e:void 0;if(this._lastVideoAdaptation===null)return(t=Ur(this._lastAudioAdaptation))!=null?t:void 0;{let r=Ur(this._lastAudioAdaptation),i=Ur(this._lastVideoAdaptation);return typeof r!=\"number\"||typeof i!=\"number\"?void 0:Math.min(r,i)}}}};function Br(n){let{representations:e}=n,t=null,r;for(let i of e)if(i.index!==r){r=i.index;let a=i.index.getLastAvailablePosition();if(a===void 0)return;a!==null&&(t=v(t)?a:Math.min(t,a))}return t}function Ur(n){let{representations:e}=n,t=null,r;for(let i=0;i<e.length;i++)if(e[i].index!==r){r=e[i].index;let a=e[i].index.getEnd();if(a===void 0)return;a!==null&&(t=v(t)?a:Math.min(t,a))}return t}function _a(n,e,t,r,i,a){a.register(()=>{e.interruptDurationSetting()});let o=new Nn(n,t,r.getBufferTypes());a.register(()=>{o.dispose()}),o.addEventListener(\"warning\",u=>i.onWarning(u)),o.addEventListener(\"periodChange\",u=>i.onPeriodChanged(u)),o.addEventListener(\"endingPositionChange\",u=>{e.setDuration(u.endingPosition,u.isEnd)}),o.addEventListener(\"endOfStream\",()=>{c.debug(\"Init: end-of-stream order received.\"),e.maintainEndOfStream()}),o.addEventListener(\"resumeStream\",()=>{e.stopEndOfStream()});let s=o.getCurrentEndingTime();return e.setDuration(s.endingPosition,s.isEnd),o}function Ta(n,e){let t={audio:null,video:null,text:null};if(e!==null&&(t.text=e.getBufferedRanges()),n===null)return t;let r=K(n.sourceBuffers,s=>s.type===\"audio\"),i=K(n.sourceBuffers,s=>s.type===\"video\"),a=r==null?void 0:r.getBuffered();a!==void 0&&(t.audio=a);let o=i==null?void 0:i.getBuffered();return o!==void 0&&(t.video=o),t}function Ea(n,e){if(typeof n.changeType==\"function\"){try{n.changeType(e)}catch(t){return c.warn(\"Could not call 'changeType' on the given SourceBuffer:\",t instanceof Error?t:\"\"),!1}return!0}return!1}var Pl=[\"\",\"webkit\",\"moz\",\"ms\"];function vl(n,e){let t=document.createElement(n.tagName),r=\"on\"+e;return r in t?!0:(t.setAttribute(r,\"return;\"),typeof t[r]==\"function\")}function Cl(n,e){return e.filter(t=>vl(n,t))[0]}function Al(n,e){return n.reduce((t,r)=>t.concat((e===void 0?Pl:e).map(i=>i+r)),[])}function Te(n,e){let t,r=Al(n,e);return(i,a,o)=>{if(!o.isCancelled()){if(typeof HTMLElement!=\"undefined\"&&i instanceof HTMLElement)if(typeof t==\"undefined\"&&(t=Cl(i,r)),J(t))i.addEventListener(t,a),o.register(()=>{t!==void 0&&i.removeEventListener(t,a)});else{b.CURRENT_ENV===b.DEV&&c.warn(`compat: element ${i.tagName} does not support any of these events: `+r.join(\", \"));return}r.forEach(s=>{let u=!1;typeof i.addEventListener==\"function\"?i.addEventListener(s,a):(u=!0,i[\"on\"+s]=a),o.register(()=>{typeof i.removeEventListener==\"function\"&&i.removeEventListener(s,a),u&&delete i[\"on\"+s]})})}}}var oD=Te([\"loadedmetadata\"]),sD=Te([\"timeupdate\"]),uD=Te([\"addtrack\"]),dD=Te([\"removetrack\"]),Kt=Te([\"sourceopen\",\"webkitsourceopen\"]),Lr=Te([\"sourceclose\",\"webkitsourceclose\"]),Fr=Te([\"sourceended\",\"webkitsourceended\"]),ks=Te([\"update\"]),xs=Te([\"removesourcebuffer\"]),lD=Te([\"keymessage\",\"message\"]),fD=Te([\"keyadded\",\"ready\"]),mD=Te([\"keyerror\",\"error\"]),cD=Te([\"keystatuseschange\"]),pD=Te([\"seeking\"]),gD=Te([\"seeked\"]),hD=Te([\"ended\"]);function kl(n){let e=[];for(let t=0;t<n.length;t++){let r=n[t];r.updating&&e.push(r)}return e}function Bn(n,e){if(c.debug(\"Init: Trying to call endOfStream\"),n.readyState!==\"open\"){c.debug(\"Init: MediaSource not open, cancel endOfStream\");return}let{sourceBuffers:t}=n,r=kl(t);if(r.length===0){c.info(\"Init: Triggering end of stream\");try{n.endOfStream()}catch(a){c.error(\"Unable to call endOfStream\",a instanceof Error?a:new Error(\"Unknown error\"))}return}c.debug(\"Init: Waiting SourceBuffers to be updated before calling endOfStream.\");let i=new W;i.linkToSignal(e);for(let a of r)ks(a,()=>{i.cancel(),Bn(n,e)},i.signal);xs(t,()=>{i.cancel(),Bn(n,e)},i.signal)}function Ms(n,e){let t=new W;t.linkToSignal(e),Kt(n,()=>{c.debug(\"Init: MediaSource re-opened while end-of-stream is active\"),t.cancel(),t=new W,t.linkToSignal(e),Bn(n,t.signal)},e),Bn(n,t.signal)}var xl=!1,Ml=!1,Os=!1,Ol=!1,wl=!1,Dl=!1,Nl=!1,Bl=!1,Ul=!1,Ll=!1,Fl=!1,zl=!1,Wl=!1,Ra=!1,Vl=!1;(function(){var e,t,r;nr||(typeof Ee.MSInputMethodContext!=\"undefined\"&&typeof document.documentMode!=\"undefined\"?(Ml=!0,Os=!0):navigator.appName===\"Microsoft Internet Explorer\"||navigator.appName===\"Netscape\"&&/(Trident|Edge)\\//.test(navigator.userAgent)?Os=!0:navigator.userAgent.toLowerCase().indexOf(\"edg/\")!==-1?xl=!0:navigator.userAgent.toLowerCase().indexOf(\"firefox\")!==-1?Ol=!0:typeof navigator.platform==\"string\"&&/iPad|iPhone|iPod/.test(navigator.platform)?Dl=!0:(Object.prototype.toString.call(Ee.HTMLElement).indexOf(\"Constructor\")>=0||((t=(e=Ee.safari)==null?void 0:e.pushNotification)==null?void 0:t.toString())===\"[object SafariRemoteNotification]\"||/Safari\\/(\\d+)/.test(navigator.userAgent)&&/Version\\/(\\d+)/.test(navigator.userAgent)&&((r=navigator.vendor)==null?void 0:r.indexOf(\"Apple\"))!==-1&&!/Chrome\\/(\\d+)/.test(navigator.userAgent)&&!/Chromium\\/(\\d+)/.test(navigator.userAgent))&&(wl=!0),/SamsungBrowser/.test(navigator.userAgent)&&(Nl=!0),navigator.userAgent.indexOf(\"PlayStation 4\")!==-1?Wl=!0:navigator.userAgent.indexOf(\"PlayStation 5\")!==-1?Ra=!0:/Tizen/.test(navigator.userAgent)?Bl=!0:/[Ww]eb[O0]S/.test(navigator.userAgent)?(Ul=!0,/[Ww]eb[O0]S.TV-2022/.test(navigator.userAgent)||/[Cc]hr[o0]me\\/87/.test(navigator.userAgent)?Fl=!0:(/[Ww]eb[O0]S.TV-2021/.test(navigator.userAgent)||/[Cc]hr[o0]me\\/79/.test(navigator.userAgent))&&(Ll=!0)):/[Pp]anasonic/.test(navigator.userAgent)?zl=!0:navigator.userAgent.indexOf(\"Xbox\")!==-1&&(Vl=!0))})();function Pa(){return Ra}var ql=365*24*3600,Un=class{constructor(e){this._mediaSource=e,this._currentMediaSourceDurationUpdateCanceller=null}updateDuration(e,t){this._currentMediaSourceDurationUpdateCanceller!==null&&this._currentMediaSourceDurationUpdateCanceller.cancel(),this._currentMediaSourceDurationUpdateCanceller=new W;let r=this._mediaSource,i=this._currentMediaSourceDurationUpdateCanceller.signal,a=Kl(r,i),o=new W;o.linkToSignal(i),a.onUpdate(s,{emitCurrentValue:!0,clearSignal:i});function s(){if(o.cancel(),!a.getValue())return;o=new W,o.linkToSignal(i);let u=Gl(r.sourceBuffers,o.signal),f=new W;return f.linkToSignal(o.signal),u.onUpdate(d=>{f.cancel(),f=new W,f.linkToSignal(o.signal),!d&&Ds(r,e,t,f.signal)},{clearSignal:o.signal,emitCurrentValue:!0})}}stopUpdating(){this._currentMediaSourceDurationUpdateCanceller!==null&&(this._currentMediaSourceDurationUpdateCanceller.cancel(),this._currentMediaSourceDurationUpdateCanceller=null)}};function Hl(n,e,t){let r=e;t||(r=Pa()?1/0:ws(e));let i=0;for(let a=0;a<n.sourceBuffers.length;a++){let o=n.sourceBuffers[a],s=o.buffered.length;s>0&&(i=Math.max(o.buffered.end(s-1)))}if(r===n.duration)return\"success\";if(i>r){if(i<n.duration)try{c.info(\"Init: Updating duration to what is currently buffered\",i),n.duration=i}catch(a){return c.warn(\"Duration Updater: Can't update duration on the MediaSource.\",a instanceof Error?a:\"\"),\"failed\"}return\"partial\"}else{let a=n.duration;try{if(c.info(\"Init: Updating duration\",r),n.duration=r,n.readyState===\"open\"&&!isFinite(r)){let s=ws(e);c.info(\"Init: calling `mediaSource.setLiveSeekableRange`\",s),n.setLiveSeekableRange(0,s)}}catch(s){return c.warn(\"Duration Updater: Can't update duration on the MediaSource.\",s instanceof Error?s:\"\"),\"failed\"}let o=Math.abs(n.duration-r);if(o>=.1){let s=Math.abs(n.duration-a);return o<s?\"partial\":\"failed\"}return\"success\"}}function Gl(n,e){if(n.length===0){let i=new j(!1);return i.finish(),i}let t=new j(!1,e);r();for(let i=0;i<n.length;i++){let a=n[i];a.addEventListener(\"updatestart\",r),a.addEventListener(\"update\",r),e.register(()=>{a.removeEventListener(\"updatestart\",r),a.removeEventListener(\"update\",r)})}return t;function r(){for(let i=0;i<n.length;i++)if(n[i].updating){t.setValueIfChanged(!0);return}t.setValueIfChanged(!1)}}function Kl(n,e){let t=new j(n.readyState===\"open\",e);return Kt(n,()=>{c.debug(\"Init: Reacting to MediaSource open in duration updater\"),t.setValueIfChanged(!0)},e),Fr(n,()=>{c.debug(\"Init: Reacting to MediaSource ended in duration updater\"),t.setValueIfChanged(!1)},e),Lr(n,()=>{c.debug(\"Init: Reacting to MediaSource close in duration updater\"),t.setValueIfChanged(!1)},e),t}function Ds(n,e,t,r){if(Hl(n,e,t)===\"success\")return;let a=setTimeout(()=>{o(),Ds(n,e,t,r)},2e3),o=r.register(()=>{clearTimeout(a)})}function ws(n){return Math.max(Math.pow(2,32),n+ql)}var Ln=class extends oe{constructor(e){if(super(),this.id=e,this.sourceBuffers=[],this._canceller=new W,v(_t))throw new Q(\"MEDIA_SOURCE_NOT_SUPPORTED\",\"No MediaSource Object was found in the current browser.\");c.info(\"Init: Creating MediaSource\");let t=new _t;this.readyState=t.readyState;let r=t.handle;this.handle=v(r)?{type:\"media-source\",value:t}:{type:\"handle\",value:r},this._mediaSource=t,this._durationUpdater=new Un(t),this._endOfStreamCanceller=null,Kt(t,()=>{this.readyState=t.readyState,this.trigger(\"mediaSourceOpen\",null)},this._canceller.signal),Fr(t,()=>{this.readyState=t.readyState,this.trigger(\"mediaSourceEnded\",null)},this._canceller.signal),Lr(t,()=>{this.readyState=t.readyState,this.trigger(\"mediaSourceClose\",null)},this._canceller.signal)}addSourceBuffer(e,t){let r=this._mediaSource.addSourceBuffer(t),i=new va(e,t,r);return this.sourceBuffers.push(i),i}setDuration(e,t){this._durationUpdater.updateDuration(e,t)}interruptDurationSetting(){this._durationUpdater.stopUpdating()}maintainEndOfStream(){this._endOfStreamCanceller===null&&(this._endOfStreamCanceller=new W,this._endOfStreamCanceller.linkToSignal(this._canceller.signal),c.debug(\"Init: end-of-stream order received.\"),Ms(this._mediaSource,this._endOfStreamCanceller.signal))}stopEndOfStream(){this._endOfStreamCanceller!==null&&(c.debug(\"Init: resume-stream order received.\"),this._endOfStreamCanceller.cancel(),this._endOfStreamCanceller=null)}dispose(){this.sourceBuffers.forEach(e=>e.dispose()),this._canceller.cancel(),jl(this._mediaSource)}},va=class{constructor(e,t,r){this.type=e,this.codec=t,this._canceller=new W,this._sourceBuffer=r,this._operationQueue=[],this._currentOperations=[];let i=o=>{let s;o instanceof Error?s=o:o.error instanceof Error?s=o.error:s=new Error(\"Unknown SourceBuffer Error\");let u=this._currentOperations;if(this._currentOperations=[],u.length===0)c.error(\"SBI: error for an unknown operation\",s);else{let f=new Ce(s.name,s.message,s.name===\"QuotaExceededError\");for(let d of u)d.reject(f)}},a=()=>{let o=this._currentOperations;this._currentOperations=[];try{for(let s of o)s.resolve(oa(this._sourceBuffer.buffered))}catch(s){for(let u of o)s instanceof Error&&s.name===\"InvalidStateError\"?u.resolve([]):u.reject(s)}this._performNextOperation()};r.addEventListener(\"error\",i),r.addEventListener(\"updateend\",a),this._canceller.signal.register(()=>{r.removeEventListener(\"error\",i),r.removeEventListener(\"updateend\",a)})}appendBuffer(...e){return c.debug(\"SBI: receiving order to push data to the SourceBuffer\",this.type),this._addToQueue({operationName:0,params:e})}remove(e,t){return c.debug(\"SBI: receiving order to remove data from the SourceBuffer\",this.type,e,t),this._addToQueue({operationName:1,params:[e,t]})}getBuffered(){try{return oa(this._sourceBuffer.buffered)}catch(e){return c.error(\"Failed to get buffered time range of SourceBuffer\",this.type,e instanceof Error?e:null),[]}}abort(){try{this._sourceBuffer.abort()}catch(e){c.debug(\"Init: Failed to abort SourceBuffer:\",e instanceof Error?e:null)}this._emptyCurrentQueue()}dispose(){try{this._sourceBuffer.abort()}catch(e){}this._emptyCurrentQueue()}_emptyCurrentQueue(){let e=new ie;this._currentOperations.length>0&&(this._currentOperations.forEach(t=>{t.reject(e)}),this._currentOperations=[]),this._operationQueue.length>0&&(this._operationQueue.forEach(t=>{t.reject(e)}),this._operationQueue=[])}_addToQueue(e){return new Promise((t,r)=>{let i=this._operationQueue.length===0&&this._currentOperations.length===0,a=H({resolve:t,reject:r},e);this._operationQueue.push(a),i&&this._performNextOperation()})}_performNextOperation(){var t,r,i,a,o;if(this._currentOperations.length!==0||this._sourceBuffer.updating)return;let e=this._operationQueue.shift();if(e!==void 0)if(e.operationName===0){this._currentOperations=[{operationName:0,resolve:e.resolve,reject:e.reject}];let s=e.params[0],u=e.params[1],f=s;if(this._operationQueue.length>0&&this._operationQueue[0].operationName===0){let d;s instanceof ArrayBuffer?d=new Uint8Array(s):s instanceof Uint8Array?d=s:d=new Uint8Array(s.buffer);let l=[d];for(;((t=this._operationQueue[0])==null?void 0:t.operationName)===0;){let m=this._operationQueue[0],p=(r=u.appendWindow)!=null?r:[void 0,void 0],g=(i=m.params[1].appendWindow)!=null?i:[void 0,void 0],h=(a=u.timestampOffset)!=null?a:0,I=(o=m.params[1].timestampOffset)!=null?o:0;if(p[0]===g[0]&&p[1]===g[1]&&u.codec===m.params[1].codec&&h===I){let y=m.params[0],T;y instanceof ArrayBuffer?T=new Uint8Array(y):y instanceof Uint8Array?T=y:T=new Uint8Array(y.buffer),l.push(T),this._operationQueue.splice(0,1),this._currentOperations.push({operationName:0,resolve:m.resolve,reject:m.reject})}else break}l.length>1&&(c.info(`MMSI: Merging ${l.length} segments together for perf`,this.type),f=At(...l))}try{this._appendBufferNow(f,u)}catch(d){let l=d instanceof Error?new Ce(d.name,d.message,d.name===\"QuotaExceededError\"):new Ce(\"Error\",\"Unknown SourceBuffer Error during appendBuffer\",!1);this._currentOperations.forEach(m=>{m.reject(l)}),this._currentOperations=[]}}else{this._currentOperations=[e];let[s,u]=e.params;c.debug(\"SBI: removing data from SourceBuffer\",this.type,s,u);try{this._sourceBuffer.remove(s,u)}catch(f){let d=f instanceof Error?new Ce(f.name,f.message,!1):new Ce(\"Error\",\"Unknown SourceBuffer Error during remove\",!1);e.reject(d),this._currentOperations=[]}}}_appendBufferNow(e,t){let r=this._sourceBuffer,{codec:i,timestampOffset:a,appendWindow:o=[]}=t;if(i!==void 0&&i!==this.codec&&(c.debug(\"SBI: updating codec\",i),Ea(r,i)?this.codec=i:c.debug(\"SBI: could not update codec\",i,this.codec)),a!==void 0&&r.timestampOffset!==a){let s=a;c.debug(\"SBI: updating timestampOffset\",i,r.timestampOffset,s),r.timestampOffset=s}if(o[0]===void 0)r.appendWindowStart>0&&(c.debug(\"SBI: re-setting `appendWindowStart` to `0`\"),r.appendWindowStart=0);else if(o[0]!==r.appendWindowStart){if(o[0]>=r.appendWindowEnd){let s=o[0]+1;c.debug(\"SBI: pre-updating `appendWindowEnd`\",s),r.appendWindowEnd=s}c.debug(\"SBI: setting `appendWindowStart`\",o[0]),r.appendWindowStart=o[0]}o[1]===void 0?r.appendWindowEnd!==1/0&&(c.debug(\"SBI: re-setting `appendWindowEnd` to `Infinity`\"),r.appendWindowEnd=1/0):o[1]!==r.appendWindowEnd&&(c.debug(\"SBI: setting `appendWindowEnd`\",o[1]),r.appendWindowEnd=o[1]),c.debug(\"SBI: pushing segment\",this.type),r.appendBuffer(e)}};function jl(n){if(n.readyState!==\"closed\"){let{readyState:e,sourceBuffers:t}=n;for(let r=t.length-1;r>=0;r--){let i=t[r];try{if(e===\"open\"){c.info(\"Init: Aborting SourceBuffer before removing\");try{i.abort()}catch(a){}}c.info(\"Init: Removing SourceBuffer from mediaSource\"),n.removeSourceBuffer(i)}catch(a){}}t.length>0&&c.info(\"Init: Not all SourceBuffers could have been removed.\")}}var Yl=Ae(),zr=Ae(),Ns=1/0,Fn=class extends oe{constructor(e,t,r){super(),this.id=e,this.sourceBuffers=[],this._canceller=new W,this.readyState=\"closed\",this._messageSender=r;let i=Yl();this._messageSender({type:\"create-media-source\",contentId:t,mediaSourceId:i})}onMediaSourceReadyStateChanged(e){switch(e){case\"closed\":this.readyState=\"closed\",this.trigger(\"mediaSourceClose\",null);break;case\"open\":this.readyState=\"open\",this.trigger(\"mediaSourceOpen\",null);break;case\"ended\":this.readyState=\"ended\",this.trigger(\"mediaSourceEnded\",null);break}}addSourceBuffer(e,t){this._messageSender({type:\"add-source-buffer\",mediaSourceId:this.id,value:{sourceBufferType:e,codec:t}});let r=new Ca(e,t,this.id,this._messageSender);return this.sourceBuffers.push(r),r}setDuration(e,t){this._messageSender({type:\"update-media-source-duration\",mediaSourceId:this.id,value:{duration:e,isRealEndKnown:t}})}interruptDurationSetting(){this._messageSender({type:\"stop-media-source-duration\",mediaSourceId:this.id,value:null})}maintainEndOfStream(){this._messageSender({type:\"end-of-stream\",mediaSourceId:this.id,value:null})}stopEndOfStream(){this._messageSender({type:\"stop-end-of-stream\",mediaSourceId:this.id,value:null})}dispose(){this.sourceBuffers.forEach(e=>e.dispose()),this._canceller.cancel(),this._messageSender({type:\"dispose-media-source\",mediaSourceId:this.id,value:null})}},Ca=class{constructor(e,t,r,i){this.type=e,this.codec=t,this._canceller=new W,this._mediaSourceId=r,this._queuedOperations=[],this._pendingOperations=new Map,this._messageSender=i}onOperationSuccess(e,t){let r=this._pendingOperations.get(e);r===void 0?c.warn(\"SBI: unknown SourceBuffer operation succeeded\"):(this._pendingOperations.delete(e),r.resolve(t)),this._performNextQueuedOperationIfItExists()}onOperationFailure(e,t){let r=t.errorName===\"CancellationError\"?new ie:new Ce(t.errorName,t.message,t.isBufferFull),i=this._pendingOperations.get(e);i===void 0?c.info(\"SBI: unknown SourceBuffer operation failed\",r):(this._pendingOperations.delete(e),i.reject(r));let a=new ie;for(let o of this._queuedOperations)o.reject(a);this._queuedOperations=[]}appendBuffer(e,t){return new Promise((r,i)=>{if(this._queuedOperations.length>0||this._pendingOperations.size>=Ns){this._queuedOperations.push({operationName:0,params:[e,t],resolve:r,reject:i});return}try{let a;e instanceof ArrayBuffer?a=e:e.byteLength===e.buffer.byteLength?a=e.buffer:a=e.buffer.slice(e.byteOffset,e.byteLength+e.byteOffset);let o=zr();this._messageSender({type:\"source-buffer-append\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:o,value:{data:a,params:t}},[a]),this._addOperationToQueue(o,r,i)}catch(a){i(a)}})}remove(e,t){return new Promise((r,i)=>{if(this._queuedOperations.length>0||this._pendingOperations.size>=Ns){this._queuedOperations.push({operationName:1,params:[e,t],resolve:r,reject:i});return}try{let a=zr();this._messageSender({type:\"source-buffer-remove\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:a,value:{start:e,end:t}}),this._addOperationToQueue(a,r,i)}catch(a){i(a)}})}abort(){this._messageSender({type:\"abort-source-buffer\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,value:null})}dispose(){this.abort(),this._canceller.cancel()}getBuffered(){}_addOperationToQueue(e,t,r){this._pendingOperations.set(e,{resolve:a,reject:o});let i=this._canceller.signal.register(s=>{this._pendingOperations.delete(e),r(s)});function a(s){i(),t(s)}function o(s){i(),r(s)}}_performNextQueuedOperationIfItExists(){let e=this._queuedOperations.shift();if(e!==void 0)try{if(e.operationName===0){let[t,r]=e.params,i;t instanceof ArrayBuffer?i=t:t.byteLength===t.buffer.byteLength?i=t.buffer:i=t.buffer.slice(t.byteOffset,t.byteLength+t.byteOffset);let a=zr();this._messageSender({type:\"source-buffer-append\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:a,value:{data:i,params:r}},[i]),this._addOperationToQueue(a,e.resolve,e.reject)}else{let[t,r]=e.params,i=zr();this._messageSender({type:\"source-buffer-remove\",mediaSourceId:this._mediaSourceId,sourceBufferType:this.type,operationId:i,value:{start:t,end:r}}),this._addOperationToQueue(i,e.resolve,e.reject)}}catch(t){e.reject(t)}}};function Aa(n){let e=n.map(o=>Math.log(o/n[0])),t=e.map(o=>o-e[0]+1),r=(t[t.length-1]-1)/(n.length*2+10),i=1/r;return n.map((o,s)=>a(s));function a(o){if(o===0)return 0;let s=Math.min(Math.max(1,o),n.length-1);return n[s]===n[s-1]?a(o-1):i*(r+(n[s]*t[s-1]-n[s-1]*t[s])/(n[s]-n[s-1]))+4}}var Fe=class{constructor(e){this._alpha=Math.exp(Math.log(.5)/e),this._lastEstimate=0,this._totalWeight=0}addSample(e,t){let r=Math.pow(this._alpha,e),i=t*(1-r)+r*this._lastEstimate;isNaN(i)||(this._lastEstimate=i,this._totalWeight+=e)}getEstimate(){let e=1-Math.pow(this._alpha,this._totalWeight);return this._lastEstimate/e}};var zn=class{constructor(){this._currentRepresentationData=null,this._lastRepresentationWithGoodScore=null}addSample(e,t,r){let i=r/t,a=this._currentRepresentationData,o;a!==null&&a.representation.id===e.id?(o=a.ewma,a.ewma.addSample(t,i),a.loadedDuration+=r,a.loadedSegments++):(o=new Fe(5),o.addSample(t,i),this._currentRepresentationData={representation:e,ewma:o,loadedDuration:r,loadedSegments:0}),o.getEstimate()>1&&this._lastRepresentationWithGoodScore!==e&&(c.debug(\"ABR: New last stable representation\",e.bitrate),this._lastRepresentationWithGoodScore=e)}getEstimate(e){if(this._currentRepresentationData===null||this._currentRepresentationData.representation.id!==e.id)return;let{ewma:t,loadedSegments:r,loadedDuration:i}=this._currentRepresentationData,a=t.getEstimate(),o=r>=5&&i>=10?1:0;return{score:a,confidenceLevel:o}}getLastStableRepresentation(){return this._lastRepresentationWithGoodScore}};var Bs=6e3,Ql=15e3,$l=3e3,Xl=1e3,Zl=9e3,Wn=class{constructor(e){this._levelsMap=Aa(e).map(t=>t+4),this._bitrates=e,this._lastUnsuitableQualityTimestamp=void 0,this._blockRaiseDelay=Bs,c.debug(\"ABR: Steps for buffer based chooser.\",this._levelsMap.map((t,r)=>`bufferLevel: ${t}, bitrate: ${e[r]}`).join(\" ,\"))}onAddedSegment(e){let t=this._levelsMap,r=this._bitrates,{bufferGap:i,currentBitrate:a,currentScore:o,speed:s}=e;if(v(a)){this._currentEstimate=r[0];return}let u=-1;for(let g=0;g<r.length;g++){let h=r[g];if(h===a)u=g;else if(h>a)break}if(u<0||r.length!==t.length){c.info(\"ABR: Current Bitrate not found in the calculated levels\"),this._currentEstimate=r[0];return}let f;o!==void 0&&(f=s===0?o.score:o.score/s);let d=isFinite(i)?i:0,l=L();if(d<t[u]||f!==void 0&&f<1&&(o==null?void 0:o.confidenceLevel)===1){if((this._lastUnsuitableQualityTimestamp===void 0?-1:l-this._lastUnsuitableQualityTimestamp)<this._blockRaiseDelay+Zl){let I=this._blockRaiseDelay+$l;this._blockRaiseDelay=Math.min(I,Ql),c.debug(\"ABR: Incrementing blocking raise in BufferBasedChooser due to unstable quality\",this._blockRaiseDelay)}else{let I=this._blockRaiseDelay-Xl;this._blockRaiseDelay=Math.max(Bs,I),c.debug(\"ABR: Lowering quality in BufferBasedChooser\",this._blockRaiseDelay)}this._lastUnsuitableQualityTimestamp=l;let h=ne(r,I=>I===a);for(let I=h-1;I>=0;I--)if(d>=t[I]){this._currentEstimate=r[I];return}this._currentEstimate=r[0];return}if(this._lastUnsuitableQualityTimestamp!==void 0&&l-this._lastUnsuitableQualityTimestamp<this._blockRaiseDelay||f===void 0||f<1.15||(o==null?void 0:o.confidenceLevel)!==1){this._currentEstimate=a;return}let m=t[u],p=(()=>{for(let g=u+1;g<t.length;g++)if(t[g]>m)return g})();if(p!==void 0){let g=t[p];if(i>=g){c.debug(\"ABR: Raising quality in BufferBasedChooser\",r[p]),this._currentEstimate=r[p];return}}this._currentEstimate=a}getLastEstimate(){return this._currentEstimate}};function Jl(n,e){let t=-1;for(let o=0;o<n.length;o++){let{segment:s}=n[o].content;if(s.duration<=0)continue;let u=s.time+s.duration;if(!s.complete&&o===n.length-1&&e-s.time>-1.2){t=o;break}if(u>e&&e-s.time>-1.2){t=o;break}}if(t<0)return[];let r=n[t],i=r.content.segment.time,a=[r];for(let o=t+1;o<n.length&&n[o].content.segment.time===i;o++)a.push(n[o]);return a}function Wr(n){if(n.progress.length<5)return;let e=new Fe(2),{progress:t}=n;for(let r=1;r<t.length;r++){let i=t[r].size-t[r-1].size,a=t[r].timestamp-t[r-1].timestamp,o=i*8/(a/1e3);e.addSample(a/1e3,o)}return e.getEstimate()}function Us(n,e){let t=(n.totalSize-n.size)*8;return Math.max(t/e,0)}function ef(n,e,t,r,i){if(r)return;let{bufferGap:a,speed:o,position:s}=e,u=isFinite(a)?a:0,f=s.getWanted()+u,d=Jl(n,f);if(d.length!==1)return;let l=d[0],m=L(),p=l.content.segment.duration*1.5;if(p=Math.min(p,3e3),p=Math.max(p,12e3),m-l.requestTimestamp<p)return;let g=l.progress.length>0?l.progress[l.progress.length-1]:void 0,h=Wr(l);if(g!==void 0&&h!==void 0){let C=Us(g,h);if((m-g.timestamp)/1e3<=C&&C-u/o>2500)return h}if(!l.content.segment.complete)return;let I=l.content.segment.duration,y=(m-l.requestTimestamp)/1e3,T=y<=(I*1.5+2)/o;if(v(t)||T)return;let P=I/y,E=t.bitrate*Math.min(.7,P);if(i===void 0||E<i)return E}function tf(n,e,t){if(t)return!0;let r=isFinite(n.bufferGap)?n.bufferGap:0,i=n.position.getWanted()+r,a=K(e,({content:l})=>l.segment.duration>0&&l.segment.time+l.segment.duration>i);if(a===void 0)return!0;let o=L(),s=a.progress.length>0?a.progress[a.progress.length-1]:void 0,u=Wr(a);if(s===void 0||u===void 0)return!0;let f=Us(s,u);return(o-s.timestamp)/1e3>f*1.2?!0:f-r/n.speed>-1.5}var Vn=class{constructor(e,t){let{ABR_STARVATION_GAP:r,OUT_OF_STARVATION_GAP:i,ABR_STARVATION_FACTOR:a,ABR_REGULAR_FACTOR:o}=U.getCurrent();this._initialBitrate=e,this._inStarvationMode=!1,this._lowLatencyMode=t,t?this._config={starvationGap:r.LOW_LATENCY,outOfStarvationGap:i.LOW_LATENCY,starvationBitrateFactor:a.LOW_LATENCY,regularBitrateFactor:o.LOW_LATENCY}:this._config={starvationGap:r.DEFAULT,outOfStarvationGap:i.DEFAULT,starvationBitrateFactor:a.DEFAULT,regularBitrateFactor:o.DEFAULT}}getBandwidthEstimate(e,t,r,i,a){let o,s,u=this._config,{bufferGap:f,position:d,duration:l}=e,m=isFinite(f)?f:0,{ABR_STARVATION_DURATION_DELTA:p}=U.getCurrent();return isNaN(l)||m+d.getWanted()<l-p?!this._inStarvationMode&&m<=u.starvationGap?(c.info(\"ABR: enter starvation mode.\"),this._inStarvationMode=!0):this._inStarvationMode&&m>=u.outOfStarvationGap&&(c.info(\"ABR: exit starvation mode.\"),this._inStarvationMode=!1):this._inStarvationMode&&(c.info(\"ABR: exit starvation mode.\"),this._inStarvationMode=!1),this._inStarvationMode&&(s=ef(i,e,r,this._lowLatencyMode,a),s!==void 0&&(c.info(\"ABR: starvation mode emergency estimate:\",s),t.reset(),o=v(r)?s:Math.min(s,r.bitrate))),v(o)&&(s=t.getEstimate(),s!==void 0?o=s*(this._inStarvationMode?u.starvationBitrateFactor:u.regularBitrateFactor):a!==void 0?o=a*(this._inStarvationMode?u.starvationBitrateFactor:u.regularBitrateFactor):o=this._initialBitrate),e.speed>1&&(o/=e.speed),{bandwidthEstimate:s,bitrateChosen:o}}isUrgent(e,t,r,i){return t===null?!0:e>=t.bitrate?!1:tf(i,r,this._lowLatencyMode)}};var qn=class{constructor(){this.bandwidth=void 0,this.representation=null,this.algorithmType=3}update(e,t,r){this.representation=e,this.bandwidth=t,this.algorithmType=r}};var Hn=class{constructor(e,t){this._scoreCalculator=e,this._lastAbrEstimate=t,this._consecutiveWrongGuesses=0,this._blockGuessesUntil=0,this._lastMaintanableBitrate=null}getGuess(e,t,r,i,a){let{bufferGap:o,speed:s}=t,u=this._lastAbrEstimate.representation;if(u===null)return null;if(i>u.bitrate)return this._lastAbrEstimate.algorithmType===2&&(this._lastAbrEstimate.representation!==null&&(this._lastMaintanableBitrate=this._lastAbrEstimate.representation.bitrate),this._consecutiveWrongGuesses=0),null;let f=this._scoreCalculator.getEstimate(r);if(this._lastAbrEstimate.algorithmType!==2){if(f===void 0)return null;if(this._canGuessHigher(o,s,f)){let l=Ls(e,r);if(l!==null)return l}return null}if(this._isLastGuessValidated(u,i,f)&&(c.debug(\"ABR: Guessed Representation validated\",u.bitrate),this._lastMaintanableBitrate=u.bitrate,this._consecutiveWrongGuesses=0),r.id!==u.id)return u;if(this._shouldStopGuess(r,f,o,a))return this._consecutiveWrongGuesses++,this._blockGuessesUntil=L()+Math.min(this._consecutiveWrongGuesses*15e3,12e4),nf(e,r);if(f===void 0)return r;if(this._canGuessHigher(o,s,f)){let l=Ls(e,r);if(l!==null)return l}return r}_canGuessHigher(e,t,{score:r,confidenceLevel:i}){return isFinite(e)&&e>=2.5&&L()>this._blockGuessesUntil&&i===1&&r/t>1.01}_shouldStopGuess(e,t,r,i){if(t!==void 0&&t.score<1.01)return!0;if((t===void 0||t.score<1.2)&&r<.6)return!0;let a=i.filter(s=>s.content.representation.id===e.id),o=L();for(let s of a){let u=o-s.requestTimestamp;if(s.content.segment.isInit){if(u>1e3)return!0}else{if(u>s.content.segment.duration*1e3+200)return!0;{let f=Wr(s);if(f!==void 0&&f<e.bitrate*.8)return!0}}}return!1}_isLastGuessValidated(e,t,r){return r!==void 0&&r.confidenceLevel===1&&r.score>1.5?!0:t>=e.bitrate&&(this._lastMaintanableBitrate===null||this._lastMaintanableBitrate<e.bitrate)}};function Ls(n,e){let t=n.length,r=ne(n,({id:i})=>i===e.id);if(r<0)return c.error(\"ABR: Current Representation not found.\"),null;for(;++r<t;)if(n[r].bitrate>e.bitrate)return n[r];return null}function nf(n,e){let t=ne(n,({id:r})=>r===e.id);if(t<0)return c.error(\"ABR: Current Representation not found.\"),null;for(;--t>=0;)if(n[t].bitrate<e.bitrate)return n[t];return null}var Gn=class{constructor(){let{ABR_FAST_EMA:e,ABR_SLOW_EMA:t}=U.getCurrent();this._fastEWMA=new Fe(e),this._slowEWMA=new Fe(t),this._bytesSampled=0}addSample(e,t){let{ABR_MINIMUM_CHUNK_SIZE:r}=U.getCurrent();if(t<r)return;let i=t*8e3/e,a=e/1e3;this._bytesSampled+=t,this._fastEWMA.addSample(a,i),this._slowEWMA.addSample(a,i)}getEstimate(){let{ABR_MINIMUM_TOTAL_BYTES:e}=U.getCurrent();if(!(this._bytesSampled<e))return Math.min(this._fastEWMA.getEstimate(),this._slowEWMA.getEstimate())}reset(){let{ABR_FAST_EMA:e,ABR_SLOW_EMA:t}=U.getCurrent();this._fastEWMA=new Fe(e),this._slowEWMA=new Fe(t),this._bytesSampled=0}};function ka(n,e){if(n.length===0)return[];n.sort((a,o)=>a.bitrate-o.bitrate);let t=n[0].bitrate,r=Math.max(e,t),i=ne(n,a=>a.bitrate>r);return i===-1?n:n.slice(0,i)}function xa(n,e){if(e.width===void 0||e.height===void 0)return n;let t=e.width*e.pixelRatio,r=e.height*e.pixelRatio,i=n.slice().sort((s,u)=>{var f,d;return((f=s.width)!=null?f:0)-((d=u.width)!=null?d:0)}),a=K(i,s=>typeof s.width==\"number\"&&s.width>=t&&typeof s.height==\"number\"&&s.height>=r);if(a===void 0)return n;let o=typeof a.width==\"number\"?a.width:0;return n.filter(s=>typeof s.width==\"number\"?s.width<=o:!0)}var Kn=class{constructor(){this._currentRequests={}}add(e){let{id:t,requestTimestamp:r,content:i}=e;this._currentRequests[t]={requestTimestamp:r,progress:[],content:i}}addProgress(e){let t=this._currentRequests[e.id];if(v(t)){if(b.CURRENT_ENV===b.DEV)throw new Error(\"ABR: progress for a request not added\");c.warn(\"ABR: progress for a request not added\");return}t.progress.push(e)}remove(e){if(v(this._currentRequests[e])){if(b.CURRENT_ENV===b.DEV)throw new Error(\"ABR: can't remove unknown request\");c.warn(\"ABR: can't remove unknown request\")}delete this._currentRequests[e]}getRequests(){return sr(this._currentRequests).filter(e=>!v(e)).sort((e,t)=>e.content.segment.time-t.content.segment.time)}};function Vr(n,e){let t=ne(n,r=>r.bitrate>e);return t===-1?n[n.length-1]:t===0?n[0]:n[t-1]}var Fs=new j(void 0);Fs.finish();var zs=new j(1/0);zs.finish();function Ma(n){let e={},{initialBitrates:t,throttlers:r,lowLatencyMode:i}=n;return function(s,u,f,d,l){var I,y,T;let{type:m}=s.adaptation,p=a(m),g=(I=t[m])!=null?I:0,h={limitResolution:(y=r.limitResolution[m])!=null?y:Fs,throttleBitrate:(T=r.throttleBitrate[m])!=null?T:zs};return rf({bandwidthEstimator:p,context:s,currentRepresentation:u,filters:h,initialBitrate:g,playbackObserver:d,representations:f,lowLatencyMode:i},l)};function a(o){let s=e[o];if(v(s)){c.debug(\"ABR: Creating new BandwidthEstimator for \",o);let u=new Gn;return e[o]=u,u}return s}}function rf({bandwidthEstimator:n,context:e,currentRepresentation:t,filters:r,initialBitrate:i,lowLatencyMode:a,playbackObserver:o,representations:s},u){let f=new zn,d=new Vn(i!=null?i:0,a),l=new Kn,m=D,p={metrics:T,requestBegin:P,requestProgress:E,requestEnd:C,addedSegment(R){m(R)}},g=new W;g.linkToSignal(u);let h=I(s.getValue(),g.signal);return s.onUpdate(y,{clearSignal:u}),{estimates:h,callbacks:p};function I(R,k){if(R.length<=1)return new j({bitrate:void 0,representation:R[0],urgent:!0,knownStableBitrate:void 0});let _=!1,A=R.sort((q,Y)=>q.bitrate-Y.bitrate),x=new Wn(A.map(q=>q.bitrate)),M=new qn,N=new Hn(f,M),w=o.getReference().getValue(),O=new j(V());return o.listen(q=>{w=q,B()},{includeLastObservation:!1,clearSignal:k}),m=function(q){if(w===null)return;let{position:Y,speed:G}=w,z=q.buffered,X=xr(z,Y.getWanted()),{representation:Z}=q.content,me=f.getEstimate(Z),ce=Z.bitrate,de={bufferGap:X,currentBitrate:ce,currentScore:me,speed:G};x.onAddedSegment(de),B()},k.register(()=>{m=D}),r.throttleBitrate.onUpdate(B,{clearSignal:k}),r.limitResolution.onUpdate(B,{clearSignal:k}),O;function B(){O.setValue(V())}function V(){let{bufferGap:q,position:Y,maximumPosition:G}=w,z=r.limitResolution.getValue(),X=r.throttleBitrate.getValue(),Z=t.getValue(),me=af(A,z,X),ce=l.getRequests(),{bandwidthEstimate:de,bitrateChosen:be}=d.getBandwidthEstimate(w,n,Z,ce,M.bandwidth),tr=f.getLastStableRepresentation(),pe=tr===null?void 0:tr.bitrate/(w.speed>0?w.speed:1),{ABR_ENTER_BUFFER_BASED_ALGO:Se,ABR_EXIT_BUFFER_BASED_ALGO:Yt}=U.getCurrent();_&&q<=Yt?_=!1:!_&&isFinite(q)&&q>=Se&&(_=!0);let Ge=Vr(me,be),xe=x.getLastEstimate(),Ot=Ge.bitrate,at=null;_&&xe!==void 0&&xe>Ot&&(at=Vr(me,xe),Ot=at.bitrate);let ot=null;return a&&Z!==null&&e.manifest.isDynamic&&G-Y.getWanted()<40&&(ot=N.getGuess(A,w,Z,Ot,ce)),ot!==null&&ot.bitrate>Ot?(c.debug(\"ABR: Choosing representation with guess-based estimation.\",ot.bitrate,ot.id),M.update(ot,de,2),{bitrate:de,representation:ot,urgent:Z===null||ot.bitrate<Z.bitrate,knownStableBitrate:pe}):at!==null?(c.debug(\"ABR: Choosing representation with buffer-based estimation.\",at.bitrate,at.id),M.update(at,de,0),{bitrate:de,representation:at,urgent:d.isUrgent(at.bitrate,Z,ce,w),knownStableBitrate:pe}):(c.debug(\"ABR: Choosing representation with bandwidth estimation.\",Ge.bitrate,Ge.id),M.update(Ge,de,1),{bitrate:de,representation:Ge,urgent:d.isUrgent(Ge.bitrate,Z,ce,w),knownStableBitrate:pe})}}function y(){let R=s.getValue();g.cancel(),g=new W,g.linkToSignal(u),I(R,g.signal).onUpdate(function(A){h.setValue(A)},{clearSignal:g.signal,emitCurrentValue:!0})}function T(R){let{requestDuration:k,segmentDuration:_,size:A,content:x}=R;if(n.addSample(k,A),!x.segment.isInit){let{segment:M,representation:N}=x;if(_===void 0&&!M.complete)return;let w=_!=null?_:M.duration;f.addSample(N,k/1e3,w)}}function P(R){l.add(R)}function E(R){l.addProgress(R)}function C(R){l.remove(R.id)}}function af(n,e,t){let r=n;return t!==void 0&&t<1/0&&(r=ka(r,t)),e!==void 0&&(r=xa(r,e)),r}var Ws=Ma;function it(n){return n instanceof re?new je(\"PIPELINE_LOAD_ERROR\",n):he(n,{defaultCode:\"PIPELINE_LOAD_ERROR\",defaultReason:\"Unknown error when fetching the Manifest\"})}function Oa(n){let e=(Math.random()*2-1)*.3;return n*(e+1)}function of(n){return n instanceof re?n.type===St.ERROR_HTTP_CODE?n.status>=500||n.status===404||n.status===415||n.status===412:n.type===St.TIMEOUT||n.type===St.ERROR_EVENT:n instanceof Ke?typeof n.canRetry==\"boolean\"?n.canRetry:n.xhr!==void 0?n.xhr.status>=500||n.xhr.status===404||n.xhr.status===415||n.xhr.status===412:!1:wt(n)&&n.code===\"INTEGRITY_ERROR\"}async function wa(n,e,t,r,i){if(i.cancellationError!==null)return Promise.reject(i.cancellationError);let{baseDelay:a,maxDelay:o,maxRetry:s,onRetry:u}=r;n!==null&&n.length===0&&c.warn(\"Fetchers: no CDN given to `scheduleRequestWithCdns`.\");let f=new Map,d=l();if(d===void 0)throw new Error(\"No CDN to request\");return m(d);function l(){if(n===null){let I=f.get(null);return I!==void 0&&I.isBlacklisted?void 0:null}else{if(e===null)return h(n);{let I=e.getCdnPreferenceForResource(n);return h(I)}}}async function m(I){try{return await t(I,i)}catch(y){if(W.isCancellationError(y))throw y;I!==null&&e!==null&&e.downgradeCdn(I);let T=f.get(I);if(T===void 0?(T={errorCounter:1,blockedUntil:void 0,isBlacklisted:!1},f.set(I,T)):T.errorCounter++,!of(y))return T.blockedUntil=void 0,T.isBlacklisted=!0,p(y);if(T.errorCounter>s)T.blockedUntil=void 0,T.isBlacklisted=!0;else{let P=T.errorCounter,E=Math.min(a*Math.pow(2,P-1),o),C=Oa(E);T.blockedUntil=L()+C}return p(y)}}async function p(I){let y=l();if(i.isCancelled())throw i.cancellationError;if(y===void 0)throw I;if(u(I),i.isCancelled())throw i.cancellationError;return g(y,I)}function g(I,y){let T=f.get(I);if(T===void 0||T.blockedUntil===void 0)return m(I);let P=L(),E=T.blockedUntil-P;if(E<=0)return m(I);let C=new W,R=C.linkToSignal(i);return new Promise((k,_)=>{e==null||e.addEventListener(\"priorityChange\",()=>{let M=l();if(i.isCancelled())throw i.cancellationError;if(M===void 0)return x(y);M!==I&&(C.cancel(),g(M,y).then(A,x))},C.signal),Mn(E,C.signal).then(()=>m(I).then(A,x),D);function A(M){R(),k(M)}function x(M){R(),_(M)}})}function h(I){var T;if(f.size===0)return I[0];let y=L();return(T=I.filter(P=>{var E;return((E=f.get(P))==null?void 0:E.isBlacklisted)!==!0}).reduce((P,E)=>{var R;let C=(R=f.get(E))==null?void 0:R.blockedUntil;return C!==void 0&&C<=y&&(C=void 0),P===void 0?[E,C]:P[1]===void 0?P:C===void 0?[E,void 0]:C<P[1]?[E,C]:P},void 0))==null?void 0:T[0]}}function Da(n,e,t){return wa(null,null,n,e,t)}var jn=class extends oe{constructor(e,t,r){super(),this.scheduleManualRefresh=D,this._manifestUrls=e,this._pipelines=t.manifest,this._settings=r,this._canceller=new W,this._isStarted=!1,this._isRefreshPending=!1,this._consecutiveUnsafeMode=0,this._prioritizedContentUrl=null}dispose(){this._canceller.cancel(),this.removeEventListener()}start(){if(this._isStarted)return;this._isStarted=!0;let e,t=this._settings.initialManifest;t instanceof Nt?e=Promise.resolve({manifest:t}):t!==void 0?e=this.parse(t,{previousManifest:null,unsafeMode:!1},void 0):e=this._fetchManifest(void 0).then(r=>r.parse({previousManifest:null,unsafeMode:!1})),e.then(r=>{this.trigger(\"manifestReady\",r.manifest),this._canceller.isUsed()||this._recursivelyRefreshManifest(r.manifest,r)}).catch(r=>this._onFatalError(r))}updateContentUrls(e,t){var r;this._prioritizedContentUrl=(r=e==null?void 0:e[0])!=null?r:void 0,t&&this.scheduleManualRefresh({enablePartialRefresh:!1,delay:0,canUseUnsafeMode:!1})}async _fetchManifest(e){var u;let t=this._canceller.signal,r=this._settings,i=this._pipelines,a=e!=null?e:(u=this._manifestUrls)==null?void 0:u[0],o=this._getBackoffSetting(f=>{this.trigger(\"warning\",it(f))});try{let f=await s(a);return{parse:d=>this._parseLoadedManifest(f,d,a)}}catch(f){throw it(f)}function s(f){let{loadManifest:d}=i,l=r.requestTimeout===void 0?U.getCurrent().DEFAULT_REQUEST_TIMEOUT:r.requestTimeout,m=r.connectionTimeout===void 0?U.getCurrent().DEFAULT_CONNECTION_TIMEOUT:r.connectionTimeout;return l<0&&(l=void 0),m<0&&(m=void 0),Da(()=>d(f,{timeout:l,connectionTimeout:m},t),o,t)}}parse(e,t,r){return this._parseLoadedManifest({responseData:e,size:void 0,requestDuration:void 0},t,r)}async _parseLoadedManifest(e,t,r){var h;let i=L(),a=this._canceller.signal,o=this.trigger.bind(this),{sendingTime:s,receivedTime:u}=e,f=this._getBackoffSetting(I=>{this.trigger(\"warning\",it(I))}),d=r!=null?r:(h=this._manifestUrls)==null?void 0:h[0],l={externalClockOffset:t.externalClockOffset,unsafeMode:t.unsafeMode,previousManifest:t.previousManifest,originalUrl:d};try{let I=this._pipelines.parseManifest(e,l,p,a,m);if(sf(I)){let{manifest:y,warnings:T}=await I;return g(y,T)}else return g(I.manifest,I.warnings)}catch(I){throw he(I,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"Unknown error when parsing the Manifest\"})}async function m(I){try{return await Da(I,f,a)}catch(y){throw it(y)}}function p(I){for(let y of I){if(a.isCancelled())return;let T=he(y,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"Unknown error when parsing the Manifest\"});o(\"warning\",T)}}function g(I,y){p(y);let T=L()-i;return c.info(`MF: Manifest parsed in ${T}ms`),{manifest:I,sendingTime:s,receivedTime:u,parsingTime:T}}}_getBackoffSetting(e){let{DEFAULT_MAX_MANIFEST_REQUEST_RETRY:t,INITIAL_BACKOFF_DELAY_BASE:r,MAX_BACKOFF_DELAY_BASE:i}=U.getCurrent(),{lowLatencyMode:a,maxRetry:o}=this._settings,s=a?r.LOW_LATENCY:r.REGULAR,u=a?i.LOW_LATENCY:i.REGULAR,f=o!=null?o:t;return{onRetry:e,baseDelay:s,maxDelay:u,maxRetry:f}}_recursivelyRefreshManifest(e,{sendingTime:t,parsingTime:r,updatingTime:i}){let{MAX_CONSECUTIVE_MANIFEST_PARSING_IN_UNSAFE_MODE:a,MIN_MANIFEST_PARSING_TIME_TO_ENTER_UNSAFE_MODE:o}=U.getCurrent(),s=r!==void 0?r+(i!=null?i:0):void 0,u=!1;this._consecutiveUnsafeMode>0?u=this._consecutiveUnsafeMode<a:s!==void 0&&(u=s>=o);let f=t===void 0?0:L()-t,d=Math.max(this._settings.minimumManifestUpdateInterval-f,0),l=new W;if(l.linkToSignal(this._canceller.signal),this.scheduleManualRefresh=m=>{let{enablePartialRefresh:p,delay:g,canUseUnsafeMode:h}=m,I=h&&u,y=t===void 0?0:L()-t,T=Math.max(this._settings.minimumManifestUpdateInterval-y,0),P=setTimeout(()=>{l.cancel(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:p,unsafeMode:I})},Math.max((g!=null?g:0)-y,T));l.signal.register(()=>{clearTimeout(P)})},e.expired!==null){let m=setTimeout(()=>{var p;(p=e.expired)==null||p.then(()=>{l.cancel(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:!1,unsafeMode:u})},D)},d);l.signal.register(()=>{clearTimeout(m)})}if(e.lifetime!==void 0&&e.lifetime>=0){let m=e.lifetime*1e3-f,p;s===void 0?p=m:e.lifetime<3&&s>=100?(p=Math.min(Math.max(3e3-f,Math.max(m,0)+s),m*6),c.info(\"MUS: Manifest update rythm is too frequent. Postponing next request.\",m,p)):s>=e.lifetime*1e3/10?(p=Math.min(Math.max(m,0)+s,m*6),c.info(\"MUS: Manifest took too long to parse. Postponing next request\",p,p)):p=m;let g=setTimeout(()=>{l.cancel(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:!1,unsafeMode:u})},Math.max(p,d));l.signal.register(()=>{clearTimeout(g)})}}_triggerNextManifestRefresh(e,{enablePartialRefresh:t,unsafeMode:r}){let i=e.updateUrl,a,o;this._prioritizedContentUrl!==null?(a=!0,o=this._prioritizedContentUrl,this._prioritizedContentUrl=null):(a=!t||i===void 0,o=a?e.getUrls()[0]:i);let s=e.clockOffset;r?(this._consecutiveUnsafeMode+=1,c.info('Init: Refreshing the Manifest in \"unsafeMode\" for the '+String(this._consecutiveUnsafeMode)+\" consecutive time.\")):this._consecutiveUnsafeMode>0&&(c.info('Init: Not parsing the Manifest in \"unsafeMode\" anymore after '+String(this._consecutiveUnsafeMode)+\" consecutive times.\"),this._consecutiveUnsafeMode=0),!this._isRefreshPending&&(this._isRefreshPending=!0,this._fetchManifest(o).then(u=>u.parse({externalClockOffset:s,previousManifest:e,unsafeMode:r})).then(u=>{this._isRefreshPending=!1;let{manifest:f,sendingTime:d,parsingTime:l}=u,m=L();if(a)e.replace(f);else try{e.update(f)}catch(g){let h=g instanceof Error?g.message:\"unknown error\";c.warn(`MUS: Attempt to update Manifest failed: ${h}`,\"Re-downloading the Manifest fully\");let{FAILED_PARTIAL_UPDATE_MANIFEST_REFRESH_DELAY:I}=U.getCurrent(),y=d===void 0?0:L()-d,T=Math.max(this._settings.minimumManifestUpdateInterval-y,0),P=D,E=setTimeout(()=>{P(),this._triggerNextManifestRefresh(e,{enablePartialRefresh:!1,unsafeMode:!1})},Math.max(I-y,T));P=this._canceller.signal.register(()=>{clearTimeout(E)});return}let p=L()-m;this._recursivelyRefreshManifest(e,{sendingTime:d,parsingTime:l,updatingTime:p})}).catch(u=>{this._isRefreshPending=!1,this._onFatalError(u)}))}_onFatalError(e){this._canceller.isUsed()||(this.trigger(\"error\",e),this.dispose())}};function sf(n){return n instanceof Promise}var Na=jn;var Yn=class extends oe{constructor(e){super(),this._downgradedCdnList={metadata:[],timeouts:[]},e.register(()=>{for(let t of this._downgradedCdnList.timeouts)clearTimeout(t);this._downgradedCdnList={metadata:[],timeouts:[]}})}getCdnPreferenceForResource(e){return e.length<=1?e:this._innerGetCdnPreferenceForResource(e)}downgradeCdn(e){let t=Vs(this._downgradedCdnList.metadata,e);t>=0&&this._removeIndexFromDowngradeList(t);let{DEFAULT_CDN_DOWNGRADE_TIME:r}=U.getCurrent(),i=r;this._downgradedCdnList.metadata.push(e);let a=setTimeout(()=>{let o=Vs(this._downgradedCdnList.metadata,e);o>=0&&this._removeIndexFromDowngradeList(o),this.trigger(\"priorityChange\",null)},i);this._downgradedCdnList.timeouts.push(a),this.trigger(\"priorityChange\",null)}_innerGetCdnPreferenceForResource(e){let[t,r]=e.reduce((i,a)=>(this._downgradedCdnList.metadata.some(o=>o.id===a.id&&o.baseUrl===a.baseUrl)?i[1].push(a):i[0].push(a),i),[[],[]]);return t.concat(r)}_removeIndexFromDowngradeList(e){this._downgradedCdnList.metadata.splice(e,1);let t=this._downgradedCdnList.timeouts.splice(e,1);clearTimeout(t[0])}};function Vs(n,e){return n.length===0?-1:e.id!==void 0?ne(n,t=>t.id===e.id):ne(n,t=>t.baseUrl===e.baseUrl)}function Ba(n,e){let t=new WeakMap;return{createRequest(r,i,a,o){let s=f=>e(r,a,f),u=n.create(s,i,a,o);return t.set(u,s),u},updatePriority(r,i){let a=t.get(r);if(a===void 0){c.warn(\"Fetchers: Cannot update the priority of a request: task not found.\");return}n.updatePriority(a,i)}}}var Ua=class{constructor(){this._cache=new WeakMap}add({representation:e,segment:t},r){t.isInit&&this._cache.set(e,r)}get({representation:e,segment:t}){if(t.isInit){let r=this._cache.get(e);if(r!==void 0)return r}return null}},qs=Ua;var uf=Ae();function La(n,e,t,r,i){let a;i.connectionTimeout===void 0||i.connectionTimeout<0?a=void 0:a=i.connectionTimeout;let o={timeout:i.requestTimeout<0?void 0:i.requestTimeout,connectionTimeout:a},s=se([\"audio\",\"video\"],n)?new qs:void 0,{loadSegment:u,parseSegment:f}=e;return async function(l,m,p){var q,Y,G;let{segment:g,adaptation:h,representation:I,manifest:y,period:T}=l,P=yt(l),E=uf(),C,R=[],k=0,_=!1,A={segment:g,type:h.type,language:h.language,isLive:y.isLive,periodStart:T.start,periodEnd:T.end,mimeType:I.mimeType,codecs:I.codecs[0],manifestPublishTime:y.publishTime},x={onProgress(z){var X;C===void 0&&z.totalSize!==void 0&&z.size<z.totalSize&&((X=r.onProgress)==null||X.call(r,{duration:z.duration,size:z.size,totalSize:z.totalSize,timestamp:L(),id:E}))},onNewChunk(z){m.onChunk(O(z,!0))}},M=s!==void 0?s.get(l):null;if(M!==null)return c.debug(\"SF: Found wanted segment in cache\",P),m.onChunk(O(M,!1)),Promise.resolve();c.debug(\"SF: Beginning request\",P),(q=r.onRequestBegin)==null||q.call(r,{requestTimestamp:L(),id:E,content:l}),p.register(N);try{let z=await wa(l.representation.cdnMetadata,t,w,H({onRetry:B},i),p);if(z.resultType===\"segment-loaded\"){let X=z.resultData.responseData;s!==void 0&&s.add(l,z.resultData.responseData),m.onChunk(O(X,!1))}else z.resultType===\"segment-created\"&&m.onChunk(O(z.resultData,!1));c.debug(\"SF: Segment request ended with success\",P),m.onAllChunksReceived(),z.resultType!==\"segment-created\"?(C=z.resultData,V()):C=null,p.isCancelled()||(Y=r.onRequestEnd)==null||Y.call(r,{id:E}),p.deregister(N)}catch(z){throw p.deregister(N),C=null,z instanceof ie?(c.debug(\"SF: Segment request aborted\",P),z):(c.debug(\"SF: Segment request failed\",P),(G=r.onRequestEnd)==null||G.call(r,{id:E}),it(z))}function N(){var z;C===void 0&&(c.debug(\"SF: Segment request cancelled\",P),C=null,(z=r.onRequestEnd)==null||z.call(r,{id:E}))}function w(z){return u(z,A,o,p,x)}function O(z,X){R.push(!1);let Z=R.length-1;return function(ce){let de={data:z,isChunked:X};try{let be=f(de,A,ce);return R[Z]||(k=k!==void 0&&be.segmentType===\"media\"&&be.chunkInfos!==null&&be.chunkInfos.duration!==void 0?k+be.chunkInfos.duration:void 0,R[Z]=!0,V()),be}catch(be){throw he(be,{defaultCode:\"PIPELINE_PARSE_ERROR\",defaultReason:\"Unknown parsing error\"})}}}function B(z){m.onRetry(it(z))}function V(){var z;_||!v(C)&&C.size!==void 0&&C.requestDuration!==void 0&&R.length>0&&R.every(X=>X)&&(_=!0,(z=r.onMetrics)==null||z.call(r,{size:C.size,requestDuration:C.requestDuration,content:l,segmentDuration:k}))}}}function Hs({maxRetry:n,lowLatencyMode:e,requestTimeout:t,connectionTimeout:r}){let{DEFAULT_MAX_REQUESTS_RETRY_ON_ERROR:i,DEFAULT_REQUEST_TIMEOUT:a,DEFAULT_CONNECTION_TIMEOUT:o,INITIAL_BACKOFF_DELAY_BASE:s,MAX_BACKOFF_DELAY_BASE:u}=U.getCurrent();return{maxRetry:n!=null?n:i,baseDelay:e?s.LOW_LATENCY:s.REGULAR,maxDelay:e?u.LOW_LATENCY:u.REGULAR,requestTimeout:t===void 0?a:t,connectionTimeout:r===void 0?o:r}}var $n=class{constructor({prioritySteps:e}){if(this._minPendingPriority=null,this._waitingQueue=[],this._pendingTasks=[],this._prioritySteps=e,this._prioritySteps.high>=this._prioritySteps.low)throw new Error(\"TP: the max high level priority should be given a lowerpriority number than the min low priority.\")}create(e,t,r,i){let a;return Mt(i,(o,s)=>(a={hasEnded:!1,priority:t,trigger:()=>{if(a.hasEnded)return;let f=()=>{p(),this._endTask(a)},d=g=>{r.beforeEnded(),f(),o(g)},l=g=>{f(),s(g)},m=new W,p=m.linkToSignal(i);a.interrupter=m,m.signal.register(()=>{a.interrupter=null,i.isCancelled()||r.beforeInterrupted()}),this._minPendingPriority=this._minPendingPriority===null?a.priority:Math.min(this._minPendingPriority,a.priority),this._pendingTasks.push(a),a.taskFn(m.signal).then(d).catch(g=>{!i.isCancelled()&&m.isUsed()&&g instanceof ie||l(g)})},taskFn:e,interrupter:null},this._canBeStartedNow(a)?(a.trigger(),this._isRunningHighPriorityTasks()&&this._interruptCancellableTasks()):this._waitingQueue.push(a),()=>this._endTask(a)))}_endTask(e){e.hasEnded=!0;let t=Qn(e.taskFn,this._waitingQueue);if(t>=0)this._waitingQueue.splice(t,1);else{let r=Qn(e.taskFn,this._pendingTasks);if(r<0)return;this._pendingTasks.splice(r,1),this._pendingTasks.length>0?this._minPendingPriority===e.priority&&(this._minPendingPriority=Math.min(...this._pendingTasks.map(i=>i.priority))):this._minPendingPriority=null,this._loopThroughWaitingQueue()}}updatePriority(e,t){let r=Qn(e,this._waitingQueue);if(r>=0){let s=this._waitingQueue[r];if(s.priority===t||(s.priority=t,!this._canBeStartedNow(s)))return;this._findAndRunWaitingQueueTask(r),this._isRunningHighPriorityTasks()&&this._interruptCancellableTasks();return}let i=Qn(e,this._pendingTasks);if(i<0){c.warn(\"TP: request to update the priority of a non-existent task\");return}let a=this._pendingTasks[i];if(a.priority===t)return;let o=a.priority;a.priority=t,this._minPendingPriority===null||t<this._minPendingPriority?this._minPendingPriority=t:this._minPendingPriority===o&&(this._pendingTasks.length===1?this._minPendingPriority=t:this._minPendingPriority=Math.min(...this._pendingTasks.map(s=>s.priority)),this._loopThroughWaitingQueue()),this._isRunningHighPriorityTasks()&&this._interruptCancellableTasks()}_loopThroughWaitingQueue(){let e=this._waitingQueue.reduce((t,r)=>t===null||t>r.priority?r.priority:t,null);if(!(e===null||this._minPendingPriority!==null&&this._minPendingPriority<e))for(let t=0;t<this._waitingQueue.length;t++){let r=this._minPendingPriority===null?e:Math.min(this._minPendingPriority,e);this._waitingQueue[t].priority<=r&&(this._findAndRunWaitingQueueTask(t),t--)}}_interruptCancellableTasks(){for(let e=0;e<this._pendingTasks.length;e++){let t=this._pendingTasks[e];if(t.priority>=this._prioritySteps.low)return this._interruptPendingTask(t),this._interruptCancellableTasks()}}_findAndRunWaitingQueueTask(e){return e>=this._waitingQueue.length||e<0?(c.warn(\"TP : Tried to start a non existing task\"),!1):(this._waitingQueue.splice(e,1)[0].trigger(),!0)}_interruptPendingTask(e){var r;let t=Qn(e.taskFn,this._pendingTasks);if(t<0){c.warn(\"TP: Interrupting a non-existent pending task. Aborting...\");return}this._pendingTasks.splice(t,1),this._waitingQueue.push(e),this._pendingTasks.length===0?this._minPendingPriority=null:this._minPendingPriority===e.priority&&(this._minPendingPriority=Math.min(...this._pendingTasks.map(i=>i.priority))),(r=e.interrupter)==null||r.cancel()}_canBeStartedNow(e){return this._minPendingPriority===null||e.priority<=this._minPendingPriority}_isRunningHighPriorityTasks(){return this._minPendingPriority!==null&&this._minPendingPriority<=this._prioritySteps.high}};function Qn(n,e){return ne(e,t=>t.taskFn===n)}var Xn=class{constructor(e,t,r){let i=new Yn(r),{MIN_CANCELABLE_PRIORITY:a,MAX_HIGH_PRIORITY_LEVEL:o}=U.getCurrent();this._transport=e,this._prioritizer=new $n({prioritySteps:{high:o,low:a}}),this._cdnPrioritizer=i,this._backoffOptions=t}createSegmentFetcher(e,t){let r=Hs(this._backoffOptions),i=this._transport[e],a=La(e,i,this._cdnPrioritizer,t,r);return Ba(this._prioritizer,a)}};var Fa=Xn;var Zn=class{constructor(e){this._segmentSinksStore=e,this._currentFreezeTimestamp=null}needToReload(e){let{readyState:t,rebuffering:r,freezing:i}=e;if((e.bufferGap!==void 0&&isFinite(e.bufferGap)?e.bufferGap:0)<6||r===null&&i===null||t>1)return this._currentFreezeTimestamp=null,!1;let o=L();this._currentFreezeTimestamp===null&&(this._currentFreezeTimestamp=o);let s=r!==null&&o-r.timestamp>4e3,u=i!==null&&o-i.timestamp>4e3;if((s||u)&&L()-this._currentFreezeTimestamp>4e3){let f=this._segmentSinksStore.getStatus(\"audio\"),d=this._segmentSinksStore.getStatus(\"video\"),l=!0,m=!0;for(let p of[f,d])if(p.type===\"initialized\")for(let g of p.value.getLastKnownInventory()){let{representation:h}=g.infos;if(h.decipherable===!1)return c.warn(\"Init: we have undecipherable segments left in the buffer, reloading\"),this._currentFreezeTimestamp=null,!0;h.contentProtections!==void 0&&(m=!1,h.decipherable!==!0&&(l=!1))}if(!m&&l)return c.warn(\"Init: we are frozen despite only having decipherable segments left in the buffer, reloading\"),this._currentFreezeTimestamp=null,!0}return!1}};var{DEFAULT_WANTED_BUFFER_AHEAD:df,DEFAULT_MAX_VIDEO_BUFFER_SIZE:lf,DEFAULT_MAX_BUFFER_AHEAD:ff,DEFAULT_MAX_BUFFER_BEHIND:mf}=U.getCurrent(),za=new j(df),Wa=new j(lf),Va=new j(ff),qa=new j(mf),qr=new j({height:void 0,width:void 0,pixelRatio:1}),Hr=new j(1/0);function $(n,e){c.debug(\"<--- Sending to Main:\",n.type),e===void 0?postMessage(n):postMessage(n,e)}function De(n){return he(n,{defaultCode:\"NONE\",defaultReason:\"An unknown error stopped content playback.\"}).serialize()}var Jn=class{constructor(){this._refs=new Map}reset(){var e,t,r,i,a,o,s,u,f,d,l,m;for(let p of this._refs.keys())(t=(e=this._refs.get(p))==null?void 0:e.audio)==null||t.trackReference.finish(),(i=(r=this._refs.get(p))==null?void 0:r.audio)==null||i.representations.finish(),(o=(a=this._refs.get(p))==null?void 0:a.video)==null||o.trackReference.finish(),(u=(s=this._refs.get(p))==null?void 0:s.video)==null||u.representations.finish(),(d=(f=this._refs.get(p))==null?void 0:f.text)==null||d.trackReference.finish(),(m=(l=this._refs.get(p))==null?void 0:l.text)==null||m.representations.finish();this._refs=new Map}addTrackSetter(e,t,r){var s,u;let i=this._refs.get(e);i===void 0&&(i={},this._refs.set(e,i)),i[t]!==void 0&&(c.warn(\"WP: Track for periodId already declared\",e,t),(s=i[t])==null||s.trackReference.finish(),(u=i[t])==null||u.representations.finish());let a=r.getValue(),o;v(a)?o=new j({representationIds:[],switchingMode:\"lazy\"}):(o=new j(a.representations.getValue()),r.setValue(H({},a,{representations:o}))),i[t]={trackReference:r,representations:o}}setTrack(e,t,r){var a;let i=(a=this._refs.get(e))==null?void 0:a[t];return i===void 0?(c.debug(\"WP: Setting track for inexistent periodId\",e,t),!1):(v(r)?(i.representations=new j({representationIds:[],switchingMode:\"lazy\"}),i.trackReference.setValue(r)):(i.representations=new j(r.initialRepresentations),i.trackReference.setValue({adaptationId:r.adaptationId,switchingMode:r.switchingMode,representations:i.representations,relativeResumingPosition:r.relativeResumingPosition})),!0)}updateRepresentations(e,t,r,i){var s;let a=(s=this._refs.get(e))==null?void 0:s[r];if(a===void 0)return c.debug(\"WP: Setting track for inexistent periodId\",e,r),!1;let o=a.trackReference.getValue();return v(o)||o.adaptationId!==t?(c.debug(\"WP: Desynchronized Adaptation id\",o==null?void 0:o.adaptationId,t),!1):(a.representations.setValue(i),!0)}removeTrackSetter(e,t){let r=this._refs.get(e),i=r==null?void 0:r[t];return r===void 0||i===void 0?(c.debug(\"WP: Removing track setter for inexistent periodId\",e,t),!1):(i.trackReference.finish(),i.representations.finish(),delete r[t],Object.keys(r).length===0&&this._refs.delete(e),!0)}};var er=class{constructor(e,t){this._contentId=e,this._messageSender=t,this._queues={pushTextData:[],remove:[]}}pushTextData(e){return new Promise((t,r)=>{this._messageSender({type:\"push-text-data\",contentId:this._contentId,value:e}),this._queues.pushTextData.push({resolve:t,reject:r})})}remove(e,t){return new Promise((r,i)=>{this._messageSender({type:\"remove-text-data\",contentId:this._contentId,value:{start:e,end:t}}),this._queues.remove.push({resolve:r,reject:i})})}reset(){this._messageSender({type:\"reset-text-displayer\",contentId:this._contentId,value:null}),this._resetCurrentQueue()}stop(){this._messageSender({type:\"stop-text-displayer\",contentId:this._contentId,value:null}),this._resetCurrentQueue()}_resetCurrentQueue(){let e=new ie;this._queues.pushTextData.forEach(t=>{t.reject(e)}),this._queues.remove.forEach(t=>{t.reject(e)})}onPushedTrackSuccess(e){let t=this._queues.pushTextData.shift();if(t===void 0){c.error(\"WMS: pushTextData success for inexistant operation\");return}t.resolve(e)}onPushedTrackError(e){let t=this._queues.pushTextData.shift();if(t===void 0){c.error(\"WMS: pushTextData error for inexistant operation\");return}t.reject(e)}onRemoveSuccess(e){let t=this._queues.remove.shift();if(t===void 0){c.error(\"WMS: remove success for inexistant operation\");return}t.resolve(e)}onRemoveError(e){let t=this._queues.pushTextData.shift();if(t===void 0){c.error(\"WMS: pushTextData error for inexistant operation\");return}t.reject(e)}};var Gs=Ae(),jt=class{constructor({hasMseInWorker:e,hasVideo:t}){this._currentContent=null,this._currentMediaSourceCanceller=new W,this._hasVideo=t,this._hasMseInWorker=e;let r=new W;this._contentCanceller=r}initializeNewContent(e){return new Promise((t,r)=>{var k,_;this.disposeCurrentContent();let i=this._contentCanceller,a=new W;this._currentMediaSourceCanceller=a,a.linkToSignal(i.signal);let{contentId:o,url:s,hasText:u,transportOptions:f}=e,d=null;Ie(ae.transports.dash!==void 0,\"Multithread RxPlayer should have access to the DASH feature\");let l=typeof f.representationFilter==\"string\"?uo(f.representationFilter):void 0,m=ae.transports.dash(Me(ge({},f),{representationFilter:l})),p=new Na(s===void 0?void 0:[s],m,e.manifestRetryOptions),g=Ws({initialBitrates:{audio:(k=e.initialAudioBitrate)!=null?k:0,video:(_=e.initialVideoBitrate)!=null?_:0},lowLatencyMode:f.lowLatencyMode,throttlers:{limitResolution:{video:qr},throttleBitrate:{video:Hr}}}),h=a.signal.register(A=>{r(A)}),I=new Fa(m,e.segmentRetryOptions,i.signal),y=new Jn,[T,P,E]=Ks(o,{hasMseInWorker:this._hasMseInWorker,hasVideo:this._hasVideo,hasText:u},a.signal),C=new Zn(P);this._currentContent={contentId:o,decipherabilityFreezeDetector:C,mediaSource:T,manifest:null,manifestFetcher:p,representationEstimator:g,segmentSinksStore:P,segmentFetcherCreator:I,workerTextSender:E,trackChoiceSetter:y},T.addEventListener(\"mediaSourceOpen\",function(){R()},a.signal),i.signal.register(()=>{p.dispose()}),p.addEventListener(\"warning\",A=>{$({type:\"warning\",contentId:o,value:De(A)})},i.signal),p.addEventListener(\"manifestReady\",A=>{if(d!==null){c.warn(\"WP: Multiple `manifestReady` events, ignoring\");return}d=A,this._currentContent!==null&&(this._currentContent.manifest=d),R()},a.signal),p.addEventListener(\"error\",A=>{r(A)},i.signal),p.start();function R(){if(d===null||T.readyState===\"closed\"||a.isUsed())return;let A=d.getMetadataSnapshot();d.addEventListener(\"manifestUpdate\",x=>{if(d===null)return;let M=H(d.getMetadataSnapshot(),{periods:[]});$({type:\"manifest-update\",contentId:o,value:{manifest:M,updates:x}})},i.signal),h(),t(A)}})}getCurrentContent(){return this._currentContent}scheduleManifestRefresh(e){var t;(t=this._currentContent)==null||t.manifestFetcher.scheduleManualRefresh(e)}reloadMediaSource(e){if(this._currentMediaSourceCanceller.cancel(),this._currentContent===null)return Promise.reject(new Error(\"CP: No content anymore\"));this._currentContent.trackChoiceSetter.reset(),this._currentMediaSourceCanceller=new W,$({type:\"reloading-media-source\",contentId:this._currentContent.contentId,value:e},[]);let[t,r,i]=Ks(this._currentContent.contentId,{hasMseInWorker:this._hasMseInWorker,hasVideo:this._hasVideo,hasText:this._currentContent.workerTextSender!==null},this._currentMediaSourceCanceller.signal);return this._currentContent.mediaSource=t,this._currentContent.segmentSinksStore=r,this._currentContent.workerTextSender=i,new Promise((a,o)=>{t.addEventListener(\"mediaSourceOpen\",function(){a()},this._currentMediaSourceCanceller.signal),t.addEventListener(\"mediaSourceClose\",function(){o(new Error(\"MediaSource ReadyState changed to close during init.\"))},this._currentMediaSourceCanceller.signal),this._currentMediaSourceCanceller.signal.register(s=>{o(s)})})}disposeCurrentContent(){this._contentCanceller.cancel(),this._contentCanceller=new W}};function Ks(n,e,t){let r;if(e.hasMseInWorker){let s=new Ln(Gs());r=s;let u,f=s.handle;if(f.type===\"handle\")u={type:\"handle\",value:f.value};else{let d=URL.createObjectURL(f.value);u={type:\"url\",value:d},t.register(()=>{URL.revokeObjectURL(d)})}$({type:\"attach-media-source\",contentId:n,value:u,mediaSourceId:r.id},[f.value])}else r=new Fn(Gs(),n,$);let i=e.hasText?new er(n,$):null,{hasVideo:a}=e,o=new bt(r,a,i);return t.register(()=>{o.disposeAll(),i==null||i.stop(),r.dispose()}),[r,o,i]}function Ha(){let n=!1,e=new jt({hasMseInWorker:!1,hasVideo:!0}),t=null,r=new jo;ae.dashParsers.wasm=r,ae.dashParsers.fastJs=Do,ae.transports.dash=ss;let i=null;onmessage=function(a){var s,u,f;c.debug(\"Worker: received message\",a.data.type);let o=a.data;switch(o.type){case\"init\":Ie(!n),n=!0,Ya(o.value),js(o.value.logLevel,o.value.sendBackLogs),o.value.dashWasmUrl!==void 0&&r.isCompatible()&&r.initialize({wasmUrl:o.value.dashWasmUrl}).catch(d=>{let l=d instanceof Error?d.toString():\"Unknown Error\";c.error(\"Worker: Could not initialize DASH_WASM parser\",l)}),(!o.value.hasVideo||o.value.hasMseInWorker)&&(e.disposeCurrentContent(),e=new jt({hasMseInWorker:o.value.hasMseInWorker,hasVideo:o.value.hasVideo})),ae.codecSupportProber=o.value.hasMseInWorker?mo:co,$({type:\"init-success\",value:null});break;case\"log-level-update\":js(o.value.logLevel,o.value.sendBackLogs);break;case\"prepare\":cf(e,o.value);break;case\"start\":{let d=e.getCurrentContent();if(o.contentId!==(d==null?void 0:d.contentId))return;t!==null&&(t.cancel(),t=null);let l=new W,m=new j(H(o.value.initialObservation,{position:new Ct(...o.value.initialObservation.position)}));i=m,t=l,t.signal.register(()=>{m.finish()}),Ys(o.value,e,m,l.signal);break}case\"observation\":{let d=e.getCurrentContent();if(o.contentId!==(d==null?void 0:d.contentId))return;let l=o.value,{buffered:m}=l,p=Ta(d.mediaSource,null);p.audio!==null&&(m.audio=p.audio),p.video!==null&&(m.video=p.video),i==null||i.setValue(H(l,{position:new Ct(...o.value.position)}));break}case\"ref-update\":pf(o);break;case\"stop\":if(o.contentId!==((s=e.getCurrentContent())==null?void 0:s.contentId))return;e.disposeCurrentContent(),t!==null&&(t.cancel(),t=null);break;case\"sb-success\":{let d=e.getCurrentContent();if(o.mediaSourceId!==(d==null?void 0:d.mediaSource.id))return;let{sourceBuffers:l}=d.mediaSource,m=K(l,p=>p.type===o.sourceBufferType);if(m===void 0){c.info(\"WP: Success for an unknown SourceBuffer\",o.sourceBufferType);return}if(m.onOperationSuccess===void 0){c.warn(\"WP: A SourceBufferInterface with MSE performed a cross-thread operation\",o.sourceBufferType);return}m.onOperationSuccess(o.operationId,o.value.buffered);break}case\"sb-error\":{let d=e.getCurrentContent();if(o.mediaSourceId!==(d==null?void 0:d.mediaSource.id))return;let{sourceBuffers:l}=d.mediaSource,m=K(l,p=>p.type===o.sourceBufferType);if(m===void 0){c.info(\"WP: Error for an unknown SourceBuffer\",o.sourceBufferType);return}if(m.onOperationFailure===void 0){c.warn(\"WP: A SourceBufferInterface with MSE performed a cross-thread operation\",o.sourceBufferType);return}m.onOperationFailure(o.operationId,o.value);break}case\"media-source-ready-state-change\":{let d=e.getCurrentContent();if(o.mediaSourceId!==(d==null?void 0:d.mediaSource.id))return;if(d.mediaSource.onMediaSourceReadyStateChanged===void 0){c.warn(\"WP: A MediaSourceInterface with MSE performed a cross-thread operation\");return}d.mediaSource.onMediaSourceReadyStateChanged(o.value);break}case\"decipherability-update\":{if(o.contentId!==((u=e.getCurrentContent())==null?void 0:u.contentId))return;let d=e.getCurrentContent();if(d===null||d.manifest===null)return;let l=o.value;d.manifest.updateRepresentationsDeciperability(m=>{for(let p of l)if(m.representation.uniqueId===p.representationUniqueId)return p.decipherable;return m.representation.decipherable});break}case\"codec-support-update\":{let d=e.getCurrentContent();if(d===null||d.manifest===null)return;if(typeof((f=ae.codecSupportProber)==null?void 0:f.updateCache)==\"function\")for(let{mimeType:l,codec:m,result:p}of o.value)ae.codecSupportProber.updateCache(l,m,p);try{let l=d.manifest.refreshCodecSupport(o.value);l!==null&&$({type:\"warning\",contentId:d.contentId,value:De(l)})}catch(l){$({type:\"error\",contentId:d.contentId,value:De(l)})}break}case\"urls-update\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;d.manifestFetcher.updateContentUrls(o.value.urls,o.value.refreshNow);break}case\"track-update\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;d.trackChoiceSetter.setTrack(o.value.periodId,o.value.bufferType,o.value.choice);break}case\"rep-update\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;d.trackChoiceSetter.updateRepresentations(o.value.periodId,o.value.adaptationId,o.value.bufferType,o.value.choice);break}case\"add-text-success\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Added text track but text track aren't enabled\");return}d.workerTextSender.onPushedTrackSuccess(o.value.ranges);break}case\"push-text-error\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Added text track but text track aren't enabled\");return}d.workerTextSender.onPushedTrackError(new Error(o.value.message));break}case\"remove-text-success\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Removed text track but text track aren't enabled\");return}d.workerTextSender.onRemoveSuccess(o.value.ranges);break}case\"remove-text-error\":{let d=e.getCurrentContent();if(d===null||d.contentId!==o.contentId)return;if(d.workerTextSender===null){c.error(\"WP: Removed text track but text track aren't enabled\");return}d.workerTextSender.onRemoveError(new Error(o.value.message));break}case\"pull-segment-sink-store-infos\":{gf(e,o.value.messageId);break}default:We(o)}}}function cf(n,e){n.initializeNewContent(e).then(t=>{$({type:\"manifest-ready\",contentId:e.contentId,value:{manifest:t}})},t=>{$({type:\"error\",contentId:e.contentId,value:De(t)})})}function pf(n){switch(n.value.name){case\"wantedBufferAhead\":za.setValueIfChanged(n.value.newVal);break;case\"maxVideoBufferSize\":Wa.setValueIfChanged(n.value.newVal);break;case\"maxBufferBehind\":qa.setValueIfChanged(n.value.newVal);break;case\"maxBufferAhead\":Va.setValueIfChanged(n.value.newVal);break;case\"limitVideoResolution\":qr.setValueIfChanged(n.value.newVal);break;case\"throttleVideoBitrate\":Hr.setValueIfChanged(n.value.newVal);break;default:We(n.value)}}function Ys(n,e,t,r){var k;let i=new W;i.linkToSignal(r);let a=new Map,o=e.getCurrentContent();if(o===null||o.manifest===null){let _=new Re(\"NONE\",\"Loading content when none is prepared\");$({type:\"error\",contentId:void 0,value:De(_)});return}let{contentId:s,manifest:u,mediaSource:f,representationEstimator:d,segmentSinksStore:l,segmentFetcherCreator:m}=o,{drmSystemId:p,enableFastSwitching:g,initialTime:h,onCodecSwitch:I}=n;if(t.onUpdate(_=>{o.decipherabilityFreezeDetector.needToReload(_)&&R({timeOffset:0,minimumPosition:0,maximumPosition:1/0}),[\"video\",\"audio\",\"text\"].forEach(A=>{var M;let x=l.getStatus(A);x.type===\"initialized\"&&x.value.synchronizeInventory((M=_.buffered[A])!=null?M:[])})}),((k=u.getPeriodForTime(h))!=null?k:u.getNextPeriod(h))===void 0){let _=new Q(\"MEDIA_STARTING_TIME_NOT_FOUND\",\"Wanted starting time not found in the Manifest.\");$({type:\"error\",contentId:s,value:De(_)});return}let T=new In(t,s,$,i.signal),P=_a(u,f,T,l,{onWarning:_=>$({type:\"warning\",contentId:s,value:De(_)}),onPeriodChanged:_=>{$({type:\"active-period-changed\",contentId:s,value:{periodId:_.id}})}},i.signal);As({initialPeriod:u.periods[0],manifest:u},T,d,l,m,{wantedBufferAhead:za,maxVideoBufferSize:Wa,maxBufferAhead:Va,maxBufferBehind:qa,drmSystemId:p,enableFastSwitching:g,onCodecSwitch:I},E(),i.signal);function E(){return{needsBufferFlush(_){$({type:\"needs-buffer-flush\",contentId:s,value:_})},streamStatusUpdate(_){C(_),u.isLastPeriodKnown&&_.period.id===u.periods[u.periods.length-1].id&&(_.hasFinishedLoading||_.isEmptyStream?P.onLastSegmentFinishedLoading(_.bufferType):P.onLastSegmentLoadingResume(_.bufferType))},needsManifestRefresh(){e.scheduleManifestRefresh({enablePartialRefresh:!0,canUseUnsafeMode:!0})},manifestMightBeOufOfSync(){let{OUT_OF_SYNC_MANIFEST_REFRESH_DELAY:_}=U.getCurrent();e.scheduleManifestRefresh({enablePartialRefresh:!1,canUseUnsafeMode:!1,delay:_})},lockedStream(_){$({type:\"locked-stream\",contentId:s,value:{periodId:_.period.id,bufferType:_.bufferType}})},adaptationChange(_){var A,x;P.onAdaptationChange(_.type,_.period,_.adaptation),!i.signal.isCancelled()&&$({type:\"adaptation-changed\",contentId:s,value:{adaptationId:(x=(A=_.adaptation)==null?void 0:A.id)!=null?x:null,periodId:_.period.id,type:_.type}})},representationChange(_){var A,x;P.onRepresentationChange(_.type,_.period),!i.signal.isCancelled()&&$({type:\"representation-changed\",contentId:s,value:{adaptationId:_.adaptation.id,representationId:(x=(A=_.representation)==null?void 0:A.id)!=null?x:null,periodId:_.period.id,type:_.type}})},inbandEvent(_){$({type:\"inband-event\",contentId:s,value:_})},warning(_){$({type:\"warning\",contentId:s,value:De(_)})},periodStreamReady(_){o!==null&&(o.trackChoiceSetter.addTrackSetter(_.period.id,_.type,_.adaptationRef),$({type:\"period-stream-ready\",contentId:s,value:{periodId:_.period.id,bufferType:_.type}}))},periodStreamCleared(_){if(o===null)return;let A=a.get(_.period);A!==void 0&&(A.delete(_.type),A.size===0&&a.delete(_.period)),o.trackChoiceSetter.removeTrackSetter(_.period.id,_.type),$({type:\"period-stream-cleared\",contentId:s,value:{periodId:_.period.id,bufferType:_.type}})},bitrateEstimateChange(_){$({type:\"bitrate-estimate-change\",contentId:s,value:{bitrate:_.bitrate,bufferType:_.type}})},needsMediaSourceReload(_){R(_)},needsDecipherabilityFlush(){$({type:\"needs-decipherability-flush\",contentId:s,value:null})},encryptionDataEncountered(_){for(let A of _){let x=A.content,M=ge({},x);M.manifest instanceof Nt&&(M.manifest=M.manifest.getMetadataSnapshot()),M.period instanceof lt&&(M.period=M.period.getMetadataSnapshot()),M.adaptation instanceof ut&&(M.adaptation=M.adaptation.getMetadataSnapshot()),M.representation instanceof en&&(M.representation=M.representation.getMetadataSnapshot()),$({type:\"encryption-data-encountered\",contentId:s,value:{keyIds:A.keyIds,values:A.values,content:M,type:A.type}})}},error(_){$({type:\"error\",contentId:s,value:De(_)})}}}function C(_){let{imminentDiscontinuity:A}=_,x=a.get(_.period),M=x==null?void 0:x.get(_.bufferType);if(M!==void 0){if(M.discontinuity===null){if(A===null)return}else if(A!==null&&M.discontinuity.start===A.start&&M.discontinuity.end===A.end)return}x===void 0&&(x=new Map,a.set(_.period,x));let N={periodId:_.period.id,bufferType:_.bufferType,discontinuity:_.imminentDiscontinuity,position:_.position};x.set(_.bufferType,N),$({type:\"discontinuity-update\",contentId:s,value:N})}function R(_){let x=t.getValue().position.getWanted();i!==null&&i.cancel(),e.reloadMediaSource(_).then(()=>{Ys({initialTime:x,drmSystemId:n.drmSystemId,enableFastSwitching:n.enableFastSwitching,onCodecSwitch:n.onCodecSwitch},e,t,r)},M=>{$({type:\"error\",contentId:s,value:De(M)})})}}function js(n,e){e?c.setLevel(n,(t,r)=>{let i=r.map(a=>a instanceof Error?De(a):a);postMessage({type:\"log\",value:{logLevel:t,logs:i}})}):c.setLevel(n)}function gf(n,e){let t=n.getCurrentContent();if(t===null)return;let r=t.segmentSinksStore.getSegmentSinksMetrics();$({type:\"segment-sink-store-update\",contentId:t.contentId,value:{segmentSinkMetrics:r,messageId:e}})}var Qs=Ha;Qs();})();\n" + "})()"], { type: "application/javascript" });
5
5
  exports.EMBEDDED_WORKER = blob;
6
6
  exports.default = blob;