rx-player 4.0.0-dev.2023102700 → 4.0.0-dev.2023111400

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 (2904) hide show
  1. package/.eslintrc.js +1 -1
  2. package/.github/workflows/checks.yml +2 -2
  3. package/.github/workflows/perfs.yml +1 -1
  4. package/CHANGELOG.md +16 -4
  5. package/FILES.md +1 -2
  6. package/VERSION +1 -1
  7. package/dist/_esm5.processed/compat/add_class_name.js +3 -6
  8. package/dist/_esm5.processed/compat/add_text_track.d.ts +3 -1
  9. package/dist/_esm5.processed/compat/add_text_track.js +14 -14
  10. package/dist/_esm5.processed/compat/browser_compatibility_types.d.ts +8 -0
  11. package/dist/_esm5.processed/compat/browser_compatibility_types.js +11 -16
  12. package/dist/_esm5.processed/compat/browser_detection.js +33 -49
  13. package/dist/_esm5.processed/compat/browser_version.js +8 -11
  14. package/dist/_esm5.processed/compat/can_patch_isobmff.js +3 -6
  15. package/dist/_esm5.processed/compat/can_rely_on_video_visibility_and_size.js +6 -9
  16. package/dist/_esm5.processed/compat/can_reuse_media_keys.js +3 -6
  17. package/dist/_esm5.processed/compat/change_source_buffer_type.js +3 -6
  18. package/dist/_esm5.processed/compat/clear_element_src.js +9 -12
  19. package/dist/_esm5.processed/compat/eme/close_session.js +106 -45
  20. package/dist/_esm5.processed/compat/eme/constants.js +3 -6
  21. package/dist/_esm5.processed/compat/eme/custom_key_system_access.js +22 -18
  22. package/dist/_esm5.processed/compat/eme/custom_media_keys/ie11_media_keys.js +102 -78
  23. package/dist/_esm5.processed/compat/eme/custom_media_keys/index.js +6 -16
  24. package/dist/_esm5.processed/compat/eme/custom_media_keys/moz_media_keys_constructor.js +24 -25
  25. package/dist/_esm5.processed/compat/eme/custom_media_keys/ms_media_keys_constructor.js +14 -14
  26. package/dist/_esm5.processed/compat/eme/custom_media_keys/old_webkit_media_keys.js +88 -70
  27. package/dist/_esm5.processed/compat/eme/custom_media_keys/types.js +1 -2
  28. package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys.js +117 -91
  29. package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +16 -14
  30. package/dist/_esm5.processed/compat/eme/eme-api-implementation.js +82 -82
  31. package/dist/_esm5.processed/compat/eme/generate_key_request.js +31 -36
  32. package/dist/_esm5.processed/compat/eme/get_init_data.js +25 -28
  33. package/dist/_esm5.processed/compat/eme/get_uuid_kid_from_keystatus_kid.js +5 -8
  34. package/dist/_esm5.processed/compat/eme/get_webkit_fairplay_initdata.js +14 -17
  35. package/dist/_esm5.processed/compat/eme/index.js +7 -13
  36. package/dist/_esm5.processed/compat/eme/load_session.js +69 -26
  37. package/dist/_esm5.processed/compat/enable_audio_track.js +4 -7
  38. package/dist/_esm5.processed/compat/event_listeners.d.ts +16 -23
  39. package/dist/_esm5.processed/compat/event_listeners.js +149 -179
  40. package/dist/_esm5.processed/compat/fullscreen.d.ts +32 -0
  41. package/dist/_esm5.processed/compat/fullscreen.js +78 -0
  42. package/dist/_esm5.processed/compat/get_start_date.js +4 -7
  43. package/dist/_esm5.processed/compat/has_issues_with_high_media_source_duration.js +3 -6
  44. package/dist/_esm5.processed/compat/index.d.ts +3 -1
  45. package/dist/_esm5.processed/compat/index.js +26 -47
  46. package/dist/_esm5.processed/compat/is_codec_supported.js +5 -8
  47. package/dist/_esm5.processed/compat/is_debug_mode_enabled.js +1 -4
  48. package/dist/_esm5.processed/compat/is_node.d.ts +0 -1
  49. package/dist/_esm5.processed/compat/is_node.js +2 -6
  50. package/dist/_esm5.processed/compat/is_offline.d.ts +39 -0
  51. package/dist/_esm5.processed/compat/is_offline.js +43 -0
  52. package/dist/_esm5.processed/compat/is_seeking_approximate.js +3 -5
  53. package/dist/_esm5.processed/compat/is_vtt_cue.js +2 -6
  54. package/dist/_esm5.processed/compat/make_vtt_cue.js +6 -10
  55. package/dist/_esm5.processed/compat/on_height_width_change.js +27 -25
  56. package/dist/_esm5.processed/compat/patch_webkit_source_buffer.js +16 -19
  57. package/dist/_esm5.processed/compat/remove_cue.js +9 -12
  58. package/dist/_esm5.processed/compat/should_favour_custom_safari_EME.js +4 -7
  59. package/dist/_esm5.processed/compat/should_reload_media_source_on_decipherability_update.js +1 -4
  60. package/dist/_esm5.processed/compat/should_renew_media_key_system_access.js +3 -6
  61. package/dist/_esm5.processed/compat/should_unset_media_keys.js +3 -6
  62. package/dist/_esm5.processed/compat/should_validate_metadata.js +3 -6
  63. package/dist/_esm5.processed/compat/should_wait_for_data_before_loaded.js +3 -6
  64. package/dist/_esm5.processed/compat/should_wait_for_have_enough_data.js +3 -6
  65. package/dist/_esm5.processed/config.d.ts +22 -10
  66. package/dist/_esm5.processed/config.js +14 -15
  67. package/dist/_esm5.processed/core/adaptive/adaptive_representation_selector.d.ts +60 -3
  68. package/dist/_esm5.processed/core/adaptive/adaptive_representation_selector.js +140 -130
  69. package/dist/_esm5.processed/core/adaptive/buffer_based_chooser.d.ts +2 -2
  70. package/dist/_esm5.processed/core/adaptive/buffer_based_chooser.js +41 -43
  71. package/dist/_esm5.processed/core/adaptive/guess_based_chooser.js +43 -37
  72. package/dist/_esm5.processed/core/adaptive/index.js +2 -4
  73. package/dist/_esm5.processed/core/adaptive/network_analyzer.js +73 -75
  74. package/dist/_esm5.processed/core/adaptive/utils/bandwidth_estimator.js +23 -24
  75. package/dist/_esm5.processed/core/adaptive/utils/ewma.js +12 -13
  76. package/dist/_esm5.processed/core/adaptive/utils/filter_by_bitrate.js +6 -9
  77. package/dist/_esm5.processed/core/adaptive/utils/filter_by_width.d.ts +25 -0
  78. package/dist/_esm5.processed/core/adaptive/utils/filter_by_width.js +42 -0
  79. package/dist/_esm5.processed/core/adaptive/utils/get_buffer_levels.js +7 -10
  80. package/dist/_esm5.processed/core/adaptive/utils/last_estimate_storage.js +7 -8
  81. package/dist/_esm5.processed/core/adaptive/utils/pending_requests_store.d.ts +3 -13
  82. package/dist/_esm5.processed/core/adaptive/utils/pending_requests_store.js +23 -26
  83. package/dist/_esm5.processed/core/adaptive/utils/representation_score_calculator.js +23 -25
  84. package/dist/_esm5.processed/core/adaptive/utils/select_optimal_representation.d.ts +8 -2
  85. package/dist/_esm5.processed/core/adaptive/utils/select_optimal_representation.js +13 -7
  86. package/dist/_esm5.processed/core/api/debug/buffer_graph.js +40 -41
  87. package/dist/_esm5.processed/core/api/debug/buffer_size_graph.js +29 -31
  88. package/dist/_esm5.processed/core/api/debug/constants.js +1 -4
  89. package/dist/_esm5.processed/core/api/debug/index.js +2 -4
  90. package/dist/_esm5.processed/core/api/debug/modules/general_info.js +94 -67
  91. package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_content.js +46 -49
  92. package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_size.js +12 -15
  93. package/dist/_esm5.processed/core/api/debug/render.js +13 -16
  94. package/dist/_esm5.processed/core/api/debug/utils.js +13 -18
  95. package/dist/_esm5.processed/core/api/index.js +4 -7
  96. package/dist/_esm5.processed/core/api/option_utils.d.ts +38 -13
  97. package/dist/_esm5.processed/core/api/option_utils.js +289 -111
  98. package/dist/_esm5.processed/core/api/playback_observer.d.ts +2 -8
  99. package/dist/_esm5.processed/core/api/playback_observer.js +123 -135
  100. package/dist/_esm5.processed/core/api/public_api.d.ts +277 -115
  101. package/dist/_esm5.processed/core/api/public_api.js +1324 -974
  102. package/dist/_esm5.processed/core/api/tracks_management/media_element_track_choice_manager.d.ts +257 -0
  103. package/dist/_esm5.processed/core/api/tracks_management/media_element_track_choice_manager.js +805 -0
  104. package/dist/_esm5.processed/core/api/tracks_management/track_choice_manager.d.ts +258 -0
  105. package/dist/_esm5.processed/core/api/tracks_management/track_choice_manager.js +989 -0
  106. package/dist/_esm5.processed/core/api/utils.d.ts +0 -1
  107. package/dist/_esm5.processed/core/api/utils.js +32 -51
  108. package/dist/_esm5.processed/core/decrypt/__tests__/__global__/utils.js +185 -155
  109. package/dist/_esm5.processed/core/decrypt/attach_media_keys.js +81 -42
  110. package/dist/_esm5.processed/core/decrypt/clear_on_stop.js +12 -15
  111. package/dist/_esm5.processed/core/decrypt/content_decryptor.js +511 -393
  112. package/dist/_esm5.processed/core/decrypt/create_or_load_session.js +90 -44
  113. package/dist/_esm5.processed/core/decrypt/create_session.js +149 -90
  114. package/dist/_esm5.processed/core/decrypt/dispose_decryption_resources.js +67 -24
  115. package/dist/_esm5.processed/core/decrypt/find_key_system.js +193 -144
  116. package/dist/_esm5.processed/core/decrypt/get_key_system_configuration.d.ts +8 -0
  117. package/dist/_esm5.processed/core/decrypt/get_key_system_configuration.js +15 -6
  118. package/dist/_esm5.processed/core/decrypt/get_media_keys.js +110 -61
  119. package/dist/_esm5.processed/core/decrypt/index.d.ts +2 -2
  120. package/dist/_esm5.processed/core/decrypt/index.js +7 -26
  121. package/dist/_esm5.processed/core/decrypt/init_media_keys.js +59 -17
  122. package/dist/_esm5.processed/core/decrypt/session_events_listener.js +222 -89
  123. package/dist/_esm5.processed/core/decrypt/set_server_certificate.js +103 -50
  124. package/dist/_esm5.processed/core/decrypt/types.js +2 -5
  125. package/dist/_esm5.processed/core/decrypt/utils/are_init_values_compatible.js +19 -22
  126. package/dist/_esm5.processed/core/decrypt/utils/check_key_statuses.d.ts +1 -1
  127. package/dist/_esm5.processed/core/decrypt/utils/check_key_statuses.js +65 -79
  128. package/dist/_esm5.processed/core/decrypt/utils/clean_old_loaded_sessions.js +61 -17
  129. package/dist/_esm5.processed/core/decrypt/utils/clean_old_stored_persistent_info.js +5 -8
  130. package/dist/_esm5.processed/core/decrypt/utils/get_drm_system_id.js +5 -8
  131. package/dist/_esm5.processed/core/decrypt/utils/init_data_values_container.js +23 -23
  132. package/dist/_esm5.processed/core/decrypt/utils/is_session_usable.js +12 -15
  133. package/dist/_esm5.processed/core/decrypt/utils/key_id_comparison.js +21 -14
  134. package/dist/_esm5.processed/core/decrypt/utils/key_session_record.js +27 -26
  135. package/dist/_esm5.processed/core/decrypt/utils/loaded_sessions_store.js +310 -206
  136. package/dist/_esm5.processed/core/decrypt/utils/media_keys_infos_store.js +6 -8
  137. package/dist/_esm5.processed/core/decrypt/utils/persistent_sessions_store.d.ts +4 -4
  138. package/dist/_esm5.processed/core/decrypt/utils/persistent_sessions_store.js +103 -106
  139. package/dist/_esm5.processed/core/decrypt/utils/serializable_bytes.js +12 -13
  140. package/dist/_esm5.processed/core/decrypt/utils/server_certificate_store.js +16 -18
  141. package/dist/_esm5.processed/core/fetchers/cdn_prioritizer.js +56 -37
  142. package/dist/_esm5.processed/core/fetchers/index.js +3 -7
  143. package/dist/_esm5.processed/core/fetchers/manifest/index.js +2 -4
  144. package/dist/_esm5.processed/core/fetchers/manifest/manifest_fetcher.d.ts +3 -1
  145. package/dist/_esm5.processed/core/fetchers/manifest/manifest_fetcher.js +332 -234
  146. package/dist/_esm5.processed/core/fetchers/segment/index.js +2 -4
  147. package/dist/_esm5.processed/core/fetchers/segment/prioritized_segment_fetcher.js +9 -12
  148. package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher.d.ts +9 -3
  149. package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher.js +227 -219
  150. package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher_creator.d.ts +3 -1
  151. package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher_creator.js +19 -20
  152. package/dist/_esm5.processed/core/fetchers/segment/task_prioritizer.js +74 -73
  153. package/dist/_esm5.processed/core/fetchers/utils/error_selector.js +5 -8
  154. package/dist/_esm5.processed/core/fetchers/utils/schedule_request.d.ts +6 -1
  155. package/dist/_esm5.processed/core/fetchers/utils/schedule_request.js +297 -210
  156. package/dist/_esm5.processed/core/init/directfile_content_initializer.js +99 -73
  157. package/dist/_esm5.processed/core/init/index.js +1 -5
  158. package/dist/_esm5.processed/core/init/media_source_content_initializer.d.ts +8 -1
  159. package/dist/_esm5.processed/core/init/media_source_content_initializer.js +324 -256
  160. package/dist/_esm5.processed/core/init/types.d.ts +30 -6
  161. package/dist/_esm5.processed/core/init/types.js +24 -7
  162. package/dist/_esm5.processed/core/init/utils/content_time_boundaries_observer.js +135 -109
  163. package/dist/_esm5.processed/core/init/utils/create_media_source.js +30 -35
  164. package/dist/_esm5.processed/core/init/utils/create_stream_playback_observer.js +10 -12
  165. package/dist/_esm5.processed/core/init/utils/end_of_stream.js +26 -30
  166. package/dist/_esm5.processed/core/init/utils/get_initial_time.js +37 -41
  167. package/dist/_esm5.processed/core/init/utils/get_loaded_reference.js +10 -13
  168. package/dist/_esm5.processed/core/init/utils/initial_seek_and_play.js +26 -29
  169. package/dist/_esm5.processed/core/init/utils/initialize_content_decryption.js +27 -30
  170. package/dist/_esm5.processed/core/init/utils/media_source_duration_updater.js +60 -58
  171. package/dist/_esm5.processed/core/init/utils/rebuffering_controller.d.ts +3 -3
  172. package/dist/_esm5.processed/core/init/utils/rebuffering_controller.js +160 -141
  173. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/are_same_stream_events.js +1 -3
  174. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/index.js +2 -4
  175. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +30 -28
  176. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/stream_events_emitter.js +90 -71
  177. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/types.js +1 -2
  178. package/dist/_esm5.processed/core/init/utils/throw_on_media_error.js +13 -16
  179. package/dist/_esm5.processed/core/segment_buffers/garbage_collector.js +126 -75
  180. package/dist/_esm5.processed/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.js +147 -130
  181. package/dist/_esm5.processed/core/segment_buffers/implementations/audio_video/index.js +2 -4
  182. package/dist/_esm5.processed/core/segment_buffers/implementations/image/image_segment_buffer.d.ts +75 -0
  183. package/dist/_esm5.processed/core/segment_buffers/implementations/image/image_segment_buffer.js +133 -0
  184. package/dist/_esm5.processed/core/segment_buffers/implementations/image/index.d.ts +17 -0
  185. package/dist/_esm5.processed/core/segment_buffers/implementations/image/index.js +17 -0
  186. package/dist/_esm5.processed/core/segment_buffers/implementations/index.js +3 -20
  187. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/html_text_segment_buffer.js +125 -106
  188. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/index.js +2 -4
  189. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/parsers.js +8 -11
  190. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/text_track_cues_store.js +95 -48
  191. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/types.js +1 -2
  192. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/update_proportional_elements.js +15 -18
  193. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/utils.d.ts +2 -1
  194. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/utils.js +33 -23
  195. package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/index.js +2 -4
  196. package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/native_text_segment_buffer.d.ts +2 -1
  197. package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/native_text_segment_buffer.js +83 -65
  198. package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/parsers.js +8 -11
  199. package/dist/_esm5.processed/core/segment_buffers/implementations/types.d.ts +2 -2
  200. package/dist/_esm5.processed/core/segment_buffers/implementations/types.js +17 -19
  201. package/dist/_esm5.processed/core/segment_buffers/implementations/utils/manual_time_ranges.js +22 -23
  202. package/dist/_esm5.processed/core/segment_buffers/index.d.ts +2 -2
  203. package/dist/_esm5.processed/core/segment_buffers/index.js +5 -13
  204. package/dist/_esm5.processed/core/segment_buffers/inventory/buffered_history.d.ts +2 -2
  205. package/dist/_esm5.processed/core/segment_buffers/inventory/buffered_history.js +22 -25
  206. package/dist/_esm5.processed/core/segment_buffers/inventory/index.d.ts +0 -1
  207. package/dist/_esm5.processed/core/segment_buffers/inventory/index.js +2 -8
  208. package/dist/_esm5.processed/core/segment_buffers/inventory/segment_inventory.js +150 -152
  209. package/dist/_esm5.processed/core/segment_buffers/inventory/types.js +1 -2
  210. package/dist/_esm5.processed/core/segment_buffers/segment_buffers_store.d.ts +1 -0
  211. package/dist/_esm5.processed/core/segment_buffers/segment_buffers_store.js +104 -83
  212. package/dist/_esm5.processed/core/stream/adaptation/adaptation_stream.d.ts +16 -1
  213. package/dist/_esm5.processed/core/stream/adaptation/adaptation_stream.js +144 -204
  214. package/dist/_esm5.processed/core/stream/adaptation/index.js +3 -19
  215. package/dist/_esm5.processed/core/stream/adaptation/types.d.ts +15 -37
  216. package/dist/_esm5.processed/core/stream/adaptation/types.js +1 -2
  217. package/dist/_esm5.processed/core/stream/adaptation/utils/create_representation_estimator.d.ts +47 -0
  218. package/dist/_esm5.processed/core/stream/adaptation/utils/create_representation_estimator.js +70 -0
  219. package/dist/_esm5.processed/core/stream/index.d.ts +3 -2
  220. package/dist/_esm5.processed/core/stream/index.js +2 -4
  221. package/dist/_esm5.processed/core/stream/orchestrator/get_time_ranges_for_content.js +16 -14
  222. package/dist/_esm5.processed/core/stream/orchestrator/index.js +2 -4
  223. package/dist/_esm5.processed/core/stream/orchestrator/stream_orchestrator.d.ts +0 -2
  224. package/dist/_esm5.processed/core/stream/orchestrator/stream_orchestrator.js +214 -223
  225. package/dist/_esm5.processed/core/stream/period/index.js +3 -19
  226. package/dist/_esm5.processed/core/stream/period/period_stream.js +201 -179
  227. package/dist/_esm5.processed/core/stream/period/types.d.ts +15 -6
  228. package/dist/_esm5.processed/core/stream/period/types.js +1 -2
  229. package/dist/_esm5.processed/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +4 -2
  230. package/dist/_esm5.processed/core/stream/period/utils/get_adaptation_switch_strategy.js +73 -38
  231. package/dist/_esm5.processed/core/stream/representation/index.js +3 -19
  232. package/dist/_esm5.processed/core/stream/representation/representation_stream.d.ts +1 -1
  233. package/dist/_esm5.processed/core/stream/representation/representation_stream.js +86 -104
  234. package/dist/_esm5.processed/core/stream/representation/types.d.ts +5 -14
  235. package/dist/_esm5.processed/core/stream/representation/types.js +1 -2
  236. package/dist/_esm5.processed/core/stream/representation/utils/append_segment_to_buffer.js +84 -33
  237. package/dist/_esm5.processed/core/stream/representation/utils/check_for_discontinuity.js +29 -32
  238. package/dist/_esm5.processed/core/stream/representation/utils/downloading_queue.js +145 -126
  239. package/dist/_esm5.processed/core/stream/representation/utils/force_garbage_collection.js +88 -32
  240. package/dist/_esm5.processed/core/stream/representation/utils/get_buffer_status.js +48 -61
  241. package/dist/_esm5.processed/core/stream/representation/utils/get_needed_segments.js +69 -71
  242. package/dist/_esm5.processed/core/stream/representation/utils/get_segment_priority.js +5 -8
  243. package/dist/_esm5.processed/core/stream/representation/utils/push_init_segment.d.ts +2 -2
  244. package/dist/_esm5.processed/core/stream/representation/utils/push_init_segment.js +63 -22
  245. package/dist/_esm5.processed/core/stream/representation/utils/push_media_segment.d.ts +1 -1
  246. package/dist/_esm5.processed/core/stream/representation/utils/push_media_segment.js +86 -49
  247. package/dist/_esm5.processed/default_config.d.ts +103 -41
  248. package/dist/_esm5.processed/default_config.js +120 -46
  249. package/dist/_esm5.processed/errors/assertion_error.js +26 -10
  250. package/dist/_esm5.processed/errors/custom_loader_error.d.ts +3 -1
  251. package/dist/_esm5.processed/errors/custom_loader_error.js +30 -12
  252. package/dist/_esm5.processed/errors/encrypted_media_error.js +32 -16
  253. package/dist/_esm5.processed/errors/error_codes.js +4 -9
  254. package/dist/_esm5.processed/errors/error_message.d.ts +2 -1
  255. package/dist/_esm5.processed/errors/error_message.js +3 -5
  256. package/dist/_esm5.processed/errors/format_error.js +7 -9
  257. package/dist/_esm5.processed/errors/index.js +11 -25
  258. package/dist/_esm5.processed/errors/is_known_error.js +11 -14
  259. package/dist/_esm5.processed/errors/media_error.d.ts +2 -2
  260. package/dist/_esm5.processed/errors/media_error.js +47 -34
  261. package/dist/_esm5.processed/errors/network_error.d.ts +1 -0
  262. package/dist/_esm5.processed/errors/network_error.js +38 -21
  263. package/dist/_esm5.processed/errors/other_error.js +31 -15
  264. package/dist/_esm5.processed/errors/request_error.d.ts +3 -2
  265. package/dist/_esm5.processed/errors/request_error.js +37 -18
  266. package/dist/_esm5.processed/experimental/features/dash_wasm.js +11 -14
  267. package/dist/_esm5.processed/experimental/features/debug_element.js +4 -7
  268. package/dist/_esm5.processed/experimental/features/index.js +4 -11
  269. package/dist/_esm5.processed/experimental/features/local.js +6 -9
  270. package/dist/_esm5.processed/experimental/features/metaplaylist.js +6 -9
  271. package/dist/_esm5.processed/experimental/index.js +2 -5
  272. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/features/dash.js +3 -6
  273. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/features/metaplaylist.js +3 -6
  274. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/index.js +3 -7
  275. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/load_and_push_segment.js +16 -22
  276. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +19 -22
  277. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +3 -6
  278. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/types.js +1 -2
  279. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +188 -127
  280. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +27 -11
  281. package/dist/_esm5.processed/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +119 -76
  282. package/dist/_esm5.processed/experimental/tools/createMetaplaylist/index.js +15 -24
  283. package/dist/_esm5.processed/experimental/tools/index.js +5 -11
  284. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/index.js +43 -38
  285. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.js +34 -31
  286. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/capabilities.js +18 -21
  287. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/index.js +2 -4
  288. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/log.js +3 -5
  289. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.js +17 -20
  290. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +18 -21
  291. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +10 -13
  292. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +13 -16
  293. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/index.js +14 -16
  294. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +11 -14
  295. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.js +11 -14
  296. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +15 -19
  297. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +7 -11
  298. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/types.js +2 -5
  299. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/utils.js +22 -25
  300. package/dist/_esm5.processed/experimental/tools/parseBIFThumbnails.js +4 -7
  301. package/dist/_esm5.processed/features/add_features.js +8 -11
  302. package/dist/_esm5.processed/features/features_object.js +4 -4
  303. package/dist/_esm5.processed/features/index.js +4 -7
  304. package/dist/_esm5.processed/features/list/bif_parser.d.ts +23 -0
  305. package/dist/_esm5.processed/features/list/bif_parser.js +27 -0
  306. package/dist/_esm5.processed/features/list/dash.js +8 -11
  307. package/dist/_esm5.processed/features/list/directfile.js +8 -9
  308. package/dist/_esm5.processed/features/list/eme.js +4 -7
  309. package/dist/_esm5.processed/features/list/html_sami_parser.js +6 -9
  310. package/dist/_esm5.processed/features/list/html_srt_parser.js +6 -9
  311. package/dist/_esm5.processed/features/list/html_text_buffer.js +4 -7
  312. package/dist/_esm5.processed/features/list/html_ttml_parser.js +6 -9
  313. package/dist/_esm5.processed/features/list/html_vtt_parser.js +6 -9
  314. package/dist/_esm5.processed/features/list/image_buffer.d.ts +23 -0
  315. package/dist/_esm5.processed/features/list/image_buffer.js +25 -0
  316. package/dist/_esm5.processed/features/list/index.d.ts +2 -0
  317. package/dist/_esm5.processed/features/list/index.js +16 -31
  318. package/dist/_esm5.processed/features/list/native_sami_parser.js +6 -9
  319. package/dist/_esm5.processed/features/list/native_srt_parser.js +6 -9
  320. package/dist/_esm5.processed/features/list/native_text_buffer.js +4 -7
  321. package/dist/_esm5.processed/features/list/native_ttml_parser.js +6 -9
  322. package/dist/_esm5.processed/features/list/native_vtt_parser.js +6 -9
  323. package/dist/_esm5.processed/features/list/smooth.js +6 -9
  324. package/dist/_esm5.processed/features/types.d.ts +27 -3
  325. package/dist/_esm5.processed/features/types.js +1 -2
  326. package/dist/_esm5.processed/log.js +3 -5
  327. package/dist/_esm5.processed/manifest/adaptation.d.ts +11 -9
  328. package/dist/_esm5.processed/manifest/adaptation.js +69 -77
  329. package/dist/_esm5.processed/manifest/index.d.ts +4 -3
  330. package/dist/_esm5.processed/manifest/index.js +13 -32
  331. package/dist/_esm5.processed/manifest/manifest.d.ts +60 -8
  332. package/dist/_esm5.processed/manifest/manifest.js +241 -119
  333. package/dist/_esm5.processed/manifest/period.d.ts +11 -5
  334. package/dist/_esm5.processed/manifest/period.js +46 -39
  335. package/dist/_esm5.processed/manifest/representation.d.ts +5 -10
  336. package/dist/_esm5.processed/manifest/representation.js +74 -86
  337. package/dist/_esm5.processed/manifest/representation_index/index.d.ts +2 -2
  338. package/dist/_esm5.processed/manifest/representation_index/index.js +2 -5
  339. package/dist/_esm5.processed/manifest/representation_index/static.d.ts +0 -2
  340. package/dist/_esm5.processed/manifest/representation_index/static.js +36 -43
  341. package/dist/_esm5.processed/manifest/representation_index/types.d.ts +21 -42
  342. package/dist/_esm5.processed/manifest/representation_index/types.js +1 -2
  343. package/dist/_esm5.processed/manifest/types.d.ts +2 -0
  344. package/dist/_esm5.processed/manifest/types.js +2 -5
  345. package/dist/_esm5.processed/manifest/update_period_in_place.js +48 -38
  346. package/dist/_esm5.processed/manifest/update_periods.js +69 -59
  347. package/dist/_esm5.processed/manifest/utils.js +9 -14
  348. package/dist/_esm5.processed/minimal.js +7 -9
  349. package/dist/_esm5.processed/parsers/containers/isobmff/constants.js +1 -4
  350. package/dist/_esm5.processed/parsers/containers/isobmff/create_box.js +10 -14
  351. package/dist/_esm5.processed/parsers/containers/isobmff/drm/index.js +1 -5
  352. package/dist/_esm5.processed/parsers/containers/isobmff/drm/playready.js +11 -15
  353. package/dist/_esm5.processed/parsers/containers/isobmff/get_box.js +40 -48
  354. package/dist/_esm5.processed/parsers/containers/isobmff/index.js +6 -27
  355. package/dist/_esm5.processed/parsers/containers/isobmff/read.js +14 -20
  356. package/dist/_esm5.processed/parsers/containers/isobmff/take_pssh_out.js +20 -25
  357. package/dist/_esm5.processed/parsers/containers/isobmff/utils.js +112 -130
  358. package/dist/_esm5.processed/parsers/containers/matroska/index.js +1 -6
  359. package/dist/_esm5.processed/parsers/containers/matroska/utils.js +63 -67
  360. package/dist/_esm5.processed/parsers/images/bif.js +29 -40
  361. package/dist/_esm5.processed/parsers/manifest/dash/common/attach_trickmode_track.js +12 -10
  362. package/dist/_esm5.processed/parsers/manifest/dash/common/convert_supplemental_codecs.d.ts +17 -0
  363. package/dist/_esm5.processed/parsers/manifest/dash/common/convert_supplemental_codecs.js +26 -0
  364. package/dist/_esm5.processed/parsers/manifest/dash/common/flatten_overlapping_periods.js +12 -10
  365. package/dist/_esm5.processed/parsers/manifest/dash/common/get_clock_offset.d.ts +3 -3
  366. package/dist/_esm5.processed/parsers/manifest/dash/common/get_clock_offset.js +7 -11
  367. package/dist/_esm5.processed/parsers/manifest/dash/common/get_hdr_information.js +6 -10
  368. package/dist/_esm5.processed/parsers/manifest/dash/common/get_http_utc-timing_url.js +6 -7
  369. package/dist/_esm5.processed/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +6 -10
  370. package/dist/_esm5.processed/parsers/manifest/dash/common/get_periods_time_infos.js +9 -14
  371. package/dist/_esm5.processed/parsers/manifest/dash/common/index.js +4 -10
  372. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/base.d.ts +31 -17
  373. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/base.js +80 -93
  374. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_init_segment.js +4 -9
  375. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +25 -32
  376. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/index.js +5 -11
  377. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/list.d.ts +0 -2
  378. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/list.js +64 -81
  379. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/template.d.ts +6 -2
  380. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/template.js +122 -132
  381. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +12 -15
  382. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +32 -35
  383. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +9 -14
  384. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +22 -30
  385. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/index.js +2 -4
  386. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +11 -14
  387. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +3 -7
  388. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +122 -131
  389. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/tokens.js +10 -16
  390. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/utils.js +3 -7
  391. package/dist/_esm5.processed/parsers/manifest/dash/common/infer_adaptation_type.d.ts +2 -2
  392. package/dist/_esm5.processed/parsers/manifest/dash/common/infer_adaptation_type.js +24 -20
  393. package/dist/_esm5.processed/parsers/manifest/dash/common/manifest_bounds_calculator.d.ts +4 -8
  394. package/dist/_esm5.processed/parsers/manifest/dash/common/manifest_bounds_calculator.js +19 -22
  395. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_adaptation_sets.js +115 -113
  396. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_availability_start_time.js +1 -4
  397. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_mpd.d.ts +5 -6
  398. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_mpd.js +84 -86
  399. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_periods.d.ts +0 -4
  400. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_periods.js +84 -101
  401. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representation_index.d.ts +4 -2
  402. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representation_index.js +37 -39
  403. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representations.js +97 -77
  404. package/dist/_esm5.processed/parsers/manifest/dash/common/resolve_base_urls.js +9 -12
  405. package/dist/_esm5.processed/parsers/manifest/dash/index.js +1 -8
  406. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/index.js +2 -4
  407. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +67 -72
  408. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +4 -7
  409. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.js +4 -7
  410. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.js +19 -22
  411. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +19 -22
  412. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +8 -11
  413. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/MPD.js +34 -38
  414. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Period.js +30 -34
  415. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Representation.js +43 -46
  416. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +21 -24
  417. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentList.js +12 -15
  418. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +18 -21
  419. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.js +3 -6
  420. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +9 -12
  421. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +1 -10
  422. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/utils.js +63 -75
  423. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/parse_from_document.js +27 -33
  424. package/dist/_esm5.processed/parsers/manifest/dash/node_parser_types.d.ts +6 -4
  425. package/dist/_esm5.processed/parsers/manifest/dash/node_parser_types.js +1 -2
  426. package/dist/_esm5.processed/parsers/manifest/dash/parsers_types.d.ts +4 -4
  427. package/dist/_esm5.processed/parsers/manifest/dash/parsers_types.js +1 -2
  428. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/index.js +2 -4
  429. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +237 -192
  430. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +72 -70
  431. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.js +4 -8
  432. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +7 -11
  433. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +13 -17
  434. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +24 -29
  435. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +33 -38
  436. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +32 -37
  437. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +44 -44
  438. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +5 -9
  439. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +12 -16
  440. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.js +7 -11
  441. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +16 -20
  442. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +7 -11
  443. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +7 -11
  444. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/index.js +1 -5
  445. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/root.js +6 -10
  446. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +20 -22
  447. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/types.d.ts +2 -1
  448. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/types.js +1 -2
  449. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/utils.js +2 -6
  450. package/dist/_esm5.processed/parsers/manifest/index.js +1 -17
  451. package/dist/_esm5.processed/parsers/manifest/local/index.js +2 -4
  452. package/dist/_esm5.processed/parsers/manifest/local/parse_local_manifest.js +26 -30
  453. package/dist/_esm5.processed/parsers/manifest/local/representation_index.d.ts +0 -2
  454. package/dist/_esm5.processed/parsers/manifest/local/representation_index.js +78 -71
  455. package/dist/_esm5.processed/parsers/manifest/local/types.js +1 -2
  456. package/dist/_esm5.processed/parsers/manifest/metaplaylist/index.js +2 -4
  457. package/dist/_esm5.processed/parsers/manifest/metaplaylist/metaplaylist_parser.js +75 -79
  458. package/dist/_esm5.processed/parsers/manifest/metaplaylist/representation_index.d.ts +3 -12
  459. package/dist/_esm5.processed/parsers/manifest/metaplaylist/representation_index.js +50 -59
  460. package/dist/_esm5.processed/parsers/manifest/smooth/create_parser.d.ts +1 -0
  461. package/dist/_esm5.processed/parsers/manifest/smooth/create_parser.js +184 -204
  462. package/dist/_esm5.processed/parsers/manifest/smooth/get_codecs.js +8 -13
  463. package/dist/_esm5.processed/parsers/manifest/smooth/index.js +4 -7
  464. package/dist/_esm5.processed/parsers/manifest/smooth/parse_C_nodes.js +14 -17
  465. package/dist/_esm5.processed/parsers/manifest/smooth/parse_protection_node.js +15 -17
  466. package/dist/_esm5.processed/parsers/manifest/smooth/representation_index.d.ts +86 -24
  467. package/dist/_esm5.processed/parsers/manifest/smooth/representation_index.js +195 -128
  468. package/dist/_esm5.processed/parsers/manifest/smooth/utils/add_segment_infos.d.ts +6 -3
  469. package/dist/_esm5.processed/parsers/manifest/smooth/utils/add_segment_infos.js +10 -13
  470. package/dist/_esm5.processed/parsers/manifest/smooth/utils/parseBoolean.js +1 -4
  471. package/dist/_esm5.processed/parsers/manifest/smooth/utils/reduceChildren.js +3 -6
  472. package/dist/_esm5.processed/parsers/manifest/smooth/utils/tokens.js +1 -5
  473. package/dist/_esm5.processed/parsers/manifest/types.d.ts +8 -7
  474. package/dist/_esm5.processed/parsers/manifest/types.js +1 -2
  475. package/dist/_esm5.processed/parsers/manifest/utils/check_manifest_ids.js +24 -27
  476. package/dist/_esm5.processed/parsers/manifest/utils/clear_timeline_from_position.js +7 -10
  477. package/dist/_esm5.processed/parsers/manifest/utils/get_first_time_from_adaptation.js +5 -8
  478. package/dist/_esm5.processed/parsers/manifest/utils/get_last_time_from_adaptation.js +5 -8
  479. package/dist/_esm5.processed/parsers/manifest/utils/get_maximum_positions.js +12 -15
  480. package/dist/_esm5.processed/parsers/manifest/utils/get_minimum_position.js +12 -15
  481. package/dist/_esm5.processed/parsers/manifest/utils/index_helpers.js +22 -31
  482. package/dist/_esm5.processed/parsers/manifest/utils/is_segment_still_available.js +6 -9
  483. package/dist/_esm5.processed/parsers/manifest/utils/update_segment_timeline.js +45 -38
  484. package/dist/_esm5.processed/parsers/texttracks/index.js +1 -2
  485. package/dist/_esm5.processed/parsers/texttracks/sami/html.js +43 -45
  486. package/dist/_esm5.processed/parsers/texttracks/sami/native.js +39 -41
  487. package/dist/_esm5.processed/parsers/texttracks/srt/find_end_of_cue_block.js +4 -7
  488. package/dist/_esm5.processed/parsers/texttracks/srt/get_cue_blocks.js +8 -11
  489. package/dist/_esm5.processed/parsers/texttracks/srt/html.js +29 -32
  490. package/dist/_esm5.processed/parsers/texttracks/srt/native.js +13 -16
  491. package/dist/_esm5.processed/parsers/texttracks/srt/parse_cue.js +18 -21
  492. package/dist/_esm5.processed/parsers/texttracks/srt/parse_timestamp.js +7 -10
  493. package/dist/_esm5.processed/parsers/texttracks/ttml/get_parameters.js +30 -37
  494. package/dist/_esm5.processed/parsers/texttracks/ttml/get_styling.js +48 -48
  495. package/dist/_esm5.processed/parsers/texttracks/ttml/get_time_delimiters.js +11 -14
  496. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +2 -7
  497. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_extent.js +20 -16
  498. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_font_size.js +12 -15
  499. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_line_height.js +8 -11
  500. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_origin.js +21 -16
  501. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_padding.js +22 -25
  502. package/dist/_esm5.processed/parsers/texttracks/ttml/html/create_element.js +124 -117
  503. package/dist/_esm5.processed/parsers/texttracks/ttml/html/generate_css_test_outline.js +8 -11
  504. package/dist/_esm5.processed/parsers/texttracks/ttml/html/index.js +2 -4
  505. package/dist/_esm5.processed/parsers/texttracks/ttml/html/parse_cue.js +8 -12
  506. package/dist/_esm5.processed/parsers/texttracks/ttml/html/parse_ttml_to_div.js +11 -14
  507. package/dist/_esm5.processed/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +7 -10
  508. package/dist/_esm5.processed/parsers/texttracks/ttml/native/index.js +2 -4
  509. package/dist/_esm5.processed/parsers/texttracks/ttml/native/parse_cue.js +35 -38
  510. package/dist/_esm5.processed/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +8 -11
  511. package/dist/_esm5.processed/parsers/texttracks/ttml/parse_ttml.js +58 -58
  512. package/dist/_esm5.processed/parsers/texttracks/ttml/regexps.js +13 -27
  513. package/dist/_esm5.processed/parsers/texttracks/ttml/resolve_styles_inheritance.js +18 -18
  514. package/dist/_esm5.processed/parsers/texttracks/ttml/time_parsing.js +26 -28
  515. package/dist/_esm5.processed/parsers/texttracks/ttml/xml_utils.js +25 -37
  516. package/dist/_esm5.processed/parsers/texttracks/types.js +1 -2
  517. package/dist/_esm5.processed/parsers/texttracks/webvtt/get_cue_blocks.js +9 -12
  518. package/dist/_esm5.processed/parsers/texttracks/webvtt/get_style_blocks.js +11 -14
  519. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/convert_payload_to_html.js +8 -11
  520. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_default_style_elements.js +5 -8
  521. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_style_attribute.js +60 -60
  522. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_styled_element.js +27 -30
  523. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/index.js +2 -4
  524. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/parse_style_block.js +26 -23
  525. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/parse_webvtt_to_div.js +17 -20
  526. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/to_html.js +18 -23
  527. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/index.js +2 -4
  528. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +16 -19
  529. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/set_settings_on_cue.js +17 -20
  530. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/to_native_cue.js +5 -8
  531. package/dist/_esm5.processed/parsers/texttracks/webvtt/parse_cue_block.js +18 -26
  532. package/dist/_esm5.processed/parsers/texttracks/webvtt/parse_timestamp.js +7 -10
  533. package/dist/_esm5.processed/parsers/texttracks/webvtt/utils.js +7 -15
  534. package/dist/_esm5.processed/public_types.d.ts +352 -442
  535. package/dist/_esm5.processed/public_types.js +1 -2
  536. package/dist/_esm5.processed/tools/TextTrackRenderer/index.js +6 -13
  537. package/dist/_esm5.processed/tools/TextTrackRenderer/text_track_renderer.d.ts +4 -5
  538. package/dist/_esm5.processed/tools/TextTrackRenderer/text_track_renderer.js +26 -29
  539. package/dist/_esm5.processed/tools/index.js +4 -6
  540. package/dist/_esm5.processed/tools/string_utils.js +1 -10
  541. package/dist/_esm5.processed/transports/dash/add_segment_integrity_checks_to_loader.js +24 -16
  542. package/dist/_esm5.processed/transports/dash/construct_segment_url.js +3 -6
  543. package/dist/_esm5.processed/transports/dash/extract_complete_chunks.js +14 -17
  544. package/dist/_esm5.processed/transports/dash/get_events_out_of_emsgs.js +16 -19
  545. package/dist/_esm5.processed/transports/dash/image_pipelines.d.ts +38 -0
  546. package/dist/_esm5.processed/transports/dash/image_pipelines.js +129 -0
  547. package/dist/_esm5.processed/transports/dash/index.js +2 -4
  548. package/dist/_esm5.processed/transports/dash/init_segment_loader.js +27 -47
  549. package/dist/_esm5.processed/transports/dash/low_latency_segment_loader.js +16 -23
  550. package/dist/_esm5.processed/transports/dash/manifest_parser.js +60 -68
  551. package/dist/_esm5.processed/transports/dash/pipelines.js +21 -21
  552. package/dist/_esm5.processed/transports/dash/segment_loader.d.ts +2 -2
  553. package/dist/_esm5.processed/transports/dash/segment_loader.js +49 -65
  554. package/dist/_esm5.processed/transports/dash/segment_parser.js +49 -64
  555. package/dist/_esm5.processed/transports/dash/text_loader.js +32 -38
  556. package/dist/_esm5.processed/transports/dash/text_parser.js +53 -58
  557. package/dist/_esm5.processed/transports/index.js +1 -17
  558. package/dist/_esm5.processed/transports/local/index.js +2 -4
  559. package/dist/_esm5.processed/transports/local/pipelines.js +32 -27
  560. package/dist/_esm5.processed/transports/local/segment_loader.js +24 -27
  561. package/dist/_esm5.processed/transports/local/segment_parser.d.ts +1 -1
  562. package/dist/_esm5.processed/transports/local/segment_parser.js +26 -38
  563. package/dist/_esm5.processed/transports/local/text_parser.d.ts +2 -2
  564. package/dist/_esm5.processed/transports/local/text_parser.js +41 -55
  565. package/dist/_esm5.processed/transports/metaplaylist/index.js +2 -4
  566. package/dist/_esm5.processed/transports/metaplaylist/manifest_loader.js +7 -11
  567. package/dist/_esm5.processed/transports/metaplaylist/pipelines.js +123 -101
  568. package/dist/_esm5.processed/transports/smooth/extract_timings_infos.js +20 -26
  569. package/dist/_esm5.processed/transports/smooth/index.js +2 -4
  570. package/dist/_esm5.processed/transports/smooth/isobmff/create_audio_init_segment.js +19 -22
  571. package/dist/_esm5.processed/transports/smooth/isobmff/create_boxes.js +67 -92
  572. package/dist/_esm5.processed/transports/smooth/isobmff/create_init_segment.js +26 -29
  573. package/dist/_esm5.processed/transports/smooth/isobmff/create_traf_box.js +6 -9
  574. package/dist/_esm5.processed/transports/smooth/isobmff/create_video_init_segment.js +20 -23
  575. package/dist/_esm5.processed/transports/smooth/isobmff/get_aaces_header.js +7 -10
  576. package/dist/_esm5.processed/transports/smooth/isobmff/index.js +6 -13
  577. package/dist/_esm5.processed/transports/smooth/isobmff/parse_tfrf.js +16 -19
  578. package/dist/_esm5.processed/transports/smooth/isobmff/parse_tfxd.js +6 -9
  579. package/dist/_esm5.processed/transports/smooth/isobmff/patch_segment.js +38 -41
  580. package/dist/_esm5.processed/transports/smooth/pipelines.js +262 -116
  581. package/dist/_esm5.processed/transports/smooth/segment_loader.d.ts +3 -3
  582. package/dist/_esm5.processed/transports/smooth/segment_loader.js +150 -152
  583. package/dist/_esm5.processed/transports/smooth/utils.d.ts +26 -1
  584. package/dist/_esm5.processed/transports/smooth/utils.js +57 -7
  585. package/dist/_esm5.processed/transports/types.d.ts +96 -110
  586. package/dist/_esm5.processed/transports/types.js +1 -2
  587. package/dist/_esm5.processed/transports/utils/byte_range.js +4 -6
  588. package/dist/_esm5.processed/transports/utils/call_custom_manifest_loader.js +18 -24
  589. package/dist/_esm5.processed/transports/utils/check_isobmff_integrity.js +11 -14
  590. package/dist/_esm5.processed/transports/utils/find_complete_box.js +8 -11
  591. package/dist/_esm5.processed/transports/utils/generate_manifest_loader.js +14 -22
  592. package/dist/_esm5.processed/transports/utils/get_isobmff_timing_infos.js +10 -13
  593. package/dist/_esm5.processed/transports/utils/infer_segment_container.d.ts +3 -3
  594. package/dist/_esm5.processed/transports/utils/infer_segment_container.js +7 -8
  595. package/dist/_esm5.processed/transports/utils/parse_text_track.d.ts +12 -8
  596. package/dist/_esm5.processed/transports/utils/parse_text_track.js +34 -46
  597. package/dist/_esm5.processed/utils/are_arrays_of_numbers_equal.js +2 -5
  598. package/dist/_esm5.processed/utils/are_codecs_compatible.js +9 -11
  599. package/dist/_esm5.processed/utils/array_find.js +4 -7
  600. package/dist/_esm5.processed/utils/array_find_index.js +3 -6
  601. package/dist/_esm5.processed/utils/array_includes.js +11 -12
  602. package/dist/_esm5.processed/utils/assert.js +9 -13
  603. package/dist/_esm5.processed/utils/assert_unreachable.js +3 -6
  604. package/dist/_esm5.processed/utils/base64.js +18 -23
  605. package/dist/_esm5.processed/utils/byte_parsing.js +17 -30
  606. package/dist/_esm5.processed/utils/cancellable_sleep.js +5 -8
  607. package/dist/_esm5.processed/utils/create_cancellable_promise.js +4 -7
  608. package/dist/_esm5.processed/utils/deep_merge.js +21 -10
  609. package/dist/_esm5.processed/utils/event_emitter.js +24 -24
  610. package/dist/_esm5.processed/utils/flat_map.js +4 -7
  611. package/dist/_esm5.processed/utils/get_fuzzed_delay.js +3 -6
  612. package/dist/_esm5.processed/utils/hash_buffer.js +4 -7
  613. package/dist/_esm5.processed/utils/id_generator.js +3 -6
  614. package/dist/_esm5.processed/utils/initialization_segment_cache.js +12 -11
  615. package/dist/_esm5.processed/utils/is_non_empty_string.js +1 -4
  616. package/dist/_esm5.processed/utils/is_null_or_undefined.js +1 -4
  617. package/dist/_esm5.processed/utils/languages/ISO_639-1_to_ISO_639-3.js +2 -4
  618. package/dist/_esm5.processed/utils/languages/ISO_639-2_to_ISO_639-3.js +2 -4
  619. package/dist/_esm5.processed/utils/languages/index.js +3 -7
  620. package/dist/_esm5.processed/utils/languages/normalize.js +20 -26
  621. package/dist/_esm5.processed/utils/list_to_map.d.ts +22 -0
  622. package/dist/_esm5.processed/utils/list_to_map.js +28 -0
  623. package/dist/_esm5.processed/utils/logger.js +23 -24
  624. package/dist/_esm5.processed/utils/noop.js +1 -4
  625. package/dist/_esm5.processed/utils/object_assign.js +10 -8
  626. package/dist/_esm5.processed/utils/object_values.js +3 -6
  627. package/dist/_esm5.processed/utils/ranges.d.ts +8 -50
  628. package/dist/_esm5.processed/utils/ranges.js +64 -163
  629. package/dist/_esm5.processed/utils/reference.js +52 -48
  630. package/dist/_esm5.processed/utils/request/fetch.d.ts +4 -4
  631. package/dist/_esm5.processed/utils/request/fetch.js +107 -79
  632. package/dist/_esm5.processed/utils/request/index.js +4 -9
  633. package/dist/_esm5.processed/utils/request/xhr.js +36 -49
  634. package/dist/_esm5.processed/utils/resolve_url.js +18 -18
  635. package/dist/_esm5.processed/utils/retry_promise_with_backoff.js +81 -34
  636. package/dist/_esm5.processed/utils/simple_set.d.ts +51 -0
  637. package/dist/_esm5.processed/utils/simple_set.js +57 -0
  638. package/dist/_esm5.processed/utils/sleep.js +2 -5
  639. package/dist/_esm5.processed/utils/slice_uint8array.js +1 -3
  640. package/dist/_esm5.processed/utils/sorted_list.js +40 -37
  641. package/dist/_esm5.processed/utils/starts_with.js +2 -5
  642. package/dist/_esm5.processed/utils/string_parsing.js +72 -84
  643. package/dist/_esm5.processed/utils/task_canceller.js +71 -51
  644. package/dist/_esm5.processed/utils/uniq.d.ts +36 -0
  645. package/dist/_esm5.processed/utils/uniq.js +43 -0
  646. package/dist/_esm5.processed/utils/warn_once.js +4 -7
  647. package/dist/_esm5.processed/utils/weak_map_memory.js +11 -12
  648. package/dist/_esm5.processed/utils/wrapInPromise.js +2 -5
  649. package/dist/commonjs/compat/add_class_name.d.ts +22 -0
  650. package/dist/commonjs/compat/add_class_name.js +42 -0
  651. package/dist/commonjs/compat/add_text_track.d.ts +31 -0
  652. package/dist/commonjs/compat/add_text_track.js +50 -0
  653. package/dist/commonjs/compat/browser_compatibility_types.d.ts +164 -0
  654. package/dist/commonjs/compat/browser_compatibility_types.js +37 -0
  655. package/dist/commonjs/compat/browser_detection.d.ts +42 -0
  656. package/dist/commonjs/compat/browser_detection.js +119 -0
  657. package/dist/commonjs/compat/browser_version.d.ts +24 -0
  658. package/dist/commonjs/compat/browser_version.js +44 -0
  659. package/dist/commonjs/compat/can_patch_isobmff.d.ts +25 -0
  660. package/dist/commonjs/compat/can_patch_isobmff.js +31 -0
  661. package/dist/commonjs/compat/can_rely_on_video_visibility_and_size.d.ts +37 -0
  662. package/dist/commonjs/compat/can_rely_on_video_visibility_and_size.js +52 -0
  663. package/dist/commonjs/compat/can_reuse_media_keys.d.ts +13 -0
  664. package/dist/commonjs/compat/can_reuse_media_keys.js +19 -0
  665. package/dist/commonjs/compat/change_source_buffer_type.d.ts +48 -0
  666. package/dist/commonjs/compat/change_source_buffer_type.js +40 -0
  667. package/dist/commonjs/compat/clear_element_src.d.ts +20 -0
  668. package/dist/commonjs/compat/clear_element_src.js +56 -0
  669. package/dist/commonjs/compat/eme/close_session.d.ts +30 -0
  670. package/dist/commonjs/compat/eme/close_session.js +165 -0
  671. package/dist/commonjs/compat/eme/constants.d.ts +16 -0
  672. package/dist/commonjs/compat/eme/constants.js +22 -0
  673. package/dist/commonjs/compat/eme/custom_key_system_access.d.ts +54 -0
  674. package/dist/commonjs/compat/eme/custom_key_system_access.js +49 -0
  675. package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts +31 -0
  676. package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.js +174 -0
  677. package/dist/commonjs/compat/eme/custom_media_keys/index.d.ts +7 -0
  678. package/dist/commonjs/compat/eme/custom_media_keys/index.js +16 -0
  679. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +27 -0
  680. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.js +64 -0
  681. package/dist/commonjs/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts +43 -0
  682. package/dist/commonjs/compat/eme/custom_media_keys/ms_media_keys_constructor.js +30 -0
  683. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +41 -0
  684. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.js +197 -0
  685. package/dist/commonjs/compat/eme/custom_media_keys/types.d.ts +43 -0
  686. package/dist/commonjs/compat/eme/custom_media_keys/types.js +17 -0
  687. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts +37 -0
  688. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.js +263 -0
  689. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts +22 -0
  690. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +30 -0
  691. package/dist/commonjs/compat/eme/eme-api-implementation.d.ts +78 -0
  692. package/dist/commonjs/compat/eme/eme-api-implementation.js +226 -0
  693. package/dist/commonjs/compat/eme/generate_key_request.d.ts +54 -0
  694. package/dist/commonjs/compat/eme/generate_key_request.js +152 -0
  695. package/dist/commonjs/compat/eme/get_init_data.d.ts +57 -0
  696. package/dist/commonjs/compat/eme/get_init_data.js +115 -0
  697. package/dist/commonjs/compat/eme/get_uuid_kid_from_keystatus_kid.d.ts +23 -0
  698. package/dist/commonjs/compat/eme/get_uuid_kid_from_keystatus_kid.js +34 -0
  699. package/dist/commonjs/compat/eme/get_webkit_fairplay_initdata.d.ts +25 -0
  700. package/dist/commonjs/compat/eme/get_webkit_fairplay_initdata.js +60 -0
  701. package/dist/commonjs/compat/eme/index.d.ts +24 -0
  702. package/dist/commonjs/compat/eme/index.js +28 -0
  703. package/dist/commonjs/compat/eme/load_session.d.ts +30 -0
  704. package/dist/commonjs/compat/eme/load_session.js +102 -0
  705. package/dist/commonjs/compat/enable_audio_track.d.ts +11 -0
  706. package/dist/commonjs/compat/enable_audio_track.js +29 -0
  707. package/dist/commonjs/compat/event_listeners.d.ts +173 -0
  708. package/dist/commonjs/compat/event_listeners.js +448 -0
  709. package/dist/commonjs/compat/get_start_date.d.ts +30 -0
  710. package/dist/commonjs/compat/get_start_date.js +47 -0
  711. package/dist/{_esm5.processed → commonjs}/compat/global_scope.js +3 -3
  712. package/dist/commonjs/compat/has_issues_with_high_media_source_duration.d.ts +21 -0
  713. package/dist/commonjs/compat/has_issues_with_high_media_source_duration.js +29 -0
  714. package/dist/commonjs/compat/index.d.ts +37 -0
  715. package/dist/commonjs/compat/index.js +66 -0
  716. package/dist/commonjs/compat/is_codec_supported.d.ts +25 -0
  717. package/dist/commonjs/compat/is_codec_supported.js +39 -0
  718. package/dist/commonjs/compat/is_debug_mode_enabled.d.ts +7 -0
  719. package/dist/commonjs/compat/is_debug_mode_enabled.js +12 -0
  720. package/dist/commonjs/compat/is_node.d.ts +18 -0
  721. package/dist/commonjs/compat/is_node.js +21 -0
  722. package/dist/commonjs/compat/is_seeking_approximate.d.ts +28 -0
  723. package/dist/commonjs/compat/is_seeking_approximate.js +31 -0
  724. package/dist/commonjs/compat/is_vtt_cue.d.ts +22 -0
  725. package/dist/commonjs/compat/is_vtt_cue.js +29 -0
  726. package/dist/commonjs/compat/make_vtt_cue.d.ts +26 -0
  727. package/dist/commonjs/compat/make_vtt_cue.js +47 -0
  728. package/dist/commonjs/compat/on_height_width_change.d.ts +33 -0
  729. package/dist/commonjs/compat/on_height_width_change.js +75 -0
  730. package/dist/commonjs/compat/patch_webkit_source_buffer.d.ts +16 -0
  731. package/dist/commonjs/compat/patch_webkit_source_buffer.js +78 -0
  732. package/dist/commonjs/compat/remove_cue.d.ts +21 -0
  733. package/dist/commonjs/compat/remove_cue.js +66 -0
  734. package/dist/commonjs/compat/should_favour_custom_safari_EME.d.ts +23 -0
  735. package/dist/commonjs/compat/should_favour_custom_safari_EME.js +30 -0
  736. package/dist/commonjs/compat/should_reload_media_source_on_decipherability_update.d.ts +26 -0
  737. package/dist/commonjs/compat/should_reload_media_source_on_decipherability_update.js +32 -0
  738. package/dist/commonjs/compat/should_renew_media_key_system_access.d.ts +21 -0
  739. package/dist/commonjs/compat/should_renew_media_key_system_access.js +27 -0
  740. package/dist/commonjs/compat/should_unset_media_keys.d.ts +22 -0
  741. package/dist/commonjs/compat/should_unset_media_keys.js +28 -0
  742. package/dist/commonjs/compat/should_validate_metadata.d.ts +22 -0
  743. package/dist/commonjs/compat/should_validate_metadata.js +28 -0
  744. package/dist/commonjs/compat/should_wait_for_data_before_loaded.d.ts +24 -0
  745. package/dist/commonjs/compat/should_wait_for_data_before_loaded.js +33 -0
  746. package/dist/commonjs/compat/should_wait_for_have_enough_data.d.ts +13 -0
  747. package/dist/commonjs/compat/should_wait_for_have_enough_data.js +19 -0
  748. package/dist/commonjs/config.d.ts +179 -0
  749. package/dist/commonjs/config.js +34 -0
  750. package/dist/commonjs/core/adaptive/adaptive_representation_selector.d.ts +306 -0
  751. package/dist/commonjs/core/adaptive/adaptive_representation_selector.js +380 -0
  752. package/dist/commonjs/core/adaptive/buffer_based_chooser.d.ts +89 -0
  753. package/dist/commonjs/core/adaptive/buffer_based_chooser.js +195 -0
  754. package/dist/commonjs/core/adaptive/guess_based_chooser.d.ts +95 -0
  755. package/dist/commonjs/core/adaptive/guess_based_chooser.js +266 -0
  756. package/dist/commonjs/core/adaptive/index.d.ts +18 -0
  757. package/dist/commonjs/core/adaptive/index.js +19 -0
  758. package/dist/commonjs/core/adaptive/network_analyzer.d.ts +73 -0
  759. package/dist/commonjs/core/adaptive/network_analyzer.js +342 -0
  760. package/dist/commonjs/core/adaptive/utils/bandwidth_estimator.d.ts +47 -0
  761. package/dist/commonjs/core/adaptive/utils/bandwidth_estimator.js +72 -0
  762. package/dist/commonjs/core/adaptive/utils/ewma.d.ts +39 -0
  763. package/dist/commonjs/core/adaptive/utils/ewma.js +54 -0
  764. package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.d.ts +25 -0
  765. package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.js +40 -0
  766. package/dist/commonjs/core/adaptive/utils/filter_by_resolution.js +53 -0
  767. package/dist/commonjs/core/adaptive/utils/get_buffer_levels.d.ts +24 -0
  768. package/dist/commonjs/core/adaptive/utils/get_buffer_levels.js +50 -0
  769. package/dist/commonjs/core/adaptive/utils/last_estimate_storage.d.ts +61 -0
  770. package/dist/commonjs/core/adaptive/utils/last_estimate_storage.js +39 -0
  771. package/dist/commonjs/core/adaptive/utils/pending_requests_store.d.ts +110 -0
  772. package/dist/commonjs/core/adaptive/utils/pending_requests_store.js +78 -0
  773. package/dist/commonjs/core/adaptive/utils/representation_score_calculator.d.ts +104 -0
  774. package/dist/commonjs/core/adaptive/utils/representation_score_calculator.js +116 -0
  775. package/dist/commonjs/core/adaptive/utils/select_optimal_representation.d.ts +27 -0
  776. package/dist/commonjs/core/adaptive/utils/select_optimal_representation.js +39 -0
  777. package/dist/commonjs/core/api/debug/buffer_graph.d.ts +28 -0
  778. package/dist/commonjs/core/api/debug/buffer_graph.js +177 -0
  779. package/dist/commonjs/core/api/debug/buffer_size_graph.d.ts +10 -0
  780. package/dist/commonjs/core/api/debug/buffer_size_graph.js +132 -0
  781. package/dist/commonjs/core/api/debug/constants.d.ts +2 -0
  782. package/dist/commonjs/core/api/debug/constants.js +5 -0
  783. package/dist/commonjs/core/api/debug/index.d.ts +2 -0
  784. package/dist/commonjs/core/api/debug/index.js +4 -0
  785. package/dist/commonjs/core/api/debug/modules/general_info.d.ts +3 -0
  786. package/dist/commonjs/core/api/debug/modules/general_info.js +213 -0
  787. package/dist/commonjs/core/api/debug/modules/segment_buffer_content.d.ts +4 -0
  788. package/dist/commonjs/core/api/debug/modules/segment_buffer_content.js +124 -0
  789. package/dist/commonjs/core/api/debug/modules/segment_buffer_size.d.ts +3 -0
  790. package/dist/commonjs/core/api/debug/modules/segment_buffer_size.js +38 -0
  791. package/dist/commonjs/core/api/debug/render.d.ts +3 -0
  792. package/dist/commonjs/core/api/debug/render.js +35 -0
  793. package/dist/commonjs/core/api/debug/utils.d.ts +39 -0
  794. package/dist/commonjs/core/api/debug/utils.js +86 -0
  795. package/dist/commonjs/core/api/index.d.ts +20 -0
  796. package/dist/commonjs/core/api/index.js +22 -0
  797. package/dist/commonjs/core/api/option_utils.d.ts +121 -0
  798. package/dist/commonjs/core/api/option_utils.js +309 -0
  799. package/dist/commonjs/core/api/playback_observer.d.ts +370 -0
  800. package/dist/commonjs/core/api/playback_observer.js +585 -0
  801. package/dist/commonjs/core/api/public_api.d.ts +719 -0
  802. package/dist/commonjs/core/api/public_api.js +2236 -0
  803. package/dist/{_esm5.processed → commonjs}/core/api/track_management/index.js +1 -1
  804. package/dist/commonjs/core/api/track_management/media_element_tracks_store.js +688 -0
  805. package/dist/commonjs/core/api/track_management/track_dispatcher.js +178 -0
  806. package/dist/commonjs/core/api/track_management/tracks_store.js +998 -0
  807. package/dist/commonjs/core/api/utils.d.ts +66 -0
  808. package/dist/commonjs/core/api/utils.js +175 -0
  809. package/dist/commonjs/core/decrypt/__tests__/__global__/utils.d.ts +178 -0
  810. package/dist/commonjs/core/decrypt/__tests__/__global__/utils.js +413 -0
  811. package/dist/commonjs/core/decrypt/attach_media_keys.d.ts +52 -0
  812. package/dist/commonjs/core/decrypt/attach_media_keys.js +120 -0
  813. package/dist/commonjs/core/decrypt/clear_on_stop.d.ts +22 -0
  814. package/dist/commonjs/core/decrypt/clear_on_stop.js +43 -0
  815. package/dist/commonjs/core/decrypt/content_decryptor.d.ts +184 -0
  816. package/dist/commonjs/core/decrypt/content_decryptor.js +1146 -0
  817. package/dist/commonjs/core/decrypt/create_or_load_session.d.ts +63 -0
  818. package/dist/commonjs/core/decrypt/create_or_load_session.js +127 -0
  819. package/dist/commonjs/core/decrypt/create_session.d.ts +53 -0
  820. package/dist/commonjs/core/decrypt/create_session.js +215 -0
  821. package/dist/commonjs/core/decrypt/dispose_decryption_resources.d.ts +21 -0
  822. package/dist/commonjs/core/decrypt/dispose_decryption_resources.js +91 -0
  823. package/dist/commonjs/core/decrypt/find_key_system.d.ts +48 -0
  824. package/dist/commonjs/core/decrypt/find_key_system.js +369 -0
  825. package/dist/commonjs/core/decrypt/get_key_system_configuration.d.ts +22 -0
  826. package/dist/commonjs/core/decrypt/get_key_system_configuration.js +35 -0
  827. package/dist/commonjs/core/decrypt/get_media_keys.d.ts +44 -0
  828. package/dist/commonjs/core/decrypt/get_media_keys.js +160 -0
  829. package/dist/commonjs/core/decrypt/index.d.ts +26 -0
  830. package/dist/commonjs/core/decrypt/index.js +45 -0
  831. package/dist/commonjs/core/decrypt/init_media_keys.d.ts +26 -0
  832. package/dist/commonjs/core/decrypt/init_media_keys.js +85 -0
  833. package/dist/commonjs/core/decrypt/session_events_listener.d.ts +75 -0
  834. package/dist/commonjs/core/decrypt/session_events_listener.js +330 -0
  835. package/dist/commonjs/core/decrypt/set_server_certificate.d.ts +51 -0
  836. package/dist/commonjs/core/decrypt/set_server_certificate.js +146 -0
  837. package/dist/commonjs/core/decrypt/types.d.ts +368 -0
  838. package/dist/commonjs/core/decrypt/types.js +58 -0
  839. package/dist/commonjs/core/decrypt/utils/are_init_values_compatible.d.ts +34 -0
  840. package/dist/commonjs/core/decrypt/utils/are_init_values_compatible.js +116 -0
  841. package/dist/commonjs/core/decrypt/utils/check_key_statuses.d.ts +52 -0
  842. package/dist/commonjs/core/decrypt/utils/check_key_statuses.js +211 -0
  843. package/dist/commonjs/core/decrypt/utils/clean_old_loaded_sessions.d.ts +26 -0
  844. package/dist/commonjs/core/decrypt/utils/clean_old_loaded_sessions.js +89 -0
  845. package/dist/commonjs/core/decrypt/utils/clean_old_stored_persistent_info.d.ts +32 -0
  846. package/dist/commonjs/core/decrypt/utils/clean_old_stored_persistent_info.js +43 -0
  847. package/dist/commonjs/core/decrypt/utils/get_drm_system_id.d.ts +20 -0
  848. package/dist/commonjs/core/decrypt/utils/get_drm_system_id.js +40 -0
  849. package/dist/commonjs/core/decrypt/utils/init_data_values_container.d.ts +69 -0
  850. package/dist/commonjs/core/decrypt/utils/init_data_values_container.js +126 -0
  851. package/dist/commonjs/core/decrypt/utils/is_session_usable.d.ts +24 -0
  852. package/dist/commonjs/core/decrypt/utils/is_session_usable.js +52 -0
  853. package/dist/commonjs/core/decrypt/utils/key_id_comparison.d.ts +31 -0
  854. package/dist/commonjs/core/decrypt/utils/key_id_comparison.js +96 -0
  855. package/dist/commonjs/core/decrypt/utils/key_session_record.d.ts +104 -0
  856. package/dist/commonjs/core/decrypt/utils/key_session_record.js +190 -0
  857. package/dist/commonjs/core/decrypt/utils/loaded_sessions_store.d.ts +215 -0
  858. package/dist/commonjs/core/decrypt/utils/loaded_sessions_store.js +515 -0
  859. package/dist/commonjs/core/decrypt/utils/media_keys_infos_store.d.ts +56 -0
  860. package/dist/commonjs/core/decrypt/utils/media_keys_infos_store.js +46 -0
  861. package/dist/commonjs/core/decrypt/utils/persistent_sessions_store.d.ts +94 -0
  862. package/dist/commonjs/core/decrypt/utils/persistent_sessions_store.js +346 -0
  863. package/dist/commonjs/core/decrypt/utils/serializable_bytes.d.ts +44 -0
  864. package/dist/commonjs/core/decrypt/utils/serializable_bytes.js +50 -0
  865. package/dist/commonjs/core/decrypt/utils/server_certificate_store.d.ts +64 -0
  866. package/dist/commonjs/core/decrypt/utils/server_certificate_store.js +114 -0
  867. package/dist/commonjs/core/fetchers/cdn_prioritizer.d.ts +107 -0
  868. package/dist/commonjs/core/fetchers/cdn_prioritizer.js +216 -0
  869. package/dist/commonjs/core/fetchers/index.d.ts +18 -0
  870. package/dist/commonjs/core/fetchers/index.js +22 -0
  871. package/dist/commonjs/core/fetchers/manifest/index.d.ts +18 -0
  872. package/dist/commonjs/core/fetchers/manifest/index.js +19 -0
  873. package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.d.ts +221 -0
  874. package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.js +629 -0
  875. package/dist/commonjs/core/fetchers/segment/index.d.ts +19 -0
  876. package/dist/commonjs/core/fetchers/segment/index.js +19 -0
  877. package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.d.ts +38 -0
  878. package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.js +70 -0
  879. package/dist/commonjs/core/fetchers/segment/segment_fetcher.d.ts +148 -0
  880. package/dist/commonjs/core/fetchers/segment/segment_fetcher.js +321 -0
  881. package/dist/commonjs/core/fetchers/segment/segment_fetcher_creator.d.ts +77 -0
  882. package/dist/commonjs/core/fetchers/segment/segment_fetcher_creator.js +60 -0
  883. package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts +145 -0
  884. package/dist/commonjs/core/fetchers/segment/task_prioritizer.js +350 -0
  885. package/dist/commonjs/core/fetchers/utils/error_selector.d.ts +23 -0
  886. package/dist/commonjs/core/fetchers/utils/error_selector.js +34 -0
  887. package/dist/commonjs/core/fetchers/utils/schedule_request.d.ts +98 -0
  888. package/dist/commonjs/core/fetchers/utils/schedule_request.js +393 -0
  889. package/dist/commonjs/core/init/directfile_content_initializer.d.ts +97 -0
  890. package/dist/commonjs/core/init/directfile_content_initializer.js +241 -0
  891. package/dist/commonjs/core/init/index.d.ts +16 -0
  892. package/dist/commonjs/core/init/index.js +20 -0
  893. package/dist/commonjs/core/init/media_source_content_initializer.d.ts +174 -0
  894. package/dist/commonjs/core/init/media_source_content_initializer.js +655 -0
  895. package/dist/commonjs/core/init/types.d.ts +217 -0
  896. package/dist/commonjs/core/init/types.js +54 -0
  897. package/dist/commonjs/core/init/utils/content_time_boundaries_observer.d.ts +191 -0
  898. package/dist/commonjs/core/init/utils/content_time_boundaries_observer.js +520 -0
  899. package/dist/commonjs/core/init/utils/create_media_source.d.ts +37 -0
  900. package/dist/commonjs/core/init/utils/create_media_source.js +117 -0
  901. package/dist/commonjs/core/init/utils/create_stream_playback_observer.d.ts +45 -0
  902. package/dist/commonjs/core/init/utils/create_stream_playback_observer.js +89 -0
  903. package/dist/commonjs/core/init/utils/end_of_stream.d.ts +33 -0
  904. package/dist/commonjs/core/init/utils/end_of_stream.js +115 -0
  905. package/dist/commonjs/core/init/utils/get_initial_time.d.ts +62 -0
  906. package/dist/commonjs/core/init/utils/get_initial_time.js +113 -0
  907. package/dist/commonjs/core/init/utils/get_loaded_reference.d.ts +28 -0
  908. package/dist/commonjs/core/init/utils/get_loaded_reference.js +59 -0
  909. package/dist/commonjs/core/init/utils/initial_seek_and_play.d.ts +63 -0
  910. package/dist/commonjs/core/init/utils/initial_seek_and_play.js +131 -0
  911. package/dist/commonjs/core/init/utils/initialize_content_decryption.d.ts +80 -0
  912. package/dist/commonjs/core/init/utils/initialize_content_decryption.js +107 -0
  913. package/dist/commonjs/core/init/utils/media_source_duration_updater.d.ts +58 -0
  914. package/dist/commonjs/core/init/utils/media_source_duration_updater.js +270 -0
  915. package/dist/commonjs/core/init/utils/rebuffering_controller.d.ts +147 -0
  916. package/dist/commonjs/core/init/utils/rebuffering_controller.js +597 -0
  917. package/dist/commonjs/core/init/utils/stream_events_emitter/are_same_stream_events.d.ts +39 -0
  918. package/dist/commonjs/core/init/utils/stream_events_emitter/are_same_stream_events.js +37 -0
  919. package/dist/commonjs/core/init/utils/stream_events_emitter/index.d.ts +18 -0
  920. package/dist/commonjs/core/init/utils/stream_events_emitter/index.js +19 -0
  921. package/dist/commonjs/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +25 -0
  922. package/dist/commonjs/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +68 -0
  923. package/dist/commonjs/core/init/utils/stream_events_emitter/stream_events_emitter.d.ts +52 -0
  924. package/dist/commonjs/core/init/utils/stream_events_emitter/stream_events_emitter.js +232 -0
  925. package/dist/commonjs/core/init/utils/stream_events_emitter/types.d.ts +41 -0
  926. package/dist/commonjs/core/init/utils/stream_events_emitter/types.js +17 -0
  927. package/dist/commonjs/core/init/utils/throw_on_media_error.d.ts +23 -0
  928. package/dist/commonjs/core/init/utils/throw_on_media_error.js +61 -0
  929. package/dist/commonjs/core/segment_buffers/garbage_collector.d.ts +41 -0
  930. package/dist/commonjs/core/segment_buffers/garbage_collector.js +212 -0
  931. package/dist/commonjs/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.d.ts +182 -0
  932. package/dist/commonjs/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.js +457 -0
  933. package/dist/commonjs/core/segment_buffers/implementations/audio_video/index.d.ts +17 -0
  934. package/dist/commonjs/core/segment_buffers/implementations/audio_video/index.js +19 -0
  935. package/dist/commonjs/core/segment_buffers/implementations/index.d.ts +18 -0
  936. package/dist/commonjs/core/segment_buffers/implementations/index.js +35 -0
  937. package/dist/commonjs/core/segment_buffers/implementations/text/html/html_text_segment_buffer.d.ts +141 -0
  938. package/dist/commonjs/core/segment_buffers/implementations/text/html/html_text_segment_buffer.js +407 -0
  939. package/dist/commonjs/core/segment_buffers/implementations/text/html/index.d.ts +21 -0
  940. package/dist/commonjs/core/segment_buffers/implementations/text/html/index.js +23 -0
  941. package/dist/commonjs/core/segment_buffers/implementations/text/html/parsers.d.ts +30 -0
  942. package/dist/commonjs/core/segment_buffers/implementations/text/html/parsers.js +40 -0
  943. package/dist/commonjs/core/segment_buffers/implementations/text/html/text_track_cues_store.d.ts +79 -0
  944. package/dist/commonjs/core/segment_buffers/implementations/text/html/text_track_cues_store.js +390 -0
  945. package/dist/commonjs/core/segment_buffers/implementations/text/html/types.d.ts +25 -0
  946. package/dist/commonjs/core/segment_buffers/implementations/text/html/types.js +17 -0
  947. package/dist/commonjs/core/segment_buffers/implementations/text/html/update_proportional_elements.d.ts +30 -0
  948. package/dist/commonjs/core/segment_buffers/implementations/text/html/update_proportional_elements.js +80 -0
  949. package/dist/commonjs/core/segment_buffers/implementations/text/html/utils.d.ts +45 -0
  950. package/dist/commonjs/core/segment_buffers/implementations/text/html/utils.js +131 -0
  951. package/dist/commonjs/core/segment_buffers/implementations/text/native/index.d.ts +17 -0
  952. package/dist/commonjs/core/segment_buffers/implementations/text/native/index.js +19 -0
  953. package/dist/commonjs/core/segment_buffers/implementations/text/native/native_text_segment_buffer.d.ts +83 -0
  954. package/dist/commonjs/core/segment_buffers/implementations/text/native/native_text_segment_buffer.js +273 -0
  955. package/dist/commonjs/core/segment_buffers/implementations/text/native/parsers.d.ts +26 -0
  956. package/dist/commonjs/core/segment_buffers/implementations/text/native/parsers.js +40 -0
  957. package/dist/commonjs/core/segment_buffers/implementations/types.d.ts +320 -0
  958. package/dist/commonjs/core/segment_buffers/implementations/types.js +124 -0
  959. package/dist/commonjs/core/segment_buffers/implementations/utils/manual_time_ranges.d.ts +29 -0
  960. package/dist/commonjs/core/segment_buffers/implementations/utils/manual_time_ranges.js +67 -0
  961. package/dist/commonjs/core/segment_buffers/index.d.ts +21 -0
  962. package/dist/commonjs/core/segment_buffers/index.js +28 -0
  963. package/dist/commonjs/core/segment_buffers/inventory/buffered_history.d.ts +89 -0
  964. package/dist/commonjs/core/segment_buffers/inventory/buffered_history.js +114 -0
  965. package/dist/commonjs/core/segment_buffers/inventory/index.d.ts +21 -0
  966. package/dist/commonjs/core/segment_buffers/inventory/index.js +23 -0
  967. package/dist/commonjs/core/segment_buffers/inventory/segment_inventory.d.ts +207 -0
  968. package/dist/commonjs/core/segment_buffers/inventory/segment_inventory.js +866 -0
  969. package/dist/commonjs/core/segment_buffers/inventory/types.d.ts +27 -0
  970. package/dist/commonjs/core/segment_buffers/inventory/types.js +17 -0
  971. package/dist/{_esm5.processed → commonjs}/core/segment_buffers/inventory/utils.js +2 -2
  972. package/dist/commonjs/core/segment_buffers/segment_buffers_store.d.ts +180 -0
  973. package/dist/commonjs/core/segment_buffers/segment_buffers_store.js +302 -0
  974. package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts +33 -0
  975. package/dist/commonjs/core/stream/adaptation/adaptation_stream.js +455 -0
  976. package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.js +136 -0
  977. package/dist/commonjs/core/stream/adaptation/index.d.ts +18 -0
  978. package/dist/commonjs/core/stream/adaptation/index.js +34 -0
  979. package/dist/commonjs/core/stream/adaptation/types.d.ts +200 -0
  980. package/dist/commonjs/core/stream/adaptation/types.js +2 -0
  981. package/dist/commonjs/core/stream/index.d.ts +20 -0
  982. package/dist/commonjs/core/stream/index.js +19 -0
  983. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.d.ts +30 -0
  984. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.js +63 -0
  985. package/dist/commonjs/core/stream/orchestrator/index.d.ts +18 -0
  986. package/dist/commonjs/core/stream/orchestrator/index.js +19 -0
  987. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts +174 -0
  988. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.js +602 -0
  989. package/dist/commonjs/core/stream/period/index.d.ts +18 -0
  990. package/dist/commonjs/core/stream/period/index.js +34 -0
  991. package/dist/commonjs/core/stream/period/period_stream.d.ts +49 -0
  992. package/dist/commonjs/core/stream/period/period_stream.js +454 -0
  993. package/dist/commonjs/core/stream/period/types.d.ts +101 -0
  994. package/dist/commonjs/core/stream/period/types.js +2 -0
  995. package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +68 -0
  996. package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.js +165 -0
  997. package/dist/commonjs/core/stream/representation/index.d.ts +18 -0
  998. package/dist/commonjs/core/stream/representation/index.js +34 -0
  999. package/dist/commonjs/core/stream/representation/representation_stream.d.ts +53 -0
  1000. package/dist/commonjs/core/stream/representation/representation_stream.js +399 -0
  1001. package/dist/commonjs/core/stream/representation/types.d.ts +276 -0
  1002. package/dist/commonjs/core/stream/representation/types.js +2 -0
  1003. package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.d.ts +32 -0
  1004. package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.js +117 -0
  1005. package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.d.ts +53 -0
  1006. package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.js +238 -0
  1007. package/dist/commonjs/core/stream/representation/utils/downloading_queue.d.ts +231 -0
  1008. package/dist/commonjs/core/stream/representation/utils/downloading_queue.js +390 -0
  1009. package/dist/commonjs/core/stream/representation/utils/force_garbage_collection.d.ts +29 -0
  1010. package/dist/commonjs/core/stream/representation/utils/force_garbage_collection.js +179 -0
  1011. package/dist/commonjs/core/stream/representation/utils/get_buffer_status.d.ts +72 -0
  1012. package/dist/commonjs/core/stream/representation/utils/get_buffer_status.js +231 -0
  1013. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.d.ts +92 -0
  1014. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.js +429 -0
  1015. package/dist/commonjs/core/stream/representation/utils/get_segment_priority.d.ts +28 -0
  1016. package/dist/commonjs/core/stream/representation/utils/get_segment_priority.js +41 -0
  1017. package/dist/commonjs/core/stream/representation/utils/push_init_segment.d.ts +39 -0
  1018. package/dist/commonjs/core/stream/representation/utils/push_init_segment.js +88 -0
  1019. package/dist/commonjs/core/stream/representation/utils/push_media_segment.d.ts +40 -0
  1020. package/dist/commonjs/core/stream/representation/utils/push_media_segment.js +111 -0
  1021. package/dist/commonjs/default_config.d.ts +1081 -0
  1022. package/dist/commonjs/default_config.js +1104 -0
  1023. package/dist/commonjs/errors/assertion_error.d.ts +31 -0
  1024. package/dist/commonjs/errors/assertion_error.js +56 -0
  1025. package/dist/commonjs/errors/custom_loader_error.d.ts +36 -0
  1026. package/dist/commonjs/errors/custom_loader_error.js +61 -0
  1027. package/dist/commonjs/errors/encrypted_media_error.d.ts +39 -0
  1028. package/dist/commonjs/errors/encrypted_media_error.js +59 -0
  1029. package/dist/commonjs/errors/error_codes.d.ts +31 -0
  1030. package/dist/commonjs/errors/error_codes.js +75 -0
  1031. package/dist/commonjs/errors/error_message.d.ts +22 -0
  1032. package/dist/commonjs/errors/error_message.js +27 -0
  1033. package/dist/commonjs/errors/format_error.d.ts +20 -0
  1034. package/dist/commonjs/errors/format_error.js +34 -0
  1035. package/dist/commonjs/errors/index.d.ts +26 -0
  1036. package/dist/commonjs/errors/index.js +40 -0
  1037. package/dist/commonjs/errors/is_known_error.d.ts +22 -0
  1038. package/dist/commonjs/errors/is_known_error.js +35 -0
  1039. package/dist/commonjs/errors/media_error.d.ts +56 -0
  1040. package/dist/commonjs/errors/media_error.js +76 -0
  1041. package/dist/commonjs/errors/network_error.d.ts +44 -0
  1042. package/dist/commonjs/errors/network_error.js +72 -0
  1043. package/dist/commonjs/errors/other_error.d.ts +32 -0
  1044. package/dist/commonjs/errors/other_error.js +58 -0
  1045. package/dist/commonjs/errors/request_error.d.ts +38 -0
  1046. package/dist/commonjs/errors/request_error.js +76 -0
  1047. package/dist/commonjs/experimental/features/dash_wasm.d.ts +23 -0
  1048. package/dist/commonjs/experimental/features/dash_wasm.js +37 -0
  1049. package/dist/commonjs/experimental/features/debug_element.d.ts +8 -0
  1050. package/dist/commonjs/experimental/features/debug_element.js +13 -0
  1051. package/dist/commonjs/experimental/features/index.d.ts +19 -0
  1052. package/dist/commonjs/experimental/features/index.js +26 -0
  1053. package/dist/commonjs/experimental/features/local.d.ts +19 -0
  1054. package/dist/commonjs/experimental/features/local.js +27 -0
  1055. package/dist/commonjs/experimental/features/metaplaylist.d.ts +19 -0
  1056. package/dist/commonjs/experimental/features/metaplaylist.js +27 -0
  1057. package/dist/commonjs/experimental/index.d.ts +2 -0
  1058. package/dist/commonjs/experimental/index.js +5 -0
  1059. package/{src/typings/next-tick.d.ts → dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.d.ts} +2 -8
  1060. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.js +23 -0
  1061. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +17 -0
  1062. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.js +23 -0
  1063. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.d.ts +18 -0
  1064. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.js +22 -0
  1065. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +26 -0
  1066. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.js +64 -0
  1067. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +25 -0
  1068. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +66 -0
  1069. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +30 -0
  1070. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +44 -0
  1071. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.d.ts +25 -0
  1072. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.js +17 -0
  1073. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +54 -0
  1074. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +379 -0
  1075. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +25 -0
  1076. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +50 -0
  1077. package/dist/commonjs/experimental/tools/createMetaplaylist/get_duration_from_manifest.d.ts +23 -0
  1078. package/dist/commonjs/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +171 -0
  1079. package/dist/commonjs/experimental/tools/createMetaplaylist/index.d.ts +30 -0
  1080. package/dist/commonjs/experimental/tools/createMetaplaylist/index.js +52 -0
  1081. package/dist/commonjs/experimental/tools/index.d.ts +20 -0
  1082. package/dist/commonjs/experimental/tools/index.js +26 -0
  1083. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/index.d.ts +60 -0
  1084. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/index.js +160 -0
  1085. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts +45 -0
  1086. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.js +141 -0
  1087. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts +24 -0
  1088. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/capabilities.js +145 -0
  1089. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/index.d.ts +17 -0
  1090. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/index.js +19 -0
  1091. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/log.d.ts +18 -0
  1092. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/log.js +20 -0
  1093. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts +25 -0
  1094. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.js +53 -0
  1095. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts +22 -0
  1096. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +72 -0
  1097. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +26 -0
  1098. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +82 -0
  1099. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts +29 -0
  1100. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +101 -0
  1101. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts +21 -0
  1102. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/index.js +32 -0
  1103. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +21 -0
  1104. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +60 -0
  1105. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts +21 -0
  1106. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.js +92 -0
  1107. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts +26 -0
  1108. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +87 -0
  1109. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +21 -0
  1110. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +49 -0
  1111. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/types.d.ts +69 -0
  1112. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/types.js +24 -0
  1113. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.d.ts +31 -0
  1114. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.js +104 -0
  1115. package/dist/commonjs/experimental/tools/parseBIFThumbnails/index.d.ts +29 -0
  1116. package/dist/commonjs/experimental/tools/parseBIFThumbnails/index.js +32 -0
  1117. package/dist/commonjs/features/add_features.d.ts +20 -0
  1118. package/dist/commonjs/features/add_features.js +38 -0
  1119. package/dist/commonjs/features/features_object.d.ts +22 -0
  1120. package/dist/commonjs/features/features_object.js +33 -0
  1121. package/dist/commonjs/features/index.d.ts +34 -0
  1122. package/dist/commonjs/features/index.js +36 -0
  1123. package/dist/commonjs/features/list/dash.d.ts +23 -0
  1124. package/dist/commonjs/features/list/dash.js +35 -0
  1125. package/dist/commonjs/features/list/directfile.d.ts +24 -0
  1126. package/dist/commonjs/features/list/directfile.js +31 -0
  1127. package/dist/commonjs/features/list/eme.d.ts +23 -0
  1128. package/dist/commonjs/features/list/eme.js +28 -0
  1129. package/dist/commonjs/features/list/html_sami_parser.d.ts +23 -0
  1130. package/dist/commonjs/features/list/html_sami_parser.js +30 -0
  1131. package/dist/commonjs/features/list/html_srt_parser.d.ts +23 -0
  1132. package/dist/commonjs/features/list/html_srt_parser.js +30 -0
  1133. package/dist/commonjs/features/list/html_text_buffer.d.ts +23 -0
  1134. package/dist/commonjs/features/list/html_text_buffer.js +28 -0
  1135. package/dist/commonjs/features/list/html_ttml_parser.d.ts +23 -0
  1136. package/dist/commonjs/features/list/html_ttml_parser.js +30 -0
  1137. package/dist/commonjs/features/list/html_vtt_parser.d.ts +23 -0
  1138. package/dist/commonjs/features/list/html_vtt_parser.js +30 -0
  1139. package/dist/commonjs/features/list/index.d.ts +29 -0
  1140. package/dist/commonjs/features/list/index.js +46 -0
  1141. package/dist/commonjs/features/list/native_sami_parser.d.ts +23 -0
  1142. package/dist/commonjs/features/list/native_sami_parser.js +31 -0
  1143. package/dist/commonjs/features/list/native_srt_parser.d.ts +23 -0
  1144. package/dist/commonjs/features/list/native_srt_parser.js +31 -0
  1145. package/dist/commonjs/features/list/native_text_buffer.d.ts +23 -0
  1146. package/dist/commonjs/features/list/native_text_buffer.js +29 -0
  1147. package/dist/commonjs/features/list/native_ttml_parser.d.ts +23 -0
  1148. package/dist/commonjs/features/list/native_ttml_parser.js +31 -0
  1149. package/dist/commonjs/features/list/native_vtt_parser.d.ts +23 -0
  1150. package/dist/commonjs/features/list/native_vtt_parser.js +31 -0
  1151. package/dist/commonjs/features/list/smooth.d.ts +23 -0
  1152. package/dist/commonjs/features/list/smooth.js +31 -0
  1153. package/dist/commonjs/features/types.d.ts +130 -0
  1154. package/dist/commonjs/features/types.js +17 -0
  1155. package/dist/{_esm5.processed → commonjs}/index.js +4 -4
  1156. package/dist/commonjs/log.d.ts +18 -0
  1157. package/dist/commonjs/log.js +21 -0
  1158. package/dist/commonjs/manifest/adaptation.d.ts +113 -0
  1159. package/dist/commonjs/manifest/adaptation.js +222 -0
  1160. package/dist/commonjs/manifest/index.d.ts +24 -0
  1161. package/dist/commonjs/manifest/index.js +47 -0
  1162. package/dist/commonjs/manifest/manifest.d.ts +265 -0
  1163. package/dist/commonjs/manifest/manifest.js +453 -0
  1164. package/dist/commonjs/manifest/period.d.ts +68 -0
  1165. package/dist/commonjs/manifest/period.js +140 -0
  1166. package/dist/commonjs/manifest/representation.d.ts +251 -0
  1167. package/dist/commonjs/manifest/representation.js +296 -0
  1168. package/dist/commonjs/manifest/representation_index/index.d.ts +18 -0
  1169. package/dist/commonjs/manifest/representation_index/index.js +20 -0
  1170. package/dist/commonjs/manifest/representation_index/static.d.ts +101 -0
  1171. package/dist/commonjs/manifest/representation_index/static.js +143 -0
  1172. package/dist/commonjs/manifest/representation_index/types.d.ts +420 -0
  1173. package/dist/commonjs/manifest/representation_index/types.js +17 -0
  1174. package/dist/commonjs/manifest/types.d.ts +29 -0
  1175. package/dist/commonjs/manifest/types.js +33 -0
  1176. package/dist/commonjs/manifest/update_period_in_place.d.ts +49 -0
  1177. package/dist/commonjs/manifest/update_period_in_place.js +168 -0
  1178. package/dist/commonjs/manifest/update_periods.d.ts +47 -0
  1179. package/dist/commonjs/manifest/update_periods.js +189 -0
  1180. package/dist/commonjs/manifest/utils.d.ts +39 -0
  1181. package/dist/commonjs/manifest/utils.js +47 -0
  1182. package/dist/commonjs/minimal.d.ts +17 -0
  1183. package/dist/commonjs/minimal.js +33 -0
  1184. package/dist/commonjs/parsers/containers/isobmff/constants.d.ts +23 -0
  1185. package/dist/commonjs/parsers/containers/isobmff/constants.js +26 -0
  1186. package/dist/commonjs/parsers/containers/isobmff/create_box.d.ts +30 -0
  1187. package/dist/commonjs/parsers/containers/isobmff/create_box.js +93 -0
  1188. package/dist/commonjs/parsers/containers/isobmff/drm/index.d.ts +16 -0
  1189. package/dist/commonjs/parsers/containers/isobmff/drm/index.js +20 -0
  1190. package/dist/commonjs/parsers/containers/isobmff/drm/playready.d.ts +21 -0
  1191. package/dist/commonjs/parsers/containers/isobmff/drm/playready.js +40 -0
  1192. package/dist/commonjs/parsers/containers/isobmff/get_box.d.ts +107 -0
  1193. package/dist/commonjs/parsers/containers/isobmff/get_box.js +258 -0
  1194. package/dist/commonjs/parsers/containers/isobmff/index.d.ts +21 -0
  1195. package/dist/commonjs/parsers/containers/isobmff/index.js +42 -0
  1196. package/dist/commonjs/parsers/containers/isobmff/read.d.ts +57 -0
  1197. package/dist/commonjs/parsers/containers/isobmff/read.js +95 -0
  1198. package/dist/commonjs/parsers/containers/isobmff/take_pssh_out.d.ts +41 -0
  1199. package/dist/commonjs/parsers/containers/isobmff/take_pssh_out.js +88 -0
  1200. package/dist/commonjs/parsers/containers/isobmff/utils.d.ts +123 -0
  1201. package/dist/commonjs/parsers/containers/isobmff/utils.js +491 -0
  1202. package/dist/commonjs/parsers/containers/matroska/index.d.ts +16 -0
  1203. package/dist/commonjs/parsers/containers/matroska/index.js +21 -0
  1204. package/dist/commonjs/parsers/containers/matroska/utils.d.ts +34 -0
  1205. package/dist/commonjs/parsers/containers/matroska/utils.js +257 -0
  1206. package/dist/commonjs/parsers/images/bif.d.ts +39 -0
  1207. package/dist/commonjs/parsers/images/bif.js +90 -0
  1208. package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.d.ts +28 -0
  1209. package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.js +98 -0
  1210. package/dist/commonjs/parsers/manifest/dash/common/convert_supplemental_codecs.d.ts +17 -0
  1211. package/dist/commonjs/parsers/manifest/dash/common/convert_supplemental_codecs.js +30 -0
  1212. package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +43 -0
  1213. package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.js +82 -0
  1214. package/dist/commonjs/parsers/manifest/dash/common/get_clock_offset.d.ts +29 -0
  1215. package/dist/commonjs/parsers/manifest/dash/common/get_clock_offset.js +41 -0
  1216. package/dist/commonjs/parsers/manifest/dash/common/get_hdr_information.d.ts +50 -0
  1217. package/dist/commonjs/parsers/manifest/dash/common/get_hdr_information.js +78 -0
  1218. package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +21 -0
  1219. package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.js +31 -0
  1220. package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +25 -0
  1221. package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +33 -0
  1222. package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.d.ts +43 -0
  1223. package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.js +67 -0
  1224. package/dist/commonjs/parsers/manifest/dash/common/index.d.ts +20 -0
  1225. package/dist/commonjs/parsers/manifest/dash/common/index.js +25 -0
  1226. package/dist/commonjs/parsers/manifest/dash/common/indexes/base.d.ts +246 -0
  1227. package/dist/commonjs/parsers/manifest/dash/common/indexes/base.js +256 -0
  1228. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +32 -0
  1229. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.js +43 -0
  1230. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +36 -0
  1231. package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +97 -0
  1232. package/dist/commonjs/parsers/manifest/dash/common/indexes/index.d.ts +20 -0
  1233. package/dist/commonjs/parsers/manifest/dash/common/indexes/index.js +26 -0
  1234. package/dist/commonjs/parsers/manifest/dash/common/indexes/list.d.ts +193 -0
  1235. package/dist/commonjs/parsers/manifest/dash/common/indexes/list.js +216 -0
  1236. package/dist/commonjs/parsers/manifest/dash/common/indexes/template.d.ts +254 -0
  1237. package/dist/commonjs/parsers/manifest/dash/common/indexes/template.js +427 -0
  1238. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +26 -0
  1239. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +50 -0
  1240. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +17 -0
  1241. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +86 -0
  1242. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +37 -0
  1243. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +59 -0
  1244. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +41 -0
  1245. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +130 -0
  1246. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/index.d.ts +17 -0
  1247. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/index.js +19 -0
  1248. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +34 -0
  1249. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +60 -0
  1250. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +338 -0
  1251. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +467 -0
  1252. package/dist/commonjs/parsers/manifest/dash/common/indexes/tokens.d.ts +40 -0
  1253. package/dist/commonjs/parsers/manifest/dash/common/indexes/tokens.js +115 -0
  1254. package/dist/commonjs/parsers/manifest/dash/common/indexes/utils.d.ts +25 -0
  1255. package/dist/commonjs/parsers/manifest/dash/common/indexes/utils.js +32 -0
  1256. package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.d.ts +42 -0
  1257. package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.js +112 -0
  1258. package/dist/commonjs/parsers/manifest/dash/common/manifest_bounds_calculator.d.ts +92 -0
  1259. package/dist/commonjs/parsers/manifest/dash/common/manifest_bounds_calculator.js +115 -0
  1260. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +49 -0
  1261. package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.js +430 -0
  1262. package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.d.ts +22 -0
  1263. package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.js +32 -0
  1264. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.d.ts +98 -0
  1265. package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.js +287 -0
  1266. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.d.ts +67 -0
  1267. package/dist/commonjs/parsers/manifest/dash/common/parse_periods.js +329 -0
  1268. package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.d.ts +73 -0
  1269. package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.js +115 -0
  1270. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.d.ts +46 -0
  1271. package/dist/commonjs/parsers/manifest/dash/common/parse_representations.js +317 -0
  1272. package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.d.ts +26 -0
  1273. package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.js +47 -0
  1274. package/dist/commonjs/parsers/manifest/dash/index.d.ts +16 -0
  1275. package/dist/commonjs/parsers/manifest/dash/index.js +23 -0
  1276. package/dist/commonjs/parsers/manifest/dash/js-parser/index.d.ts +17 -0
  1277. package/dist/commonjs/parsers/manifest/dash/js-parser/index.js +19 -0
  1278. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts +23 -0
  1279. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +331 -0
  1280. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts +23 -0
  1281. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +33 -0
  1282. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts +22 -0
  1283. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.js +44 -0
  1284. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts +21 -0
  1285. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.js +94 -0
  1286. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts +23 -0
  1287. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +113 -0
  1288. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts +21 -0
  1289. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +42 -0
  1290. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts +21 -0
  1291. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/MPD.js +164 -0
  1292. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts +21 -0
  1293. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Period.js +132 -0
  1294. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts +21 -0
  1295. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Representation.js +209 -0
  1296. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts +22 -0
  1297. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +108 -0
  1298. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts +21 -0
  1299. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentList.js +59 -0
  1300. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts +23 -0
  1301. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +92 -0
  1302. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts +21 -0
  1303. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.js +33 -0
  1304. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts +23 -0
  1305. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +52 -0
  1306. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +187 -0
  1307. package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/utils.js +354 -0
  1308. package/dist/commonjs/parsers/manifest/dash/js-parser/parse_from_document.d.ts +24 -0
  1309. package/dist/commonjs/parsers/manifest/dash/js-parser/parse_from_document.js +131 -0
  1310. package/dist/commonjs/parsers/manifest/dash/node_parser_types.d.ts +395 -0
  1311. package/dist/commonjs/parsers/manifest/dash/node_parser_types.js +17 -0
  1312. package/dist/commonjs/parsers/manifest/dash/parsers_types.d.ts +83 -0
  1313. package/dist/commonjs/parsers/manifest/dash/parsers_types.js +17 -0
  1314. package/dist/commonjs/parsers/manifest/dash/wasm-parser/index.d.ts +18 -0
  1315. package/dist/commonjs/parsers/manifest/dash/wasm-parser/index.js +19 -0
  1316. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +111 -0
  1317. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +396 -0
  1318. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +31 -0
  1319. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +279 -0
  1320. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +24 -0
  1321. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.js +34 -0
  1322. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +24 -0
  1323. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +45 -0
  1324. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +23 -0
  1325. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +53 -0
  1326. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +32 -0
  1327. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +117 -0
  1328. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +27 -0
  1329. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +150 -0
  1330. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +32 -0
  1331. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +135 -0
  1332. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +31 -0
  1333. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +176 -0
  1334. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +24 -0
  1335. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +39 -0
  1336. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +18 -0
  1337. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +97 -0
  1338. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +25 -0
  1339. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.js +49 -0
  1340. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +18 -0
  1341. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +112 -0
  1342. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +25 -0
  1343. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +58 -0
  1344. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +28 -0
  1345. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +51 -0
  1346. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts +16 -0
  1347. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/index.js +20 -0
  1348. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +27 -0
  1349. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.js +49 -0
  1350. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts +38 -0
  1351. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +59 -0
  1352. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/types.d.ts +145 -0
  1353. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/types.js +17 -0
  1354. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +29 -0
  1355. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.js +40 -0
  1356. package/dist/commonjs/parsers/manifest/index.d.ts +16 -0
  1357. package/dist/commonjs/parsers/manifest/index.js +32 -0
  1358. package/dist/commonjs/parsers/manifest/local/index.d.ts +18 -0
  1359. package/dist/commonjs/parsers/manifest/local/index.js +19 -0
  1360. package/dist/commonjs/parsers/manifest/local/parse_local_manifest.d.ts +22 -0
  1361. package/dist/commonjs/parsers/manifest/local/parse_local_manifest.js +129 -0
  1362. package/dist/commonjs/parsers/manifest/local/representation_index.d.ts +83 -0
  1363. package/dist/commonjs/parsers/manifest/local/representation_index.js +258 -0
  1364. package/dist/commonjs/parsers/manifest/local/types.d.ts +285 -0
  1365. package/dist/commonjs/parsers/manifest/local/types.js +17 -0
  1366. package/dist/commonjs/parsers/manifest/metaplaylist/index.d.ts +18 -0
  1367. package/dist/commonjs/parsers/manifest/metaplaylist/index.js +19 -0
  1368. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +64 -0
  1369. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.js +283 -0
  1370. package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.d.ts +154 -0
  1371. package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.js +227 -0
  1372. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts +33 -0
  1373. package/dist/commonjs/parsers/manifest/smooth/create_parser.js +521 -0
  1374. package/dist/commonjs/parsers/manifest/smooth/get_codecs.d.ts +26 -0
  1375. package/dist/commonjs/parsers/manifest/smooth/get_codecs.js +55 -0
  1376. package/dist/commonjs/parsers/manifest/smooth/index.d.ts +19 -0
  1377. package/dist/commonjs/parsers/manifest/smooth/index.js +22 -0
  1378. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts +26 -0
  1379. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.js +63 -0
  1380. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts +29 -0
  1381. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.js +61 -0
  1382. package/dist/commonjs/parsers/manifest/smooth/representation_index.d.ts +226 -0
  1383. package/dist/commonjs/parsers/manifest/smooth/representation_index.js +385 -0
  1384. package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.js +162 -0
  1385. package/dist/commonjs/parsers/manifest/smooth/utils/add_segment_infos.d.ts +38 -0
  1386. package/dist/commonjs/parsers/manifest/smooth/utils/add_segment_infos.js +63 -0
  1387. package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts +20 -0
  1388. package/dist/{_esm5.processed/utils/take_first_set.js → commonjs/parsers/manifest/smooth/utils/parseBoolean.js} +14 -12
  1389. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts +23 -0
  1390. package/dist/{_esm5.processed/utils/take_first_set.d.ts → commonjs/parsers/manifest/smooth/utils/reduceChildren.js} +16 -7
  1391. package/dist/commonjs/parsers/manifest/smooth/utils/tokens.d.ts +28 -0
  1392. package/dist/commonjs/parsers/manifest/smooth/utils/tokens.js +39 -0
  1393. package/dist/commonjs/parsers/manifest/types.d.ts +379 -0
  1394. package/dist/commonjs/parsers/manifest/types.js +17 -0
  1395. package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.d.ts +25 -0
  1396. package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.js +79 -0
  1397. package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.d.ts +24 -0
  1398. package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.js +72 -0
  1399. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +27 -0
  1400. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.js +46 -0
  1401. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +29 -0
  1402. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.js +48 -0
  1403. package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.d.ts +24 -0
  1404. package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.js +75 -0
  1405. package/dist/commonjs/parsers/manifest/utils/get_minimum_position.d.ts +21 -0
  1406. package/dist/commonjs/parsers/manifest/utils/get_minimum_position.js +71 -0
  1407. package/dist/commonjs/parsers/manifest/utils/index_helpers.d.ts +88 -0
  1408. package/dist/commonjs/parsers/manifest/utils/index_helpers.js +156 -0
  1409. package/dist/commonjs/parsers/manifest/utils/is_segment_still_available.d.ts +29 -0
  1410. package/dist/commonjs/parsers/manifest/utils/is_segment_still_available.js +54 -0
  1411. package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.d.ts +33 -0
  1412. package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.js +157 -0
  1413. package/dist/commonjs/parsers/texttracks/index.d.ts +16 -0
  1414. package/dist/commonjs/parsers/texttracks/index.js +17 -0
  1415. package/dist/commonjs/parsers/texttracks/sami/html.d.ts +29 -0
  1416. package/dist/commonjs/parsers/texttracks/sami/html.js +207 -0
  1417. package/dist/commonjs/parsers/texttracks/sami/native.d.ts +34 -0
  1418. package/dist/commonjs/parsers/texttracks/sami/native.js +178 -0
  1419. package/dist/commonjs/parsers/texttracks/srt/find_end_of_cue_block.d.ts +29 -0
  1420. package/dist/commonjs/parsers/texttracks/srt/find_end_of_cue_block.js +42 -0
  1421. package/dist/commonjs/parsers/texttracks/srt/get_cue_blocks.d.ts +22 -0
  1422. package/dist/commonjs/parsers/texttracks/srt/get_cue_blocks.js +50 -0
  1423. package/dist/commonjs/parsers/texttracks/srt/html.d.ts +26 -0
  1424. package/dist/commonjs/parsers/texttracks/srt/html.js +156 -0
  1425. package/dist/commonjs/parsers/texttracks/srt/native.d.ts +28 -0
  1426. package/dist/commonjs/parsers/texttracks/srt/native.js +60 -0
  1427. package/dist/commonjs/parsers/texttracks/srt/parse_cue.d.ts +30 -0
  1428. package/dist/commonjs/parsers/texttracks/srt/parse_cue.js +79 -0
  1429. package/dist/commonjs/parsers/texttracks/srt/parse_timestamp.d.ts +21 -0
  1430. package/dist/commonjs/parsers/texttracks/srt/parse_timestamp.js +36 -0
  1431. package/dist/commonjs/parsers/texttracks/ttml/get_parameters.d.ts +32 -0
  1432. package/dist/commonjs/parsers/texttracks/ttml/get_parameters.js +87 -0
  1433. package/dist/commonjs/parsers/texttracks/ttml/get_styling.d.ts +41 -0
  1434. package/dist/commonjs/parsers/texttracks/ttml/get_styling.js +137 -0
  1435. package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.d.ts +26 -0
  1436. package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.js +44 -0
  1437. package/dist/commonjs/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.d.ts +48 -0
  1438. package/dist/commonjs/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +66 -0
  1439. package/dist/commonjs/parsers/texttracks/ttml/html/apply_extent.d.ts +21 -0
  1440. package/dist/commonjs/parsers/texttracks/ttml/html/apply_extent.js +64 -0
  1441. package/dist/commonjs/parsers/texttracks/ttml/html/apply_font_size.d.ts +21 -0
  1442. package/dist/commonjs/parsers/texttracks/ttml/html/apply_font_size.js +62 -0
  1443. package/dist/commonjs/parsers/texttracks/ttml/html/apply_line_height.d.ts +20 -0
  1444. package/dist/commonjs/parsers/texttracks/ttml/html/apply_line_height.js +47 -0
  1445. package/dist/commonjs/parsers/texttracks/ttml/html/apply_origin.d.ts +20 -0
  1446. package/dist/commonjs/parsers/texttracks/ttml/html/apply_origin.js +63 -0
  1447. package/dist/commonjs/parsers/texttracks/ttml/html/apply_padding.d.ts +20 -0
  1448. package/dist/commonjs/parsers/texttracks/ttml/html/apply_padding.js +142 -0
  1449. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.d.ts +32 -0
  1450. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.js +470 -0
  1451. package/dist/commonjs/parsers/texttracks/ttml/html/generate_css_test_outline.d.ts +26 -0
  1452. package/dist/commonjs/parsers/texttracks/ttml/html/generate_css_test_outline.js +44 -0
  1453. package/dist/commonjs/parsers/texttracks/ttml/html/index.d.ts +21 -0
  1454. package/dist/commonjs/parsers/texttracks/ttml/html/index.js +23 -0
  1455. package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.d.ts +26 -0
  1456. package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.js +41 -0
  1457. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +34 -0
  1458. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.js +53 -0
  1459. package/dist/commonjs/parsers/texttracks/ttml/html/ttml_color_to_css_color.d.ts +21 -0
  1460. package/dist/commonjs/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +60 -0
  1461. package/dist/commonjs/parsers/texttracks/ttml/native/index.d.ts +21 -0
  1462. package/dist/commonjs/parsers/texttracks/ttml/native/index.js +23 -0
  1463. package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.d.ts +30 -0
  1464. package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.js +205 -0
  1465. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +21 -0
  1466. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +36 -0
  1467. package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.d.ts +43 -0
  1468. package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.js +175 -0
  1469. package/dist/commonjs/parsers/texttracks/ttml/regexps.d.ts +28 -0
  1470. package/dist/commonjs/parsers/texttracks/ttml/regexps.js +49 -0
  1471. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +49 -0
  1472. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.js +86 -0
  1473. package/dist/commonjs/parsers/texttracks/ttml/time_parsing.d.ts +30 -0
  1474. package/dist/commonjs/parsers/texttracks/ttml/time_parsing.js +126 -0
  1475. package/dist/commonjs/parsers/texttracks/ttml/xml_utils.d.ts +70 -0
  1476. package/dist/commonjs/parsers/texttracks/ttml/xml_utils.js +186 -0
  1477. package/{src/typings/globals.d.ts → dist/commonjs/parsers/texttracks/types.d.ts} +7 -20
  1478. package/dist/commonjs/parsers/texttracks/types.js +17 -0
  1479. package/dist/commonjs/parsers/texttracks/webvtt/get_cue_blocks.d.ts +24 -0
  1480. package/dist/commonjs/parsers/texttracks/webvtt/get_cue_blocks.js +47 -0
  1481. package/dist/commonjs/parsers/texttracks/webvtt/get_style_blocks.d.ts +24 -0
  1482. package/dist/commonjs/parsers/texttracks/webvtt/get_style_blocks.js +54 -0
  1483. package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +22 -0
  1484. package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.js +38 -0
  1485. package/dist/commonjs/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts +2 -0
  1486. package/dist/commonjs/parsers/texttracks/webvtt/html/create_default_style_elements.js +25 -0
  1487. package/dist/commonjs/parsers/texttracks/webvtt/html/create_style_attribute.d.ts +21 -0
  1488. package/dist/commonjs/parsers/texttracks/webvtt/html/create_style_attribute.js +178 -0
  1489. package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.d.ts +25 -0
  1490. package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.js +86 -0
  1491. package/dist/commonjs/parsers/texttracks/webvtt/html/index.d.ts +22 -0
  1492. package/dist/commonjs/parsers/texttracks/webvtt/html/index.js +23 -0
  1493. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_style_block.d.ts +27 -0
  1494. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_style_block.js +75 -0
  1495. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts +31 -0
  1496. package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_to_div.js +58 -0
  1497. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts +43 -0
  1498. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.js +73 -0
  1499. package/dist/commonjs/parsers/texttracks/webvtt/native/index.d.ts +21 -0
  1500. package/dist/commonjs/parsers/texttracks/webvtt/native/index.js +23 -0
  1501. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts +28 -0
  1502. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +61 -0
  1503. package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +23 -0
  1504. package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.js +83 -0
  1505. package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.d.ts +25 -0
  1506. package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.js +28 -0
  1507. package/dist/commonjs/parsers/texttracks/webvtt/parse_cue_block.d.ts +33 -0
  1508. package/dist/commonjs/parsers/texttracks/webvtt/parse_cue_block.js +99 -0
  1509. package/dist/commonjs/parsers/texttracks/webvtt/parse_timestamp.d.ts +21 -0
  1510. package/dist/commonjs/parsers/texttracks/webvtt/parse_timestamp.js +37 -0
  1511. package/dist/commonjs/parsers/texttracks/webvtt/utils.d.ts +56 -0
  1512. package/dist/commonjs/parsers/texttracks/webvtt/utils.js +121 -0
  1513. package/dist/commonjs/public_types.d.ts +825 -0
  1514. package/dist/commonjs/public_types.js +17 -0
  1515. package/dist/commonjs/tools/TextTrackRenderer/index.d.ts +22 -0
  1516. package/dist/commonjs/tools/TextTrackRenderer/index.js +29 -0
  1517. package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.d.ts +70 -0
  1518. package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.js +81 -0
  1519. package/dist/commonjs/tools/index.d.ts +18 -0
  1520. package/dist/commonjs/tools/index.js +21 -0
  1521. package/dist/commonjs/tools/string_utils/index.d.ts +16 -0
  1522. package/dist/commonjs/tools/string_utils/index.js +25 -0
  1523. package/dist/commonjs/transports/dash/add_segment_integrity_checks_to_loader.d.ts +24 -0
  1524. package/dist/commonjs/transports/dash/add_segment_integrity_checks_to_loader.js +96 -0
  1525. package/dist/commonjs/transports/dash/construct_segment_url.d.ts +18 -0
  1526. package/dist/commonjs/transports/dash/construct_segment_url.js +24 -0
  1527. package/dist/commonjs/transports/dash/extract_complete_chunks.d.ts +24 -0
  1528. package/dist/commonjs/transports/dash/extract_complete_chunks.js +62 -0
  1529. package/dist/commonjs/transports/dash/get_events_out_of_emsgs.d.ts +28 -0
  1530. package/dist/commonjs/transports/dash/get_events_out_of_emsgs.js +95 -0
  1531. package/dist/commonjs/transports/dash/index.d.ts +21 -0
  1532. package/dist/commonjs/transports/dash/index.js +23 -0
  1533. package/dist/commonjs/transports/dash/init_segment_loader.d.ts +28 -0
  1534. package/dist/commonjs/transports/dash/init_segment_loader.js +87 -0
  1535. package/dist/commonjs/transports/dash/low_latency_segment_loader.d.ts +30 -0
  1536. package/dist/commonjs/transports/dash/low_latency_segment_loader.js +67 -0
  1537. package/dist/commonjs/transports/dash/manifest_parser.d.ts +18 -0
  1538. package/dist/commonjs/transports/dash/manifest_parser.js +280 -0
  1539. package/dist/commonjs/transports/dash/pipelines.d.ts +23 -0
  1540. package/dist/commonjs/transports/dash/pipelines.js +58 -0
  1541. package/dist/commonjs/transports/dash/segment_loader.d.ts +38 -0
  1542. package/dist/commonjs/transports/dash/segment_loader.js +173 -0
  1543. package/dist/commonjs/transports/dash/segment_parser.d.ts +23 -0
  1544. package/dist/commonjs/transports/dash/segment_parser.js +127 -0
  1545. package/dist/commonjs/transports/dash/text_loader.d.ts +25 -0
  1546. package/dist/commonjs/transports/dash/text_loader.js +85 -0
  1547. package/dist/commonjs/transports/dash/text_parser.d.ts +25 -0
  1548. package/dist/commonjs/transports/dash/text_parser.js +167 -0
  1549. package/dist/commonjs/transports/index.d.ts +16 -0
  1550. package/dist/commonjs/transports/index.js +32 -0
  1551. package/dist/commonjs/transports/local/index.d.ts +17 -0
  1552. package/dist/commonjs/transports/local/index.js +19 -0
  1553. package/dist/commonjs/transports/local/pipelines.d.ts +22 -0
  1554. package/dist/commonjs/transports/local/pipelines.js +68 -0
  1555. package/dist/commonjs/transports/local/segment_loader.d.ts +28 -0
  1556. package/dist/commonjs/transports/local/segment_loader.js +147 -0
  1557. package/dist/commonjs/transports/local/segment_parser.d.ts +20 -0
  1558. package/dist/commonjs/transports/local/segment_parser.js +72 -0
  1559. package/dist/commonjs/transports/local/text_parser.d.ts +27 -0
  1560. package/dist/commonjs/transports/local/text_parser.js +134 -0
  1561. package/dist/commonjs/transports/metaplaylist/index.d.ts +21 -0
  1562. package/dist/commonjs/transports/metaplaylist/index.js +23 -0
  1563. package/dist/commonjs/transports/metaplaylist/manifest_loader.d.ts +26 -0
  1564. package/dist/commonjs/transports/metaplaylist/manifest_loader.js +44 -0
  1565. package/dist/commonjs/transports/metaplaylist/pipelines.d.ts +17 -0
  1566. package/dist/commonjs/transports/metaplaylist/pipelines.js +240 -0
  1567. package/dist/commonjs/transports/smooth/extract_timings_infos.d.ts +62 -0
  1568. package/dist/commonjs/transports/smooth/extract_timings_infos.js +81 -0
  1569. package/dist/commonjs/transports/smooth/index.d.ts +21 -0
  1570. package/dist/commonjs/transports/smooth/index.js +23 -0
  1571. package/dist/commonjs/transports/smooth/isobmff/create_audio_init_segment.d.ts +29 -0
  1572. package/dist/commonjs/transports/smooth/isobmff/create_audio_init_segment.js +55 -0
  1573. package/dist/commonjs/transports/smooth/isobmff/create_boxes.d.ts +171 -0
  1574. package/dist/commonjs/transports/smooth/isobmff/create_boxes.js +378 -0
  1575. package/dist/commonjs/transports/smooth/isobmff/create_init_segment.d.ts +33 -0
  1576. package/dist/commonjs/transports/smooth/isobmff/create_init_segment.js +68 -0
  1577. package/dist/commonjs/transports/smooth/isobmff/create_traf_box.d.ts +16 -0
  1578. package/dist/commonjs/transports/smooth/isobmff/create_traf_box.js +27 -0
  1579. package/dist/commonjs/transports/smooth/isobmff/create_video_init_segment.d.ts +29 -0
  1580. package/dist/commonjs/transports/smooth/isobmff/create_video_init_segment.js +76 -0
  1581. package/dist/commonjs/transports/smooth/isobmff/get_aaces_header.d.ts +27 -0
  1582. package/dist/commonjs/transports/smooth/isobmff/get_aaces_header.js +58 -0
  1583. package/dist/commonjs/transports/smooth/isobmff/index.d.ts +21 -0
  1584. package/dist/commonjs/transports/smooth/isobmff/index.js +28 -0
  1585. package/dist/commonjs/transports/smooth/isobmff/parse_tfrf.d.ts +24 -0
  1586. package/dist/commonjs/transports/smooth/isobmff/parse_tfrf.js +50 -0
  1587. package/dist/commonjs/transports/smooth/isobmff/parse_tfxd.d.ts +24 -0
  1588. package/dist/commonjs/transports/smooth/isobmff/parse_tfxd.js +34 -0
  1589. package/dist/commonjs/transports/smooth/isobmff/patch_segment.d.ts +23 -0
  1590. package/dist/commonjs/transports/smooth/isobmff/patch_segment.js +130 -0
  1591. package/dist/commonjs/transports/smooth/pipelines.d.ts +17 -0
  1592. package/dist/commonjs/transports/smooth/pipelines.js +287 -0
  1593. package/dist/commonjs/transports/smooth/segment_loader.d.ts +27 -0
  1594. package/dist/commonjs/transports/smooth/segment_loader.js +206 -0
  1595. package/dist/commonjs/transports/smooth/utils.d.ts +26 -0
  1596. package/dist/commonjs/transports/smooth/utils.js +36 -0
  1597. package/dist/commonjs/transports/types.d.ts +701 -0
  1598. package/dist/commonjs/transports/types.js +17 -0
  1599. package/dist/commonjs/transports/utils/byte_range.d.ts +21 -0
  1600. package/dist/commonjs/transports/utils/byte_range.js +44 -0
  1601. package/dist/commonjs/transports/utils/call_custom_manifest_loader.d.ts +19 -0
  1602. package/dist/commonjs/transports/utils/call_custom_manifest_loader.js +95 -0
  1603. package/dist/commonjs/transports/utils/check_isobmff_integrity.d.ts +23 -0
  1604. package/dist/commonjs/transports/utils/check_isobmff_integrity.js +49 -0
  1605. package/dist/commonjs/transports/utils/find_complete_box.d.ts +25 -0
  1606. package/dist/commonjs/transports/utils/find_complete_box.js +56 -0
  1607. package/dist/commonjs/transports/utils/generate_manifest_loader.d.ts +26 -0
  1608. package/dist/commonjs/transports/utils/generate_manifest_loader.js +62 -0
  1609. package/dist/commonjs/transports/utils/get_isobmff_timing_infos.d.ts +29 -0
  1610. package/dist/commonjs/transports/utils/get_isobmff_timing_infos.js +69 -0
  1611. package/dist/commonjs/transports/utils/infer_segment_container.d.ts +29 -0
  1612. package/dist/commonjs/transports/utils/infer_segment_container.js +47 -0
  1613. package/dist/commonjs/transports/utils/parse_text_track.d.ts +56 -0
  1614. package/dist/commonjs/transports/utils/parse_text_track.js +142 -0
  1615. package/dist/commonjs/utils/are_arrays_of_numbers_equal.d.ts +22 -0
  1616. package/dist/commonjs/utils/are_arrays_of_numbers_equal.js +38 -0
  1617. package/dist/commonjs/utils/are_codecs_compatible.d.ts +25 -0
  1618. package/dist/commonjs/utils/are_codecs_compatible.js +62 -0
  1619. package/dist/commonjs/utils/array_find.d.ts +23 -0
  1620. package/dist/commonjs/utils/array_find.js +38 -0
  1621. package/dist/commonjs/utils/array_find_index.d.ts +23 -0
  1622. package/dist/commonjs/utils/array_find_index.js +37 -0
  1623. package/dist/commonjs/utils/array_includes.d.ts +53 -0
  1624. package/dist/commonjs/utils/array_includes.js +86 -0
  1625. package/dist/commonjs/utils/assert.d.ts +34 -0
  1626. package/dist/commonjs/utils/assert.js +57 -0
  1627. package/dist/commonjs/utils/assert_unreachable.d.ts +40 -0
  1628. package/dist/commonjs/utils/assert_unreachable.js +46 -0
  1629. package/dist/commonjs/utils/base64.d.ts +14 -0
  1630. package/dist/commonjs/utils/base64.js +152 -0
  1631. package/dist/commonjs/utils/byte_parsing.d.ts +123 -0
  1632. package/dist/commonjs/utils/byte_parsing.js +248 -0
  1633. package/dist/commonjs/utils/cancellable_sleep.d.ts +30 -0
  1634. package/dist/commonjs/utils/cancellable_sleep.js +38 -0
  1635. package/dist/commonjs/utils/create_cancellable_promise.d.ts +26 -0
  1636. package/dist/commonjs/utils/create_cancellable_promise.js +55 -0
  1637. package/dist/commonjs/utils/deep_merge.d.ts +9 -0
  1638. package/dist/commonjs/utils/deep_merge.js +73 -0
  1639. package/dist/commonjs/utils/event_emitter.d.ts +62 -0
  1640. package/dist/commonjs/utils/event_emitter.js +105 -0
  1641. package/dist/commonjs/utils/flat_map.d.ts +22 -0
  1642. package/dist/commonjs/utils/flat_map.js +65 -0
  1643. package/dist/commonjs/utils/get_fuzzed_delay.d.ts +21 -0
  1644. package/dist/commonjs/utils/get_fuzzed_delay.js +28 -0
  1645. package/dist/commonjs/utils/hash_buffer.d.ts +32 -0
  1646. package/dist/commonjs/utils/hash_buffer.js +44 -0
  1647. package/dist/commonjs/utils/id_generator.d.ts +21 -0
  1648. package/dist/commonjs/utils/id_generator.js +36 -0
  1649. package/dist/commonjs/utils/initialization_segment_cache.d.ts +42 -0
  1650. package/dist/commonjs/utils/initialization_segment_cache.js +53 -0
  1651. package/dist/commonjs/utils/is_non_empty_string.d.ts +20 -0
  1652. package/dist/commonjs/utils/is_non_empty_string.js +25 -0
  1653. package/dist/commonjs/utils/is_null_or_undefined.d.ts +24 -0
  1654. package/dist/commonjs/utils/is_null_or_undefined.js +29 -0
  1655. package/dist/commonjs/utils/languages/ISO_639-1_to_ISO_639-3.d.ts +22 -0
  1656. package/dist/commonjs/utils/languages/ISO_639-1_to_ISO_639-3.js +207 -0
  1657. package/dist/commonjs/utils/languages/ISO_639-2_to_ISO_639-3.d.ts +22 -0
  1658. package/dist/commonjs/utils/languages/ISO_639-2_to_ISO_639-3.js +43 -0
  1659. package/dist/commonjs/utils/languages/index.d.ts +18 -0
  1660. package/dist/commonjs/utils/languages/index.js +22 -0
  1661. package/dist/commonjs/utils/languages/normalize.d.ts +68 -0
  1662. package/dist/commonjs/utils/languages/normalize.js +121 -0
  1663. package/dist/commonjs/utils/logger.d.ts +46 -0
  1664. package/dist/commonjs/utils/logger.js +81 -0
  1665. package/dist/commonjs/utils/noop.d.ts +23 -0
  1666. package/dist/commonjs/utils/noop.js +28 -0
  1667. package/dist/commonjs/utils/object_assign.d.ts +22 -0
  1668. package/dist/commonjs/utils/object_assign.js +46 -0
  1669. package/dist/commonjs/utils/object_values.d.ts +30 -0
  1670. package/dist/commonjs/utils/object_values.js +29 -0
  1671. package/dist/commonjs/utils/queue_microtask.d.ts +2 -0
  1672. package/dist/commonjs/utils/queue_microtask.js +7 -0
  1673. package/dist/commonjs/utils/ranges.d.ts +212 -0
  1674. package/dist/commonjs/utils/ranges.js +527 -0
  1675. package/dist/commonjs/utils/reference.d.ts +214 -0
  1676. package/dist/commonjs/utils/reference.js +339 -0
  1677. package/dist/commonjs/utils/request/fetch.d.ts +76 -0
  1678. package/dist/commonjs/utils/request/fetch.js +188 -0
  1679. package/dist/commonjs/utils/request/index.d.ts +19 -0
  1680. package/dist/commonjs/utils/request/index.js +24 -0
  1681. package/dist/commonjs/utils/request/xhr.d.ts +95 -0
  1682. package/dist/commonjs/utils/request/xhr.js +156 -0
  1683. package/dist/commonjs/utils/resolve_url.d.ts +35 -0
  1684. package/dist/commonjs/utils/resolve_url.js +121 -0
  1685. package/dist/commonjs/utils/retry_promise_with_backoff.d.ts +46 -0
  1686. package/dist/commonjs/utils/retry_promise_with_backoff.js +122 -0
  1687. package/dist/commonjs/utils/sleep.d.ts +10 -0
  1688. package/dist/commonjs/utils/sleep.js +17 -0
  1689. package/dist/commonjs/utils/slice_uint8array.d.ts +27 -0
  1690. package/dist/commonjs/utils/slice_uint8array.js +44 -0
  1691. package/dist/commonjs/utils/sorted_list.d.ts +127 -0
  1692. package/dist/commonjs/utils/sorted_list.js +185 -0
  1693. package/dist/commonjs/utils/starts_with.d.ts +26 -0
  1694. package/dist/commonjs/utils/starts_with.js +39 -0
  1695. package/dist/commonjs/utils/string_parsing.d.ts +88 -0
  1696. package/dist/commonjs/utils/string_parsing.js +385 -0
  1697. package/dist/commonjs/utils/task_canceller.d.ts +263 -0
  1698. package/dist/commonjs/utils/task_canceller.js +344 -0
  1699. package/dist/commonjs/utils/warn_once.d.ts +23 -0
  1700. package/dist/commonjs/utils/warn_once.js +34 -0
  1701. package/dist/commonjs/utils/weak_map_memory.d.ts +70 -0
  1702. package/dist/commonjs/utils/weak_map_memory.js +88 -0
  1703. package/dist/commonjs/utils/wrapInPromise.d.ts +7 -0
  1704. package/dist/commonjs/utils/wrapInPromise.js +25 -0
  1705. package/dist/es2017/compat/add_class_name.d.ts +22 -0
  1706. package/dist/es2017/compat/add_class_name.js +39 -0
  1707. package/dist/es2017/compat/add_text_track.d.ts +31 -0
  1708. package/dist/es2017/compat/add_text_track.js +47 -0
  1709. package/dist/es2017/compat/browser_compatibility_types.d.ts +164 -0
  1710. package/dist/es2017/compat/browser_compatibility_types.js +33 -0
  1711. package/dist/es2017/compat/browser_detection.d.ts +42 -0
  1712. package/dist/es2017/compat/browser_detection.js +104 -0
  1713. package/dist/es2017/compat/browser_version.d.ts +24 -0
  1714. package/dist/es2017/compat/browser_version.js +41 -0
  1715. package/dist/es2017/compat/can_patch_isobmff.d.ts +25 -0
  1716. package/dist/es2017/compat/can_patch_isobmff.js +28 -0
  1717. package/dist/es2017/compat/can_rely_on_video_visibility_and_size.d.ts +37 -0
  1718. package/dist/es2017/compat/can_rely_on_video_visibility_and_size.js +49 -0
  1719. package/dist/es2017/compat/can_reuse_media_keys.d.ts +13 -0
  1720. package/dist/es2017/compat/can_reuse_media_keys.js +16 -0
  1721. package/dist/es2017/compat/change_source_buffer_type.d.ts +48 -0
  1722. package/dist/es2017/compat/change_source_buffer_type.js +37 -0
  1723. package/dist/es2017/compat/clear_element_src.d.ts +20 -0
  1724. package/dist/es2017/compat/clear_element_src.js +53 -0
  1725. package/dist/es2017/compat/eme/close_session.d.ts +30 -0
  1726. package/dist/es2017/compat/eme/close_session.js +98 -0
  1727. package/dist/es2017/compat/eme/constants.d.ts +16 -0
  1728. package/dist/es2017/compat/eme/constants.js +19 -0
  1729. package/dist/es2017/compat/eme/custom_key_system_access.d.ts +54 -0
  1730. package/dist/es2017/compat/eme/custom_key_system_access.js +40 -0
  1731. package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts +31 -0
  1732. package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.js +142 -0
  1733. package/dist/es2017/compat/eme/custom_media_keys/index.d.ts +7 -0
  1734. package/dist/es2017/compat/eme/custom_media_keys/index.js +6 -0
  1735. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +27 -0
  1736. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.js +61 -0
  1737. package/dist/es2017/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts +43 -0
  1738. package/dist/es2017/compat/eme/custom_media_keys/ms_media_keys_constructor.js +28 -0
  1739. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +41 -0
  1740. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.js +169 -0
  1741. package/dist/es2017/compat/eme/custom_media_keys/types.d.ts +43 -0
  1742. package/dist/es2017/compat/eme/custom_media_keys/types.js +16 -0
  1743. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts +37 -0
  1744. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.js +231 -0
  1745. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts +22 -0
  1746. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +30 -0
  1747. package/dist/es2017/compat/eme/eme-api-implementation.d.ts +78 -0
  1748. package/dist/es2017/compat/eme/eme-api-implementation.js +196 -0
  1749. package/dist/es2017/compat/eme/generate_key_request.d.ts +54 -0
  1750. package/dist/es2017/compat/eme/generate_key_request.js +147 -0
  1751. package/dist/es2017/compat/eme/get_init_data.d.ts +57 -0
  1752. package/dist/es2017/compat/eme/get_init_data.js +112 -0
  1753. package/dist/es2017/compat/eme/get_uuid_kid_from_keystatus_kid.d.ts +23 -0
  1754. package/dist/es2017/compat/eme/get_uuid_kid_from_keystatus_kid.js +31 -0
  1755. package/dist/es2017/compat/eme/get_webkit_fairplay_initdata.d.ts +25 -0
  1756. package/dist/es2017/compat/eme/get_webkit_fairplay_initdata.js +57 -0
  1757. package/dist/es2017/compat/eme/index.d.ts +24 -0
  1758. package/dist/es2017/compat/eme/index.js +22 -0
  1759. package/dist/es2017/compat/eme/load_session.d.ts +30 -0
  1760. package/dist/es2017/compat/eme/load_session.js +53 -0
  1761. package/dist/es2017/compat/enable_audio_track.d.ts +11 -0
  1762. package/dist/es2017/compat/enable_audio_track.js +26 -0
  1763. package/dist/es2017/compat/event_listeners.d.ts +173 -0
  1764. package/dist/es2017/compat/event_listeners.js +428 -0
  1765. package/dist/es2017/compat/get_start_date.d.ts +30 -0
  1766. package/dist/es2017/compat/get_start_date.js +44 -0
  1767. package/dist/es2017/compat/global_scope.d.ts +9 -0
  1768. package/dist/es2017/compat/global_scope.js +13 -0
  1769. package/dist/es2017/compat/has_issues_with_high_media_source_duration.d.ts +21 -0
  1770. package/dist/es2017/compat/has_issues_with_high_media_source_duration.js +26 -0
  1771. package/dist/es2017/compat/index.d.ts +37 -0
  1772. package/dist/es2017/compat/index.js +43 -0
  1773. package/dist/es2017/compat/is_codec_supported.d.ts +25 -0
  1774. package/dist/es2017/compat/is_codec_supported.js +36 -0
  1775. package/dist/es2017/compat/is_debug_mode_enabled.d.ts +7 -0
  1776. package/dist/es2017/compat/is_debug_mode_enabled.js +9 -0
  1777. package/dist/es2017/compat/is_node.d.ts +18 -0
  1778. package/dist/es2017/compat/is_node.js +19 -0
  1779. package/dist/es2017/compat/is_seeking_approximate.d.ts +28 -0
  1780. package/dist/es2017/compat/is_seeking_approximate.js +29 -0
  1781. package/dist/es2017/compat/is_vtt_cue.d.ts +22 -0
  1782. package/dist/es2017/compat/is_vtt_cue.js +26 -0
  1783. package/dist/es2017/compat/is_worker.d.ts +5 -0
  1784. package/dist/es2017/compat/is_worker.js +5 -0
  1785. package/dist/es2017/compat/make_vtt_cue.d.ts +26 -0
  1786. package/dist/es2017/compat/make_vtt_cue.js +44 -0
  1787. package/dist/es2017/compat/on_height_width_change.d.ts +33 -0
  1788. package/dist/es2017/compat/on_height_width_change.js +72 -0
  1789. package/dist/es2017/compat/patch_webkit_source_buffer.d.ts +16 -0
  1790. package/dist/es2017/compat/patch_webkit_source_buffer.js +74 -0
  1791. package/dist/es2017/compat/remove_cue.d.ts +21 -0
  1792. package/dist/es2017/compat/remove_cue.js +63 -0
  1793. package/dist/es2017/compat/should_favour_custom_safari_EME.d.ts +23 -0
  1794. package/dist/es2017/compat/should_favour_custom_safari_EME.js +27 -0
  1795. package/dist/es2017/compat/should_reload_media_source_on_decipherability_update.d.ts +26 -0
  1796. package/dist/es2017/compat/should_reload_media_source_on_decipherability_update.js +29 -0
  1797. package/dist/es2017/compat/should_renew_media_key_system_access.d.ts +21 -0
  1798. package/dist/es2017/compat/should_renew_media_key_system_access.js +24 -0
  1799. package/dist/es2017/compat/should_unset_media_keys.d.ts +22 -0
  1800. package/dist/es2017/compat/should_unset_media_keys.js +25 -0
  1801. package/dist/es2017/compat/should_validate_metadata.d.ts +22 -0
  1802. package/{scripts/build/constants.d.ts → dist/es2017/compat/should_validate_metadata.js} +9 -15
  1803. package/dist/es2017/compat/should_wait_for_data_before_loaded.d.ts +24 -0
  1804. package/dist/es2017/compat/should_wait_for_data_before_loaded.js +30 -0
  1805. package/dist/es2017/compat/should_wait_for_have_enough_data.d.ts +13 -0
  1806. package/dist/es2017/compat/should_wait_for_have_enough_data.js +16 -0
  1807. package/dist/es2017/config.d.ts +179 -0
  1808. package/dist/es2017/config.js +31 -0
  1809. package/dist/es2017/core/adaptive/adaptive_representation_selector.d.ts +306 -0
  1810. package/dist/es2017/core/adaptive/adaptive_representation_selector.js +386 -0
  1811. package/dist/es2017/core/adaptive/buffer_based_chooser.d.ts +89 -0
  1812. package/dist/es2017/core/adaptive/buffer_based_chooser.js +191 -0
  1813. package/dist/es2017/core/adaptive/guess_based_chooser.d.ts +95 -0
  1814. package/dist/es2017/core/adaptive/guess_based_chooser.js +233 -0
  1815. package/dist/es2017/core/adaptive/index.d.ts +18 -0
  1816. package/dist/es2017/core/adaptive/index.js +17 -0
  1817. package/dist/es2017/core/adaptive/network_analyzer.d.ts +73 -0
  1818. package/dist/es2017/core/adaptive/network_analyzer.js +333 -0
  1819. package/dist/es2017/core/adaptive/utils/bandwidth_estimator.d.ts +47 -0
  1820. package/dist/es2017/core/adaptive/utils/bandwidth_estimator.js +68 -0
  1821. package/dist/es2017/core/adaptive/utils/ewma.d.ts +39 -0
  1822. package/dist/es2017/core/adaptive/utils/ewma.js +50 -0
  1823. package/dist/es2017/core/adaptive/utils/filter_by_bitrate.d.ts +25 -0
  1824. package/dist/es2017/core/adaptive/utils/filter_by_bitrate.js +37 -0
  1825. package/dist/es2017/core/adaptive/utils/filter_by_resolution.d.ts +31 -0
  1826. package/dist/{_esm5.processed → es2017}/core/adaptive/utils/filter_by_resolution.js +4 -9
  1827. package/dist/es2017/core/adaptive/utils/get_buffer_levels.d.ts +24 -0
  1828. package/dist/es2017/core/adaptive/utils/get_buffer_levels.js +47 -0
  1829. package/dist/es2017/core/adaptive/utils/last_estimate_storage.d.ts +61 -0
  1830. package/dist/es2017/core/adaptive/utils/last_estimate_storage.js +35 -0
  1831. package/dist/es2017/core/adaptive/utils/pending_requests_store.d.ts +110 -0
  1832. package/dist/es2017/core/adaptive/utils/pending_requests_store.js +76 -0
  1833. package/dist/es2017/core/adaptive/utils/representation_score_calculator.d.ts +104 -0
  1834. package/dist/es2017/core/adaptive/utils/representation_score_calculator.js +113 -0
  1835. package/dist/es2017/core/adaptive/utils/select_optimal_representation.d.ts +27 -0
  1836. package/dist/es2017/core/adaptive/utils/select_optimal_representation.js +36 -0
  1837. package/dist/es2017/core/api/debug/buffer_graph.d.ts +28 -0
  1838. package/dist/es2017/core/api/debug/buffer_graph.js +173 -0
  1839. package/dist/es2017/core/api/debug/buffer_size_graph.d.ts +10 -0
  1840. package/dist/es2017/core/api/debug/buffer_size_graph.js +103 -0
  1841. package/dist/es2017/core/api/debug/constants.d.ts +2 -0
  1842. package/dist/es2017/core/api/debug/constants.js +2 -0
  1843. package/dist/es2017/core/api/debug/index.d.ts +2 -0
  1844. package/dist/es2017/core/api/debug/index.js +2 -0
  1845. package/dist/es2017/core/api/debug/modules/general_info.d.ts +3 -0
  1846. package/dist/es2017/core/api/debug/modules/general_info.js +169 -0
  1847. package/dist/es2017/core/api/debug/modules/segment_buffer_content.d.ts +4 -0
  1848. package/dist/es2017/core/api/debug/modules/segment_buffer_content.js +121 -0
  1849. package/dist/es2017/core/api/debug/modules/segment_buffer_size.d.ts +3 -0
  1850. package/dist/es2017/core/api/debug/modules/segment_buffer_size.js +35 -0
  1851. package/dist/es2017/core/api/debug/render.d.ts +3 -0
  1852. package/dist/es2017/core/api/debug/render.js +32 -0
  1853. package/dist/es2017/core/api/debug/utils.d.ts +39 -0
  1854. package/dist/es2017/core/api/debug/utils.js +54 -0
  1855. package/dist/es2017/core/api/index.d.ts +20 -0
  1856. package/dist/es2017/core/api/index.js +19 -0
  1857. package/dist/es2017/core/api/option_utils.d.ts +121 -0
  1858. package/dist/es2017/core/api/option_utils.js +305 -0
  1859. package/dist/es2017/core/api/playback_observer.d.ts +370 -0
  1860. package/dist/es2017/core/api/playback_observer.js +591 -0
  1861. package/dist/es2017/core/api/public_api.d.ts +719 -0
  1862. package/dist/es2017/core/api/public_api.js +2111 -0
  1863. package/dist/es2017/core/api/track_management/index.d.ts +18 -0
  1864. package/dist/es2017/core/api/track_management/index.js +18 -0
  1865. package/dist/es2017/core/api/track_management/media_element_tracks_store.d.ts +197 -0
  1866. package/dist/{_esm5.processed → es2017}/core/api/track_management/media_element_tracks_store.js +11 -14
  1867. package/dist/es2017/core/api/track_management/track_dispatcher.d.ts +96 -0
  1868. package/dist/{_esm5.processed → es2017}/core/api/track_management/track_dispatcher.js +8 -11
  1869. package/dist/es2017/core/api/track_management/tracks_store.d.ts +429 -0
  1870. package/dist/{_esm5.processed → es2017}/core/api/track_management/tracks_store.js +50 -53
  1871. package/dist/es2017/core/api/utils.d.ts +66 -0
  1872. package/dist/es2017/core/api/utils.js +167 -0
  1873. package/dist/es2017/core/decrypt/__tests__/__global__/utils.d.ts +178 -0
  1874. package/dist/es2017/core/decrypt/__tests__/__global__/utils.js +363 -0
  1875. package/dist/es2017/core/decrypt/attach_media_keys.d.ts +52 -0
  1876. package/dist/es2017/core/decrypt/attach_media_keys.js +71 -0
  1877. package/dist/es2017/core/decrypt/clear_on_stop.d.ts +22 -0
  1878. package/dist/es2017/core/decrypt/clear_on_stop.js +40 -0
  1879. package/dist/es2017/core/decrypt/content_decryptor.d.ts +184 -0
  1880. package/dist/es2017/core/decrypt/content_decryptor.js +846 -0
  1881. package/dist/es2017/core/decrypt/create_or_load_session.d.ts +63 -0
  1882. package/dist/es2017/core/decrypt/create_or_load_session.js +75 -0
  1883. package/dist/es2017/core/decrypt/create_session.d.ts +53 -0
  1884. package/dist/es2017/core/decrypt/create_session.js +150 -0
  1885. package/dist/es2017/core/decrypt/dispose_decryption_resources.d.ts +21 -0
  1886. package/dist/es2017/core/decrypt/dispose_decryption_resources.js +42 -0
  1887. package/dist/es2017/core/decrypt/find_key_system.d.ts +48 -0
  1888. package/dist/es2017/core/decrypt/find_key_system.js +281 -0
  1889. package/dist/es2017/core/decrypt/get_key_system_configuration.d.ts +22 -0
  1890. package/dist/es2017/core/decrypt/get_key_system_configuration.js +32 -0
  1891. package/dist/es2017/core/decrypt/get_media_keys.d.ts +44 -0
  1892. package/dist/es2017/core/decrypt/get_media_keys.js +104 -0
  1893. package/dist/es2017/core/decrypt/index.d.ts +26 -0
  1894. package/dist/es2017/core/decrypt/index.js +26 -0
  1895. package/dist/es2017/core/decrypt/init_media_keys.d.ts +26 -0
  1896. package/dist/es2017/core/decrypt/init_media_keys.js +37 -0
  1897. package/dist/es2017/core/decrypt/session_events_listener.d.ts +75 -0
  1898. package/dist/es2017/core/decrypt/session_events_listener.js +249 -0
  1899. package/dist/es2017/core/decrypt/set_server_certificate.d.ts +51 -0
  1900. package/dist/es2017/core/decrypt/set_server_certificate.js +83 -0
  1901. package/dist/es2017/core/decrypt/types.d.ts +368 -0
  1902. package/dist/es2017/core/decrypt/types.js +55 -0
  1903. package/dist/es2017/core/decrypt/utils/are_init_values_compatible.d.ts +34 -0
  1904. package/dist/es2017/core/decrypt/utils/are_init_values_compatible.js +113 -0
  1905. package/dist/es2017/core/decrypt/utils/check_key_statuses.d.ts +52 -0
  1906. package/dist/es2017/core/decrypt/utils/check_key_statuses.js +165 -0
  1907. package/dist/es2017/core/decrypt/utils/clean_old_loaded_sessions.d.ts +26 -0
  1908. package/dist/es2017/core/decrypt/utils/clean_old_loaded_sessions.js +39 -0
  1909. package/dist/es2017/core/decrypt/utils/clean_old_stored_persistent_info.d.ts +32 -0
  1910. package/dist/es2017/core/decrypt/utils/clean_old_stored_persistent_info.js +40 -0
  1911. package/dist/es2017/core/decrypt/utils/get_drm_system_id.d.ts +20 -0
  1912. package/dist/es2017/core/decrypt/utils/get_drm_system_id.js +37 -0
  1913. package/dist/es2017/core/decrypt/utils/init_data_values_container.d.ts +69 -0
  1914. package/dist/es2017/core/decrypt/utils/init_data_values_container.js +96 -0
  1915. package/dist/es2017/core/decrypt/utils/is_session_usable.d.ts +24 -0
  1916. package/dist/es2017/core/decrypt/utils/is_session_usable.js +49 -0
  1917. package/dist/es2017/core/decrypt/utils/key_id_comparison.d.ts +31 -0
  1918. package/dist/es2017/core/decrypt/utils/key_id_comparison.js +48 -0
  1919. package/dist/es2017/core/decrypt/utils/key_session_record.d.ts +104 -0
  1920. package/dist/es2017/core/decrypt/utils/key_session_record.js +153 -0
  1921. package/dist/es2017/core/decrypt/utils/loaded_sessions_store.d.ts +215 -0
  1922. package/dist/es2017/core/decrypt/utils/loaded_sessions_store.js +365 -0
  1923. package/dist/es2017/core/decrypt/utils/media_keys_infos_store.d.ts +56 -0
  1924. package/dist/es2017/core/decrypt/utils/media_keys_infos_store.js +44 -0
  1925. package/dist/es2017/core/decrypt/utils/persistent_sessions_store.d.ts +94 -0
  1926. package/dist/es2017/core/decrypt/utils/persistent_sessions_store.js +321 -0
  1927. package/dist/es2017/core/decrypt/utils/serializable_bytes.d.ts +44 -0
  1928. package/dist/es2017/core/decrypt/utils/serializable_bytes.js +46 -0
  1929. package/dist/es2017/core/decrypt/utils/server_certificate_store.d.ts +64 -0
  1930. package/dist/es2017/core/decrypt/utils/server_certificate_store.js +112 -0
  1931. package/dist/es2017/core/fetchers/cdn_prioritizer.d.ts +107 -0
  1932. package/dist/es2017/core/fetchers/cdn_prioritizer.js +155 -0
  1933. package/dist/es2017/core/fetchers/index.d.ts +18 -0
  1934. package/dist/es2017/core/fetchers/index.js +18 -0
  1935. package/dist/es2017/core/fetchers/manifest/index.d.ts +18 -0
  1936. package/dist/es2017/core/fetchers/manifest/index.js +17 -0
  1937. package/dist/es2017/core/fetchers/manifest/manifest_fetcher.d.ts +221 -0
  1938. package/dist/es2017/core/fetchers/manifest/manifest_fetcher.js +523 -0
  1939. package/dist/es2017/core/fetchers/segment/index.d.ts +19 -0
  1940. package/dist/es2017/core/fetchers/segment/index.js +17 -0
  1941. package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.d.ts +38 -0
  1942. package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.js +67 -0
  1943. package/dist/es2017/core/fetchers/segment/segment_fetcher.d.ts +148 -0
  1944. package/dist/es2017/core/fetchers/segment/segment_fetcher.js +295 -0
  1945. package/dist/es2017/core/fetchers/segment/segment_fetcher_creator.d.ts +77 -0
  1946. package/dist/es2017/core/fetchers/segment/segment_fetcher_creator.js +56 -0
  1947. package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts +145 -0
  1948. package/dist/es2017/core/fetchers/segment/task_prioritizer.js +319 -0
  1949. package/dist/es2017/core/fetchers/utils/error_selector.d.ts +23 -0
  1950. package/dist/es2017/core/fetchers/utils/error_selector.js +31 -0
  1951. package/dist/es2017/core/fetchers/utils/schedule_request.d.ts +98 -0
  1952. package/dist/es2017/core/fetchers/utils/schedule_request.js +332 -0
  1953. package/dist/es2017/core/init/directfile_content_initializer.d.ts +97 -0
  1954. package/dist/es2017/core/init/directfile_content_initializer.js +210 -0
  1955. package/dist/es2017/core/init/index.d.ts +16 -0
  1956. package/dist/es2017/core/init/index.js +16 -0
  1957. package/dist/es2017/core/init/media_source_content_initializer.d.ts +174 -0
  1958. package/dist/es2017/core/init/media_source_content_initializer.js +565 -0
  1959. package/dist/es2017/core/init/types.d.ts +217 -0
  1960. package/dist/es2017/core/init/types.js +30 -0
  1961. package/dist/es2017/core/init/utils/content_time_boundaries_observer.d.ts +191 -0
  1962. package/dist/es2017/core/init/utils/content_time_boundaries_observer.js +468 -0
  1963. package/dist/es2017/core/init/utils/create_media_source.d.ts +37 -0
  1964. package/dist/es2017/core/init/utils/create_media_source.js +112 -0
  1965. package/dist/es2017/core/init/utils/create_stream_playback_observer.d.ts +45 -0
  1966. package/dist/es2017/core/init/utils/create_stream_playback_observer.js +85 -0
  1967. package/dist/es2017/core/init/utils/end_of_stream.d.ts +33 -0
  1968. package/dist/es2017/core/init/utils/end_of_stream.js +88 -0
  1969. package/dist/es2017/core/init/utils/get_initial_time.d.ts +62 -0
  1970. package/dist/es2017/core/init/utils/get_initial_time.js +110 -0
  1971. package/dist/es2017/core/init/utils/get_loaded_reference.d.ts +28 -0
  1972. package/dist/es2017/core/init/utils/get_loaded_reference.js +56 -0
  1973. package/dist/es2017/core/init/utils/initial_seek_and_play.d.ts +63 -0
  1974. package/dist/es2017/core/init/utils/initial_seek_and_play.js +128 -0
  1975. package/dist/es2017/core/init/utils/initialize_content_decryption.d.ts +80 -0
  1976. package/dist/es2017/core/init/utils/initialize_content_decryption.js +104 -0
  1977. package/dist/es2017/core/init/utils/media_source_duration_updater.d.ts +58 -0
  1978. package/dist/es2017/core/init/utils/media_source_duration_updater.js +263 -0
  1979. package/dist/es2017/core/init/utils/rebuffering_controller.d.ts +147 -0
  1980. package/dist/es2017/core/init/utils/rebuffering_controller.js +541 -0
  1981. package/dist/es2017/core/init/utils/stream_events_emitter/are_same_stream_events.d.ts +39 -0
  1982. package/dist/es2017/core/init/utils/stream_events_emitter/are_same_stream_events.js +35 -0
  1983. package/dist/es2017/core/init/utils/stream_events_emitter/index.d.ts +18 -0
  1984. package/dist/es2017/core/init/utils/stream_events_emitter/index.js +17 -0
  1985. package/dist/es2017/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +25 -0
  1986. package/dist/es2017/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +62 -0
  1987. package/dist/es2017/core/init/utils/stream_events_emitter/stream_events_emitter.d.ts +52 -0
  1988. package/dist/es2017/core/init/utils/stream_events_emitter/stream_events_emitter.js +178 -0
  1989. package/dist/es2017/core/init/utils/stream_events_emitter/types.d.ts +41 -0
  1990. package/dist/es2017/core/init/utils/stream_events_emitter/types.js +16 -0
  1991. package/dist/es2017/core/init/utils/throw_on_media_error.d.ts +23 -0
  1992. package/dist/es2017/core/init/utils/throw_on_media_error.js +58 -0
  1993. package/dist/es2017/core/segment_buffers/garbage_collector.d.ts +41 -0
  1994. package/dist/es2017/core/segment_buffers/garbage_collector.js +129 -0
  1995. package/dist/es2017/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.d.ts +182 -0
  1996. package/dist/es2017/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.js +435 -0
  1997. package/dist/es2017/core/segment_buffers/implementations/audio_video/index.d.ts +17 -0
  1998. package/dist/es2017/core/segment_buffers/implementations/audio_video/index.js +17 -0
  1999. package/dist/es2017/core/segment_buffers/implementations/index.d.ts +18 -0
  2000. package/dist/es2017/core/segment_buffers/implementations/index.js +18 -0
  2001. package/dist/es2017/core/segment_buffers/implementations/text/html/html_text_segment_buffer.d.ts +141 -0
  2002. package/dist/es2017/core/segment_buffers/implementations/text/html/html_text_segment_buffer.js +383 -0
  2003. package/dist/es2017/core/segment_buffers/implementations/text/html/index.d.ts +21 -0
  2004. package/dist/es2017/core/segment_buffers/implementations/text/html/index.js +21 -0
  2005. package/dist/es2017/core/segment_buffers/implementations/text/html/parsers.d.ts +30 -0
  2006. package/dist/es2017/core/segment_buffers/implementations/text/html/parsers.js +37 -0
  2007. package/dist/es2017/core/segment_buffers/implementations/text/html/text_track_cues_store.d.ts +79 -0
  2008. package/dist/es2017/core/segment_buffers/implementations/text/html/text_track_cues_store.js +370 -0
  2009. package/dist/es2017/core/segment_buffers/implementations/text/html/types.d.ts +25 -0
  2010. package/dist/es2017/core/segment_buffers/implementations/text/html/types.js +16 -0
  2011. package/dist/es2017/core/segment_buffers/implementations/text/html/update_proportional_elements.d.ts +30 -0
  2012. package/dist/es2017/core/segment_buffers/implementations/text/html/update_proportional_elements.js +77 -0
  2013. package/dist/es2017/core/segment_buffers/implementations/text/html/utils.d.ts +45 -0
  2014. package/dist/es2017/core/segment_buffers/implementations/text/html/utils.js +123 -0
  2015. package/dist/es2017/core/segment_buffers/implementations/text/native/index.d.ts +17 -0
  2016. package/dist/es2017/core/segment_buffers/implementations/text/native/index.js +17 -0
  2017. package/dist/es2017/core/segment_buffers/implementations/text/native/native_text_segment_buffer.d.ts +83 -0
  2018. package/dist/es2017/core/segment_buffers/implementations/text/native/native_text_segment_buffer.js +251 -0
  2019. package/dist/es2017/core/segment_buffers/implementations/text/native/parsers.d.ts +26 -0
  2020. package/dist/es2017/core/segment_buffers/implementations/text/native/parsers.js +37 -0
  2021. package/dist/es2017/core/segment_buffers/implementations/types.d.ts +320 -0
  2022. package/dist/es2017/core/segment_buffers/implementations/types.js +119 -0
  2023. package/dist/es2017/core/segment_buffers/implementations/utils/manual_time_ranges.d.ts +29 -0
  2024. package/dist/es2017/core/segment_buffers/implementations/utils/manual_time_ranges.js +63 -0
  2025. package/dist/es2017/core/segment_buffers/index.d.ts +21 -0
  2026. package/dist/es2017/core/segment_buffers/index.js +21 -0
  2027. package/dist/es2017/core/segment_buffers/inventory/buffered_history.d.ts +89 -0
  2028. package/dist/es2017/core/segment_buffers/inventory/buffered_history.js +90 -0
  2029. package/dist/es2017/core/segment_buffers/inventory/index.d.ts +21 -0
  2030. package/dist/es2017/core/segment_buffers/inventory/index.js +18 -0
  2031. package/dist/es2017/core/segment_buffers/inventory/segment_inventory.d.ts +207 -0
  2032. package/dist/es2017/core/segment_buffers/inventory/segment_inventory.js +822 -0
  2033. package/dist/es2017/core/segment_buffers/inventory/types.d.ts +27 -0
  2034. package/dist/es2017/core/segment_buffers/inventory/types.js +16 -0
  2035. package/dist/es2017/core/segment_buffers/inventory/utils.d.ts +33 -0
  2036. package/dist/es2017/core/segment_buffers/inventory/utils.js +49 -0
  2037. package/dist/es2017/core/segment_buffers/segment_buffers_store.d.ts +180 -0
  2038. package/dist/es2017/core/segment_buffers/segment_buffers_store.js +290 -0
  2039. package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts +33 -0
  2040. package/dist/es2017/core/stream/adaptation/adaptation_stream.js +349 -0
  2041. package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.d.ts +39 -0
  2042. package/dist/{_esm5.processed → es2017}/core/stream/adaptation/get_representations_switch_strategy.js +13 -16
  2043. package/dist/es2017/core/stream/adaptation/index.d.ts +18 -0
  2044. package/dist/es2017/core/stream/adaptation/index.js +18 -0
  2045. package/dist/es2017/core/stream/adaptation/types.d.ts +200 -0
  2046. package/dist/es2017/core/stream/adaptation/types.js +1 -0
  2047. package/dist/es2017/core/stream/index.d.ts +20 -0
  2048. package/dist/es2017/core/stream/index.js +17 -0
  2049. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.d.ts +30 -0
  2050. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.js +55 -0
  2051. package/dist/es2017/core/stream/orchestrator/index.d.ts +18 -0
  2052. package/dist/es2017/core/stream/orchestrator/index.js +17 -0
  2053. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts +174 -0
  2054. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.js +487 -0
  2055. package/dist/es2017/core/stream/period/index.d.ts +18 -0
  2056. package/dist/es2017/core/stream/period/index.js +18 -0
  2057. package/dist/es2017/core/stream/period/period_stream.d.ts +49 -0
  2058. package/dist/es2017/core/stream/period/period_stream.js +359 -0
  2059. package/dist/es2017/core/stream/period/types.d.ts +101 -0
  2060. package/dist/es2017/core/stream/period/types.js +1 -0
  2061. package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +68 -0
  2062. package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.js +160 -0
  2063. package/dist/es2017/core/stream/representation/index.d.ts +18 -0
  2064. package/dist/es2017/core/stream/representation/index.js +18 -0
  2065. package/dist/es2017/core/stream/representation/representation_stream.d.ts +53 -0
  2066. package/dist/es2017/core/stream/representation/representation_stream.js +384 -0
  2067. package/dist/es2017/core/stream/representation/types.d.ts +276 -0
  2068. package/dist/es2017/core/stream/representation/types.js +1 -0
  2069. package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.d.ts +32 -0
  2070. package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.js +60 -0
  2071. package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.d.ts +53 -0
  2072. package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.js +235 -0
  2073. package/dist/es2017/core/stream/representation/utils/downloading_queue.d.ts +231 -0
  2074. package/dist/es2017/core/stream/representation/utils/downloading_queue.js +366 -0
  2075. package/dist/es2017/core/stream/representation/utils/force_garbage_collection.d.ts +29 -0
  2076. package/dist/es2017/core/stream/representation/utils/force_garbage_collection.js +91 -0
  2077. package/dist/es2017/core/stream/representation/utils/get_buffer_status.d.ts +72 -0
  2078. package/dist/es2017/core/stream/representation/utils/get_buffer_status.js +213 -0
  2079. package/dist/es2017/core/stream/representation/utils/get_needed_segments.d.ts +92 -0
  2080. package/dist/es2017/core/stream/representation/utils/get_needed_segments.js +425 -0
  2081. package/dist/es2017/core/stream/representation/utils/get_segment_priority.d.ts +28 -0
  2082. package/dist/es2017/core/stream/representation/utils/get_segment_priority.js +38 -0
  2083. package/dist/es2017/core/stream/representation/utils/push_init_segment.d.ts +39 -0
  2084. package/dist/es2017/core/stream/representation/utils/push_init_segment.js +41 -0
  2085. package/dist/es2017/core/stream/representation/utils/push_media_segment.d.ts +40 -0
  2086. package/dist/es2017/core/stream/representation/utils/push_media_segment.js +68 -0
  2087. package/dist/es2017/default_config.d.ts +1081 -0
  2088. package/dist/es2017/default_config.js +1102 -0
  2089. package/dist/es2017/errors/assertion_error.d.ts +31 -0
  2090. package/dist/es2017/errors/assertion_error.js +35 -0
  2091. package/dist/es2017/errors/custom_loader_error.d.ts +36 -0
  2092. package/dist/es2017/errors/custom_loader_error.js +40 -0
  2093. package/dist/es2017/errors/encrypted_media_error.d.ts +39 -0
  2094. package/dist/es2017/errors/encrypted_media_error.js +38 -0
  2095. package/dist/es2017/errors/error_codes.d.ts +31 -0
  2096. package/dist/es2017/errors/error_codes.js +70 -0
  2097. package/dist/es2017/errors/error_message.d.ts +22 -0
  2098. package/dist/es2017/errors/error_message.js +24 -0
  2099. package/dist/es2017/errors/format_error.d.ts +20 -0
  2100. package/dist/es2017/errors/format_error.js +30 -0
  2101. package/dist/es2017/errors/index.d.ts +26 -0
  2102. package/dist/es2017/errors/index.js +26 -0
  2103. package/dist/es2017/errors/is_known_error.d.ts +22 -0
  2104. package/dist/es2017/errors/is_known_error.js +32 -0
  2105. package/dist/es2017/errors/media_error.d.ts +56 -0
  2106. package/dist/es2017/errors/media_error.js +55 -0
  2107. package/dist/es2017/errors/network_error.d.ts +44 -0
  2108. package/dist/es2017/errors/network_error.js +51 -0
  2109. package/dist/es2017/errors/other_error.d.ts +32 -0
  2110. package/dist/es2017/errors/other_error.js +37 -0
  2111. package/dist/es2017/errors/request_error.d.ts +38 -0
  2112. package/dist/es2017/errors/request_error.js +55 -0
  2113. package/dist/es2017/experimental/features/dash_wasm.d.ts +23 -0
  2114. package/dist/es2017/experimental/features/dash_wasm.js +34 -0
  2115. package/dist/es2017/experimental/features/debug_element.d.ts +8 -0
  2116. package/dist/es2017/experimental/features/debug_element.js +10 -0
  2117. package/dist/es2017/experimental/features/index.d.ts +19 -0
  2118. package/dist/es2017/experimental/features/index.js +19 -0
  2119. package/dist/es2017/experimental/features/local.d.ts +19 -0
  2120. package/dist/es2017/experimental/features/local.js +24 -0
  2121. package/dist/es2017/experimental/features/metaplaylist.d.ts +19 -0
  2122. package/dist/es2017/experimental/features/metaplaylist.js +24 -0
  2123. package/dist/es2017/experimental/index.d.ts +2 -0
  2124. package/dist/es2017/experimental/index.js +2 -0
  2125. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +17 -0
  2126. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.js +20 -0
  2127. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +17 -0
  2128. package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.js +20 -0
  2129. package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.d.ts +18 -0
  2130. package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.js +18 -0
  2131. package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +26 -0
  2132. package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.js +64 -0
  2133. package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +25 -0
  2134. package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +63 -0
  2135. package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +30 -0
  2136. package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +41 -0
  2137. package/dist/es2017/experimental/tools/VideoThumbnailLoader/types.d.ts +25 -0
  2138. package/dist/es2017/experimental/tools/VideoThumbnailLoader/types.js +16 -0
  2139. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +54 -0
  2140. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +276 -0
  2141. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +25 -0
  2142. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +29 -0
  2143. package/dist/es2017/experimental/tools/createMetaplaylist/get_duration_from_manifest.d.ts +23 -0
  2144. package/dist/es2017/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +124 -0
  2145. package/dist/es2017/experimental/tools/createMetaplaylist/index.d.ts +30 -0
  2146. package/dist/es2017/experimental/tools/createMetaplaylist/index.js +57 -0
  2147. package/dist/es2017/experimental/tools/index.d.ts +20 -0
  2148. package/dist/es2017/experimental/tools/index.js +20 -0
  2149. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/index.d.ts +60 -0
  2150. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/index.js +151 -0
  2151. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts +45 -0
  2152. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.js +97 -0
  2153. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts +24 -0
  2154. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/capabilities.js +142 -0
  2155. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/index.d.ts +17 -0
  2156. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/index.js +17 -0
  2157. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/log.d.ts +18 -0
  2158. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/log.js +18 -0
  2159. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts +25 -0
  2160. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.js +50 -0
  2161. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts +22 -0
  2162. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +69 -0
  2163. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +26 -0
  2164. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +79 -0
  2165. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts +29 -0
  2166. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +63 -0
  2167. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts +21 -0
  2168. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/index.js +30 -0
  2169. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +21 -0
  2170. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +57 -0
  2171. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts +21 -0
  2172. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.js +89 -0
  2173. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts +26 -0
  2174. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +84 -0
  2175. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +21 -0
  2176. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +46 -0
  2177. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/types.d.ts +69 -0
  2178. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/types.js +21 -0
  2179. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.d.ts +31 -0
  2180. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.js +81 -0
  2181. package/dist/es2017/experimental/tools/parseBIFThumbnails/index.d.ts +29 -0
  2182. package/dist/es2017/experimental/tools/parseBIFThumbnails/index.js +29 -0
  2183. package/dist/es2017/features/add_features.d.ts +20 -0
  2184. package/dist/es2017/features/add_features.js +35 -0
  2185. package/dist/es2017/features/features_object.d.ts +22 -0
  2186. package/dist/es2017/features/features_object.js +31 -0
  2187. package/dist/es2017/features/index.d.ts +34 -0
  2188. package/dist/es2017/features/index.js +33 -0
  2189. package/dist/es2017/features/list/dash.d.ts +23 -0
  2190. package/dist/es2017/features/list/dash.js +32 -0
  2191. package/dist/es2017/features/list/directfile.d.ts +24 -0
  2192. package/dist/es2017/features/list/directfile.js +29 -0
  2193. package/dist/es2017/features/list/eme.d.ts +23 -0
  2194. package/dist/es2017/features/list/eme.js +25 -0
  2195. package/dist/es2017/features/list/html_sami_parser.d.ts +23 -0
  2196. package/dist/es2017/features/list/html_sami_parser.js +27 -0
  2197. package/dist/es2017/features/list/html_srt_parser.d.ts +23 -0
  2198. package/dist/es2017/features/list/html_srt_parser.js +27 -0
  2199. package/dist/es2017/features/list/html_text_buffer.d.ts +23 -0
  2200. package/dist/es2017/features/list/html_text_buffer.js +25 -0
  2201. package/dist/es2017/features/list/html_ttml_parser.d.ts +23 -0
  2202. package/dist/es2017/features/list/html_ttml_parser.js +27 -0
  2203. package/dist/es2017/features/list/html_vtt_parser.d.ts +23 -0
  2204. package/dist/es2017/features/list/html_vtt_parser.js +27 -0
  2205. package/dist/es2017/features/list/index.d.ts +29 -0
  2206. package/dist/es2017/features/list/index.js +29 -0
  2207. package/dist/es2017/features/list/native_sami_parser.d.ts +23 -0
  2208. package/dist/es2017/features/list/native_sami_parser.js +28 -0
  2209. package/dist/es2017/features/list/native_srt_parser.d.ts +23 -0
  2210. package/dist/es2017/features/list/native_srt_parser.js +28 -0
  2211. package/dist/es2017/features/list/native_text_buffer.d.ts +23 -0
  2212. package/dist/es2017/features/list/native_text_buffer.js +26 -0
  2213. package/dist/es2017/features/list/native_ttml_parser.d.ts +23 -0
  2214. package/dist/es2017/features/list/native_ttml_parser.js +28 -0
  2215. package/dist/es2017/features/list/native_vtt_parser.d.ts +23 -0
  2216. package/dist/es2017/features/list/native_vtt_parser.js +28 -0
  2217. package/dist/es2017/features/list/smooth.d.ts +23 -0
  2218. package/dist/es2017/features/list/smooth.js +28 -0
  2219. package/dist/es2017/features/types.d.ts +130 -0
  2220. package/dist/es2017/features/types.js +16 -0
  2221. package/dist/es2017/index.d.ts +17 -0
  2222. package/dist/es2017/index.js +44 -0
  2223. package/dist/es2017/log.d.ts +18 -0
  2224. package/dist/es2017/log.js +19 -0
  2225. package/dist/es2017/manifest/adaptation.d.ts +113 -0
  2226. package/dist/es2017/manifest/adaptation.js +212 -0
  2227. package/dist/es2017/manifest/index.d.ts +24 -0
  2228. package/dist/es2017/manifest/index.js +28 -0
  2229. package/dist/es2017/manifest/manifest.d.ts +265 -0
  2230. package/dist/es2017/manifest/manifest.js +362 -0
  2231. package/dist/es2017/manifest/period.d.ts +68 -0
  2232. package/dist/es2017/manifest/period.js +131 -0
  2233. package/dist/es2017/manifest/representation.d.ts +251 -0
  2234. package/dist/es2017/manifest/representation.js +288 -0
  2235. package/dist/es2017/manifest/representation_index/index.d.ts +18 -0
  2236. package/dist/es2017/manifest/representation_index/index.js +17 -0
  2237. package/dist/es2017/manifest/representation_index/static.d.ts +101 -0
  2238. package/dist/es2017/manifest/representation_index/static.js +139 -0
  2239. package/dist/es2017/manifest/representation_index/types.d.ts +420 -0
  2240. package/dist/es2017/manifest/representation_index/types.js +16 -0
  2241. package/dist/es2017/manifest/types.d.ts +29 -0
  2242. package/dist/es2017/manifest/types.js +30 -0
  2243. package/dist/es2017/manifest/update_period_in_place.d.ts +49 -0
  2244. package/dist/es2017/manifest/update_period_in_place.js +106 -0
  2245. package/dist/es2017/manifest/update_periods.d.ts +47 -0
  2246. package/dist/es2017/manifest/update_periods.js +153 -0
  2247. package/dist/es2017/manifest/utils.d.ts +39 -0
  2248. package/dist/es2017/manifest/utils.js +42 -0
  2249. package/dist/es2017/minimal.d.ts +17 -0
  2250. package/dist/es2017/minimal.js +31 -0
  2251. package/dist/es2017/parsers/containers/isobmff/constants.d.ts +23 -0
  2252. package/dist/es2017/parsers/containers/isobmff/constants.js +23 -0
  2253. package/dist/es2017/parsers/containers/isobmff/create_box.d.ts +30 -0
  2254. package/dist/es2017/parsers/containers/isobmff/create_box.js +64 -0
  2255. package/dist/es2017/parsers/containers/isobmff/drm/index.d.ts +16 -0
  2256. package/dist/es2017/parsers/containers/isobmff/drm/index.js +16 -0
  2257. package/dist/es2017/parsers/containers/isobmff/drm/playready.d.ts +21 -0
  2258. package/dist/es2017/parsers/containers/isobmff/drm/playready.js +36 -0
  2259. package/dist/es2017/parsers/containers/isobmff/get_box.d.ts +107 -0
  2260. package/dist/es2017/parsers/containers/isobmff/get_box.js +227 -0
  2261. package/dist/es2017/parsers/containers/isobmff/index.d.ts +21 -0
  2262. package/dist/es2017/parsers/containers/isobmff/index.js +21 -0
  2263. package/dist/es2017/parsers/containers/isobmff/read.d.ts +57 -0
  2264. package/dist/es2017/parsers/containers/isobmff/read.js +87 -0
  2265. package/dist/es2017/parsers/containers/isobmff/take_pssh_out.d.ts +41 -0
  2266. package/dist/es2017/parsers/containers/isobmff/take_pssh_out.js +83 -0
  2267. package/dist/es2017/parsers/containers/isobmff/utils.d.ts +123 -0
  2268. package/dist/es2017/parsers/containers/isobmff/utils.js +441 -0
  2269. package/dist/es2017/parsers/containers/matroska/index.d.ts +16 -0
  2270. package/dist/es2017/parsers/containers/matroska/index.js +16 -0
  2271. package/dist/es2017/parsers/containers/matroska/utils.d.ts +34 -0
  2272. package/dist/es2017/parsers/containers/matroska/utils.js +235 -0
  2273. package/dist/es2017/parsers/images/bif.d.ts +39 -0
  2274. package/dist/es2017/parsers/images/bif.js +97 -0
  2275. package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.d.ts +28 -0
  2276. package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.js +44 -0
  2277. package/dist/es2017/parsers/manifest/dash/common/convert_supplemental_codecs.d.ts +17 -0
  2278. package/dist/es2017/parsers/manifest/dash/common/convert_supplemental_codecs.js +26 -0
  2279. package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +43 -0
  2280. package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.js +79 -0
  2281. package/dist/es2017/parsers/manifest/dash/common/get_clock_offset.d.ts +29 -0
  2282. package/dist/es2017/parsers/manifest/dash/common/get_clock_offset.js +38 -0
  2283. package/dist/es2017/parsers/manifest/dash/common/get_hdr_information.d.ts +50 -0
  2284. package/dist/es2017/parsers/manifest/dash/common/get_hdr_information.js +58 -0
  2285. package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +21 -0
  2286. package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.js +26 -0
  2287. package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +25 -0
  2288. package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +31 -0
  2289. package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.d.ts +43 -0
  2290. package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.js +66 -0
  2291. package/dist/es2017/parsers/manifest/dash/common/index.d.ts +20 -0
  2292. package/dist/es2017/parsers/manifest/dash/common/index.js +19 -0
  2293. package/dist/es2017/parsers/manifest/dash/common/indexes/base.d.ts +246 -0
  2294. package/dist/es2017/parsers/manifest/dash/common/indexes/base.js +257 -0
  2295. package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +32 -0
  2296. package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.js +42 -0
  2297. package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +36 -0
  2298. package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +98 -0
  2299. package/dist/es2017/parsers/manifest/dash/common/indexes/index.d.ts +20 -0
  2300. package/dist/es2017/parsers/manifest/dash/common/indexes/index.js +20 -0
  2301. package/dist/es2017/parsers/manifest/dash/common/indexes/list.d.ts +193 -0
  2302. package/dist/es2017/parsers/manifest/dash/common/indexes/list.js +206 -0
  2303. package/dist/es2017/parsers/manifest/dash/common/indexes/template.d.ts +254 -0
  2304. package/dist/es2017/parsers/manifest/dash/common/indexes/template.js +429 -0
  2305. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +26 -0
  2306. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +47 -0
  2307. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +17 -0
  2308. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +83 -0
  2309. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +37 -0
  2310. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +58 -0
  2311. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +41 -0
  2312. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +132 -0
  2313. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/index.d.ts +17 -0
  2314. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/index.js +17 -0
  2315. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +34 -0
  2316. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +57 -0
  2317. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +338 -0
  2318. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +464 -0
  2319. package/dist/es2017/parsers/manifest/dash/common/indexes/tokens.d.ts +40 -0
  2320. package/dist/es2017/parsers/manifest/dash/common/indexes/tokens.js +109 -0
  2321. package/dist/es2017/parsers/manifest/dash/common/indexes/utils.d.ts +25 -0
  2322. package/dist/es2017/parsers/manifest/dash/common/indexes/utils.js +28 -0
  2323. package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.d.ts +42 -0
  2324. package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.js +107 -0
  2325. package/dist/es2017/parsers/manifest/dash/common/manifest_bounds_calculator.d.ts +92 -0
  2326. package/dist/es2017/parsers/manifest/dash/common/manifest_bounds_calculator.js +111 -0
  2327. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +49 -0
  2328. package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.js +368 -0
  2329. package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.d.ts +22 -0
  2330. package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.js +29 -0
  2331. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.d.ts +98 -0
  2332. package/dist/es2017/parsers/manifest/dash/common/parse_mpd.js +246 -0
  2333. package/dist/es2017/parsers/manifest/dash/common/parse_periods.d.ts +67 -0
  2334. package/dist/es2017/parsers/manifest/dash/common/parse_periods.js +273 -0
  2335. package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.d.ts +73 -0
  2336. package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.js +95 -0
  2337. package/dist/es2017/parsers/manifest/dash/common/parse_representations.d.ts +46 -0
  2338. package/dist/es2017/parsers/manifest/dash/common/parse_representations.js +257 -0
  2339. package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.d.ts +26 -0
  2340. package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.js +44 -0
  2341. package/dist/es2017/parsers/manifest/dash/index.d.ts +16 -0
  2342. package/dist/es2017/parsers/manifest/dash/index.js +16 -0
  2343. package/dist/es2017/parsers/manifest/dash/js-parser/index.d.ts +17 -0
  2344. package/dist/es2017/parsers/manifest/dash/js-parser/index.js +17 -0
  2345. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts +23 -0
  2346. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +311 -0
  2347. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts +23 -0
  2348. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +30 -0
  2349. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts +22 -0
  2350. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.js +41 -0
  2351. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts +21 -0
  2352. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.js +75 -0
  2353. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts +23 -0
  2354. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +94 -0
  2355. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts +21 -0
  2356. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +39 -0
  2357. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts +21 -0
  2358. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/MPD.js +144 -0
  2359. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts +21 -0
  2360. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Period.js +112 -0
  2361. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts +21 -0
  2362. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Representation.js +189 -0
  2363. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts +22 -0
  2364. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +89 -0
  2365. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts +21 -0
  2366. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentList.js +40 -0
  2367. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts +23 -0
  2368. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +73 -0
  2369. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts +21 -0
  2370. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.js +30 -0
  2371. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts +23 -0
  2372. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +49 -0
  2373. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +187 -0
  2374. package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/utils.js +306 -0
  2375. package/dist/es2017/parsers/manifest/dash/js-parser/parse_from_document.d.ts +24 -0
  2376. package/dist/es2017/parsers/manifest/dash/js-parser/parse_from_document.js +106 -0
  2377. package/dist/es2017/parsers/manifest/dash/node_parser_types.d.ts +395 -0
  2378. package/dist/es2017/parsers/manifest/dash/node_parser_types.js +16 -0
  2379. package/dist/es2017/parsers/manifest/dash/parsers_types.d.ts +83 -0
  2380. package/dist/es2017/parsers/manifest/dash/parsers_types.js +16 -0
  2381. package/dist/es2017/parsers/manifest/dash/wasm-parser/index.d.ts +18 -0
  2382. package/dist/es2017/parsers/manifest/dash/wasm-parser/index.js +17 -0
  2383. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +111 -0
  2384. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +329 -0
  2385. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +31 -0
  2386. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +274 -0
  2387. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +24 -0
  2388. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.js +30 -0
  2389. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +24 -0
  2390. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +41 -0
  2391. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +23 -0
  2392. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +49 -0
  2393. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +32 -0
  2394. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +112 -0
  2395. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +27 -0
  2396. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +145 -0
  2397. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +32 -0
  2398. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +130 -0
  2399. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +31 -0
  2400. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +171 -0
  2401. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +24 -0
  2402. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +35 -0
  2403. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +18 -0
  2404. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +93 -0
  2405. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +25 -0
  2406. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.js +45 -0
  2407. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +18 -0
  2408. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +108 -0
  2409. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +25 -0
  2410. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +54 -0
  2411. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +28 -0
  2412. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +47 -0
  2413. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/index.d.ts +16 -0
  2414. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/index.js +16 -0
  2415. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +27 -0
  2416. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.js +45 -0
  2417. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts +38 -0
  2418. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +56 -0
  2419. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/types.d.ts +145 -0
  2420. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/types.js +16 -0
  2421. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +29 -0
  2422. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.js +36 -0
  2423. package/dist/es2017/parsers/manifest/index.d.ts +16 -0
  2424. package/dist/es2017/parsers/manifest/index.js +16 -0
  2425. package/dist/es2017/parsers/manifest/local/index.d.ts +18 -0
  2426. package/dist/es2017/parsers/manifest/local/index.js +17 -0
  2427. package/dist/es2017/parsers/manifest/local/parse_local_manifest.d.ts +22 -0
  2428. package/dist/es2017/parsers/manifest/local/parse_local_manifest.js +126 -0
  2429. package/dist/es2017/parsers/manifest/local/representation_index.d.ts +83 -0
  2430. package/dist/es2017/parsers/manifest/local/representation_index.js +224 -0
  2431. package/dist/es2017/parsers/manifest/local/types.d.ts +285 -0
  2432. package/dist/es2017/parsers/manifest/local/types.js +16 -0
  2433. package/dist/es2017/parsers/manifest/metaplaylist/index.d.ts +18 -0
  2434. package/dist/es2017/parsers/manifest/metaplaylist/index.js +17 -0
  2435. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +64 -0
  2436. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.js +255 -0
  2437. package/dist/es2017/parsers/manifest/metaplaylist/representation_index.d.ts +154 -0
  2438. package/dist/es2017/parsers/manifest/metaplaylist/representation_index.js +222 -0
  2439. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts +33 -0
  2440. package/dist/es2017/parsers/manifest/smooth/create_parser.js +516 -0
  2441. package/dist/es2017/parsers/manifest/smooth/get_codecs.d.ts +26 -0
  2442. package/dist/es2017/parsers/manifest/smooth/get_codecs.js +50 -0
  2443. package/dist/es2017/parsers/manifest/smooth/index.d.ts +19 -0
  2444. package/dist/es2017/parsers/manifest/smooth/index.js +19 -0
  2445. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts +26 -0
  2446. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.js +60 -0
  2447. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts +29 -0
  2448. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.js +57 -0
  2449. package/dist/es2017/parsers/manifest/smooth/representation_index.d.ts +226 -0
  2450. package/dist/es2017/parsers/manifest/smooth/representation_index.js +384 -0
  2451. package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +119 -0
  2452. package/dist/{_esm5.processed → es2017}/parsers/manifest/smooth/shared_smooth_segment_timeline.js +18 -21
  2453. package/dist/es2017/parsers/manifest/smooth/utils/add_segment_infos.d.ts +38 -0
  2454. package/dist/es2017/parsers/manifest/smooth/utils/add_segment_infos.js +60 -0
  2455. package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts +20 -0
  2456. package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.js +30 -0
  2457. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts +23 -0
  2458. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.js +31 -0
  2459. package/dist/es2017/parsers/manifest/smooth/utils/tokens.d.ts +28 -0
  2460. package/dist/es2017/parsers/manifest/smooth/utils/tokens.js +35 -0
  2461. package/dist/es2017/parsers/manifest/types.d.ts +379 -0
  2462. package/dist/es2017/parsers/manifest/types.js +16 -0
  2463. package/dist/es2017/parsers/manifest/utils/check_manifest_ids.d.ts +25 -0
  2464. package/dist/es2017/parsers/manifest/utils/check_manifest_ids.js +76 -0
  2465. package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.d.ts +24 -0
  2466. package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.js +69 -0
  2467. package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +27 -0
  2468. package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.js +43 -0
  2469. package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +29 -0
  2470. package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.js +45 -0
  2471. package/dist/es2017/parsers/manifest/utils/get_maximum_positions.d.ts +24 -0
  2472. package/dist/es2017/parsers/manifest/utils/get_maximum_positions.js +72 -0
  2473. package/dist/es2017/parsers/manifest/utils/get_minimum_position.d.ts +21 -0
  2474. package/dist/es2017/parsers/manifest/utils/get_minimum_position.js +68 -0
  2475. package/dist/es2017/parsers/manifest/utils/index_helpers.d.ts +88 -0
  2476. package/dist/es2017/parsers/manifest/utils/index_helpers.js +147 -0
  2477. package/dist/es2017/parsers/manifest/utils/is_segment_still_available.d.ts +29 -0
  2478. package/dist/es2017/parsers/manifest/utils/is_segment_still_available.js +51 -0
  2479. package/dist/es2017/parsers/manifest/utils/update_segment_timeline.d.ts +33 -0
  2480. package/dist/es2017/parsers/manifest/utils/update_segment_timeline.js +128 -0
  2481. package/dist/es2017/parsers/texttracks/index.d.ts +16 -0
  2482. package/dist/es2017/parsers/texttracks/index.js +16 -0
  2483. package/dist/es2017/parsers/texttracks/sami/html.d.ts +29 -0
  2484. package/dist/es2017/parsers/texttracks/sami/html.js +189 -0
  2485. package/dist/es2017/parsers/texttracks/sami/native.d.ts +34 -0
  2486. package/dist/es2017/parsers/texttracks/sami/native.js +160 -0
  2487. package/dist/es2017/parsers/texttracks/srt/find_end_of_cue_block.d.ts +29 -0
  2488. package/dist/es2017/parsers/texttracks/srt/find_end_of_cue_block.js +39 -0
  2489. package/dist/es2017/parsers/texttracks/srt/get_cue_blocks.d.ts +22 -0
  2490. package/dist/es2017/parsers/texttracks/srt/get_cue_blocks.js +47 -0
  2491. package/dist/es2017/parsers/texttracks/srt/html.d.ts +26 -0
  2492. package/dist/es2017/parsers/texttracks/srt/html.js +153 -0
  2493. package/dist/es2017/parsers/texttracks/srt/native.d.ts +28 -0
  2494. package/dist/es2017/parsers/texttracks/srt/native.js +57 -0
  2495. package/dist/es2017/parsers/texttracks/srt/parse_cue.d.ts +30 -0
  2496. package/dist/es2017/parsers/texttracks/srt/parse_cue.js +60 -0
  2497. package/dist/es2017/parsers/texttracks/srt/parse_timestamp.d.ts +21 -0
  2498. package/dist/es2017/parsers/texttracks/srt/parse_timestamp.js +33 -0
  2499. package/dist/es2017/parsers/texttracks/ttml/get_parameters.d.ts +32 -0
  2500. package/dist/es2017/parsers/texttracks/ttml/get_parameters.js +88 -0
  2501. package/dist/es2017/parsers/texttracks/ttml/get_styling.d.ts +41 -0
  2502. package/dist/es2017/parsers/texttracks/ttml/get_styling.js +127 -0
  2503. package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.d.ts +26 -0
  2504. package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.js +41 -0
  2505. package/dist/es2017/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.d.ts +48 -0
  2506. package/dist/es2017/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +61 -0
  2507. package/dist/es2017/parsers/texttracks/ttml/html/apply_extent.d.ts +21 -0
  2508. package/dist/es2017/parsers/texttracks/ttml/html/apply_extent.js +61 -0
  2509. package/dist/es2017/parsers/texttracks/ttml/html/apply_font_size.d.ts +21 -0
  2510. package/dist/es2017/parsers/texttracks/ttml/html/apply_font_size.js +59 -0
  2511. package/dist/es2017/parsers/texttracks/ttml/html/apply_line_height.d.ts +20 -0
  2512. package/dist/es2017/parsers/texttracks/ttml/html/apply_line_height.js +44 -0
  2513. package/dist/es2017/parsers/texttracks/ttml/html/apply_origin.d.ts +20 -0
  2514. package/dist/es2017/parsers/texttracks/ttml/html/apply_origin.js +60 -0
  2515. package/dist/es2017/parsers/texttracks/ttml/html/apply_padding.d.ts +20 -0
  2516. package/dist/es2017/parsers/texttracks/ttml/html/apply_padding.js +139 -0
  2517. package/dist/es2017/parsers/texttracks/ttml/html/create_element.d.ts +32 -0
  2518. package/dist/es2017/parsers/texttracks/ttml/html/create_element.js +441 -0
  2519. package/dist/es2017/parsers/texttracks/ttml/html/generate_css_test_outline.d.ts +26 -0
  2520. package/dist/es2017/parsers/texttracks/ttml/html/generate_css_test_outline.js +41 -0
  2521. package/dist/es2017/parsers/texttracks/ttml/html/index.d.ts +21 -0
  2522. package/dist/es2017/parsers/texttracks/ttml/html/index.js +21 -0
  2523. package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.d.ts +26 -0
  2524. package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.js +39 -0
  2525. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +34 -0
  2526. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.js +50 -0
  2527. package/dist/es2017/parsers/texttracks/ttml/html/ttml_color_to_css_color.d.ts +21 -0
  2528. package/dist/es2017/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +57 -0
  2529. package/dist/es2017/parsers/texttracks/ttml/native/index.d.ts +21 -0
  2530. package/dist/es2017/parsers/texttracks/ttml/native/index.js +21 -0
  2531. package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.d.ts +30 -0
  2532. package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.js +202 -0
  2533. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +21 -0
  2534. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +33 -0
  2535. package/dist/es2017/parsers/texttracks/ttml/parse_ttml.d.ts +43 -0
  2536. package/dist/es2017/parsers/texttracks/ttml/parse_ttml.js +153 -0
  2537. package/dist/es2017/parsers/texttracks/ttml/regexps.d.ts +28 -0
  2538. package/dist/es2017/parsers/texttracks/ttml/regexps.js +35 -0
  2539. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +49 -0
  2540. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.js +80 -0
  2541. package/dist/es2017/parsers/texttracks/ttml/time_parsing.d.ts +30 -0
  2542. package/dist/es2017/parsers/texttracks/ttml/time_parsing.js +124 -0
  2543. package/dist/es2017/parsers/texttracks/ttml/xml_utils.d.ts +70 -0
  2544. package/dist/es2017/parsers/texttracks/ttml/xml_utils.js +149 -0
  2545. package/dist/es2017/parsers/texttracks/types.d.ts +23 -0
  2546. package/dist/es2017/parsers/texttracks/types.js +16 -0
  2547. package/dist/es2017/parsers/texttracks/webvtt/get_cue_blocks.d.ts +24 -0
  2548. package/dist/es2017/parsers/texttracks/webvtt/get_cue_blocks.js +44 -0
  2549. package/dist/es2017/parsers/texttracks/webvtt/get_style_blocks.d.ts +24 -0
  2550. package/dist/es2017/parsers/texttracks/webvtt/get_style_blocks.js +51 -0
  2551. package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +22 -0
  2552. package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.js +35 -0
  2553. package/dist/es2017/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts +2 -0
  2554. package/dist/es2017/parsers/texttracks/webvtt/html/create_default_style_elements.js +22 -0
  2555. package/dist/es2017/parsers/texttracks/webvtt/html/create_style_attribute.d.ts +21 -0
  2556. package/dist/es2017/parsers/texttracks/webvtt/html/create_style_attribute.js +172 -0
  2557. package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.d.ts +25 -0
  2558. package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.js +83 -0
  2559. package/dist/es2017/parsers/texttracks/webvtt/html/index.d.ts +22 -0
  2560. package/dist/es2017/parsers/texttracks/webvtt/html/index.js +21 -0
  2561. package/dist/es2017/parsers/texttracks/webvtt/html/parse_style_block.d.ts +27 -0
  2562. package/dist/es2017/parsers/texttracks/webvtt/html/parse_style_block.js +66 -0
  2563. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts +31 -0
  2564. package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_to_div.js +55 -0
  2565. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts +43 -0
  2566. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.js +72 -0
  2567. package/dist/es2017/parsers/texttracks/webvtt/native/index.d.ts +21 -0
  2568. package/dist/es2017/parsers/texttracks/webvtt/native/index.js +21 -0
  2569. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts +28 -0
  2570. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +58 -0
  2571. package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +23 -0
  2572. package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.js +80 -0
  2573. package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.d.ts +25 -0
  2574. package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.js +25 -0
  2575. package/dist/es2017/parsers/texttracks/webvtt/parse_cue_block.d.ts +33 -0
  2576. package/dist/es2017/parsers/texttracks/webvtt/parse_cue_block.js +101 -0
  2577. package/dist/es2017/parsers/texttracks/webvtt/parse_timestamp.d.ts +21 -0
  2578. package/dist/es2017/parsers/texttracks/webvtt/parse_timestamp.js +34 -0
  2579. package/dist/es2017/parsers/texttracks/webvtt/utils.d.ts +56 -0
  2580. package/dist/es2017/parsers/texttracks/webvtt/utils.js +113 -0
  2581. package/dist/es2017/public_types.d.ts +825 -0
  2582. package/dist/es2017/public_types.js +16 -0
  2583. package/dist/es2017/tools/TextTrackRenderer/index.d.ts +22 -0
  2584. package/dist/es2017/tools/TextTrackRenderer/index.js +22 -0
  2585. package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.d.ts +70 -0
  2586. package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.js +78 -0
  2587. package/dist/es2017/tools/index.d.ts +18 -0
  2588. package/dist/es2017/tools/index.js +18 -0
  2589. package/dist/es2017/tools/string_utils/index.d.ts +16 -0
  2590. package/dist/es2017/tools/string_utils/index.js +16 -0
  2591. package/dist/es2017/transports/dash/add_segment_integrity_checks_to_loader.d.ts +24 -0
  2592. package/dist/es2017/transports/dash/add_segment_integrity_checks_to_loader.js +82 -0
  2593. package/dist/es2017/transports/dash/construct_segment_url.d.ts +18 -0
  2594. package/dist/es2017/transports/dash/construct_segment_url.js +21 -0
  2595. package/dist/es2017/transports/dash/extract_complete_chunks.d.ts +24 -0
  2596. package/dist/es2017/transports/dash/extract_complete_chunks.js +59 -0
  2597. package/dist/es2017/transports/dash/get_events_out_of_emsgs.d.ts +28 -0
  2598. package/dist/es2017/transports/dash/get_events_out_of_emsgs.js +92 -0
  2599. package/dist/es2017/transports/dash/index.d.ts +21 -0
  2600. package/dist/es2017/transports/dash/index.js +21 -0
  2601. package/dist/es2017/transports/dash/init_segment_loader.d.ts +28 -0
  2602. package/dist/es2017/transports/dash/init_segment_loader.js +85 -0
  2603. package/dist/es2017/transports/dash/low_latency_segment_loader.d.ts +30 -0
  2604. package/dist/es2017/transports/dash/low_latency_segment_loader.js +68 -0
  2605. package/dist/es2017/transports/dash/manifest_parser.d.ts +18 -0
  2606. package/dist/es2017/transports/dash/manifest_parser.js +282 -0
  2607. package/dist/es2017/transports/dash/pipelines.d.ts +23 -0
  2608. package/dist/es2017/transports/dash/pipelines.js +55 -0
  2609. package/dist/es2017/transports/dash/segment_loader.d.ts +38 -0
  2610. package/dist/es2017/transports/dash/segment_loader.js +173 -0
  2611. package/dist/es2017/transports/dash/segment_parser.d.ts +23 -0
  2612. package/dist/es2017/transports/dash/segment_parser.js +140 -0
  2613. package/dist/es2017/transports/dash/text_loader.d.ts +25 -0
  2614. package/dist/es2017/transports/dash/text_loader.js +85 -0
  2615. package/dist/es2017/transports/dash/text_parser.d.ts +25 -0
  2616. package/dist/es2017/transports/dash/text_parser.js +171 -0
  2617. package/dist/es2017/transports/index.d.ts +16 -0
  2618. package/dist/es2017/transports/index.js +16 -0
  2619. package/dist/es2017/transports/local/index.d.ts +17 -0
  2620. package/dist/es2017/transports/local/index.js +17 -0
  2621. package/dist/es2017/transports/local/pipelines.d.ts +22 -0
  2622. package/dist/es2017/transports/local/pipelines.js +65 -0
  2623. package/dist/es2017/transports/local/segment_loader.d.ts +28 -0
  2624. package/dist/es2017/transports/local/segment_loader.js +144 -0
  2625. package/dist/es2017/transports/local/segment_parser.d.ts +20 -0
  2626. package/dist/es2017/transports/local/segment_parser.js +77 -0
  2627. package/dist/es2017/transports/local/text_parser.d.ts +27 -0
  2628. package/dist/es2017/transports/local/text_parser.js +143 -0
  2629. package/dist/es2017/transports/metaplaylist/index.d.ts +21 -0
  2630. package/dist/es2017/transports/metaplaylist/index.js +21 -0
  2631. package/dist/es2017/transports/metaplaylist/manifest_loader.d.ts +26 -0
  2632. package/dist/es2017/transports/metaplaylist/manifest_loader.js +42 -0
  2633. package/dist/es2017/transports/metaplaylist/pipelines.d.ts +17 -0
  2634. package/dist/es2017/transports/metaplaylist/pipelines.js +229 -0
  2635. package/dist/es2017/transports/smooth/extract_timings_infos.d.ts +62 -0
  2636. package/dist/es2017/transports/smooth/extract_timings_infos.js +81 -0
  2637. package/dist/es2017/transports/smooth/index.d.ts +21 -0
  2638. package/dist/es2017/transports/smooth/index.js +21 -0
  2639. package/dist/es2017/transports/smooth/is_mp4_embedded_track.d.ts +22 -0
  2640. package/dist/es2017/transports/smooth/is_mp4_embedded_track.js +24 -0
  2641. package/dist/es2017/transports/smooth/isobmff/create_audio_init_segment.d.ts +29 -0
  2642. package/dist/es2017/transports/smooth/isobmff/create_audio_init_segment.js +52 -0
  2643. package/dist/es2017/transports/smooth/isobmff/create_boxes.d.ts +171 -0
  2644. package/dist/es2017/transports/smooth/isobmff/create_boxes.js +328 -0
  2645. package/dist/es2017/transports/smooth/isobmff/create_init_segment.d.ts +33 -0
  2646. package/dist/es2017/transports/smooth/isobmff/create_init_segment.js +65 -0
  2647. package/dist/es2017/transports/smooth/isobmff/create_traf_box.d.ts +16 -0
  2648. package/dist/es2017/transports/smooth/isobmff/create_traf_box.js +24 -0
  2649. package/dist/es2017/transports/smooth/isobmff/create_video_init_segment.d.ts +29 -0
  2650. package/dist/es2017/transports/smooth/isobmff/create_video_init_segment.js +57 -0
  2651. package/dist/es2017/transports/smooth/isobmff/get_aaces_header.d.ts +27 -0
  2652. package/dist/es2017/transports/smooth/isobmff/get_aaces_header.js +55 -0
  2653. package/dist/es2017/transports/smooth/isobmff/index.d.ts +21 -0
  2654. package/dist/es2017/transports/smooth/isobmff/index.js +21 -0
  2655. package/dist/es2017/transports/smooth/isobmff/parse_tfrf.d.ts +24 -0
  2656. package/dist/es2017/transports/smooth/isobmff/parse_tfrf.js +47 -0
  2657. package/dist/es2017/transports/smooth/isobmff/parse_tfxd.d.ts +24 -0
  2658. package/dist/es2017/transports/smooth/isobmff/parse_tfxd.js +31 -0
  2659. package/dist/es2017/transports/smooth/isobmff/patch_segment.d.ts +23 -0
  2660. package/dist/es2017/transports/smooth/isobmff/patch_segment.js +127 -0
  2661. package/dist/es2017/transports/smooth/pipelines.d.ts +17 -0
  2662. package/dist/es2017/transports/smooth/pipelines.js +291 -0
  2663. package/dist/es2017/transports/smooth/segment_loader.d.ts +27 -0
  2664. package/dist/es2017/transports/smooth/segment_loader.js +198 -0
  2665. package/dist/es2017/transports/smooth/utils.d.ts +26 -0
  2666. package/dist/es2017/transports/smooth/utils.js +32 -0
  2667. package/dist/es2017/transports/types.d.ts +701 -0
  2668. package/dist/es2017/transports/types.js +16 -0
  2669. package/dist/es2017/transports/utils/byte_range.d.ts +21 -0
  2670. package/dist/es2017/transports/utils/byte_range.js +24 -0
  2671. package/dist/es2017/transports/utils/call_custom_manifest_loader.d.ts +19 -0
  2672. package/dist/es2017/transports/utils/call_custom_manifest_loader.js +94 -0
  2673. package/dist/es2017/transports/utils/check_isobmff_integrity.d.ts +23 -0
  2674. package/dist/es2017/transports/utils/check_isobmff_integrity.js +46 -0
  2675. package/dist/es2017/transports/utils/find_complete_box.d.ts +25 -0
  2676. package/dist/es2017/transports/utils/find_complete_box.js +53 -0
  2677. package/dist/es2017/transports/utils/generate_manifest_loader.d.ts +26 -0
  2678. package/dist/es2017/transports/utils/generate_manifest_loader.js +64 -0
  2679. package/dist/es2017/transports/utils/get_isobmff_timing_infos.d.ts +29 -0
  2680. package/dist/es2017/transports/utils/get_isobmff_timing_infos.js +66 -0
  2681. package/dist/es2017/transports/utils/infer_segment_container.d.ts +29 -0
  2682. package/dist/es2017/transports/utils/infer_segment_container.js +44 -0
  2683. package/dist/es2017/transports/utils/parse_text_track.d.ts +56 -0
  2684. package/dist/es2017/transports/utils/parse_text_track.js +140 -0
  2685. package/dist/es2017/utils/are_arrays_of_numbers_equal.d.ts +22 -0
  2686. package/dist/es2017/utils/are_arrays_of_numbers_equal.js +35 -0
  2687. package/dist/es2017/utils/are_codecs_compatible.d.ts +25 -0
  2688. package/dist/es2017/utils/are_codecs_compatible.js +44 -0
  2689. package/dist/es2017/utils/array_find.d.ts +23 -0
  2690. package/dist/es2017/utils/array_find.js +35 -0
  2691. package/dist/es2017/utils/array_find_index.d.ts +23 -0
  2692. package/dist/es2017/utils/array_find_index.js +34 -0
  2693. package/dist/es2017/utils/array_includes.d.ts +53 -0
  2694. package/dist/es2017/utils/array_includes.js +81 -0
  2695. package/dist/es2017/utils/assert.d.ts +34 -0
  2696. package/dist/es2017/utils/assert.js +51 -0
  2697. package/dist/es2017/utils/assert_unreachable.d.ts +40 -0
  2698. package/dist/es2017/utils/assert_unreachable.js +43 -0
  2699. package/dist/es2017/utils/base64.d.ts +14 -0
  2700. package/dist/es2017/utils/base64.js +147 -0
  2701. package/dist/es2017/utils/byte_parsing.d.ts +123 -0
  2702. package/dist/es2017/utils/byte_parsing.js +227 -0
  2703. package/dist/es2017/utils/cancellable_sleep.d.ts +30 -0
  2704. package/dist/es2017/utils/cancellable_sleep.js +35 -0
  2705. package/dist/es2017/utils/create_cancellable_promise.d.ts +26 -0
  2706. package/dist/es2017/utils/create_cancellable_promise.js +52 -0
  2707. package/dist/es2017/utils/deep_merge.d.ts +9 -0
  2708. package/dist/es2017/utils/deep_merge.js +40 -0
  2709. package/dist/es2017/utils/event_emitter.d.ts +62 -0
  2710. package/dist/es2017/utils/event_emitter.js +100 -0
  2711. package/dist/es2017/utils/flat_map.d.ts +22 -0
  2712. package/dist/es2017/utils/flat_map.js +37 -0
  2713. package/dist/es2017/utils/get_fuzzed_delay.d.ts +21 -0
  2714. package/dist/es2017/utils/get_fuzzed_delay.js +25 -0
  2715. package/dist/es2017/utils/hash_buffer.d.ts +32 -0
  2716. package/dist/es2017/utils/hash_buffer.js +41 -0
  2717. package/dist/es2017/utils/id_generator.d.ts +21 -0
  2718. package/dist/es2017/utils/id_generator.js +33 -0
  2719. package/dist/es2017/utils/initialization_segment_cache.d.ts +42 -0
  2720. package/dist/es2017/utils/initialization_segment_cache.js +48 -0
  2721. package/dist/es2017/utils/is_non_empty_string.d.ts +20 -0
  2722. package/dist/es2017/utils/is_non_empty_string.js +22 -0
  2723. package/dist/es2017/utils/is_null_or_undefined.d.ts +24 -0
  2724. package/dist/es2017/utils/is_null_or_undefined.js +26 -0
  2725. package/dist/es2017/utils/languages/ISO_639-1_to_ISO_639-3.d.ts +22 -0
  2726. package/dist/es2017/utils/languages/ISO_639-1_to_ISO_639-3.js +205 -0
  2727. package/dist/es2017/utils/languages/ISO_639-2_to_ISO_639-3.d.ts +22 -0
  2728. package/dist/es2017/utils/languages/ISO_639-2_to_ISO_639-3.js +41 -0
  2729. package/dist/es2017/utils/languages/index.d.ts +18 -0
  2730. package/dist/es2017/utils/languages/index.js +18 -0
  2731. package/dist/es2017/utils/languages/normalize.d.ts +68 -0
  2732. package/dist/es2017/utils/languages/normalize.js +119 -0
  2733. package/dist/es2017/utils/logger.d.ts +46 -0
  2734. package/dist/es2017/utils/logger.js +77 -0
  2735. package/dist/es2017/utils/monotonic_timestamp.d.ts +9 -0
  2736. package/dist/es2017/utils/monotonic_timestamp.js +12 -0
  2737. package/dist/es2017/utils/noop.d.ts +23 -0
  2738. package/dist/es2017/utils/noop.js +25 -0
  2739. package/dist/es2017/utils/object_assign.d.ts +22 -0
  2740. package/dist/es2017/utils/object_assign.js +40 -0
  2741. package/dist/es2017/utils/object_values.d.ts +30 -0
  2742. package/dist/es2017/utils/object_values.js +26 -0
  2743. package/dist/es2017/utils/queue_microtask.d.ts +2 -0
  2744. package/dist/es2017/utils/queue_microtask.js +5 -0
  2745. package/dist/es2017/utils/ranges.d.ts +212 -0
  2746. package/dist/es2017/utils/ranges.js +502 -0
  2747. package/dist/es2017/utils/reference.d.ts +214 -0
  2748. package/dist/es2017/utils/reference.js +287 -0
  2749. package/dist/es2017/utils/request/fetch.d.ts +76 -0
  2750. package/dist/es2017/utils/request/fetch.js +148 -0
  2751. package/dist/es2017/utils/request/index.d.ts +19 -0
  2752. package/dist/es2017/utils/request/index.js +19 -0
  2753. package/dist/es2017/utils/request/xhr.d.ts +95 -0
  2754. package/dist/es2017/utils/request/xhr.js +162 -0
  2755. package/dist/es2017/utils/resolve_url.d.ts +35 -0
  2756. package/dist/es2017/utils/resolve_url.js +113 -0
  2757. package/dist/es2017/utils/retry_promise_with_backoff.d.ts +46 -0
  2758. package/dist/es2017/utils/retry_promise_with_backoff.js +69 -0
  2759. package/dist/es2017/utils/sleep.d.ts +10 -0
  2760. package/dist/es2017/utils/sleep.js +14 -0
  2761. package/dist/es2017/utils/slice_uint8array.d.ts +27 -0
  2762. package/dist/es2017/utils/slice_uint8array.js +42 -0
  2763. package/dist/es2017/utils/sorted_list.d.ts +127 -0
  2764. package/dist/es2017/utils/sorted_list.js +177 -0
  2765. package/dist/es2017/utils/starts_with.d.ts +26 -0
  2766. package/dist/es2017/utils/starts_with.js +36 -0
  2767. package/dist/es2017/utils/string_parsing.d.ts +88 -0
  2768. package/dist/es2017/utils/string_parsing.js +372 -0
  2769. package/dist/es2017/utils/task_canceller.d.ts +263 -0
  2770. package/dist/es2017/utils/task_canceller.js +299 -0
  2771. package/dist/es2017/utils/warn_once.d.ts +23 -0
  2772. package/dist/es2017/utils/warn_once.js +31 -0
  2773. package/dist/es2017/utils/weak_map_memory.d.ts +70 -0
  2774. package/dist/es2017/utils/weak_map_memory.js +84 -0
  2775. package/dist/es2017/utils/wrapInPromise.d.ts +7 -0
  2776. package/dist/es2017/utils/wrapInPromise.js +22 -0
  2777. package/dist/mpd-parser.wasm +0 -0
  2778. package/dist/rx-player.d.ts +1 -1
  2779. package/dist/rx-player.js +217 -189
  2780. package/dist/rx-player.min.d.ts +1 -1
  2781. package/dist/rx-player.min.js +1 -1
  2782. package/experimental/features/index.d.ts +1 -1
  2783. package/experimental/features/index.js +1 -1
  2784. package/experimental/index.d.ts +1 -1
  2785. package/experimental/index.js +1 -1
  2786. package/{scripts/build/templates/experimental/tools/VideoThumbnailLoader/index.d.ts → experimental/tools/VideoThumbnailLoader.d.ts} +2 -2
  2787. package/{scripts/build/templates/experimental/tools/VideoThumbnailLoader/index.js → experimental/tools/VideoThumbnailLoader.js} +2 -2
  2788. package/experimental/tools/createMetaplaylist.d.ts +18 -0
  2789. package/experimental/tools/createMetaplaylist.js +18 -0
  2790. package/experimental/tools/index.d.ts +1 -1
  2791. package/experimental/tools/index.js +1 -1
  2792. package/experimental/tools/mediaCapabilitiesProber.d.ts +18 -0
  2793. package/experimental/tools/mediaCapabilitiesProber.js +18 -0
  2794. package/experimental/tools/parseBIFThumbnails.d.ts +18 -0
  2795. package/experimental/tools/parseBIFThumbnails.js +18 -0
  2796. package/features/index.d.ts +1 -1
  2797. package/features/index.js +1 -1
  2798. package/jest.config.js +2 -21
  2799. package/logger/index.d.ts +1 -1
  2800. package/logger/index.js +1 -1
  2801. package/minimal/index.d.ts +1 -1
  2802. package/minimal/index.js +1 -1
  2803. package/package.json +120 -37
  2804. package/scripts/build/{generate_build.js → generate_build.mjs} +30 -26
  2805. package/{experimental/tools/VideoThumbnailLoader/index.d.ts → scripts/build/templates/experimental/tools/VideoThumbnailLoader.d.ts} +2 -2
  2806. package/{experimental/tools/VideoThumbnailLoader/index.js → scripts/build/templates/experimental/tools/VideoThumbnailLoader.js} +2 -2
  2807. package/scripts/build/templates/experimental/tools/createMetaplaylist.d.ts +18 -0
  2808. package/scripts/build/templates/experimental/tools/createMetaplaylist.js +18 -0
  2809. package/scripts/build/templates/experimental/tools/mediaCapabilitiesProber.d.ts +18 -0
  2810. package/scripts/build/templates/experimental/tools/mediaCapabilitiesProber.js +18 -0
  2811. package/scripts/build/templates/experimental/tools/parseBIFThumbnails.d.ts +18 -0
  2812. package/scripts/build/templates/experimental/tools/parseBIFThumbnails.js +18 -0
  2813. package/scripts/build/templates/tools/string-utils.d.ts +2 -2
  2814. package/scripts/build/templates/tools/string-utils.js +2 -2
  2815. package/scripts/{fast_demo_build.js → build_demo.mjs} +18 -17
  2816. package/scripts/{generate_demo_list.js → generate_demo_list.mjs} +15 -10
  2817. package/scripts/{generate_documentation_list.js → generate_documentation_list.mjs} +16 -11
  2818. package/scripts/generate_standalone_demo.mjs +109 -0
  2819. package/scripts/{launch_static_server.js → launch_static_server.mjs} +8 -8
  2820. package/scripts/{list-npm-scripts.js → list-npm-scripts.mjs} +7 -7
  2821. package/scripts/{run_standalone_demo.js → run_standalone_demo.mjs} +12 -7
  2822. package/scripts/start_demo_web_server.mjs +59 -0
  2823. package/scripts/update-version +1 -1
  2824. package/scripts/update_gh-pages_demo +4 -4
  2825. package/scripts/update_gh-pages_doc +4 -4
  2826. package/scripts/utils/{display_webpack_errors.js → display_webpack_errors.mjs} +1 -1
  2827. package/scripts/utils/{get_human_readable_hours.js → get_human_readable_hours.mjs} +1 -3
  2828. package/scripts/utils/project_root_directory.mjs +4 -0
  2829. package/scripts/{wasm-strip.js → wasm-strip.mjs} +11 -6
  2830. package/sonar-project.properties +1 -1
  2831. package/src/compat/README.md +18 -12
  2832. package/src/compat/patch_webkit_source_buffer.ts +2 -2
  2833. package/src/core/adaptive/adaptive_representation_selector.ts +5 -3
  2834. package/src/core/adaptive/utils/filter_by_resolution.ts +1 -3
  2835. package/src/core/api/option_utils.ts +8 -0
  2836. package/src/core/api/public_api.ts +15 -3
  2837. package/src/core/segment_buffers/implementations/text/html/__tests__/utils.test.ts +15 -0
  2838. package/src/core/segment_buffers/implementations/text/html/text_track_cues_store.ts +57 -6
  2839. package/src/core/segment_buffers/implementations/text/html/utils.ts +19 -2
  2840. package/src/core/segment_buffers/inventory/segment_inventory.ts +7 -14
  2841. package/src/core/stream/adaptation/adaptation_stream.ts +2 -2
  2842. package/src/core/stream/orchestrator/stream_orchestrator.ts +3 -3
  2843. package/src/core/stream/period/period_stream.ts +2 -2
  2844. package/src/experimental/README.md +4 -0
  2845. package/src/experimental/tools/{parseBIFThumbnails.ts → parseBIFThumbnails/index.ts} +1 -1
  2846. package/src/globals.dev.d.ts +15 -0
  2847. package/src/globals.prod.d.ts +15 -0
  2848. package/src/manifest/representation.ts +19 -6
  2849. package/src/parsers/manifest/dash/common/__tests__/convert_supplemental_codecs.test.ts +37 -0
  2850. package/src/parsers/manifest/dash/common/__tests__/flatten_overlapping_period.test.ts +20 -0
  2851. package/src/parsers/manifest/dash/common/convert_supplemental_codecs.ts +32 -0
  2852. package/src/parsers/manifest/dash/common/flatten_overlapping_periods.ts +5 -0
  2853. package/src/parsers/manifest/dash/common/parse_representations.ts +30 -17
  2854. package/src/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.ts +4 -0
  2855. package/src/parsers/manifest/dash/js-parser/node_parsers/Representation.ts +4 -0
  2856. package/src/parsers/manifest/dash/node_parser_types.ts +2 -0
  2857. package/src/parsers/manifest/dash/wasm-parser/rs/events.rs +2 -0
  2858. package/src/parsers/manifest/dash/wasm-parser/rs/processor/attributes.rs +2 -0
  2859. package/src/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.ts +4 -0
  2860. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Representation.ts +4 -0
  2861. package/src/parsers/manifest/dash/wasm-parser/ts/types.ts +2 -0
  2862. package/src/parsers/manifest/smooth/create_parser.ts +1 -2
  2863. package/src/parsers/manifest/types.ts +2 -0
  2864. package/src/tools/README.md +4 -0
  2865. package/src/tools/{string_utils.ts → string_utils/index.ts} +1 -1
  2866. package/src/transports/dash/segment_parser.ts +1 -2
  2867. package/src/transports/dash/text_parser.ts +1 -2
  2868. package/src/transports/local/segment_parser.ts +1 -2
  2869. package/src/transports/local/text_parser.ts +2 -3
  2870. package/src/utils/queue_microtask.ts +7 -0
  2871. package/tools/TextTrackRenderer.d.ts +2 -2
  2872. package/tools/TextTrackRenderer.js +2 -2
  2873. package/tools/index.d.ts +1 -1
  2874. package/tools/index.js +1 -1
  2875. package/tools/string-utils.d.ts +2 -2
  2876. package/tools/string-utils.js +2 -2
  2877. package/tsconfig.commonjs.json +9 -0
  2878. package/tsconfig.eslint.json +7 -0
  2879. package/tsconfig.jest.json +15 -0
  2880. package/tsconfig.json +10 -6
  2881. package/types/index.d.ts +1 -1
  2882. package/webpack.config.mjs +97 -0
  2883. package/scripts/generate_full_demo.js +0 -201
  2884. package/scripts/generate_standalone_demo.js +0 -82
  2885. package/scripts/start_demo_web_server.js +0 -44
  2886. package/src/utils/__tests__/take_first_set.test.ts +0 -38
  2887. package/src/utils/take_first_set.ts +0 -53
  2888. package/tsconfig.modules.json +0 -34
  2889. /package/dist/{_esm5.processed → commonjs}/compat/global_scope.d.ts +0 -0
  2890. /package/dist/{_esm5.processed → commonjs}/compat/is_worker.d.ts +0 -0
  2891. /package/dist/{_esm5.processed → commonjs}/compat/is_worker.js +0 -0
  2892. /package/dist/{_esm5.processed → commonjs}/core/adaptive/utils/filter_by_resolution.d.ts +0 -0
  2893. /package/dist/{_esm5.processed → commonjs}/core/api/track_management/index.d.ts +0 -0
  2894. /package/dist/{_esm5.processed → commonjs}/core/api/track_management/media_element_tracks_store.d.ts +0 -0
  2895. /package/dist/{_esm5.processed → commonjs}/core/api/track_management/track_dispatcher.d.ts +0 -0
  2896. /package/dist/{_esm5.processed → commonjs}/core/api/track_management/tracks_store.d.ts +0 -0
  2897. /package/dist/{_esm5.processed → commonjs}/core/segment_buffers/inventory/utils.d.ts +0 -0
  2898. /package/dist/{_esm5.processed → commonjs}/core/stream/adaptation/get_representations_switch_strategy.d.ts +0 -0
  2899. /package/dist/{_esm5.processed → commonjs}/index.d.ts +0 -0
  2900. /package/dist/{_esm5.processed → commonjs}/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +0 -0
  2901. /package/dist/{_esm5.processed → commonjs}/transports/smooth/is_mp4_embedded_track.d.ts +0 -0
  2902. /package/dist/{_esm5.processed → commonjs}/transports/smooth/is_mp4_embedded_track.js +0 -0
  2903. /package/dist/{_esm5.processed → commonjs}/utils/monotonic_timestamp.d.ts +0 -0
  2904. /package/dist/{_esm5.processed → commonjs}/utils/monotonic_timestamp.js +0 -0
@@ -1,8 +1,7 @@
1
- "use strict";
2
1
  /**
3
2
  * Copyright 2015 CANAL+ Group
4
3
  *
5
- * Licensed under the Apache License, Version 2.0 (the "License");publicapi
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
5
  * you may not use this file except in compliance with the License.
7
6
  * You may obtain a copy of the License at
8
7
  *
@@ -14,115 +13,211 @@
14
13
  * See the License for the specific language governing permissions and
15
14
  * limitations under the License.
16
15
  */
17
- Object.defineProperty(exports, "__esModule", { value: true });
16
+ var __extends = (this && this.__extends) || (function () {
17
+ var extendStatics = function (d, b) {
18
+ extendStatics = Object.setPrototypeOf ||
19
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
20
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
21
+ return extendStatics(d, b);
22
+ };
23
+ return function (d, b) {
24
+ if (typeof b !== "function" && b !== null)
25
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
26
+ extendStatics(d, b);
27
+ function __() { this.constructor = d; }
28
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
29
+ };
30
+ })();
31
+ var __assign = (this && this.__assign) || function () {
32
+ __assign = Object.assign || function(t) {
33
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
34
+ s = arguments[i];
35
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
36
+ t[p] = s[p];
37
+ }
38
+ return t;
39
+ };
40
+ return __assign.apply(this, arguments);
41
+ };
18
42
  /**
19
43
  * This file defines the public API for the RxPlayer.
20
44
  * It also starts the different sub-parts of the player on various API calls.
21
45
  */
22
- const compat_1 = require("../../compat");
46
+ import { events, exitFullscreen, getStartDate, isFullscreen, requestFullscreen, } from "../../compat";
23
47
  /* eslint-disable-next-line max-len */
24
- const can_rely_on_video_visibility_and_size_1 = require("../../compat/can_rely_on_video_visibility_and_size");
25
- const config_1 = require("../../config");
26
- const errors_1 = require("../../errors");
27
- const features_1 = require("../../features");
28
- const log_1 = require("../../log");
29
- const array_find_1 = require("../../utils/array_find");
30
- const array_includes_1 = require("../../utils/array_includes");
31
- const assert_1 = require("../../utils/assert");
32
- const assert_unreachable_1 = require("../../utils/assert_unreachable");
33
- const event_emitter_1 = require("../../utils/event_emitter");
34
- const id_generator_1 = require("../../utils/id_generator");
35
- const is_null_or_undefined_1 = require("../../utils/is_null_or_undefined");
36
- const object_assign_1 = require("../../utils/object_assign");
37
- const ranges_1 = require("../../utils/ranges");
38
- const reference_1 = require("../../utils/reference");
39
- const task_canceller_1 = require("../../utils/task_canceller");
40
- const decrypt_1 = require("../decrypt");
41
- const option_utils_1 = require("./option_utils");
42
- const playback_observer_1 = require("./playback_observer");
43
- const tracks_store_1 = require("./track_management/tracks_store");
44
- const utils_1 = require("./utils");
48
+ import canRelyOnVideoVisibilityAndSize from "../../compat/can_rely_on_video_visibility_and_size";
49
+ import config from "../../config";
50
+ import { ErrorCodes, ErrorTypes, formatError, MediaError, } from "../../errors";
51
+ import features, { addFeatures, } from "../../features";
52
+ import log from "../../log";
53
+ import areArraysOfNumbersEqual from "../../utils/are_arrays_of_numbers_equal";
54
+ import arrayIncludes from "../../utils/array_includes";
55
+ import assert from "../../utils/assert";
56
+ import EventEmitter from "../../utils/event_emitter";
57
+ import idGenerator from "../../utils/id_generator";
58
+ import isNullOrUndefined from "../../utils/is_null_or_undefined";
59
+ import objectAssign from "../../utils/object_assign";
60
+ import { getLeftSizeOfRange, getPlayedSizeOfRange, getSizeOfRange, } from "../../utils/ranges";
61
+ import SharedReference, { createMappedReference, } from "../../utils/reference";
62
+ import TaskCanceller from "../../utils/task_canceller";
63
+ import warnOnce from "../../utils/warn_once";
64
+ import { clearOnStop, disposeDecryptionResources, getKeySystemConfiguration, getCurrentKeySystem, } from "../decrypt";
65
+ import { checkReloadOptions, parseConstructorOptions, parseLoadVideoOptions, } from "./option_utils";
66
+ import PlaybackObserver from "./playback_observer";
67
+ import TrackChoiceManager from "./tracks_management/track_choice_manager";
68
+ import { constructPlayerStateReference, emitPlayPauseEvents, emitSeekEvents, isLoadedState, } from "./utils";
45
69
  /* eslint-disable @typescript-eslint/naming-convention */
46
- const generateContentId = (0, id_generator_1.default)();
47
- const { getPictureOnPictureStateRef, getVideoVisibilityRef, getElementResolutionRef, getScreenResolutionRef } = compat_1.events;
70
+ var generateContentId = idGenerator();
71
+ var getPageActivityRef = events.getPageActivityRef, getPictureOnPictureStateRef = events.getPictureOnPictureStateRef, getVideoVisibilityRef = events.getVideoVisibilityRef, getVideoWidthRef = events.getVideoWidthRef, onFullscreenChange = events.onFullscreenChange, onTextTrackAdded = events.onTextTrackAdded, onTextTrackRemoved = events.onTextTrackRemoved;
48
72
  /**
49
73
  * @class Player
50
74
  * @extends EventEmitter
51
75
  */
52
- class Player extends event_emitter_1.default {
53
- /** All possible Error types emitted by the RxPlayer. */
54
- static get ErrorTypes() {
55
- return errors_1.ErrorTypes;
56
- }
57
- /** All possible Error codes emitted by the RxPlayer. */
58
- static get ErrorCodes() {
59
- return errors_1.ErrorCodes;
60
- }
61
- /**
62
- * Current log level.
63
- * Update current log level.
64
- * Should be either (by verbosity ascending):
65
- * - "NONE"
66
- * - "ERROR"
67
- * - "WARNING"
68
- * - "INFO"
69
- * - "DEBUG"
70
- * Any other value will be translated to "NONE".
71
- */
72
- static get LogLevel() {
73
- return log_1.default.getLevel();
74
- }
75
- static set LogLevel(logLevel) {
76
- log_1.default.setLevel(logLevel);
77
- }
78
- /**
79
- * Add feature(s) to the RxPlayer.
80
- * @param {Array.<Object>} featureList - Features wanted.
81
- */
82
- static addFeatures(featureList) {
83
- (0, features_1.addFeatures)(featureList);
84
- }
76
+ var Player = /** @class */ (function (_super) {
77
+ __extends(Player, _super);
85
78
  /**
86
79
  * @constructor
87
80
  * @param {Object} options
88
81
  */
89
- constructor(options = {}) {
90
- super();
91
- const { baseBandwidth, videoResolutionLimit, maxBufferAhead, maxBufferBehind, throttleVideoBitrateWhenHidden, videoElement, wantedBufferAhead, maxVideoBufferSize } = (0, option_utils_1.parseConstructorOptions)(options);
92
- const { DEFAULT_UNMUTED_VOLUME } = config_1.default.getCurrent();
82
+ function Player(options) {
83
+ if (options === void 0) { options = {}; }
84
+ var _a, _b;
85
+ var _this = _super.call(this) || this;
86
+ var _c = parseConstructorOptions(options), initialAudioBitrate = _c.initialAudioBitrate, initialVideoBitrate = _c.initialVideoBitrate, limitVideoWidth = _c.limitVideoWidth, minAudioBitrate = _c.minAudioBitrate, minVideoBitrate = _c.minVideoBitrate, maxAudioBitrate = _c.maxAudioBitrate, maxBufferAhead = _c.maxBufferAhead, maxBufferBehind = _c.maxBufferBehind, maxVideoBitrate = _c.maxVideoBitrate, preferredAudioTracks = _c.preferredAudioTracks, preferredTextTracks = _c.preferredTextTracks, preferredVideoTracks = _c.preferredVideoTracks, throttleWhenHidden = _c.throttleWhenHidden, throttleVideoBitrateWhenHidden = _c.throttleVideoBitrateWhenHidden, videoElement = _c.videoElement, wantedBufferAhead = _c.wantedBufferAhead, maxVideoBufferSize = _c.maxVideoBufferSize, stopAtEnd = _c.stopAtEnd;
87
+ var DEFAULT_UNMUTED_VOLUME = config.getCurrent().DEFAULT_UNMUTED_VOLUME;
93
88
  // Workaround to support Firefox autoplay on FF 42.
94
89
  // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1194624
95
90
  videoElement.preload = "auto";
96
- this.version = /* PLAYER_VERSION */ "4.0.0-dev.2023102700";
97
- this.log = log_1.default;
98
- this.state = "STOPPED";
99
- this.videoElement = videoElement;
100
- const destroyCanceller = new task_canceller_1.default();
101
- this._destroyCanceller = destroyCanceller;
102
- this._priv_pictureInPictureRef = getPictureOnPictureStateRef(videoElement, destroyCanceller.signal);
103
- this._priv_speed = new reference_1.default(videoElement.playbackRate, this._destroyCanceller.signal);
104
- this._priv_preferTrickModeTracks = false;
105
- this._priv_contentLock = new reference_1.default(false, this._destroyCanceller.signal);
106
- this._priv_bufferOptions = {
107
- wantedBufferAhead: new reference_1.default(wantedBufferAhead, this._destroyCanceller.signal),
108
- maxBufferAhead: new reference_1.default(maxBufferAhead, this._destroyCanceller.signal),
109
- maxBufferBehind: new reference_1.default(maxBufferBehind, this._destroyCanceller.signal),
110
- maxVideoBufferSize: new reference_1.default(maxVideoBufferSize, this._destroyCanceller.signal),
91
+ _this.version = /* PLAYER_VERSION */ "3.33.0-canal.2023111400";
92
+ _this.log = log;
93
+ _this.state = "STOPPED";
94
+ _this.videoElement = videoElement;
95
+ var destroyCanceller = new TaskCanceller();
96
+ _this._destroyCanceller = destroyCanceller;
97
+ _this._priv_pictureInPictureRef = getPictureOnPictureStateRef(videoElement, destroyCanceller.signal);
98
+ /** @deprecated */
99
+ onFullscreenChange(videoElement, function () {
100
+ /* eslint-disable import/no-deprecated */
101
+ _this.trigger("fullscreenChange", _this.isFullscreen());
102
+ /* eslint-enable import/no-deprecated */
103
+ }, destroyCanceller.signal);
104
+ /** Store last known TextTrack array linked to the media element. */
105
+ var prevTextTracks = [];
106
+ for (var i = 0; i < ((_a = videoElement.textTracks) === null || _a === void 0 ? void 0 : _a.length); i++) {
107
+ var textTrack = (_b = videoElement.textTracks) === null || _b === void 0 ? void 0 : _b[i];
108
+ if (!isNullOrUndefined(textTrack)) {
109
+ prevTextTracks.push(textTrack);
110
+ }
111
+ }
112
+ /** Callback called when a TextTrack element is added or removed. */
113
+ var onTextTrackChanges = function (_evt) {
114
+ var evt = _evt;
115
+ var target = evt.target;
116
+ var textTrackArr = [];
117
+ for (var i = 0; i < target.length; i++) {
118
+ var textTrack = target[i];
119
+ textTrackArr.push(textTrack);
120
+ }
121
+ var oldTextTracks = prevTextTracks;
122
+ prevTextTracks = textTrackArr;
123
+ // We can have two consecutive textTrackChanges with the exact same
124
+ // payload when we perform multiple texttrack operations before the event
125
+ // loop is freed.
126
+ if (oldTextTracks.length !== textTrackArr.length) {
127
+ _this._priv_onNativeTextTracksNext(textTrackArr);
128
+ return;
129
+ }
130
+ for (var i = 0; i < oldTextTracks.length; i++) {
131
+ if (oldTextTracks[i] !== textTrackArr[i]) {
132
+ _this._priv_onNativeTextTracksNext(textTrackArr);
133
+ return;
134
+ }
135
+ }
136
+ return;
111
137
  };
112
- this._priv_bitrateInfos = {
113
- lastBitrates: { audio: baseBandwidth,
114
- video: baseBandwidth },
138
+ if (!isNullOrUndefined(videoElement.textTracks)) {
139
+ onTextTrackAdded(videoElement.textTracks, onTextTrackChanges, destroyCanceller.signal);
140
+ onTextTrackRemoved(videoElement.textTracks, onTextTrackChanges, destroyCanceller.signal);
141
+ }
142
+ _this._priv_speed = new SharedReference(videoElement.playbackRate, _this._destroyCanceller.signal);
143
+ _this._priv_preferTrickModeTracks = false;
144
+ _this._priv_contentLock = new SharedReference(false, _this._destroyCanceller.signal);
145
+ _this._priv_bufferOptions = {
146
+ wantedBufferAhead: new SharedReference(wantedBufferAhead, _this._destroyCanceller.signal),
147
+ maxBufferAhead: new SharedReference(maxBufferAhead, _this._destroyCanceller.signal),
148
+ maxBufferBehind: new SharedReference(maxBufferBehind, _this._destroyCanceller.signal),
149
+ maxVideoBufferSize: new SharedReference(maxVideoBufferSize, _this._destroyCanceller.signal),
115
150
  };
116
- this._priv_throttleVideoBitrateWhenHidden = throttleVideoBitrateWhenHidden;
117
- this._priv_videoResolutionLimit = videoResolutionLimit;
118
- this._priv_mutedMemory = DEFAULT_UNMUTED_VOLUME;
119
- this._priv_currentError = null;
120
- this._priv_contentInfos = null;
121
- this._priv_contentEventsMemory = {};
122
- this._priv_setPlayerState("STOPPED" /* PLAYER_STATES.STOPPED */);
123
- this._priv_reloadingMetadata = {};
124
- this._priv_lastAutoPlay = false;
125
- }
151
+ _this._priv_bitrateInfos = {
152
+ lastBitrates: { audio: initialAudioBitrate,
153
+ video: initialVideoBitrate },
154
+ minAutoBitrates: { audio: new SharedReference(minAudioBitrate, _this._destroyCanceller.signal),
155
+ video: new SharedReference(minVideoBitrate, _this._destroyCanceller.signal) },
156
+ maxAutoBitrates: { audio: new SharedReference(maxAudioBitrate, _this._destroyCanceller.signal),
157
+ video: new SharedReference(maxVideoBitrate, _this._destroyCanceller.signal) },
158
+ manualBitrates: { audio: new SharedReference(-1, _this._destroyCanceller.signal),
159
+ video: new SharedReference(-1, _this._destroyCanceller.signal) },
160
+ };
161
+ _this._priv_throttleWhenHidden = throttleWhenHidden;
162
+ _this._priv_throttleVideoBitrateWhenHidden = throttleVideoBitrateWhenHidden;
163
+ _this._priv_limitVideoWidth = limitVideoWidth;
164
+ _this._priv_mutedMemory = DEFAULT_UNMUTED_VOLUME;
165
+ _this._priv_currentError = null;
166
+ _this._priv_contentInfos = null;
167
+ _this._priv_contentEventsMemory = {};
168
+ _this._priv_stopAtEnd = stopAtEnd;
169
+ _this._priv_setPlayerState("STOPPED" /* PLAYER_STATES.STOPPED */);
170
+ _this._priv_preferredAudioTracks = preferredAudioTracks;
171
+ _this._priv_preferredTextTracks = preferredTextTracks;
172
+ _this._priv_preferredVideoTracks = preferredVideoTracks;
173
+ _this._priv_reloadingMetadata = {};
174
+ _this._priv_lastAutoPlay = false;
175
+ return _this;
176
+ }
177
+ Object.defineProperty(Player, "ErrorTypes", {
178
+ /** All possible Error types emitted by the RxPlayer. */
179
+ get: function () {
180
+ return ErrorTypes;
181
+ },
182
+ enumerable: false,
183
+ configurable: true
184
+ });
185
+ Object.defineProperty(Player, "ErrorCodes", {
186
+ /** All possible Error codes emitted by the RxPlayer. */
187
+ get: function () {
188
+ return ErrorCodes;
189
+ },
190
+ enumerable: false,
191
+ configurable: true
192
+ });
193
+ Object.defineProperty(Player, "LogLevel", {
194
+ /**
195
+ * Current log level.
196
+ * Update current log level.
197
+ * Should be either (by verbosity ascending):
198
+ * - "NONE"
199
+ * - "ERROR"
200
+ * - "WARNING"
201
+ * - "INFO"
202
+ * - "DEBUG"
203
+ * Any other value will be translated to "NONE".
204
+ */
205
+ get: function () {
206
+ return log.getLevel();
207
+ },
208
+ set: function (logLevel) {
209
+ log.setLevel(logLevel);
210
+ },
211
+ enumerable: false,
212
+ configurable: true
213
+ });
214
+ /**
215
+ * Add feature(s) to the RxPlayer.
216
+ * @param {Array.<Object>} featureList - Features wanted.
217
+ */
218
+ Player.addFeatures = function (featureList) {
219
+ addFeatures(featureList);
220
+ };
126
221
  /**
127
222
  * Register a new callback for a player event event.
128
223
  *
@@ -131,17 +226,17 @@ class Player extends event_emitter_1.default {
131
226
  * The callback will take as argument the eventual payload of the event
132
227
  * (single argument).
133
228
  */
134
- addEventListener(evt, fn) {
229
+ Player.prototype.addEventListener = function (evt, fn) {
135
230
  // The EventEmitter's `addEventListener` method takes an optional third
136
231
  // argument that we do not want to expose in the public API.
137
232
  // We thus overwrite that function to remove any possible usage of that
138
233
  // third argument.
139
- return super.addEventListener(evt, fn);
140
- }
234
+ return _super.prototype.addEventListener.call(this, evt, fn);
235
+ };
141
236
  /**
142
237
  * Stop the playback for the current content.
143
238
  */
144
- stop() {
239
+ Player.prototype.stop = function () {
145
240
  if (this._priv_contentInfos !== null) {
146
241
  this._priv_contentInfos.currentContentCanceller.cancel();
147
242
  }
@@ -149,21 +244,21 @@ class Player extends event_emitter_1.default {
149
244
  if (this.state !== "STOPPED" /* PLAYER_STATES.STOPPED */) {
150
245
  this._priv_setPlayerState("STOPPED" /* PLAYER_STATES.STOPPED */);
151
246
  }
152
- }
247
+ };
153
248
  /**
154
249
  * Free the resources used by the player.
155
250
  * /!\ The player cannot be "used" anymore after this method has been called.
156
251
  */
157
- dispose() {
252
+ Player.prototype.dispose = function () {
158
253
  // free resources linked to the loaded content
159
254
  this.stop();
160
255
  if (this.videoElement !== null) {
161
256
  // free resources used for decryption management
162
- (0, decrypt_1.disposeDecryptionResources)(this.videoElement)
163
- .catch((err) => {
164
- const message = err instanceof Error ? err.message :
257
+ disposeDecryptionResources(this.videoElement)
258
+ .catch(function (err) {
259
+ var message = err instanceof Error ? err.message :
165
260
  "Unknown error";
166
- log_1.default.error("API: Could not dispose decryption resources: " + message);
261
+ log.error("API: Could not dispose decryption resources: " + message);
167
262
  });
168
263
  }
169
264
  // free resources linked to the Player instance
@@ -171,30 +266,30 @@ class Player extends event_emitter_1.default {
171
266
  this._priv_reloadingMetadata = {};
172
267
  // un-attach video element
173
268
  this.videoElement = null;
174
- }
269
+ };
175
270
  /**
176
271
  * Load a new video.
177
272
  * @param {Object} opts
178
273
  */
179
- loadVideo(opts) {
180
- const options = (0, option_utils_1.parseLoadVideoOptions)(opts);
181
- log_1.default.info("API: Calling loadvideo", options.url, options.transport);
182
- this._priv_reloadingMetadata = { options };
274
+ Player.prototype.loadVideo = function (opts) {
275
+ var options = parseLoadVideoOptions(opts);
276
+ log.info("API: Calling loadvideo", options.url, options.transport);
277
+ this._priv_reloadingMetadata = { options: options };
183
278
  this._priv_initializeContentPlayback(options);
184
279
  this._priv_lastAutoPlay = options.autoPlay;
185
- }
280
+ };
186
281
  /**
187
282
  * Reload the last loaded content.
188
283
  * @param {Object} reloadOpts
189
284
  */
190
- reload(reloadOpts) {
191
- var _a, _b;
192
- const { options, manifest, reloadPosition, reloadInPause } = this._priv_reloadingMetadata;
285
+ Player.prototype.reload = function (reloadOpts) {
286
+ var _a, _b, _c;
287
+ var _d = this._priv_reloadingMetadata, options = _d.options, manifest = _d.manifest, reloadPosition = _d.reloadPosition, reloadInPause = _d.reloadInPause;
193
288
  if (options === undefined) {
194
289
  throw new Error("API: Can't reload without having previously loaded a content.");
195
290
  }
196
- (0, option_utils_1.checkReloadOptions)(reloadOpts);
197
- let startAt;
291
+ checkReloadOptions(reloadOpts);
292
+ var startAt;
198
293
  if (((_a = reloadOpts === null || reloadOpts === void 0 ? void 0 : reloadOpts.reloadAt) === null || _a === void 0 ? void 0 : _a.position) !== undefined) {
199
294
  startAt = { position: reloadOpts.reloadAt.position };
200
295
  }
@@ -209,206 +304,269 @@ class Player extends event_emitter_1.default {
209
304
  else if (reloadPosition !== undefined) {
210
305
  startAt = { position: reloadPosition };
211
306
  }
212
- let autoPlay;
307
+ var autoPlay;
213
308
  if ((reloadOpts === null || reloadOpts === void 0 ? void 0 : reloadOpts.autoPlay) !== undefined) {
214
309
  autoPlay = reloadOpts.autoPlay;
215
310
  }
216
311
  else if (reloadInPause !== undefined) {
217
312
  autoPlay = !reloadInPause;
218
313
  }
219
- const newOptions = Object.assign(Object.assign({}, options), { initialManifest: manifest });
314
+ var keySystems;
315
+ if ((reloadOpts === null || reloadOpts === void 0 ? void 0 : reloadOpts.keySystems) !== undefined) {
316
+ keySystems = reloadOpts.keySystems;
317
+ }
318
+ else if (((_c = this._priv_reloadingMetadata.options) === null || _c === void 0 ? void 0 : _c.keySystems) !== undefined) {
319
+ keySystems = this._priv_reloadingMetadata.options.keySystems;
320
+ }
321
+ var newOptions = __assign(__assign({}, options), { initialManifest: manifest });
220
322
  if (startAt !== undefined) {
221
323
  newOptions.startAt = startAt;
222
324
  }
223
325
  if (autoPlay !== undefined) {
224
326
  newOptions.autoPlay = autoPlay;
225
327
  }
328
+ if (keySystems !== undefined) {
329
+ newOptions.keySystems = keySystems;
330
+ }
226
331
  this._priv_initializeContentPlayback(newOptions);
227
- }
228
- createDebugElement(element) {
229
- if (features_1.default.createDebugElement === null) {
332
+ };
333
+ Player.prototype.createDebugElement = function (element) {
334
+ if (features.createDebugElement === null) {
230
335
  throw new Error("Feature `DEBUG_ELEMENT` not added to the RxPlayer");
231
336
  }
232
- const canceller = new task_canceller_1.default();
233
- features_1.default.createDebugElement(element, this, canceller.signal);
337
+ var canceller = new TaskCanceller();
338
+ features.createDebugElement(element, this, canceller.signal);
234
339
  return {
235
- dispose() {
340
+ dispose: function () {
236
341
  canceller.cancel();
237
342
  },
238
343
  };
239
- }
344
+ };
240
345
  /**
241
346
  * From given options, initialize content playback.
242
347
  * @param {Object} options
243
348
  */
244
- _priv_initializeContentPlayback(options) {
245
- var _a, _b, _c, _d;
246
- const { autoPlay, defaultAudioTrackSwitchingMode, enableFastSwitching, initialManifest, keySystems, lowLatencyMode, minimumManifestUpdateInterval, requestConfig, onCodecSwitch, startAt, transport, checkMediaSegmentIntegrity, manifestLoader, referenceDateTime, representationFilter, segmentLoader, serverSyncInfos, __priv_manifestUpdateUrl, __priv_patchLastSegmentInSidx, url } = options;
349
+ Player.prototype._priv_initializeContentPlayback = function (options) {
350
+ var _this = this;
351
+ var autoPlay = options.autoPlay, audioTrackSwitchingMode = options.audioTrackSwitchingMode, defaultAudioTrack = options.defaultAudioTrack, defaultTextTrack = options.defaultTextTrack, enableFastSwitching = options.enableFastSwitching, initialManifest = options.initialManifest, keySystems = options.keySystems, lowLatencyMode = options.lowLatencyMode, manualBitrateSwitchingMode = options.manualBitrateSwitchingMode, minimumManifestUpdateInterval = options.minimumManifestUpdateInterval, networkConfig = options.networkConfig, onCodecSwitch = options.onCodecSwitch, startAt = options.startAt, transport = options.transport, transportOptions = options.transportOptions, url = options.url;
247
352
  // Perform multiple checks on the given options
248
353
  if (this.videoElement === null) {
249
354
  throw new Error("the attached video element is disposed");
250
355
  }
251
- const isDirectFile = transport === "directfile";
356
+ var isDirectFile = transport === "directfile";
252
357
  /** Emit to stop the current content. */
253
- const currentContentCanceller = new task_canceller_1.default();
254
- const videoElement = this.videoElement;
255
- let initializer;
256
- let mediaElementTracksStore = null;
358
+ var currentContentCanceller = new TaskCanceller();
359
+ var videoElement = this.videoElement;
360
+ var initializer;
361
+ var mediaElementTrackChoiceManager = null;
257
362
  if (!isDirectFile) {
258
- const transportFn = features_1.default.transports[transport];
363
+ var transportFn = features.transports[transport];
259
364
  if (typeof transportFn !== "function") {
260
365
  // Stop previous content and reset its state
261
366
  this.stop();
262
367
  this._priv_currentError = null;
263
- throw new Error(`transport "${transport}" not supported`);
368
+ throw new Error("transport \"".concat(transport, "\" not supported"));
264
369
  }
265
- if (features_1.default.mediaSourceInit === null) {
370
+ if (features.mediaSourceInit === null) {
266
371
  throw new Error("MediaSource streaming not supported");
267
372
  }
268
- const transportPipelines = transportFn({ lowLatencyMode,
269
- checkMediaSegmentIntegrity,
270
- manifestLoader,
271
- referenceDateTime,
272
- representationFilter,
273
- segmentLoader,
274
- serverSyncInfos,
275
- __priv_manifestUpdateUrl,
276
- __priv_patchLastSegmentInSidx });
373
+ var transportPipelines = transportFn(transportOptions);
374
+ var offlineRetry = networkConfig.offlineRetry, segmentRetry = networkConfig.segmentRetry, manifestRetry = networkConfig.manifestRetry, manifestRequestTimeout = networkConfig.manifestRequestTimeout, segmentRequestTimeout = networkConfig.segmentRequestTimeout;
277
375
  /** Interface used to load and refresh the Manifest. */
278
- const manifestRequestSettings = { lowLatencyMode,
279
- maxRetry: (_a = requestConfig.manifest) === null || _a === void 0 ? void 0 : _a.maxRetry,
280
- requestTimeout: (_b = requestConfig.manifest) === null || _b === void 0 ? void 0 : _b.timeout,
281
- minimumManifestUpdateInterval,
282
- initialManifest };
283
- const relyOnVideoVisibilityAndSize = (0, can_rely_on_video_visibility_and_size_1.default)();
284
- const throttlers = { throttleBitrate: {},
285
- limitResolution: {} };
376
+ var manifestRequestSettings = { lowLatencyMode: lowLatencyMode, maxRetryRegular: manifestRetry,
377
+ maxRetryOffline: offlineRetry,
378
+ requestTimeout: manifestRequestTimeout, minimumManifestUpdateInterval: minimumManifestUpdateInterval, initialManifest: initialManifest };
379
+ var relyOnVideoVisibilityAndSize = canRelyOnVideoVisibilityAndSize();
380
+ var throttlers = { throttle: {},
381
+ throttleBitrate: {},
382
+ limitWidth: {} };
383
+ if (this._priv_throttleWhenHidden) {
384
+ if (!relyOnVideoVisibilityAndSize) {
385
+ log.warn("API: Can't apply throttleWhenHidden because " +
386
+ "browser can't be trusted for visibility.");
387
+ }
388
+ else {
389
+ throttlers.throttle = {
390
+ video: createMappedReference(getPageActivityRef(currentContentCanceller.signal), function (isActive) { return isActive ? Infinity : 0; }, currentContentCanceller.signal),
391
+ };
392
+ }
393
+ }
286
394
  if (this._priv_throttleVideoBitrateWhenHidden) {
287
395
  if (!relyOnVideoVisibilityAndSize) {
288
- log_1.default.warn("API: Can't apply throttleVideoBitrateWhenHidden because " +
396
+ log.warn("API: Can't apply throttleVideoBitrateWhenHidden because " +
289
397
  "browser can't be trusted for visibility.");
290
398
  }
291
399
  else {
292
400
  throttlers.throttleBitrate = {
293
- video: (0, reference_1.createMappedReference)(getVideoVisibilityRef(this._priv_pictureInPictureRef, currentContentCanceller.signal), isActive => isActive ? Infinity : 0, currentContentCanceller.signal),
401
+ video: createMappedReference(getVideoVisibilityRef(this._priv_pictureInPictureRef, currentContentCanceller.signal), function (isActive) { return isActive ? Infinity : 0; }, currentContentCanceller.signal),
294
402
  };
295
403
  }
296
404
  }
297
- if (this._priv_videoResolutionLimit === "videoElement") {
405
+ if (this._priv_limitVideoWidth) {
298
406
  if (!relyOnVideoVisibilityAndSize) {
299
- log_1.default.warn("API: Can't apply videoResolutionLimit because browser can't be " +
407
+ log.warn("API: Can't apply limitVideoWidth because browser can't be " +
300
408
  "trusted for video size.");
301
409
  }
302
410
  else {
303
- throttlers.limitResolution = {
304
- video: getElementResolutionRef(videoElement, this._priv_pictureInPictureRef, currentContentCanceller.signal),
411
+ throttlers.limitWidth = {
412
+ video: getVideoWidthRef(videoElement, this._priv_pictureInPictureRef, currentContentCanceller.signal),
305
413
  };
306
414
  }
307
415
  }
308
- else if (this._priv_videoResolutionLimit === "screen") {
309
- throttlers.limitResolution = {
310
- video: getScreenResolutionRef(currentContentCanceller.signal),
311
- };
312
- }
313
416
  /** Options used by the adaptive logic. */
314
- const adaptiveOptions = {
417
+ var adaptiveOptions = {
315
418
  initialBitrates: this._priv_bitrateInfos.lastBitrates,
316
- lowLatencyMode,
317
- throttlers,
419
+ lowLatencyMode: lowLatencyMode,
420
+ manualBitrates: this._priv_bitrateInfos.manualBitrates,
421
+ minAutoBitrates: this._priv_bitrateInfos.minAutoBitrates,
422
+ maxAutoBitrates: this._priv_bitrateInfos.maxAutoBitrates,
423
+ throttlers: throttlers,
318
424
  };
319
425
  /** Options used by the TextTrack SegmentBuffer. */
320
- const textTrackOptions = options.textTrackMode === "native" ?
321
- { textTrackMode: "native" } :
426
+ var textTrackOptions = options.textTrackMode === "native" ?
427
+ { textTrackMode: "native",
428
+ hideNativeSubtitle: options.hideNativeSubtitle } :
322
429
  { textTrackMode: "html",
323
430
  textTrackElement: options.textTrackElement };
324
- const bufferOptions = (0, object_assign_1.default)({ enableFastSwitching,
325
- onCodecSwitch }, this._priv_bufferOptions);
326
- const segmentRequestOptions = { lowLatencyMode,
327
- maxRetry: (_c = requestConfig.segment) === null || _c === void 0 ? void 0 : _c.maxRetry,
328
- requestTimeout: (_d = requestConfig.segment) === null || _d === void 0 ? void 0 : _d.timeout };
329
- initializer = new features_1.default.mediaSourceInit({
330
- adaptiveOptions,
331
- autoPlay,
332
- bufferOptions,
333
- keySystems,
334
- lowLatencyMode,
335
- manifestRequestSettings,
431
+ var bufferOptions = objectAssign({ audioTrackSwitchingMode: audioTrackSwitchingMode, enableFastSwitching: enableFastSwitching, manualBitrateSwitchingMode: manualBitrateSwitchingMode, onCodecSwitch: onCodecSwitch }, this._priv_bufferOptions);
432
+ var segmentRequestOptions = { lowLatencyMode: lowLatencyMode, maxRetryRegular: segmentRetry,
433
+ requestTimeout: segmentRequestTimeout,
434
+ maxRetryOffline: offlineRetry };
435
+ initializer = new features.mediaSourceInit({
436
+ adaptiveOptions: adaptiveOptions,
437
+ autoPlay: autoPlay,
438
+ bufferOptions: bufferOptions,
439
+ keySystems: keySystems,
440
+ lowLatencyMode: lowLatencyMode,
441
+ manifestRequestSettings: manifestRequestSettings,
336
442
  transport: transportPipelines,
337
- segmentRequestOptions,
443
+ segmentRequestOptions: segmentRequestOptions,
338
444
  speed: this._priv_speed,
339
- startAt,
340
- textTrackOptions,
341
- url,
445
+ startAt: startAt,
446
+ textTrackOptions: textTrackOptions,
447
+ url: url,
342
448
  });
343
449
  }
344
450
  else {
345
- if (features_1.default.directfile === null) {
451
+ if (features.directfile === null) {
346
452
  this.stop();
347
453
  this._priv_currentError = null;
348
454
  throw new Error("DirectFile feature not activated in your build.");
349
455
  }
350
- else if ((0, is_null_or_undefined_1.default)(url)) {
456
+ else if (isNullOrUndefined(url)) {
351
457
  throw new Error("No URL for a DirectFile content");
352
458
  }
353
- mediaElementTracksStore =
354
- this._priv_initializeMediaElementTracksStore(currentContentCanceller.signal);
459
+ mediaElementTrackChoiceManager =
460
+ this._priv_initializeMediaElementTrackChoiceManager(defaultAudioTrack, defaultTextTrack, currentContentCanceller.signal);
355
461
  if (currentContentCanceller.isUsed()) {
356
462
  return;
357
463
  }
358
- initializer = new features_1.default.directfile.initDirectFile({ autoPlay,
359
- keySystems,
360
- speed: this._priv_speed,
361
- startAt,
362
- url });
464
+ initializer = new features.directfile.initDirectFile({ autoPlay: autoPlay, keySystems: keySystems, speed: this._priv_speed, startAt: startAt, url: url });
363
465
  }
364
466
  /** Future `this._priv_contentInfos` related to this content. */
365
- const contentInfos = {
467
+ var contentInfos = {
366
468
  contentId: generateContentId(),
367
469
  originalUrl: url,
368
- currentContentCanceller,
369
- defaultAudioTrackSwitchingMode,
370
- initializer,
371
- isDirectFile,
470
+ currentContentCanceller: currentContentCanceller,
471
+ initializer: initializer,
472
+ isDirectFile: isDirectFile,
372
473
  segmentBuffersStore: null,
474
+ thumbnails: null,
373
475
  manifest: null,
374
476
  currentPeriod: null,
375
477
  activeAdaptations: null,
376
478
  activeRepresentations: null,
377
- tracksStore: null,
378
- mediaElementTracksStore,
479
+ initialAudioTrack: defaultAudioTrack,
480
+ initialTextTrack: defaultTextTrack,
481
+ trackChoiceManager: null,
482
+ mediaElementTrackChoiceManager: mediaElementTrackChoiceManager,
379
483
  };
380
484
  // Bind events
381
- initializer.addEventListener("error", (error) => {
382
- this._priv_onFatalError(error, contentInfos);
485
+ initializer.addEventListener("error", function (error) {
486
+ var formattedError = formatError(error, {
487
+ defaultCode: "NONE",
488
+ defaultReason: "An unknown error stopped content playback.",
489
+ });
490
+ formattedError.fatal = true;
491
+ contentInfos.currentContentCanceller.cancel();
492
+ _this._priv_cleanUpCurrentContentState();
493
+ _this._priv_currentError = formattedError;
494
+ log.error("API: The player stopped because of an error", error instanceof Error ? error : "");
495
+ _this._priv_setPlayerState("STOPPED" /* PLAYER_STATES.STOPPED */);
496
+ // TODO This condition is here because the eventual callback called when the
497
+ // player state is updated can launch a new content, thus the error will not
498
+ // be here anymore, in which case triggering the "error" event is unwanted.
499
+ // This is very ugly though, and we should probable have a better solution
500
+ if (_this._priv_currentError === formattedError) {
501
+ _this.trigger("error", formattedError);
502
+ }
383
503
  });
384
- initializer.addEventListener("warning", (error) => {
385
- const formattedError = (0, errors_1.formatError)(error, {
504
+ initializer.addEventListener("warning", function (error) {
505
+ var formattedError = formatError(error, {
386
506
  defaultCode: "NONE",
387
507
  defaultReason: "An unknown error happened.",
388
508
  });
389
- log_1.default.warn("API: Sending warning:", formattedError);
390
- this.trigger("warning", formattedError);
509
+ log.warn("API: Sending warning:", formattedError);
510
+ _this.trigger("warning", formattedError);
391
511
  });
392
- initializer.addEventListener("reloadingMediaSource", (payload) => {
512
+ initializer.addEventListener("reloadingMediaSource", function (payload) {
393
513
  contentInfos.segmentBuffersStore = null;
394
- if (contentInfos.tracksStore !== null) {
395
- contentInfos.tracksStore.resetPeriodObjects();
514
+ if (contentInfos.trackChoiceManager !== null) {
515
+ contentInfos.trackChoiceManager.resetPeriods();
396
516
  }
397
- this._priv_lastAutoPlay = payload.autoPlay;
517
+ _this._priv_lastAutoPlay = payload.autoPlay;
518
+ });
519
+ initializer.addEventListener("inbandEvents", function (inbandEvents) {
520
+ return _this.trigger("inbandEvents", inbandEvents);
521
+ });
522
+ initializer.addEventListener("streamEvent", function (streamEvent) {
523
+ return _this.trigger("streamEvent", streamEvent);
524
+ });
525
+ initializer.addEventListener("streamEventSkip", function (streamEventSkip) {
526
+ return _this.trigger("streamEventSkip", streamEventSkip);
527
+ });
528
+ initializer.addEventListener("decipherabilityUpdate", function (decipherabilityUpdate) {
529
+ return _this.trigger("decipherabilityUpdate", decipherabilityUpdate);
398
530
  });
399
- initializer.addEventListener("inbandEvents", (inbandEvents) => this.trigger("inbandEvents", inbandEvents));
400
- initializer.addEventListener("streamEvent", (streamEvent) => this.trigger("streamEvent", streamEvent));
401
- initializer.addEventListener("streamEventSkip", (streamEventSkip) => this.trigger("streamEventSkip", streamEventSkip));
402
- initializer.addEventListener("activePeriodChanged", (periodInfo) => this._priv_onActivePeriodChanged(contentInfos, periodInfo));
403
- initializer.addEventListener("periodStreamReady", (periodReadyInfo) => this._priv_onPeriodStreamReady(contentInfos, periodReadyInfo));
404
- initializer.addEventListener("periodStreamCleared", (periodClearedInfo) => this._priv_onPeriodStreamCleared(contentInfos, periodClearedInfo));
405
- initializer.addEventListener("representationChange", (representationInfo) => this._priv_onRepresentationChange(contentInfos, representationInfo));
406
- initializer.addEventListener("adaptationChange", (adaptationInfo) => this._priv_onAdaptationChange(contentInfos, adaptationInfo));
407
- initializer.addEventListener("bitrateEstimateChange", (bitrateEstimateInfo) => this._priv_onBitrateEstimateChange(bitrateEstimateInfo));
408
- initializer.addEventListener("manifestReady", (manifest) => this._priv_onManifestReady(contentInfos, manifest));
409
- initializer.addEventListener("loaded", (evt) => {
531
+ initializer.addEventListener("activePeriodChanged", function (periodInfo) {
532
+ return _this._priv_onActivePeriodChanged(contentInfos, periodInfo);
533
+ });
534
+ initializer.addEventListener("periodStreamReady", function (periodReadyInfo) {
535
+ return _this._priv_onPeriodStreamReady(contentInfos, periodReadyInfo);
536
+ });
537
+ initializer.addEventListener("periodStreamCleared", function (periodClearedInfo) {
538
+ return _this._priv_onPeriodStreamCleared(contentInfos, periodClearedInfo);
539
+ });
540
+ initializer.addEventListener("representationChange", function (representationInfo) {
541
+ return _this._priv_onRepresentationChange(contentInfos, representationInfo);
542
+ });
543
+ initializer.addEventListener("adaptationChange", function (adaptationInfo) {
544
+ return _this._priv_onAdaptationChange(contentInfos, adaptationInfo);
545
+ });
546
+ initializer.addEventListener("bitrateEstimationChange", function (bitrateEstimationInfo) {
547
+ return _this._priv_onBitrateEstimationChange(bitrateEstimationInfo);
548
+ });
549
+ initializer.addEventListener("manifestReady", function (manifest) {
550
+ return _this._priv_onManifestReady(contentInfos, manifest);
551
+ });
552
+ initializer.addEventListener("loaded", function (evt) {
410
553
  contentInfos.segmentBuffersStore = evt.segmentBuffersStore;
411
554
  });
555
+ initializer.addEventListener("addedSegment", function (evt) {
556
+ // Manage image tracks
557
+ // @deprecated
558
+ var content = evt.content, segmentData = evt.segmentData;
559
+ if (content.adaptation.type === "image") {
560
+ if (!isNullOrUndefined(segmentData) &&
561
+ segmentData.type === "bif") {
562
+ var imageData = segmentData.data;
563
+ /* eslint-disable import/no-deprecated */
564
+ contentInfos.thumbnails = imageData;
565
+ _this.trigger("imageTrackUpdate", { data: contentInfos.thumbnails });
566
+ /* eslint-enable import/no-deprecated */
567
+ }
568
+ }
569
+ });
412
570
  // Now, that most events are linked, prepare the next content.
413
571
  initializer.prepare();
414
572
  // Now that the content is prepared, stop previous content and reset state
@@ -422,16 +580,16 @@ class Player extends event_emitter_1.default {
422
580
  // content.
423
581
  this.stop();
424
582
  /** Global "playback observer" which will emit playback conditions */
425
- const playbackObserver = new playback_observer_1.default(videoElement, {
583
+ var playbackObserver = new PlaybackObserver(videoElement, {
426
584
  withMediaSource: !isDirectFile,
427
- lowLatencyMode,
585
+ lowLatencyMode: lowLatencyMode,
428
586
  });
429
- currentContentCanceller.signal.register(() => {
587
+ currentContentCanceller.signal.register(function () {
430
588
  playbackObserver.stop();
431
589
  });
432
590
  // Update the RxPlayer's state at the right events
433
- const playerStateRef = (0, utils_1.constructPlayerStateReference)(initializer, videoElement, playbackObserver, currentContentCanceller.signal);
434
- currentContentCanceller.signal.register(() => {
591
+ var playerStateRef = constructPlayerStateReference(initializer, videoElement, playbackObserver, currentContentCanceller.signal);
592
+ currentContentCanceller.signal.register(function () {
435
593
  initializer.dispose();
436
594
  });
437
595
  /**
@@ -440,21 +598,21 @@ class Player extends event_emitter_1.default {
440
598
  * To call when either might change.
441
599
  * @param {string} state - The player state we're about to switch to.
442
600
  */
443
- const updateReloadingMetadata = (state) => {
601
+ var updateReloadingMetadata = function (state) {
444
602
  switch (state) {
445
603
  case "STOPPED":
446
604
  case "RELOADING":
447
605
  case "LOADING":
448
606
  break; // keep previous metadata
449
607
  case "ENDED":
450
- this._priv_reloadingMetadata.reloadInPause = true;
451
- this._priv_reloadingMetadata.reloadPosition =
608
+ _this._priv_reloadingMetadata.reloadInPause = true;
609
+ _this._priv_reloadingMetadata.reloadPosition =
452
610
  playbackObserver.getReference().getValue().position;
453
611
  break;
454
612
  default:
455
- const o = playbackObserver.getReference().getValue();
456
- this._priv_reloadingMetadata.reloadInPause = o.paused;
457
- this._priv_reloadingMetadata.reloadPosition = o.position;
613
+ var o = playbackObserver.getReference().getValue();
614
+ _this._priv_reloadingMetadata.reloadInPause = o.paused;
615
+ _this._priv_reloadingMetadata.reloadPosition = o.position;
458
616
  break;
459
617
  }
460
618
  };
@@ -463,41 +621,41 @@ class Player extends event_emitter_1.default {
463
621
  * events.
464
622
  * `null` when such events are not emitted currently.
465
623
  */
466
- let playPauseEventsCanceller = null;
624
+ var playPauseEventsCanceller = null;
467
625
  /**
468
626
  * Callback emitting `"play"` and `"pause`" events once the content is
469
627
  * loaded, starting from the state indicated in argument.
470
628
  * @param {boolean} willAutoPlay - If `false`, we're currently paused.
471
629
  */
472
- const triggerPlayPauseEventsWhenReady = (willAutoPlay) => {
630
+ var triggerPlayPauseEventsWhenReady = function (willAutoPlay) {
473
631
  if (playPauseEventsCanceller !== null) {
474
632
  playPauseEventsCanceller.cancel(); // cancel previous logic
475
633
  playPauseEventsCanceller = null;
476
634
  }
477
- playerStateRef.onUpdate((val, stopListeningToStateUpdates) => {
478
- if (!(0, utils_1.isLoadedState)(val)) {
635
+ playerStateRef.onUpdate(function (val, stopListeningToStateUpdates) {
636
+ if (!isLoadedState(val)) {
479
637
  return; // content not loaded yet: no event
480
638
  }
481
639
  stopListeningToStateUpdates();
482
640
  if (playPauseEventsCanceller !== null) {
483
641
  playPauseEventsCanceller.cancel();
484
642
  }
485
- playPauseEventsCanceller = new task_canceller_1.default();
643
+ playPauseEventsCanceller = new TaskCanceller();
486
644
  playPauseEventsCanceller.linkToSignal(currentContentCanceller.signal);
487
645
  if (willAutoPlay !== !videoElement.paused) {
488
646
  // paused status is not at the expected value on load: emit event
489
647
  if (videoElement.paused) {
490
- this.trigger("pause", null);
648
+ _this.trigger("pause", null);
491
649
  }
492
650
  else {
493
- this.trigger("play", null);
651
+ _this.trigger("play", null);
494
652
  }
495
653
  }
496
- (0, utils_1.emitPlayPauseEvents)(videoElement, () => this.trigger("play", null), () => this.trigger("pause", null), currentContentCanceller.signal);
654
+ emitPlayPauseEvents(videoElement, function () { return _this.trigger("play", null); }, function () { return _this.trigger("pause", null); }, currentContentCanceller.signal);
497
655
  }, { emitCurrentValue: false, clearSignal: currentContentCanceller.signal });
498
656
  };
499
657
  triggerPlayPauseEventsWhenReady(autoPlay);
500
- initializer.addEventListener("reloadingMediaSource", (payload) => {
658
+ initializer.addEventListener("reloadingMediaSource", function (payload) {
501
659
  triggerPlayPauseEventsWhenReady(payload.autoPlay);
502
660
  });
503
661
  /**
@@ -505,53 +663,105 @@ class Player extends event_emitter_1.default {
505
663
  * events.
506
664
  * `null` when such events are not emitted currently.
507
665
  */
508
- let seekEventsCanceller = null;
666
+ var seekEventsCanceller = null;
509
667
  // React to player state change
510
- playerStateRef.onUpdate((newState) => {
668
+ playerStateRef.onUpdate(function (newState) {
511
669
  updateReloadingMetadata(newState);
512
- this._priv_setPlayerState(newState);
670
+ _this._priv_setPlayerState(newState);
513
671
  if (currentContentCanceller.isUsed()) {
514
672
  return;
515
673
  }
516
674
  if (seekEventsCanceller !== null) {
517
- if (!(0, utils_1.isLoadedState)(this.state)) {
675
+ if (!isLoadedState(_this.state)) {
518
676
  seekEventsCanceller.cancel();
519
677
  seekEventsCanceller = null;
520
678
  }
521
679
  }
522
- else if ((0, utils_1.isLoadedState)(this.state)) {
523
- seekEventsCanceller = new task_canceller_1.default();
680
+ else if (isLoadedState(_this.state)) {
681
+ seekEventsCanceller = new TaskCanceller();
524
682
  seekEventsCanceller.linkToSignal(currentContentCanceller.signal);
525
- (0, utils_1.emitSeekEvents)(videoElement, playbackObserver, () => this.trigger("seeking", null), () => this.trigger("seeked", null), seekEventsCanceller.signal);
683
+ emitSeekEvents(videoElement, playbackObserver, function () { return _this.trigger("seeking", null); }, function () { return _this.trigger("seeked", null); }, seekEventsCanceller.signal);
684
+ }
685
+ // Previous call could have performed all kind of side-effects, thus,
686
+ // we re-check the current state associated to the RxPlayer
687
+ if (_this.state === "ENDED" /* PLAYER_STATES.ENDED */ && _this._priv_stopAtEnd) {
688
+ _this.stop();
526
689
  }
527
690
  }, { emitCurrentValue: true, clearSignal: currentContentCanceller.signal });
528
691
  // React to playback conditions change
529
- playbackObserver.listen((observation) => {
530
- updateReloadingMetadata(this.state);
531
- this._priv_triggerPositionUpdate(contentInfos, observation);
692
+ playbackObserver.listen(function (observation) {
693
+ updateReloadingMetadata(_this.state);
694
+ _this._priv_triggerPositionUpdate(contentInfos, observation);
532
695
  }, { clearSignal: currentContentCanceller.signal });
533
696
  this._priv_currentError = null;
534
697
  this._priv_contentInfos = contentInfos;
535
- currentContentCanceller.signal.register(() => {
698
+ currentContentCanceller.signal.register(function () {
536
699
  initializer.removeEventListener();
537
700
  });
538
701
  // initialize the content only when the lock is inactive
539
- this._priv_contentLock.onUpdate((isLocked, stopListeningToLock) => {
702
+ this._priv_contentLock.onUpdate(function (isLocked, stopListeningToLock) {
540
703
  if (!isLocked) {
541
704
  stopListeningToLock();
542
705
  // start playback!
543
706
  initializer.start(videoElement, playbackObserver);
544
707
  }
545
708
  }, { emitCurrentValue: true, clearSignal: currentContentCanceller.signal });
546
- }
709
+ };
547
710
  /**
548
711
  * Returns fatal error if one for the current content.
549
712
  * null otherwise.
550
713
  * @returns {Object|null} - The current Error (`null` when no error).
551
714
  */
552
- getError() {
715
+ Player.prototype.getError = function () {
553
716
  return this._priv_currentError;
554
- }
717
+ };
718
+ /**
719
+ * Returns manifest/playlist object.
720
+ * null if the player is STOPPED.
721
+ * @deprecated
722
+ * @returns {Manifest|null} - The current Manifest (`null` when not known).
723
+ */
724
+ Player.prototype.getManifest = function () {
725
+ warnOnce("getManifest is deprecated." +
726
+ " Please open an issue if you used this API.");
727
+ if (this._priv_contentInfos === null) {
728
+ return null;
729
+ }
730
+ return this._priv_contentInfos.manifest;
731
+ };
732
+ /**
733
+ * Returns Adaptations (tracks) for every currently playing type
734
+ * (audio/video/text...).
735
+ * @deprecated
736
+ * @returns {Object|null} - The current Adaptation objects, per type (`null`
737
+ * when none is known for now.
738
+ */
739
+ Player.prototype.getCurrentAdaptations = function () {
740
+ warnOnce("getCurrentAdaptations is deprecated." +
741
+ " Please open an issue if you used this API.");
742
+ if (this._priv_contentInfos === null) {
743
+ return null;
744
+ }
745
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, activeAdaptations = _a.activeAdaptations;
746
+ if (currentPeriod === null ||
747
+ activeAdaptations === null ||
748
+ isNullOrUndefined(activeAdaptations[currentPeriod.id])) {
749
+ return null;
750
+ }
751
+ return activeAdaptations[currentPeriod.id];
752
+ };
753
+ /**
754
+ * Returns representations (qualities) for every currently playing type
755
+ * (audio/video/text...).
756
+ * @deprecated
757
+ * @returns {Object|null} - The current Representation objects, per type
758
+ * (`null` when none is known for now.
759
+ */
760
+ Player.prototype.getCurrentRepresentations = function () {
761
+ warnOnce("getCurrentRepresentations is deprecated." +
762
+ " Please open an issue if you used this API.");
763
+ return this._priv_getCurrentRepresentations();
764
+ };
555
765
  /**
556
766
  * Returns the media DOM element used by the player.
557
767
  * You should not its HTML5 API directly and use the player's method instead,
@@ -559,30 +769,50 @@ class Player extends event_emitter_1.default {
559
769
  * @returns {HTMLMediaElement|null} - The HTMLMediaElement used (`null` when
560
770
  * disposed)
561
771
  */
562
- getVideoElement() {
772
+ Player.prototype.getVideoElement = function () {
563
773
  return this.videoElement;
564
- }
774
+ };
775
+ /**
776
+ * If one returns the first native text-track element attached to the media element.
777
+ * @deprecated
778
+ * @returns {TextTrack} - The native TextTrack attached (`null` when none)
779
+ */
780
+ Player.prototype.getNativeTextTrack = function () {
781
+ warnOnce("getNativeTextTrack is deprecated." +
782
+ " Please open an issue if you used this API.");
783
+ if (this.videoElement === null) {
784
+ throw new Error("Disposed player");
785
+ }
786
+ var videoElement = this.videoElement;
787
+ var textTracks = videoElement.textTracks;
788
+ if (textTracks.length > 0) {
789
+ return videoElement.textTracks[0];
790
+ }
791
+ else {
792
+ return null;
793
+ }
794
+ };
565
795
  /**
566
796
  * Returns the player's current state.
567
797
  * @returns {string} - The current Player's state
568
798
  */
569
- getPlayerState() {
799
+ Player.prototype.getPlayerState = function () {
570
800
  return this.state;
571
- }
801
+ };
572
802
  /**
573
803
  * Returns true if a content is loaded.
574
804
  * @returns {Boolean} - `true` if a content is loaded, `false` otherwise.
575
805
  */
576
- isContentLoaded() {
577
- return !(0, array_includes_1.default)(["LOADING", "RELOADING", "STOPPED"], this.state);
578
- }
806
+ Player.prototype.isContentLoaded = function () {
807
+ return !arrayIncludes(["LOADING", "RELOADING", "STOPPED"], this.state);
808
+ };
579
809
  /**
580
810
  * Returns true if the player is buffering.
581
811
  * @returns {Boolean} - `true` if the player is buffering, `false` otherwise.
582
812
  */
583
- isBuffering() {
584
- return (0, array_includes_1.default)(["BUFFERING", "SEEKING", "LOADING", "RELOADING"], this.state);
585
- }
813
+ Player.prototype.isBuffering = function () {
814
+ return arrayIncludes(["BUFFERING", "SEEKING", "LOADING", "RELOADING"], this.state);
815
+ };
586
816
  /**
587
817
  * Returns the play/pause status of the player :
588
818
  * - when `LOADING` or `RELOADING`, returns the scheduled play/pause condition
@@ -592,9 +822,9 @@ class Player extends event_emitter_1.default {
592
822
  * @returns {Boolean} - `true` if the player is paused or will be after loading,
593
823
  * `false` otherwise.
594
824
  */
595
- isPaused() {
825
+ Player.prototype.isPaused = function () {
596
826
  if (this.videoElement) {
597
- if ((0, array_includes_1.default)(["LOADING", "RELOADING"], this.state)) {
827
+ if (arrayIncludes(["LOADING", "RELOADING"], this.state)) {
598
828
  return !this._priv_lastAutoPlay;
599
829
  }
600
830
  else {
@@ -602,52 +832,51 @@ class Player extends event_emitter_1.default {
602
832
  }
603
833
  }
604
834
  return true;
605
- }
835
+ };
606
836
  /**
607
837
  * Returns true if both:
608
838
  * - a content is loaded
609
839
  * - the content loaded is a live content
610
840
  * @returns {Boolean} - `true` if we're playing a live content, `false` otherwise.
611
841
  */
612
- isLive() {
842
+ Player.prototype.isLive = function () {
613
843
  if (this._priv_contentInfos === null) {
614
844
  return false;
615
845
  }
616
- const { isDirectFile, manifest } = this._priv_contentInfos;
846
+ var _a = this._priv_contentInfos, isDirectFile = _a.isDirectFile, manifest = _a.manifest;
617
847
  if (isDirectFile || manifest === null) {
618
848
  return false;
619
849
  }
620
850
  return manifest.isLive;
621
- }
851
+ };
622
852
  /**
623
853
  * Returns `true` if trickmode playback is active (usually through the usage
624
854
  * of the `setPlaybackRate` method), which means that the RxPlayer selects
625
855
  * "trickmode" video tracks in priority.
626
856
  * @returns {Boolean}
627
857
  */
628
- areTrickModeTracksEnabled() {
858
+ Player.prototype.areTrickModeTracksEnabled = function () {
629
859
  return this._priv_preferTrickModeTracks;
630
- }
860
+ };
631
861
  /**
632
- * Returns the URL(s) of the currently considered Manifest, or of the content for
862
+ * Returns the url of the currently considered Manifest, or of the content for
633
863
  * directfile content.
634
- * @returns {Array.<string>|undefined} - Current URL. `undefined` if not known
635
- * or no URL yet.
864
+ * @returns {string|undefined} - Current URL. `undefined` if not known or no
865
+ * URL yet.
636
866
  */
637
- getContentUrls() {
867
+ Player.prototype.getUrl = function () {
638
868
  if (this._priv_contentInfos === null) {
639
869
  return undefined;
640
870
  }
641
- const { isDirectFile, manifest, originalUrl } = this._priv_contentInfos;
871
+ var _a = this._priv_contentInfos, isDirectFile = _a.isDirectFile, manifest = _a.manifest, originalUrl = _a.originalUrl;
642
872
  if (isDirectFile) {
643
- return originalUrl === undefined ? undefined :
644
- [originalUrl];
873
+ return originalUrl;
645
874
  }
646
875
  if (manifest !== null) {
647
- return manifest.getUrls();
876
+ return manifest.getUrl();
648
877
  }
649
878
  return undefined;
650
- }
879
+ };
651
880
  /**
652
881
  * Update URL of the content currently being played (e.g. DASH's MPD).
653
882
  * @param {Array.<string>|undefined} urls - URLs to reach that content /
@@ -656,41 +885,67 @@ class Player extends event_emitter_1.default {
656
885
  * @param {boolean} params.refresh - If `true` the resource in question
657
886
  * (e.g. DASH's MPD) will be refreshed immediately.
658
887
  */
659
- updateContentUrls(urls, params) {
888
+ Player.prototype.updateContentUrls = function (urls, params) {
660
889
  if (this._priv_contentInfos === null) {
661
890
  throw new Error("No content loaded");
662
891
  }
663
- const refreshNow = (params === null || params === void 0 ? void 0 : params.refresh) === true;
892
+ var refreshNow = (params === null || params === void 0 ? void 0 : params.refresh) === true;
664
893
  this._priv_contentInfos.initializer.updateContentUrls(urls, refreshNow);
665
- }
894
+ };
666
895
  /**
667
896
  * Returns the video duration, in seconds.
668
897
  * NaN if no video is playing.
669
898
  * @returns {Number}
670
899
  */
671
- getMediaDuration() {
900
+ Player.prototype.getVideoDuration = function () {
672
901
  if (this.videoElement === null) {
673
902
  throw new Error("Disposed player");
674
903
  }
675
904
  return this.videoElement.duration;
676
- }
905
+ };
677
906
  /**
678
907
  * Returns in seconds the difference between:
679
908
  * - the end of the current contiguous loaded range.
680
909
  * - the current time
681
910
  * @returns {Number}
682
911
  */
683
- getCurrentBufferGap() {
912
+ Player.prototype.getVideoBufferGap = function () {
684
913
  if (this.videoElement === null) {
685
914
  throw new Error("Disposed player");
686
915
  }
687
- const videoElement = this.videoElement;
688
- const bufferGap = (0, ranges_1.getLeftSizeOfBufferedTimeRange)(videoElement.buffered, videoElement.currentTime);
689
- if (bufferGap === Infinity) {
690
- return 0;
916
+ var videoElement = this.videoElement;
917
+ return getLeftSizeOfRange(videoElement.buffered, videoElement.currentTime);
918
+ };
919
+ /**
920
+ * Returns in seconds the difference between:
921
+ * - the end of the current contiguous loaded range.
922
+ * - the start of the current contiguous loaded range.
923
+ * @returns {Number}
924
+ */
925
+ Player.prototype.getVideoLoadedTime = function () {
926
+ warnOnce("`getVideoLoadedTime` is deprecated and won't be present in the " +
927
+ "next major version");
928
+ if (this.videoElement === null) {
929
+ throw new Error("Disposed player");
691
930
  }
692
- return bufferGap;
693
- }
931
+ var videoElement = this.videoElement;
932
+ return getSizeOfRange(videoElement.buffered, videoElement.currentTime);
933
+ };
934
+ /**
935
+ * Returns in seconds the difference between:
936
+ * - the current time.
937
+ * - the start of the current contiguous loaded range.
938
+ * @returns {Number}
939
+ */
940
+ Player.prototype.getVideoPlayedTime = function () {
941
+ warnOnce("`getVideoPlayedTime` is deprecated and won't be present in the " +
942
+ "next major version");
943
+ if (this.videoElement === null) {
944
+ throw new Error("Disposed player");
945
+ }
946
+ var videoElement = this.videoElement;
947
+ return getPlayedSizeOfRange(videoElement.buffered, videoElement.currentTime);
948
+ };
694
949
  /**
695
950
  * Get the current position, in s, in wall-clock time.
696
951
  * That is:
@@ -705,27 +960,27 @@ class Player extends event_emitter_1.default {
705
960
  *
706
961
  * @returns {Number}
707
962
  */
708
- getWallClockTime() {
963
+ Player.prototype.getWallClockTime = function () {
709
964
  if (this.videoElement === null) {
710
965
  throw new Error("Disposed player");
711
966
  }
712
967
  if (this._priv_contentInfos === null) {
713
968
  return this.videoElement.currentTime;
714
969
  }
715
- const { isDirectFile, manifest } = this._priv_contentInfos;
970
+ var _a = this._priv_contentInfos, isDirectFile = _a.isDirectFile, manifest = _a.manifest;
716
971
  if (isDirectFile) {
717
- const startDate = (0, compat_1.getStartDate)(this.videoElement);
972
+ var startDate = getStartDate(this.videoElement);
718
973
  return (startDate !== null && startDate !== void 0 ? startDate : 0) + this.videoElement.currentTime;
719
974
  }
720
975
  if (manifest !== null) {
721
- const currentTime = this.videoElement.currentTime;
722
- const ast = manifest.availabilityStartTime !== undefined ?
976
+ var currentTime = this.videoElement.currentTime;
977
+ var ast = manifest.availabilityStartTime !== undefined ?
723
978
  manifest.availabilityStartTime :
724
979
  0;
725
980
  return currentTime + ast;
726
981
  }
727
982
  return 0;
728
- }
983
+ };
729
984
  /**
730
985
  * Get the current position, in seconds, of the video element.
731
986
  *
@@ -737,27 +992,27 @@ class Player extends event_emitter_1.default {
737
992
  *
738
993
  * @returns {Number}
739
994
  */
740
- getPosition() {
995
+ Player.prototype.getPosition = function () {
741
996
  if (this.videoElement === null) {
742
997
  throw new Error("Disposed player");
743
998
  }
744
999
  return this.videoElement.currentTime;
745
- }
1000
+ };
746
1001
  /**
747
1002
  * Returns the last stored content position, in seconds.
748
1003
  *
749
1004
  * @returns {number|undefined}
750
1005
  */
751
- getLastStoredContentPosition() {
1006
+ Player.prototype.getLastStoredContentPosition = function () {
752
1007
  return this._priv_reloadingMetadata.reloadPosition;
753
- }
1008
+ };
754
1009
  /**
755
1010
  * Returns the current playback rate at which the video plays.
756
1011
  * @returns {Number}
757
1012
  */
758
- getPlaybackRate() {
1013
+ Player.prototype.getPlaybackRate = function () {
759
1014
  return this._priv_speed.getValue();
760
- }
1015
+ };
761
1016
  /**
762
1017
  * Update the playback rate of the video.
763
1018
  *
@@ -814,95 +1069,164 @@ class Player extends event_emitter_1.default {
814
1069
  * @param {Number} rate
815
1070
  * @param {Object} opts
816
1071
  */
817
- setPlaybackRate(rate, opts) {
1072
+ Player.prototype.setPlaybackRate = function (rate, opts) {
818
1073
  var _a;
819
1074
  if (rate !== this._priv_speed.getValue()) {
820
1075
  this._priv_speed.setValue(rate);
821
1076
  }
822
- const preferTrickModeTracks = opts === null || opts === void 0 ? void 0 : opts.preferTrickModeTracks;
1077
+ var preferTrickModeTracks = opts === null || opts === void 0 ? void 0 : opts.preferTrickModeTracks;
823
1078
  if (typeof preferTrickModeTracks !== "boolean") {
824
1079
  return;
825
1080
  }
826
1081
  this._priv_preferTrickModeTracks = preferTrickModeTracks;
827
- const tracksStore = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.tracksStore;
828
- if (!(0, is_null_or_undefined_1.default)(tracksStore)) {
829
- if (preferTrickModeTracks && !tracksStore.isTrickModeEnabled()) {
830
- tracksStore.enableVideoTrickModeTracks();
1082
+ var trackChoiceManager = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.trackChoiceManager;
1083
+ if (!isNullOrUndefined(trackChoiceManager)) {
1084
+ if (preferTrickModeTracks && !trackChoiceManager.isTrickModeEnabled()) {
1085
+ trackChoiceManager.enableVideoTrickModeTracks();
831
1086
  }
832
- else if (!preferTrickModeTracks && tracksStore.isTrickModeEnabled()) {
833
- tracksStore.disableVideoTrickModeTracks();
1087
+ else if (!preferTrickModeTracks && trackChoiceManager.isTrickModeEnabled()) {
1088
+ trackChoiceManager.disableVideoTrickModeTracks();
834
1089
  }
835
1090
  }
836
- }
1091
+ };
837
1092
  /**
838
- * Returns video Representation currently considered for the current Period.
839
- *
840
- * Returns `null` if no video track is playing for the current Period.
841
- *
842
- * Returns `undefined` either when are not currently playing any Period or
843
- * when we don't know which Representation is playing.
844
- * @returns {Object|null|undefined}
1093
+ * Returns all available bitrates for the current video Adaptation.
1094
+ * @returns {Array.<Number>}
1095
+ */
1096
+ Player.prototype.getAvailableVideoBitrates = function () {
1097
+ if (this._priv_contentInfos === null) {
1098
+ return [];
1099
+ }
1100
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, activeAdaptations = _a.activeAdaptations;
1101
+ if (currentPeriod === null || activeAdaptations === null) {
1102
+ return [];
1103
+ }
1104
+ var adaptations = activeAdaptations[currentPeriod.id];
1105
+ if (adaptations === undefined || isNullOrUndefined(adaptations.video)) {
1106
+ return [];
1107
+ }
1108
+ return adaptations.video.getAvailableBitrates();
1109
+ };
1110
+ /**
1111
+ * Returns all available bitrates for the current audio Adaptation.
1112
+ * @returns {Array.<Number>}
1113
+ */
1114
+ Player.prototype.getAvailableAudioBitrates = function () {
1115
+ if (this._priv_contentInfos === null) {
1116
+ return [];
1117
+ }
1118
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, activeAdaptations = _a.activeAdaptations;
1119
+ if (currentPeriod === null || activeAdaptations === null) {
1120
+ return [];
1121
+ }
1122
+ var adaptations = activeAdaptations[currentPeriod.id];
1123
+ if (adaptations === undefined || isNullOrUndefined(adaptations.audio)) {
1124
+ return [];
1125
+ }
1126
+ return adaptations.audio.getAvailableBitrates();
1127
+ };
1128
+ /**
1129
+ * Returns the manual audio bitrate set. -1 if in AUTO mode.
1130
+ * @returns {Number}
845
1131
  */
846
- getVideoRepresentation() {
847
- const representations = this.__priv_getCurrentRepresentations();
848
- if (representations === null) {
1132
+ Player.prototype.getManualAudioBitrate = function () {
1133
+ return this._priv_bitrateInfos.manualBitrates.audio.getValue();
1134
+ };
1135
+ /**
1136
+ * Returns the manual video bitrate set. -1 if in AUTO mode.
1137
+ * @returns {Number}
1138
+ */
1139
+ Player.prototype.getManualVideoBitrate = function () {
1140
+ return this._priv_bitrateInfos.manualBitrates.video.getValue();
1141
+ };
1142
+ /**
1143
+ * Returns currently considered bitrate for video segments.
1144
+ * @returns {Number|undefined}
1145
+ */
1146
+ Player.prototype.getVideoBitrate = function () {
1147
+ var representations = this._priv_getCurrentRepresentations();
1148
+ if (representations === null || isNullOrUndefined(representations.video)) {
849
1149
  return undefined;
850
1150
  }
851
- return representations.video;
852
- }
1151
+ return representations.video.bitrate;
1152
+ };
853
1153
  /**
854
- * Returns audio Representation currently considered for the current Period.
855
- *
856
- * Returns `null` if no audio track is playing for the current Period.
857
- *
858
- * Returns `undefined` either when are not currently playing any Period or
859
- * when we don't know which Representation is playing.
860
- * @returns {Object|null|undefined}
1154
+ * Returns currently considered bitrate for audio segments.
1155
+ * @returns {Number|undefined}
861
1156
  */
862
- getAudioRepresentation() {
863
- const representations = this.__priv_getCurrentRepresentations();
864
- if (representations === null) {
1157
+ Player.prototype.getAudioBitrate = function () {
1158
+ var representations = this._priv_getCurrentRepresentations();
1159
+ if (representations === null || isNullOrUndefined(representations.audio)) {
865
1160
  return undefined;
866
1161
  }
867
- return representations.audio;
868
- }
1162
+ return representations.audio.bitrate;
1163
+ };
1164
+ /**
1165
+ * Returns minimum wanted video bitrate currently set.
1166
+ * @returns {Number}
1167
+ */
1168
+ Player.prototype.getMinVideoBitrate = function () {
1169
+ return this._priv_bitrateInfos.minAutoBitrates.video.getValue();
1170
+ };
1171
+ /**
1172
+ * Returns minimum wanted audio bitrate currently set.
1173
+ * @returns {Number}
1174
+ */
1175
+ Player.prototype.getMinAudioBitrate = function () {
1176
+ return this._priv_bitrateInfos.minAutoBitrates.audio.getValue();
1177
+ };
1178
+ /**
1179
+ * Returns maximum wanted video bitrate currently set.
1180
+ * @returns {Number}
1181
+ */
1182
+ Player.prototype.getMaxVideoBitrate = function () {
1183
+ return this._priv_bitrateInfos.maxAutoBitrates.video.getValue();
1184
+ };
1185
+ /**
1186
+ * Returns maximum wanted audio bitrate currently set.
1187
+ * @returns {Number}
1188
+ */
1189
+ Player.prototype.getMaxAudioBitrate = function () {
1190
+ return this._priv_bitrateInfos.maxAutoBitrates.audio.getValue();
1191
+ };
869
1192
  /**
870
1193
  * Play/Resume the current video.
871
1194
  * @returns {Promise}
872
1195
  */
873
- play() {
1196
+ Player.prototype.play = function () {
1197
+ var _this = this;
874
1198
  if (this.videoElement === null) {
875
1199
  throw new Error("Disposed player");
876
1200
  }
877
- const playPromise = this.videoElement.play();
1201
+ var playPromise = this.videoElement.play();
878
1202
  /* eslint-disable @typescript-eslint/unbound-method */
879
- if ((0, is_null_or_undefined_1.default)(playPromise) || typeof playPromise.catch !== "function") {
1203
+ if (isNullOrUndefined(playPromise) || typeof playPromise.catch !== "function") {
880
1204
  /* eslint-enable @typescript-eslint/unbound-method */
881
1205
  return Promise.resolve();
882
1206
  }
883
- return playPromise.catch((error) => {
1207
+ return playPromise.catch(function (error) {
884
1208
  if (error.name === "NotAllowedError") {
885
- const warning = new errors_1.MediaError("MEDIA_ERR_PLAY_NOT_ALLOWED", error.toString());
886
- this.trigger("warning", warning);
1209
+ var warning = new MediaError("MEDIA_ERR_PLAY_NOT_ALLOWED", error.toString());
1210
+ _this.trigger("warning", warning);
887
1211
  }
888
1212
  throw error;
889
1213
  });
890
- }
1214
+ };
891
1215
  /**
892
1216
  * Pause the current video.
893
1217
  */
894
- pause() {
1218
+ Player.prototype.pause = function () {
895
1219
  if (this.videoElement === null) {
896
1220
  throw new Error("Disposed player");
897
1221
  }
898
1222
  this.videoElement.pause();
899
- }
1223
+ };
900
1224
  /**
901
1225
  * Seek to a given absolute position.
902
1226
  * @param {Number|Object} time
903
1227
  * @returns {Number} - The time the player has seek to
904
1228
  */
905
- seekTo(time) {
1229
+ Player.prototype.seekTo = function (time) {
906
1230
  var _a;
907
1231
  if (this.videoElement === null) {
908
1232
  throw new Error("Disposed player");
@@ -910,29 +1234,29 @@ class Player extends event_emitter_1.default {
910
1234
  if (this._priv_contentInfos === null) {
911
1235
  throw new Error("player: no content loaded");
912
1236
  }
913
- const { isDirectFile, manifest } = this._priv_contentInfos;
1237
+ var _b = this._priv_contentInfos, isDirectFile = _b.isDirectFile, manifest = _b.manifest;
914
1238
  if (!isDirectFile && manifest === null) {
915
1239
  throw new Error("player: the content did not load yet");
916
1240
  }
917
- let positionWanted;
1241
+ var positionWanted;
918
1242
  if (typeof time === "number") {
919
1243
  positionWanted = time;
920
1244
  }
921
1245
  else if (typeof time === "object") {
922
- const timeObj = time;
923
- const currentTs = this.videoElement.currentTime;
924
- if (!(0, is_null_or_undefined_1.default)(timeObj.relative)) {
1246
+ var timeObj = time;
1247
+ var currentTs = this.videoElement.currentTime;
1248
+ if (!isNullOrUndefined(timeObj.relative)) {
925
1249
  positionWanted = currentTs + timeObj.relative;
926
1250
  }
927
- else if (!(0, is_null_or_undefined_1.default)(timeObj.position)) {
1251
+ else if (!isNullOrUndefined(timeObj.position)) {
928
1252
  positionWanted = timeObj.position;
929
1253
  }
930
- else if (!(0, is_null_or_undefined_1.default)(timeObj.wallClockTime)) {
1254
+ else if (!isNullOrUndefined(timeObj.wallClockTime)) {
931
1255
  if (manifest !== null) {
932
1256
  positionWanted = timeObj.wallClockTime - ((_a = manifest.availabilityStartTime) !== null && _a !== void 0 ? _a : 0);
933
1257
  }
934
1258
  else if (isDirectFile && this.videoElement !== null) {
935
- const startDate = (0, compat_1.getStartDate)(this.videoElement);
1259
+ var startDate = getStartDate(this.videoElement);
936
1260
  if (startDate !== undefined) {
937
1261
  positionWanted = timeObj.wallClockTime - startDate;
938
1262
  }
@@ -950,129 +1274,241 @@ class Player extends event_emitter_1.default {
950
1274
  if (positionWanted === undefined) {
951
1275
  throw new Error("invalid time given");
952
1276
  }
953
- log_1.default.info("API: API Seek to", positionWanted);
1277
+ log.info("API: API Seek to", positionWanted);
954
1278
  this.videoElement.currentTime = positionWanted;
955
1279
  return positionWanted;
956
- }
1280
+ };
1281
+ /**
1282
+ * Returns true if the media element is full screen.
1283
+ * @deprecated
1284
+ * @returns {Boolean}
1285
+ */
1286
+ Player.prototype.isFullscreen = function () {
1287
+ warnOnce("isFullscreen is deprecated." +
1288
+ " Fullscreen management should now be managed by the application");
1289
+ return isFullscreen();
1290
+ };
1291
+ /**
1292
+ * Set/exit fullScreen.
1293
+ * @deprecated
1294
+ * @param {Boolean} [goFull=true] - if false, exit full screen.
1295
+ */
1296
+ Player.prototype.setFullscreen = function (goFull) {
1297
+ if (goFull === void 0) { goFull = true; }
1298
+ warnOnce("setFullscreen is deprecated." +
1299
+ " Fullscreen management should now be managed by the application");
1300
+ if (this.videoElement === null) {
1301
+ throw new Error("Disposed player");
1302
+ }
1303
+ if (goFull) {
1304
+ requestFullscreen(this.videoElement);
1305
+ }
1306
+ else {
1307
+ exitFullscreen();
1308
+ }
1309
+ };
1310
+ /**
1311
+ * Exit from full screen mode.
1312
+ * @deprecated
1313
+ */
1314
+ Player.prototype.exitFullscreen = function () {
1315
+ warnOnce("exitFullscreen is deprecated." +
1316
+ " Fullscreen management should now be managed by the application");
1317
+ exitFullscreen();
1318
+ };
957
1319
  /**
958
1320
  * Returns the current player's audio volume on the media element.
959
1321
  * From 0 (no audio) to 1 (maximum volume).
960
1322
  * @returns {Number}
961
1323
  */
962
- getVolume() {
1324
+ Player.prototype.getVolume = function () {
963
1325
  if (this.videoElement === null) {
964
1326
  throw new Error("Disposed player");
965
1327
  }
966
1328
  return this.videoElement.volume;
967
- }
1329
+ };
968
1330
  /**
969
1331
  * Set the player's audio volume. From 0 (no volume) to 1 (maximum volume).
970
1332
  * @param {Number} volume
971
1333
  */
972
- setVolume(volume) {
1334
+ Player.prototype.setVolume = function (volume) {
973
1335
  if (this.videoElement === null) {
974
1336
  throw new Error("Disposed player");
975
1337
  }
976
- const videoElement = this.videoElement;
1338
+ var videoElement = this.videoElement;
977
1339
  if (volume !== videoElement.volume) {
978
1340
  videoElement.volume = volume;
979
1341
  this.trigger("volumeChange", volume);
980
1342
  }
981
- }
1343
+ };
982
1344
  /**
983
1345
  * Returns true if the volume is set to 0. false otherwise.
984
1346
  * @returns {Boolean}
985
1347
  */
986
- isMute() {
1348
+ Player.prototype.isMute = function () {
987
1349
  return this.getVolume() === 0;
988
- }
1350
+ };
989
1351
  /**
990
1352
  * Set the volume to 0 and save current one for when unmuted.
991
1353
  */
992
- mute() {
1354
+ Player.prototype.mute = function () {
993
1355
  this._priv_mutedMemory = this.getVolume();
994
1356
  this.setVolume(0);
995
- }
1357
+ };
996
1358
  /**
997
1359
  * Set the volume back to when it was when mute was last called.
998
1360
  * If the volume was set to 0, set a default volume instead (see config).
999
1361
  */
1000
- unMute() {
1001
- const { DEFAULT_UNMUTED_VOLUME } = config_1.default.getCurrent();
1002
- const vol = this.getVolume();
1362
+ Player.prototype.unMute = function () {
1363
+ var DEFAULT_UNMUTED_VOLUME = config.getCurrent().DEFAULT_UNMUTED_VOLUME;
1364
+ var vol = this.getVolume();
1003
1365
  if (vol === 0) {
1004
1366
  this.setVolume(this._priv_mutedMemory === 0 ? DEFAULT_UNMUTED_VOLUME :
1005
1367
  this._priv_mutedMemory);
1006
1368
  }
1007
- }
1369
+ };
1370
+ /**
1371
+ * Force the video bitrate to a given value. Act as a ceil.
1372
+ * -1 to set it on AUTO Mode
1373
+ * @param {Number} btr
1374
+ */
1375
+ Player.prototype.setVideoBitrate = function (btr) {
1376
+ this._priv_bitrateInfos.manualBitrates.video.setValue(btr);
1377
+ };
1378
+ /**
1379
+ * Force the audio bitrate to a given value. Act as a ceil.
1380
+ * -1 to set it on AUTO Mode
1381
+ * @param {Number} btr
1382
+ */
1383
+ Player.prototype.setAudioBitrate = function (btr) {
1384
+ this._priv_bitrateInfos.manualBitrates.audio.setValue(btr);
1385
+ };
1386
+ /**
1387
+ * Update the minimum video bitrate the user can switch to.
1388
+ * @param {Number} btr
1389
+ */
1390
+ Player.prototype.setMinVideoBitrate = function (btr) {
1391
+ var maxVideoBitrate = this._priv_bitrateInfos.maxAutoBitrates.video.getValue();
1392
+ if (btr > maxVideoBitrate) {
1393
+ throw new Error("Invalid minimum video bitrate given. " +
1394
+ "Its value, \"".concat(btr, "\" is superior the current maximum ") +
1395
+ "video birate, \"".concat(maxVideoBitrate, "\"."));
1396
+ }
1397
+ this._priv_bitrateInfos.minAutoBitrates.video.setValue(btr);
1398
+ };
1399
+ /**
1400
+ * Update the minimum audio bitrate the user can switch to.
1401
+ * @param {Number} btr
1402
+ */
1403
+ Player.prototype.setMinAudioBitrate = function (btr) {
1404
+ var maxAudioBitrate = this._priv_bitrateInfos.maxAutoBitrates.audio.getValue();
1405
+ if (btr > maxAudioBitrate) {
1406
+ throw new Error("Invalid minimum audio bitrate given. " +
1407
+ "Its value, \"".concat(btr, "\" is superior the current maximum ") +
1408
+ "audio birate, \"".concat(maxAudioBitrate, "\"."));
1409
+ }
1410
+ this._priv_bitrateInfos.minAutoBitrates.audio.setValue(btr);
1411
+ };
1412
+ /**
1413
+ * Update the maximum video bitrate the user can switch to.
1414
+ * @param {Number} btr
1415
+ */
1416
+ Player.prototype.setMaxVideoBitrate = function (btr) {
1417
+ var minVideoBitrate = this._priv_bitrateInfos.minAutoBitrates.video.getValue();
1418
+ if (btr < minVideoBitrate) {
1419
+ throw new Error("Invalid maximum video bitrate given. " +
1420
+ "Its value, \"".concat(btr, "\" is inferior the current minimum ") +
1421
+ "video birate, \"".concat(minVideoBitrate, "\"."));
1422
+ }
1423
+ this._priv_bitrateInfos.maxAutoBitrates.video.setValue(btr);
1424
+ };
1425
+ /**
1426
+ * Update the maximum audio bitrate the user can switch to.
1427
+ * @param {Number} btr
1428
+ */
1429
+ Player.prototype.setMaxAudioBitrate = function (btr) {
1430
+ var minAudioBitrate = this._priv_bitrateInfos.minAutoBitrates.audio.getValue();
1431
+ if (btr < minAudioBitrate) {
1432
+ throw new Error("Invalid maximum audio bitrate given. " +
1433
+ "Its value, \"".concat(btr, "\" is inferior the current minimum ") +
1434
+ "audio birate, \"".concat(minAudioBitrate, "\"."));
1435
+ }
1436
+ this._priv_bitrateInfos.maxAutoBitrates.audio.setValue(btr);
1437
+ };
1008
1438
  /**
1009
1439
  * Set the max buffer size for the buffer behind the current position.
1010
1440
  * Every buffer data before will be removed.
1011
1441
  * @param {Number} depthInSeconds
1012
1442
  */
1013
- setMaxBufferBehind(depthInSeconds) {
1443
+ Player.prototype.setMaxBufferBehind = function (depthInSeconds) {
1014
1444
  this._priv_bufferOptions.maxBufferBehind.setValue(depthInSeconds);
1015
- }
1445
+ };
1016
1446
  /**
1017
1447
  * Set the max buffer size for the buffer behind the current position.
1018
1448
  * Every buffer data before will be removed.
1019
1449
  * @param {Number} depthInSeconds
1020
1450
  */
1021
- setMaxBufferAhead(depthInSeconds) {
1451
+ Player.prototype.setMaxBufferAhead = function (depthInSeconds) {
1022
1452
  this._priv_bufferOptions.maxBufferAhead.setValue(depthInSeconds);
1023
- }
1453
+ };
1024
1454
  /**
1025
1455
  * Set the max buffer size for the buffer ahead of the current position.
1026
1456
  * The player will stop downloading chunks when this size is reached.
1027
1457
  * @param {Number} sizeInSeconds
1028
1458
  */
1029
- setWantedBufferAhead(sizeInSeconds) {
1459
+ Player.prototype.setWantedBufferAhead = function (sizeInSeconds) {
1030
1460
  this._priv_bufferOptions.wantedBufferAhead.setValue(sizeInSeconds);
1031
- }
1461
+ };
1032
1462
  /**
1033
1463
  * Set the max buffer size the buffer should take in memory
1034
1464
  * The player . will stop downloading chunks when this size is reached.
1035
1465
  * @param {Number} sizeInKBytes
1036
1466
  */
1037
- setMaxVideoBufferSize(sizeInKBytes) {
1467
+ Player.prototype.setMaxVideoBufferSize = function (sizeInKBytes) {
1038
1468
  this._priv_bufferOptions.maxVideoBufferSize.setValue(sizeInKBytes);
1039
- }
1469
+ };
1040
1470
  /**
1041
1471
  * Returns the max buffer size for the buffer behind the current position.
1042
1472
  * @returns {Number}
1043
1473
  */
1044
- getMaxBufferBehind() {
1474
+ Player.prototype.getMaxBufferBehind = function () {
1045
1475
  return this._priv_bufferOptions.maxBufferBehind.getValue();
1046
- }
1476
+ };
1047
1477
  /**
1048
1478
  * Returns the max buffer size for the buffer behind the current position.
1049
1479
  * @returns {Number}
1050
1480
  */
1051
- getMaxBufferAhead() {
1481
+ Player.prototype.getMaxBufferAhead = function () {
1052
1482
  return this._priv_bufferOptions.maxBufferAhead.getValue();
1053
- }
1483
+ };
1054
1484
  /**
1055
1485
  * Returns the max buffer size for the buffer ahead of the current position.
1056
1486
  * @returns {Number}
1057
1487
  */
1058
- getWantedBufferAhead() {
1488
+ Player.prototype.getWantedBufferAhead = function () {
1059
1489
  return this._priv_bufferOptions.wantedBufferAhead.getValue();
1060
- }
1490
+ };
1061
1491
  /**
1062
1492
  * Returns the max buffer memory size for the buffer in kilobytes
1063
1493
  * @returns {Number}
1064
1494
  */
1065
- getMaxVideoBufferSize() {
1495
+ Player.prototype.getMaxVideoBufferSize = function () {
1066
1496
  return this._priv_bufferOptions.maxVideoBufferSize.getValue();
1067
- }
1068
- getCurrentPeriod() {
1069
- var _a;
1070
- const currentPeriod = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.currentPeriod;
1071
- if ((0, is_null_or_undefined_1.default)(currentPeriod)) {
1072
- return null;
1497
+ };
1498
+ /**
1499
+ * Returns type of current keysystem (e.g. playready, widevine) if the content
1500
+ * is encrypted. null otherwise.
1501
+ * @deprecated
1502
+ * @returns {string|null}
1503
+ */
1504
+ Player.prototype.getCurrentKeySystem = function () {
1505
+ warnOnce("`getCurrentKeySystem` is deprecated." +
1506
+ "Please use the `getKeySystemConfiguration` method instead.");
1507
+ if (this.videoElement === null) {
1508
+ throw new Error("Disposed player");
1073
1509
  }
1074
- return { id: currentPeriod.id, start: currentPeriod.start, end: currentPeriod.end };
1075
- }
1510
+ return getCurrentKeySystem(this.videoElement);
1511
+ };
1076
1512
  /**
1077
1513
  * Returns both the name of the key system (e.g. `"com.widevine.alpha"`) and
1078
1514
  * the `MediaKeySystemConfiguration` currently associated to the
@@ -1081,388 +1517,380 @@ class Player extends event_emitter_1.default {
1081
1517
  * Returns `null` if no such capabilities is associated or if unknown.
1082
1518
  * @returns {Object|null}
1083
1519
  */
1084
- getKeySystemConfiguration() {
1520
+ Player.prototype.getKeySystemConfiguration = function () {
1085
1521
  if (this.videoElement === null) {
1086
1522
  throw new Error("Disposed player");
1087
1523
  }
1088
- const values = (0, decrypt_1.getKeySystemConfiguration)(this.videoElement);
1524
+ var values = getKeySystemConfiguration(this.videoElement);
1089
1525
  if (values === null) {
1090
1526
  return null;
1091
1527
  }
1092
1528
  return { keySystem: values[0], configuration: values[1] };
1093
- }
1529
+ };
1094
1530
  /**
1095
- * Returns the list of available Periods for which the current audio, video or
1096
- * text track can now be changed.
1097
- * @returns {Array.<Object>}
1531
+ * Returns every available audio tracks for the current Period.
1532
+ * @returns {Array.<Object>|null}
1098
1533
  */
1099
- getAvailablePeriods() {
1534
+ Player.prototype.getAvailableAudioTracks = function () {
1535
+ var _a;
1100
1536
  if (this._priv_contentInfos === null) {
1101
1537
  return [];
1102
1538
  }
1103
- const { isDirectFile, tracksStore } = this._priv_contentInfos;
1539
+ var _b = this._priv_contentInfos, currentPeriod = _b.currentPeriod, isDirectFile = _b.isDirectFile, trackChoiceManager = _b.trackChoiceManager, mediaElementTrackChoiceManager = _b.mediaElementTrackChoiceManager;
1104
1540
  if (isDirectFile) {
1105
- return [];
1541
+ return (_a = mediaElementTrackChoiceManager === null || mediaElementTrackChoiceManager === void 0 ? void 0 : mediaElementTrackChoiceManager.getAvailableAudioTracks()) !== null && _a !== void 0 ? _a : [];
1106
1542
  }
1107
- if (tracksStore === null) {
1543
+ if (trackChoiceManager === null || currentPeriod === null) {
1108
1544
  return [];
1109
1545
  }
1110
- return tracksStore.getAvailablePeriods().slice();
1111
- }
1546
+ return trackChoiceManager.getAvailableAudioTracks(currentPeriod);
1547
+ };
1112
1548
  /**
1113
- * Returns every available audio tracks for a given Period - or the current
1114
- * one if no `periodId` is given.
1115
- * @param {string|undefined} [periodId]
1116
- * @returns {Array.<Object>}
1549
+ * Returns every available text tracks for the current Period.
1550
+ * @returns {Array.<Object>|null}
1117
1551
  */
1118
- getAvailableAudioTracks(periodId) {
1552
+ Player.prototype.getAvailableTextTracks = function () {
1119
1553
  var _a;
1120
1554
  if (this._priv_contentInfos === null) {
1121
1555
  return [];
1122
1556
  }
1123
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1557
+ var _b = this._priv_contentInfos, currentPeriod = _b.currentPeriod, isDirectFile = _b.isDirectFile, trackChoiceManager = _b.trackChoiceManager, mediaElementTrackChoiceManager = _b.mediaElementTrackChoiceManager;
1124
1558
  if (isDirectFile) {
1125
- return (_a = mediaElementTracksStore === null || mediaElementTracksStore === void 0 ? void 0 : mediaElementTracksStore.getAvailableAudioTracks()) !== null && _a !== void 0 ? _a : [];
1559
+ return (_a = mediaElementTrackChoiceManager === null || mediaElementTrackChoiceManager === void 0 ? void 0 : mediaElementTrackChoiceManager.getAvailableTextTracks()) !== null && _a !== void 0 ? _a : [];
1126
1560
  }
1127
- return this._priv_callTracksStoreGetterSetter(periodId, [], (tcm, periodRef) => { var _a; return (_a = tcm.getAvailableAudioTracks(periodRef)) !== null && _a !== void 0 ? _a : []; });
1128
- }
1129
- /**
1130
- * Returns every available text tracks for a given Period - or the current
1131
- * one if no `periodId` is given.
1132
- * @param {string|undefined} [periodId]
1133
- * @returns {Array.<Object>}
1134
- */
1135
- getAvailableTextTracks(periodId) {
1136
- var _a;
1137
- if (this._priv_contentInfos === null) {
1561
+ if (trackChoiceManager === null || currentPeriod === null) {
1138
1562
  return [];
1139
1563
  }
1140
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1141
- if (isDirectFile) {
1142
- return (_a = mediaElementTracksStore === null || mediaElementTracksStore === void 0 ? void 0 : mediaElementTracksStore.getAvailableTextTracks()) !== null && _a !== void 0 ? _a : [];
1143
- }
1144
- return this._priv_callTracksStoreGetterSetter(periodId, [], (tcm, periodRef) => { var _a; return (_a = tcm.getAvailableTextTracks(periodRef)) !== null && _a !== void 0 ? _a : []; });
1145
- }
1564
+ return trackChoiceManager.getAvailableTextTracks(currentPeriod);
1565
+ };
1146
1566
  /**
1147
1567
  * Returns every available video tracks for the current Period.
1148
- * @param {string|undefined} [periodId]
1149
- * @returns {Array.<Object>}
1568
+ * @returns {Array.<Object>|null}
1150
1569
  */
1151
- getAvailableVideoTracks(periodId) {
1570
+ Player.prototype.getAvailableVideoTracks = function () {
1152
1571
  var _a;
1153
1572
  if (this._priv_contentInfos === null) {
1154
1573
  return [];
1155
1574
  }
1156
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1575
+ var _b = this._priv_contentInfos, currentPeriod = _b.currentPeriod, isDirectFile = _b.isDirectFile, trackChoiceManager = _b.trackChoiceManager, mediaElementTrackChoiceManager = _b.mediaElementTrackChoiceManager;
1157
1576
  if (isDirectFile) {
1158
- return (_a = mediaElementTracksStore === null || mediaElementTracksStore === void 0 ? void 0 : mediaElementTracksStore.getAvailableVideoTracks()) !== null && _a !== void 0 ? _a : [];
1577
+ return (_a = mediaElementTrackChoiceManager === null || mediaElementTrackChoiceManager === void 0 ? void 0 : mediaElementTrackChoiceManager.getAvailableVideoTracks()) !== null && _a !== void 0 ? _a : [];
1159
1578
  }
1160
- return this._priv_callTracksStoreGetterSetter(periodId, [], (tcm, periodRef) => { var _a; return (_a = tcm.getAvailableVideoTracks(periodRef)) !== null && _a !== void 0 ? _a : []; });
1161
- }
1579
+ if (trackChoiceManager === null || currentPeriod === null) {
1580
+ return [];
1581
+ }
1582
+ return trackChoiceManager.getAvailableVideoTracks(currentPeriod);
1583
+ };
1162
1584
  /**
1163
1585
  * Returns currently chosen audio language for the current Period.
1164
- * @param {string|undefined} [periodId]
1165
- * @returns {Object|null|undefined}
1586
+ * @returns {string}
1166
1587
  */
1167
- getAudioTrack(periodId) {
1588
+ Player.prototype.getAudioTrack = function () {
1168
1589
  if (this._priv_contentInfos === null) {
1169
1590
  return undefined;
1170
1591
  }
1171
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1592
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1172
1593
  if (isDirectFile) {
1173
- if (mediaElementTracksStore === null) {
1594
+ if (mediaElementTrackChoiceManager === null) {
1174
1595
  return undefined;
1175
1596
  }
1176
- return mediaElementTracksStore.getChosenAudioTrack();
1597
+ return mediaElementTrackChoiceManager.getChosenAudioTrack();
1177
1598
  }
1178
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.getChosenAudioTrack(periodRef));
1179
- }
1599
+ if (trackChoiceManager === null || currentPeriod === null) {
1600
+ return undefined;
1601
+ }
1602
+ return trackChoiceManager.getChosenAudioTrack(currentPeriod);
1603
+ };
1180
1604
  /**
1181
1605
  * Returns currently chosen subtitle for the current Period.
1182
- * @param {string|undefined} [periodId]
1183
- * @returns {Object|null|undefined}
1606
+ * @returns {string}
1184
1607
  */
1185
- getTextTrack(periodId) {
1608
+ Player.prototype.getTextTrack = function () {
1186
1609
  if (this._priv_contentInfos === null) {
1187
1610
  return undefined;
1188
1611
  }
1189
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1612
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1190
1613
  if (isDirectFile) {
1191
- if (mediaElementTracksStore === null) {
1614
+ if (mediaElementTrackChoiceManager === null) {
1192
1615
  return undefined;
1193
1616
  }
1194
- return mediaElementTracksStore.getChosenTextTrack();
1617
+ return mediaElementTrackChoiceManager.getChosenTextTrack();
1195
1618
  }
1196
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.getChosenTextTrack(periodRef));
1197
- }
1619
+ if (trackChoiceManager === null || currentPeriod === null) {
1620
+ return undefined;
1621
+ }
1622
+ return trackChoiceManager.getChosenTextTrack(currentPeriod);
1623
+ };
1198
1624
  /**
1199
1625
  * Returns currently chosen video track for the current Period.
1200
- * @param {string|undefined} [periodId]
1201
- * @returns {Object|null|undefined}
1626
+ * @returns {string}
1202
1627
  */
1203
- getVideoTrack(periodId) {
1628
+ Player.prototype.getVideoTrack = function () {
1204
1629
  if (this._priv_contentInfos === null) {
1205
1630
  return undefined;
1206
1631
  }
1207
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1632
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1208
1633
  if (isDirectFile) {
1209
- if (mediaElementTracksStore === null) {
1634
+ if (mediaElementTrackChoiceManager === null) {
1210
1635
  return undefined;
1211
1636
  }
1212
- return mediaElementTracksStore.getChosenVideoTrack();
1637
+ return mediaElementTrackChoiceManager.getChosenVideoTrack();
1213
1638
  }
1214
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.getChosenVideoTrack(periodRef));
1215
- }
1639
+ if (trackChoiceManager === null || currentPeriod === null) {
1640
+ return undefined;
1641
+ }
1642
+ return trackChoiceManager.getChosenVideoTrack(currentPeriod);
1643
+ };
1216
1644
  /**
1217
1645
  * Update the audio language for the current Period.
1218
- * @param {string | object} arg
1219
- * @throws Error - the current content has no TracksStore.
1646
+ * @param {string} audioId
1647
+ * @throws Error - the current content has no TrackChoiceManager.
1220
1648
  * @throws Error - the given id is linked to no audio track.
1221
1649
  */
1222
- setAudioTrack(arg) {
1223
- var _a;
1650
+ Player.prototype.setAudioTrack = function (audioId) {
1224
1651
  if (this._priv_contentInfos === null) {
1225
1652
  throw new Error("No content loaded");
1226
1653
  }
1227
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1654
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1228
1655
  if (isDirectFile) {
1229
1656
  try {
1230
- const audioId = typeof arg === "string" ? arg :
1231
- arg.trackId;
1232
- mediaElementTracksStore === null || mediaElementTracksStore === void 0 ? void 0 : mediaElementTracksStore.setAudioTrackById(audioId);
1657
+ mediaElementTrackChoiceManager === null || mediaElementTrackChoiceManager === void 0 ? void 0 : mediaElementTrackChoiceManager.setAudioTrackById(audioId);
1233
1658
  return;
1234
1659
  }
1235
1660
  catch (e) {
1236
1661
  throw new Error("player: unknown audio track");
1237
1662
  }
1238
1663
  }
1239
- let periodId;
1240
- let trackId;
1241
- let switchingMode;
1242
- let reprsToLock = null;
1243
- if (typeof arg === "string") {
1244
- trackId = arg;
1664
+ if (trackChoiceManager === null || currentPeriod === null) {
1665
+ throw new Error("No compatible content launched.");
1245
1666
  }
1246
- else {
1247
- trackId = arg.trackId;
1248
- periodId = arg.periodId;
1249
- switchingMode = arg.switchingMode;
1250
- reprsToLock = (_a = arg.lockedRepresentations) !== null && _a !== void 0 ? _a : null;
1667
+ try {
1668
+ trackChoiceManager.setAudioTrackByID(currentPeriod, audioId);
1251
1669
  }
1252
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.setAudioTrack(periodRef, trackId, switchingMode, reprsToLock));
1253
- }
1670
+ catch (e) {
1671
+ throw new Error("player: unknown audio track");
1672
+ }
1673
+ };
1254
1674
  /**
1255
1675
  * Update the text language for the current Period.
1256
- * @param {string | Object} arg
1257
- * @throws Error - the current content has no TracksStore.
1676
+ * @param {string} sub
1677
+ * @throws Error - the current content has no TrackChoiceManager.
1258
1678
  * @throws Error - the given id is linked to no text track.
1259
1679
  */
1260
- setTextTrack(arg) {
1680
+ Player.prototype.setTextTrack = function (textId) {
1261
1681
  if (this._priv_contentInfos === null) {
1262
1682
  throw new Error("No content loaded");
1263
1683
  }
1264
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1684
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1265
1685
  if (isDirectFile) {
1266
1686
  try {
1267
- const textId = typeof arg === "string" ? arg :
1268
- arg.trackId;
1269
- mediaElementTracksStore === null || mediaElementTracksStore === void 0 ? void 0 : mediaElementTracksStore.setTextTrackById(textId);
1687
+ mediaElementTrackChoiceManager === null || mediaElementTrackChoiceManager === void 0 ? void 0 : mediaElementTrackChoiceManager.setTextTrackById(textId);
1270
1688
  return;
1271
1689
  }
1272
1690
  catch (e) {
1273
1691
  throw new Error("player: unknown text track");
1274
1692
  }
1275
1693
  }
1276
- let periodId;
1277
- let trackId;
1278
- if (typeof arg === "string") {
1279
- trackId = arg;
1694
+ if (trackChoiceManager === null || currentPeriod === null) {
1695
+ throw new Error("No compatible content launched.");
1280
1696
  }
1281
- else {
1282
- trackId = arg.trackId;
1283
- periodId = arg.periodId;
1697
+ try {
1698
+ trackChoiceManager.setTextTrackByID(currentPeriod, textId);
1284
1699
  }
1285
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.setTextTrack(periodRef, trackId));
1286
- }
1700
+ catch (e) {
1701
+ throw new Error("player: unknown text track");
1702
+ }
1703
+ };
1287
1704
  /**
1288
1705
  * Disable subtitles for the current content.
1289
- * @param {string|undefined} [periodId]
1290
1706
  */
1291
- disableTextTrack(periodId) {
1707
+ Player.prototype.disableTextTrack = function () {
1292
1708
  if (this._priv_contentInfos === null) {
1293
1709
  return;
1294
1710
  }
1295
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1711
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1296
1712
  if (isDirectFile) {
1297
- mediaElementTracksStore === null || mediaElementTracksStore === void 0 ? void 0 : mediaElementTracksStore.disableTextTrack();
1713
+ mediaElementTrackChoiceManager === null || mediaElementTrackChoiceManager === void 0 ? void 0 : mediaElementTrackChoiceManager.disableTextTrack();
1298
1714
  return;
1299
1715
  }
1300
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.disableTrack(periodRef, "text"));
1301
- }
1716
+ if (trackChoiceManager === null || currentPeriod === null) {
1717
+ return;
1718
+ }
1719
+ return trackChoiceManager.disableTextTrack(currentPeriod);
1720
+ };
1302
1721
  /**
1303
1722
  * Update the video track for the current Period.
1304
- * @param {string | Object} arg
1305
- * @throws Error - the current content has no TracksStore.
1723
+ * @param {string} videoId
1724
+ * @throws Error - the current content has no TrackChoiceManager.
1306
1725
  * @throws Error - the given id is linked to no video track.
1307
1726
  */
1308
- setVideoTrack(arg) {
1309
- var _a;
1727
+ Player.prototype.setVideoTrack = function (videoId) {
1310
1728
  if (this._priv_contentInfos === null) {
1311
1729
  throw new Error("No content loaded");
1312
1730
  }
1313
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1731
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1314
1732
  if (isDirectFile) {
1315
1733
  try {
1316
- const videoId = typeof arg === "string" ? arg :
1317
- arg.trackId;
1318
- mediaElementTracksStore === null || mediaElementTracksStore === void 0 ? void 0 : mediaElementTracksStore.setVideoTrackById(videoId);
1734
+ mediaElementTrackChoiceManager === null || mediaElementTrackChoiceManager === void 0 ? void 0 : mediaElementTrackChoiceManager.setVideoTrackById(videoId);
1319
1735
  return;
1320
1736
  }
1321
1737
  catch (e) {
1322
1738
  throw new Error("player: unknown video track");
1323
1739
  }
1324
1740
  }
1325
- let periodId;
1326
- let trackId;
1327
- let switchingMode;
1328
- let reprsToLock = null;
1329
- if (typeof arg === "string") {
1330
- trackId = arg;
1741
+ if (trackChoiceManager === null || currentPeriod === null) {
1742
+ throw new Error("No compatible content launched.");
1331
1743
  }
1332
- else {
1333
- trackId = arg.trackId;
1334
- periodId = arg.periodId;
1335
- switchingMode = arg.switchingMode;
1336
- reprsToLock = (_a = arg.lockedRepresentations) !== null && _a !== void 0 ? _a : null;
1744
+ try {
1745
+ trackChoiceManager.setVideoTrackByID(currentPeriod, videoId);
1337
1746
  }
1338
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.setVideoTrack(periodRef, trackId, switchingMode, reprsToLock));
1339
- }
1747
+ catch (e) {
1748
+ throw new Error("player: unknown video track");
1749
+ }
1750
+ };
1340
1751
  /**
1341
1752
  * Disable video track for the current content.
1342
- * @param {string|undefined} [periodId]
1343
1753
  */
1344
- disableVideoTrack(periodId) {
1754
+ Player.prototype.disableVideoTrack = function () {
1345
1755
  if (this._priv_contentInfos === null) {
1346
1756
  return;
1347
1757
  }
1348
- const { isDirectFile, mediaElementTracksStore } = this._priv_contentInfos;
1349
- if (isDirectFile && mediaElementTracksStore !== null) {
1350
- return mediaElementTracksStore.disableVideoTrack();
1758
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, isDirectFile = _a.isDirectFile, trackChoiceManager = _a.trackChoiceManager, mediaElementTrackChoiceManager = _a.mediaElementTrackChoiceManager;
1759
+ if (isDirectFile && mediaElementTrackChoiceManager !== null) {
1760
+ return mediaElementTrackChoiceManager.disableVideoTrack();
1351
1761
  }
1352
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.disableTrack(periodRef, "video"));
1353
- }
1354
- lockVideoRepresentations(arg) {
1355
- if (this._priv_contentInfos === null) {
1356
- throw new Error("No content loaded");
1762
+ if (trackChoiceManager === null || currentPeriod === null) {
1763
+ return;
1357
1764
  }
1358
- const { isDirectFile } = this._priv_contentInfos;
1359
- if (isDirectFile) {
1360
- throw new Error("Cannot lock video Representations in directfile mode.");
1765
+ return trackChoiceManager.disableVideoTrack(currentPeriod);
1766
+ };
1767
+ /**
1768
+ * Returns the current list of preferred audio tracks, in preference order.
1769
+ * @returns {Array.<Object>}
1770
+ */
1771
+ Player.prototype.getPreferredAudioTracks = function () {
1772
+ return this._priv_preferredAudioTracks;
1773
+ };
1774
+ /**
1775
+ * Returns the current list of preferred text tracks, in preference order.
1776
+ * @returns {Array.<Object>}
1777
+ */
1778
+ Player.prototype.getPreferredTextTracks = function () {
1779
+ return this._priv_preferredTextTracks;
1780
+ };
1781
+ /**
1782
+ * Returns the current list of preferred text tracks, in preference order.
1783
+ * @returns {Array.<Object>}
1784
+ */
1785
+ Player.prototype.getPreferredVideoTracks = function () {
1786
+ return this._priv_preferredVideoTracks;
1787
+ };
1788
+ /**
1789
+ * Set the list of preferred audio tracks, in preference order.
1790
+ * @param {Array.<Object>} tracks
1791
+ * @param {boolean} shouldApply - `true` if those preferences should be
1792
+ * applied on the currently loaded Period. `false` if it should only
1793
+ * be applied to new content.
1794
+ */
1795
+ Player.prototype.setPreferredAudioTracks = function (tracks, shouldApply) {
1796
+ if (shouldApply === void 0) { shouldApply = false; }
1797
+ if (!Array.isArray(tracks)) {
1798
+ throw new Error("Invalid `setPreferredAudioTracks` argument. " +
1799
+ "Should have been an Array.");
1361
1800
  }
1362
- let repsId;
1363
- let periodId;
1364
- let switchingMode;
1365
- if (Array.isArray(arg)) {
1366
- repsId = arg;
1367
- periodId = undefined;
1801
+ this._priv_preferredAudioTracks = tracks;
1802
+ var contentInfos = this._priv_contentInfos;
1803
+ if (!isNullOrUndefined(contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.trackChoiceManager)) {
1804
+ contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.trackChoiceManager.setPreferredAudioTracks(tracks, shouldApply);
1368
1805
  }
1369
- else {
1370
- repsId = arg.representations;
1371
- periodId = arg.periodId;
1372
- switchingMode = arg.switchingMode;
1806
+ else if (!isNullOrUndefined(contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.mediaElementTrackChoiceManager)) {
1807
+ contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.mediaElementTrackChoiceManager.setPreferredAudioTracks(tracks, shouldApply);
1373
1808
  }
1374
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.lockVideoRepresentations(periodRef, { representations: repsId,
1375
- switchingMode }));
1376
- }
1377
- lockAudioRepresentations(arg) {
1378
- if (this._priv_contentInfos === null) {
1379
- throw new Error("No content loaded");
1809
+ };
1810
+ /**
1811
+ * Set the list of preferred text tracks, in preference order.
1812
+ * @param {Array.<Object>} tracks
1813
+ * @param {boolean} shouldApply - `true` if those preferences should be
1814
+ * applied on the currently loaded Periods. `false` if it should only
1815
+ * be applied to new content.
1816
+ */
1817
+ Player.prototype.setPreferredTextTracks = function (tracks, shouldApply) {
1818
+ if (shouldApply === void 0) { shouldApply = false; }
1819
+ if (!Array.isArray(tracks)) {
1820
+ throw new Error("Invalid `setPreferredTextTracks` argument. " +
1821
+ "Should have been an Array.");
1380
1822
  }
1381
- const { isDirectFile } = this._priv_contentInfos;
1382
- if (isDirectFile) {
1383
- throw new Error("Cannot lock audio Representations in directfile mode.");
1823
+ this._priv_preferredTextTracks = tracks;
1824
+ var contentInfos = this._priv_contentInfos;
1825
+ if (!isNullOrUndefined(contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.trackChoiceManager)) {
1826
+ contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.trackChoiceManager.setPreferredTextTracks(tracks, shouldApply);
1384
1827
  }
1385
- let repsId;
1386
- let periodId;
1387
- let switchingMode;
1388
- if (Array.isArray(arg)) {
1389
- repsId = arg;
1390
- periodId = undefined;
1828
+ else if (!isNullOrUndefined(contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.mediaElementTrackChoiceManager)) {
1829
+ contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.mediaElementTrackChoiceManager.setPreferredTextTracks(tracks, shouldApply);
1391
1830
  }
1392
- else {
1393
- repsId = arg.representations;
1394
- periodId = arg.periodId;
1395
- switchingMode = arg.switchingMode;
1831
+ };
1832
+ /**
1833
+ * Set the list of preferred text tracks, in preference order.
1834
+ * @param {Array.<Object>} tracks
1835
+ * @param {boolean} shouldApply - `true` if those preferences should be
1836
+ * applied on the currently loaded Period. `false` if it should only
1837
+ * be applied to new content.
1838
+ */
1839
+ Player.prototype.setPreferredVideoTracks = function (tracks, shouldApply) {
1840
+ if (shouldApply === void 0) { shouldApply = false; }
1841
+ if (!Array.isArray(tracks)) {
1842
+ throw new Error("Invalid `setPreferredVideoTracks` argument. " +
1843
+ "Should have been an Array.");
1396
1844
  }
1397
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.lockAudioRepresentations(periodRef, { representations: repsId,
1398
- switchingMode }));
1399
- }
1400
- getLockedVideoRepresentations(periodId) {
1401
- if (this._priv_contentInfos === null) {
1402
- return null;
1845
+ this._priv_preferredVideoTracks = tracks;
1846
+ var contentInfos = this._priv_contentInfos;
1847
+ if (!isNullOrUndefined(contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.trackChoiceManager)) {
1848
+ contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.trackChoiceManager.setPreferredVideoTracks(tracks, shouldApply);
1403
1849
  }
1404
- const { isDirectFile } = this._priv_contentInfos;
1405
- if (isDirectFile) {
1406
- return null;
1850
+ else if (!isNullOrUndefined(contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.mediaElementTrackChoiceManager)) {
1851
+ contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.mediaElementTrackChoiceManager.setPreferredVideoTracks(tracks, shouldApply);
1407
1852
  }
1408
- return this._priv_callTracksStoreGetterSetter(periodId, null, (tcm, periodRef) => tcm.getLockedVideoRepresentations(periodRef));
1409
- }
1410
- getLockedAudioRepresentations(periodId) {
1853
+ };
1854
+ /**
1855
+ * @returns {Array.<Object>|null}
1856
+ * @deprecated
1857
+ */
1858
+ Player.prototype.getImageTrackData = function () {
1859
+ warnOnce("`getImageTrackData` is deprecated." +
1860
+ "Please use the `parseBifThumbnails` tool instead.");
1411
1861
  if (this._priv_contentInfos === null) {
1412
1862
  return null;
1413
1863
  }
1414
- const { isDirectFile } = this._priv_contentInfos;
1415
- if (isDirectFile) {
1416
- return null;
1417
- }
1418
- return this._priv_callTracksStoreGetterSetter(periodId, null, (tcm, periodRef) => tcm.getLockedAudioRepresentations(periodRef));
1419
- }
1420
- unlockVideoRepresentations(periodId) {
1421
- if (this._priv_contentInfos === null) {
1422
- return;
1423
- }
1424
- const { isDirectFile } = this._priv_contentInfos;
1425
- if (isDirectFile) {
1426
- return;
1427
- }
1428
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.unlockVideoRepresentations(periodRef));
1429
- }
1430
- unlockAudioRepresentations(periodId) {
1431
- if (this._priv_contentInfos === null) {
1432
- return;
1433
- }
1434
- const { isDirectFile } = this._priv_contentInfos;
1435
- if (isDirectFile) {
1436
- return;
1437
- }
1438
- return this._priv_callTracksStoreGetterSetter(periodId, undefined, (tcm, periodRef) => tcm.unlockAudioRepresentations(periodRef));
1439
- }
1864
+ /* eslint-disable import/no-deprecated */
1865
+ return this._priv_contentInfos.thumbnails;
1866
+ /* eslint-enable import/no-deprecated */
1867
+ };
1440
1868
  /**
1441
1869
  * Get minimum seek-able position.
1442
1870
  * @returns {number}
1443
1871
  */
1444
- getMinimumPosition() {
1872
+ Player.prototype.getMinimumPosition = function () {
1445
1873
  if (this._priv_contentInfos === null) {
1446
1874
  return null;
1447
1875
  }
1448
1876
  if (this._priv_contentInfos.isDirectFile) {
1449
1877
  return 0;
1450
1878
  }
1451
- const { manifest } = this._priv_contentInfos;
1879
+ var manifest = this._priv_contentInfos.manifest;
1452
1880
  if (manifest !== null) {
1453
1881
  return manifest.getMinimumSafePosition();
1454
1882
  }
1455
1883
  return null;
1456
- }
1884
+ };
1457
1885
  /**
1458
1886
  * Get maximum seek-able position.
1459
1887
  * @returns {number}
1460
1888
  */
1461
- getMaximumPosition() {
1889
+ Player.prototype.getMaximumPosition = function () {
1462
1890
  if (this._priv_contentInfos === null) {
1463
1891
  return null;
1464
1892
  }
1465
- const { isDirectFile, manifest } = this._priv_contentInfos;
1893
+ var _a = this._priv_contentInfos, isDirectFile = _a.isDirectFile, manifest = _a.manifest;
1466
1894
  if (isDirectFile) {
1467
1895
  if (this.videoElement === null) {
1468
1896
  throw new Error("Disposed player");
@@ -1476,13 +1904,7 @@ class Player extends event_emitter_1.default {
1476
1904
  return manifest.getMaximumSafePosition();
1477
1905
  }
1478
1906
  return null;
1479
- }
1480
- // ---- Undocumented Private methods. ----
1481
- //
1482
- // Those methods are just here either to allow some tools relying on the
1483
- // RxPlayer instance to work or to improve the RxPlayer's demo.
1484
- //
1485
- // They should not be used by any external code.
1907
+ };
1486
1908
  /**
1487
1909
  * /!\ For demo use only! Do not touch!
1488
1910
  *
@@ -1491,83 +1913,42 @@ class Player extends event_emitter_1.default {
1491
1913
  * @param {string} bufferType
1492
1914
  * @returns {Array.<Object>|null}
1493
1915
  */
1494
- __priv_getSegmentBufferContent(bufferType) {
1916
+ Player.prototype.__priv_getSegmentBufferContent = function (bufferType) {
1495
1917
  if (this._priv_contentInfos === null ||
1496
1918
  this._priv_contentInfos.segmentBuffersStore === null) {
1497
1919
  return null;
1498
1920
  }
1499
- const segmentBufferStatus = this._priv_contentInfos
1921
+ var segmentBufferStatus = this._priv_contentInfos
1500
1922
  .segmentBuffersStore.getStatus(bufferType);
1501
1923
  return segmentBufferStatus.type === "initialized" ?
1502
1924
  segmentBufferStatus.value.getInventory() :
1503
1925
  null;
1504
- }
1505
- /**
1506
- * /!\ For tools use only! Do not touch!
1507
- *
1508
- * Returns manifest/playlist object.
1509
- * null if the player is STOPPED.
1510
- * @returns {Manifest|null} - The current Manifest (`null` when not known).
1511
- */
1512
- // TODO remove the need for that public method
1513
- __priv_getManifest() {
1514
- if (this._priv_contentInfos === null) {
1515
- return null;
1516
- }
1517
- return this._priv_contentInfos.manifest;
1518
- }
1519
- // TODO remove the need for that public method
1520
- __priv_getCurrentAdaptation() {
1521
- if (this._priv_contentInfos === null) {
1522
- return null;
1523
- }
1524
- const { currentPeriod, activeAdaptations } = this._priv_contentInfos;
1525
- if (currentPeriod === null ||
1526
- activeAdaptations === null ||
1527
- (0, is_null_or_undefined_1.default)(activeAdaptations[currentPeriod.id])) {
1528
- return null;
1529
- }
1530
- return activeAdaptations[currentPeriod.id];
1531
- }
1532
- // TODO remove the need for that public method
1533
- __priv_getCurrentRepresentations() {
1534
- if (this._priv_contentInfos === null) {
1535
- return null;
1536
- }
1537
- const { currentPeriod, activeRepresentations } = this._priv_contentInfos;
1538
- if (currentPeriod === null ||
1539
- activeRepresentations === null ||
1540
- (0, is_null_or_undefined_1.default)(activeRepresentations[currentPeriod.id])) {
1541
- return null;
1542
- }
1543
- return activeRepresentations[currentPeriod.id];
1544
- }
1545
- // ---- Private methods ----
1926
+ };
1546
1927
  /**
1547
1928
  * Reset all state properties relative to a playing content.
1548
1929
  */
1549
- _priv_cleanUpCurrentContentState() {
1550
- var _a, _b, _c, _d;
1551
- log_1.default.debug("Locking `contentLock` to clean-up the current content.");
1930
+ Player.prototype._priv_cleanUpCurrentContentState = function () {
1931
+ var _this = this;
1932
+ var _a, _b;
1933
+ log.debug("Locking `contentLock` to clean-up the current content.");
1552
1934
  // lock playback of new contents while cleaning up is pending
1553
1935
  this._priv_contentLock.setValue(true);
1554
- (_b = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.tracksStore) === null || _b === void 0 ? void 0 : _b.dispose();
1555
- (_d = (_c = this._priv_contentInfos) === null || _c === void 0 ? void 0 : _c.mediaElementTracksStore) === null || _d === void 0 ? void 0 : _d.dispose();
1936
+ (_b = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.mediaElementTrackChoiceManager) === null || _b === void 0 ? void 0 : _b.dispose();
1556
1937
  this._priv_contentInfos = null;
1557
1938
  this._priv_contentEventsMemory = {};
1558
1939
  // DRM-related clean-up
1559
- const freeUpContentLock = () => {
1560
- if (this.videoElement !== null) { // If not disposed
1561
- log_1.default.debug("Unlocking `contentLock`. Next content can begin.");
1562
- this._priv_contentLock.setValue(false);
1940
+ var freeUpContentLock = function () {
1941
+ if (_this.videoElement !== null) { // If not disposed
1942
+ log.debug("Unlocking `contentLock`. Next content can begin.");
1943
+ _this._priv_contentLock.setValue(false);
1563
1944
  }
1564
1945
  };
1565
- if (!(0, is_null_or_undefined_1.default)(this.videoElement)) {
1566
- (0, decrypt_1.clearOnStop)(this.videoElement).then(() => {
1567
- log_1.default.debug("API: DRM session cleaned-up with success!");
1946
+ if (!isNullOrUndefined(this.videoElement)) {
1947
+ clearOnStop(this.videoElement).then(function () {
1948
+ log.debug("API: DRM session cleaned-up with success!");
1568
1949
  freeUpContentLock();
1569
- }, (err) => {
1570
- log_1.default.error("API: An error arised when trying to clean-up the DRM session:" +
1950
+ }, function (err) {
1951
+ log.error("API: An error arised when trying to clean-up the DRM session:" +
1571
1952
  (err instanceof Error ? err.toString() :
1572
1953
  "Unknown Error"));
1573
1954
  freeUpContentLock();
@@ -1576,121 +1957,65 @@ class Player extends event_emitter_1.default {
1576
1957
  else {
1577
1958
  freeUpContentLock();
1578
1959
  }
1579
- }
1960
+ };
1580
1961
  /**
1581
1962
  * Triggered when the Manifest has been loaded for the current content.
1582
1963
  * Initialize various private properties and emit initial event.
1583
1964
  * @param {Object} contentInfos
1584
1965
  * @param {Object} manifest
1585
1966
  */
1586
- _priv_onManifestReady(contentInfos, manifest) {
1967
+ Player.prototype._priv_onManifestReady = function (contentInfos, manifest) {
1968
+ var _this = this;
1587
1969
  var _a;
1588
1970
  if (contentInfos.contentId !== ((_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.contentId)) {
1589
1971
  return; // Event for another content
1590
1972
  }
1591
1973
  contentInfos.manifest = manifest;
1974
+ var cancelSignal = contentInfos.currentContentCanceller.signal;
1592
1975
  this._priv_reloadingMetadata.manifest = manifest;
1593
- const tracksStore = new tracks_store_1.default({
1976
+ var initialAudioTrack = contentInfos.initialAudioTrack, initialTextTrack = contentInfos.initialTextTrack;
1977
+ contentInfos.trackChoiceManager = new TrackChoiceManager({
1594
1978
  preferTrickModeTracks: this._priv_preferTrickModeTracks,
1595
- defaultAudioTrackSwitchingMode: contentInfos.defaultAudioTrackSwitchingMode,
1596
- });
1597
- contentInfos.tracksStore = tracksStore;
1598
- tracksStore.addEventListener("newAvailablePeriods", (p) => {
1599
- this.trigger("newAvailablePeriods", p);
1600
- });
1601
- tracksStore.addEventListener("brokenRepresentationsLock", (e) => {
1602
- this.trigger("brokenRepresentationsLock", e);
1603
- });
1604
- tracksStore.addEventListener("trackUpdate", (e) => {
1605
- var _a, _b;
1606
- this.trigger("trackUpdate", e);
1607
- const currentPeriod = (_b = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.currentPeriod) !== null && _b !== void 0 ? _b : undefined;
1608
- if (e.reason === "no-playable-representation" &&
1609
- e.period.id === (currentPeriod === null || currentPeriod === void 0 ? void 0 : currentPeriod.id)) {
1610
- this._priv_onAvailableTracksMayHaveChanged(e.trackType);
1611
- }
1612
- });
1613
- contentInfos.tracksStore.addEventListener("warning", (err) => {
1614
- this.trigger("warning", err);
1615
1979
  });
1616
- contentInfos.tracksStore.addEventListener("error", (err) => {
1617
- this._priv_onFatalError(err, contentInfos);
1618
- });
1619
- contentInfos.tracksStore.updatePeriodList(manifest);
1620
- manifest.addEventListener("manifestUpdate", (updates) => {
1980
+ var preferredAudioTracks = initialAudioTrack === undefined ?
1981
+ this._priv_preferredAudioTracks :
1982
+ [initialAudioTrack];
1983
+ contentInfos.trackChoiceManager.setPreferredAudioTracks(preferredAudioTracks, true);
1984
+ var preferredTextTracks = initialTextTrack === undefined ?
1985
+ this._priv_preferredTextTracks :
1986
+ [initialTextTrack];
1987
+ contentInfos.trackChoiceManager.setPreferredTextTracks(preferredTextTracks, true);
1988
+ contentInfos.trackChoiceManager
1989
+ .setPreferredVideoTracks(this._priv_preferredVideoTracks, true);
1990
+ manifest.addEventListener("manifestUpdate", function (updates) {
1621
1991
  var _a, _b, _c;
1622
1992
  // Update the tracks chosen if it changed
1623
- if (!(0, is_null_or_undefined_1.default)(contentInfos === null || contentInfos === void 0 ? void 0 : contentInfos.tracksStore)) {
1624
- contentInfos.tracksStore.updatePeriodList(manifest);
1993
+ if (contentInfos.trackChoiceManager !== null) {
1994
+ contentInfos.trackChoiceManager.update();
1625
1995
  }
1626
- const currentPeriod = (_b = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.currentPeriod) !== null && _b !== void 0 ? _b : undefined;
1627
- const currTracksStore = (_c = this._priv_contentInfos) === null || _c === void 0 ? void 0 : _c.tracksStore;
1628
- if (currentPeriod === undefined || (0, is_null_or_undefined_1.default)(currTracksStore)) {
1996
+ var currentPeriod = (_b = (_a = _this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.currentPeriod) !== null && _b !== void 0 ? _b : undefined;
1997
+ var trackChoiceManager = (_c = _this._priv_contentInfos) === null || _c === void 0 ? void 0 : _c.trackChoiceManager;
1998
+ if (currentPeriod === undefined || isNullOrUndefined(trackChoiceManager)) {
1629
1999
  return;
1630
2000
  }
1631
- for (const update of updates.updatedPeriods) {
2001
+ for (var _i = 0, _d = updates.updatedPeriods; _i < _d.length; _i++) {
2002
+ var update = _d[_i];
1632
2003
  if (update.period.id === currentPeriod.id) {
1633
2004
  if (update.result.addedAdaptations.length > 0 ||
1634
2005
  update.result.removedAdaptations.length > 0) {
1635
2006
  // We might have new (or less) tracks, send events just to be sure
1636
- const periodRef = currTracksStore.getPeriodObjectFromPeriod(currentPeriod);
1637
- if (periodRef === undefined) {
1638
- return;
1639
- }
1640
- this._priv_onAvailableTracksMayHaveChanged("audio");
1641
- this._priv_onAvailableTracksMayHaveChanged("text");
1642
- this._priv_onAvailableTracksMayHaveChanged("video");
2007
+ var audioTracks = trackChoiceManager.getAvailableAudioTracks(currentPeriod);
2008
+ _this._priv_triggerEventIfNotStopped("availableAudioTracksChange", audioTracks !== null && audioTracks !== void 0 ? audioTracks : [], cancelSignal);
2009
+ var textTracks = trackChoiceManager.getAvailableTextTracks(currentPeriod);
2010
+ _this._priv_triggerEventIfNotStopped("availableTextTracksChange", textTracks !== null && textTracks !== void 0 ? textTracks : [], cancelSignal);
2011
+ var videoTracks = trackChoiceManager.getAvailableVideoTracks(currentPeriod);
2012
+ _this._priv_triggerEventIfNotStopped("availableVideoTracksChange", videoTracks !== null && videoTracks !== void 0 ? videoTracks : [], cancelSignal);
1643
2013
  }
1644
2014
  }
1645
2015
  return;
1646
2016
  }
1647
2017
  }, contentInfos.currentContentCanceller.signal);
1648
- manifest.addEventListener("decipherabilityUpdate", (elts) => {
1649
- /**
1650
- * Array of tuples only including once the Period/Track combination, and
1651
- * only when it concerns the currently-selected track.
1652
- */
1653
- const periodsAndTrackTypes = elts.reduce((acc, elt) => {
1654
- var _a, _b, _c;
1655
- const isFound = (0, array_find_1.default)(acc, (x) => x[0].id === elt.period.id &&
1656
- x[1] === elt.adaptation.type) === undefined;
1657
- if (!isFound) {
1658
- // Only consider the currently-selected tracks.
1659
- // NOTE: Maybe there's room for optimizations? Unclear.
1660
- const tStore = contentInfos.tracksStore;
1661
- if (tStore === null) {
1662
- return acc;
1663
- }
1664
- let isCurrent = false;
1665
- const periodRef = tStore.getPeriodObjectFromPeriod(elt.period);
1666
- if (periodRef === undefined) {
1667
- return acc;
1668
- }
1669
- switch (elt.adaptation.type) {
1670
- case "audio":
1671
- isCurrent = ((_a = tStore
1672
- .getChosenAudioTrack(periodRef)) === null || _a === void 0 ? void 0 : _a.id) === elt.adaptation.id;
1673
- break;
1674
- case "video":
1675
- isCurrent = ((_b = tStore
1676
- .getChosenVideoTrack(periodRef)) === null || _b === void 0 ? void 0 : _b.id) === elt.adaptation.id;
1677
- break;
1678
- case "text":
1679
- isCurrent = ((_c = tStore
1680
- .getChosenTextTrack(periodRef)) === null || _c === void 0 ? void 0 : _c.id) === elt.adaptation.id;
1681
- break;
1682
- }
1683
- if (isCurrent) {
1684
- acc.push([elt.period, elt.adaptation.type]);
1685
- }
1686
- }
1687
- return acc;
1688
- }, []);
1689
- for (const [period, trackType] of periodsAndTrackTypes) {
1690
- this._priv_triggerEventIfNotStopped("representationListUpdate", { period, trackType, reason: "decipherability-update" }, contentInfos.currentContentCanceller.signal);
1691
- }
1692
- }, contentInfos.currentContentCanceller.signal);
1693
- }
2018
+ };
1694
2019
  /**
1695
2020
  * Triggered each times the current Period Changed.
1696
2021
  * Store and emit initial state for the Period.
@@ -1698,115 +2023,148 @@ class Player extends event_emitter_1.default {
1698
2023
  * @param {Object} contentInfos
1699
2024
  * @param {Object} periodInfo
1700
2025
  */
1701
- _priv_onActivePeriodChanged(contentInfos, { period }) {
1702
- var _a, _b, _c, _d, _e, _f;
1703
- if (contentInfos.contentId !== ((_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.contentId)) {
2026
+ Player.prototype._priv_onActivePeriodChanged = function (contentInfos, _a) {
2027
+ var _b, _c, _d, _e, _f, _g, _h, _j;
2028
+ var period = _a.period;
2029
+ if (contentInfos.contentId !== ((_b = this._priv_contentInfos) === null || _b === void 0 ? void 0 : _b.contentId)) {
1704
2030
  return; // Event for another content
1705
2031
  }
1706
2032
  contentInfos.currentPeriod = period;
1707
- const cancelSignal = contentInfos.currentContentCanceller.signal;
2033
+ var cancelSignal = contentInfos.currentContentCanceller.signal;
1708
2034
  if (this._priv_contentEventsMemory.periodChange !== period) {
1709
2035
  this._priv_contentEventsMemory.periodChange = period;
1710
- this._priv_triggerEventIfNotStopped("periodChange", { start: period.start,
1711
- end: period.end,
1712
- id: period.id }, cancelSignal);
2036
+ this._priv_triggerEventIfNotStopped("periodChange", period, cancelSignal);
1713
2037
  }
1714
2038
  this._priv_triggerEventIfNotStopped("availableAudioTracksChange", this.getAvailableAudioTracks(), cancelSignal);
1715
2039
  this._priv_triggerEventIfNotStopped("availableTextTracksChange", this.getAvailableTextTracks(), cancelSignal);
1716
2040
  this._priv_triggerEventIfNotStopped("availableVideoTracksChange", this.getAvailableVideoTracks(), cancelSignal);
1717
- const tracksStore = (_b = this._priv_contentInfos) === null || _b === void 0 ? void 0 : _b.tracksStore;
1718
- // Emit initial events for the Period
1719
- if (!(0, is_null_or_undefined_1.default)(tracksStore)) {
1720
- const periodRef = tracksStore.getPeriodObjectFromPeriod(period);
1721
- if (periodRef) {
1722
- const audioTrack = tracksStore.getChosenAudioTrack(periodRef);
1723
- this._priv_triggerEventIfNotStopped("audioTrackChange", audioTrack, cancelSignal);
1724
- const textTrack = tracksStore.getChosenTextTrack(periodRef);
1725
- this._priv_triggerEventIfNotStopped("textTrackChange", textTrack, cancelSignal);
1726
- const videoTrack = tracksStore.getChosenVideoTrack(periodRef);
1727
- this._priv_triggerEventIfNotStopped("videoTrackChange", videoTrack, cancelSignal);
1728
- }
2041
+ var trackChoiceManager = (_c = this._priv_contentInfos) === null || _c === void 0 ? void 0 : _c.trackChoiceManager;
2042
+ // Emit intial events for the Period
2043
+ if (!isNullOrUndefined(trackChoiceManager)) {
2044
+ var audioTrack = trackChoiceManager.getChosenAudioTrack(period);
2045
+ this._priv_triggerEventIfNotStopped("audioTrackChange", audioTrack, cancelSignal);
2046
+ var textTrack = trackChoiceManager.getChosenTextTrack(period);
2047
+ this._priv_triggerEventIfNotStopped("textTrackChange", textTrack, cancelSignal);
2048
+ var videoTrack = trackChoiceManager.getChosenVideoTrack(period);
2049
+ this._priv_triggerEventIfNotStopped("videoTrackChange", videoTrack, cancelSignal);
1729
2050
  }
1730
2051
  else {
1731
2052
  this._priv_triggerEventIfNotStopped("audioTrackChange", null, cancelSignal);
1732
2053
  this._priv_triggerEventIfNotStopped("textTrackChange", null, cancelSignal);
1733
2054
  this._priv_triggerEventIfNotStopped("videoTrackChange", null, cancelSignal);
1734
2055
  }
1735
- const audioRepresentation = (_d = (_c = this.__priv_getCurrentRepresentations()) === null || _c === void 0 ? void 0 : _c.audio) !== null && _d !== void 0 ? _d : null;
1736
- this._priv_triggerEventIfNotStopped("audioRepresentationChange", audioRepresentation, cancelSignal);
1737
- const videoRepresentation = (_f = (_e = this.__priv_getCurrentRepresentations()) === null || _e === void 0 ? void 0 : _e.video) !== null && _f !== void 0 ? _f : null;
1738
- this._priv_triggerEventIfNotStopped("videoRepresentationChange", videoRepresentation, cancelSignal);
1739
- }
2056
+ this._priv_triggerAvailableBitratesChangeEvent("availableAudioBitratesChange", this.getAvailableAudioBitrates(), cancelSignal);
2057
+ if (contentInfos.currentContentCanceller.isUsed()) {
2058
+ return;
2059
+ }
2060
+ this._priv_triggerAvailableBitratesChangeEvent("availableVideoBitratesChange", this.getAvailableVideoBitrates(), cancelSignal);
2061
+ if (contentInfos.currentContentCanceller.isUsed()) {
2062
+ return;
2063
+ }
2064
+ var audioBitrate = (_f = (_e = (_d = this._priv_getCurrentRepresentations()) === null || _d === void 0 ? void 0 : _d.audio) === null || _e === void 0 ? void 0 : _e.bitrate) !== null && _f !== void 0 ? _f : -1;
2065
+ this._priv_triggerCurrentBitrateChangeEvent("audioBitrateChange", audioBitrate, cancelSignal);
2066
+ if (contentInfos.currentContentCanceller.isUsed()) {
2067
+ return;
2068
+ }
2069
+ var videoBitrate = (_j = (_h = (_g = this._priv_getCurrentRepresentations()) === null || _g === void 0 ? void 0 : _g.video) === null || _h === void 0 ? void 0 : _h.bitrate) !== null && _j !== void 0 ? _j : -1;
2070
+ this._priv_triggerCurrentBitrateChangeEvent("videoBitrateChange", videoBitrate, cancelSignal);
2071
+ };
1740
2072
  /**
1741
2073
  * Triggered each times a new "PeriodStream" is ready.
1742
2074
  * Choose the right Adaptation for the Period and emit it.
1743
2075
  * @param {Object} contentInfos
1744
2076
  * @param {Object} value
1745
2077
  */
1746
- _priv_onPeriodStreamReady(contentInfos, value) {
2078
+ Player.prototype._priv_onPeriodStreamReady = function (contentInfos, value) {
1747
2079
  var _a;
1748
2080
  if (contentInfos.contentId !== ((_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.contentId)) {
1749
2081
  return; // Event for another content
1750
2082
  }
1751
- const { type, manifest, period, adaptationRef } = value;
1752
- const tracksStore = contentInfos.tracksStore;
2083
+ var type = value.type, period = value.period, adaptationRef = value.adaptationRef;
2084
+ var trackChoiceManager = contentInfos.trackChoiceManager;
1753
2085
  switch (type) {
1754
2086
  case "video":
2087
+ if (isNullOrUndefined(trackChoiceManager)) {
2088
+ log.error("API: TrackChoiceManager not instanciated for a new video period");
2089
+ adaptationRef.setValue(null);
2090
+ }
2091
+ else {
2092
+ trackChoiceManager.addPeriod(type, period, adaptationRef);
2093
+ trackChoiceManager.setInitialVideoTrack(period);
2094
+ }
2095
+ break;
1755
2096
  case "audio":
2097
+ if (isNullOrUndefined(trackChoiceManager)) {
2098
+ log.error("API: TrackChoiceManager not instanciated for a new ".concat(type, " period"));
2099
+ adaptationRef.setValue(null);
2100
+ }
2101
+ else {
2102
+ trackChoiceManager.addPeriod(type, period, adaptationRef);
2103
+ trackChoiceManager.setInitialAudioTrack(period);
2104
+ }
2105
+ break;
1756
2106
  case "text":
1757
- if ((0, is_null_or_undefined_1.default)(tracksStore)) {
1758
- log_1.default.error(`API: TracksStore not instanciated for a new ${type} period`);
2107
+ if (isNullOrUndefined(trackChoiceManager)) {
2108
+ log.error("API: TrackChoiceManager not instanciated for a new ".concat(type, " period"));
1759
2109
  adaptationRef.setValue(null);
1760
2110
  }
1761
2111
  else {
1762
- tracksStore.addTrackReference(type, manifest, period, adaptationRef);
2112
+ trackChoiceManager.addPeriod(type, period, adaptationRef);
2113
+ trackChoiceManager.setInitialTextTrack(period);
1763
2114
  }
1764
2115
  break;
1765
2116
  default:
1766
- (0, assert_unreachable_1.default)(type);
2117
+ var adaptations = period.adaptations[type];
2118
+ if (!isNullOrUndefined(adaptations) && adaptations.length > 0) {
2119
+ adaptationRef.setValue(adaptations[0]);
2120
+ }
2121
+ else {
2122
+ adaptationRef.setValue(null);
2123
+ }
2124
+ break;
1767
2125
  }
1768
- }
2126
+ };
1769
2127
  /**
1770
2128
  * Triggered each times we "remove" a PeriodStream.
1771
2129
  * @param {Object} contentInfos
1772
2130
  * @param {Object} value
1773
2131
  */
1774
- _priv_onPeriodStreamCleared(contentInfos, value) {
2132
+ Player.prototype._priv_onPeriodStreamCleared = function (contentInfos, value) {
1775
2133
  var _a;
1776
2134
  if (contentInfos.contentId !== ((_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.contentId)) {
1777
2135
  return; // Event for another content
1778
2136
  }
1779
- const { type, period } = value;
1780
- const tracksStore = contentInfos.tracksStore;
1781
- // Clean-up track choices from TracksStore
2137
+ var type = value.type, period = value.period;
2138
+ var trackChoiceManager = contentInfos.trackChoiceManager;
2139
+ // Clean-up track choice from TrackChoiceManager
1782
2140
  switch (type) {
1783
2141
  case "audio":
1784
2142
  case "text":
1785
2143
  case "video":
1786
- if (!(0, is_null_or_undefined_1.default)(tracksStore)) {
1787
- tracksStore.removeTrackReference(type, period);
2144
+ if (!isNullOrUndefined(trackChoiceManager)) {
2145
+ trackChoiceManager.removePeriod(type, period);
1788
2146
  }
1789
2147
  break;
1790
2148
  }
1791
2149
  // Clean-up stored Representation and Adaptation information
1792
- const { activeAdaptations, activeRepresentations } = contentInfos;
1793
- if (!(0, is_null_or_undefined_1.default)(activeAdaptations) &&
1794
- !(0, is_null_or_undefined_1.default)(activeAdaptations[period.id])) {
1795
- const activePeriodAdaptations = activeAdaptations[period.id];
2150
+ var activeAdaptations = contentInfos.activeAdaptations, activeRepresentations = contentInfos.activeRepresentations;
2151
+ if (!isNullOrUndefined(activeAdaptations) &&
2152
+ !isNullOrUndefined(activeAdaptations[period.id])) {
2153
+ var activePeriodAdaptations = activeAdaptations[period.id];
1796
2154
  delete activePeriodAdaptations[type];
1797
2155
  if (Object.keys(activePeriodAdaptations).length === 0) {
1798
2156
  delete activeAdaptations[period.id];
1799
2157
  }
1800
2158
  }
1801
- if (!(0, is_null_or_undefined_1.default)(activeRepresentations) &&
1802
- !(0, is_null_or_undefined_1.default)(activeRepresentations[period.id])) {
1803
- const activePeriodRepresentations = activeRepresentations[period.id];
2159
+ if (!isNullOrUndefined(activeRepresentations) &&
2160
+ !isNullOrUndefined(activeRepresentations[period.id])) {
2161
+ var activePeriodRepresentations = activeRepresentations[period.id];
1804
2162
  delete activePeriodRepresentations[type];
1805
2163
  if (Object.keys(activePeriodRepresentations).length === 0) {
1806
2164
  delete activeRepresentations[period.id];
1807
2165
  }
1808
2166
  }
1809
- }
2167
+ };
1810
2168
  /**
1811
2169
  * Triggered each times a new Adaptation is considered for the current
1812
2170
  * content.
@@ -1814,48 +2172,50 @@ class Player extends event_emitter_1.default {
1814
2172
  * @param {Object} contentInfos
1815
2173
  * @param {Object} value
1816
2174
  */
1817
- _priv_onAdaptationChange(contentInfos, { type, adaptation, period }) {
1818
- var _a;
1819
- if (contentInfos.contentId !== ((_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.contentId)) {
2175
+ Player.prototype._priv_onAdaptationChange = function (contentInfos, _a) {
2176
+ var _b;
2177
+ var _c;
2178
+ var type = _a.type, adaptation = _a.adaptation, period = _a.period;
2179
+ if (contentInfos.contentId !== ((_c = this._priv_contentInfos) === null || _c === void 0 ? void 0 : _c.contentId)) {
1820
2180
  return; // Event for another content
1821
2181
  }
1822
2182
  // lazily create contentInfos.activeAdaptations
1823
2183
  if (contentInfos.activeAdaptations === null) {
1824
2184
  contentInfos.activeAdaptations = {};
1825
2185
  }
1826
- const { activeAdaptations, currentPeriod } = contentInfos;
1827
- const activePeriodAdaptations = activeAdaptations[period.id];
1828
- if ((0, is_null_or_undefined_1.default)(activePeriodAdaptations)) {
1829
- activeAdaptations[period.id] = { [type]: adaptation };
2186
+ var activeAdaptations = contentInfos.activeAdaptations, currentPeriod = contentInfos.currentPeriod;
2187
+ var activePeriodAdaptations = activeAdaptations[period.id];
2188
+ if (isNullOrUndefined(activePeriodAdaptations)) {
2189
+ activeAdaptations[period.id] = (_b = {}, _b[type] = adaptation, _b);
1830
2190
  }
1831
2191
  else {
1832
2192
  activePeriodAdaptations[type] = adaptation;
1833
2193
  }
1834
- const { tracksStore } = contentInfos;
1835
- const cancelSignal = contentInfos.currentContentCanceller.signal;
1836
- if (tracksStore !== null &&
1837
- currentPeriod !== null && !(0, is_null_or_undefined_1.default)(period) &&
2194
+ var trackChoiceManager = contentInfos.trackChoiceManager;
2195
+ var cancelSignal = contentInfos.currentContentCanceller.signal;
2196
+ if (trackChoiceManager !== null &&
2197
+ currentPeriod !== null && !isNullOrUndefined(period) &&
1838
2198
  period.id === currentPeriod.id) {
1839
- const periodRef = tracksStore.getPeriodObjectFromPeriod(period);
1840
- if (periodRef === undefined) {
1841
- return;
1842
- }
1843
2199
  switch (type) {
1844
2200
  case "audio":
1845
- const audioTrack = tracksStore.getChosenAudioTrack(periodRef);
2201
+ var audioTrack = trackChoiceManager.getChosenAudioTrack(currentPeriod);
1846
2202
  this._priv_triggerEventIfNotStopped("audioTrackChange", audioTrack, cancelSignal);
2203
+ var availableAudioBitrates = this.getAvailableAudioBitrates();
2204
+ this._priv_triggerAvailableBitratesChangeEvent("availableAudioBitratesChange", availableAudioBitrates, cancelSignal);
1847
2205
  break;
1848
2206
  case "text":
1849
- const textTrack = tracksStore.getChosenTextTrack(periodRef);
2207
+ var textTrack = trackChoiceManager.getChosenTextTrack(currentPeriod);
1850
2208
  this._priv_triggerEventIfNotStopped("textTrackChange", textTrack, cancelSignal);
1851
2209
  break;
1852
2210
  case "video":
1853
- const videoTrack = tracksStore.getChosenVideoTrack(periodRef);
2211
+ var videoTrack = trackChoiceManager.getChosenVideoTrack(currentPeriod);
1854
2212
  this._priv_triggerEventIfNotStopped("videoTrackChange", videoTrack, cancelSignal);
2213
+ var availableVideoBitrates = this.getAvailableVideoBitrates();
2214
+ this._priv_triggerAvailableBitratesChangeEvent("availableVideoBitratesChange", availableVideoBitrates, cancelSignal);
1855
2215
  break;
1856
2216
  }
1857
2217
  }
1858
- }
2218
+ };
1859
2219
  /**
1860
2220
  * Triggered each times a new Representation is considered during playback.
1861
2221
  *
@@ -1864,35 +2224,38 @@ class Player extends event_emitter_1.default {
1864
2224
  * @param {Object} contentInfos
1865
2225
  * @param {Object} obj
1866
2226
  */
1867
- _priv_onRepresentationChange(contentInfos, { type, period, representation }) {
1868
- var _a;
1869
- if (contentInfos.contentId !== ((_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.contentId)) {
2227
+ Player.prototype._priv_onRepresentationChange = function (contentInfos, _a) {
2228
+ var _b;
2229
+ var _c, _d;
2230
+ var type = _a.type, period = _a.period, representation = _a.representation;
2231
+ if (contentInfos.contentId !== ((_c = this._priv_contentInfos) === null || _c === void 0 ? void 0 : _c.contentId)) {
1870
2232
  return; // Event for another content
1871
2233
  }
1872
2234
  // lazily create contentInfos.activeRepresentations
1873
2235
  if (contentInfos.activeRepresentations === null) {
1874
2236
  contentInfos.activeRepresentations = {};
1875
2237
  }
1876
- const { activeRepresentations, currentPeriod } = contentInfos;
1877
- const activePeriodRepresentations = activeRepresentations[period.id];
1878
- if ((0, is_null_or_undefined_1.default)(activePeriodRepresentations)) {
1879
- activeRepresentations[period.id] = { [type]: representation };
2238
+ var activeRepresentations = contentInfos.activeRepresentations, currentPeriod = contentInfos.currentPeriod;
2239
+ var activePeriodRepresentations = activeRepresentations[period.id];
2240
+ if (isNullOrUndefined(activePeriodRepresentations)) {
2241
+ activeRepresentations[period.id] = (_b = {}, _b[type] = representation, _b);
1880
2242
  }
1881
2243
  else {
1882
2244
  activePeriodRepresentations[type] = representation;
1883
2245
  }
1884
- if (!(0, is_null_or_undefined_1.default)(period) &&
2246
+ var bitrate = (_d = representation === null || representation === void 0 ? void 0 : representation.bitrate) !== null && _d !== void 0 ? _d : -1;
2247
+ if (!isNullOrUndefined(period) &&
1885
2248
  currentPeriod !== null &&
1886
2249
  currentPeriod.id === period.id) {
1887
- const cancelSignal = this._priv_contentInfos.currentContentCanceller.signal;
2250
+ var cancelSignal = this._priv_contentInfos.currentContentCanceller.signal;
1888
2251
  if (type === "video") {
1889
- this._priv_triggerEventIfNotStopped("videoRepresentationChange", representation, cancelSignal);
2252
+ this._priv_triggerCurrentBitrateChangeEvent("videoBitrateChange", bitrate, cancelSignal);
1890
2253
  }
1891
2254
  else if (type === "audio") {
1892
- this._priv_triggerEventIfNotStopped("audioRepresentationChange", representation, cancelSignal);
2255
+ this._priv_triggerCurrentBitrateChangeEvent("audioBitrateChange", bitrate, cancelSignal);
1893
2256
  }
1894
2257
  }
1895
- }
2258
+ };
1896
2259
  /**
1897
2260
  * Triggered each time a bitrate estimate is calculated.
1898
2261
  *
@@ -1900,14 +2263,23 @@ class Player extends event_emitter_1.default {
1900
2263
  *
1901
2264
  * @param {Object} value
1902
2265
  */
1903
- _priv_onBitrateEstimateChange({ type, bitrate, }) {
2266
+ Player.prototype._priv_onBitrateEstimationChange = function (_a) {
2267
+ var type = _a.type, bitrate = _a.bitrate;
1904
2268
  if (bitrate !== undefined) {
1905
2269
  this._priv_bitrateInfos.lastBitrates[type] = bitrate;
1906
2270
  }
1907
- // !!! undocumented API :O !!!
1908
- /* eslint-disable-next-line */
1909
- this.trigger("__priv_bitrateEstimateChange", { type, bitrate });
1910
- }
2271
+ this.trigger("bitrateEstimationChange", { type: type, bitrate: bitrate });
2272
+ };
2273
+ /**
2274
+ * Triggered each time a textTrack is added to the video DOM Element.
2275
+ *
2276
+ * Trigger the right Player Event.
2277
+ *
2278
+ * @param {Array.<TextTrackElement>} tracks
2279
+ */
2280
+ Player.prototype._priv_onNativeTextTracksNext = function (tracks) {
2281
+ this.trigger("nativeTextTracksChange", tracks);
2282
+ };
1911
2283
  /**
1912
2284
  * Triggered each time the player state updates.
1913
2285
  *
@@ -1915,13 +2287,13 @@ class Player extends event_emitter_1.default {
1915
2287
  *
1916
2288
  * @param {string} newState
1917
2289
  */
1918
- _priv_setPlayerState(newState) {
2290
+ Player.prototype._priv_setPlayerState = function (newState) {
1919
2291
  if (this.state !== newState) {
1920
2292
  this.state = newState;
1921
- log_1.default.info("API: playerStateChange event", newState);
2293
+ log.info("API: playerStateChange event", newState);
1922
2294
  this.trigger("playerStateChange", newState);
1923
2295
  }
1924
- }
2296
+ };
1925
2297
  /**
1926
2298
  * Triggered each time a playback observation.
1927
2299
  *
@@ -1930,22 +2302,22 @@ class Player extends event_emitter_1.default {
1930
2302
  * @param {Object} contentInfos
1931
2303
  * @param {Object} observation
1932
2304
  */
1933
- _priv_triggerPositionUpdate(contentInfos, observation) {
2305
+ Player.prototype._priv_triggerPositionUpdate = function (contentInfos, observation) {
1934
2306
  var _a, _b;
1935
2307
  if (contentInfos.contentId !== ((_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.contentId)) {
1936
2308
  return; // Event for another content
1937
2309
  }
1938
- const { isDirectFile, manifest } = contentInfos;
1939
- if ((!isDirectFile && manifest === null) || (0, is_null_or_undefined_1.default)(observation)) {
2310
+ var isDirectFile = contentInfos.isDirectFile, manifest = contentInfos.manifest;
2311
+ if ((!isDirectFile && manifest === null) || isNullOrUndefined(observation)) {
1940
2312
  return;
1941
2313
  }
1942
- const maximumPosition = manifest !== null ? manifest.getMaximumSafePosition() :
2314
+ var maximumPosition = manifest !== null ? manifest.getMaximumSafePosition() :
1943
2315
  undefined;
1944
- const positionData = {
2316
+ var positionData = {
1945
2317
  position: observation.position,
1946
2318
  duration: observation.duration,
1947
2319
  playbackRate: observation.playbackRate,
1948
- maximumPosition,
2320
+ maximumBufferTime: maximumPosition,
1949
2321
  // TODO bufferGap may be undefined
1950
2322
  bufferGap: observation.bufferGap === undefined ||
1951
2323
  !isFinite(observation.bufferGap) ?
@@ -1955,149 +2327,127 @@ class Player extends event_emitter_1.default {
1955
2327
  if (manifest !== null &&
1956
2328
  manifest.isLive &&
1957
2329
  observation.position > 0) {
1958
- const ast = (_b = manifest.availabilityStartTime) !== null && _b !== void 0 ? _b : 0;
2330
+ var ast = (_b = manifest.availabilityStartTime) !== null && _b !== void 0 ? _b : 0;
1959
2331
  positionData.wallClockTime = observation.position + ast;
1960
- const livePosition = manifest.getLivePosition();
2332
+ var livePosition = manifest.getLivePosition();
1961
2333
  if (livePosition !== undefined) {
1962
2334
  positionData.liveGap = livePosition - observation.position;
1963
2335
  }
1964
2336
  }
1965
2337
  else if (isDirectFile && this.videoElement !== null) {
1966
- const startDate = (0, compat_1.getStartDate)(this.videoElement);
2338
+ var startDate = getStartDate(this.videoElement);
1967
2339
  if (startDate !== undefined) {
1968
2340
  positionData.wallClockTime = startDate + observation.position;
1969
2341
  }
1970
2342
  }
1971
2343
  this.trigger("positionUpdate", positionData);
1972
- }
2344
+ };
2345
+ /**
2346
+ * Trigger one of the "availableBitratesChange" event only if it changed from
2347
+ * the previously stored value.
2348
+ * @param {string} event
2349
+ * @param {Array.<number>} newVal
2350
+ * @param {Object} currentContentCancelSignal
2351
+ */
2352
+ Player.prototype._priv_triggerAvailableBitratesChangeEvent = function (event, newVal, currentContentCancelSignal) {
2353
+ var prevVal = this._priv_contentEventsMemory[event];
2354
+ if (!currentContentCancelSignal.isCancelled() &&
2355
+ (prevVal === undefined || !areArraysOfNumbersEqual(newVal, prevVal))) {
2356
+ this._priv_contentEventsMemory[event] = newVal;
2357
+ this.trigger(event, newVal);
2358
+ }
2359
+ };
2360
+ /**
2361
+ * Trigger one of the "bitrateChange" event only if it changed from the
2362
+ * previously stored value.
2363
+ * @param {string} event
2364
+ * @param {number} newVal
2365
+ * @param {Object} currentContentCancelSignal
2366
+ */
2367
+ Player.prototype._priv_triggerCurrentBitrateChangeEvent = function (event, newVal, currentContentCancelSignal) {
2368
+ if (!currentContentCancelSignal.isCancelled() &&
2369
+ newVal !== this._priv_contentEventsMemory[event]) {
2370
+ this._priv_contentEventsMemory[event] = newVal;
2371
+ this.trigger(event, newVal);
2372
+ }
2373
+ };
2374
+ Player.prototype._priv_getCurrentRepresentations = function () {
2375
+ if (this._priv_contentInfos === null) {
2376
+ return null;
2377
+ }
2378
+ var _a = this._priv_contentInfos, currentPeriod = _a.currentPeriod, activeRepresentations = _a.activeRepresentations;
2379
+ if (currentPeriod === null ||
2380
+ activeRepresentations === null ||
2381
+ isNullOrUndefined(activeRepresentations[currentPeriod.id])) {
2382
+ return null;
2383
+ }
2384
+ return activeRepresentations[currentPeriod.id];
2385
+ };
1973
2386
  /**
1974
2387
  * @param {string} evt
1975
2388
  * @param {*} arg
1976
2389
  * @param {Object} currentContentCancelSignal
1977
2390
  */
1978
- _priv_triggerEventIfNotStopped(evt, arg, currentContentCancelSignal) {
2391
+ Player.prototype._priv_triggerEventIfNotStopped = function (evt, arg, currentContentCancelSignal) {
1979
2392
  if (!currentContentCancelSignal.isCancelled()) {
1980
2393
  this.trigger(evt, arg);
1981
2394
  }
1982
- }
2395
+ };
1983
2396
  /**
2397
+ * @param {Object} defaultAudioTrack
2398
+ * @param {Object} defaultTextTrack
1984
2399
  * @param {Object} cancelSignal
1985
2400
  * @returns {Object}
1986
2401
  */
1987
- _priv_initializeMediaElementTracksStore(cancelSignal) {
2402
+ Player.prototype._priv_initializeMediaElementTrackChoiceManager = function (defaultAudioTrack, defaultTextTrack, cancelSignal) {
2403
+ var _this = this;
1988
2404
  var _a, _b, _c;
1989
- (0, assert_1.default)(features_1.default.directfile !== null, "Initializing `MediaElementTracksStore` without Directfile feature");
1990
- (0, assert_1.default)(this.videoElement !== null, "Initializing `MediaElementTracksStore` on a disposed RxPlayer");
1991
- const mediaElementTracksStore = new features_1.default.directfile.mediaElementTracksStore(this.videoElement);
1992
- this._priv_triggerEventIfNotStopped("availableAudioTracksChange", mediaElementTracksStore.getAvailableAudioTracks(), cancelSignal);
1993
- this._priv_triggerEventIfNotStopped("availableVideoTracksChange", mediaElementTracksStore.getAvailableVideoTracks(), cancelSignal);
1994
- this._priv_triggerEventIfNotStopped("availableTextTracksChange", mediaElementTracksStore.getAvailableTextTracks(), cancelSignal);
1995
- this._priv_triggerEventIfNotStopped("audioTrackChange", (_a = mediaElementTracksStore.getChosenAudioTrack()) !== null && _a !== void 0 ? _a : null, cancelSignal);
1996
- this._priv_triggerEventIfNotStopped("textTrackChange", (_b = mediaElementTracksStore.getChosenTextTrack()) !== null && _b !== void 0 ? _b : null, cancelSignal);
1997
- this._priv_triggerEventIfNotStopped("videoTrackChange", (_c = mediaElementTracksStore.getChosenVideoTrack()) !== null && _c !== void 0 ? _c : null, cancelSignal);
1998
- mediaElementTracksStore
1999
- .addEventListener("availableVideoTracksChange", (val) => this.trigger("availableVideoTracksChange", val));
2000
- mediaElementTracksStore
2001
- .addEventListener("availableAudioTracksChange", (val) => this.trigger("availableAudioTracksChange", val));
2002
- mediaElementTracksStore
2003
- .addEventListener("availableTextTracksChange", (val) => this.trigger("availableTextTracksChange", val));
2004
- mediaElementTracksStore
2005
- .addEventListener("audioTrackChange", (val) => this.trigger("audioTrackChange", val));
2006
- mediaElementTracksStore
2007
- .addEventListener("videoTrackChange", (val) => this.trigger("videoTrackChange", val));
2008
- mediaElementTracksStore
2009
- .addEventListener("textTrackChange", (val) => this.trigger("textTrackChange", val));
2010
- return mediaElementTracksStore;
2011
- }
2012
- _priv_callTracksStoreGetterSetter(periodId, defaultValue, cb) {
2013
- var _a, _b;
2014
- if (this._priv_contentInfos === null ||
2015
- this._priv_contentInfos.tracksStore === null) {
2016
- log_1.default.warn("API: Trying to call track API too soon");
2017
- return defaultValue;
2018
- }
2019
- const { tracksStore } = this._priv_contentInfos;
2020
- const currentPeriod = (_b = (_a = this._priv_contentInfos) === null || _a === void 0 ? void 0 : _a.currentPeriod) !== null && _b !== void 0 ? _b : undefined;
2021
- const wantedPeriodId = periodId !== null && periodId !== void 0 ? periodId : currentPeriod === null || currentPeriod === void 0 ? void 0 : currentPeriod.id;
2022
- if (wantedPeriodId === undefined) {
2023
- return defaultValue;
2024
- }
2025
- const periodRef = wantedPeriodId === (currentPeriod === null || currentPeriod === void 0 ? void 0 : currentPeriod.id) ?
2026
- tracksStore.getPeriodObjectFromPeriod(currentPeriod) :
2027
- tracksStore.getPeriodObjectFromId(wantedPeriodId);
2028
- if (periodRef === undefined) {
2029
- return defaultValue;
2030
- }
2031
- return cb(tracksStore, periodRef);
2032
- }
2033
- /**
2034
- * Method to call when some event lead to a high for possibility that the
2035
- * available tracks for the given type have changed.
2036
- * Send the corresponding `available*Tracks` change event with the last
2037
- * available tracks.
2038
- *
2039
- * @param {string} trackType
2040
- * @param {Object|undefined} [oPeriodRef] - optional period object used by the
2041
- * `tracksStore` API, allows to optimize the method by bypassing this step.
2042
- */
2043
- _priv_onAvailableTracksMayHaveChanged(trackType, oPeriodRef) {
2044
- const contentInfos = this._priv_contentInfos;
2045
- if (contentInfos === null) {
2046
- return;
2047
- }
2048
- const { currentPeriod, tracksStore, currentContentCanceller } = contentInfos;
2049
- const cancelSignal = currentContentCanceller.signal;
2050
- if ((0, is_null_or_undefined_1.default)(currentPeriod) || tracksStore === null) {
2051
- return;
2052
- }
2053
- const periodRef = oPeriodRef !== null && oPeriodRef !== void 0 ? oPeriodRef : tracksStore.getPeriodObjectFromPeriod(currentPeriod);
2054
- if (periodRef === undefined) {
2055
- return;
2056
- }
2057
- switch (trackType) {
2058
- case "video":
2059
- const videoTracks = tracksStore.getAvailableVideoTracks(periodRef);
2060
- this._priv_triggerEventIfNotStopped("availableVideoTracksChange", videoTracks !== null && videoTracks !== void 0 ? videoTracks : [], cancelSignal);
2061
- break;
2062
- case "audio":
2063
- const audioTracks = tracksStore.getAvailableAudioTracks(periodRef);
2064
- this._priv_triggerEventIfNotStopped("availableAudioTracksChange", audioTracks !== null && audioTracks !== void 0 ? audioTracks : [], cancelSignal);
2065
- break;
2066
- case "text":
2067
- const textTracks = tracksStore.getAvailableTextTracks(periodRef);
2068
- this._priv_triggerEventIfNotStopped("availableTextTracksChange", textTracks !== null && textTracks !== void 0 ? textTracks : [], cancelSignal);
2069
- break;
2070
- default:
2071
- (0, assert_unreachable_1.default)(trackType);
2072
- }
2073
- }
2074
- /**
2075
- * Method to call when a fatal error lead to the stopping of the current
2076
- * content.
2077
- *
2078
- * @param {*} err - The error encountered.
2079
- * @param {Object} contentInfos - The `IPublicApiContentInfos` object linked
2080
- * to the content for which the error was received.
2081
- */
2082
- _priv_onFatalError(err, contentInfos) {
2083
- const formattedError = (0, errors_1.formatError)(err, {
2084
- defaultCode: "NONE",
2085
- defaultReason: "An unknown error stopped content playback.",
2405
+ assert(features.directfile !== null, "Initializing `MediaElementTrackChoiceManager` without Directfile feature");
2406
+ assert(this.videoElement !== null, "Initializing `MediaElementTrackChoiceManager` on a disposed RxPlayer");
2407
+ var mediaElementTrackChoiceManager = new features.directfile.mediaElementTrackChoiceManager(this.videoElement);
2408
+ var preferredAudioTracks = defaultAudioTrack === undefined ?
2409
+ this._priv_preferredAudioTracks :
2410
+ [defaultAudioTrack];
2411
+ mediaElementTrackChoiceManager.setPreferredAudioTracks(preferredAudioTracks, true);
2412
+ var preferredTextTracks = defaultTextTrack === undefined ?
2413
+ this._priv_preferredTextTracks :
2414
+ [defaultTextTrack];
2415
+ mediaElementTrackChoiceManager.setPreferredTextTracks(preferredTextTracks, true);
2416
+ mediaElementTrackChoiceManager
2417
+ .setPreferredVideoTracks(this._priv_preferredVideoTracks, true);
2418
+ this._priv_triggerEventIfNotStopped("availableAudioTracksChange", mediaElementTrackChoiceManager.getAvailableAudioTracks(), cancelSignal);
2419
+ this._priv_triggerEventIfNotStopped("availableVideoTracksChange", mediaElementTrackChoiceManager.getAvailableVideoTracks(), cancelSignal);
2420
+ this._priv_triggerEventIfNotStopped("availableTextTracksChange", mediaElementTrackChoiceManager.getAvailableTextTracks(), cancelSignal);
2421
+ this._priv_triggerEventIfNotStopped("audioTrackChange", (_a = mediaElementTrackChoiceManager.getChosenAudioTrack()) !== null && _a !== void 0 ? _a : null, cancelSignal);
2422
+ this._priv_triggerEventIfNotStopped("textTrackChange", (_b = mediaElementTrackChoiceManager.getChosenTextTrack()) !== null && _b !== void 0 ? _b : null, cancelSignal);
2423
+ this._priv_triggerEventIfNotStopped("videoTrackChange", (_c = mediaElementTrackChoiceManager.getChosenVideoTrack()) !== null && _c !== void 0 ? _c : null, cancelSignal);
2424
+ mediaElementTrackChoiceManager
2425
+ .addEventListener("availableVideoTracksChange", function (val) {
2426
+ return _this.trigger("availableVideoTracksChange", val);
2086
2427
  });
2087
- formattedError.fatal = true;
2088
- contentInfos.currentContentCanceller.cancel();
2089
- this._priv_cleanUpCurrentContentState();
2090
- this._priv_currentError = formattedError;
2091
- log_1.default.error("API: The player stopped because of an error", formattedError);
2092
- this._priv_setPlayerState("STOPPED" /* PLAYER_STATES.STOPPED */);
2093
- // TODO This condition is here because the eventual callback called when the
2094
- // player state is updated can launch a new content, thus the error will not
2095
- // be here anymore, in which case triggering the "error" event is unwanted.
2096
- // This is very ugly though, and we should probable have a better solution
2097
- if (this._priv_currentError === formattedError) {
2098
- this.trigger("error", formattedError);
2099
- }
2100
- }
2101
- }
2102
- Player.version = /* PLAYER_VERSION */ "4.0.0-dev.2023102700";
2103
- exports.default = Player;
2428
+ mediaElementTrackChoiceManager
2429
+ .addEventListener("availableAudioTracksChange", function (val) {
2430
+ return _this.trigger("availableAudioTracksChange", val);
2431
+ });
2432
+ mediaElementTrackChoiceManager
2433
+ .addEventListener("availableTextTracksChange", function (val) {
2434
+ return _this.trigger("availableTextTracksChange", val);
2435
+ });
2436
+ mediaElementTrackChoiceManager
2437
+ .addEventListener("audioTrackChange", function (val) {
2438
+ return _this.trigger("audioTrackChange", val);
2439
+ });
2440
+ mediaElementTrackChoiceManager
2441
+ .addEventListener("videoTrackChange", function (val) {
2442
+ return _this.trigger("videoTrackChange", val);
2443
+ });
2444
+ mediaElementTrackChoiceManager
2445
+ .addEventListener("textTrackChange", function (val) {
2446
+ return _this.trigger("textTrackChange", val);
2447
+ });
2448
+ return mediaElementTrackChoiceManager;
2449
+ };
2450
+ return Player;
2451
+ }(EventEmitter));
2452
+ Player.version = /* PLAYER_VERSION */ "3.33.0-canal.2023111400";
2453
+ export default Player;