rx-player 4.4.1-dev.2025101500 → 4.4.1

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 (350) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/README.md +111 -50
  3. package/VERSION +1 -1
  4. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
  5. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
  6. package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  7. package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +1 -1
  8. package/dist/commonjs/core/{entry → main/common}/FreezeResolver.d.ts +3 -3
  9. package/dist/commonjs/core/main/common/FreezeResolver.d.ts.map +1 -0
  10. package/dist/commonjs/core/{entry → main/common}/FreezeResolver.js +3 -3
  11. package/dist/commonjs/core/{entry → main/common}/content_time_boundaries_observer.d.ts +5 -5
  12. package/dist/commonjs/core/main/common/content_time_boundaries_observer.d.ts.map +1 -0
  13. package/dist/commonjs/core/{entry → main/common}/content_time_boundaries_observer.js +6 -6
  14. package/dist/{es2017/core/entry → commonjs/core/main/common}/create_content_time_boundaries_observer.d.ts +6 -6
  15. package/dist/commonjs/core/main/common/create_content_time_boundaries_observer.d.ts.map +1 -0
  16. package/dist/commonjs/core/{entry → main/common}/create_content_time_boundaries_observer.js +1 -1
  17. package/dist/{es2017/core/entry → commonjs/core/main/common}/get_buffered_data_per_media_buffer.d.ts +4 -4
  18. package/dist/commonjs/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +1 -0
  19. package/dist/commonjs/core/{entry → main/common}/get_buffered_data_per_media_buffer.js +1 -1
  20. package/dist/{es2017/core/entry → commonjs/core/main/common}/get_thumbnail_data.d.ts +3 -3
  21. package/dist/commonjs/core/main/common/get_thumbnail_data.d.ts.map +1 -0
  22. package/dist/commonjs/core/{entry → main/common}/get_thumbnail_data.js +2 -2
  23. package/dist/{es2017/core/entry → commonjs/core/main/common}/synchronize_sinks_on_observation.d.ts +2 -2
  24. package/dist/commonjs/core/main/common/synchronize_sinks_on_observation.d.ts.map +1 -0
  25. package/dist/{es2017/core/entry → commonjs/core/main/worker}/content_preparer.d.ts +15 -22
  26. package/dist/commonjs/core/main/worker/content_preparer.d.ts.map +1 -0
  27. package/dist/commonjs/core/{entry → main/worker}/content_preparer.js +64 -62
  28. package/dist/commonjs/core/main/worker/globals.d.ts +14 -0
  29. package/dist/commonjs/core/main/worker/globals.d.ts.map +1 -0
  30. package/dist/commonjs/core/main/worker/globals.js +26 -0
  31. package/dist/commonjs/core/main/worker/index.d.ts +3 -0
  32. package/dist/commonjs/core/main/worker/index.d.ts.map +1 -0
  33. package/dist/commonjs/core/main/worker/index.js +4 -0
  34. package/dist/commonjs/core/main/worker/send_message.d.ts +4 -0
  35. package/dist/commonjs/core/main/worker/send_message.d.ts.map +1 -0
  36. package/dist/commonjs/core/main/worker/send_message.js +23 -0
  37. package/dist/{es2017/core/entry → commonjs/core/main/worker}/track_choice_setter.d.ts +4 -4
  38. package/dist/commonjs/core/main/worker/track_choice_setter.d.ts.map +1 -0
  39. package/dist/commonjs/core/{entry → main/worker}/track_choice_setter.js +4 -4
  40. package/dist/commonjs/core/main/worker/worker_main.d.ts +2 -0
  41. package/dist/commonjs/core/main/worker/worker_main.d.ts.map +1 -0
  42. package/dist/commonjs/core/{entry/core_entry.js → main/worker/worker_main.js} +153 -192
  43. package/dist/commonjs/core/{entry/core_text_displayer_interface.d.ts → main/worker/worker_text_displayer_interface.d.ts} +11 -11
  44. package/dist/commonjs/core/main/worker/worker_text_displayer_interface.d.ts.map +1 -0
  45. package/dist/commonjs/core/{entry/core_text_displayer_interface.js → main/worker/worker_text_displayer_interface.js} +22 -22
  46. package/dist/commonjs/core/types.d.ts +1 -519
  47. package/dist/commonjs/core/types.d.ts.map +1 -1
  48. package/dist/commonjs/core/types.js +0 -1
  49. package/dist/commonjs/experimental/features/local.d.ts.map +1 -1
  50. package/dist/commonjs/experimental/features/local.js +1 -7
  51. package/dist/commonjs/experimental/features/metaplaylist.d.ts.map +1 -1
  52. package/dist/commonjs/experimental/features/metaplaylist.js +1 -7
  53. package/dist/commonjs/experimental/features/multi_thread.d.ts.map +1 -1
  54. package/dist/commonjs/experimental/features/multi_thread.js +2 -6
  55. package/dist/commonjs/features/features_object.js +1 -1
  56. package/dist/commonjs/features/list/dash.d.ts.map +1 -1
  57. package/dist/commonjs/features/list/dash.js +1 -7
  58. package/dist/commonjs/features/list/dash_wasm.d.ts.map +1 -1
  59. package/dist/commonjs/features/list/dash_wasm.js +1 -7
  60. package/dist/commonjs/features/list/media_source_main.d.ts.map +1 -1
  61. package/dist/commonjs/features/list/media_source_main.js +1 -7
  62. package/dist/commonjs/features/list/smooth.d.ts.map +1 -1
  63. package/dist/commonjs/features/list/smooth.js +1 -7
  64. package/dist/commonjs/features/types.d.ts +4 -20
  65. package/dist/commonjs/features/types.d.ts.map +1 -1
  66. package/dist/commonjs/main_thread/api/public_api.d.ts.map +1 -1
  67. package/dist/commonjs/main_thread/api/public_api.js +44 -40
  68. package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts +108 -166
  69. package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts.map +1 -1
  70. package/dist/commonjs/main_thread/init/media_source_content_initializer.js +918 -1491
  71. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts +308 -0
  72. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -0
  73. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +1713 -0
  74. package/dist/commonjs/main_thread/init/send_message.d.ts +3 -0
  75. package/dist/commonjs/main_thread/init/send_message.d.ts.map +1 -0
  76. package/dist/commonjs/main_thread/init/send_message.js +13 -0
  77. package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -1
  78. package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.js +1 -2
  79. package/dist/commonjs/main_thread/init/utils/update_manifest_codec_support.d.ts +1 -1
  80. package/dist/commonjs/main_thread/init/utils/update_manifest_codec_support.d.ts.map +1 -1
  81. package/dist/commonjs/main_thread/types.d.ts +0 -537
  82. package/dist/commonjs/main_thread/types.d.ts.map +1 -1
  83. package/dist/commonjs/manifest/utils.d.ts.map +1 -1
  84. package/dist/commonjs/manifest/utils.js +4 -18
  85. package/dist/commonjs/mse/worker_media_source_interface.d.ts +2 -2
  86. package/dist/commonjs/mse/worker_media_source_interface.d.ts.map +1 -1
  87. package/dist/commonjs/mse/worker_media_source_interface.js +12 -12
  88. package/dist/commonjs/multithread_types.d.ts +915 -0
  89. package/dist/commonjs/multithread_types.d.ts.map +1 -0
  90. package/dist/commonjs/multithread_types.js +7 -0
  91. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts +1 -1
  92. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
  93. package/dist/commonjs/parsers/manifest/smooth/create_parser.js +27 -31
  94. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts +2 -3
  95. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
  96. package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.js +7 -16
  97. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts +2 -3
  98. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
  99. package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.js +6 -37
  100. package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -1
  101. package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts.map +1 -1
  102. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts +2 -3
  103. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
  104. package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.js +5 -28
  105. package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts +28 -8
  106. package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts.map +1 -1
  107. package/dist/commonjs/playback_observer/media_element_playback_observer.js +146 -64
  108. package/dist/{es2017/playback_observer/core_playback_observer.d.ts → commonjs/playback_observer/worker_playback_observer.d.ts} +8 -8
  109. package/dist/commonjs/playback_observer/worker_playback_observer.d.ts.map +1 -0
  110. package/dist/commonjs/playback_observer/{core_playback_observer.js → worker_playback_observer.js} +13 -13
  111. package/dist/commonjs/transports/smooth/pipelines.d.ts.map +1 -1
  112. package/dist/commonjs/transports/smooth/pipelines.js +3 -25
  113. package/dist/commonjs/worker_entry_point.js +2 -62
  114. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
  115. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
  116. package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  117. package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
  118. package/dist/es2017/core/{entry → main/common}/FreezeResolver.d.ts +3 -3
  119. package/dist/es2017/core/main/common/FreezeResolver.d.ts.map +1 -0
  120. package/dist/es2017/core/{entry → main/common}/FreezeResolver.js +3 -3
  121. package/dist/es2017/core/{entry → main/common}/content_time_boundaries_observer.d.ts +5 -5
  122. package/dist/es2017/core/main/common/content_time_boundaries_observer.d.ts.map +1 -0
  123. package/dist/es2017/core/{entry → main/common}/content_time_boundaries_observer.js +6 -6
  124. package/dist/{commonjs/core/entry → es2017/core/main/common}/create_content_time_boundaries_observer.d.ts +6 -6
  125. package/dist/es2017/core/main/common/create_content_time_boundaries_observer.d.ts.map +1 -0
  126. package/dist/es2017/core/{entry → main/common}/create_content_time_boundaries_observer.js +1 -1
  127. package/dist/{commonjs/core/entry → es2017/core/main/common}/get_buffered_data_per_media_buffer.d.ts +4 -4
  128. package/dist/es2017/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +1 -0
  129. package/dist/es2017/core/{entry → main/common}/get_buffered_data_per_media_buffer.js +1 -1
  130. package/dist/{commonjs/core/entry → es2017/core/main/common}/get_thumbnail_data.d.ts +3 -3
  131. package/dist/es2017/core/main/common/get_thumbnail_data.d.ts.map +1 -0
  132. package/dist/es2017/core/{entry → main/common}/get_thumbnail_data.js +2 -2
  133. package/dist/{commonjs/core/entry → es2017/core/main/common}/synchronize_sinks_on_observation.d.ts +2 -2
  134. package/dist/es2017/core/main/common/synchronize_sinks_on_observation.d.ts.map +1 -0
  135. package/dist/{commonjs/core/entry → es2017/core/main/worker}/content_preparer.d.ts +15 -22
  136. package/dist/es2017/core/main/worker/content_preparer.d.ts.map +1 -0
  137. package/dist/es2017/core/{entry → main/worker}/content_preparer.js +55 -53
  138. package/dist/es2017/core/main/worker/globals.d.ts +14 -0
  139. package/dist/es2017/core/main/worker/globals.d.ts.map +1 -0
  140. package/dist/es2017/core/main/worker/globals.js +18 -0
  141. package/dist/es2017/core/main/worker/index.d.ts +3 -0
  142. package/dist/es2017/core/main/worker/index.d.ts.map +1 -0
  143. package/dist/es2017/core/main/worker/index.js +2 -0
  144. package/dist/es2017/core/main/worker/send_message.d.ts +4 -0
  145. package/dist/es2017/core/main/worker/send_message.d.ts.map +1 -0
  146. package/dist/es2017/core/main/worker/send_message.js +19 -0
  147. package/dist/{commonjs/core/entry → es2017/core/main/worker}/track_choice_setter.d.ts +4 -4
  148. package/dist/es2017/core/main/worker/track_choice_setter.d.ts.map +1 -0
  149. package/dist/es2017/core/{entry → main/worker}/track_choice_setter.js +4 -4
  150. package/dist/es2017/core/main/worker/worker_main.d.ts +2 -0
  151. package/dist/es2017/core/main/worker/worker_main.d.ts.map +1 -0
  152. package/dist/es2017/core/{entry/core_entry.js → main/worker/worker_main.js} +114 -153
  153. package/dist/es2017/core/{entry/core_text_displayer_interface.d.ts → main/worker/worker_text_displayer_interface.d.ts} +11 -11
  154. package/dist/es2017/core/main/worker/worker_text_displayer_interface.d.ts.map +1 -0
  155. package/dist/es2017/core/{entry/core_text_displayer_interface.js → main/worker/worker_text_displayer_interface.js} +10 -10
  156. package/dist/es2017/core/types.d.ts +1 -519
  157. package/dist/es2017/core/types.d.ts.map +1 -1
  158. package/dist/es2017/core/types.js +0 -1
  159. package/dist/es2017/experimental/features/local.d.ts.map +1 -1
  160. package/dist/es2017/experimental/features/local.js +1 -7
  161. package/dist/es2017/experimental/features/metaplaylist.d.ts.map +1 -1
  162. package/dist/es2017/experimental/features/metaplaylist.js +1 -7
  163. package/dist/es2017/experimental/features/multi_thread.d.ts.map +1 -1
  164. package/dist/es2017/experimental/features/multi_thread.js +2 -6
  165. package/dist/es2017/features/features_object.js +1 -1
  166. package/dist/es2017/features/list/dash.d.ts.map +1 -1
  167. package/dist/es2017/features/list/dash.js +1 -7
  168. package/dist/es2017/features/list/dash_wasm.d.ts.map +1 -1
  169. package/dist/es2017/features/list/dash_wasm.js +1 -7
  170. package/dist/es2017/features/list/media_source_main.d.ts.map +1 -1
  171. package/dist/es2017/features/list/media_source_main.js +1 -7
  172. package/dist/es2017/features/list/smooth.d.ts.map +1 -1
  173. package/dist/es2017/features/list/smooth.js +1 -7
  174. package/dist/es2017/features/types.d.ts +4 -20
  175. package/dist/es2017/features/types.d.ts.map +1 -1
  176. package/dist/es2017/main_thread/api/public_api.d.ts.map +1 -1
  177. package/dist/es2017/main_thread/api/public_api.js +45 -41
  178. package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts +108 -166
  179. package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts.map +1 -1
  180. package/dist/es2017/main_thread/init/media_source_content_initializer.js +760 -1405
  181. package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts +308 -0
  182. package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -0
  183. package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +1559 -0
  184. package/dist/es2017/main_thread/init/send_message.d.ts +3 -0
  185. package/dist/es2017/main_thread/init/send_message.d.ts.map +1 -0
  186. package/dist/es2017/main_thread/init/send_message.js +10 -0
  187. package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -1
  188. package/dist/es2017/main_thread/init/utils/create_core_playback_observer.js +1 -2
  189. package/dist/es2017/main_thread/init/utils/update_manifest_codec_support.d.ts +1 -1
  190. package/dist/es2017/main_thread/init/utils/update_manifest_codec_support.d.ts.map +1 -1
  191. package/dist/es2017/main_thread/types.d.ts +0 -537
  192. package/dist/es2017/main_thread/types.d.ts.map +1 -1
  193. package/dist/es2017/manifest/utils.d.ts.map +1 -1
  194. package/dist/es2017/manifest/utils.js +4 -16
  195. package/dist/es2017/mse/worker_media_source_interface.d.ts +2 -2
  196. package/dist/es2017/mse/worker_media_source_interface.d.ts.map +1 -1
  197. package/dist/es2017/mse/worker_media_source_interface.js +12 -12
  198. package/dist/es2017/multithread_types.d.ts +915 -0
  199. package/dist/es2017/multithread_types.d.ts.map +1 -0
  200. package/dist/es2017/multithread_types.js +6 -0
  201. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts +1 -1
  202. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
  203. package/dist/es2017/parsers/manifest/smooth/create_parser.js +27 -31
  204. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts +2 -3
  205. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
  206. package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.js +7 -16
  207. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts +2 -3
  208. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
  209. package/dist/es2017/parsers/manifest/smooth/parse_protection_node.js +6 -15
  210. package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -1
  211. package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts.map +1 -1
  212. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts +2 -3
  213. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
  214. package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.js +5 -6
  215. package/dist/es2017/playback_observer/media_element_playback_observer.d.ts +28 -8
  216. package/dist/es2017/playback_observer/media_element_playback_observer.d.ts.map +1 -1
  217. package/dist/es2017/playback_observer/media_element_playback_observer.js +144 -64
  218. package/dist/{commonjs/playback_observer/core_playback_observer.d.ts → es2017/playback_observer/worker_playback_observer.d.ts} +8 -8
  219. package/dist/es2017/playback_observer/worker_playback_observer.d.ts.map +1 -0
  220. package/dist/es2017/playback_observer/{core_playback_observer.js → worker_playback_observer.js} +2 -2
  221. package/dist/es2017/transports/smooth/pipelines.d.ts.map +1 -1
  222. package/dist/es2017/transports/smooth/pipelines.js +3 -25
  223. package/dist/es2017/worker_entry_point.js +2 -62
  224. package/dist/mpd-parser.wasm +0 -0
  225. package/dist/rx-player.js +19165 -21886
  226. package/dist/rx-player.min.js +20 -20
  227. package/dist/worker.js +8 -8
  228. package/eslint.config.mjs +647 -348
  229. package/package.json +6 -6
  230. package/src/README.md +198 -88
  231. package/src/__GENERATED_CODE/embedded_dash_wasm.ts +1 -1
  232. package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
  233. package/src/core/{entry → main}/README.md +1 -1
  234. package/src/core/{entry → main/common}/FreezeResolver.ts +7 -7
  235. package/src/core/{entry → main/common}/content_time_boundaries_observer.ts +10 -10
  236. package/src/core/{entry → main/common}/create_content_time_boundaries_observer.ts +7 -7
  237. package/src/core/{entry → main/common}/get_buffered_data_per_media_buffer.ts +6 -6
  238. package/src/core/{entry → main/common}/get_thumbnail_data.ts +5 -5
  239. package/src/core/{entry → main/common}/synchronize_sinks_on_observation.ts +2 -2
  240. package/src/core/{entry → main/worker}/content_preparer.ts +76 -77
  241. package/src/core/main/worker/globals.ts +38 -0
  242. package/src/core/main/worker/index.ts +2 -0
  243. package/src/core/main/worker/send_message.ts +28 -0
  244. package/src/core/{entry → main/worker}/track_choice_setter.ts +7 -7
  245. package/src/core/{entry/core_entry.ts → main/worker/worker_main.ts} +149 -223
  246. package/src/core/{entry/core_text_displayer_interface.ts → main/worker/worker_text_displayer_interface.ts} +26 -26
  247. package/src/core/types.ts +3 -631
  248. package/src/experimental/features/__tests__/local.test.ts +2 -11
  249. package/src/experimental/features/__tests__/metaplaylist.test.ts +2 -11
  250. package/src/experimental/features/__tests__/multi_thread.test.ts +3 -8
  251. package/src/experimental/features/local.ts +1 -7
  252. package/src/experimental/features/metaplaylist.ts +1 -7
  253. package/src/experimental/features/multi_thread.ts +2 -6
  254. package/src/features/features_object.ts +1 -1
  255. package/src/features/list/__tests__/dash.test.ts +3 -12
  256. package/src/features/list/__tests__/smooth.test.ts +2 -11
  257. package/src/features/list/dash.ts +1 -7
  258. package/src/features/list/dash_wasm.ts +1 -7
  259. package/src/features/list/media_source_main.ts +1 -7
  260. package/src/features/list/smooth.ts +1 -7
  261. package/src/features/types.ts +4 -23
  262. package/src/main_thread/README.md +0 -8
  263. package/src/main_thread/api/public_api.ts +51 -47
  264. package/src/main_thread/init/media_source_content_initializer.ts +1164 -2046
  265. package/src/main_thread/init/multi_thread_content_initializer.ts +2330 -0
  266. package/src/main_thread/init/send_message.ts +15 -0
  267. package/src/main_thread/init/utils/create_core_playback_observer.ts +1 -2
  268. package/src/main_thread/init/utils/update_manifest_codec_support.ts +1 -1
  269. package/src/main_thread/types.ts +0 -610
  270. package/src/manifest/utils.ts +4 -20
  271. package/src/mse/worker_media_source_interface.ts +35 -35
  272. package/src/multithread_types.ts +1095 -0
  273. package/src/parsers/manifest/smooth/create_parser.ts +34 -40
  274. package/src/parsers/manifest/smooth/parse_C_nodes.ts +8 -19
  275. package/src/parsers/manifest/smooth/parse_protection_node.ts +9 -17
  276. package/src/parsers/manifest/smooth/utils/parseBoolean.ts +1 -1
  277. package/src/parsers/manifest/smooth/utils/reduceChildren.ts +7 -10
  278. package/src/playback_observer/media_element_playback_observer.ts +177 -73
  279. package/src/playback_observer/{core_playback_observer.ts → worker_playback_observer.ts} +13 -13
  280. package/src/transports/smooth/pipelines.ts +5 -25
  281. package/src/worker_entry_point.ts +2 -71
  282. package/dist/commonjs/core/entry/FreezeResolver.d.ts.map +0 -1
  283. package/dist/commonjs/core/entry/content_preparer.d.ts.map +0 -1
  284. package/dist/commonjs/core/entry/content_time_boundaries_observer.d.ts.map +0 -1
  285. package/dist/commonjs/core/entry/core_entry.d.ts +0 -36
  286. package/dist/commonjs/core/entry/core_entry.d.ts.map +0 -1
  287. package/dist/commonjs/core/entry/core_text_displayer_interface.d.ts.map +0 -1
  288. package/dist/commonjs/core/entry/create_content_time_boundaries_observer.d.ts.map +0 -1
  289. package/dist/commonjs/core/entry/get_buffered_data_per_media_buffer.d.ts.map +0 -1
  290. package/dist/commonjs/core/entry/get_thumbnail_data.d.ts.map +0 -1
  291. package/dist/commonjs/core/entry/index.d.ts +0 -5
  292. package/dist/commonjs/core/entry/index.d.ts.map +0 -1
  293. package/dist/commonjs/core/entry/index.js +0 -4
  294. package/dist/commonjs/core/entry/synchronize_sinks_on_observation.d.ts.map +0 -1
  295. package/dist/commonjs/core/entry/track_choice_setter.d.ts.map +0 -1
  296. package/dist/commonjs/core/entry/utils.d.ts +0 -3
  297. package/dist/commonjs/core/entry/utils.d.ts.map +0 -1
  298. package/dist/commonjs/core/entry/utils.js +0 -11
  299. package/dist/commonjs/main_thread/core_interface/base.d.ts +0 -13
  300. package/dist/commonjs/main_thread/core_interface/base.d.ts.map +0 -1
  301. package/dist/commonjs/main_thread/core_interface/base.js +0 -32
  302. package/dist/commonjs/main_thread/core_interface/monothread.d.ts +0 -13
  303. package/dist/commonjs/main_thread/core_interface/monothread.d.ts.map +0 -1
  304. package/dist/commonjs/main_thread/core_interface/monothread.js +0 -56
  305. package/dist/commonjs/main_thread/core_interface/multithread.d.ts +0 -25
  306. package/dist/commonjs/main_thread/core_interface/multithread.d.ts.map +0 -1
  307. package/dist/commonjs/main_thread/core_interface/multithread.js +0 -67
  308. package/dist/commonjs/main_thread/core_interface/types.d.ts +0 -6
  309. package/dist/commonjs/main_thread/core_interface/types.d.ts.map +0 -1
  310. package/dist/commonjs/main_thread/core_interface/types.js +0 -2
  311. package/dist/commonjs/playback_observer/core_playback_observer.d.ts.map +0 -1
  312. package/dist/es2017/core/entry/FreezeResolver.d.ts.map +0 -1
  313. package/dist/es2017/core/entry/content_preparer.d.ts.map +0 -1
  314. package/dist/es2017/core/entry/content_time_boundaries_observer.d.ts.map +0 -1
  315. package/dist/es2017/core/entry/core_entry.d.ts +0 -36
  316. package/dist/es2017/core/entry/core_entry.d.ts.map +0 -1
  317. package/dist/es2017/core/entry/core_text_displayer_interface.d.ts.map +0 -1
  318. package/dist/es2017/core/entry/create_content_time_boundaries_observer.d.ts.map +0 -1
  319. package/dist/es2017/core/entry/get_buffered_data_per_media_buffer.d.ts.map +0 -1
  320. package/dist/es2017/core/entry/get_thumbnail_data.d.ts.map +0 -1
  321. package/dist/es2017/core/entry/index.d.ts +0 -5
  322. package/dist/es2017/core/entry/index.d.ts.map +0 -1
  323. package/dist/es2017/core/entry/index.js +0 -2
  324. package/dist/es2017/core/entry/synchronize_sinks_on_observation.d.ts.map +0 -1
  325. package/dist/es2017/core/entry/track_choice_setter.d.ts.map +0 -1
  326. package/dist/es2017/core/entry/utils.d.ts +0 -3
  327. package/dist/es2017/core/entry/utils.d.ts.map +0 -1
  328. package/dist/es2017/core/entry/utils.js +0 -8
  329. package/dist/es2017/main_thread/core_interface/base.d.ts +0 -13
  330. package/dist/es2017/main_thread/core_interface/base.d.ts.map +0 -1
  331. package/dist/es2017/main_thread/core_interface/base.js +0 -28
  332. package/dist/es2017/main_thread/core_interface/monothread.d.ts +0 -13
  333. package/dist/es2017/main_thread/core_interface/monothread.d.ts.map +0 -1
  334. package/dist/es2017/main_thread/core_interface/monothread.js +0 -32
  335. package/dist/es2017/main_thread/core_interface/multithread.d.ts +0 -25
  336. package/dist/es2017/main_thread/core_interface/multithread.d.ts.map +0 -1
  337. package/dist/es2017/main_thread/core_interface/multithread.js +0 -45
  338. package/dist/es2017/main_thread/core_interface/types.d.ts +0 -6
  339. package/dist/es2017/main_thread/core_interface/types.d.ts.map +0 -1
  340. package/dist/es2017/main_thread/core_interface/types.js +0 -1
  341. package/dist/es2017/playback_observer/core_playback_observer.d.ts.map +0 -1
  342. package/src/core/entry/index.ts +0 -4
  343. package/src/core/entry/utils.ts +0 -11
  344. package/src/main_thread/core_interface/README.md +0 -22
  345. package/src/main_thread/core_interface/base.ts +0 -36
  346. package/src/main_thread/core_interface/monothread.ts +0 -46
  347. package/src/main_thread/core_interface/multithread.ts +0 -49
  348. package/src/main_thread/core_interface/types.ts +0 -5
  349. /package/dist/commonjs/core/{entry → main/common}/synchronize_sinks_on_observation.js +0 -0
  350. /package/dist/es2017/core/{entry → main/common}/synchronize_sinks_on_observation.js +0 -0
@@ -1,6 +1,6 @@
1
- import type { IAdaptation, IPeriod, IRepresentation } from "../../manifest";
2
- import type { IFreezingStatus, IRebufferingStatus, ObservationPosition } from "../../playback_observer";
3
- import type SegmentSinksStore from "../segment_sinks";
1
+ import type { IAdaptation, IPeriod, IRepresentation } from "../../../manifest";
2
+ import type { IFreezingStatus, IRebufferingStatus, ObservationPosition } from "../../../playback_observer";
3
+ import type SegmentSinksStore from "../../segment_sinks";
4
4
  /**
5
5
  * Set when there is a freeze which seems to be specifically linked to a,
6
6
  * or multiple, content's `Representation` despite no attribute of it
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FreezeResolver.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/common/FreezeResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,iBAAiB,MAAM,qBAAqB,CAAC;AAiDzD;;;;;;GAMG;AACH,MAAM,WAAW,wCAAwC;IACvD,IAAI,EAAE,uBAAuB,CAAC;IAC9B,qCAAqC;IACrC,KAAK,EAAE,KAAK,CAAC;QACX,UAAU,EAAE,WAAW,CAAC;QACxB,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,EAAE,eAAe,CAAC;KACjC,CAAC,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE;QACL;;;WAGG;QACH,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,IAAI,CAAC;CACb;AAED,mEAAmE;AACnE,MAAM,MAAM,iBAAiB,GACzB,wCAAwC,GACxC,sBAAsB,GACtB,uBAAuB,CAAC;AAE5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,qEAAqE;IACrE,OAAO,CAAC,kBAAkB,CAAoB;IAE9C,8EAA8E;IAC9E,OAAO,CAAC,gBAAgB,CAKtB;IAEF;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB,CAAgB;IAE1C;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAKhB;IAET;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,uCAAuC,CAAgB;gBAEnD,iBAAiB,EAAE,iBAAiB;IAWhD;;;;;;;;;;;;OAYG;IACI,gBAAgB,CACrB,WAAW,EAAE,0BAA0B,GACtC,iBAAiB,GAAG,IAAI;IAqF3B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,qCAAqC;IAwD7C;;;;;;;;;OASG;IACH,OAAO,CAAC,2BAA2B;IA0GnC;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;CA4C9B;AA4ED,2DAA2D;AAC3D,MAAM,WAAW,0BAA0B;IACzC,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACvC;;;;;;OAMG;IACH,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC;IACjC;;;;OAIG;IACH,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,kEAAkE;IAClE,WAAW,EAAE,OAAO,CAAC;CACtB"}
@@ -11,9 +11,9 @@ var __values = (this && this.__values) || function(o) {
11
11
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- var experimental_1 = require("../../experimental");
15
- var log_1 = require("../../log");
16
- var monotonic_timestamp_1 = require("../../utils/monotonic_timestamp");
14
+ var experimental_1 = require("../../../experimental");
15
+ var log_1 = require("../../../log");
16
+ var monotonic_timestamp_1 = require("../../../utils/monotonic_timestamp");
17
17
  /**
18
18
  * "Freezing" is a complex situation indicating that playback is not advancing
19
19
  * despite no valid reason for it not to.
@@ -13,11 +13,11 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import type { IStreamOrchestratorPlaybackObservation, IBufferType } from "../../core/types";
17
- import type { IManifest, IAdaptation, IPeriod } from "../../manifest";
18
- import type { IReadOnlyPlaybackObserver } from "../../playback_observer";
19
- import type { IPlayerError } from "../../public_types";
20
- import EventEmitter from "../../utils/event_emitter";
16
+ import type { IStreamOrchestratorPlaybackObservation, IBufferType } from "../../../core/types";
17
+ import type { IManifest, IAdaptation, IPeriod } from "../../../manifest";
18
+ import type { IReadOnlyPlaybackObserver } from "../../../playback_observer";
19
+ import type { IPlayerError } from "../../../public_types";
20
+ import EventEmitter from "../../../utils/event_emitter";
21
21
  /**
22
22
  * Observes what's being played and take care of media events relating to time
23
23
  * boundaries:
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content_time_boundaries_observer.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/common/content_time_boundaries_observer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,sCAAsC,EACtC,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EAEX,OAAO,EACR,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,YAAY,MAAM,8BAA8B,CAAC;AAMxD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,YAAY,CAAC,mCAAmC,CAAC;IAC1G,mFAAmF;IACnF,OAAO,CAAC,UAAU,CAAgB;IAElC,oDAAoD;IACpD,OAAO,CAAC,cAAc,CAAuC;IAE7D,2DAA2D;IAC3D,OAAO,CAAC,SAAS,CAAY;IAE7B,uEAAuE;IACvE,OAAO,CAAC,0BAA0B,CAA4B;IAE9D,kEAAkE;IAClE,OAAO,CAAC,eAAe,CAAgB;IAEvC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB,CAAgB;IAE5C;;;OAGG;gBAED,QAAQ,EAAE,SAAS,EACnB,gBAAgB,EAAE,yBAAyB,CAAC,sCAAsC,CAAC,EACnF,WAAW,EAAE,WAAW,EAAE;IA6D5B;;;;OAIG;IACI,oBAAoB,IAAI,0BAA0B;IAIzD;;;;;;;;;;;;OAYG;IACI,kBAAkB,CACvB,UAAU,EAAE,WAAW,EACvB,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,WAAW,GAAG,IAAI,GAC7B,IAAI;IA+BP;;;;;;;;;OASG;IACI,sBAAsB,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAI7E;;;;;;;;;OASG;IACI,eAAe,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAItE;;;;;;;;OAQG;IACI,4BAA4B,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAQlE;;;;;;;;;;OAUG;IACI,0BAA0B,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAQhE;;;OAGG;IACI,OAAO;IAKd,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,2BAA2B;IAWnC,OAAO,CAAC,mBAAmB;IAkC3B,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,6BAA6B;IAYrC,OAAO,CAAC,iBAAiB;CAc1B;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;OAUG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,mCAAmC;IAClD,mDAAmD;IACnD,OAAO,EAAE,YAAY,CAAC;IACtB,0DAA0D;IAC1D,YAAY,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,oBAAoB,EAAE,0BAA0B,CAAC;IACjD;;;;;;;;;OASG;IACH,WAAW,EAAE,IAAI,CAAC;IAClB;;;;;;;;;OASG;IACH,YAAY,EAAE,IAAI,CAAC;CACpB;AAgPD,MAAM,MAAM,uCAAuC,GAAG,IAAI,CACxD,sCAAsC,EACtC,UAAU,CACX,CAAC"}
@@ -41,12 +41,12 @@ var __values = (this && this.__values) || function(o) {
41
41
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
42
42
  };
43
43
  Object.defineProperty(exports, "__esModule", { value: true });
44
- var errors_1 = require("../../errors");
45
- var event_emitter_1 = require("../../utils/event_emitter");
46
- var is_null_or_undefined_1 = require("../../utils/is_null_or_undefined");
47
- var queue_microtask_1 = require("../../utils/queue_microtask");
48
- var sorted_list_1 = require("../../utils/sorted_list");
49
- var task_canceller_1 = require("../../utils/task_canceller");
44
+ var errors_1 = require("../../../errors");
45
+ var event_emitter_1 = require("../../../utils/event_emitter");
46
+ var is_null_or_undefined_1 = require("../../../utils/is_null_or_undefined");
47
+ var queue_microtask_1 = require("../../../utils/queue_microtask");
48
+ var sorted_list_1 = require("../../../utils/sorted_list");
49
+ var task_canceller_1 = require("../../../utils/task_canceller");
50
50
  /**
51
51
  * Observes what's being played and take care of media events relating to time
52
52
  * boundaries:
@@ -1,9 +1,9 @@
1
- import type { ISegmentSinksStore, IStreamOrchestratorPlaybackObservation } from "../../core/types";
2
- import type { IManifest, IPeriod } from "../../manifest";
3
- import type { IMediaSourceInterface } from "../../mse";
4
- import type { IReadOnlyPlaybackObserver } from "../../playback_observer";
5
- import type { IPlayerError } from "../../public_types";
6
- import type { CancellationSignal } from "../../utils/task_canceller";
1
+ import type { ISegmentSinksStore, IStreamOrchestratorPlaybackObservation } from "../../../core/types";
2
+ import type { IManifest, IPeriod } from "../../../manifest";
3
+ import type { IMediaSourceInterface } from "../../../mse";
4
+ import type { IReadOnlyPlaybackObserver } from "../../../playback_observer";
5
+ import type { IPlayerError } from "../../../public_types";
6
+ import type { CancellationSignal } from "../../../utils/task_canceller";
7
7
  import ContentTimeBoundariesObserver from "./content_time_boundaries_observer";
8
8
  export interface IContentTimeBoundariesObserverCallbacks {
9
9
  onWarning: (evt: IPlayerError) => void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create_content_time_boundaries_observer.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/common/create_content_time_boundaries_observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,sCAAsC,EACvC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,6BAA6B,MAAM,oCAAoC,CAAC;AAE/E,MAAM,WAAW,uCAAuC;IACtD,SAAS,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5C;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,OAAO,UAAU,mCAAmC,CACzD,QAAQ,EAAE,SAAS,EACnB,WAAW,EAAE,qBAAqB,EAClC,cAAc,EAAE,yBAAyB,CAAC,sCAAsC,CAAC,EACjF,iBAAiB,EAAE,kBAAkB,EACrC,SAAS,EAAE,uCAAuC,EAClD,YAAY,EAAE,kBAAkB,GAC/B,6BAA6B,CA+B/B"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = createContentTimeBoundariesObserver;
4
- var log_1 = require("../../log");
4
+ var log_1 = require("../../../log");
5
5
  var content_time_boundaries_observer_1 = require("./content_time_boundaries_observer");
6
6
  /**
7
7
  * Creates a `ContentTimeBoundariesObserver`, a class indicating various
@@ -1,7 +1,7 @@
1
- import type { ITextDisplayer } from "../../main_thread/types";
2
- import type { IMediaSourceInterface } from "../../mse";
3
- import type { ITrackType } from "../../public_types";
4
- import type { IRange } from "../../utils/ranges";
1
+ import type { ITextDisplayer } from "../../../main_thread/types";
2
+ import type { IMediaSourceInterface } from "../../../mse";
3
+ import type { ITrackType } from "../../../public_types";
4
+ import type { IRange } from "../../../utils/ranges";
5
5
  /**
6
6
  * Returns a JS object where keys are the type of buffers (e.g. "audio",
7
7
  * "video", "text") and values are the corresponding range of buffered
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_buffered_data_per_media_buffer.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/common/get_buffered_data_per_media_buffer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,6BAA6B,CACnD,oBAAoB,EAAE,qBAAqB,GAAG,IAAI,EAClD,aAAa,EAAE,cAAc,GAAG,IAAI,GACnC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,CA6BrC"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = getBufferedDataPerMediaBuffer;
4
- var array_find_1 = require("../../utils/array_find");
4
+ var array_find_1 = require("../../../utils/array_find");
5
5
  /**
6
6
  * Returns a JS object where keys are the type of buffers (e.g. "audio",
7
7
  * "video", "text") and values are the corresponding range of buffered
@@ -1,6 +1,6 @@
1
- import type { IManifest } from "../../manifest";
2
- import type { IThumbnailResponse } from "../../transports";
3
- import type { IThumbnailFetcher } from "../fetchers";
1
+ import type { IManifest } from "../../../manifest";
2
+ import type { IThumbnailResponse } from "../../../transports";
3
+ import type { IThumbnailFetcher } from "../../fetchers";
4
4
  /**
5
5
  * @param {function} fetchThumbnails
6
6
  * @param {Object} manifest
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_thumbnail_data.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/common/get_thumbnail_data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;GAOG;AACH,wBAA8B,gBAAgB,CAC5C,eAAe,EAAE,iBAAiB,EAClC,QAAQ,EAAE,SAAS,EACnB,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,kBAAkB,CAAC,CAmB7B"}
@@ -37,8 +37,8 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.default = getThumbnailData;
40
- var array_find_1 = require("../../utils/array_find");
41
- var task_canceller_1 = require("../../utils/task_canceller");
40
+ var array_find_1 = require("../../../utils/array_find");
41
+ var task_canceller_1 = require("../../../utils/task_canceller");
42
42
  /**
43
43
  * @param {function} fetchThumbnails
44
44
  * @param {Object} manifest
@@ -1,5 +1,5 @@
1
- import type { ICorePlaybackObservation } from "../../main_thread/init/utils/create_core_playback_observer";
2
- import type SegmentSinksStore from "../segment_sinks";
1
+ import type { ICorePlaybackObservation } from "../../../main_thread/init/utils/create_core_playback_observer";
2
+ import type SegmentSinksStore from "../../segment_sinks";
3
3
  /**
4
4
  * Synchronize SegmentSinks with what has been buffered.
5
5
  * @param {Object} observation - The just-received playback observation,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"synchronize_sinks_on_observation.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/common/synchronize_sinks_on_observation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+DAA+D,CAAC;AAC9G,OAAO,KAAK,iBAAiB,MAAM,qBAAqB,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAC1D,WAAW,EAAE,wBAAwB,EACrC,iBAAiB,EAAE,iBAAiB,GACnC,IAAI,CAQN"}
@@ -1,17 +1,15 @@
1
- import type { IContentInitializationData } from "../../main_thread/types";
2
- import type { IManifest } from "../../manifest";
3
- import type { IMediaSourceInterface } from "../../mse";
4
- import type { IRepresentationEstimator } from "../adaptive";
5
- import type { IRepresentationEstimatorThrottlers } from "../adaptive/adaptive_representation_selector";
6
- import CmcdDataBuilder from "../cmcd";
7
- import type { IManifestRefreshSettings } from "../fetchers";
8
- import { ManifestFetcher, SegmentQueueCreator } from "../fetchers";
9
- import type { IThumbnailFetcher } from "../fetchers/thumbnails/thumbnail_fetcher";
10
- import SegmentSinksStore from "../segment_sinks";
11
- import type { ICoreMessage } from "../types";
12
- import CoreTextDisplayerInterface from "./core_text_displayer_interface";
13
- import FreezeResolver from "./FreezeResolver";
1
+ import type { IManifest, IManifestMetadata } from "../../../manifest";
2
+ import type { IMediaSourceInterface } from "../../../mse";
3
+ import type { IContentInitializationData } from "../../../multithread_types";
4
+ import type { IRepresentationEstimator } from "../../adaptive";
5
+ import CmcdDataBuilder from "../../cmcd";
6
+ import type { IManifestRefreshSettings } from "../../fetchers";
7
+ import { ManifestFetcher, SegmentQueueCreator } from "../../fetchers";
8
+ import type { IThumbnailFetcher } from "../../fetchers/thumbnails/thumbnail_fetcher";
9
+ import SegmentSinksStore from "../../segment_sinks";
10
+ import FreezeResolver from "../common/FreezeResolver";
14
11
  import TrackChoiceSetter from "./track_choice_setter";
12
+ import WorkerTextDisplayerInterface from "./worker_text_displayer_interface";
15
13
  /**
16
14
  * Class facilitating the workflows behind loading a new content for the
17
15
  * RxPlayer Core:
@@ -75,9 +73,7 @@ export default class ContentPreparer {
75
73
  * initialized.
76
74
  * @returns {Promise.<Object>}
77
75
  */
78
- initializeNewContent(sendMessage: (msg: ICoreMessage, transferables?: Transferable[]) => void, context: IContentInitializationData,
79
- /** Allows to filter which Representations can be choosen. */
80
- throttlers: IRepresentationEstimatorThrottlers): Promise<IManifest>;
76
+ initializeNewContent(context: IContentInitializationData): Promise<IManifestMetadata>;
81
77
  /**
82
78
  * Get information on the current content prepared through the
83
79
  * `initializeNewContent` method, or `null` if no content is currently
@@ -94,15 +90,12 @@ export default class ContentPreparer {
94
90
  */
95
91
  scheduleManifestRefresh(settings: IManifestRefreshSettings): void;
96
92
  /**
97
- * Change the MediaSource attached for the current content.
98
- * It is assumed that main thread is already notified that such a reload is
99
- * happening.
93
+ * Signal the ContentPreparer that the MediaSource is "reloading".
100
94
  *
101
95
  * The returned Promise resolves when it restarts being ready.
102
- * @param {Function} sendMessage
103
96
  * @returns {Promise}
104
97
  */
105
- reloadMediaSource(sendMessage: (msg: ICoreMessage, transferables?: Transferable[]) => void): Promise<void>;
98
+ reloadMediaSource(): Promise<void>;
106
99
  /**
107
100
  * Dispose all resources linked to the currently preopared content if one and
108
101
  * stop linking it to this `ContentPreparer`.
@@ -160,7 +153,7 @@ export interface IPreparedContentData {
160
153
  */
161
154
  segmentSinksStore: SegmentSinksStore;
162
155
  /** Allows to send timed text media data so it can be rendered. */
163
- coreTextSender: CoreTextDisplayerInterface | null;
156
+ workerTextSender: WorkerTextDisplayerInterface | null;
164
157
  /**
165
158
  * Allows to create `SegmentQueue` which simplifies complex media segment
166
159
  * fetching.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content_preparer.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/worker/content_preparer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAG1D,OAAO,KAAK,EAEV,0BAA0B,EAC3B,MAAM,4BAA4B,CAAC;AAYpC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE/D,OAAO,eAAe,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,cAAc,MAAM,0BAA0B,CAAC;AAGtD,OAAO,iBAAiB,MAAM,uBAAuB,CAAC;AACtD,OAAO,4BAA4B,MAAM,mCAAmC,CAAC;AAK7E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC;;;;OAIG;IACH,OAAO,CAAC,eAAe,CAA8B;IACrD;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAgB;IACzC;;;;OAIG;IACH,OAAO,CAAC,4BAA4B,CAAgB;IAEpD,uBAAuB;IACvB,OAAO,CAAC,SAAS,CAAU;IAE3B;;;;;;;;OAQG;gBACS,EAAE,QAAQ,EAAE,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE;IAQ/C;;;;;;;;;;;OAWG;IACI,oBAAoB,CACzB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,iBAAiB,CAAC;IA8L7B;;;;;OAKG;IACI,iBAAiB,IAAI,oBAAoB,GAAG,IAAI;IAIvD;;;;;;OAMG;IACI,uBAAuB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,IAAI;IAIxE;;;;;OAKG;IACI,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CzC;;;OAGG;IACI,qBAAqB;CAI7B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC;;;;OAIG;IACH,6BAA6B,EAAE,OAAO,CAAC;IACvC;;;OAGG;IACH,WAAW,EAAE,qBAAqB,CAAC;IACnC,0DAA0D;IAC1D,eAAe,EAAE,eAAe,CAAC;IACjC;;;;OAIG;IACH,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,cAAc,CAAC;IAC/B;;;OAGG;IACH,uBAAuB,EAAE,wBAAwB,CAAC;IAClD;;;OAGG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,kEAAkE;IAClE,gBAAgB,EAAE,4BAA4B,GAAG,IAAI,CAAC;IACtD;;;OAGG;IACH,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,uCAAuC;IACvC,kBAAkB,EAAE,iBAAiB,CAAC;IACtC;;;OAGG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IACrC;;;;OAIG;IACH,cAAc,EAAE,OAAO,CAAC;CACzB"}
@@ -47,25 +47,28 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
47
47
  return to.concat(ar || Array.prototype.slice.call(from));
48
48
  };
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
- var browser_compatibility_types_1 = require("../../compat/browser_compatibility_types");
51
- var features_1 = require("../../features");
52
- var log_1 = require("../../log");
53
- var manifest_1 = require("../../manifest");
54
- var main_media_source_interface_1 = require("../../mse/main_media_source_interface");
55
- var worker_media_source_interface_1 = require("../../mse/worker_media_source_interface");
56
- var id_generator_1 = require("../../utils/id_generator");
57
- var is_null_or_undefined_1 = require("../../utils/is_null_or_undefined");
58
- var task_canceller_1 = require("../../utils/task_canceller");
59
- var adaptive_1 = require("../adaptive");
60
- var cmcd_1 = require("../cmcd");
61
- var fetchers_1 = require("../fetchers");
62
- var cdn_prioritizer_1 = require("../fetchers/cdn_prioritizer");
63
- var thumbnail_fetcher_1 = require("../fetchers/thumbnails/thumbnail_fetcher");
64
- var segment_sinks_1 = require("../segment_sinks");
65
- var core_text_displayer_interface_1 = require("./core_text_displayer_interface");
66
- var FreezeResolver_1 = require("./FreezeResolver");
50
+ var browser_compatibility_types_1 = require("../../../compat/browser_compatibility_types");
51
+ var features_1 = require("../../../features");
52
+ var log_1 = require("../../../log");
53
+ var manifest_1 = require("../../../manifest");
54
+ var main_media_source_interface_1 = require("../../../mse/main_media_source_interface");
55
+ var worker_media_source_interface_1 = require("../../../mse/worker_media_source_interface");
56
+ var assert_1 = require("../../../utils/assert");
57
+ var id_generator_1 = require("../../../utils/id_generator");
58
+ var is_null_or_undefined_1 = require("../../../utils/is_null_or_undefined");
59
+ var object_assign_1 = require("../../../utils/object_assign");
60
+ var task_canceller_1 = require("../../../utils/task_canceller");
61
+ var adaptive_1 = require("../../adaptive");
62
+ var cmcd_1 = require("../../cmcd");
63
+ var fetchers_1 = require("../../fetchers");
64
+ var cdn_prioritizer_1 = require("../../fetchers/cdn_prioritizer");
65
+ var thumbnail_fetcher_1 = require("../../fetchers/thumbnails/thumbnail_fetcher");
66
+ var segment_sinks_1 = require("../../segment_sinks");
67
+ var FreezeResolver_1 = require("../common/FreezeResolver");
68
+ var globals_1 = require("./globals");
69
+ var send_message_1 = require("./send_message");
67
70
  var track_choice_setter_1 = require("./track_choice_setter");
68
- var utils_1 = require("./utils");
71
+ var worker_text_displayer_interface_1 = require("./worker_text_displayer_interface");
69
72
  /** Function allowing to associate a unique identifier to all created `MediaSource` */
70
73
  var generateMediaSourceId = (0, id_generator_1.default)();
71
74
  /**
@@ -117,9 +120,7 @@ var ContentPreparer = /** @class */ (function () {
117
120
  * initialized.
118
121
  * @returns {Promise.<Object>}
119
122
  */
120
- ContentPreparer.prototype.initializeNewContent = function (sendMessage, context,
121
- /** Allows to filter which Representations can be choosen. */
122
- throttlers) {
123
+ ContentPreparer.prototype.initializeNewContent = function (context) {
123
124
  var _this = this;
124
125
  return new Promise(function (res, rej) {
125
126
  var _a, _b;
@@ -128,40 +129,39 @@ var ContentPreparer = /** @class */ (function () {
128
129
  var currentMediaSourceCanceller = new task_canceller_1.default();
129
130
  _this._currentMediaSourceCanceller = currentMediaSourceCanceller;
130
131
  currentMediaSourceCanceller.linkToSignal(contentCanceller.signal);
131
- var contentId = context.contentId, url = context.url, hasText = context.hasText, transportOptions = context.transportOptions, useMseInWorker = context.useMseInWorker, enableRepresentationAvoidance = context.enableRepresentationAvoidance, transport = context.transport;
132
+ var contentId = context.contentId, url = context.url, hasText = context.hasText, transportOptions = context.transportOptions, useMseInWorker = context.useMseInWorker, enableRepresentationAvoidance = context.enableRepresentationAvoidance;
132
133
  var manifest = null;
133
- var transportFn = features_1.default.transports[transport];
134
- if (typeof transportFn !== "function") {
135
- rej(new Error("transport \"".concat(transport, "\" not supported. ") +
136
- "Did you add the corresponding feature?"));
137
- return;
138
- }
134
+ // TODO better way
135
+ (0, assert_1.default)(features_1.default.transports.dash !== undefined, "Multithread RxPlayer should have access to the DASH feature");
139
136
  var representationFilter = typeof transportOptions.representationFilter === "string"
140
137
  ? (0, manifest_1.createRepresentationFilterFromFnString)(transportOptions.representationFilter)
141
- : transportOptions.representationFilter;
142
- var transportPipelines = transportFn(__assign(__assign({}, transportOptions), { representationFilter: representationFilter }));
138
+ : undefined;
139
+ var dashPipelines = features_1.default.transports.dash(__assign(__assign({}, transportOptions), { representationFilter: representationFilter }));
143
140
  var cmcdDataBuilder = context.cmcd === undefined ? null : new cmcd_1.default(context.cmcd);
144
- var manifestFetcher = new fetchers_1.ManifestFetcher(url === undefined ? undefined : [url], transportPipelines, __assign({ cmcdDataBuilder: cmcdDataBuilder }, context.manifestRetryOptions));
141
+ var manifestFetcher = new fetchers_1.ManifestFetcher(url === undefined ? undefined : [url], dashPipelines, __assign({ cmcdDataBuilder: cmcdDataBuilder }, context.manifestRetryOptions));
145
142
  var representationEstimator = (0, adaptive_1.default)({
146
143
  initialBitrates: {
147
144
  audio: (_a = context.initialAudioBitrate) !== null && _a !== void 0 ? _a : 0,
148
145
  video: (_b = context.initialVideoBitrate) !== null && _b !== void 0 ? _b : 0,
149
146
  },
150
147
  lowLatencyMode: transportOptions.lowLatencyMode,
151
- throttlers: throttlers,
148
+ throttlers: {
149
+ limitResolution: { video: globals_1.limitVideoResolution },
150
+ throttleBitrate: { video: globals_1.throttleVideoBitrate },
151
+ },
152
152
  });
153
153
  var unbindRejectOnCancellation = currentMediaSourceCanceller.signal.register(function (error) {
154
154
  rej(error);
155
155
  });
156
156
  var cdnPrioritizer = new cdn_prioritizer_1.default(contentCanceller.signal);
157
- var segmentQueueCreator = new fetchers_1.SegmentQueueCreator(transportPipelines, cdnPrioritizer, cmcdDataBuilder, context.segmentRetryOptions);
158
- var fetchThumbnailData = (0, thumbnail_fetcher_1.default)(transportPipelines.thumbnails, cdnPrioritizer);
157
+ var segmentQueueCreator = new fetchers_1.SegmentQueueCreator(dashPipelines, cdnPrioritizer, cmcdDataBuilder, context.segmentRetryOptions);
158
+ var fetchThumbnailData = (0, thumbnail_fetcher_1.default)(dashPipelines.thumbnails, cdnPrioritizer);
159
159
  var trackChoiceSetter = new track_choice_setter_1.default();
160
- var _c = __read(createMediaSourceInterfaceAndSegmentSinksStore(sendMessage, contentId, {
160
+ var _c = __read(createMediaSourceInterfaceAndSegmentSinksStore(contentId, {
161
161
  useMseInWorker: useMseInWorker,
162
162
  hasVideo: _this._hasVideo,
163
163
  hasText: hasText,
164
- }, currentMediaSourceCanceller.signal), 3), mediaSource = _c[0], segmentSinksStore = _c[1], coreTextSender = _c[2];
164
+ }, currentMediaSourceCanceller.signal), 3), mediaSource = _c[0], segmentSinksStore = _c[1], workerTextSender = _c[2];
165
165
  var freezeResolver = new FreezeResolver_1.default(segmentSinksStore);
166
166
  _this._currentContent = {
167
167
  cmcdDataBuilder: cmcdDataBuilder,
@@ -175,7 +175,7 @@ var ContentPreparer = /** @class */ (function () {
175
175
  segmentSinksStore: segmentSinksStore,
176
176
  segmentQueueCreator: segmentQueueCreator,
177
177
  fetchThumbnailData: fetchThumbnailData,
178
- coreTextSender: coreTextSender,
178
+ workerTextSender: workerTextSender,
179
179
  trackChoiceSetter: trackChoiceSetter,
180
180
  useMseInWorker: useMseInWorker,
181
181
  };
@@ -186,10 +186,10 @@ var ContentPreparer = /** @class */ (function () {
186
186
  manifestFetcher.dispose();
187
187
  });
188
188
  manifestFetcher.addEventListener("warning", function (err) {
189
- sendMessage({
190
- type: "warning" /* CoreMessageType.Warning */,
189
+ (0, send_message_1.default)({
190
+ type: "warning" /* WorkerMessageType.Warning */,
191
191
  contentId: contentId,
192
- value: (0, utils_1.formatErrorForSender)(err),
192
+ value: (0, send_message_1.formatErrorForSender)(err),
193
193
  });
194
194
  }, contentCanceller.signal);
195
195
  manifestFetcher.addEventListener("manifestReady", function (man) {
@@ -204,10 +204,10 @@ var ContentPreparer = /** @class */ (function () {
204
204
  checkIfReadyAndValidate();
205
205
  }, currentMediaSourceCanceller.signal);
206
206
  manifestFetcher.addEventListener("error", function (err) {
207
- sendMessage({
208
- type: "error" /* CoreMessageType.Error */,
207
+ (0, send_message_1.default)({
208
+ type: "error" /* WorkerMessageType.Error */,
209
209
  contentId: contentId,
210
- value: (0, utils_1.formatErrorForSender)(err),
210
+ value: (0, send_message_1.formatErrorForSender)(err),
211
211
  });
212
212
  rej(err);
213
213
  }, contentCanceller.signal);
@@ -219,19 +219,25 @@ var ContentPreparer = /** @class */ (function () {
219
219
  return;
220
220
  }
221
221
  updateCodecSupportInWorkerMode(manifest);
222
+ var sentManifest = manifest.getMetadataSnapshot();
222
223
  manifest.addEventListener("manifestUpdate", function (updates) {
223
224
  if (manifest === null) {
224
225
  // TODO log warn?
225
226
  return;
226
227
  }
227
- sendMessage({
228
- type: "manifest-update" /* CoreMessageType.ManifestUpdate */,
228
+ // Remove `periods` key to reduce cost of an unnecessary manifest
229
+ // clone.
230
+ var snapshot = (0, object_assign_1.default)(manifest.getMetadataSnapshot(), {
231
+ periods: [],
232
+ });
233
+ (0, send_message_1.default)({
234
+ type: "manifest-update" /* WorkerMessageType.ManifestUpdate */,
229
235
  contentId: contentId,
230
- value: { manifest: manifest, updates: updates },
236
+ value: { manifest: snapshot, updates: updates },
231
237
  });
232
238
  }, contentCanceller.signal);
233
239
  unbindRejectOnCancellation();
234
- res(manifest);
240
+ res(sentManifest);
235
241
  }
236
242
  });
237
243
  };
@@ -256,15 +262,12 @@ var ContentPreparer = /** @class */ (function () {
256
262
  (_a = this._currentContent) === null || _a === void 0 ? void 0 : _a.manifestFetcher.scheduleManualRefresh(settings);
257
263
  };
258
264
  /**
259
- * Change the MediaSource attached for the current content.
260
- * It is assumed that main thread is already notified that such a reload is
261
- * happening.
265
+ * Signal the ContentPreparer that the MediaSource is "reloading".
262
266
  *
263
267
  * The returned Promise resolves when it restarts being ready.
264
- * @param {Function} sendMessage
265
268
  * @returns {Promise}
266
269
  */
267
- ContentPreparer.prototype.reloadMediaSource = function (sendMessage) {
270
+ ContentPreparer.prototype.reloadMediaSource = function () {
268
271
  var _this = this;
269
272
  this._currentMediaSourceCanceller.cancel();
270
273
  if (this._currentContent === null) {
@@ -272,15 +275,15 @@ var ContentPreparer = /** @class */ (function () {
272
275
  }
273
276
  this._currentContent.trackChoiceSetter.reset();
274
277
  this._currentMediaSourceCanceller = new task_canceller_1.default();
275
- var _a = __read(createMediaSourceInterfaceAndSegmentSinksStore(sendMessage, this._currentContent.contentId, {
278
+ var _a = __read(createMediaSourceInterfaceAndSegmentSinksStore(this._currentContent.contentId, {
276
279
  useMseInWorker: this._currentContent.useMseInWorker,
277
280
  hasVideo: this._hasVideo,
278
- hasText: this._currentContent.coreTextSender !== null,
279
- }, this._currentMediaSourceCanceller.signal), 3), mediaSourceInterface = _a[0], segmentSinksStore = _a[1], coreTextSender = _a[2];
281
+ hasText: this._currentContent.workerTextSender !== null,
282
+ }, this._currentMediaSourceCanceller.signal), 3), mediaSourceInterface = _a[0], segmentSinksStore = _a[1], workerTextSender = _a[2];
280
283
  this._currentContent.mediaSource = mediaSourceInterface;
281
284
  this._currentContent.segmentSinksStore = segmentSinksStore;
282
285
  this._currentContent.freezeResolver = new FreezeResolver_1.default(segmentSinksStore);
283
- this._currentContent.coreTextSender = coreTextSender;
286
+ this._currentContent.workerTextSender = workerTextSender;
284
287
  return new Promise(function (res, rej) {
285
288
  mediaSourceInterface.addEventListener("mediaSourceOpen", function () {
286
289
  res();
@@ -305,7 +308,6 @@ var ContentPreparer = /** @class */ (function () {
305
308
  }());
306
309
  exports.default = ContentPreparer;
307
310
  /**
308
- * @param {Function} sendMessage
309
311
  * @param {string} contentId
310
312
  * @param {Object} capabilities
311
313
  * @param {boolean} capabilities.useMseInWorker
@@ -314,7 +316,7 @@ exports.default = ContentPreparer;
314
316
  * @param {Object} cancelSignal
315
317
  * @returns {Array.<Object>}
316
318
  */
317
- function createMediaSourceInterfaceAndSegmentSinksStore(sendMessage, contentId, capabilities, cancelSignal) {
319
+ function createMediaSourceInterfaceAndSegmentSinksStore(contentId, capabilities, cancelSignal) {
318
320
  var mediaSourceInterface;
319
321
  if (capabilities.useMseInWorker) {
320
322
  var mainMediaSource = new main_media_source_interface_1.default(generateMediaSourceId());
@@ -331,18 +333,18 @@ function createMediaSourceInterfaceAndSegmentSinksStore(sendMessage, contentId,
331
333
  URL.revokeObjectURL(url_1);
332
334
  });
333
335
  }
334
- sendMessage({
335
- type: "attach-media-source" /* CoreMessageType.AttachMediaSource */,
336
+ (0, send_message_1.default)({
337
+ type: "attach-media-source" /* WorkerMessageType.AttachMediaSource */,
336
338
  contentId: contentId,
337
339
  value: sentMediaSourceLink,
338
340
  mediaSourceId: mediaSourceInterface.id,
339
341
  }, [handle.value]);
340
342
  }
341
343
  else {
342
- mediaSourceInterface = new worker_media_source_interface_1.default(generateMediaSourceId(), contentId, sendMessage);
344
+ mediaSourceInterface = new worker_media_source_interface_1.default(generateMediaSourceId(), contentId, send_message_1.default);
343
345
  }
344
346
  var textSender = capabilities.hasText
345
- ? new core_text_displayer_interface_1.default(contentId, sendMessage)
347
+ ? new worker_text_displayer_interface_1.default(contentId, send_message_1.default)
346
348
  : null;
347
349
  var hasVideo = capabilities.hasVideo;
348
350
  var segmentSinksStore = new segment_sinks_1.default(mediaSourceInterface, hasVideo, textSender);
@@ -0,0 +1,14 @@
1
+ import SharedReference from "../../../utils/reference";
2
+ import type { IResolutionInfo } from "../../adaptive";
3
+ /** Buffer "goal" at which we stop downloading new segments. */
4
+ declare const wantedBufferAhead: SharedReference<number>;
5
+ /** Buffer maximum size in kiloBytes at which we stop downloading */
6
+ declare const maxVideoBufferSize: SharedReference<number>;
7
+ /** Max buffer size after the current position, in seconds (we GC further up). */
8
+ declare const maxBufferAhead: SharedReference<number>;
9
+ /** Max buffer size before the current position, in seconds (we GC further down). */
10
+ declare const maxBufferBehind: SharedReference<number>;
11
+ declare const limitVideoResolution: SharedReference<IResolutionInfo>;
12
+ declare const throttleVideoBitrate: SharedReference<number>;
13
+ export { wantedBufferAhead, maxVideoBufferSize, maxBufferBehind, maxBufferAhead, limitVideoResolution, throttleVideoBitrate, };
14
+ //# sourceMappingURL=globals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/worker/globals.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAStD,+DAA+D;AAC/D,QAAA,MAAM,iBAAiB,yBAAmD,CAAC;AAE3E,oEAAoE;AACpE,QAAA,MAAM,kBAAkB,yBAAqD,CAAC;AAE9E,iFAAiF;AACjF,QAAA,MAAM,cAAc,yBAAgD,CAAC;AAErE,oFAAoF;AACpF,QAAA,MAAM,eAAe,yBAAiD,CAAC;AAEvE,QAAA,MAAM,oBAAoB,kCAIxB,CAAC;AACH,QAAA,MAAM,oBAAoB,yBAAgC,CAAC;AAE3D,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,oBAAoB,GACrB,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.throttleVideoBitrate = exports.limitVideoResolution = exports.maxBufferAhead = exports.maxBufferBehind = exports.maxVideoBufferSize = exports.wantedBufferAhead = void 0;
4
+ var config_1 = require("../../../config");
5
+ var reference_1 = require("../../../utils/reference");
6
+ var _a = config_1.default.getCurrent(), DEFAULT_WANTED_BUFFER_AHEAD = _a.DEFAULT_WANTED_BUFFER_AHEAD, DEFAULT_MAX_VIDEO_BUFFER_SIZE = _a.DEFAULT_MAX_VIDEO_BUFFER_SIZE, DEFAULT_MAX_BUFFER_AHEAD = _a.DEFAULT_MAX_BUFFER_AHEAD, DEFAULT_MAX_BUFFER_BEHIND = _a.DEFAULT_MAX_BUFFER_BEHIND;
7
+ /** Buffer "goal" at which we stop downloading new segments. */
8
+ var wantedBufferAhead = new reference_1.default(DEFAULT_WANTED_BUFFER_AHEAD);
9
+ exports.wantedBufferAhead = wantedBufferAhead;
10
+ /** Buffer maximum size in kiloBytes at which we stop downloading */
11
+ var maxVideoBufferSize = new reference_1.default(DEFAULT_MAX_VIDEO_BUFFER_SIZE);
12
+ exports.maxVideoBufferSize = maxVideoBufferSize;
13
+ /** Max buffer size after the current position, in seconds (we GC further up). */
14
+ var maxBufferAhead = new reference_1.default(DEFAULT_MAX_BUFFER_AHEAD);
15
+ exports.maxBufferAhead = maxBufferAhead;
16
+ /** Max buffer size before the current position, in seconds (we GC further down). */
17
+ var maxBufferBehind = new reference_1.default(DEFAULT_MAX_BUFFER_BEHIND);
18
+ exports.maxBufferBehind = maxBufferBehind;
19
+ var limitVideoResolution = new reference_1.default({
20
+ height: undefined,
21
+ width: undefined,
22
+ pixelRatio: 1,
23
+ });
24
+ exports.limitVideoResolution = limitVideoResolution;
25
+ var throttleVideoBitrate = new reference_1.default(Infinity);
26
+ exports.throttleVideoBitrate = throttleVideoBitrate;
@@ -0,0 +1,3 @@
1
+ import initializeWorkerMain from "./worker_main";
2
+ export default initializeWorkerMain;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/worker/index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,eAAe,CAAC;AACjD,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var worker_main_1 = require("./worker_main");
4
+ exports.default = worker_main_1.default;
@@ -0,0 +1,4 @@
1
+ import type { ISentError, IWorkerMessage } from "../../../multithread_types";
2
+ export default function sendMessage(msg: IWorkerMessage, transferables?: Transferable[]): void;
3
+ export declare function formatErrorForSender(error: unknown): ISentError;
4
+ //# sourceMappingURL=send_message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send_message.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/worker/send_message.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE7E,MAAM,CAAC,OAAO,UAAU,WAAW,CACjC,GAAG,EAAE,cAAc,EACnB,aAAa,CAAC,EAAE,YAAY,EAAE,GAC7B,IAAI,CAWN;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAO/D"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = sendMessage;
4
+ exports.formatErrorForSender = formatErrorForSender;
5
+ var errors_1 = require("../../../errors");
6
+ var log_1 = require("../../../log");
7
+ function sendMessage(msg, transferables) {
8
+ log_1.default.debug("M<--C", "Sending message", { name: msg.type });
9
+ if (transferables === undefined) {
10
+ postMessage(msg);
11
+ }
12
+ else {
13
+ // TypeScript made a mistake here, and 2busy2fix
14
+ postMessage(msg, transferables);
15
+ }
16
+ }
17
+ function formatErrorForSender(error) {
18
+ var formattedError = (0, errors_1.formatError)(error, {
19
+ defaultCode: "NONE",
20
+ defaultReason: "An unknown error stopped content playback.",
21
+ });
22
+ return formattedError.serialize();
23
+ }