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.
- package/CHANGELOG.md +3 -1
- package/README.md +111 -50
- package/VERSION +1 -1
- package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
- package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
- package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
- package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +1 -1
- package/dist/commonjs/core/{entry → main/common}/FreezeResolver.d.ts +3 -3
- package/dist/commonjs/core/main/common/FreezeResolver.d.ts.map +1 -0
- package/dist/commonjs/core/{entry → main/common}/FreezeResolver.js +3 -3
- package/dist/commonjs/core/{entry → main/common}/content_time_boundaries_observer.d.ts +5 -5
- package/dist/commonjs/core/main/common/content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/commonjs/core/{entry → main/common}/content_time_boundaries_observer.js +6 -6
- package/dist/{es2017/core/entry → commonjs/core/main/common}/create_content_time_boundaries_observer.d.ts +6 -6
- package/dist/commonjs/core/main/common/create_content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/commonjs/core/{entry → main/common}/create_content_time_boundaries_observer.js +1 -1
- package/dist/{es2017/core/entry → commonjs/core/main/common}/get_buffered_data_per_media_buffer.d.ts +4 -4
- package/dist/commonjs/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +1 -0
- package/dist/commonjs/core/{entry → main/common}/get_buffered_data_per_media_buffer.js +1 -1
- package/dist/{es2017/core/entry → commonjs/core/main/common}/get_thumbnail_data.d.ts +3 -3
- package/dist/commonjs/core/main/common/get_thumbnail_data.d.ts.map +1 -0
- package/dist/commonjs/core/{entry → main/common}/get_thumbnail_data.js +2 -2
- package/dist/{es2017/core/entry → commonjs/core/main/common}/synchronize_sinks_on_observation.d.ts +2 -2
- package/dist/commonjs/core/main/common/synchronize_sinks_on_observation.d.ts.map +1 -0
- package/dist/{es2017/core/entry → commonjs/core/main/worker}/content_preparer.d.ts +15 -22
- package/dist/commonjs/core/main/worker/content_preparer.d.ts.map +1 -0
- package/dist/commonjs/core/{entry → main/worker}/content_preparer.js +64 -62
- package/dist/commonjs/core/main/worker/globals.d.ts +14 -0
- package/dist/commonjs/core/main/worker/globals.d.ts.map +1 -0
- package/dist/commonjs/core/main/worker/globals.js +26 -0
- package/dist/commonjs/core/main/worker/index.d.ts +3 -0
- package/dist/commonjs/core/main/worker/index.d.ts.map +1 -0
- package/dist/commonjs/core/main/worker/index.js +4 -0
- package/dist/commonjs/core/main/worker/send_message.d.ts +4 -0
- package/dist/commonjs/core/main/worker/send_message.d.ts.map +1 -0
- package/dist/commonjs/core/main/worker/send_message.js +23 -0
- package/dist/{es2017/core/entry → commonjs/core/main/worker}/track_choice_setter.d.ts +4 -4
- package/dist/commonjs/core/main/worker/track_choice_setter.d.ts.map +1 -0
- package/dist/commonjs/core/{entry → main/worker}/track_choice_setter.js +4 -4
- package/dist/commonjs/core/main/worker/worker_main.d.ts +2 -0
- package/dist/commonjs/core/main/worker/worker_main.d.ts.map +1 -0
- package/dist/commonjs/core/{entry/core_entry.js → main/worker/worker_main.js} +153 -192
- package/dist/commonjs/core/{entry/core_text_displayer_interface.d.ts → main/worker/worker_text_displayer_interface.d.ts} +11 -11
- package/dist/commonjs/core/main/worker/worker_text_displayer_interface.d.ts.map +1 -0
- package/dist/commonjs/core/{entry/core_text_displayer_interface.js → main/worker/worker_text_displayer_interface.js} +22 -22
- package/dist/commonjs/core/types.d.ts +1 -519
- package/dist/commonjs/core/types.d.ts.map +1 -1
- package/dist/commonjs/core/types.js +0 -1
- package/dist/commonjs/experimental/features/local.d.ts.map +1 -1
- package/dist/commonjs/experimental/features/local.js +1 -7
- package/dist/commonjs/experimental/features/metaplaylist.d.ts.map +1 -1
- package/dist/commonjs/experimental/features/metaplaylist.js +1 -7
- package/dist/commonjs/experimental/features/multi_thread.d.ts.map +1 -1
- package/dist/commonjs/experimental/features/multi_thread.js +2 -6
- package/dist/commonjs/features/features_object.js +1 -1
- package/dist/commonjs/features/list/dash.d.ts.map +1 -1
- package/dist/commonjs/features/list/dash.js +1 -7
- package/dist/commonjs/features/list/dash_wasm.d.ts.map +1 -1
- package/dist/commonjs/features/list/dash_wasm.js +1 -7
- package/dist/commonjs/features/list/media_source_main.d.ts.map +1 -1
- package/dist/commonjs/features/list/media_source_main.js +1 -7
- package/dist/commonjs/features/list/smooth.d.ts.map +1 -1
- package/dist/commonjs/features/list/smooth.js +1 -7
- package/dist/commonjs/features/types.d.ts +4 -20
- package/dist/commonjs/features/types.d.ts.map +1 -1
- package/dist/commonjs/main_thread/api/public_api.d.ts.map +1 -1
- package/dist/commonjs/main_thread/api/public_api.js +44 -40
- package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts +108 -166
- package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/media_source_content_initializer.js +918 -1491
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts +308 -0
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -0
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +1713 -0
- package/dist/commonjs/main_thread/init/send_message.d.ts +3 -0
- package/dist/commonjs/main_thread/init/send_message.d.ts.map +1 -0
- package/dist/commonjs/main_thread/init/send_message.js +13 -0
- package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.js +1 -2
- package/dist/commonjs/main_thread/init/utils/update_manifest_codec_support.d.ts +1 -1
- package/dist/commonjs/main_thread/init/utils/update_manifest_codec_support.d.ts.map +1 -1
- package/dist/commonjs/main_thread/types.d.ts +0 -537
- package/dist/commonjs/main_thread/types.d.ts.map +1 -1
- package/dist/commonjs/manifest/utils.d.ts.map +1 -1
- package/dist/commonjs/manifest/utils.js +4 -18
- package/dist/commonjs/mse/worker_media_source_interface.d.ts +2 -2
- package/dist/commonjs/mse/worker_media_source_interface.d.ts.map +1 -1
- package/dist/commonjs/mse/worker_media_source_interface.js +12 -12
- package/dist/commonjs/multithread_types.d.ts +915 -0
- package/dist/commonjs/multithread_types.d.ts.map +1 -0
- package/dist/commonjs/multithread_types.js +7 -0
- package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/create_parser.js +27 -31
- package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.js +7 -16
- package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.js +6 -37
- package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.js +5 -28
- package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts +28 -8
- package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts.map +1 -1
- package/dist/commonjs/playback_observer/media_element_playback_observer.js +146 -64
- package/dist/{es2017/playback_observer/core_playback_observer.d.ts → commonjs/playback_observer/worker_playback_observer.d.ts} +8 -8
- package/dist/commonjs/playback_observer/worker_playback_observer.d.ts.map +1 -0
- package/dist/commonjs/playback_observer/{core_playback_observer.js → worker_playback_observer.js} +13 -13
- package/dist/commonjs/transports/smooth/pipelines.d.ts.map +1 -1
- package/dist/commonjs/transports/smooth/pipelines.js +3 -25
- package/dist/commonjs/worker_entry_point.js +2 -62
- package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
- package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
- package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
- package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
- package/dist/es2017/core/{entry → main/common}/FreezeResolver.d.ts +3 -3
- package/dist/es2017/core/main/common/FreezeResolver.d.ts.map +1 -0
- package/dist/es2017/core/{entry → main/common}/FreezeResolver.js +3 -3
- package/dist/es2017/core/{entry → main/common}/content_time_boundaries_observer.d.ts +5 -5
- package/dist/es2017/core/main/common/content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/es2017/core/{entry → main/common}/content_time_boundaries_observer.js +6 -6
- package/dist/{commonjs/core/entry → es2017/core/main/common}/create_content_time_boundaries_observer.d.ts +6 -6
- package/dist/es2017/core/main/common/create_content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/es2017/core/{entry → main/common}/create_content_time_boundaries_observer.js +1 -1
- package/dist/{commonjs/core/entry → es2017/core/main/common}/get_buffered_data_per_media_buffer.d.ts +4 -4
- package/dist/es2017/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +1 -0
- package/dist/es2017/core/{entry → main/common}/get_buffered_data_per_media_buffer.js +1 -1
- package/dist/{commonjs/core/entry → es2017/core/main/common}/get_thumbnail_data.d.ts +3 -3
- package/dist/es2017/core/main/common/get_thumbnail_data.d.ts.map +1 -0
- package/dist/es2017/core/{entry → main/common}/get_thumbnail_data.js +2 -2
- package/dist/{commonjs/core/entry → es2017/core/main/common}/synchronize_sinks_on_observation.d.ts +2 -2
- package/dist/es2017/core/main/common/synchronize_sinks_on_observation.d.ts.map +1 -0
- package/dist/{commonjs/core/entry → es2017/core/main/worker}/content_preparer.d.ts +15 -22
- package/dist/es2017/core/main/worker/content_preparer.d.ts.map +1 -0
- package/dist/es2017/core/{entry → main/worker}/content_preparer.js +55 -53
- package/dist/es2017/core/main/worker/globals.d.ts +14 -0
- package/dist/es2017/core/main/worker/globals.d.ts.map +1 -0
- package/dist/es2017/core/main/worker/globals.js +18 -0
- package/dist/es2017/core/main/worker/index.d.ts +3 -0
- package/dist/es2017/core/main/worker/index.d.ts.map +1 -0
- package/dist/es2017/core/main/worker/index.js +2 -0
- package/dist/es2017/core/main/worker/send_message.d.ts +4 -0
- package/dist/es2017/core/main/worker/send_message.d.ts.map +1 -0
- package/dist/es2017/core/main/worker/send_message.js +19 -0
- package/dist/{commonjs/core/entry → es2017/core/main/worker}/track_choice_setter.d.ts +4 -4
- package/dist/es2017/core/main/worker/track_choice_setter.d.ts.map +1 -0
- package/dist/es2017/core/{entry → main/worker}/track_choice_setter.js +4 -4
- package/dist/es2017/core/main/worker/worker_main.d.ts +2 -0
- package/dist/es2017/core/main/worker/worker_main.d.ts.map +1 -0
- package/dist/es2017/core/{entry/core_entry.js → main/worker/worker_main.js} +114 -153
- package/dist/es2017/core/{entry/core_text_displayer_interface.d.ts → main/worker/worker_text_displayer_interface.d.ts} +11 -11
- package/dist/es2017/core/main/worker/worker_text_displayer_interface.d.ts.map +1 -0
- package/dist/es2017/core/{entry/core_text_displayer_interface.js → main/worker/worker_text_displayer_interface.js} +10 -10
- package/dist/es2017/core/types.d.ts +1 -519
- package/dist/es2017/core/types.d.ts.map +1 -1
- package/dist/es2017/core/types.js +0 -1
- package/dist/es2017/experimental/features/local.d.ts.map +1 -1
- package/dist/es2017/experimental/features/local.js +1 -7
- package/dist/es2017/experimental/features/metaplaylist.d.ts.map +1 -1
- package/dist/es2017/experimental/features/metaplaylist.js +1 -7
- package/dist/es2017/experimental/features/multi_thread.d.ts.map +1 -1
- package/dist/es2017/experimental/features/multi_thread.js +2 -6
- package/dist/es2017/features/features_object.js +1 -1
- package/dist/es2017/features/list/dash.d.ts.map +1 -1
- package/dist/es2017/features/list/dash.js +1 -7
- package/dist/es2017/features/list/dash_wasm.d.ts.map +1 -1
- package/dist/es2017/features/list/dash_wasm.js +1 -7
- package/dist/es2017/features/list/media_source_main.d.ts.map +1 -1
- package/dist/es2017/features/list/media_source_main.js +1 -7
- package/dist/es2017/features/list/smooth.d.ts.map +1 -1
- package/dist/es2017/features/list/smooth.js +1 -7
- package/dist/es2017/features/types.d.ts +4 -20
- package/dist/es2017/features/types.d.ts.map +1 -1
- package/dist/es2017/main_thread/api/public_api.d.ts.map +1 -1
- package/dist/es2017/main_thread/api/public_api.js +45 -41
- package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts +108 -166
- package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/media_source_content_initializer.js +760 -1405
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts +308 -0
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -0
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +1559 -0
- package/dist/es2017/main_thread/init/send_message.d.ts +3 -0
- package/dist/es2017/main_thread/init/send_message.d.ts.map +1 -0
- package/dist/es2017/main_thread/init/send_message.js +10 -0
- package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/utils/create_core_playback_observer.js +1 -2
- package/dist/es2017/main_thread/init/utils/update_manifest_codec_support.d.ts +1 -1
- package/dist/es2017/main_thread/init/utils/update_manifest_codec_support.d.ts.map +1 -1
- package/dist/es2017/main_thread/types.d.ts +0 -537
- package/dist/es2017/main_thread/types.d.ts.map +1 -1
- package/dist/es2017/manifest/utils.d.ts.map +1 -1
- package/dist/es2017/manifest/utils.js +4 -16
- package/dist/es2017/mse/worker_media_source_interface.d.ts +2 -2
- package/dist/es2017/mse/worker_media_source_interface.d.ts.map +1 -1
- package/dist/es2017/mse/worker_media_source_interface.js +12 -12
- package/dist/es2017/multithread_types.d.ts +915 -0
- package/dist/es2017/multithread_types.d.ts.map +1 -0
- package/dist/es2017/multithread_types.js +6 -0
- package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts +1 -1
- package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/create_parser.js +27 -31
- package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts +2 -3
- package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.js +7 -16
- package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts +2 -3
- package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/parse_protection_node.js +6 -15
- package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -1
- package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts +2 -3
- package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.js +5 -6
- package/dist/es2017/playback_observer/media_element_playback_observer.d.ts +28 -8
- package/dist/es2017/playback_observer/media_element_playback_observer.d.ts.map +1 -1
- package/dist/es2017/playback_observer/media_element_playback_observer.js +144 -64
- package/dist/{commonjs/playback_observer/core_playback_observer.d.ts → es2017/playback_observer/worker_playback_observer.d.ts} +8 -8
- package/dist/es2017/playback_observer/worker_playback_observer.d.ts.map +1 -0
- package/dist/es2017/playback_observer/{core_playback_observer.js → worker_playback_observer.js} +2 -2
- package/dist/es2017/transports/smooth/pipelines.d.ts.map +1 -1
- package/dist/es2017/transports/smooth/pipelines.js +3 -25
- package/dist/es2017/worker_entry_point.js +2 -62
- package/dist/mpd-parser.wasm +0 -0
- package/dist/rx-player.js +19165 -21886
- package/dist/rx-player.min.js +20 -20
- package/dist/worker.js +8 -8
- package/eslint.config.mjs +647 -348
- package/package.json +6 -6
- package/src/README.md +198 -88
- package/src/__GENERATED_CODE/embedded_dash_wasm.ts +1 -1
- package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
- package/src/core/{entry → main}/README.md +1 -1
- package/src/core/{entry → main/common}/FreezeResolver.ts +7 -7
- package/src/core/{entry → main/common}/content_time_boundaries_observer.ts +10 -10
- package/src/core/{entry → main/common}/create_content_time_boundaries_observer.ts +7 -7
- package/src/core/{entry → main/common}/get_buffered_data_per_media_buffer.ts +6 -6
- package/src/core/{entry → main/common}/get_thumbnail_data.ts +5 -5
- package/src/core/{entry → main/common}/synchronize_sinks_on_observation.ts +2 -2
- package/src/core/{entry → main/worker}/content_preparer.ts +76 -77
- package/src/core/main/worker/globals.ts +38 -0
- package/src/core/main/worker/index.ts +2 -0
- package/src/core/main/worker/send_message.ts +28 -0
- package/src/core/{entry → main/worker}/track_choice_setter.ts +7 -7
- package/src/core/{entry/core_entry.ts → main/worker/worker_main.ts} +149 -223
- package/src/core/{entry/core_text_displayer_interface.ts → main/worker/worker_text_displayer_interface.ts} +26 -26
- package/src/core/types.ts +3 -631
- package/src/experimental/features/__tests__/local.test.ts +2 -11
- package/src/experimental/features/__tests__/metaplaylist.test.ts +2 -11
- package/src/experimental/features/__tests__/multi_thread.test.ts +3 -8
- package/src/experimental/features/local.ts +1 -7
- package/src/experimental/features/metaplaylist.ts +1 -7
- package/src/experimental/features/multi_thread.ts +2 -6
- package/src/features/features_object.ts +1 -1
- package/src/features/list/__tests__/dash.test.ts +3 -12
- package/src/features/list/__tests__/smooth.test.ts +2 -11
- package/src/features/list/dash.ts +1 -7
- package/src/features/list/dash_wasm.ts +1 -7
- package/src/features/list/media_source_main.ts +1 -7
- package/src/features/list/smooth.ts +1 -7
- package/src/features/types.ts +4 -23
- package/src/main_thread/README.md +0 -8
- package/src/main_thread/api/public_api.ts +51 -47
- package/src/main_thread/init/media_source_content_initializer.ts +1164 -2046
- package/src/main_thread/init/multi_thread_content_initializer.ts +2330 -0
- package/src/main_thread/init/send_message.ts +15 -0
- package/src/main_thread/init/utils/create_core_playback_observer.ts +1 -2
- package/src/main_thread/init/utils/update_manifest_codec_support.ts +1 -1
- package/src/main_thread/types.ts +0 -610
- package/src/manifest/utils.ts +4 -20
- package/src/mse/worker_media_source_interface.ts +35 -35
- package/src/multithread_types.ts +1095 -0
- package/src/parsers/manifest/smooth/create_parser.ts +34 -40
- package/src/parsers/manifest/smooth/parse_C_nodes.ts +8 -19
- package/src/parsers/manifest/smooth/parse_protection_node.ts +9 -17
- package/src/parsers/manifest/smooth/utils/parseBoolean.ts +1 -1
- package/src/parsers/manifest/smooth/utils/reduceChildren.ts +7 -10
- package/src/playback_observer/media_element_playback_observer.ts +177 -73
- package/src/playback_observer/{core_playback_observer.ts → worker_playback_observer.ts} +13 -13
- package/src/transports/smooth/pipelines.ts +5 -25
- package/src/worker_entry_point.ts +2 -71
- package/dist/commonjs/core/entry/FreezeResolver.d.ts.map +0 -1
- package/dist/commonjs/core/entry/content_preparer.d.ts.map +0 -1
- package/dist/commonjs/core/entry/content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/commonjs/core/entry/core_entry.d.ts +0 -36
- package/dist/commonjs/core/entry/core_entry.d.ts.map +0 -1
- package/dist/commonjs/core/entry/core_text_displayer_interface.d.ts.map +0 -1
- package/dist/commonjs/core/entry/create_content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/commonjs/core/entry/get_buffered_data_per_media_buffer.d.ts.map +0 -1
- package/dist/commonjs/core/entry/get_thumbnail_data.d.ts.map +0 -1
- package/dist/commonjs/core/entry/index.d.ts +0 -5
- package/dist/commonjs/core/entry/index.d.ts.map +0 -1
- package/dist/commonjs/core/entry/index.js +0 -4
- package/dist/commonjs/core/entry/synchronize_sinks_on_observation.d.ts.map +0 -1
- package/dist/commonjs/core/entry/track_choice_setter.d.ts.map +0 -1
- package/dist/commonjs/core/entry/utils.d.ts +0 -3
- package/dist/commonjs/core/entry/utils.d.ts.map +0 -1
- package/dist/commonjs/core/entry/utils.js +0 -11
- package/dist/commonjs/main_thread/core_interface/base.d.ts +0 -13
- package/dist/commonjs/main_thread/core_interface/base.d.ts.map +0 -1
- package/dist/commonjs/main_thread/core_interface/base.js +0 -32
- package/dist/commonjs/main_thread/core_interface/monothread.d.ts +0 -13
- package/dist/commonjs/main_thread/core_interface/monothread.d.ts.map +0 -1
- package/dist/commonjs/main_thread/core_interface/monothread.js +0 -56
- package/dist/commonjs/main_thread/core_interface/multithread.d.ts +0 -25
- package/dist/commonjs/main_thread/core_interface/multithread.d.ts.map +0 -1
- package/dist/commonjs/main_thread/core_interface/multithread.js +0 -67
- package/dist/commonjs/main_thread/core_interface/types.d.ts +0 -6
- package/dist/commonjs/main_thread/core_interface/types.d.ts.map +0 -1
- package/dist/commonjs/main_thread/core_interface/types.js +0 -2
- package/dist/commonjs/playback_observer/core_playback_observer.d.ts.map +0 -1
- package/dist/es2017/core/entry/FreezeResolver.d.ts.map +0 -1
- package/dist/es2017/core/entry/content_preparer.d.ts.map +0 -1
- package/dist/es2017/core/entry/content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/es2017/core/entry/core_entry.d.ts +0 -36
- package/dist/es2017/core/entry/core_entry.d.ts.map +0 -1
- package/dist/es2017/core/entry/core_text_displayer_interface.d.ts.map +0 -1
- package/dist/es2017/core/entry/create_content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/es2017/core/entry/get_buffered_data_per_media_buffer.d.ts.map +0 -1
- package/dist/es2017/core/entry/get_thumbnail_data.d.ts.map +0 -1
- package/dist/es2017/core/entry/index.d.ts +0 -5
- package/dist/es2017/core/entry/index.d.ts.map +0 -1
- package/dist/es2017/core/entry/index.js +0 -2
- package/dist/es2017/core/entry/synchronize_sinks_on_observation.d.ts.map +0 -1
- package/dist/es2017/core/entry/track_choice_setter.d.ts.map +0 -1
- package/dist/es2017/core/entry/utils.d.ts +0 -3
- package/dist/es2017/core/entry/utils.d.ts.map +0 -1
- package/dist/es2017/core/entry/utils.js +0 -8
- package/dist/es2017/main_thread/core_interface/base.d.ts +0 -13
- package/dist/es2017/main_thread/core_interface/base.d.ts.map +0 -1
- package/dist/es2017/main_thread/core_interface/base.js +0 -28
- package/dist/es2017/main_thread/core_interface/monothread.d.ts +0 -13
- package/dist/es2017/main_thread/core_interface/monothread.d.ts.map +0 -1
- package/dist/es2017/main_thread/core_interface/monothread.js +0 -32
- package/dist/es2017/main_thread/core_interface/multithread.d.ts +0 -25
- package/dist/es2017/main_thread/core_interface/multithread.d.ts.map +0 -1
- package/dist/es2017/main_thread/core_interface/multithread.js +0 -45
- package/dist/es2017/main_thread/core_interface/types.d.ts +0 -6
- package/dist/es2017/main_thread/core_interface/types.d.ts.map +0 -1
- package/dist/es2017/main_thread/core_interface/types.js +0 -1
- package/dist/es2017/playback_observer/core_playback_observer.d.ts.map +0 -1
- package/src/core/entry/index.ts +0 -4
- package/src/core/entry/utils.ts +0 -11
- package/src/main_thread/core_interface/README.md +0 -22
- package/src/main_thread/core_interface/base.ts +0 -36
- package/src/main_thread/core_interface/monothread.ts +0 -46
- package/src/main_thread/core_interface/multithread.ts +0 -49
- package/src/main_thread/core_interface/types.ts +0 -5
- /package/dist/commonjs/core/{entry → main/common}/synchronize_sinks_on_observation.js +0 -0
- /package/dist/es2017/core/{entry → main/common}/synchronize_sinks_on_observation.js +0 -0
|
@@ -1,57 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2015 CANAL+ Group
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
1
16
|
import type { IMediaElement } from "../../compat/browser_compatibility_types";
|
|
2
|
-
import type { IAdaptiveRepresentationSelectorArguments } from "../../core/
|
|
3
|
-
import type { IManifestMetadata } from "../../manifest";
|
|
4
|
-
import MainMediaSourceInterface from "../../mse/main_media_source_interface";
|
|
17
|
+
import type { IAdaptiveRepresentationSelectorArguments } from "../../core/adaptive";
|
|
5
18
|
import type { IMediaElementPlaybackObserver } from "../../playback_observer";
|
|
6
|
-
import type { ICmcdOptions, IInitialManifest, IKeySystemOption
|
|
7
|
-
import type {
|
|
19
|
+
import type { ICmcdOptions, IInitialManifest, IKeySystemOption } from "../../public_types";
|
|
20
|
+
import type { ITransportPipelines } from "../../transports";
|
|
8
21
|
import type { IReadOnlySharedReference } from "../../utils/reference";
|
|
9
|
-
import type CoreInterface from "../core_interface/types";
|
|
10
|
-
import type IContentDecryptor from "../decrypt";
|
|
11
22
|
import type { ITextDisplayerOptions } from "./types";
|
|
12
23
|
import { ContentInitializer } from "./types";
|
|
13
24
|
import type { IInitialTimeOptions } from "./utils/get_initial_time";
|
|
14
|
-
import RebufferingController from "./utils/rebuffering_controller";
|
|
15
|
-
import StreamEventsEmitter from "./utils/stream_events_emitter/stream_events_emitter";
|
|
16
25
|
/**
|
|
26
|
+
* Allows to load a new content thanks to the MediaSource Extensions (a.k.a. MSE)
|
|
27
|
+
* Web APIs.
|
|
28
|
+
*
|
|
29
|
+
* Through this `ContentInitializer`, a Manifest will be fetched (and depending
|
|
30
|
+
* on the situation, refreshed), a `MediaSource` instance will be linked to the
|
|
31
|
+
* wanted `HTMLMediaElement` and chunks of media data, called segments, will be
|
|
32
|
+
* pushed on buffers associated to this `MediaSource` instance.
|
|
33
|
+
*
|
|
17
34
|
* @class MediaSourceContentInitializer
|
|
18
35
|
*/
|
|
19
36
|
export default class MediaSourceContentInitializer extends ContentInitializer {
|
|
20
37
|
/** Constructor settings associated to this `MediaSourceContentInitializer`. */
|
|
21
|
-
private
|
|
22
|
-
/**
|
|
23
|
-
* The Core may be sending messages as soon as we're preparing the content but
|
|
24
|
-
* the `MediaSourceContentInitializer` is only able to handle all of them only
|
|
25
|
-
* once `start`ed.
|
|
26
|
-
*
|
|
27
|
-
* As such `_queuedCoreMessages` is set to an Array when `prepare` has been
|
|
28
|
-
* called but not `start` yet, and contains all core messages that have to
|
|
29
|
-
* be processed when `start` is called.
|
|
30
|
-
*
|
|
31
|
-
* It is set to `null` when there's no need to rely on that queue (either not
|
|
32
|
-
* yet `prepare`d or already `start`ed).
|
|
33
|
-
*/
|
|
34
|
-
private _queuedCoreMessages;
|
|
35
|
-
/**
|
|
36
|
-
* Information relative to the current loaded content.
|
|
37
|
-
*
|
|
38
|
-
* `null` when no content is prepared yet.
|
|
39
|
-
*/
|
|
40
|
-
private _currentContentInfo;
|
|
38
|
+
private _initSettings;
|
|
41
39
|
/**
|
|
42
40
|
* `TaskCanceller` allowing to abort everything that the
|
|
43
41
|
* `MediaSourceContentInitializer` is doing.
|
|
44
42
|
*/
|
|
45
43
|
private _initCanceller;
|
|
44
|
+
/** Interface allowing to fetch and refresh the Manifest. */
|
|
45
|
+
private _manifestFetcher;
|
|
46
|
+
/**
|
|
47
|
+
* Reference to the `Manifest` Object:
|
|
48
|
+
* - as an asynchronous value if it is still in the process of being loaded.
|
|
49
|
+
* - as an synchronous value if it has been loaded
|
|
50
|
+
* - `null` if the load task has not started yet.
|
|
51
|
+
*/
|
|
52
|
+
private _manifest;
|
|
53
|
+
private _cmcdDataBuilder;
|
|
46
54
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
55
|
+
* Describes the decryption capabilities on the current content, discriminated
|
|
56
|
+
* by a `status` property:
|
|
49
57
|
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
58
|
+
* - If set to `"uninitialized"`, decryption capabilities have not been
|
|
59
|
+
* set up yet.
|
|
60
|
+
*
|
|
61
|
+
* - If set to `"disabled"`, decryption capabilities are explicitely
|
|
62
|
+
* disabled. If encrypted content needs to be decrypted, the accompanying
|
|
63
|
+
* error `value` describes the reason why decryption is not enabled.
|
|
64
|
+
*
|
|
65
|
+
* - If set to `"enabled"`, decryption capabilities are available, and
|
|
66
|
+
* `value` points to the corresponding `ContentDecryptor`.
|
|
52
67
|
*/
|
|
53
|
-
private
|
|
54
|
-
private _awaitingRequests;
|
|
68
|
+
private _decryptionCapabilities;
|
|
55
69
|
/**
|
|
56
70
|
* Create a new `MediaSourceContentInitializer`, associated to the given
|
|
57
71
|
* settings.
|
|
@@ -60,8 +74,14 @@ export default class MediaSourceContentInitializer extends ContentInitializer {
|
|
|
60
74
|
constructor(settings: IInitializeArguments);
|
|
61
75
|
/**
|
|
62
76
|
* Perform non-destructive preparation steps, to prepare a future content.
|
|
77
|
+
* For now, this mainly mean loading the Manifest document.
|
|
63
78
|
*/
|
|
64
79
|
prepare(): void;
|
|
80
|
+
/**
|
|
81
|
+
* @param {HTMLMediaElement} mediaElement
|
|
82
|
+
* @param {Object} playbackObserver
|
|
83
|
+
*/
|
|
84
|
+
start(mediaElement: IMediaElement, playbackObserver: IMediaElementPlaybackObserver): void;
|
|
65
85
|
/**
|
|
66
86
|
* Update URL of the Manifest.
|
|
67
87
|
* @param {Array.<string>|undefined} urls - URLs to reach that Manifest from
|
|
@@ -71,154 +91,82 @@ export default class MediaSourceContentInitializer extends ContentInitializer {
|
|
|
71
91
|
*/
|
|
72
92
|
updateContentUrls(urls: string[] | undefined, refreshNow: boolean): void;
|
|
73
93
|
/**
|
|
74
|
-
*
|
|
75
|
-
*
|
|
94
|
+
* Stop content and free all resources linked to this
|
|
95
|
+
* `MediaSourceContentInitializer`.
|
|
76
96
|
*/
|
|
77
|
-
start(mediaElement: IMediaElement, playbackObserver: IMediaElementPlaybackObserver): void;
|
|
78
97
|
dispose(): void;
|
|
79
|
-
private _onFatalError;
|
|
80
|
-
private _initializeContentDecryption;
|
|
81
98
|
/**
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* status of these codecs, and forwards the list of supported codecs to core.
|
|
85
|
-
* @param manifest
|
|
99
|
+
* Callback called when an error interrupting playback arised.
|
|
100
|
+
* @param {*} err
|
|
86
101
|
*/
|
|
87
|
-
private
|
|
88
|
-
private _hasTextBufferFeature;
|
|
89
|
-
private _reload;
|
|
90
|
-
/**
|
|
91
|
-
* Start-up modules and mechanisms (initial seek, auto-play etc.) needed each
|
|
92
|
-
* time a content is loaded AND re-loaded on a `HTMLMediaElement`, when the
|
|
93
|
-
* manifest is known.
|
|
94
|
-
*
|
|
95
|
-
* Note that this does not include reacting to incoming core messages nor
|
|
96
|
-
* sending them, those actions have to be handled separately.
|
|
97
|
-
*
|
|
98
|
-
* @param {Object} parameters
|
|
99
|
-
* @param {Object} cancelSignal
|
|
100
|
-
* @returns {Object|null} - Playback Observer created for this content. `null`
|
|
101
|
-
* only if playback initialization failed (most likely because it has been
|
|
102
|
-
* cancelled).
|
|
103
|
-
*/
|
|
104
|
-
private _setUpModulesOnNewMediaSource;
|
|
105
|
-
/**
|
|
106
|
-
* Initialize content playback if and only if those conditions are filled:
|
|
107
|
-
* - The Manifest is fetched and stored in `this._currentContentInfo`.
|
|
108
|
-
* - `drmInitializationStatus` indicates that DRM matters are initialized.
|
|
109
|
-
* - `mediaSourceStatus` indicates that the MediaSource is attached to the
|
|
110
|
-
* `mediaElement`.
|
|
111
|
-
*
|
|
112
|
-
* In other cases, this method will do nothing.
|
|
113
|
-
*
|
|
114
|
-
* To call when any of those conditions might become `true`, to start-up
|
|
115
|
-
* playback.
|
|
116
|
-
*
|
|
117
|
-
* @param {Object} parameters
|
|
118
|
-
* @returns {boolean} - Returns `true` if all conditions where met for
|
|
119
|
-
* playback start.
|
|
120
|
-
*/
|
|
121
|
-
private _startPlaybackIfReady;
|
|
102
|
+
private _onFatalError;
|
|
122
103
|
/**
|
|
123
|
-
*
|
|
124
|
-
*
|
|
125
|
-
* @param {HTMLMediaElement} mediaElement
|
|
126
|
-
*
|
|
127
|
-
* @param {Object} coreInterface - The interface to the core.
|
|
104
|
+
* Initialize decryption mechanisms if needed and begin creating and relying
|
|
105
|
+
* on the initial `MediaSourceInterface` for this content.
|
|
106
|
+
* @param {HTMLMediaElement|null} mediaElement
|
|
107
|
+
* @returns {Promise.<Object>}
|
|
128
108
|
*/
|
|
129
|
-
private
|
|
130
|
-
|
|
131
|
-
export interface IMediaSourceContentInitializerContentInfos {
|
|
109
|
+
private _setupInitialMediaSourceAndDecryption;
|
|
110
|
+
private _onInitialMediaSourceReady;
|
|
132
111
|
/**
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
* a
|
|
112
|
+
* Load the content defined by the Manifest in the mediaSource given at the
|
|
113
|
+
* given position and playing status.
|
|
114
|
+
* This function recursively re-call itself when a MediaSource reload is
|
|
115
|
+
* wanted.
|
|
116
|
+
* @param {Object} args
|
|
117
|
+
* @param {Object} currentCanceller
|
|
136
118
|
*/
|
|
137
|
-
|
|
119
|
+
private _setupContentWithNewMediaSource;
|
|
138
120
|
/**
|
|
139
|
-
*
|
|
140
|
-
*
|
|
121
|
+
* Create `IReloadMediaSourceCallback` allowing to handle reload orders.
|
|
122
|
+
* @param {Object} args
|
|
123
|
+
* @param {Object} currentCanceller
|
|
141
124
|
*/
|
|
142
|
-
|
|
125
|
+
private _createReloadMediaSourceCallback;
|
|
143
126
|
/**
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
*
|
|
127
|
+
* Buffer the content on the given MediaSource.
|
|
128
|
+
* @param {Object} args
|
|
129
|
+
* @param {function} onReloadOrder
|
|
130
|
+
* @param {Object} cancelSignal
|
|
147
131
|
*/
|
|
148
|
-
|
|
149
|
-
type: "main";
|
|
150
|
-
mediaSource: MainMediaSourceInterface;
|
|
151
|
-
} | {
|
|
152
|
-
type: "core";
|
|
153
|
-
mediaSourceId: string;
|
|
154
|
-
} | null;
|
|
132
|
+
private _startLoadingContentOnMediaSource;
|
|
155
133
|
/**
|
|
156
|
-
*
|
|
157
|
-
*
|
|
134
|
+
* Creates a `RebufferingController`, a class trying to avoid various stalling
|
|
135
|
+
* situations (such as rebuffering periods), and returns it.
|
|
158
136
|
*
|
|
159
|
-
*
|
|
160
|
-
|
|
161
|
-
rebufferingController: RebufferingController | null;
|
|
162
|
-
/**
|
|
163
|
-
* Current `StreamEventsEmitter` linked to the content, allowing to
|
|
164
|
-
* send events found in the Manifest.
|
|
137
|
+
* Various methods from that class need then to be called at various events
|
|
138
|
+
* (see `RebufferingController` definition).
|
|
165
139
|
*
|
|
166
|
-
*
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
*
|
|
171
|
-
*
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
*
|
|
176
|
-
* `undefined` if unknown yet.
|
|
140
|
+
* This function also handles the `RebufferingController`'s events:
|
|
141
|
+
* - emit "stalled" events when stalling situations cannot be prevented,
|
|
142
|
+
* - emit "unstalled" events when we could get out of one,
|
|
143
|
+
* - emit "warning" on various rebuffering-related minor issues
|
|
144
|
+
* like discontinuity skipping.
|
|
145
|
+
* @param {Object} playbackObserver
|
|
146
|
+
* @param {Object} manifest
|
|
147
|
+
* @param {Object} speed
|
|
148
|
+
* @param {Object} cancelSignal
|
|
149
|
+
* @returns {Object}
|
|
177
150
|
*/
|
|
178
|
-
|
|
151
|
+
private _createRebufferingController;
|
|
179
152
|
/**
|
|
180
|
-
*
|
|
181
|
-
* autoplay is not enabled) has been done.
|
|
182
|
-
* Set to `false` when it hasn't been done yet.
|
|
153
|
+
* Evaluates a list of codecs to determine their support status.
|
|
183
154
|
*
|
|
184
|
-
*
|
|
155
|
+
* @param {Array} codecsToCheck - The list of codecs to check.
|
|
156
|
+
* @returns {Array} - The list of evaluated codecs with their support status updated.
|
|
185
157
|
*/
|
|
186
|
-
|
|
158
|
+
private getCodecsSupportInfo;
|
|
187
159
|
/**
|
|
188
|
-
*
|
|
160
|
+
* Update the support status of all Representations in the Manifest.
|
|
189
161
|
*
|
|
190
|
-
*
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
/**
|
|
194
|
-
* If `true`, MSE API should be used in the core part of the RxPlayer (in the
|
|
195
|
-
* WebWorker).
|
|
196
|
-
* If `false`, they should be relied on on main thread.
|
|
162
|
+
* To call anytime either the Manifest is linked to new codecs or new means
|
|
163
|
+
* to test for codec support are available.
|
|
164
|
+
* @param {Object} manifest
|
|
197
165
|
*/
|
|
198
|
-
|
|
166
|
+
private _refreshManifestCodecSupport;
|
|
199
167
|
}
|
|
200
168
|
/** Arguments to give to the `InitializeOnMediaSource` function. */
|
|
201
169
|
export interface IInitializeArguments {
|
|
202
|
-
/**
|
|
203
|
-
* The `MediaSourceContentInitializer` will interact with the RxPlayer's core
|
|
204
|
-
* logic (the one loading media data) by exchanging messages through an
|
|
205
|
-
* interface called the `CoreInterface`.
|
|
206
|
-
*
|
|
207
|
-
* This `CoreInterface` allows to abstract its actual current implementation.
|
|
208
|
-
* E.g., the core logic could be running in a WebWorker or in main thread, in
|
|
209
|
-
* which cases message exchanging mechanisms would be different.
|
|
210
|
-
*/
|
|
211
|
-
coreInterface: CoreInterface;
|
|
212
|
-
/**
|
|
213
|
-
* If `true`, MSE API should be used in the core part of the RxPlayer (in the
|
|
214
|
-
* WebWorker).
|
|
215
|
-
* If `false`, they should be relied on on main thread.
|
|
216
|
-
*
|
|
217
|
-
* This might depend on both browser capabilities and preferences. It is
|
|
218
|
-
* assumed that the caller perform all those checks, the `ContentInitializer`
|
|
219
|
-
* won't check again the validity of this value.
|
|
220
|
-
*/
|
|
221
|
-
useMseInWorker: boolean;
|
|
222
170
|
/** Options concerning the ABR logic. */
|
|
223
171
|
adaptiveOptions: IAdaptiveRepresentationSelectorArguments;
|
|
224
172
|
/** `true` if we should play when loaded. */
|
|
@@ -255,14 +203,6 @@ export interface IInitializeArguments {
|
|
|
255
203
|
keySystems: IKeySystemOption[];
|
|
256
204
|
/** `true` to play low-latency contents optimally. */
|
|
257
205
|
lowLatencyMode: boolean;
|
|
258
|
-
/**
|
|
259
|
-
* The type of "transport" wanted, e.g. "dash" or "smooth".
|
|
260
|
-
*/
|
|
261
|
-
transport: string;
|
|
262
|
-
/** Options relative to the streaming protocol. */
|
|
263
|
-
transportOptions: Omit<ITransportOptions, "representationFilter"> & {
|
|
264
|
-
representationFilter?: IRepresentationFilter | string | undefined;
|
|
265
|
-
};
|
|
266
206
|
/** Settings linked to Manifest requests. */
|
|
267
207
|
manifestRequestSettings: {
|
|
268
208
|
/** Maximum number of time a request on error will be retried. */
|
|
@@ -288,6 +228,8 @@ export interface IInitializeArguments {
|
|
|
288
228
|
*/
|
|
289
229
|
initialManifest: IInitialManifest | undefined;
|
|
290
230
|
};
|
|
231
|
+
/** Logic linked Manifest and segment loading and parsing. */
|
|
232
|
+
transport: ITransportPipelines;
|
|
291
233
|
/** Configuration for the segment requesting logic. */
|
|
292
234
|
segmentRequestOptions: {
|
|
293
235
|
lowLatencyMode: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media_source_content_initializer.d.ts","sourceRoot":"","sources":["../../../../src/main_thread/init/media_source_content_initializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAK9E,OAAO,KAAK,EACV,wCAAwC,
|
|
1
|
+
{"version":3,"file":"media_source_content_initializer.d.ts","sourceRoot":"","sources":["../../../../src/main_thread/init/media_source_content_initializer.ts"],"names":[],"mappings":"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"}
|