rx-player 3.33.4-dev.2024083000 → 3.33.4
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/.prettierignore +1 -0
- package/.prettierrc +4 -0
- package/.vscode/settings.json +9 -0
- package/CHANGELOG.md +1662 -1076
- package/MAINTAINERS.md +9 -12
- package/README.md +111 -127
- package/VERSION +1 -1
- package/dist/_esm5.processed/compat/add_class_name.js +4 -3
- package/dist/_esm5.processed/compat/add_text_track.d.ts +1 -1
- package/dist/_esm5.processed/compat/add_text_track.js +4 -4
- package/dist/_esm5.processed/compat/browser_compatibility_types.d.ts +2 -1
- package/dist/_esm5.processed/compat/browser_compatibility_types.js +15 -10
- package/dist/_esm5.processed/compat/browser_detection.d.ts +3 -1
- package/dist/_esm5.processed/compat/browser_detection.js +18 -10
- package/dist/_esm5.processed/compat/can_reuse_media_keys.d.ts +4 -0
- package/dist/_esm5.processed/compat/can_reuse_media_keys.js +6 -2
- package/dist/_esm5.processed/compat/change_source_buffer_type.d.ts +1 -1
- package/dist/_esm5.processed/compat/eme/close_session.d.ts +1 -1
- package/dist/_esm5.processed/compat/eme/close_session.js +17 -13
- package/dist/_esm5.processed/compat/eme/custom_key_system_access.d.ts +1 -1
- package/dist/_esm5.processed/compat/eme/custom_media_keys/ie11_media_keys.d.ts +1 -1
- package/dist/_esm5.processed/compat/eme/custom_media_keys/ie11_media_keys.js +8 -9
- package/dist/_esm5.processed/compat/eme/custom_media_keys/index.d.ts +3 -2
- package/dist/_esm5.processed/compat/eme/custom_media_keys/index.js +1 -1
- package/dist/_esm5.processed/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +1 -1
- package/dist/_esm5.processed/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +1 -1
- package/dist/_esm5.processed/compat/eme/custom_media_keys/old_webkit_media_keys.js +7 -9
- package/dist/_esm5.processed/compat/eme/custom_media_keys/types.d.ts +4 -1
- package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys.d.ts +2 -2
- package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys.js +6 -12
- package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts +2 -1
- package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +3 -3
- package/dist/_esm5.processed/compat/eme/eme-api-implementation.d.ts +4 -4
- package/dist/_esm5.processed/compat/eme/eme-api-implementation.js +26 -11
- package/dist/_esm5.processed/compat/eme/generate_key_request.d.ts +1 -1
- package/dist/_esm5.processed/compat/eme/generate_key_request.js +17 -20
- package/dist/_esm5.processed/compat/eme/get_init_data.d.ts +3 -1
- package/dist/_esm5.processed/compat/eme/get_init_data.js +7 -9
- package/dist/_esm5.processed/compat/eme/get_uuid_kid_from_keystatus_kid.js +2 -3
- package/dist/_esm5.processed/compat/eme/get_webkit_fairplay_initdata.js +12 -13
- package/dist/_esm5.processed/compat/eme/index.d.ts +8 -5
- package/dist/_esm5.processed/compat/eme/index.js +1 -1
- package/dist/_esm5.processed/compat/eme/load_session.d.ts +1 -1
- package/dist/_esm5.processed/compat/enable_audio_track.d.ts +1 -1
- package/dist/_esm5.processed/compat/event_listeners.d.ts +26 -24
- package/dist/_esm5.processed/compat/event_listeners.js +14 -29
- package/dist/_esm5.processed/compat/fullscreen.d.ts +1 -1
- package/dist/_esm5.processed/compat/fullscreen.js +1 -1
- package/dist/_esm5.processed/compat/generate_init_data.js +3 -5
- package/dist/_esm5.processed/compat/index.d.ts +6 -3
- package/dist/_esm5.processed/compat/index.js +2 -2
- package/dist/_esm5.processed/compat/is_vtt_cue.d.ts +1 -1
- package/dist/_esm5.processed/compat/make_vtt_cue.d.ts +1 -1
- package/dist/_esm5.processed/compat/on_height_width_change.d.ts +2 -2
- package/dist/_esm5.processed/compat/on_height_width_change.js +3 -2
- package/dist/_esm5.processed/compat/patch_webkit_source_buffer.js +28 -29
- package/dist/_esm5.processed/compat/should_favour_custom_safari_EME.js +2 -2
- package/dist/_esm5.processed/compat/should_reload_media_source_on_decipherability_update.js +1 -2
- package/dist/_esm5.processed/config.d.ts +1 -1
- package/dist/_esm5.processed/config.js +0 -15
- package/dist/_esm5.processed/core/adaptive/adaptive_representation_selector.d.ts +7 -6
- package/dist/_esm5.processed/core/adaptive/adaptive_representation_selector.js +45 -22
- package/dist/_esm5.processed/core/adaptive/buffer_based_chooser.d.ts +1 -1
- package/dist/_esm5.processed/core/adaptive/buffer_based_chooser.js +11 -10
- package/dist/_esm5.processed/core/adaptive/guess_based_chooser.d.ts +4 -4
- package/dist/_esm5.processed/core/adaptive/guess_based_chooser.js +7 -6
- package/dist/_esm5.processed/core/adaptive/index.d.ts +3 -2
- package/dist/_esm5.processed/core/adaptive/network_analyzer.d.ts +4 -4
- package/dist/_esm5.processed/core/adaptive/network_analyzer.js +43 -38
- package/dist/_esm5.processed/core/adaptive/utils/bandwidth_estimator.js +1 -1
- package/dist/_esm5.processed/core/adaptive/utils/ewma.js +1 -2
- package/dist/_esm5.processed/core/adaptive/utils/filter_by_bitrate.d.ts +1 -1
- package/dist/_esm5.processed/core/adaptive/utils/filter_by_width.d.ts +1 -1
- package/dist/_esm5.processed/core/adaptive/utils/filter_by_width.js +3 -6
- package/dist/_esm5.processed/core/adaptive/utils/get_buffer_levels.js +7 -4
- package/dist/_esm5.processed/core/adaptive/utils/last_estimate_storage.d.ts +1 -1
- package/dist/_esm5.processed/core/adaptive/utils/pending_requests_store.d.ts +2 -1
- package/dist/_esm5.processed/core/adaptive/utils/representation_score_calculator.d.ts +1 -1
- package/dist/_esm5.processed/core/adaptive/utils/representation_score_calculator.js +8 -5
- package/dist/_esm5.processed/core/adaptive/utils/select_optimal_representation.d.ts +1 -1
- package/dist/_esm5.processed/core/adaptive/utils/select_optimal_representation.js +5 -3
- package/dist/_esm5.processed/core/api/debug/buffer_graph.d.ts +1 -1
- package/dist/_esm5.processed/core/api/debug/buffer_graph.js +3 -8
- package/dist/_esm5.processed/core/api/debug/buffer_size_graph.js +1 -2
- package/dist/_esm5.processed/core/api/debug/modules/general_info.d.ts +2 -2
- package/dist/_esm5.processed/core/api/debug/modules/general_info.js +17 -13
- package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_content.d.ts +3 -3
- package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_content.js +4 -2
- package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_size.d.ts +2 -2
- package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_size.js +1 -1
- package/dist/_esm5.processed/core/api/debug/render.d.ts +2 -2
- package/dist/_esm5.processed/core/api/debug/utils.d.ts +5 -5
- package/dist/_esm5.processed/core/api/index.d.ts +1 -1
- package/dist/_esm5.processed/core/api/option_utils.d.ts +3 -3
- package/dist/_esm5.processed/core/api/option_utils.js +85 -48
- package/dist/_esm5.processed/core/api/playback_observer.d.ts +16 -18
- package/dist/_esm5.processed/core/api/playback_observer.js +65 -42
- package/dist/_esm5.processed/core/api/public_api.d.ts +10 -9
- package/dist/_esm5.processed/core/api/public_api.js +103 -94
- package/dist/_esm5.processed/core/api/tracks_management/media_element_track_choice_manager.d.ts +1 -1
- package/dist/_esm5.processed/core/api/tracks_management/media_element_track_choice_manager.js +25 -14
- package/dist/_esm5.processed/core/api/tracks_management/track_choice_manager.d.ts +3 -3
- package/dist/_esm5.processed/core/api/tracks_management/track_choice_manager.js +72 -80
- package/dist/_esm5.processed/core/api/utils.d.ts +5 -5
- package/dist/_esm5.processed/core/api/utils.js +5 -8
- package/dist/_esm5.processed/core/decrypt/__tests__/__global__/utils.d.ts +12 -54
- package/dist/_esm5.processed/core/decrypt/__tests__/__global__/utils.js +55 -66
- package/dist/_esm5.processed/core/decrypt/attach_media_keys.d.ts +10 -5
- package/dist/_esm5.processed/core/decrypt/attach_media_keys.js +16 -8
- package/dist/_esm5.processed/core/decrypt/content_decryptor.d.ts +11 -2
- package/dist/_esm5.processed/core/decrypt/content_decryptor.js +136 -65
- package/dist/_esm5.processed/core/decrypt/create_or_load_session.d.ts +5 -4
- package/dist/_esm5.processed/core/decrypt/create_or_load_session.js +18 -7
- package/dist/_esm5.processed/core/decrypt/create_session.d.ts +5 -4
- package/dist/_esm5.processed/core/decrypt/create_session.js +6 -12
- package/dist/_esm5.processed/core/decrypt/dispose_decryption_resources.js +1 -2
- package/dist/_esm5.processed/core/decrypt/find_key_system.d.ts +13 -3
- package/dist/_esm5.processed/core/decrypt/find_key_system.js +45 -22
- package/dist/_esm5.processed/core/decrypt/get_key_system_configuration.js +1 -2
- package/dist/_esm5.processed/core/decrypt/get_media_keys.d.ts +9 -4
- package/dist/_esm5.processed/core/decrypt/get_media_keys.js +17 -6
- package/dist/_esm5.processed/core/decrypt/init_media_keys.d.ts +3 -3
- package/dist/_esm5.processed/core/decrypt/session_events_listener.d.ts +2 -2
- package/dist/_esm5.processed/core/decrypt/session_events_listener.js +12 -16
- package/dist/_esm5.processed/core/decrypt/set_server_certificate.d.ts +3 -3
- package/dist/_esm5.processed/core/decrypt/set_server_certificate.js +6 -7
- package/dist/_esm5.processed/core/decrypt/types.d.ts +11 -5
- package/dist/_esm5.processed/core/decrypt/utils/are_init_values_compatible.js +20 -12
- package/dist/_esm5.processed/core/decrypt/utils/check_key_statuses.d.ts +2 -2
- package/dist/_esm5.processed/core/decrypt/utils/check_key_statuses.js +5 -4
- package/dist/_esm5.processed/core/decrypt/utils/clean_old_loaded_sessions.d.ts +1 -1
- package/dist/_esm5.processed/core/decrypt/utils/clean_old_stored_persistent_info.d.ts +1 -1
- package/dist/_esm5.processed/core/decrypt/utils/init_data_values_container.d.ts +1 -1
- package/dist/_esm5.processed/core/decrypt/utils/init_data_values_container.js +16 -9
- package/dist/_esm5.processed/core/decrypt/utils/is_session_usable.d.ts +1 -1
- package/dist/_esm5.processed/core/decrypt/utils/is_session_usable.js +1 -2
- package/dist/_esm5.processed/core/decrypt/utils/key_session_record.d.ts +1 -1
- package/dist/_esm5.processed/core/decrypt/utils/key_session_record.js +1 -2
- package/dist/_esm5.processed/core/decrypt/utils/loaded_sessions_store.d.ts +11 -13
- package/dist/_esm5.processed/core/decrypt/utils/loaded_sessions_store.js +13 -13
- package/dist/_esm5.processed/core/decrypt/utils/media_keys_infos_store.d.ts +8 -3
- package/dist/_esm5.processed/core/decrypt/utils/media_keys_infos_store.js +1 -2
- package/dist/_esm5.processed/core/decrypt/utils/persistent_sessions_store.d.ts +3 -3
- package/dist/_esm5.processed/core/decrypt/utils/persistent_sessions_store.js +27 -16
- package/dist/_esm5.processed/core/decrypt/utils/serializable_bytes.js +1 -1
- package/dist/_esm5.processed/core/decrypt/utils/server_certificate_store.d.ts +1 -1
- package/dist/_esm5.processed/core/decrypt/utils/server_certificate_store.js +19 -12
- package/dist/_esm5.processed/core/fetchers/cdn_prioritizer.d.ts +2 -2
- package/dist/_esm5.processed/core/fetchers/cdn_prioritizer.js +5 -6
- package/dist/_esm5.processed/core/fetchers/index.d.ts +6 -3
- package/dist/_esm5.processed/core/fetchers/index.js +1 -1
- package/dist/_esm5.processed/core/fetchers/manifest/index.d.ts +3 -2
- package/dist/_esm5.processed/core/fetchers/manifest/manifest_fetcher.d.ts +2 -2
- package/dist/_esm5.processed/core/fetchers/manifest/manifest_fetcher.js +68 -61
- package/dist/_esm5.processed/core/fetchers/segment/index.d.ts +4 -3
- package/dist/_esm5.processed/core/fetchers/segment/prioritized_segment_fetcher.d.ts +4 -3
- package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher.d.ts +9 -8
- package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher.js +41 -29
- package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher_creator.d.ts +5 -5
- package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher_creator.js +2 -3
- package/dist/_esm5.processed/core/fetchers/segment/task_prioritizer.d.ts +1 -1
- package/dist/_esm5.processed/core/fetchers/segment/task_prioritizer.js +19 -18
- package/dist/_esm5.processed/core/fetchers/utils/error_selector.d.ts +1 -1
- package/dist/_esm5.processed/core/fetchers/utils/error_selector.js +1 -1
- package/dist/_esm5.processed/core/fetchers/utils/schedule_request.d.ts +3 -3
- package/dist/_esm5.processed/core/fetchers/utils/schedule_request.js +25 -25
- package/dist/_esm5.processed/core/init/directfile_content_initializer.d.ts +4 -4
- package/dist/_esm5.processed/core/init/directfile_content_initializer.js +21 -17
- package/dist/_esm5.processed/core/init/index.d.ts +2 -1
- package/dist/_esm5.processed/core/init/index.js +1 -1
- package/dist/_esm5.processed/core/init/media_source_content_initializer.d.ts +9 -9
- package/dist/_esm5.processed/core/init/media_source_content_initializer.js +64 -32
- package/dist/_esm5.processed/core/init/types.d.ts +10 -12
- package/dist/_esm5.processed/core/init/utils/content_time_boundaries_observer.d.ts +6 -5
- package/dist/_esm5.processed/core/init/utils/content_time_boundaries_observer.js +20 -19
- package/dist/_esm5.processed/core/init/utils/create_media_source.d.ts +1 -1
- package/dist/_esm5.processed/core/init/utils/create_media_source.js +2 -3
- package/dist/_esm5.processed/core/init/utils/create_stream_playback_observer.d.ts +6 -6
- package/dist/_esm5.processed/core/init/utils/create_stream_playback_observer.js +5 -3
- package/dist/_esm5.processed/core/init/utils/end_of_stream.d.ts +1 -1
- package/dist/_esm5.processed/core/init/utils/get_initial_time.d.ts +1 -1
- package/dist/_esm5.processed/core/init/utils/get_initial_time.js +12 -15
- package/dist/_esm5.processed/core/init/utils/get_loaded_reference.d.ts +3 -3
- package/dist/_esm5.processed/core/init/utils/get_loaded_reference.js +1 -2
- package/dist/_esm5.processed/core/init/utils/initial_seek_and_play.d.ts +9 -9
- package/dist/_esm5.processed/core/init/utils/initial_seek_and_play.js +39 -3
- package/dist/_esm5.processed/core/init/utils/initialize_content_decryption.d.ts +9 -8
- package/dist/_esm5.processed/core/init/utils/initialize_content_decryption.js +12 -9
- package/dist/_esm5.processed/core/init/utils/media_source_duration_updater.js +10 -7
- package/dist/_esm5.processed/core/init/utils/rebuffering_controller.d.ts +7 -6
- package/dist/_esm5.processed/core/init/utils/rebuffering_controller.js +24 -24
- package/dist/_esm5.processed/core/init/utils/stream_events_emitter/are_same_stream_events.js +1 -3
- package/dist/_esm5.processed/core/init/utils/stream_events_emitter/index.d.ts +1 -1
- package/dist/_esm5.processed/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +2 -2
- package/dist/_esm5.processed/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +14 -6
- package/dist/_esm5.processed/core/init/utils/stream_events_emitter/stream_events_emitter.d.ts +3 -3
- package/dist/_esm5.processed/core/init/utils/stream_events_emitter/stream_events_emitter.js +12 -19
- package/dist/_esm5.processed/core/init/utils/stream_events_emitter/types.d.ts +1 -1
- package/dist/_esm5.processed/core/init/utils/throw_on_media_error.d.ts +1 -1
- package/dist/_esm5.processed/core/init/utils/throw_on_media_error.js +11 -6
- package/dist/_esm5.processed/core/segment_buffers/garbage_collector.d.ts +6 -6
- package/dist/_esm5.processed/core/segment_buffers/garbage_collector.js +12 -13
- package/dist/_esm5.processed/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.d.ts +3 -2
- package/dist/_esm5.processed/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.js +6 -9
- package/dist/_esm5.processed/core/segment_buffers/implementations/image/image_segment_buffer.d.ts +3 -2
- package/dist/_esm5.processed/core/segment_buffers/implementations/image/image_segment_buffer.js +1 -1
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/html_text_segment_buffer.d.ts +2 -1
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/html_text_segment_buffer.js +7 -7
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/text_track_cues_store.d.ts +1 -1
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/text_track_cues_store.js +4 -4
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/update_proportional_elements.js +1 -2
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/utils.d.ts +1 -1
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/utils.js +2 -6
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/native_text_segment_buffer.d.ts +2 -1
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/native_text_segment_buffer.js +2 -2
- package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/parsers.d.ts +1 -1
- package/dist/_esm5.processed/core/segment_buffers/implementations/types.d.ts +5 -7
- package/dist/_esm5.processed/core/segment_buffers/implementations/utils/manual_time_ranges.js +1 -1
- package/dist/_esm5.processed/core/segment_buffers/index.d.ts +8 -4
- package/dist/_esm5.processed/core/segment_buffers/index.js +2 -2
- package/dist/_esm5.processed/core/segment_buffers/inventory/buffered_history.d.ts +1 -1
- package/dist/_esm5.processed/core/segment_buffers/inventory/index.d.ts +6 -4
- package/dist/_esm5.processed/core/segment_buffers/inventory/segment_inventory.d.ts +4 -4
- package/dist/_esm5.processed/core/segment_buffers/inventory/segment_inventory.js +63 -54
- package/dist/_esm5.processed/core/segment_buffers/inventory/types.d.ts +1 -1
- package/dist/_esm5.processed/core/segment_buffers/segment_buffers_store.d.ts +2 -2
- package/dist/_esm5.processed/core/segment_buffers/segment_buffers_store.js +17 -23
- package/dist/_esm5.processed/core/stream/adaptation/adaptation_stream.d.ts +3 -3
- package/dist/_esm5.processed/core/stream/adaptation/adaptation_stream.js +49 -22
- package/dist/_esm5.processed/core/stream/adaptation/types.d.ts +8 -7
- package/dist/_esm5.processed/core/stream/adaptation/utils/create_representation_estimator.d.ts +7 -6
- package/dist/_esm5.processed/core/stream/adaptation/utils/create_representation_estimator.js +2 -1
- package/dist/_esm5.processed/core/stream/index.d.ts +6 -5
- package/dist/_esm5.processed/core/stream/orchestrator/get_time_ranges_for_content.d.ts +3 -3
- package/dist/_esm5.processed/core/stream/orchestrator/get_time_ranges_for_content.js +2 -2
- package/dist/_esm5.processed/core/stream/orchestrator/index.d.ts +3 -2
- package/dist/_esm5.processed/core/stream/orchestrator/stream_orchestrator.d.ts +9 -7
- package/dist/_esm5.processed/core/stream/orchestrator/stream_orchestrator.js +47 -34
- package/dist/_esm5.processed/core/stream/period/period_stream.d.ts +3 -3
- package/dist/_esm5.processed/core/stream/period/period_stream.js +49 -16
- package/dist/_esm5.processed/core/stream/period/types.d.ts +15 -12
- package/dist/_esm5.processed/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +9 -9
- package/dist/_esm5.processed/core/stream/period/utils/get_adaptation_switch_strategy.js +26 -25
- package/dist/_esm5.processed/core/stream/representation/representation_stream.d.ts +3 -3
- package/dist/_esm5.processed/core/stream/representation/representation_stream.js +47 -23
- package/dist/_esm5.processed/core/stream/representation/types.d.ts +9 -8
- package/dist/_esm5.processed/core/stream/representation/utils/append_segment_to_buffer.d.ts +4 -4
- package/dist/_esm5.processed/core/stream/representation/utils/append_segment_to_buffer.js +10 -7
- package/dist/_esm5.processed/core/stream/representation/utils/check_for_discontinuity.d.ts +4 -3
- package/dist/_esm5.processed/core/stream/representation/utils/check_for_discontinuity.js +16 -18
- package/dist/_esm5.processed/core/stream/representation/utils/downloading_queue.d.ts +7 -6
- package/dist/_esm5.processed/core/stream/representation/utils/downloading_queue.js +11 -11
- package/dist/_esm5.processed/core/stream/representation/utils/force_garbage_collection.d.ts +2 -2
- package/dist/_esm5.processed/core/stream/representation/utils/force_garbage_collection.js +6 -8
- package/dist/_esm5.processed/core/stream/representation/utils/get_buffer_status.d.ts +5 -4
- package/dist/_esm5.processed/core/stream/representation/utils/get_buffer_status.js +40 -19
- package/dist/_esm5.processed/core/stream/representation/utils/get_needed_segments.d.ts +4 -3
- package/dist/_esm5.processed/core/stream/representation/utils/get_needed_segments.js +27 -28
- package/dist/_esm5.processed/core/stream/representation/utils/push_init_segment.d.ts +6 -5
- package/dist/_esm5.processed/core/stream/representation/utils/push_init_segment.js +7 -5
- package/dist/_esm5.processed/core/stream/representation/utils/push_media_segment.d.ts +8 -7
- package/dist/_esm5.processed/core/stream/representation/utils/push_media_segment.js +13 -10
- package/dist/_esm5.processed/default_config.js +20 -16
- package/dist/_esm5.processed/errors/encrypted_media_error.d.ts +2 -2
- package/dist/_esm5.processed/errors/encrypted_media_error.js +1 -1
- package/dist/_esm5.processed/errors/error_codes.d.ts +1 -1
- package/dist/_esm5.processed/errors/error_codes.js +1 -1
- package/dist/_esm5.processed/errors/format_error.d.ts +2 -2
- package/dist/_esm5.processed/errors/format_error.js +1 -2
- package/dist/_esm5.processed/errors/index.d.ts +6 -3
- package/dist/_esm5.processed/errors/index.js +2 -2
- package/dist/_esm5.processed/errors/is_known_error.d.ts +1 -1
- package/dist/_esm5.processed/errors/is_known_error.js +2 -2
- package/dist/_esm5.processed/errors/media_error.d.ts +3 -3
- package/dist/_esm5.processed/errors/media_error.js +4 -7
- package/dist/_esm5.processed/errors/network_error.d.ts +2 -2
- package/dist/_esm5.processed/errors/network_error.js +3 -3
- package/dist/_esm5.processed/errors/other_error.d.ts +1 -1
- package/dist/_esm5.processed/errors/other_error.js +1 -1
- package/dist/_esm5.processed/errors/request_error.d.ts +1 -1
- package/dist/_esm5.processed/experimental/features/dash_wasm.d.ts +2 -2
- package/dist/_esm5.processed/experimental/features/debug_element.d.ts +1 -1
- package/dist/_esm5.processed/experimental/features/local.d.ts +1 -1
- package/dist/_esm5.processed/experimental/features/metaplaylist.d.ts +1 -1
- package/dist/_esm5.processed/experimental/index.d.ts +1 -1
- package/dist/_esm5.processed/experimental/index.js +1 -1
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/index.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/index.js +2 -2
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +3 -3
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/load_and_push_segment.js +7 -3
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +1 -2
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +2 -2
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +2 -2
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/types.d.ts +3 -2
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +2 -2
- package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +12 -18
- package/dist/_esm5.processed/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +13 -23
- package/dist/_esm5.processed/experimental/tools/createMetaplaylist/index.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/createMetaplaylist/index.js +8 -7
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/index.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/index.js +9 -13
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts +4 -3
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.js +5 -3
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/capabilities.js +10 -47
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts +2 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.js +8 -5
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts +2 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +21 -13
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +2 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +22 -18
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +4 -7
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +2 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +3 -5
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.js +4 -10
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts +2 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +2 -3
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +2 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +2 -3
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/types.d.ts +2 -2
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/utils.d.ts +1 -1
- package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/utils.js +6 -6
- package/dist/_esm5.processed/experimental/tools/parseBIFThumbnails.js +5 -4
- package/dist/_esm5.processed/features/add_features.d.ts +1 -1
- package/dist/_esm5.processed/features/features_object.d.ts +1 -1
- package/dist/_esm5.processed/features/features_object.js +4 -3
- package/dist/_esm5.processed/features/index.d.ts +3 -2
- package/dist/_esm5.processed/features/index.js +1 -1
- package/dist/_esm5.processed/features/list/bif_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/dash.d.ts +1 -1
- package/dist/_esm5.processed/features/list/directfile.d.ts +1 -1
- package/dist/_esm5.processed/features/list/eme.d.ts +1 -1
- package/dist/_esm5.processed/features/list/html_sami_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/html_srt_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/html_text_buffer.d.ts +1 -1
- package/dist/_esm5.processed/features/list/html_ttml_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/html_vtt_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/image_buffer.d.ts +1 -1
- package/dist/_esm5.processed/features/list/native_sami_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/native_srt_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/native_text_buffer.d.ts +1 -1
- package/dist/_esm5.processed/features/list/native_ttml_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/native_vtt_parser.d.ts +1 -1
- package/dist/_esm5.processed/features/list/smooth.d.ts +1 -1
- package/dist/_esm5.processed/features/types.d.ts +11 -11
- package/dist/_esm5.processed/manifest/adaptation.d.ts +3 -3
- package/dist/_esm5.processed/manifest/adaptation.js +24 -14
- package/dist/_esm5.processed/manifest/index.d.ts +9 -5
- package/dist/_esm5.processed/manifest/index.js +4 -8
- package/dist/_esm5.processed/manifest/manifest.d.ts +8 -7
- package/dist/_esm5.processed/manifest/manifest.js +37 -33
- package/dist/_esm5.processed/manifest/period.d.ts +4 -4
- package/dist/_esm5.processed/manifest/period.js +7 -14
- package/dist/_esm5.processed/manifest/representation.d.ts +4 -4
- package/dist/_esm5.processed/manifest/representation.js +5 -5
- package/dist/_esm5.processed/manifest/representation_index/index.d.ts +3 -2
- package/dist/_esm5.processed/manifest/representation_index/index.js +1 -1
- package/dist/_esm5.processed/manifest/representation_index/static.d.ts +1 -1
- package/dist/_esm5.processed/manifest/representation_index/static.js +6 -2
- package/dist/_esm5.processed/manifest/representation_index/types.d.ts +6 -5
- package/dist/_esm5.processed/manifest/update_period_in_place.d.ts +3 -3
- package/dist/_esm5.processed/manifest/update_period_in_place.js +9 -9
- package/dist/_esm5.processed/manifest/update_periods.d.ts +2 -2
- package/dist/_esm5.processed/manifest/update_periods.js +6 -3
- package/dist/_esm5.processed/manifest/utils.d.ts +4 -4
- package/dist/_esm5.processed/manifest/utils.js +6 -4
- package/dist/_esm5.processed/parsers/containers/isobmff/create_box.d.ts +1 -1
- package/dist/_esm5.processed/parsers/containers/isobmff/create_box.js +5 -4
- package/dist/_esm5.processed/parsers/containers/isobmff/drm/playready.js +2 -3
- package/dist/_esm5.processed/parsers/containers/isobmff/get_box.js +3 -5
- package/dist/_esm5.processed/parsers/containers/isobmff/index.d.ts +5 -4
- package/dist/_esm5.processed/parsers/containers/isobmff/index.js +4 -4
- package/dist/_esm5.processed/parsers/containers/isobmff/read.d.ts +1 -1
- package/dist/_esm5.processed/parsers/containers/isobmff/read.js +9 -9
- package/dist/_esm5.processed/parsers/containers/isobmff/take_pssh_out.js +3 -4
- package/dist/_esm5.processed/parsers/containers/isobmff/utils.js +51 -41
- package/dist/_esm5.processed/parsers/containers/matroska/index.d.ts +2 -1
- package/dist/_esm5.processed/parsers/containers/matroska/index.js +1 -1
- package/dist/_esm5.processed/parsers/containers/matroska/utils.js +29 -16
- package/dist/_esm5.processed/parsers/images/bif.js +15 -5
- package/dist/_esm5.processed/parsers/manifest/dash/common/attach_trickmode_track.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/convert_supplemental_codecs.js +1 -3
- package/dist/_esm5.processed/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/flatten_overlapping_periods.js +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/get_hdr_information.js +4 -12
- package/dist/_esm5.processed/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/get_http_utc-timing_url.js +4 -5
- package/dist/_esm5.processed/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +5 -2
- package/dist/_esm5.processed/parsers/manifest/dash/common/get_periods_time_infos.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/get_periods_time_infos.js +5 -6
- package/dist/_esm5.processed/parsers/manifest/dash/common/index.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/base.d.ts +4 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/base.js +34 -28
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_init_segment.js +7 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +4 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +15 -11
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/index.d.ts +10 -5
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/list.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/list.js +30 -18
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/template.d.ts +3 -3
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/template.js +56 -55
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +2 -6
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +11 -15
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +12 -9
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +29 -19
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/index.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +6 -6
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +73 -59
- package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/tokens.js +2 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/infer_adaptation_type.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/manifest_bounds_calculator.js +7 -8
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +4 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_adaptation_sets.js +52 -50
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_availability_start_time.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_mpd.d.ts +6 -6
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_mpd.js +52 -31
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_periods.d.ts +4 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_periods.js +41 -30
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representation_index.d.ts +4 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representation_index.js +1 -2
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representations.d.ts +4 -4
- package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representations.js +63 -64
- package/dist/_esm5.processed/parsers/manifest/dash/common/resolve_base_urls.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/common/resolve_base_urls.js +4 -2
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +73 -37
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +1 -2
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +13 -7
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +5 -3
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/MPD.js +44 -27
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Period.js +14 -8
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Representation.js +36 -18
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +36 -18
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +17 -8
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +9 -5
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +8 -26
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/utils.js +6 -12
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/parse_from_document.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/js-parser/parse_from_document.js +9 -4
- package/dist/_esm5.processed/parsers/manifest/dash/parsers_types.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/index.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +29 -16
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +22 -35
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +3 -1
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +2 -4
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Label.d.ts +3 -0
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Label.js +9 -0
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +5 -5
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +9 -6
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +8 -16
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +5 -10
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +11 -18
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +2 -4
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +5 -5
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/root.js +5 -6
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/parsers_stack.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +1 -2
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/types.d.ts +2 -1
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/utils.js +2 -4
- package/dist/_esm5.processed/parsers/manifest/local/index.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/local/parse_local_manifest.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/local/parse_local_manifest.js +25 -16
- package/dist/_esm5.processed/parsers/manifest/local/representation_index.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/local/representation_index.js +5 -10
- package/dist/_esm5.processed/parsers/manifest/metaplaylist/index.d.ts +3 -2
- package/dist/_esm5.processed/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/metaplaylist/metaplaylist_parser.js +33 -29
- package/dist/_esm5.processed/parsers/manifest/metaplaylist/representation_index.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/metaplaylist/representation_index.js +9 -7
- package/dist/_esm5.processed/parsers/manifest/smooth/create_parser.d.ts +3 -3
- package/dist/_esm5.processed/parsers/manifest/smooth/create_parser.js +136 -109
- package/dist/_esm5.processed/parsers/manifest/smooth/get_codecs.js +3 -3
- package/dist/_esm5.processed/parsers/manifest/smooth/index.d.ts +4 -2
- package/dist/_esm5.processed/parsers/manifest/smooth/index.js +1 -1
- package/dist/_esm5.processed/parsers/manifest/smooth/parse_C_nodes.js +6 -6
- package/dist/_esm5.processed/parsers/manifest/smooth/parse_protection_node.js +12 -8
- package/dist/_esm5.processed/parsers/manifest/smooth/representation_index.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/smooth/representation_index.js +48 -53
- package/dist/_esm5.processed/parsers/manifest/smooth/utils/add_segment_infos.js +10 -7
- package/dist/_esm5.processed/parsers/manifest/smooth/utils/tokens.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/smooth/utils/tokens.js +2 -3
- package/dist/_esm5.processed/parsers/manifest/types.d.ts +2 -2
- package/dist/_esm5.processed/parsers/manifest/utils/check_manifest_ids.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/clear_timeline_from_position.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/clear_timeline_from_position.js +9 -6
- package/dist/_esm5.processed/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/get_first_time_from_adaptation.js +5 -4
- package/dist/_esm5.processed/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/get_last_time_from_adaptation.js +5 -4
- package/dist/_esm5.processed/parsers/manifest/utils/get_maximum_positions.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/get_maximum_positions.js +10 -16
- package/dist/_esm5.processed/parsers/manifest/utils/get_minimum_position.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/get_minimum_position.js +4 -10
- package/dist/_esm5.processed/parsers/manifest/utils/index_helpers.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/index_helpers.js +4 -5
- package/dist/_esm5.processed/parsers/manifest/utils/update_segment_timeline.d.ts +1 -1
- package/dist/_esm5.processed/parsers/manifest/utils/update_segment_timeline.js +18 -18
- package/dist/_esm5.processed/parsers/texttracks/index.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/sami/html.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/sami/html.js +15 -15
- package/dist/_esm5.processed/parsers/texttracks/sami/native.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/sami/native.js +7 -14
- package/dist/_esm5.processed/parsers/texttracks/srt/html.js +6 -6
- package/dist/_esm5.processed/parsers/texttracks/srt/native.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/srt/native.js +1 -7
- package/dist/_esm5.processed/parsers/texttracks/srt/parse_cue.js +4 -8
- package/dist/_esm5.processed/parsers/texttracks/ttml/get_parameters.js +4 -8
- package/dist/_esm5.processed/parsers/texttracks/ttml/get_time_delimiters.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/ttml/get_time_delimiters.js +6 -8
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +2 -2
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_extent.js +2 -6
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_font_size.js +3 -4
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_origin.js +2 -6
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_padding.js +2 -6
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/create_element.d.ts +2 -2
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/create_element.js +22 -21
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/generate_css_test_outline.js +2 -2
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/parse_cue.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/parse_cue.js +5 -3
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +34 -19
- package/dist/_esm5.processed/parsers/texttracks/ttml/native/parse_cue.d.ts +2 -2
- package/dist/_esm5.processed/parsers/texttracks/ttml/native/parse_cue.js +9 -10
- package/dist/_esm5.processed/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/ttml/parse_ttml.d.ts +3 -3
- package/dist/_esm5.processed/parsers/texttracks/ttml/parse_ttml.js +28 -16
- package/dist/_esm5.processed/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/ttml/time_parsing.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/ttml/time_parsing.js +2 -2
- package/dist/_esm5.processed/parsers/texttracks/types.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/get_cue_blocks.js +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/get_style_blocks.js +2 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_style_attribute.js +6 -12
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_styled_element.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_styled_element.js +7 -8
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/index.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/parse_style_block.js +4 -4
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/to_html.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/html/to_html.js +4 -10
- package/dist/_esm5.processed/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +2 -6
- package/dist/_esm5.processed/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/native/to_native_cue.d.ts +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/native/to_native_cue.js +1 -1
- package/dist/_esm5.processed/parsers/texttracks/webvtt/parse_cue_block.js +2 -4
- package/dist/_esm5.processed/parsers/texttracks/webvtt/parse_timestamp.js +1 -2
- package/dist/_esm5.processed/parsers/texttracks/webvtt/utils.js +6 -6
- package/dist/_esm5.processed/public_types.d.ts +13 -11
- package/dist/_esm5.processed/tools/TextTrackRenderer/index.d.ts +3 -2
- package/dist/_esm5.processed/tools/TextTrackRenderer/text_track_renderer.d.ts +2 -2
- package/dist/_esm5.processed/tools/TextTrackRenderer/text_track_renderer.js +15 -10
- package/dist/_esm5.processed/transports/dash/add_segment_integrity_checks_to_loader.d.ts +1 -1
- package/dist/_esm5.processed/transports/dash/add_segment_integrity_checks_to_loader.js +2 -3
- package/dist/_esm5.processed/transports/dash/construct_segment_url.d.ts +2 -2
- package/dist/_esm5.processed/transports/dash/construct_segment_url.js +5 -3
- package/dist/_esm5.processed/transports/dash/extract_complete_chunks.js +2 -2
- package/dist/_esm5.processed/transports/dash/get_events_out_of_emsgs.d.ts +2 -2
- package/dist/_esm5.processed/transports/dash/get_events_out_of_emsgs.js +9 -10
- package/dist/_esm5.processed/transports/dash/image_pipelines.d.ts +3 -3
- package/dist/_esm5.processed/transports/dash/image_pipelines.js +32 -19
- package/dist/_esm5.processed/transports/dash/init_segment_loader.d.ts +3 -3
- package/dist/_esm5.processed/transports/dash/init_segment_loader.js +46 -22
- package/dist/_esm5.processed/transports/dash/low_latency_segment_loader.d.ts +2 -2
- package/dist/_esm5.processed/transports/dash/low_latency_segment_loader.js +13 -9
- package/dist/_esm5.processed/transports/dash/manifest_parser.d.ts +2 -2
- package/dist/_esm5.processed/transports/dash/manifest_parser.js +35 -22
- package/dist/_esm5.processed/transports/dash/pipelines.d.ts +1 -1
- package/dist/_esm5.processed/transports/dash/pipelines.js +11 -15
- package/dist/_esm5.processed/transports/dash/segment_loader.d.ts +4 -4
- package/dist/_esm5.processed/transports/dash/segment_loader.js +30 -21
- package/dist/_esm5.processed/transports/dash/segment_parser.d.ts +2 -2
- package/dist/_esm5.processed/transports/dash/segment_parser.js +47 -21
- package/dist/_esm5.processed/transports/dash/text_loader.d.ts +2 -2
- package/dist/_esm5.processed/transports/dash/text_loader.js +19 -19
- package/dist/_esm5.processed/transports/dash/text_parser.d.ts +2 -2
- package/dist/_esm5.processed/transports/dash/text_parser.js +45 -24
- package/dist/_esm5.processed/transports/local/pipelines.d.ts +1 -1
- package/dist/_esm5.processed/transports/local/pipelines.js +7 -8
- package/dist/_esm5.processed/transports/local/segment_loader.d.ts +3 -3
- package/dist/_esm5.processed/transports/local/segment_loader.js +14 -6
- package/dist/_esm5.processed/transports/local/segment_parser.d.ts +1 -1
- package/dist/_esm5.processed/transports/local/segment_parser.js +31 -13
- package/dist/_esm5.processed/transports/local/text_parser.d.ts +1 -1
- package/dist/_esm5.processed/transports/local/text_parser.js +44 -19
- package/dist/_esm5.processed/transports/metaplaylist/manifest_loader.d.ts +4 -4
- package/dist/_esm5.processed/transports/metaplaylist/manifest_loader.js +9 -5
- package/dist/_esm5.processed/transports/metaplaylist/pipelines.d.ts +1 -1
- package/dist/_esm5.processed/transports/metaplaylist/pipelines.js +25 -18
- package/dist/_esm5.processed/transports/smooth/extract_timings_infos.d.ts +2 -2
- package/dist/_esm5.processed/transports/smooth/extract_timings_infos.js +16 -15
- package/dist/_esm5.processed/transports/smooth/isobmff/create_audio_init_segment.js +3 -3
- package/dist/_esm5.processed/transports/smooth/isobmff/create_boxes.js +14 -32
- package/dist/_esm5.processed/transports/smooth/isobmff/create_init_segment.js +2 -2
- package/dist/_esm5.processed/transports/smooth/isobmff/create_traf_box.js +2 -2
- package/dist/_esm5.processed/transports/smooth/isobmff/get_aaces_header.js +4 -16
- package/dist/_esm5.processed/transports/smooth/isobmff/index.d.ts +4 -2
- package/dist/_esm5.processed/transports/smooth/isobmff/parse_tfrf.js +2 -2
- package/dist/_esm5.processed/transports/smooth/isobmff/parse_tfxd.js +1 -1
- package/dist/_esm5.processed/transports/smooth/isobmff/patch_segment.js +11 -10
- package/dist/_esm5.processed/transports/smooth/pipelines.d.ts +1 -1
- package/dist/_esm5.processed/transports/smooth/pipelines.js +121 -79
- package/dist/_esm5.processed/transports/smooth/segment_loader.d.ts +3 -3
- package/dist/_esm5.processed/transports/smooth/segment_loader.js +53 -27
- package/dist/_esm5.processed/transports/smooth/utils.d.ts +2 -2
- package/dist/_esm5.processed/transports/smooth/utils.js +7 -5
- package/dist/_esm5.processed/transports/types.d.ts +11 -25
- package/dist/_esm5.processed/transports/utils/byte_range.js +1 -2
- package/dist/_esm5.processed/transports/utils/call_custom_manifest_loader.d.ts +3 -3
- package/dist/_esm5.processed/transports/utils/call_custom_manifest_loader.js +13 -7
- package/dist/_esm5.processed/transports/utils/check_isobmff_integrity.js +3 -3
- package/dist/_esm5.processed/transports/utils/find_complete_box.js +3 -2
- package/dist/_esm5.processed/transports/utils/generate_manifest_loader.d.ts +3 -3
- package/dist/_esm5.processed/transports/utils/generate_manifest_loader.js +18 -6
- package/dist/_esm5.processed/transports/utils/get_isobmff_timing_infos.d.ts +2 -2
- package/dist/_esm5.processed/transports/utils/get_isobmff_timing_infos.js +12 -11
- package/dist/_esm5.processed/transports/utils/infer_segment_container.d.ts +1 -1
- package/dist/_esm5.processed/transports/utils/infer_segment_container.js +1 -3
- package/dist/_esm5.processed/transports/utils/parse_text_track.d.ts +4 -4
- package/dist/_esm5.processed/transports/utils/parse_text_track.js +9 -6
- package/dist/_esm5.processed/utils/are_codecs_compatible.js +5 -1
- package/dist/_esm5.processed/utils/array_includes.js +2 -6
- package/dist/_esm5.processed/utils/assert.js +3 -4
- package/dist/_esm5.processed/utils/base64.js +87 -29
- package/dist/_esm5.processed/utils/byte_parsing.js +60 -56
- package/dist/_esm5.processed/utils/cancellable_sleep.d.ts +1 -1
- package/dist/_esm5.processed/utils/create_cancellable_promise.d.ts +1 -1
- package/dist/_esm5.processed/utils/deep_merge.js +4 -4
- package/dist/_esm5.processed/utils/event_emitter.d.ts +1 -1
- package/dist/_esm5.processed/utils/get_fuzzed_delay.js +1 -1
- package/dist/_esm5.processed/utils/hash_buffer.js +1 -1
- package/dist/_esm5.processed/utils/initialization_segment_cache.d.ts +2 -2
- package/dist/_esm5.processed/utils/languages/index.d.ts +4 -2
- package/dist/_esm5.processed/utils/languages/index.js +2 -2
- package/dist/_esm5.processed/utils/languages/normalize.d.ts +2 -1
- package/dist/_esm5.processed/utils/languages/normalize.js +5 -3
- package/dist/_esm5.processed/utils/logger.js +7 -14
- package/dist/_esm5.processed/utils/object_assign.js +5 -5
- package/dist/_esm5.processed/utils/object_values.d.ts +1 -1
- package/dist/_esm5.processed/utils/object_values.js +2 -3
- package/dist/_esm5.processed/utils/ranges.d.ts +2 -1
- package/dist/_esm5.processed/utils/ranges.js +19 -23
- package/dist/_esm5.processed/utils/reference.d.ts +3 -3
- package/dist/_esm5.processed/utils/reference.js +1 -3
- package/dist/_esm5.processed/utils/request/fetch.d.ts +1 -1
- package/dist/_esm5.processed/utils/request/fetch.js +34 -23
- package/dist/_esm5.processed/utils/request/index.d.ts +6 -3
- package/dist/_esm5.processed/utils/request/index.js +2 -2
- package/dist/_esm5.processed/utils/request/xhr.d.ts +1 -1
- package/dist/_esm5.processed/utils/request/xhr.js +28 -17
- package/dist/_esm5.processed/utils/retry_promise_with_backoff.d.ts +2 -2
- package/dist/_esm5.processed/utils/slice_uint8array.js +3 -3
- package/dist/_esm5.processed/utils/starts_with.js +3 -3
- package/dist/_esm5.processed/utils/string_parsing.js +16 -18
- package/dist/_esm5.processed/utils/task_canceller.js +1 -2
- package/dist/_esm5.processed/utils/uniq.d.ts +1 -1
- package/dist/_esm5.processed/utils/uniq.js +4 -3
- package/dist/_esm5.processed/utils/weak_map_memory.js +0 -1
- package/dist/_esm5.processed/utils/wrapInPromise.d.ts +1 -1
- package/dist/mpd-parser.wasm +0 -0
- package/dist/rx-player.js +345 -236
- package/dist/rx-player.min.js +1 -1
- package/experimental/features/index.d.ts-E +16 -0
- package/experimental/features/index.js-E +16 -0
- package/experimental/index.d.ts +1 -1
- package/experimental/index.d.ts-E +16 -0
- package/experimental/index.js +1 -1
- package/experimental/index.js-E +16 -0
- package/experimental/tools/VideoThumbnailLoader/index.d.ts-E +18 -0
- package/experimental/tools/VideoThumbnailLoader/index.js-E +18 -0
- package/experimental/tools/index.d.ts-E +16 -0
- package/experimental/tools/index.js-E +16 -0
- package/features/index.d.ts-E +16 -0
- package/features/index.js-E +16 -0
- package/logger/index.d.ts-E +17 -0
- package/logger/index.js-E +17 -0
- package/minimal/index.d.ts-E +17 -0
- package/minimal/index.js-E +17 -0
- package/package.json +29 -14
- package/tools/TextTrackRenderer.d.ts-E +18 -0
- package/tools/TextTrackRenderer.js-E +18 -0
- package/tools/index.d.ts-E +16 -0
- package/tools/index.js-E +16 -0
- package/tools/string-utils.d.ts-E +18 -0
- package/tools/string-utils.js-E +18 -0
- package/types/index.d.ts-E +16 -0
- package/types/index.js-E +15 -0
|
@@ -89,8 +89,7 @@ export default function createSession(stores, initData, wantedSessionType, cance
|
|
|
89
89
|
function createTemporarySession(loadedSessionsStore, initData) {
|
|
90
90
|
log.info("DRM: Creating a new temporary session");
|
|
91
91
|
var entry = loadedSessionsStore.createSession(initData, "temporary");
|
|
92
|
-
return Promise.resolve({ type: "created-session" /* MediaKeySessionLoadingType.Created */,
|
|
93
|
-
value: entry });
|
|
92
|
+
return Promise.resolve({ type: "created-session" /* MediaKeySessionLoadingType.Created */, value: entry });
|
|
94
93
|
}
|
|
95
94
|
/**
|
|
96
95
|
* Create a persistent MediaKeySession and try to load on it a previous
|
|
@@ -150,8 +149,7 @@ function createAndTryToRetrievePersistentSession(loadedSessionsStore, persistent
|
|
|
150
149
|
throw cancelSignal.cancellationError;
|
|
151
150
|
}
|
|
152
151
|
newEntry = loadedSessionsStore.createSession(initData, "persistent-license");
|
|
153
|
-
return [2 /*return*/, { type: "created-session" /* MediaKeySessionLoadingType.Created */,
|
|
154
|
-
value: newEntry }];
|
|
152
|
+
return [2 /*return*/, { type: "created-session" /* MediaKeySessionLoadingType.Created */, value: newEntry }];
|
|
155
153
|
}
|
|
156
154
|
});
|
|
157
155
|
});
|
|
@@ -167,8 +165,7 @@ function createAndTryToRetrievePersistentSession(loadedSessionsStore, persistent
|
|
|
167
165
|
entry = loadedSessionsStore.createSession(initData, "persistent-license");
|
|
168
166
|
storedEntry = persistentSessionsStore.getAndReuse(initData);
|
|
169
167
|
if (storedEntry === null) {
|
|
170
|
-
return [2 /*return*/, { type: "created-session" /* MediaKeySessionLoadingType.Created */,
|
|
171
|
-
value: entry }];
|
|
168
|
+
return [2 /*return*/, { type: "created-session" /* MediaKeySessionLoadingType.Created */, value: entry }];
|
|
172
169
|
}
|
|
173
170
|
_a.label = 1;
|
|
174
171
|
case 1:
|
|
@@ -187,14 +184,12 @@ function createAndTryToRetrievePersistentSession(loadedSessionsStore, persistent
|
|
|
187
184
|
// in that specific case.
|
|
188
185
|
loadedSessionsStore.removeSessionWithoutClosingIt(entry.mediaKeySession);
|
|
189
186
|
newEntry = loadedSessionsStore.createSession(initData, "persistent-license");
|
|
190
|
-
return [2 /*return*/, { type: "created-session" /* MediaKeySessionLoadingType.Created */,
|
|
191
|
-
value: newEntry }];
|
|
187
|
+
return [2 /*return*/, { type: "created-session" /* MediaKeySessionLoadingType.Created */, value: newEntry }];
|
|
192
188
|
}
|
|
193
189
|
if (hasLoadedSession && isSessionUsable(entry.mediaKeySession)) {
|
|
194
190
|
persistentSessionsStore.add(initData, initData.keyIds, entry.mediaKeySession);
|
|
195
191
|
log.info("DRM: Succeeded to load persistent session.");
|
|
196
|
-
return [2 /*return*/, { type: "loaded-persistent-session" /* MediaKeySessionLoadingType.LoadedPersistentSession */,
|
|
197
|
-
value: entry }];
|
|
192
|
+
return [2 /*return*/, { type: "loaded-persistent-session" /* MediaKeySessionLoadingType.LoadedPersistentSession */, value: entry }];
|
|
198
193
|
}
|
|
199
194
|
// Unusable persistent session: recreate a new session from scratch.
|
|
200
195
|
log.warn("DRM: Previous persistent session not usable anymore.");
|
|
@@ -202,8 +197,7 @@ function createAndTryToRetrievePersistentSession(loadedSessionsStore, persistent
|
|
|
202
197
|
case 3:
|
|
203
198
|
err_1 = _a.sent();
|
|
204
199
|
log.warn("DRM: Unable to load persistent session: " +
|
|
205
|
-
(err_1 instanceof Error ? err_1.toString() :
|
|
206
|
-
"Unknown Error"));
|
|
200
|
+
(err_1 instanceof Error ? err_1.toString() : "Unknown Error"));
|
|
207
201
|
return [2 /*return*/, recreatePersistentSession()];
|
|
208
202
|
case 4: return [2 /*return*/];
|
|
209
203
|
}
|
|
@@ -74,8 +74,7 @@ export default function disposeDecryptionResources(mediaElement) {
|
|
|
74
74
|
case 1:
|
|
75
75
|
_a.sent();
|
|
76
76
|
return [2 /*return*/, Promise.race([
|
|
77
|
-
currentState.emeImplementation.setMediaKeys(mediaElement, null)
|
|
78
|
-
.catch(function (err) {
|
|
77
|
+
currentState.emeImplementation.setMediaKeys(mediaElement, null).catch(function (err) {
|
|
79
78
|
log.error("DRM: Could not reset MediaKeys", err instanceof Error ? err : "Unknown Error");
|
|
80
79
|
}),
|
|
81
80
|
// Because we know how much EME has implementation issues, let's not block
|
|
@@ -13,11 +13,21 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { ICustomMediaKeySystemAccess } from "../../compat/eme";
|
|
17
|
-
import { IKeySystemOption } from "../../public_types";
|
|
18
|
-
import { CancellationSignal } from "../../utils/task_canceller";
|
|
16
|
+
import type { ICustomMediaKeySystemAccess } from "../../compat/eme";
|
|
17
|
+
import type { IKeySystemOption } from "../../public_types";
|
|
18
|
+
import type { CancellationSignal } from "../../utils/task_canceller";
|
|
19
19
|
export interface IMediaKeySystemAccessInfos {
|
|
20
|
+
/** `MediaKeySystemAccess` to use to create `MediaKeys` instances. */
|
|
20
21
|
mediaKeySystemAccess: MediaKeySystemAccess | ICustomMediaKeySystemAccess;
|
|
22
|
+
/**
|
|
23
|
+
* The MediaKeySystemConfiguration that has been provided to the
|
|
24
|
+
* `requestMediaKeySystemAccess` API.
|
|
25
|
+
*/
|
|
26
|
+
askedConfiguration: MediaKeySystemConfiguration;
|
|
27
|
+
/**
|
|
28
|
+
* Corresponding `keySystems` element that has led to the creation of the
|
|
29
|
+
* `MediaKeySystemAccess`.
|
|
30
|
+
*/
|
|
21
31
|
options: IKeySystemOption;
|
|
22
32
|
}
|
|
23
33
|
export interface IReuseMediaKeySystemAccessEvent {
|
|
@@ -60,8 +60,8 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
60
60
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
61
61
|
}
|
|
62
62
|
};
|
|
63
|
-
import { shouldRenewMediaKeySystemAccess
|
|
64
|
-
import { canRelyOnRequestMediaKeySystemAccess
|
|
63
|
+
import { shouldRenewMediaKeySystemAccess } from "../../compat";
|
|
64
|
+
import { canRelyOnRequestMediaKeySystemAccess } from "../../compat/can_rely_on_request_media_key_system_access";
|
|
65
65
|
import eme from "../../compat/eme";
|
|
66
66
|
import { generatePlayReadyInitData, DUMMY_PLAY_READY_HEADER, } from "../../compat/generate_init_data";
|
|
67
67
|
import config from "../../config";
|
|
@@ -73,11 +73,12 @@ import isNullOrUndefined from "../../utils/is_null_or_undefined";
|
|
|
73
73
|
import MediaKeysInfosStore from "./utils/media_keys_infos_store";
|
|
74
74
|
/**
|
|
75
75
|
* @param {Array.<Object>} keySystems
|
|
76
|
+
* @param {Object} askedConfiguration
|
|
76
77
|
* @param {MediaKeySystemAccess} currentKeySystemAccess
|
|
77
78
|
* @param {Object} currentKeySystemOptions
|
|
78
79
|
* @returns {null|Object}
|
|
79
80
|
*/
|
|
80
|
-
function checkCachedMediaKeySystemAccess(keySystems, currentKeySystemAccess, currentKeySystemOptions) {
|
|
81
|
+
function checkCachedMediaKeySystemAccess(keySystems, askedConfiguration, currentKeySystemAccess, currentKeySystemOptions) {
|
|
81
82
|
var mksConfiguration = currentKeySystemAccess.getConfiguration();
|
|
82
83
|
if (shouldRenewMediaKeySystemAccess() || mksConfiguration == null) {
|
|
83
84
|
return null;
|
|
@@ -98,8 +99,11 @@ function checkCachedMediaKeySystemAccess(keySystems, currentKeySystemAccess, cur
|
|
|
98
99
|
return true;
|
|
99
100
|
})[0];
|
|
100
101
|
if (firstCompatibleOption != null) {
|
|
101
|
-
return {
|
|
102
|
-
|
|
102
|
+
return {
|
|
103
|
+
keySystemOptions: firstCompatibleOption,
|
|
104
|
+
keySystemAccess: currentKeySystemAccess,
|
|
105
|
+
askedConfiguration: askedConfiguration,
|
|
106
|
+
};
|
|
103
107
|
}
|
|
104
108
|
return null;
|
|
105
109
|
}
|
|
@@ -195,14 +199,12 @@ function buildKeySystemConfigurations(ksName, ksType, keySystem) {
|
|
|
195
199
|
// https://www.w3.org/TR/encrypted-media/#get-supported-configuration-and-consent
|
|
196
200
|
var videoCapabilities = flatMap(videoRobustnesses, function (robustness) {
|
|
197
201
|
return EME_DEFAULT_VIDEO_CODECS.map(function (contentType) {
|
|
198
|
-
return robustness === undefined ? { contentType: contentType } :
|
|
199
|
-
{ contentType: contentType, robustness: robustness };
|
|
202
|
+
return robustness === undefined ? { contentType: contentType } : { contentType: contentType, robustness: robustness };
|
|
200
203
|
});
|
|
201
204
|
});
|
|
202
205
|
var audioCapabilities = flatMap(audioRobustnesses, function (robustness) {
|
|
203
206
|
return EME_DEFAULT_AUDIO_CODECS.map(function (contentType) {
|
|
204
|
-
return robustness === undefined ? { contentType: contentType } :
|
|
205
|
-
{ contentType: contentType, robustness: robustness };
|
|
207
|
+
return robustness === undefined ? { contentType: contentType } : { contentType: contentType, robustness: robustness };
|
|
206
208
|
});
|
|
207
209
|
});
|
|
208
210
|
var wantedMediaKeySystemConfiguration = {
|
|
@@ -213,6 +215,11 @@ function buildKeySystemConfigurations(ksName, ksType, keySystem) {
|
|
|
213
215
|
persistentState: persistentState,
|
|
214
216
|
sessionTypes: sessionTypes,
|
|
215
217
|
};
|
|
218
|
+
if (!isNullOrUndefined(keySystem.audioRobustnesses) ||
|
|
219
|
+
!isNullOrUndefined(keySystem.videoRobustnesses)) {
|
|
220
|
+
// If the user specifically asked for robustnesses, we don't want to try without them
|
|
221
|
+
return [wantedMediaKeySystemConfiguration];
|
|
222
|
+
}
|
|
216
223
|
return [
|
|
217
224
|
wantedMediaKeySystemConfiguration,
|
|
218
225
|
// Some legacy implementations have issues with `audioCapabilities` and
|
|
@@ -244,13 +251,16 @@ export default function getMediaKeySystemAccess(mediaElement, keySystemsConfigs,
|
|
|
244
251
|
if (eme.implementation === currentState.emeImplementation.implementation) {
|
|
245
252
|
// Fast way to find a compatible keySystem if the currently loaded
|
|
246
253
|
// one as exactly the same compatibility options.
|
|
247
|
-
var cachedKeySystemAccess = checkCachedMediaKeySystemAccess(keySystemsConfigs, currentState.mediaKeySystemAccess, currentState.keySystemOptions);
|
|
254
|
+
var cachedKeySystemAccess = checkCachedMediaKeySystemAccess(keySystemsConfigs, currentState.askedConfiguration, currentState.mediaKeySystemAccess, currentState.keySystemOptions);
|
|
248
255
|
if (cachedKeySystemAccess !== null) {
|
|
249
256
|
log.info("DRM: Found cached compatible keySystem");
|
|
250
257
|
return Promise.resolve({
|
|
251
258
|
type: "reuse-media-key-system-access",
|
|
252
|
-
value: {
|
|
253
|
-
|
|
259
|
+
value: {
|
|
260
|
+
mediaKeySystemAccess: cachedKeySystemAccess.keySystemAccess,
|
|
261
|
+
askedConfiguration: cachedKeySystemAccess.askedConfiguration,
|
|
262
|
+
options: cachedKeySystemAccess.keySystemOptions,
|
|
263
|
+
},
|
|
254
264
|
});
|
|
255
265
|
}
|
|
256
266
|
}
|
|
@@ -293,7 +303,7 @@ export default function getMediaKeySystemAccess(mediaElement, keySystemsConfigs,
|
|
|
293
303
|
*/
|
|
294
304
|
function recursivelyTestKeySystems(index) {
|
|
295
305
|
return __awaiter(this, void 0, void 0, function () {
|
|
296
|
-
var _a, keyName, keyType, keySystemOptions, keySystemConfigurations, keySystemAccess, _1;
|
|
306
|
+
var _a, keyName, keyType, keySystemOptions, keySystemConfigurations, keySystemAccess, configIdx, keySystemConfiguration, _1;
|
|
297
307
|
return __generator(this, function (_b) {
|
|
298
308
|
switch (_b.label) {
|
|
299
309
|
case 0:
|
|
@@ -310,24 +320,37 @@ export default function getMediaKeySystemAccess(mediaElement, keySystemsConfigs,
|
|
|
310
320
|
keySystemConfigurations = buildKeySystemConfigurations(keyName, keyType, keySystemOptions);
|
|
311
321
|
log.debug("DRM: Request keysystem access ".concat(keyType, ",") +
|
|
312
322
|
"".concat(index + 1, " of ").concat(keySystemsType.length));
|
|
323
|
+
configIdx = 0;
|
|
313
324
|
_b.label = 1;
|
|
314
325
|
case 1:
|
|
315
|
-
|
|
316
|
-
|
|
326
|
+
if (!(configIdx < keySystemConfigurations.length)) return [3 /*break*/, 6];
|
|
327
|
+
keySystemConfiguration = keySystemConfigurations[configIdx];
|
|
328
|
+
_b.label = 2;
|
|
317
329
|
case 2:
|
|
330
|
+
_b.trys.push([2, 4, , 5]);
|
|
331
|
+
return [4 /*yield*/, testKeySystem(keyType, [keySystemConfiguration])];
|
|
332
|
+
case 3:
|
|
318
333
|
keySystemAccess = _b.sent();
|
|
319
334
|
log.info("DRM: Found compatible keysystem", keyType, index + 1);
|
|
320
|
-
return [2 /*return*/, {
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
335
|
+
return [2 /*return*/, {
|
|
336
|
+
type: "create-media-key-system-access",
|
|
337
|
+
value: {
|
|
338
|
+
options: keySystemOptions,
|
|
339
|
+
askedConfiguration: keySystemConfiguration,
|
|
340
|
+
mediaKeySystemAccess: keySystemAccess,
|
|
341
|
+
},
|
|
342
|
+
}];
|
|
343
|
+
case 4:
|
|
324
344
|
_1 = _b.sent();
|
|
325
|
-
log.debug("DRM: Rejected access to keysystem", keyType, index + 1);
|
|
345
|
+
log.debug("DRM: Rejected access to keysystem", keyType, index + 1, configIdx);
|
|
326
346
|
if (cancelSignal.cancellationError !== null) {
|
|
327
347
|
throw cancelSignal.cancellationError;
|
|
328
348
|
}
|
|
329
|
-
return [
|
|
330
|
-
case
|
|
349
|
+
return [3 /*break*/, 5];
|
|
350
|
+
case 5:
|
|
351
|
+
configIdx++;
|
|
352
|
+
return [3 /*break*/, 1];
|
|
353
|
+
case 6: return [2 /*return*/, recursivelyTestKeySystems(index + 1)];
|
|
331
354
|
}
|
|
332
355
|
});
|
|
333
356
|
});
|
|
@@ -39,6 +39,5 @@ export default function getKeySystemConfiguration(mediaElement) {
|
|
|
39
39
|
*/
|
|
40
40
|
export function getCurrentKeySystem(mediaElement) {
|
|
41
41
|
var currentState = MediaKeysInfosStore.getState(mediaElement);
|
|
42
|
-
return currentState == null ? null :
|
|
43
|
-
currentState.keySystemOptions.type;
|
|
42
|
+
return currentState == null ? null : currentState.keySystemOptions.type;
|
|
44
43
|
}
|
|
@@ -13,14 +13,19 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { ICustomMediaKeys, ICustomMediaKeySystemAccess } from "../../compat/eme";
|
|
17
|
-
import { IKeySystemOption } from "../../public_types";
|
|
18
|
-
import { CancellationSignal } from "../../utils/task_canceller";
|
|
19
|
-
import { IMediaKeySessionStores } from "./types";
|
|
16
|
+
import type { ICustomMediaKeys, ICustomMediaKeySystemAccess } from "../../compat/eme";
|
|
17
|
+
import type { IKeySystemOption } from "../../public_types";
|
|
18
|
+
import type { CancellationSignal } from "../../utils/task_canceller";
|
|
19
|
+
import type { IMediaKeySessionStores } from "./types";
|
|
20
20
|
/** Object returned by `getMediaKeysInfos`. */
|
|
21
21
|
export interface IMediaKeysInfos {
|
|
22
22
|
/** The MediaKeySystemAccess which allowed to create the MediaKeys instance. */
|
|
23
23
|
mediaKeySystemAccess: MediaKeySystemAccess | ICustomMediaKeySystemAccess;
|
|
24
|
+
/**
|
|
25
|
+
* The MediaKeySystemConfiguration that has been provided to the
|
|
26
|
+
* `requestMediaKeySystemAccess` API.
|
|
27
|
+
*/
|
|
28
|
+
askedConfiguration: MediaKeySystemConfiguration;
|
|
24
29
|
/** The MediaKeys instance. */
|
|
25
30
|
mediaKeys: MediaKeys | ICustomMediaKeys;
|
|
26
31
|
/** Stores allowing to create and retrieve MediaKeySessions. */
|
|
@@ -89,7 +89,7 @@ function createPersistentSessionsStorage(keySystemOptions) {
|
|
|
89
89
|
*/
|
|
90
90
|
export default function getMediaKeysInfos(mediaElement, keySystemsConfigs, cancelSignal) {
|
|
91
91
|
return __awaiter(this, void 0, void 0, function () {
|
|
92
|
-
var evt, _a, options, mediaKeySystemAccess, currentState, persistentSessionsStore, mediaKeys_1, loadedSessionsStore_1, mediaKeys, loadedSessionsStore;
|
|
92
|
+
var evt, _a, options, mediaKeySystemAccess, askedConfiguration, currentState, persistentSessionsStore, mediaKeys_1, loadedSessionsStore_1, mediaKeys, loadedSessionsStore;
|
|
93
93
|
return __generator(this, function (_b) {
|
|
94
94
|
switch (_b.label) {
|
|
95
95
|
case 0: return [4 /*yield*/, getMediaKeySystemAccess(mediaElement, keySystemsConfigs, cancelSignal)];
|
|
@@ -98,7 +98,7 @@ export default function getMediaKeysInfos(mediaElement, keySystemsConfigs, cance
|
|
|
98
98
|
if (cancelSignal.cancellationError !== null) {
|
|
99
99
|
throw cancelSignal.cancellationError;
|
|
100
100
|
}
|
|
101
|
-
_a = evt.value, options = _a.options, mediaKeySystemAccess = _a.mediaKeySystemAccess;
|
|
101
|
+
_a = evt.value, options = _a.options, mediaKeySystemAccess = _a.mediaKeySystemAccess, askedConfiguration = _a.askedConfiguration;
|
|
102
102
|
currentState = MediaKeysInfosStore.getState(mediaElement);
|
|
103
103
|
persistentSessionsStore = createPersistentSessionsStorage(options);
|
|
104
104
|
if (canReuseMediaKeys() &&
|
|
@@ -111,7 +111,13 @@ export default function getMediaKeysInfos(mediaElement, keySystemsConfigs, cance
|
|
|
111
111
|
if (ServerCertificateStore.hasOne(mediaKeys_1) === false ||
|
|
112
112
|
(!isNullOrUndefined(options.serverCertificate) &&
|
|
113
113
|
ServerCertificateStore.has(mediaKeys_1, options.serverCertificate))) {
|
|
114
|
-
return [2 /*return*/, {
|
|
114
|
+
return [2 /*return*/, {
|
|
115
|
+
mediaKeys: mediaKeys_1,
|
|
116
|
+
mediaKeySystemAccess: mediaKeySystemAccess,
|
|
117
|
+
askedConfiguration: askedConfiguration,
|
|
118
|
+
stores: { loadedSessionsStore: loadedSessionsStore_1, persistentSessionsStore: persistentSessionsStore },
|
|
119
|
+
options: options,
|
|
120
|
+
}];
|
|
115
121
|
}
|
|
116
122
|
}
|
|
117
123
|
return [4 /*yield*/, createMediaKeys(mediaKeySystemAccess)];
|
|
@@ -119,7 +125,13 @@ export default function getMediaKeysInfos(mediaElement, keySystemsConfigs, cance
|
|
|
119
125
|
mediaKeys = _b.sent();
|
|
120
126
|
log.info("DRM: MediaKeys created with success");
|
|
121
127
|
loadedSessionsStore = new LoadedSessionsStore(mediaKeys);
|
|
122
|
-
return [2 /*return*/, {
|
|
128
|
+
return [2 /*return*/, {
|
|
129
|
+
mediaKeys: mediaKeys,
|
|
130
|
+
mediaKeySystemAccess: mediaKeySystemAccess,
|
|
131
|
+
askedConfiguration: askedConfiguration,
|
|
132
|
+
stores: { loadedSessionsStore: loadedSessionsStore, persistentSessionsStore: persistentSessionsStore },
|
|
133
|
+
options: options,
|
|
134
|
+
}];
|
|
123
135
|
}
|
|
124
136
|
});
|
|
125
137
|
});
|
|
@@ -146,8 +158,7 @@ function createMediaKeys(mediaKeySystemAccess) {
|
|
|
146
158
|
return [2 /*return*/, mediaKeys];
|
|
147
159
|
case 3:
|
|
148
160
|
error_1 = _a.sent();
|
|
149
|
-
message = error_1 instanceof Error ? error_1.message :
|
|
150
|
-
"Unknown error when creating MediaKeys.";
|
|
161
|
+
message = error_1 instanceof Error ? error_1.message : "Unknown error when creating MediaKeys.";
|
|
151
162
|
throw new EncryptedMediaError("CREATE_MEDIA_KEYS_ERROR", message);
|
|
152
163
|
case 4: return [2 /*return*/];
|
|
153
164
|
}
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { IKeySystemOption } from "../../public_types";
|
|
17
|
-
import { CancellationSignal } from "../../utils/task_canceller";
|
|
18
|
-
import { IMediaKeysInfos } from "./get_media_keys";
|
|
16
|
+
import type { IKeySystemOption } from "../../public_types";
|
|
17
|
+
import type { CancellationSignal } from "../../utils/task_canceller";
|
|
18
|
+
import type { IMediaKeysInfos } from "./get_media_keys";
|
|
19
19
|
/**
|
|
20
20
|
* Get media keys infos from key system configs then attach media keys to media element.
|
|
21
21
|
* @param {HTMLMediaElement} mediaElement
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { ICustomMediaKeySession } from "../../compat/eme";
|
|
17
|
-
import { IKeySystemOption, IPlayerError } from "../../public_types";
|
|
16
|
+
import type { ICustomMediaKeySession } from "../../compat/eme";
|
|
17
|
+
import type { IKeySystemOption, IPlayerError } from "../../public_types";
|
|
18
18
|
import { CancellationSignal } from "../../utils/task_canceller";
|
|
19
19
|
/**
|
|
20
20
|
* Listen to various events from a MediaKeySession and react accordingly
|
|
@@ -70,7 +70,7 @@ import log from "../../log";
|
|
|
70
70
|
import isNonEmptyString from "../../utils/is_non_empty_string";
|
|
71
71
|
import isNullOrUndefined from "../../utils/is_null_or_undefined";
|
|
72
72
|
import retryPromiseWithBackoff from "../../utils/retry_promise_with_backoff";
|
|
73
|
-
import TaskCanceller, { CancellationSignal
|
|
73
|
+
import TaskCanceller, { CancellationSignal } from "../../utils/task_canceller";
|
|
74
74
|
import checkKeyStatuses from "./utils/check_key_statuses";
|
|
75
75
|
var onKeyError = events.onKeyError, onKeyMessage = events.onKeyMessage, onKeyStatusesChange = events.onKeyStatusesChange;
|
|
76
76
|
/**
|
|
@@ -92,6 +92,7 @@ export default function SessionEventsListener(session, keySystemOptions, keySyst
|
|
|
92
92
|
session.closed
|
|
93
93
|
.then(function () { return manualCanceller.cancel(); })
|
|
94
94
|
.catch(function (err) {
|
|
95
|
+
// Should never happen
|
|
95
96
|
if (cancelSignal.isCancelled()) {
|
|
96
97
|
return;
|
|
97
98
|
}
|
|
@@ -116,9 +117,9 @@ export default function SessionEventsListener(session, keySystemOptions, keySyst
|
|
|
116
117
|
onKeyMessage(session, function (evt) {
|
|
117
118
|
var messageEvent = evt;
|
|
118
119
|
var message = new Uint8Array(messageEvent.message);
|
|
119
|
-
var messageType = isNonEmptyString(messageEvent.messageType)
|
|
120
|
-
messageEvent.messageType
|
|
121
|
-
"license-request";
|
|
120
|
+
var messageType = isNonEmptyString(messageEvent.messageType)
|
|
121
|
+
? messageEvent.messageType
|
|
122
|
+
: "license-request";
|
|
122
123
|
log.info("DRM: Received message event, type ".concat(messageType), session.sessionId);
|
|
123
124
|
var backoffOptions = getLicenseBackoffOptions(getLicenseConfig.retry);
|
|
124
125
|
retryPromiseWithBackoff(function () { return runGetLicense(message, messageType); }, backoffOptions, manualCanceller.signal)
|
|
@@ -250,16 +251,15 @@ export default function SessionEventsListener(session, keySystemOptions, keySyst
|
|
|
250
251
|
try {
|
|
251
252
|
log.debug("DRM: Calling `getLicense`", messageType);
|
|
252
253
|
var getLicense = keySystemOptions.getLicense(message, messageType);
|
|
253
|
-
var getLicenseTimeout_1 = isNullOrUndefined(getLicenseConfig.timeout)
|
|
254
|
-
10 * 1000
|
|
255
|
-
getLicenseConfig.timeout;
|
|
254
|
+
var getLicenseTimeout_1 = isNullOrUndefined(getLicenseConfig.timeout)
|
|
255
|
+
? 10 * 1000
|
|
256
|
+
: getLicenseConfig.timeout;
|
|
256
257
|
if (getLicenseTimeout_1 >= 0) {
|
|
257
258
|
timeoutId = setTimeout(function () {
|
|
258
259
|
rej(new GetLicenseTimeoutError("\"getLicense\" timeout exceeded (".concat(getLicenseTimeout_1, " ms)")));
|
|
259
260
|
}, getLicenseTimeout_1);
|
|
260
261
|
}
|
|
261
|
-
Promise.resolve(getLicense)
|
|
262
|
-
.then(clearTimeoutAndResolve, clearTimeoutAndReject);
|
|
262
|
+
Promise.resolve(getLicense).then(clearTimeoutAndResolve, clearTimeoutAndReject);
|
|
263
263
|
}
|
|
264
264
|
catch (err) {
|
|
265
265
|
clearTimeoutAndReject(err);
|
|
@@ -294,9 +294,7 @@ export default function SessionEventsListener(session, keySystemOptions, keySyst
|
|
|
294
294
|
isNullOrUndefined(error) ||
|
|
295
295
|
error.noRetry !== true;
|
|
296
296
|
},
|
|
297
|
-
onRetry: function (error) {
|
|
298
|
-
return callbacks.onWarning(formatGetLicenseError(error));
|
|
299
|
-
},
|
|
297
|
+
onRetry: function (error) { return callbacks.onWarning(formatGetLicenseError(error)); },
|
|
300
298
|
};
|
|
301
299
|
}
|
|
302
300
|
}
|
|
@@ -308,8 +306,7 @@ export default function SessionEventsListener(session, keySystemOptions, keySyst
|
|
|
308
306
|
*/
|
|
309
307
|
function formatGetLicenseError(error) {
|
|
310
308
|
if (error instanceof GetLicenseTimeoutError) {
|
|
311
|
-
return new EncryptedMediaError("KEY_LOAD_TIMEOUT", "The license server took too much time to " +
|
|
312
|
-
"respond.");
|
|
309
|
+
return new EncryptedMediaError("KEY_LOAD_TIMEOUT", "The license server took too much time to " + "respond.");
|
|
313
310
|
}
|
|
314
311
|
var err = new EncryptedMediaError("KEY_LOAD_ERROR", "An error occured when calling `getLicense`.");
|
|
315
312
|
if (!isNullOrUndefined(error) &&
|
|
@@ -340,8 +337,7 @@ function updateSessionWithMessage(session, message) {
|
|
|
340
337
|
return [3 /*break*/, 4];
|
|
341
338
|
case 3:
|
|
342
339
|
error_2 = _a.sent();
|
|
343
|
-
reason = error_2 instanceof Error ? error_2.toString() :
|
|
344
|
-
"`session.update` failed";
|
|
340
|
+
reason = error_2 instanceof Error ? error_2.toString() : "`session.update` failed";
|
|
345
341
|
throw new EncryptedMediaError("KEY_UPDATE_ERROR", reason);
|
|
346
342
|
case 4:
|
|
347
343
|
log.info("DRM: MediaKeySession update succeeded.");
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { ICustomMediaKeys } from "../../compat/eme";
|
|
17
|
-
import { IPlayerError } from "../../public_types";
|
|
16
|
+
import type { ICustomMediaKeys } from "../../compat/eme";
|
|
17
|
+
import type { IPlayerError } from "../../public_types";
|
|
18
18
|
/**
|
|
19
19
|
* Call the setServerCertificate API with the given certificate.
|
|
20
20
|
* Resolves on success, rejects on failure.
|
|
@@ -48,4 +48,4 @@ export default function trySettingServerCertificate(mediaKeys: ICustomMediaKeys
|
|
|
48
48
|
type: "error";
|
|
49
49
|
value: IPlayerError;
|
|
50
50
|
}>;
|
|
51
|
-
export { trySettingServerCertificate, setServerCertificate
|
|
51
|
+
export { trySettingServerCertificate, setServerCertificate };
|
|
@@ -49,7 +49,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
49
49
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
-
import { EncryptedMediaError, isKnownError
|
|
52
|
+
import { EncryptedMediaError, isKnownError } from "../../errors";
|
|
53
53
|
import log from "../../log";
|
|
54
54
|
import ServerCertificateStore from "./utils/server_certificate_store";
|
|
55
55
|
/**
|
|
@@ -83,8 +83,7 @@ function setServerCertificate(mediaKeys, serverCertificate) {
|
|
|
83
83
|
case 2:
|
|
84
84
|
error_1 = _a.sent();
|
|
85
85
|
log.warn("DRM: mediaKeys.setServerCertificate returned an error", error_1 instanceof Error ? error_1 : "");
|
|
86
|
-
reason = error_1 instanceof Error ? error_1.toString() :
|
|
87
|
-
"`setServerCertificate` error";
|
|
86
|
+
reason = error_1 instanceof Error ? error_1.toString() : "`setServerCertificate` error";
|
|
88
87
|
throw new EncryptedMediaError("LICENSE_SERVER_CERTIFICATE_ERROR", reason);
|
|
89
88
|
case 3: return [2 /*return*/];
|
|
90
89
|
}
|
|
@@ -129,13 +128,13 @@ export default function trySettingServerCertificate(mediaKeys, serverCertificate
|
|
|
129
128
|
return [2 /*return*/, { type: "success", value: result }];
|
|
130
129
|
case 3:
|
|
131
130
|
error_2 = _a.sent();
|
|
132
|
-
formattedErr = isKnownError(error_2)
|
|
133
|
-
error_2
|
|
134
|
-
new EncryptedMediaError("LICENSE_SERVER_CERTIFICATE_ERROR", "Unknown error when setting the server certificate.");
|
|
131
|
+
formattedErr = isKnownError(error_2)
|
|
132
|
+
? error_2
|
|
133
|
+
: new EncryptedMediaError("LICENSE_SERVER_CERTIFICATE_ERROR", "Unknown error when setting the server certificate.");
|
|
135
134
|
return [2 /*return*/, { type: "error", value: formattedErr }];
|
|
136
135
|
case 4: return [2 /*return*/];
|
|
137
136
|
}
|
|
138
137
|
});
|
|
139
138
|
});
|
|
140
139
|
}
|
|
141
|
-
export { trySettingServerCertificate, setServerCertificate
|
|
140
|
+
export { trySettingServerCertificate, setServerCertificate };
|
|
@@ -13,11 +13,12 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import
|
|
16
|
+
import type { Adaptation, Period, Representation } from "../../manifest";
|
|
17
|
+
import type Manifest from "../../manifest";
|
|
18
|
+
import type { IPlayerError } from "../../public_types";
|
|
19
|
+
import type InitDataValuesContainer from "./utils/init_data_values_container";
|
|
20
|
+
import type LoadedSessionsStore from "./utils/loaded_sessions_store";
|
|
21
|
+
import type PersistentSessionsStore from "./utils/persistent_sessions_store";
|
|
21
22
|
/** Events sent by the `ContentDecryptor`, in a `{ event: payload }` format. */
|
|
22
23
|
export interface IContentDecryptorEvent {
|
|
23
24
|
/**
|
|
@@ -103,6 +104,11 @@ export interface IProtectionData {
|
|
|
103
104
|
/** Protection initialization data actually processed by the `ContentDecryptor`. */
|
|
104
105
|
export interface IProcessedProtectionData extends Omit<IProtectionData, "values"> {
|
|
105
106
|
values: InitDataValuesContainer;
|
|
107
|
+
/**
|
|
108
|
+
* Enforce to recreate the media key session if there is already a session created
|
|
109
|
+
* with this init data
|
|
110
|
+
*/
|
|
111
|
+
forceSessionRecreation?: boolean | undefined;
|
|
106
112
|
}
|
|
107
113
|
/**
|
|
108
114
|
* Represent the initialization data linked to a key system that can be used to
|
|
@@ -66,12 +66,16 @@ function _isAInB(a, b) {
|
|
|
66
66
|
if (bElt.hash !== firstAElt.hash) {
|
|
67
67
|
return false;
|
|
68
68
|
}
|
|
69
|
-
var aData = firstAElt.data instanceof Uint8Array
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
69
|
+
var aData = firstAElt.data instanceof Uint8Array
|
|
70
|
+
? firstAElt.data
|
|
71
|
+
: typeof firstAElt.data === "string"
|
|
72
|
+
? SerializableBytes.decode(firstAElt.data)
|
|
73
|
+
: firstAElt.data.initData;
|
|
74
|
+
var bData = bElt.data instanceof Uint8Array
|
|
75
|
+
? bElt.data
|
|
76
|
+
: typeof bElt.data === "string"
|
|
77
|
+
? SerializableBytes.decode(bElt.data)
|
|
78
|
+
: bElt.data.initData;
|
|
75
79
|
if (!areArraysOfNumbersEqual(aData, bData)) {
|
|
76
80
|
return false;
|
|
77
81
|
}
|
|
@@ -90,12 +94,16 @@ function _isAInB(a, b) {
|
|
|
90
94
|
if (aElt.hash !== bNewElt.hash) {
|
|
91
95
|
return false;
|
|
92
96
|
}
|
|
93
|
-
var aNewData = aElt.data instanceof Uint8Array
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
var aNewData = aElt.data instanceof Uint8Array
|
|
98
|
+
? aElt.data
|
|
99
|
+
: typeof aElt.data === "string"
|
|
100
|
+
? SerializableBytes.decode(aElt.data)
|
|
101
|
+
: aElt.data.initData;
|
|
102
|
+
var bNewData = bNewElt.data instanceof Uint8Array
|
|
103
|
+
? bNewElt.data
|
|
104
|
+
: typeof bNewElt.data === "string"
|
|
105
|
+
? SerializableBytes.decode(bNewElt.data)
|
|
106
|
+
: bNewElt.data.initData;
|
|
99
107
|
if (!areArraysOfNumbersEqual(aNewData, bNewData)) {
|
|
100
108
|
return false;
|
|
101
109
|
}
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { ICustomMediaKeySession } from "../../../compat/eme";
|
|
16
|
+
import type { ICustomMediaKeySession } from "../../../compat/eme";
|
|
17
17
|
import { EncryptedMediaError } from "../../../errors";
|
|
18
|
-
import { IKeySystemOption, IPlayerError } from "../../../public_types";
|
|
18
|
+
import type { IKeySystemOption, IPlayerError } from "../../../public_types";
|
|
19
19
|
/**
|
|
20
20
|
* Error thrown when the MediaKeySession has to be closed due to a trigger
|
|
21
21
|
* specified by user configuration.
|
|
@@ -68,9 +68,11 @@ var DecommissionedSessionError = /** @class */ (function (_super) {
|
|
|
68
68
|
return DecommissionedSessionError;
|
|
69
69
|
}(Error));
|
|
70
70
|
export { DecommissionedSessionError };
|
|
71
|
-
var KEY_STATUSES = {
|
|
71
|
+
var KEY_STATUSES = {
|
|
72
|
+
EXPIRED: "expired",
|
|
72
73
|
INTERNAL_ERROR: "internal-error",
|
|
73
|
-
OUTPUT_RESTRICTED: "output-restricted"
|
|
74
|
+
OUTPUT_RESTRICTED: "output-restricted",
|
|
75
|
+
};
|
|
74
76
|
/**
|
|
75
77
|
* Look at the current key statuses in the sessions and construct the
|
|
76
78
|
* appropriate warnings, whitelisted and blacklisted key ids.
|
|
@@ -91,8 +93,7 @@ export default function checkKeyStatuses(session, options, keySystem) {
|
|
|
91
93
|
// Hack present because the order of the arguments has changed in spec
|
|
92
94
|
// and is not the same between some versions of Edge and Chrome.
|
|
93
95
|
var _a = (function () {
|
|
94
|
-
return (typeof _arg1 === "string" ? [_arg1, _arg2] :
|
|
95
|
-
[_arg2, _arg1]);
|
|
96
|
+
return (typeof _arg1 === "string" ? [_arg1, _arg2] : [_arg2, _arg1]);
|
|
96
97
|
})(), keyStatus = _a[0], keyStatusKeyId = _a[1];
|
|
97
98
|
var keyId = getUUIDKidFromKeyStatusKID(keySystem, new Uint8Array(keyStatusKeyId));
|
|
98
99
|
var keyStatusObj = { keyId: keyId.buffer, keyStatus: keyStatus };
|
|
@@ -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 LoadedSessionsStore from "./loaded_sessions_store";
|
|
16
|
+
import type LoadedSessionsStore from "./loaded_sessions_store";
|
|
17
17
|
/**
|
|
18
18
|
* Close sessions from the loadedSessionsStore to allow at maximum `limit`
|
|
19
19
|
* stored MediaKeySessions in it.
|
|
@@ -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 PersistentSessionsStore from "./persistent_sessions_store";
|
|
16
|
+
import type PersistentSessionsStore from "./persistent_sessions_store";
|
|
17
17
|
/**
|
|
18
18
|
* Remove old information from a PersistentSessionsStore so that it respects the
|
|
19
19
|
* given `limit` as a maximum size. This can be used to prevent its size from
|