rx-player 4.4.0 → 4.4.1-dev.2025101500
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 +7 -0
- package/README.md +52 -113
- package/VERSION +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/{main/common → entry}/FreezeResolver.d.ts +3 -3
- package/dist/commonjs/core/entry/FreezeResolver.d.ts.map +1 -0
- package/dist/commonjs/core/{main/common → entry}/FreezeResolver.js +3 -3
- package/dist/{es2017/core/main/worker → commonjs/core/entry}/content_preparer.d.ts +22 -15
- package/dist/commonjs/core/entry/content_preparer.d.ts.map +1 -0
- package/dist/commonjs/core/{main/worker → entry}/content_preparer.js +62 -64
- package/dist/{es2017/core/main/common → commonjs/core/entry}/content_time_boundaries_observer.d.ts +5 -5
- package/dist/commonjs/core/entry/content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/commonjs/core/{main/common → entry}/content_time_boundaries_observer.js +6 -6
- package/dist/commonjs/core/entry/core_entry.d.ts +36 -0
- package/dist/commonjs/core/entry/core_entry.d.ts.map +1 -0
- package/dist/commonjs/core/{main/worker/worker_main.js → entry/core_entry.js} +192 -153
- package/dist/commonjs/core/{main/worker/worker_text_displayer_interface.d.ts → entry/core_text_displayer_interface.d.ts} +11 -11
- package/dist/commonjs/core/entry/core_text_displayer_interface.d.ts.map +1 -0
- package/dist/commonjs/core/{main/worker/worker_text_displayer_interface.js → entry/core_text_displayer_interface.js} +22 -22
- package/dist/commonjs/core/{main/common → entry}/create_content_time_boundaries_observer.d.ts +6 -6
- package/dist/commonjs/core/entry/create_content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/commonjs/core/{main/common → entry}/create_content_time_boundaries_observer.js +1 -1
- package/dist/commonjs/core/{main/common → entry}/get_buffered_data_per_media_buffer.d.ts +4 -4
- package/dist/commonjs/core/entry/get_buffered_data_per_media_buffer.d.ts.map +1 -0
- package/dist/commonjs/core/{main/common → entry}/get_buffered_data_per_media_buffer.js +1 -1
- package/dist/{es2017/core/main/common → commonjs/core/entry}/get_thumbnail_data.d.ts +3 -3
- package/dist/commonjs/core/entry/get_thumbnail_data.d.ts.map +1 -0
- package/dist/commonjs/core/{main/common → entry}/get_thumbnail_data.js +2 -2
- package/dist/commonjs/core/entry/index.d.ts +5 -0
- package/dist/commonjs/core/entry/index.d.ts.map +1 -0
- package/dist/commonjs/core/entry/index.js +4 -0
- package/dist/{es2017/core/main/common → commonjs/core/entry}/synchronize_sinks_on_observation.d.ts +2 -2
- package/dist/commonjs/core/entry/synchronize_sinks_on_observation.d.ts.map +1 -0
- package/dist/commonjs/core/{main/worker → entry}/track_choice_setter.d.ts +4 -4
- package/dist/commonjs/core/entry/track_choice_setter.d.ts.map +1 -0
- package/dist/commonjs/core/{main/worker → entry}/track_choice_setter.js +4 -4
- package/dist/commonjs/core/entry/utils.d.ts +3 -0
- package/dist/commonjs/core/entry/utils.d.ts.map +1 -0
- package/dist/commonjs/core/entry/utils.js +11 -0
- package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
- package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.js +17 -0
- package/dist/commonjs/core/types.d.ts +519 -1
- package/dist/commonjs/core/types.d.ts.map +1 -1
- package/dist/commonjs/core/types.js +1 -0
- package/dist/commonjs/experimental/features/local.d.ts.map +1 -1
- package/dist/commonjs/experimental/features/local.js +7 -1
- package/dist/commonjs/experimental/features/metaplaylist.d.ts.map +1 -1
- package/dist/commonjs/experimental/features/metaplaylist.js +7 -1
- package/dist/commonjs/experimental/features/multi_thread.d.ts.map +1 -1
- package/dist/commonjs/experimental/features/multi_thread.js +6 -2
- 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 +7 -1
- package/dist/commonjs/features/list/dash_wasm.d.ts.map +1 -1
- package/dist/commonjs/features/list/dash_wasm.js +7 -1
- package/dist/commonjs/features/list/media_source_main.d.ts.map +1 -1
- package/dist/commonjs/features/list/media_source_main.js +7 -1
- package/dist/commonjs/features/list/smooth.d.ts.map +1 -1
- package/dist/commonjs/features/list/smooth.js +7 -1
- package/dist/commonjs/features/types.d.ts +20 -4
- 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 +39 -42
- package/dist/commonjs/main_thread/core_interface/base.d.ts +13 -0
- package/dist/commonjs/main_thread/core_interface/base.d.ts.map +1 -0
- package/dist/commonjs/main_thread/core_interface/base.js +32 -0
- package/dist/commonjs/main_thread/core_interface/monothread.d.ts +13 -0
- package/dist/commonjs/main_thread/core_interface/monothread.d.ts.map +1 -0
- package/dist/commonjs/main_thread/core_interface/monothread.js +56 -0
- package/dist/commonjs/main_thread/core_interface/multithread.d.ts +25 -0
- package/dist/commonjs/main_thread/core_interface/multithread.d.ts.map +1 -0
- package/dist/commonjs/main_thread/core_interface/multithread.js +67 -0
- package/dist/commonjs/main_thread/core_interface/types.d.ts +6 -0
- package/dist/commonjs/main_thread/core_interface/types.d.ts.map +1 -0
- package/dist/commonjs/main_thread/core_interface/types.js +2 -0
- package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts +166 -108
- 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 +1492 -919
- 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 +2 -1
- 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 +537 -0
- 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 +18 -4
- 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/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 +31 -27
- package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts +3 -2
- package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.js +16 -7
- package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts +3 -2
- package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.js +37 -6
- 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 +3 -2
- package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/smooth/utils/reduceChildren.js +28 -5
- package/dist/{es2017/playback_observer/worker_playback_observer.d.ts → commonjs/playback_observer/core_playback_observer.d.ts} +8 -8
- package/dist/commonjs/playback_observer/core_playback_observer.d.ts.map +1 -0
- package/dist/commonjs/playback_observer/{worker_playback_observer.js → core_playback_observer.js} +13 -13
- package/dist/commonjs/transports/smooth/pipelines.d.ts.map +1 -1
- package/dist/commonjs/transports/smooth/pipelines.js +25 -3
- package/dist/commonjs/worker_entry_point.js +62 -2
- 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/{main/common → entry}/FreezeResolver.d.ts +3 -3
- package/dist/es2017/core/entry/FreezeResolver.d.ts.map +1 -0
- package/dist/es2017/core/{main/common → entry}/FreezeResolver.js +3 -3
- package/dist/{commonjs/core/main/worker → es2017/core/entry}/content_preparer.d.ts +22 -15
- package/dist/es2017/core/entry/content_preparer.d.ts.map +1 -0
- package/dist/es2017/core/{main/worker → entry}/content_preparer.js +53 -55
- package/dist/{commonjs/core/main/common → es2017/core/entry}/content_time_boundaries_observer.d.ts +5 -5
- package/dist/es2017/core/entry/content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/es2017/core/{main/common → entry}/content_time_boundaries_observer.js +6 -6
- package/dist/es2017/core/entry/core_entry.d.ts +36 -0
- package/dist/es2017/core/entry/core_entry.d.ts.map +1 -0
- package/dist/es2017/core/{main/worker/worker_main.js → entry/core_entry.js} +153 -114
- package/dist/es2017/core/{main/worker/worker_text_displayer_interface.d.ts → entry/core_text_displayer_interface.d.ts} +11 -11
- package/dist/es2017/core/entry/core_text_displayer_interface.d.ts.map +1 -0
- package/dist/es2017/core/{main/worker/worker_text_displayer_interface.js → entry/core_text_displayer_interface.js} +10 -10
- package/dist/es2017/core/{main/common → entry}/create_content_time_boundaries_observer.d.ts +6 -6
- package/dist/es2017/core/entry/create_content_time_boundaries_observer.d.ts.map +1 -0
- package/dist/es2017/core/{main/common → entry}/create_content_time_boundaries_observer.js +1 -1
- package/dist/es2017/core/{main/common → entry}/get_buffered_data_per_media_buffer.d.ts +4 -4
- package/dist/es2017/core/entry/get_buffered_data_per_media_buffer.d.ts.map +1 -0
- package/dist/es2017/core/{main/common → entry}/get_buffered_data_per_media_buffer.js +1 -1
- package/dist/{commonjs/core/main/common → es2017/core/entry}/get_thumbnail_data.d.ts +3 -3
- package/dist/es2017/core/entry/get_thumbnail_data.d.ts.map +1 -0
- package/dist/es2017/core/{main/common → entry}/get_thumbnail_data.js +2 -2
- package/dist/es2017/core/entry/index.d.ts +5 -0
- package/dist/es2017/core/entry/index.d.ts.map +1 -0
- package/dist/es2017/core/entry/index.js +2 -0
- package/dist/{commonjs/core/main/common → es2017/core/entry}/synchronize_sinks_on_observation.d.ts +2 -2
- package/dist/es2017/core/entry/synchronize_sinks_on_observation.d.ts.map +1 -0
- package/dist/es2017/core/{main/worker → entry}/track_choice_setter.d.ts +4 -4
- package/dist/es2017/core/entry/track_choice_setter.d.ts.map +1 -0
- package/dist/es2017/core/{main/worker → entry}/track_choice_setter.js +4 -4
- package/dist/es2017/core/entry/utils.d.ts +3 -0
- package/dist/es2017/core/entry/utils.d.ts.map +1 -0
- package/dist/es2017/core/entry/utils.js +8 -0
- package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
- package/dist/es2017/core/stream/orchestrator/stream_orchestrator.js +18 -1
- package/dist/es2017/core/types.d.ts +519 -1
- package/dist/es2017/core/types.d.ts.map +1 -1
- package/dist/es2017/core/types.js +1 -0
- package/dist/es2017/experimental/features/local.d.ts.map +1 -1
- package/dist/es2017/experimental/features/local.js +7 -1
- package/dist/es2017/experimental/features/metaplaylist.d.ts.map +1 -1
- package/dist/es2017/experimental/features/metaplaylist.js +7 -1
- package/dist/es2017/experimental/features/multi_thread.d.ts.map +1 -1
- package/dist/es2017/experimental/features/multi_thread.js +6 -2
- 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 +7 -1
- package/dist/es2017/features/list/dash_wasm.d.ts.map +1 -1
- package/dist/es2017/features/list/dash_wasm.js +7 -1
- package/dist/es2017/features/list/media_source_main.d.ts.map +1 -1
- package/dist/es2017/features/list/media_source_main.js +7 -1
- package/dist/es2017/features/list/smooth.d.ts.map +1 -1
- package/dist/es2017/features/list/smooth.js +7 -1
- package/dist/es2017/features/types.d.ts +20 -4
- 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 +40 -43
- package/dist/es2017/main_thread/core_interface/base.d.ts +13 -0
- package/dist/es2017/main_thread/core_interface/base.d.ts.map +1 -0
- package/dist/es2017/main_thread/core_interface/base.js +28 -0
- package/dist/es2017/main_thread/core_interface/monothread.d.ts +13 -0
- package/dist/es2017/main_thread/core_interface/monothread.d.ts.map +1 -0
- package/dist/es2017/main_thread/core_interface/monothread.js +32 -0
- package/dist/es2017/main_thread/core_interface/multithread.d.ts +25 -0
- package/dist/es2017/main_thread/core_interface/multithread.d.ts.map +1 -0
- package/dist/es2017/main_thread/core_interface/multithread.js +45 -0
- package/dist/es2017/main_thread/core_interface/types.d.ts +6 -0
- package/dist/es2017/main_thread/core_interface/types.d.ts.map +1 -0
- package/dist/es2017/main_thread/core_interface/types.js +1 -0
- package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts +166 -108
- 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 +1405 -760
- 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 +2 -1
- 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 +537 -0
- 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 +16 -4
- 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/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 +31 -27
- package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts +3 -2
- package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.js +16 -7
- package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts +3 -2
- package/dist/es2017/parsers/manifest/smooth/parse_protection_node.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/parse_protection_node.js +15 -6
- 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 +3 -2
- package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/smooth/utils/reduceChildren.js +6 -5
- package/dist/{commonjs/playback_observer/worker_playback_observer.d.ts → es2017/playback_observer/core_playback_observer.d.ts} +8 -8
- package/dist/es2017/playback_observer/core_playback_observer.d.ts.map +1 -0
- package/dist/es2017/playback_observer/{worker_playback_observer.js → core_playback_observer.js} +2 -2
- package/dist/es2017/transports/smooth/pipelines.d.ts.map +1 -1
- package/dist/es2017/transports/smooth/pipelines.js +25 -3
- package/dist/es2017/worker_entry_point.js +62 -2
- package/dist/rx-player.js +21882 -19021
- package/dist/rx-player.min.js +20 -20
- package/dist/worker.js +8 -8
- package/package.json +1 -1
- package/src/README.md +88 -198
- package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
- package/src/core/{main/common → entry}/FreezeResolver.ts +7 -7
- package/src/core/{main → entry}/README.md +1 -1
- package/src/core/{main/worker → entry}/content_preparer.ts +77 -76
- package/src/core/{main/common → entry}/content_time_boundaries_observer.ts +10 -10
- package/src/core/{main/worker/worker_main.ts → entry/core_entry.ts} +223 -149
- package/src/core/{main/worker/worker_text_displayer_interface.ts → entry/core_text_displayer_interface.ts} +26 -26
- package/src/core/{main/common → entry}/create_content_time_boundaries_observer.ts +7 -7
- package/src/core/{main/common → entry}/get_buffered_data_per_media_buffer.ts +6 -6
- package/src/core/{main/common → entry}/get_thumbnail_data.ts +5 -5
- package/src/core/entry/index.ts +4 -0
- package/src/core/{main/common → entry}/synchronize_sinks_on_observation.ts +2 -2
- package/src/core/{main/worker → entry}/track_choice_setter.ts +7 -7
- package/src/core/entry/utils.ts +11 -0
- package/src/core/stream/orchestrator/stream_orchestrator.ts +26 -1
- package/src/core/types.ts +631 -3
- package/src/experimental/features/__tests__/local.test.ts +11 -2
- package/src/experimental/features/__tests__/metaplaylist.test.ts +11 -2
- package/src/experimental/features/__tests__/multi_thread.test.ts +8 -3
- package/src/experimental/features/local.ts +7 -1
- package/src/experimental/features/metaplaylist.ts +7 -1
- package/src/experimental/features/multi_thread.ts +6 -2
- package/src/features/features_object.ts +1 -1
- package/src/features/list/__tests__/dash.test.ts +12 -3
- package/src/features/list/__tests__/smooth.test.ts +11 -2
- package/src/features/list/dash.ts +7 -1
- package/src/features/list/dash_wasm.ts +7 -1
- package/src/features/list/media_source_main.ts +7 -1
- package/src/features/list/smooth.ts +7 -1
- package/src/features/types.ts +23 -4
- package/src/main_thread/README.md +8 -0
- package/src/main_thread/api/public_api.ts +46 -48
- package/src/main_thread/core_interface/README.md +22 -0
- package/src/main_thread/core_interface/base.ts +36 -0
- package/src/main_thread/core_interface/monothread.ts +46 -0
- package/src/main_thread/core_interface/multithread.ts +49 -0
- package/src/main_thread/core_interface/types.ts +5 -0
- package/src/main_thread/init/media_source_content_initializer.ts +2034 -1152
- package/src/main_thread/init/utils/create_core_playback_observer.ts +2 -1
- package/src/main_thread/init/utils/update_manifest_codec_support.ts +1 -1
- package/src/main_thread/types.ts +610 -0
- package/src/manifest/utils.ts +20 -4
- package/src/mse/worker_media_source_interface.ts +35 -35
- package/src/parsers/manifest/smooth/create_parser.ts +40 -34
- package/src/parsers/manifest/smooth/parse_C_nodes.ts +19 -8
- package/src/parsers/manifest/smooth/parse_protection_node.ts +17 -9
- package/src/parsers/manifest/smooth/utils/parseBoolean.ts +1 -1
- package/src/parsers/manifest/smooth/utils/reduceChildren.ts +10 -7
- package/src/playback_observer/{worker_playback_observer.ts → core_playback_observer.ts} +13 -13
- package/src/transports/smooth/pipelines.ts +25 -5
- package/src/worker_entry_point.ts +71 -2
- package/dist/commonjs/core/main/common/FreezeResolver.d.ts.map +0 -1
- package/dist/commonjs/core/main/common/content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/commonjs/core/main/common/create_content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/commonjs/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +0 -1
- package/dist/commonjs/core/main/common/get_thumbnail_data.d.ts.map +0 -1
- package/dist/commonjs/core/main/common/synchronize_sinks_on_observation.d.ts.map +0 -1
- package/dist/commonjs/core/main/worker/content_preparer.d.ts.map +0 -1
- package/dist/commonjs/core/main/worker/globals.d.ts +0 -14
- package/dist/commonjs/core/main/worker/globals.d.ts.map +0 -1
- package/dist/commonjs/core/main/worker/globals.js +0 -26
- package/dist/commonjs/core/main/worker/index.d.ts +0 -3
- package/dist/commonjs/core/main/worker/index.d.ts.map +0 -1
- package/dist/commonjs/core/main/worker/index.js +0 -4
- package/dist/commonjs/core/main/worker/send_message.d.ts +0 -4
- package/dist/commonjs/core/main/worker/send_message.d.ts.map +0 -1
- package/dist/commonjs/core/main/worker/send_message.js +0 -23
- package/dist/commonjs/core/main/worker/track_choice_setter.d.ts.map +0 -1
- package/dist/commonjs/core/main/worker/worker_main.d.ts +0 -2
- package/dist/commonjs/core/main/worker/worker_main.d.ts.map +0 -1
- package/dist/commonjs/core/main/worker/worker_text_displayer_interface.d.ts.map +0 -1
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts +0 -308
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts.map +0 -1
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +0 -1713
- package/dist/commonjs/main_thread/init/send_message.d.ts +0 -3
- package/dist/commonjs/main_thread/init/send_message.d.ts.map +0 -1
- package/dist/commonjs/main_thread/init/send_message.js +0 -13
- package/dist/commonjs/multithread_types.d.ts +0 -915
- package/dist/commonjs/multithread_types.d.ts.map +0 -1
- package/dist/commonjs/multithread_types.js +0 -7
- package/dist/commonjs/playback_observer/worker_playback_observer.d.ts.map +0 -1
- package/dist/es2017/core/main/common/FreezeResolver.d.ts.map +0 -1
- package/dist/es2017/core/main/common/content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/es2017/core/main/common/create_content_time_boundaries_observer.d.ts.map +0 -1
- package/dist/es2017/core/main/common/get_buffered_data_per_media_buffer.d.ts.map +0 -1
- package/dist/es2017/core/main/common/get_thumbnail_data.d.ts.map +0 -1
- package/dist/es2017/core/main/common/synchronize_sinks_on_observation.d.ts.map +0 -1
- package/dist/es2017/core/main/worker/content_preparer.d.ts.map +0 -1
- package/dist/es2017/core/main/worker/globals.d.ts +0 -14
- package/dist/es2017/core/main/worker/globals.d.ts.map +0 -1
- package/dist/es2017/core/main/worker/globals.js +0 -18
- package/dist/es2017/core/main/worker/index.d.ts +0 -3
- package/dist/es2017/core/main/worker/index.d.ts.map +0 -1
- package/dist/es2017/core/main/worker/index.js +0 -2
- package/dist/es2017/core/main/worker/send_message.d.ts +0 -4
- package/dist/es2017/core/main/worker/send_message.d.ts.map +0 -1
- package/dist/es2017/core/main/worker/send_message.js +0 -19
- package/dist/es2017/core/main/worker/track_choice_setter.d.ts.map +0 -1
- package/dist/es2017/core/main/worker/worker_main.d.ts +0 -2
- package/dist/es2017/core/main/worker/worker_main.d.ts.map +0 -1
- package/dist/es2017/core/main/worker/worker_text_displayer_interface.d.ts.map +0 -1
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts +0 -308
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts.map +0 -1
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +0 -1559
- package/dist/es2017/main_thread/init/send_message.d.ts +0 -3
- package/dist/es2017/main_thread/init/send_message.d.ts.map +0 -1
- package/dist/es2017/main_thread/init/send_message.js +0 -10
- package/dist/es2017/multithread_types.d.ts +0 -915
- package/dist/es2017/multithread_types.d.ts.map +0 -1
- package/dist/es2017/multithread_types.js +0 -6
- package/dist/es2017/playback_observer/worker_playback_observer.d.ts.map +0 -1
- package/src/core/main/worker/globals.ts +0 -38
- package/src/core/main/worker/index.ts +0 -2
- package/src/core/main/worker/send_message.ts +0 -28
- package/src/main_thread/init/multi_thread_content_initializer.ts +0 -2330
- package/src/main_thread/init/send_message.ts +0 -15
- package/src/multithread_types.ts +0 -1095
- /package/dist/commonjs/core/{main/common → entry}/synchronize_sinks_on_observation.js +0 -0
- /package/dist/es2017/core/{main/common → entry}/synchronize_sinks_on_observation.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { IAdaptation, IPeriod, IRepresentation } from "
|
|
2
|
-
import type { IFreezingStatus, IRebufferingStatus, ObservationPosition } from "
|
|
3
|
-
import type SegmentSinksStore from "
|
|
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/entry/FreezeResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,iBAAiB,MAAM,kBAAkB,CAAC;AAiDtD;;;;;;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("
|
|
15
|
-
var log_1 = require("
|
|
16
|
-
var monotonic_timestamp_1 = require("
|
|
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.
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
4
|
-
import type { IRepresentationEstimator } from "
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
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";
|
|
11
14
|
import TrackChoiceSetter from "./track_choice_setter";
|
|
12
|
-
import WorkerTextDisplayerInterface from "./worker_text_displayer_interface";
|
|
13
15
|
/**
|
|
14
16
|
* Class facilitating the workflows behind loading a new content for the
|
|
15
17
|
* RxPlayer Core:
|
|
@@ -73,7 +75,9 @@ export default class ContentPreparer {
|
|
|
73
75
|
* initialized.
|
|
74
76
|
* @returns {Promise.<Object>}
|
|
75
77
|
*/
|
|
76
|
-
initializeNewContent(
|
|
78
|
+
initializeNewContent(sendMessage: (msg: ICoreMessage, transferables?: Transferable[]) => void, context: IContentInitializationData,
|
|
79
|
+
/** Allows to filter which Representations can be choosen. */
|
|
80
|
+
throttlers: IRepresentationEstimatorThrottlers): Promise<IManifest>;
|
|
77
81
|
/**
|
|
78
82
|
* Get information on the current content prepared through the
|
|
79
83
|
* `initializeNewContent` method, or `null` if no content is currently
|
|
@@ -90,12 +94,15 @@ export default class ContentPreparer {
|
|
|
90
94
|
*/
|
|
91
95
|
scheduleManifestRefresh(settings: IManifestRefreshSettings): void;
|
|
92
96
|
/**
|
|
93
|
-
*
|
|
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.
|
|
94
100
|
*
|
|
95
101
|
* The returned Promise resolves when it restarts being ready.
|
|
102
|
+
* @param {Function} sendMessage
|
|
96
103
|
* @returns {Promise}
|
|
97
104
|
*/
|
|
98
|
-
reloadMediaSource(): Promise<void>;
|
|
105
|
+
reloadMediaSource(sendMessage: (msg: ICoreMessage, transferables?: Transferable[]) => void): Promise<void>;
|
|
99
106
|
/**
|
|
100
107
|
* Dispose all resources linked to the currently preopared content if one and
|
|
101
108
|
* stop linking it to this `ContentPreparer`.
|
|
@@ -153,7 +160,7 @@ export interface IPreparedContentData {
|
|
|
153
160
|
*/
|
|
154
161
|
segmentSinksStore: SegmentSinksStore;
|
|
155
162
|
/** Allows to send timed text media data so it can be rendered. */
|
|
156
|
-
|
|
163
|
+
coreTextSender: CoreTextDisplayerInterface | null;
|
|
157
164
|
/**
|
|
158
165
|
* Allows to create `SegmentQueue` which simplifies complex media segment
|
|
159
166
|
* fetching.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content_preparer.d.ts","sourceRoot":"","sources":["../../../../src/core/entry/content_preparer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAQvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,8CAA8C,CAAC;AACvG,OAAO,eAAe,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,iBAAiB,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAwC,YAAY,EAAE,MAAM,UAAU,CAAC;AAEnF,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AACzE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,iBAAiB,MAAM,uBAAuB,CAAC;AAMtD;;;;;;;;;;;;;;;;;;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,WAAW,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE,KAAK,IAAI,EACxE,OAAO,EAAE,0BAA0B;IACnC,6DAA6D;IAC7D,UAAU,EAAE,kCAAkC,GAC7C,OAAO,CAAC,SAAS,CAAC;IA2LrB;;;;;OAKG;IACI,iBAAiB,IAAI,oBAAoB,GAAG,IAAI;IAIvD;;;;;;OAMG;IACI,uBAAuB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,IAAI;IAIxE;;;;;;;;OAQG;IACI,iBAAiB,CACtB,WAAW,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE,KAAK,IAAI,GACvE,OAAO,CAAC,IAAI,CAAC;IA4ChB;;;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,cAAc,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAClD;;;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,28 +47,25 @@ 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("
|
|
51
|
-
var features_1 = require("
|
|
52
|
-
var log_1 = require("
|
|
53
|
-
var manifest_1 = require("
|
|
54
|
-
var main_media_source_interface_1 = require("
|
|
55
|
-
var worker_media_source_interface_1 = require("
|
|
56
|
-
var
|
|
57
|
-
var
|
|
58
|
-
var
|
|
59
|
-
var
|
|
60
|
-
var
|
|
61
|
-
var
|
|
62
|
-
var
|
|
63
|
-
var
|
|
64
|
-
var
|
|
65
|
-
var
|
|
66
|
-
var
|
|
67
|
-
var FreezeResolver_1 = require("../common/FreezeResolver");
|
|
68
|
-
var globals_1 = require("./globals");
|
|
69
|
-
var send_message_1 = require("./send_message");
|
|
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");
|
|
70
67
|
var track_choice_setter_1 = require("./track_choice_setter");
|
|
71
|
-
var
|
|
68
|
+
var utils_1 = require("./utils");
|
|
72
69
|
/** Function allowing to associate a unique identifier to all created `MediaSource` */
|
|
73
70
|
var generateMediaSourceId = (0, id_generator_1.default)();
|
|
74
71
|
/**
|
|
@@ -120,7 +117,9 @@ var ContentPreparer = /** @class */ (function () {
|
|
|
120
117
|
* initialized.
|
|
121
118
|
* @returns {Promise.<Object>}
|
|
122
119
|
*/
|
|
123
|
-
ContentPreparer.prototype.initializeNewContent = function (context
|
|
120
|
+
ContentPreparer.prototype.initializeNewContent = function (sendMessage, context,
|
|
121
|
+
/** Allows to filter which Representations can be choosen. */
|
|
122
|
+
throttlers) {
|
|
124
123
|
var _this = this;
|
|
125
124
|
return new Promise(function (res, rej) {
|
|
126
125
|
var _a, _b;
|
|
@@ -129,39 +128,40 @@ var ContentPreparer = /** @class */ (function () {
|
|
|
129
128
|
var currentMediaSourceCanceller = new task_canceller_1.default();
|
|
130
129
|
_this._currentMediaSourceCanceller = currentMediaSourceCanceller;
|
|
131
130
|
currentMediaSourceCanceller.linkToSignal(contentCanceller.signal);
|
|
132
|
-
var contentId = context.contentId, url = context.url, hasText = context.hasText, transportOptions = context.transportOptions, useMseInWorker = context.useMseInWorker, enableRepresentationAvoidance = context.enableRepresentationAvoidance;
|
|
131
|
+
var contentId = context.contentId, url = context.url, hasText = context.hasText, transportOptions = context.transportOptions, useMseInWorker = context.useMseInWorker, enableRepresentationAvoidance = context.enableRepresentationAvoidance, transport = context.transport;
|
|
133
132
|
var manifest = null;
|
|
134
|
-
|
|
135
|
-
|
|
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
|
+
}
|
|
136
139
|
var representationFilter = typeof transportOptions.representationFilter === "string"
|
|
137
140
|
? (0, manifest_1.createRepresentationFilterFromFnString)(transportOptions.representationFilter)
|
|
138
|
-
:
|
|
139
|
-
var
|
|
141
|
+
: transportOptions.representationFilter;
|
|
142
|
+
var transportPipelines = transportFn(__assign(__assign({}, transportOptions), { representationFilter: representationFilter }));
|
|
140
143
|
var cmcdDataBuilder = context.cmcd === undefined ? null : new cmcd_1.default(context.cmcd);
|
|
141
|
-
var manifestFetcher = new fetchers_1.ManifestFetcher(url === undefined ? undefined : [url],
|
|
144
|
+
var manifestFetcher = new fetchers_1.ManifestFetcher(url === undefined ? undefined : [url], transportPipelines, __assign({ cmcdDataBuilder: cmcdDataBuilder }, context.manifestRetryOptions));
|
|
142
145
|
var representationEstimator = (0, adaptive_1.default)({
|
|
143
146
|
initialBitrates: {
|
|
144
147
|
audio: (_a = context.initialAudioBitrate) !== null && _a !== void 0 ? _a : 0,
|
|
145
148
|
video: (_b = context.initialVideoBitrate) !== null && _b !== void 0 ? _b : 0,
|
|
146
149
|
},
|
|
147
150
|
lowLatencyMode: transportOptions.lowLatencyMode,
|
|
148
|
-
throttlers:
|
|
149
|
-
limitResolution: { video: globals_1.limitVideoResolution },
|
|
150
|
-
throttleBitrate: { video: globals_1.throttleVideoBitrate },
|
|
151
|
-
},
|
|
151
|
+
throttlers: throttlers,
|
|
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(
|
|
158
|
-
var fetchThumbnailData = (0, thumbnail_fetcher_1.default)(
|
|
157
|
+
var segmentQueueCreator = new fetchers_1.SegmentQueueCreator(transportPipelines, cdnPrioritizer, cmcdDataBuilder, context.segmentRetryOptions);
|
|
158
|
+
var fetchThumbnailData = (0, thumbnail_fetcher_1.default)(transportPipelines.thumbnails, cdnPrioritizer);
|
|
159
159
|
var trackChoiceSetter = new track_choice_setter_1.default();
|
|
160
|
-
var _c = __read(createMediaSourceInterfaceAndSegmentSinksStore(contentId, {
|
|
160
|
+
var _c = __read(createMediaSourceInterfaceAndSegmentSinksStore(sendMessage, contentId, {
|
|
161
161
|
useMseInWorker: useMseInWorker,
|
|
162
162
|
hasVideo: _this._hasVideo,
|
|
163
163
|
hasText: hasText,
|
|
164
|
-
}, currentMediaSourceCanceller.signal), 3), mediaSource = _c[0], segmentSinksStore = _c[1],
|
|
164
|
+
}, currentMediaSourceCanceller.signal), 3), mediaSource = _c[0], segmentSinksStore = _c[1], coreTextSender = _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
|
-
|
|
178
|
+
coreTextSender: coreTextSender,
|
|
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
|
-
(
|
|
190
|
-
type: "warning" /*
|
|
189
|
+
sendMessage({
|
|
190
|
+
type: "warning" /* CoreMessageType.Warning */,
|
|
191
191
|
contentId: contentId,
|
|
192
|
-
value: (0,
|
|
192
|
+
value: (0, utils_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
|
-
(
|
|
208
|
-
type: "error" /*
|
|
207
|
+
sendMessage({
|
|
208
|
+
type: "error" /* CoreMessageType.Error */,
|
|
209
209
|
contentId: contentId,
|
|
210
|
-
value: (0,
|
|
210
|
+
value: (0, utils_1.formatErrorForSender)(err),
|
|
211
211
|
});
|
|
212
212
|
rej(err);
|
|
213
213
|
}, contentCanceller.signal);
|
|
@@ -219,25 +219,19 @@ var ContentPreparer = /** @class */ (function () {
|
|
|
219
219
|
return;
|
|
220
220
|
}
|
|
221
221
|
updateCodecSupportInWorkerMode(manifest);
|
|
222
|
-
var sentManifest = manifest.getMetadataSnapshot();
|
|
223
222
|
manifest.addEventListener("manifestUpdate", function (updates) {
|
|
224
223
|
if (manifest === null) {
|
|
225
224
|
// TODO log warn?
|
|
226
225
|
return;
|
|
227
226
|
}
|
|
228
|
-
|
|
229
|
-
|
|
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 */,
|
|
227
|
+
sendMessage({
|
|
228
|
+
type: "manifest-update" /* CoreMessageType.ManifestUpdate */,
|
|
235
229
|
contentId: contentId,
|
|
236
|
-
value: { manifest:
|
|
230
|
+
value: { manifest: manifest, updates: updates },
|
|
237
231
|
});
|
|
238
232
|
}, contentCanceller.signal);
|
|
239
233
|
unbindRejectOnCancellation();
|
|
240
|
-
res(
|
|
234
|
+
res(manifest);
|
|
241
235
|
}
|
|
242
236
|
});
|
|
243
237
|
};
|
|
@@ -262,12 +256,15 @@ var ContentPreparer = /** @class */ (function () {
|
|
|
262
256
|
(_a = this._currentContent) === null || _a === void 0 ? void 0 : _a.manifestFetcher.scheduleManualRefresh(settings);
|
|
263
257
|
};
|
|
264
258
|
/**
|
|
265
|
-
*
|
|
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.
|
|
266
262
|
*
|
|
267
263
|
* The returned Promise resolves when it restarts being ready.
|
|
264
|
+
* @param {Function} sendMessage
|
|
268
265
|
* @returns {Promise}
|
|
269
266
|
*/
|
|
270
|
-
ContentPreparer.prototype.reloadMediaSource = function () {
|
|
267
|
+
ContentPreparer.prototype.reloadMediaSource = function (sendMessage) {
|
|
271
268
|
var _this = this;
|
|
272
269
|
this._currentMediaSourceCanceller.cancel();
|
|
273
270
|
if (this._currentContent === null) {
|
|
@@ -275,15 +272,15 @@ var ContentPreparer = /** @class */ (function () {
|
|
|
275
272
|
}
|
|
276
273
|
this._currentContent.trackChoiceSetter.reset();
|
|
277
274
|
this._currentMediaSourceCanceller = new task_canceller_1.default();
|
|
278
|
-
var _a = __read(createMediaSourceInterfaceAndSegmentSinksStore(this._currentContent.contentId, {
|
|
275
|
+
var _a = __read(createMediaSourceInterfaceAndSegmentSinksStore(sendMessage, this._currentContent.contentId, {
|
|
279
276
|
useMseInWorker: this._currentContent.useMseInWorker,
|
|
280
277
|
hasVideo: this._hasVideo,
|
|
281
|
-
hasText: this._currentContent.
|
|
282
|
-
}, this._currentMediaSourceCanceller.signal), 3), mediaSourceInterface = _a[0], segmentSinksStore = _a[1],
|
|
278
|
+
hasText: this._currentContent.coreTextSender !== null,
|
|
279
|
+
}, this._currentMediaSourceCanceller.signal), 3), mediaSourceInterface = _a[0], segmentSinksStore = _a[1], coreTextSender = _a[2];
|
|
283
280
|
this._currentContent.mediaSource = mediaSourceInterface;
|
|
284
281
|
this._currentContent.segmentSinksStore = segmentSinksStore;
|
|
285
282
|
this._currentContent.freezeResolver = new FreezeResolver_1.default(segmentSinksStore);
|
|
286
|
-
this._currentContent.
|
|
283
|
+
this._currentContent.coreTextSender = coreTextSender;
|
|
287
284
|
return new Promise(function (res, rej) {
|
|
288
285
|
mediaSourceInterface.addEventListener("mediaSourceOpen", function () {
|
|
289
286
|
res();
|
|
@@ -308,6 +305,7 @@ var ContentPreparer = /** @class */ (function () {
|
|
|
308
305
|
}());
|
|
309
306
|
exports.default = ContentPreparer;
|
|
310
307
|
/**
|
|
308
|
+
* @param {Function} sendMessage
|
|
311
309
|
* @param {string} contentId
|
|
312
310
|
* @param {Object} capabilities
|
|
313
311
|
* @param {boolean} capabilities.useMseInWorker
|
|
@@ -316,7 +314,7 @@ exports.default = ContentPreparer;
|
|
|
316
314
|
* @param {Object} cancelSignal
|
|
317
315
|
* @returns {Array.<Object>}
|
|
318
316
|
*/
|
|
319
|
-
function createMediaSourceInterfaceAndSegmentSinksStore(contentId, capabilities, cancelSignal) {
|
|
317
|
+
function createMediaSourceInterfaceAndSegmentSinksStore(sendMessage, contentId, capabilities, cancelSignal) {
|
|
320
318
|
var mediaSourceInterface;
|
|
321
319
|
if (capabilities.useMseInWorker) {
|
|
322
320
|
var mainMediaSource = new main_media_source_interface_1.default(generateMediaSourceId());
|
|
@@ -333,18 +331,18 @@ function createMediaSourceInterfaceAndSegmentSinksStore(contentId, capabilities,
|
|
|
333
331
|
URL.revokeObjectURL(url_1);
|
|
334
332
|
});
|
|
335
333
|
}
|
|
336
|
-
(
|
|
337
|
-
type: "attach-media-source" /*
|
|
334
|
+
sendMessage({
|
|
335
|
+
type: "attach-media-source" /* CoreMessageType.AttachMediaSource */,
|
|
338
336
|
contentId: contentId,
|
|
339
337
|
value: sentMediaSourceLink,
|
|
340
338
|
mediaSourceId: mediaSourceInterface.id,
|
|
341
339
|
}, [handle.value]);
|
|
342
340
|
}
|
|
343
341
|
else {
|
|
344
|
-
mediaSourceInterface = new worker_media_source_interface_1.default(generateMediaSourceId(), contentId,
|
|
342
|
+
mediaSourceInterface = new worker_media_source_interface_1.default(generateMediaSourceId(), contentId, sendMessage);
|
|
345
343
|
}
|
|
346
344
|
var textSender = capabilities.hasText
|
|
347
|
-
? new
|
|
345
|
+
? new core_text_displayer_interface_1.default(contentId, sendMessage)
|
|
348
346
|
: null;
|
|
349
347
|
var hasVideo = capabilities.hasVideo;
|
|
350
348
|
var segmentSinksStore = new segment_sinks_1.default(mediaSourceInterface, hasVideo, textSender);
|
package/dist/{es2017/core/main/common → commonjs/core/entry}/content_time_boundaries_observer.d.ts
RENAMED
|
@@ -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 "
|
|
17
|
-
import type { IManifest, IAdaptation, IPeriod } from "
|
|
18
|
-
import type { IReadOnlyPlaybackObserver } from "
|
|
19
|
-
import type { IPlayerError } from "
|
|
20
|
-
import EventEmitter from "
|
|
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/entry/content_time_boundaries_observer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,sCAAsC,EACtC,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EAEX,OAAO,EACR,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,YAAY,MAAM,2BAA2B,CAAC;AAMrD;;;;;;;;;;;;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("
|
|
45
|
-
var event_emitter_1 = require("
|
|
46
|
-
var is_null_or_undefined_1 = require("
|
|
47
|
-
var queue_microtask_1 = require("
|
|
48
|
-
var sorted_list_1 = require("
|
|
49
|
-
var task_canceller_1 = require("
|
|
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:
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { IMainThreadMessage } from "../../main_thread/types";
|
|
2
|
+
import SharedReference from "../../utils/reference";
|
|
3
|
+
import type { ICoreMessage, IResolutionInfo } from "../types";
|
|
4
|
+
export type IMessageReceiverCallback = (evt: {
|
|
5
|
+
data: IMainThreadMessage;
|
|
6
|
+
}) => void;
|
|
7
|
+
/**
|
|
8
|
+
* Initialize a `CoreEntry`, which is the part of the RxPlayer acting as an
|
|
9
|
+
* entry point to all its "core" code.
|
|
10
|
+
*
|
|
11
|
+
* Its role is to receive and react to messages coming from "main thead", which
|
|
12
|
+
* may include loading and playing a content, and to send back messages for the main
|
|
13
|
+
* thread.
|
|
14
|
+
* @param {Function} setMessageReceiver - Declares the function that will
|
|
15
|
+
* receive messages coming from the "main thread" part of the RxPlayer logic.
|
|
16
|
+
* @param {Function} sendMessage - Function allowing to send messages to the
|
|
17
|
+
* "main thread" part of the RxPlayer logic.
|
|
18
|
+
*/
|
|
19
|
+
export default function initializeCoreEntry(setMessageReceiver: (cb: IMessageReceiverCallback) => void, sendMessage: (msg: ICoreMessage, transferables?: Transferable[]) => void): void;
|
|
20
|
+
/**
|
|
21
|
+
* Collection of so-called "references": values configuring playback that may
|
|
22
|
+
* be updated at any time and that the CoreEntry should react on.
|
|
23
|
+
*/
|
|
24
|
+
export interface ICoreReferences {
|
|
25
|
+
limitVideoResolution: SharedReference<IResolutionInfo>;
|
|
26
|
+
/** Max buffer size after the current position, in seconds (we GC further up). */
|
|
27
|
+
maxBufferAhead: SharedReference<number>;
|
|
28
|
+
/** Max buffer size before the current position, in seconds (we GC further down). */
|
|
29
|
+
maxBufferBehind: SharedReference<number>;
|
|
30
|
+
/** Buffer maximum size in kiloBytes at which we stop downloading */
|
|
31
|
+
maxVideoBufferSize: SharedReference<number>;
|
|
32
|
+
throttleVideoBitrate: SharedReference<number>;
|
|
33
|
+
/** Buffer "goal" at which we stop downloading new segments. */
|
|
34
|
+
wantedBufferAhead: SharedReference<number>;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=core_entry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core_entry.d.ts","sourceRoot":"","sources":["../../../../src/core/entry/core_entry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,kBAAkB,EAGnB,MAAM,yBAAyB,CAAC;AAajC,OAAO,eAAe,MAAM,uBAAuB,CAAC;AAQpD,OAAO,KAAK,EACV,YAAY,EAEZ,eAAe,EAChB,MAAM,UAAU,CAAC;AAUlB,MAAM,MAAM,wBAAwB,GAAG,CAAC,GAAG,EAAE;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,KAAK,IAAI,CAAC;AAEnF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACzC,kBAAkB,EAAE,CAAC,EAAE,EAAE,wBAAwB,KAAK,IAAI,EAC1D,WAAW,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE,KAAK,IAAI,GACvE,IAAI,CA6YN;AA2vBD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,oBAAoB,EAAE,eAAe,CAAC,eAAe,CAAC,CAAC;IACvD,iFAAiF;IACjF,cAAc,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACxC,oFAAoF;IACpF,eAAe,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACzC,oEAAoE;IACpE,kBAAkB,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC5C,oBAAoB,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9C,+DAA+D;IAC/D,iBAAiB,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;CAC5C"}
|