rx-player 4.3.0-dev.2025012900 → 4.3.0-dev.2025030400
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 +10 -2
- 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/compat/browser_compatibility_types.d.ts +32 -13
- package/dist/commonjs/compat/browser_compatibility_types.d.ts.map +1 -1
- package/dist/commonjs/compat/browser_compatibility_types.js +12 -32
- package/dist/commonjs/compat/eme/close_session.d.ts +2 -2
- package/dist/commonjs/compat/eme/close_session.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/custom_key_system_access.d.ts +4 -9
- package/dist/commonjs/compat/eme/custom_key_system_access.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts +5 -6
- package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.js +6 -4
- package/dist/commonjs/compat/eme/custom_media_keys/index.d.ts +0 -2
- package/dist/commonjs/compat/eme/custom_media_keys/index.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +4 -5
- package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +5 -6
- package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.js +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts +5 -11
- package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.js +2 -2
- package/dist/commonjs/compat/eme/eme-api-implementation.d.ts +5 -6
- package/dist/commonjs/compat/eme/eme-api-implementation.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/eme-api-implementation.js +1 -0
- package/dist/commonjs/compat/eme/generate_key_request.d.ts +2 -2
- package/dist/commonjs/compat/eme/generate_key_request.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/get_init_data.d.ts +2 -2
- package/dist/commonjs/compat/eme/get_init_data.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/index.d.ts +1 -3
- package/dist/commonjs/compat/eme/index.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/load_session.d.ts +2 -2
- package/dist/commonjs/compat/eme/load_session.d.ts.map +1 -1
- package/dist/commonjs/compat/eme/set_media_keys.d.ts +2 -3
- package/dist/commonjs/compat/eme/set_media_keys.d.ts.map +1 -1
- package/dist/commonjs/compat/event_listeners.d.ts +2 -3
- package/dist/commonjs/compat/event_listeners.d.ts.map +1 -1
- package/dist/commonjs/compat/remove_cue.d.ts +2 -1
- package/dist/commonjs/compat/remove_cue.d.ts.map +1 -1
- package/dist/commonjs/core/main/common/FreezeResolver.d.ts +176 -0
- package/dist/commonjs/core/main/common/FreezeResolver.d.ts.map +1 -0
- package/dist/commonjs/core/main/common/FreezeResolver.js +431 -0
- package/dist/commonjs/core/main/common/synchronize_sinks_on_observation.d.ts +11 -0
- package/dist/commonjs/core/main/common/synchronize_sinks_on_observation.d.ts.map +1 -0
- package/dist/commonjs/core/main/common/synchronize_sinks_on_observation.js +20 -0
- package/dist/commonjs/core/main/worker/content_preparer.d.ts +82 -5
- package/dist/commonjs/core/main/worker/content_preparer.d.ts.map +1 -1
- package/dist/commonjs/core/main/worker/content_preparer.js +83 -18
- package/dist/commonjs/core/main/worker/worker_main.d.ts.map +1 -1
- package/dist/commonjs/core/main/worker/worker_main.js +69 -14
- package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts.map +1 -1
- package/dist/commonjs/core/stream/adaptation/adaptation_stream.js +26 -4
- package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
- package/dist/commonjs/default_config.d.ts +26 -0
- package/dist/commonjs/default_config.d.ts.map +1 -1
- package/dist/commonjs/default_config.js +26 -0
- package/dist/commonjs/main_thread/api/option_utils.d.ts +26 -0
- package/dist/commonjs/main_thread/api/option_utils.d.ts.map +1 -1
- package/dist/commonjs/main_thread/api/option_utils.js +5 -2
- package/dist/commonjs/main_thread/api/public_api.d.ts.map +1 -1
- package/dist/commonjs/main_thread/api/public_api.js +14 -12
- package/dist/commonjs/main_thread/api/utils.d.ts +1 -2
- package/dist/commonjs/main_thread/api/utils.d.ts.map +1 -1
- package/dist/commonjs/main_thread/api/utils.js +2 -3
- package/dist/commonjs/main_thread/decrypt/content_decryptor.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/create_or_load_session.d.ts +2 -2
- package/dist/commonjs/main_thread/decrypt/create_or_load_session.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/create_session.d.ts +3 -3
- package/dist/commonjs/main_thread/decrypt/create_session.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/find_key_system.d.ts +3 -4
- package/dist/commonjs/main_thread/decrypt/find_key_system.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/get_media_keys.d.ts +3 -4
- package/dist/commonjs/main_thread/decrypt/get_media_keys.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/session_events_listener.d.ts +2 -2
- package/dist/commonjs/main_thread/decrypt/session_events_listener.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/set_server_certificate.d.ts +3 -3
- package/dist/commonjs/main_thread/decrypt/set_server_certificate.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.d.ts +2 -2
- package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.d.ts +2 -2
- package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.d.ts +10 -10
- package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.js +2 -2
- package/dist/commonjs/main_thread/decrypt/utils/media_keys_attacher.d.ts +4 -4
- package/dist/commonjs/main_thread/decrypt/utils/media_keys_attacher.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts +5 -7
- package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -1
- package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.js +3 -5
- package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.d.ts +5 -5
- package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/directfile_content_initializer.js +1 -1
- package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts +6 -0
- 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 +77 -25
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts +6 -0
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +8 -8
- package/dist/commonjs/main_thread/init/types.d.ts +3 -2
- package/dist/commonjs/main_thread/init/types.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts +2 -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 -0
- package/dist/commonjs/main_thread/init/utils/get_loaded_reference.d.ts +1 -3
- package/dist/commonjs/main_thread/init/utils/get_loaded_reference.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/utils/get_loaded_reference.js +4 -5
- package/dist/commonjs/main_thread/init/utils/rebuffering_controller.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/utils/rebuffering_controller.js +1 -13
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +1 -4
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.js +3 -5
- package/dist/commonjs/main_thread/tracks_store/tracks_store.d.ts +2 -2
- package/dist/commonjs/main_thread/tracks_store/tracks_store.d.ts.map +1 -1
- package/dist/commonjs/main_thread/tracks_store/tracks_store.js +16 -22
- package/dist/commonjs/manifest/classes/index.d.ts +2 -2
- package/dist/commonjs/manifest/classes/index.d.ts.map +1 -1
- package/dist/commonjs/manifest/classes/manifest.d.ts +17 -2
- package/dist/commonjs/manifest/classes/manifest.d.ts.map +1 -1
- package/dist/commonjs/manifest/classes/manifest.js +55 -12
- package/dist/commonjs/manifest/classes/representation.d.ts +9 -0
- package/dist/commonjs/manifest/classes/representation.d.ts.map +1 -1
- package/dist/commonjs/manifest/classes/representation.js +1 -0
- package/dist/commonjs/manifest/index.d.ts +2 -2
- package/dist/commonjs/manifest/index.d.ts.map +1 -1
- package/dist/commonjs/manifest/utils.js +1 -1
- package/dist/commonjs/multithread_types.d.ts +8 -0
- package/dist/commonjs/multithread_types.d.ts.map +1 -1
- package/dist/commonjs/parsers/containers/isobmff/extract_complete_chunks.d.ts +1 -1
- package/dist/commonjs/parsers/containers/isobmff/extract_complete_chunks.js +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.js +1 -1
- package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts.map +1 -1
- package/dist/commonjs/playback_observer/media_element_playback_observer.js +6 -4
- package/dist/commonjs/playback_observer/types.d.ts +2 -0
- package/dist/commonjs/playback_observer/types.d.ts.map +1 -1
- package/dist/commonjs/playback_observer/worker_playback_observer.d.ts +2 -0
- package/dist/commonjs/playback_observer/worker_playback_observer.d.ts.map +1 -1
- package/dist/commonjs/public_types.d.ts +14 -0
- package/dist/commonjs/public_types.d.ts.map +1 -1
- 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/compat/browser_compatibility_types.d.ts +32 -13
- package/dist/es2017/compat/browser_compatibility_types.d.ts.map +1 -1
- package/dist/es2017/compat/browser_compatibility_types.js +12 -32
- package/dist/es2017/compat/eme/close_session.d.ts +2 -2
- package/dist/es2017/compat/eme/close_session.d.ts.map +1 -1
- package/dist/es2017/compat/eme/custom_key_system_access.d.ts +4 -9
- package/dist/es2017/compat/eme/custom_key_system_access.d.ts.map +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts +5 -6
- package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts.map +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.js +4 -4
- package/dist/es2017/compat/eme/custom_media_keys/index.d.ts +0 -2
- package/dist/es2017/compat/eme/custom_media_keys/index.d.ts.map +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +4 -5
- package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +5 -6
- package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.js +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts +5 -11
- package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.js +2 -2
- package/dist/es2017/compat/eme/eme-api-implementation.d.ts +5 -6
- package/dist/es2017/compat/eme/eme-api-implementation.d.ts.map +1 -1
- package/dist/es2017/compat/eme/eme-api-implementation.js +1 -0
- package/dist/es2017/compat/eme/generate_key_request.d.ts +2 -2
- package/dist/es2017/compat/eme/generate_key_request.d.ts.map +1 -1
- package/dist/es2017/compat/eme/get_init_data.d.ts +2 -2
- package/dist/es2017/compat/eme/get_init_data.d.ts.map +1 -1
- package/dist/es2017/compat/eme/index.d.ts +1 -3
- package/dist/es2017/compat/eme/index.d.ts.map +1 -1
- package/dist/es2017/compat/eme/load_session.d.ts +2 -2
- package/dist/es2017/compat/eme/load_session.d.ts.map +1 -1
- package/dist/es2017/compat/eme/set_media_keys.d.ts +2 -3
- package/dist/es2017/compat/eme/set_media_keys.d.ts.map +1 -1
- package/dist/es2017/compat/event_listeners.d.ts +2 -3
- package/dist/es2017/compat/event_listeners.d.ts.map +1 -1
- package/dist/es2017/compat/remove_cue.d.ts +2 -1
- package/dist/es2017/compat/remove_cue.d.ts.map +1 -1
- package/dist/es2017/core/main/common/FreezeResolver.d.ts +176 -0
- package/dist/es2017/core/main/common/FreezeResolver.d.ts.map +1 -0
- package/dist/es2017/core/main/common/FreezeResolver.js +363 -0
- package/dist/es2017/core/main/common/synchronize_sinks_on_observation.d.ts +11 -0
- package/dist/es2017/core/main/common/synchronize_sinks_on_observation.d.ts.map +1 -0
- package/dist/es2017/core/main/common/synchronize_sinks_on_observation.js +17 -0
- package/dist/es2017/core/main/worker/content_preparer.d.ts +82 -5
- package/dist/es2017/core/main/worker/content_preparer.d.ts.map +1 -1
- package/dist/es2017/core/main/worker/content_preparer.js +82 -17
- package/dist/es2017/core/main/worker/worker_main.d.ts.map +1 -1
- package/dist/es2017/core/main/worker/worker_main.js +68 -14
- package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts.map +1 -1
- package/dist/es2017/core/stream/adaptation/adaptation_stream.js +24 -2
- package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
- package/dist/es2017/default_config.d.ts +26 -0
- package/dist/es2017/default_config.d.ts.map +1 -1
- package/dist/es2017/default_config.js +26 -0
- package/dist/es2017/main_thread/api/option_utils.d.ts +26 -0
- package/dist/es2017/main_thread/api/option_utils.d.ts.map +1 -1
- package/dist/es2017/main_thread/api/option_utils.js +4 -1
- package/dist/es2017/main_thread/api/public_api.d.ts.map +1 -1
- package/dist/es2017/main_thread/api/public_api.js +14 -12
- package/dist/es2017/main_thread/api/utils.d.ts +1 -2
- package/dist/es2017/main_thread/api/utils.d.ts.map +1 -1
- package/dist/es2017/main_thread/api/utils.js +2 -3
- package/dist/es2017/main_thread/decrypt/content_decryptor.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/create_or_load_session.d.ts +2 -2
- package/dist/es2017/main_thread/decrypt/create_or_load_session.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/create_session.d.ts +3 -3
- package/dist/es2017/main_thread/decrypt/create_session.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/find_key_system.d.ts +3 -4
- package/dist/es2017/main_thread/decrypt/find_key_system.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/get_media_keys.d.ts +3 -4
- package/dist/es2017/main_thread/decrypt/get_media_keys.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/session_events_listener.d.ts +2 -2
- package/dist/es2017/main_thread/decrypt/session_events_listener.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/set_server_certificate.d.ts +3 -3
- package/dist/es2017/main_thread/decrypt/set_server_certificate.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.d.ts +2 -2
- package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/utils/is_session_usable.d.ts +2 -2
- package/dist/es2017/main_thread/decrypt/utils/is_session_usable.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.d.ts +10 -10
- package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.js +2 -2
- package/dist/es2017/main_thread/decrypt/utils/media_keys_attacher.d.ts +4 -4
- package/dist/es2017/main_thread/decrypt/utils/media_keys_attacher.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts +5 -7
- package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -1
- package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.js +3 -5
- package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.d.ts +5 -5
- package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/directfile_content_initializer.js +1 -1
- package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts +6 -0
- 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 +77 -26
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts +6 -0
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +8 -8
- package/dist/es2017/main_thread/init/types.d.ts +3 -2
- package/dist/es2017/main_thread/init/types.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts +2 -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 -0
- package/dist/es2017/main_thread/init/utils/get_loaded_reference.d.ts +1 -3
- package/dist/es2017/main_thread/init/utils/get_loaded_reference.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/utils/get_loaded_reference.js +4 -5
- package/dist/es2017/main_thread/init/utils/rebuffering_controller.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/utils/rebuffering_controller.js +1 -13
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +1 -4
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.js +3 -5
- package/dist/es2017/main_thread/tracks_store/tracks_store.d.ts +2 -2
- package/dist/es2017/main_thread/tracks_store/tracks_store.d.ts.map +1 -1
- package/dist/es2017/main_thread/tracks_store/tracks_store.js +16 -22
- package/dist/es2017/manifest/classes/index.d.ts +2 -2
- package/dist/es2017/manifest/classes/index.d.ts.map +1 -1
- package/dist/es2017/manifest/classes/manifest.d.ts +17 -2
- package/dist/es2017/manifest/classes/manifest.d.ts.map +1 -1
- package/dist/es2017/manifest/classes/manifest.js +32 -0
- package/dist/es2017/manifest/classes/representation.d.ts +9 -0
- package/dist/es2017/manifest/classes/representation.d.ts.map +1 -1
- package/dist/es2017/manifest/classes/representation.js +1 -0
- package/dist/es2017/manifest/index.d.ts +2 -2
- package/dist/es2017/manifest/index.d.ts.map +1 -1
- package/dist/es2017/manifest/utils.js +1 -1
- package/dist/es2017/multithread_types.d.ts +8 -0
- package/dist/es2017/multithread_types.d.ts.map +1 -1
- package/dist/es2017/parsers/containers/isobmff/extract_complete_chunks.d.ts +1 -1
- package/dist/es2017/parsers/containers/isobmff/extract_complete_chunks.js +1 -1
- package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.js +1 -1
- package/dist/es2017/playback_observer/media_element_playback_observer.d.ts.map +1 -1
- package/dist/es2017/playback_observer/media_element_playback_observer.js +6 -4
- package/dist/es2017/playback_observer/types.d.ts +2 -0
- package/dist/es2017/playback_observer/types.d.ts.map +1 -1
- package/dist/es2017/playback_observer/worker_playback_observer.d.ts +2 -0
- package/dist/es2017/playback_observer/worker_playback_observer.d.ts.map +1 -1
- package/dist/es2017/public_types.d.ts +14 -0
- package/dist/es2017/public_types.d.ts.map +1 -1
- package/dist/mpd-parser.wasm +0 -0
- package/dist/rx-player.js +489 -191
- package/dist/rx-player.min.js +18 -18
- package/dist/worker.js +6 -6
- package/package.json +18 -18
- package/src/__GENERATED_CODE/embedded_dash_wasm.ts +1 -1
- package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
- package/src/compat/browser_compatibility_types.ts +45 -42
- package/src/compat/eme/close_session.ts +2 -4
- package/src/compat/eme/custom_key_system_access.ts +4 -11
- package/src/compat/eme/custom_media_keys/ie11_media_keys.ts +29 -23
- package/src/compat/eme/custom_media_keys/index.ts +0 -2
- package/src/compat/eme/custom_media_keys/moz_media_keys_constructor.ts +5 -9
- package/src/compat/eme/custom_media_keys/old_webkit_media_keys.ts +15 -20
- package/src/compat/eme/custom_media_keys/webkit_media_keys.ts +28 -36
- package/src/compat/eme/eme-api-implementation.ts +16 -14
- package/src/compat/eme/generate_key_request.ts +2 -2
- package/src/compat/eme/get_init_data.ts +2 -2
- package/src/compat/eme/index.ts +1 -10
- package/src/compat/eme/load_session.ts +4 -10
- package/src/compat/eme/set_media_keys.ts +2 -3
- package/src/compat/event_listeners.ts +2 -2
- package/src/compat/remove_cue.ts +11 -4
- package/src/core/main/common/FreezeResolver.ts +584 -0
- package/src/core/main/common/synchronize_sinks_on_observation.ts +22 -0
- package/src/core/main/worker/content_preparer.ts +112 -24
- package/src/core/main/worker/worker_main.ts +90 -13
- package/src/core/stream/adaptation/adaptation_stream.ts +38 -4
- package/src/core/stream/orchestrator/stream_orchestrator.ts +2 -6
- package/src/default_config.ts +27 -0
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/DRMInfos.test.ts +3 -3
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/HDCPPolicy.test.ts +2 -2
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/decodingInfos.test.ts +4 -4
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaContentType.test.ts +2 -2
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaDisplayInfos.test.ts +1 -1
- package/src/main_thread/api/__tests__/option_utils.test.ts +3 -0
- package/src/main_thread/api/option_utils.ts +30 -0
- package/src/main_thread/api/public_api.ts +16 -12
- package/src/main_thread/api/utils.ts +1 -3
- package/src/main_thread/decrypt/__tests__/__global__/media_key_system_access.test.ts +2 -2
- package/src/main_thread/decrypt/content_decryptor.ts +9 -8
- package/src/main_thread/decrypt/create_or_load_session.ts +3 -3
- package/src/main_thread/decrypt/create_session.ts +3 -3
- package/src/main_thread/decrypt/find_key_system.ts +5 -3
- package/src/main_thread/decrypt/get_media_keys.ts +9 -6
- package/src/main_thread/decrypt/session_events_listener.ts +3 -3
- package/src/main_thread/decrypt/set_server_certificate.ts +4 -4
- package/src/main_thread/decrypt/utils/check_key_statuses.ts +2 -2
- package/src/main_thread/decrypt/utils/is_session_usable.ts +2 -4
- package/src/main_thread/decrypt/utils/loaded_sessions_store.ts +15 -16
- package/src/main_thread/decrypt/utils/media_keys_attacher.ts +7 -7
- package/src/main_thread/decrypt/utils/persistent_sessions_store.ts +5 -7
- package/src/main_thread/decrypt/utils/server_certificate_store.ts +6 -12
- package/src/main_thread/init/directfile_content_initializer.ts +1 -1
- package/src/main_thread/init/media_source_content_initializer.ts +98 -36
- package/src/main_thread/init/multi_thread_content_initializer.ts +14 -15
- package/src/main_thread/init/types.ts +3 -2
- package/src/main_thread/init/utils/create_core_playback_observer.ts +3 -0
- package/src/main_thread/init/utils/get_loaded_reference.ts +3 -6
- package/src/main_thread/init/utils/rebuffering_controller.ts +2 -24
- package/src/main_thread/init/utils/stream_events_emitter/stream_events_emitter.ts +3 -7
- package/src/main_thread/tracks_store/tracks_store.ts +16 -26
- package/src/manifest/classes/__tests__/representation.test.ts +16 -0
- package/src/manifest/classes/index.ts +2 -2
- package/src/manifest/classes/manifest.ts +48 -4
- package/src/manifest/classes/representation.ts +10 -0
- package/src/manifest/index.ts +2 -2
- package/src/manifest/utils.ts +1 -1
- package/src/multithread_types.ts +8 -0
- package/src/parsers/containers/isobmff/extract_complete_chunks.ts +1 -1
- package/src/parsers/manifest/dash/common/parse_adaptation_sets.ts +1 -1
- package/src/playback_observer/media_element_playback_observer.ts +14 -24
- package/src/playback_observer/types.ts +2 -0
- package/src/playback_observer/worker_playback_observer.ts +2 -0
- package/src/public_types.ts +17 -0
- package/src/utils/__tests__/logger.test.ts +44 -60
- package/dist/commonjs/compat/eme/custom_media_keys/types.d.ts +0 -48
- package/dist/commonjs/compat/eme/custom_media_keys/types.d.ts.map +0 -1
- package/dist/commonjs/compat/eme/custom_media_keys/types.js +0 -17
- package/dist/commonjs/core/main/common/DecipherabilityFreezeDetector.d.ts +0 -80
- package/dist/commonjs/core/main/common/DecipherabilityFreezeDetector.d.ts.map +0 -1
- package/dist/commonjs/core/main/common/DecipherabilityFreezeDetector.js +0 -127
- package/dist/es2017/compat/eme/custom_media_keys/types.d.ts +0 -48
- package/dist/es2017/compat/eme/custom_media_keys/types.d.ts.map +0 -1
- package/dist/es2017/compat/eme/custom_media_keys/types.js +0 -16
- package/dist/es2017/core/main/common/DecipherabilityFreezeDetector.d.ts +0 -80
- package/dist/es2017/core/main/common/DecipherabilityFreezeDetector.d.ts.map +0 -1
- package/dist/es2017/core/main/common/DecipherabilityFreezeDetector.js +0 -91
- package/src/compat/eme/custom_media_keys/types.ts +0 -66
- package/src/core/main/common/DecipherabilityFreezeDetector.ts +0 -147
|
@@ -14,8 +14,6 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import closeSession from "./close_session";
|
|
17
|
-
import type { ICustomMediaKeySystemAccess } from "./custom_key_system_access";
|
|
18
|
-
import type { ICustomMediaKeys, ICustomMediaKeySession } from "./custom_media_keys";
|
|
19
17
|
import type { IEmeApiImplementation, IPreferredEmeApiType } from "./eme-api-implementation";
|
|
20
18
|
import defaultEmeImplementation from "./eme-api-implementation";
|
|
21
19
|
import generateKeyRequest from "./generate_key_request";
|
|
@@ -23,6 +21,6 @@ import type { IEncryptedEventData } from "./get_init_data";
|
|
|
23
21
|
import getInitData from "./get_init_data";
|
|
24
22
|
import loadSession from "./load_session";
|
|
25
23
|
export default defaultEmeImplementation;
|
|
26
|
-
export type { IEmeApiImplementation, IPreferredEmeApiType,
|
|
24
|
+
export type { IEmeApiImplementation, IPreferredEmeApiType, IEncryptedEventData };
|
|
27
25
|
export { closeSession, generateKeyRequest, getInitData, loadSession };
|
|
28
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/compat/eme/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/compat/eme/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,wBAAwB,MAAM,0BAA0B,CAAC;AAChE,OAAO,kBAAkB,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAC1C,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,eAAe,wBAAwB,CAAC;AACxC,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import type {
|
|
16
|
+
import type { IMediaKeySession } from "../browser_compatibility_types";
|
|
17
17
|
/**
|
|
18
18
|
* Load a persistent session, based on its `sessionId`, on the given
|
|
19
19
|
* MediaKeySession.
|
|
@@ -27,5 +27,5 @@ import type { ICustomMediaKeySession } from "./custom_media_keys";
|
|
|
27
27
|
* @param {string} sessionId
|
|
28
28
|
* @returns {Promise.<boolean>}
|
|
29
29
|
*/
|
|
30
|
-
export default function loadSession(session:
|
|
30
|
+
export default function loadSession(session: IMediaKeySession, sessionId: string): Promise<boolean>;
|
|
31
31
|
//# sourceMappingURL=load_session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load_session.d.ts","sourceRoot":"","sources":["../../../../src/compat/eme/load_session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"load_session.d.ts","sourceRoot":"","sources":["../../../../src/compat/eme/load_session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAIvE;;;;;;;;;;;;GAYG;AACH,wBAA8B,WAAW,CACvC,OAAO,EAAE,gBAAgB,EACzB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CA6BlB"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import type { IMediaElement } from "../browser_compatibility_types";
|
|
2
|
-
import type { ICustomMediaKeys } from "./custom_media_keys";
|
|
1
|
+
import type { IMediaElement, IMediaKeys } from "../browser_compatibility_types";
|
|
3
2
|
import type { IEmeApiImplementation } from "./eme-api-implementation";
|
|
4
3
|
/**
|
|
5
4
|
* @param {Object} emeImplementation
|
|
@@ -7,5 +6,5 @@ import type { IEmeApiImplementation } from "./eme-api-implementation";
|
|
|
7
6
|
* @param {Object|null} mediaKeys
|
|
8
7
|
* @returns {Promise}
|
|
9
8
|
*/
|
|
10
|
-
export declare function setMediaKeys(emeImplementation: IEmeApiImplementation, mediaElement: IMediaElement, mediaKeys:
|
|
9
|
+
export declare function setMediaKeys(emeImplementation: IEmeApiImplementation, mediaElement: IMediaElement, mediaKeys: IMediaKeys | null): Promise<unknown>;
|
|
11
10
|
//# sourceMappingURL=set_media_keys.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set_media_keys.d.ts","sourceRoot":"","sources":["../../../../src/compat/eme/set_media_keys.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"set_media_keys.d.ts","sourceRoot":"","sources":["../../../../src/compat/eme/set_media_keys.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEhF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEtE;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,iBAAiB,EAAE,qBAAqB,EACxC,YAAY,EAAE,aAAa,EAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,GAC3B,OAAO,CAAC,OAAO,CAAC,CAgClB"}
|
|
@@ -16,8 +16,7 @@
|
|
|
16
16
|
import type { IEventEmitter } from "../utils/event_emitter";
|
|
17
17
|
import type { IReadOnlySharedReference } from "../utils/reference";
|
|
18
18
|
import type { CancellationSignal } from "../utils/task_canceller";
|
|
19
|
-
import type { ICompatPictureInPictureWindow, IEventTarget, IMediaElement } from "./browser_compatibility_types";
|
|
20
|
-
import type { ICustomMediaEncryptedEvent } from "./eme/custom_media_keys/types";
|
|
19
|
+
import type { ICompatPictureInPictureWindow, IEventTarget, IMediaElement, IMediaEncryptedEvent } from "./browser_compatibility_types";
|
|
21
20
|
export interface IEventEmitterLike {
|
|
22
21
|
addEventListener: (eventName: string, handler: EventListenerOrEventListenerObject) => void;
|
|
23
22
|
removeEventListener: (eventName: string, handler: EventListenerOrEventListenerObject) => void;
|
|
@@ -34,7 +33,7 @@ export type IEventTargetLike = HTMLElement | IEventEmitterLike | IEventEmitter<u
|
|
|
34
33
|
* @returns {Function} - Returns function allowing to easily add a callback to
|
|
35
34
|
* be triggered when that event is emitted on a given event target.
|
|
36
35
|
*/
|
|
37
|
-
declare function createCompatibleEventListener(eventNames: Array<"needkey" | "encrypted">, prefixes?: string[]): (element: IEventTargetLike, listener: (event:
|
|
36
|
+
declare function createCompatibleEventListener(eventNames: Array<"needkey" | "encrypted">, prefixes?: string[]): (element: IEventTargetLike, listener: (event: IMediaEncryptedEvent) => void, cancelSignal: CancellationSignal) => void;
|
|
38
37
|
declare function createCompatibleEventListener(eventNames: string[], prefixes?: string[]): (element: IEventTargetLike, listener: (event?: Event) => void, cancelSignal: CancellationSignal) => void;
|
|
39
38
|
/**
|
|
40
39
|
* Get video width from Picture-in-Picture window
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event_listeners.d.ts","sourceRoot":"","sources":["../../../src/compat/event_listeners.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAK5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAEnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAEV,6BAA6B,EAC7B,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"event_listeners.d.ts","sourceRoot":"","sources":["../../../src/compat/event_listeners.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,10 +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 { ICompatTextTrack, ICompatVTTCue } from "./browser_compatibility_types";
|
|
16
17
|
/**
|
|
17
18
|
* Remove cue from text track.
|
|
18
19
|
* @param {TextTrack} track
|
|
19
20
|
* @param {TextTrackCue} cue
|
|
20
21
|
*/
|
|
21
|
-
export default function removeCue(track: TextTrack, cue: TextTrackCue): void;
|
|
22
|
+
export default function removeCue(track: TextTrack | ICompatTextTrack, cue: TextTrackCue | ICompatVTTCue): void;
|
|
22
23
|
//# sourceMappingURL=remove_cue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove_cue.d.ts","sourceRoot":"","sources":["../../../src/compat/remove_cue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"remove_cue.d.ts","sourceRoot":"","sources":["../../../src/compat/remove_cue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAyBrF;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,KAAK,EAAE,SAAS,GAAG,gBAAgB,EACnC,GAAG,EAAE,YAAY,GAAG,aAAa,GAChC,IAAI,CAoBN"}
|
|
@@ -0,0 +1,176 @@
|
|
|
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
|
+
/**
|
|
5
|
+
* Set when there is a freeze which seems to be specifically linked to a,
|
|
6
|
+
* or multiple, content's `Representation` despite no attribute of it
|
|
7
|
+
* indicating so (i.e. it is decodable and decipherable).
|
|
8
|
+
* In that case, the recommendation is to avoid playing those
|
|
9
|
+
* `Representation` at all.
|
|
10
|
+
*/
|
|
11
|
+
export interface IRepresentationAvoidanceFreezeResolution {
|
|
12
|
+
type: "avoid-representations";
|
|
13
|
+
/** The `Representation` to avoid. */
|
|
14
|
+
value: Array<{
|
|
15
|
+
adaptation: IAdaptation;
|
|
16
|
+
period: IPeriod;
|
|
17
|
+
representation: IRepresentation;
|
|
18
|
+
}>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Set when there is a freeze which seem to be fixable by just
|
|
22
|
+
* "flushing" the buffer, e.g. generally by just seeking to another,
|
|
23
|
+
* close, position.
|
|
24
|
+
*/
|
|
25
|
+
export interface IFlushFreezeResolution {
|
|
26
|
+
type: "flush";
|
|
27
|
+
value: {
|
|
28
|
+
/**
|
|
29
|
+
* The relative position, when compared to the current playback
|
|
30
|
+
* position, we should be playing at after the flush.
|
|
31
|
+
*/
|
|
32
|
+
relativeSeek: number;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Set when there is a freeze which seem to be fixable by "reloading"
|
|
37
|
+
* the content: meaning re-creating a `MediaSource` and its associated
|
|
38
|
+
* buffers.
|
|
39
|
+
*
|
|
40
|
+
* This can for example be when the RxPlayer is playing undecipherable
|
|
41
|
+
* or undecodable Representation (e.g. because of some race condition),
|
|
42
|
+
* or when an unexplainable freeze might not be fixed by just a flush.
|
|
43
|
+
*/
|
|
44
|
+
export interface IReloadFreezeResolution {
|
|
45
|
+
type: "reload";
|
|
46
|
+
value: null;
|
|
47
|
+
}
|
|
48
|
+
/** Describe a strategy that can be taken to un-freeze playback. */
|
|
49
|
+
export type IFreezeResolution = IRepresentationAvoidanceFreezeResolution | IFlushFreezeResolution | IReloadFreezeResolution;
|
|
50
|
+
/**
|
|
51
|
+
* Sometimes playback is stuck for no known reason, despite having data in
|
|
52
|
+
* buffers.
|
|
53
|
+
*
|
|
54
|
+
* This can be due to relatively valid cause: performance being slow on the
|
|
55
|
+
* device making the content slow to start up, decryption keys not being
|
|
56
|
+
* obtained / usable yet etc.
|
|
57
|
+
*
|
|
58
|
+
* Yet in many cases, this is abnormal and may lead to being stuck at the same
|
|
59
|
+
* position and video frame indefinitely.
|
|
60
|
+
*
|
|
61
|
+
* For those situations, we have a series of tricks and heuristic, which are
|
|
62
|
+
* implemented by the `FreezeResolver`.
|
|
63
|
+
*
|
|
64
|
+
* @class FreezeResolver
|
|
65
|
+
*/
|
|
66
|
+
export default class FreezeResolver {
|
|
67
|
+
/** Contain information about segments contained in media buffers. */
|
|
68
|
+
private _segmentSinksStore;
|
|
69
|
+
/** Contains a short-term history of what content has been played recently. */
|
|
70
|
+
private _lastSegmentInfo;
|
|
71
|
+
/**
|
|
72
|
+
* Monotonically-raising timestamp before which we will just ignore freezing
|
|
73
|
+
* situations.
|
|
74
|
+
*
|
|
75
|
+
* To avoid flushing/reloading in a loop, we ignore for some time playback
|
|
76
|
+
* measure before retrying to unstuck playback.
|
|
77
|
+
*/
|
|
78
|
+
private _ignoreFreezeUntil;
|
|
79
|
+
/**
|
|
80
|
+
* Information on the last attempt to un-freeze playback by "flushing" buffers.
|
|
81
|
+
*
|
|
82
|
+
* `null` if we never attempted to flush buffers.
|
|
83
|
+
*/
|
|
84
|
+
private _lastFlushAttempt;
|
|
85
|
+
/**
|
|
86
|
+
* If set to something else than `null`, this is the timestamp at the time the
|
|
87
|
+
* `FreezeResolver` started to consider its decipherability-linked un-freezing
|
|
88
|
+
* logic.
|
|
89
|
+
*
|
|
90
|
+
* This is used as a time of reference: after enough time was spent from that
|
|
91
|
+
* timestamp, the `FreezeResolver` will attempt supplementary unfreezing
|
|
92
|
+
* strategies.
|
|
93
|
+
*
|
|
94
|
+
* When the `FreezeResolver` is not considering those decipherability-related
|
|
95
|
+
* strategies for now, it is set to `null`.
|
|
96
|
+
*/
|
|
97
|
+
private _decipherabilityFreezeStartingTimestamp;
|
|
98
|
+
constructor(segmentSinksStore: SegmentSinksStore);
|
|
99
|
+
/**
|
|
100
|
+
* Check that playback is not freezing, and if it is, return a solution that
|
|
101
|
+
* should be attempted to unfreeze it.
|
|
102
|
+
*
|
|
103
|
+
* Returns `null` either when there's no freeze happening or if there's one
|
|
104
|
+
* but there's nothing we should do about it yet.
|
|
105
|
+
*
|
|
106
|
+
* Refer to the returned type's definition for more information.
|
|
107
|
+
*
|
|
108
|
+
* @param {Object} observation - The last playback observation produced, it
|
|
109
|
+
* has to be recent (just triggered for example).
|
|
110
|
+
* @returns {Object|null}
|
|
111
|
+
*/
|
|
112
|
+
onNewObservation(observation: IFreezeResolverObservation): IFreezeResolution | null;
|
|
113
|
+
/**
|
|
114
|
+
* Performs decipherability-related checks if it makes sense.
|
|
115
|
+
*
|
|
116
|
+
* If decipherability-related checks have been performed **AND** an
|
|
117
|
+
* un-freezing strategy has been selected by this method, then return
|
|
118
|
+
* an object describing this wanted unfreezing strategy.
|
|
119
|
+
*
|
|
120
|
+
* If this method decides to take no action for now, it returns `null`.
|
|
121
|
+
* @param {Object} observation - playback observation that has just been
|
|
122
|
+
* performed.
|
|
123
|
+
* @param {number} now - Monotonically-raising timestamp for the current
|
|
124
|
+
* time.
|
|
125
|
+
* @returns {Object|null}
|
|
126
|
+
*/
|
|
127
|
+
private _checkForDecipherabilityRelatedFreeze;
|
|
128
|
+
/**
|
|
129
|
+
* This method should only be called if a "flush" strategy has recently be
|
|
130
|
+
* taken to try to unfreeze playback yet playback is still frozen.
|
|
131
|
+
*
|
|
132
|
+
* It considers the current played content and returns a more-involved
|
|
133
|
+
* unfreezing strategy (most often reload-related) to try to unfree playback.
|
|
134
|
+
* @param {number} freezingPosition - The playback position at which we're
|
|
135
|
+
* currently frozen.
|
|
136
|
+
* @returns {Object}
|
|
137
|
+
*/
|
|
138
|
+
private _getStrategyIfFlushingFails;
|
|
139
|
+
/**
|
|
140
|
+
* Add entry to `this._lastSegmentInfo` for the position that is currently
|
|
141
|
+
* played according to the given `observation`.
|
|
142
|
+
*
|
|
143
|
+
* @param {Object} observation
|
|
144
|
+
* @param {number} currentTimestamp
|
|
145
|
+
*/
|
|
146
|
+
private _addPositionToHistory;
|
|
147
|
+
}
|
|
148
|
+
/** Playback observation needed by the `FreezeResolver`. */
|
|
149
|
+
export interface IFreezeResolverObservation {
|
|
150
|
+
/** Current `readyState` value on the media element. */
|
|
151
|
+
readyState: number;
|
|
152
|
+
/**
|
|
153
|
+
* Set if the player is short on audio and/or video media data and is a such,
|
|
154
|
+
* rebuffering.
|
|
155
|
+
* `null` if not.
|
|
156
|
+
*/
|
|
157
|
+
rebuffering: IRebufferingStatus | null;
|
|
158
|
+
/**
|
|
159
|
+
* Set if the player is frozen, that is, stuck in place for unknown reason.
|
|
160
|
+
* Note that this reason can be a valid one, such as a necessary license not
|
|
161
|
+
* being obtained yet.
|
|
162
|
+
*
|
|
163
|
+
* `null` if the player is not frozen.
|
|
164
|
+
*/
|
|
165
|
+
freezing: IFreezingStatus | null;
|
|
166
|
+
/**
|
|
167
|
+
* Gap between `currentTime` and the next position with un-buffered data.
|
|
168
|
+
* `Infinity` if we don't have buffered data right now.
|
|
169
|
+
* `undefined` if we cannot determine the buffer gap.
|
|
170
|
+
*/
|
|
171
|
+
bufferGap: number | undefined;
|
|
172
|
+
position: ObservationPosition;
|
|
173
|
+
/** If `true` the content is loaded until its maximum position. */
|
|
174
|
+
fullyLoaded: boolean;
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=FreezeResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FreezeResolver.d.ts","sourceRoot":"","sources":["../../../../../src/core/main/common/FreezeResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,iBAAiB,MAAM,qBAAqB,CAAC;AAiDzD;;;;;;GAMG;AACH,MAAM,WAAW,wCAAwC;IACvD,IAAI,EAAE,uBAAuB,CAAC;IAC9B,qCAAqC;IACrC,KAAK,EAAE,KAAK,CAAC;QACX,UAAU,EAAE,WAAW,CAAC;QACxB,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,EAAE,eAAe,CAAC;KACjC,CAAC,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE;QACL;;;WAGG;QACH,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,IAAI,CAAC;CACb;AAED,mEAAmE;AACnE,MAAM,MAAM,iBAAiB,GACzB,wCAAwC,GACxC,sBAAsB,GACtB,uBAAuB,CAAC;AAE5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,qEAAqE;IACrE,OAAO,CAAC,kBAAkB,CAAoB;IAE9C,8EAA8E;IAC9E,OAAO,CAAC,gBAAgB,CAKtB;IAEF;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB,CAAgB;IAE1C;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAKhB;IAET;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,uCAAuC,CAAgB;gBAEnD,iBAAiB,EAAE,iBAAiB;IAWhD;;;;;;;;;;;;OAYG;IACI,gBAAgB,CACrB,WAAW,EAAE,0BAA0B,GACtC,iBAAiB,GAAG,IAAI;IAkF3B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,qCAAqC;IA8D7C;;;;;;;;;OASG;IACH,OAAO,CAAC,2BAA2B;IAyGnC;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;CA4C9B;AAgCD,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"}
|