rx-player 4.0.0-worker.2024022000 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1113 -1723
- package/MAINTAINERS.md +12 -9
- package/README.md +122 -107
- package/VERSION +1 -1
- package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +1 -1
- package/dist/commonjs/compat/add_class_name.js +3 -4
- package/dist/commonjs/compat/add_text_track.d.ts +1 -1
- package/dist/commonjs/compat/add_text_track.js +2 -3
- package/dist/commonjs/compat/browser_compatibility_types.js +7 -13
- package/dist/commonjs/compat/browser_detection.js +10 -8
- package/dist/commonjs/compat/change_source_buffer_type.d.ts +1 -1
- package/dist/commonjs/compat/eme/close_session.d.ts +1 -1
- package/dist/commonjs/compat/eme/close_session.js +12 -16
- package/dist/commonjs/compat/eme/custom_key_system_access.d.ts +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.d.ts +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/ie11_media_keys.js +9 -14
- package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.js +11 -13
- package/dist/commonjs/compat/eme/custom_media_keys/types.d.ts +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.js +11 -5
- package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts +1 -1
- package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +2 -2
- package/dist/commonjs/compat/eme/eme-api-implementation.d.ts +3 -3
- package/dist/commonjs/compat/eme/eme-api-implementation.js +9 -13
- package/dist/commonjs/compat/eme/generate_key_request.d.ts +1 -1
- package/dist/commonjs/compat/eme/generate_key_request.js +19 -16
- package/dist/commonjs/compat/eme/get_init_data.js +7 -5
- package/dist/commonjs/compat/eme/get_uuid_kid_from_keystatus_kid.js +2 -1
- package/dist/commonjs/compat/eme/get_webkit_fairplay_initdata.js +11 -10
- package/dist/commonjs/compat/eme/load_session.d.ts +1 -1
- package/dist/commonjs/compat/enable_audio_track.d.ts +1 -1
- package/dist/commonjs/compat/event_listeners.d.ts +4 -4
- package/dist/commonjs/compat/event_listeners.js +33 -42
- package/dist/commonjs/compat/has_webassembly.js +2 -1
- package/dist/commonjs/compat/index.d.ts +36 -0
- package/dist/commonjs/compat/index.js +64 -0
- package/dist/commonjs/compat/is_codec_supported.js +1 -2
- package/dist/commonjs/compat/is_vtt_cue.d.ts +1 -1
- package/dist/commonjs/compat/make_vtt_cue.d.ts +1 -1
- package/dist/commonjs/compat/on_height_width_change.d.ts +2 -2
- package/dist/commonjs/compat/patch_webkit_source_buffer.js +29 -29
- package/dist/commonjs/compat/should_reload_media_source_on_decipherability_update.js +2 -1
- package/dist/commonjs/config.d.ts +1 -1
- package/dist/commonjs/core/adaptive/adaptive_representation_selector.d.ts +22 -25
- package/dist/commonjs/core/adaptive/adaptive_representation_selector.js +25 -47
- package/dist/commonjs/core/adaptive/buffer_based_chooser.d.ts +1 -1
- package/dist/commonjs/core/adaptive/buffer_based_chooser.js +11 -13
- package/dist/commonjs/core/adaptive/guess_based_chooser.d.ts +6 -6
- package/dist/commonjs/core/adaptive/guess_based_chooser.js +6 -7
- package/dist/commonjs/core/adaptive/index.d.ts +2 -2
- package/dist/commonjs/core/adaptive/network_analyzer.d.ts +6 -6
- package/dist/commonjs/core/adaptive/network_analyzer.js +40 -44
- package/dist/commonjs/core/adaptive/utils/bandwidth_estimator.js +1 -1
- package/dist/commonjs/core/adaptive/utils/ewma.js +2 -1
- package/dist/commonjs/core/adaptive/utils/filter_by_bitrate.d.ts +2 -2
- package/dist/commonjs/core/adaptive/utils/filter_by_resolution.d.ts +2 -2
- package/dist/commonjs/core/adaptive/utils/filter_by_resolution.js +4 -2
- package/dist/commonjs/core/adaptive/utils/get_buffer_levels.js +4 -7
- package/dist/commonjs/core/adaptive/utils/last_estimate_storage.d.ts +3 -3
- package/dist/commonjs/core/adaptive/utils/pending_requests_store.d.ts +5 -5
- package/dist/commonjs/core/adaptive/utils/pending_requests_store.js +3 -4
- package/dist/commonjs/core/adaptive/utils/representation_score_calculator.d.ts +7 -7
- package/dist/commonjs/core/adaptive/utils/representation_score_calculator.js +8 -11
- package/dist/commonjs/core/adaptive/utils/select_optimal_representation.d.ts +4 -4
- package/dist/commonjs/core/adaptive/utils/select_optimal_representation.js +2 -2
- package/dist/commonjs/core/api/debug/buffer_graph.d.ts +28 -0
- package/dist/commonjs/core/api/debug/buffer_graph.js +173 -0
- package/dist/commonjs/core/api/debug/buffer_size_graph.js +132 -0
- package/dist/commonjs/core/api/debug/modules/general_info.d.ts +3 -0
- package/dist/commonjs/core/api/debug/modules/general_info.js +232 -0
- package/dist/commonjs/core/api/debug/modules/segment_buffer_content.d.ts +4 -0
- package/dist/commonjs/core/api/debug/modules/segment_buffer_content.js +125 -0
- package/dist/commonjs/core/api/debug/modules/segment_buffer_size.d.ts +3 -0
- package/dist/commonjs/core/api/debug/modules/segment_buffer_size.js +38 -0
- package/dist/commonjs/core/api/debug/render.d.ts +3 -0
- package/dist/commonjs/core/api/index.d.ts +20 -0
- package/dist/commonjs/core/api/index.js +22 -0
- package/dist/commonjs/core/api/option_utils.d.ts +124 -0
- package/dist/commonjs/core/api/option_utils.js +318 -0
- package/dist/commonjs/core/api/playback_observer.d.ts +521 -0
- package/dist/commonjs/core/api/playback_observer.js +771 -0
- package/dist/commonjs/core/api/public_api.d.ts +751 -0
- package/dist/commonjs/core/api/public_api.js +2458 -0
- package/dist/commonjs/core/api/track_management/media_element_tracks_store.d.ts +197 -0
- package/dist/commonjs/core/api/track_management/media_element_tracks_store.js +688 -0
- package/dist/commonjs/core/api/track_management/track_dispatcher.d.ts +100 -0
- package/dist/commonjs/core/api/track_management/track_dispatcher.js +184 -0
- package/dist/commonjs/core/api/track_management/tracks_store.d.ts +441 -0
- package/dist/commonjs/core/api/track_management/tracks_store.js +1066 -0
- package/dist/commonjs/core/api/utils.d.ts +66 -0
- package/dist/commonjs/core/api/utils.js +175 -0
- package/dist/commonjs/core/decrypt/__tests__/__global__/utils.d.ts +178 -0
- package/dist/commonjs/core/decrypt/__tests__/__global__/utils.js +413 -0
- package/dist/commonjs/core/decrypt/attach_media_keys.d.ts +53 -0
- package/dist/commonjs/core/decrypt/attach_media_keys.js +121 -0
- package/dist/commonjs/core/decrypt/clear_on_stop.js +43 -0
- package/dist/commonjs/core/decrypt/content_decryptor.d.ts +184 -0
- package/dist/commonjs/core/decrypt/content_decryptor.js +1035 -0
- package/dist/commonjs/core/decrypt/create_or_load_session.d.ts +63 -0
- package/dist/commonjs/core/decrypt/create_or_load_session.js +127 -0
- package/dist/commonjs/core/decrypt/create_session.d.ts +53 -0
- package/dist/commonjs/core/decrypt/create_session.js +215 -0
- package/dist/commonjs/core/decrypt/dispose_decryption_resources.js +91 -0
- package/dist/commonjs/core/decrypt/find_key_system.d.ts +48 -0
- package/dist/commonjs/core/decrypt/find_key_system.js +369 -0
- package/dist/commonjs/core/decrypt/get_media_keys.d.ts +44 -0
- package/dist/commonjs/core/decrypt/get_media_keys.js +156 -0
- package/dist/commonjs/core/decrypt/index.d.ts +26 -0
- package/dist/commonjs/core/decrypt/init_media_keys.d.ts +26 -0
- package/dist/commonjs/core/decrypt/session_events_listener.d.ts +75 -0
- package/dist/commonjs/core/decrypt/session_events_listener.js +330 -0
- package/dist/commonjs/core/decrypt/set_server_certificate.d.ts +51 -0
- package/dist/commonjs/core/decrypt/set_server_certificate.js +146 -0
- package/dist/commonjs/core/decrypt/types.d.ts +374 -0
- package/dist/commonjs/core/decrypt/utils/are_init_values_compatible.js +116 -0
- package/dist/commonjs/core/decrypt/utils/check_key_statuses.d.ts +52 -0
- package/dist/commonjs/core/decrypt/utils/check_key_statuses.js +211 -0
- package/dist/commonjs/core/decrypt/utils/clean_old_loaded_sessions.d.ts +26 -0
- package/dist/commonjs/core/decrypt/utils/clean_old_stored_persistent_info.d.ts +32 -0
- package/dist/commonjs/core/decrypt/utils/init_data_values_container.d.ts +69 -0
- package/dist/commonjs/core/decrypt/utils/init_data_values_container.js +126 -0
- package/dist/commonjs/core/decrypt/utils/is_session_usable.d.ts +24 -0
- package/dist/commonjs/core/decrypt/utils/is_session_usable.js +52 -0
- package/dist/commonjs/core/decrypt/utils/key_session_record.d.ts +104 -0
- package/dist/commonjs/core/decrypt/utils/key_session_record.js +190 -0
- package/dist/commonjs/core/decrypt/utils/loaded_sessions_store.d.ts +215 -0
- package/dist/commonjs/core/decrypt/utils/loaded_sessions_store.js +515 -0
- package/dist/commonjs/core/decrypt/utils/media_keys_infos_store.d.ts +56 -0
- package/dist/commonjs/core/decrypt/utils/media_keys_infos_store.js +46 -0
- package/dist/commonjs/core/decrypt/utils/persistent_sessions_store.d.ts +94 -0
- package/dist/commonjs/core/decrypt/utils/persistent_sessions_store.js +346 -0
- package/dist/commonjs/core/decrypt/utils/serializable_bytes.d.ts +44 -0
- package/dist/commonjs/core/decrypt/utils/serializable_bytes.js +50 -0
- package/dist/commonjs/core/decrypt/utils/server_certificate_store.d.ts +64 -0
- package/dist/commonjs/core/decrypt/utils/server_certificate_store.js +114 -0
- package/dist/commonjs/core/fetchers/cdn_prioritizer.d.ts +2 -2
- package/dist/commonjs/core/fetchers/cdn_prioritizer.js +6 -5
- package/dist/commonjs/core/fetchers/manifest/index.d.ts +1 -1
- package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.d.ts +3 -3
- package/dist/commonjs/core/fetchers/manifest/manifest_fetcher.js +65 -80
- package/dist/commonjs/core/fetchers/segment/index.d.ts +1 -1
- package/dist/commonjs/core/fetchers/segment/initialization_segment_cache.d.ts +4 -4
- package/dist/commonjs/core/fetchers/segment/prioritized_segment_fetcher.d.ts +3 -4
- package/dist/commonjs/core/fetchers/segment/segment_fetcher.d.ts +12 -12
- package/dist/commonjs/core/fetchers/segment/segment_fetcher.js +32 -49
- package/dist/commonjs/core/fetchers/segment/segment_fetcher_creator.d.ts +5 -5
- package/dist/commonjs/core/fetchers/segment/segment_fetcher_creator.js +2 -4
- package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts +1 -1
- package/dist/commonjs/core/fetchers/segment/task_prioritizer.js +17 -18
- package/dist/commonjs/core/fetchers/utils/error_selector.d.ts +2 -1
- package/dist/commonjs/core/fetchers/utils/error_selector.js +1 -0
- package/dist/commonjs/core/fetchers/utils/schedule_request.d.ts +3 -3
- package/dist/commonjs/core/fetchers/utils/schedule_request.js +21 -20
- package/dist/commonjs/core/init/directfile_content_initializer.d.ts +97 -0
- package/dist/commonjs/core/init/directfile_content_initializer.js +267 -0
- package/dist/commonjs/core/init/media_source_content_initializer.d.ts +165 -0
- package/dist/commonjs/core/init/media_source_content_initializer.js +865 -0
- package/dist/commonjs/core/init/multithread/main_thread/multi_thread_content_initializer.d.ts +167 -0
- package/dist/commonjs/core/init/multithread/main_thread/multi_thread_content_initializer.js +1393 -0
- package/dist/commonjs/core/init/multithread/main_thread/send_message.d.ts +2 -0
- package/dist/commonjs/core/init/multithread/main_thread/send_message.js +13 -0
- package/dist/commonjs/core/init/multithread/worker/content_preparer.d.ts +92 -0
- package/dist/commonjs/core/init/multithread/worker/content_preparer.js +259 -0
- package/dist/commonjs/core/init/multithread/worker/globals.d.ts +13 -0
- package/dist/commonjs/core/init/multithread/worker/globals.js +26 -0
- package/dist/commonjs/core/init/multithread/worker/index.d.ts +2 -0
- package/dist/commonjs/core/init/multithread/worker/index.js +4 -0
- package/dist/commonjs/core/init/multithread/worker/send_message.d.ts +3 -0
- package/dist/commonjs/core/init/multithread/worker/send_message.js +25 -0
- package/dist/commonjs/core/init/multithread/worker/track_choice_setter.d.ts +19 -0
- package/dist/commonjs/core/init/multithread/worker/track_choice_setter.js +140 -0
- package/dist/commonjs/core/init/multithread/worker/worker_playback_observer.d.ts +21 -0
- package/dist/commonjs/core/init/multithread/worker/worker_playback_observer.js +47 -0
- package/dist/commonjs/core/init/multithread/worker/worker_portal.d.ts +1 -0
- package/dist/commonjs/core/init/multithread/worker/worker_portal.js +727 -0
- package/dist/commonjs/core/init/multithread/worker/worker_text_displayer_interface.d.ts +64 -0
- package/dist/commonjs/core/init/multithread/worker/worker_text_displayer_interface.js +127 -0
- package/dist/commonjs/core/init/types.d.ts +226 -0
- package/dist/commonjs/core/init/utils/DecipherabilityFreezeDetector.d.ts +54 -0
- package/dist/commonjs/core/init/utils/DecipherabilityFreezeDetector.js +129 -0
- package/dist/commonjs/core/init/utils/content_time_boundaries_observer.d.ts +192 -0
- package/dist/commonjs/core/init/utils/content_time_boundaries_observer.js +518 -0
- package/dist/commonjs/core/init/utils/create_content_time_boundaries_observer.d.ts +28 -0
- package/dist/commonjs/core/init/utils/create_content_time_boundaries_observer.js +48 -0
- package/dist/commonjs/core/init/utils/create_core_playback_observer.d.ts +61 -0
- package/dist/commonjs/core/init/utils/create_core_playback_observer.js +130 -0
- package/dist/commonjs/core/init/utils/create_media_source.d.ts +37 -0
- package/dist/commonjs/core/init/utils/create_media_source.js +108 -0
- package/dist/commonjs/core/init/utils/end_of_stream.d.ts +33 -0
- package/dist/commonjs/core/init/utils/end_of_stream.js +115 -0
- package/dist/commonjs/core/init/utils/get_initial_time.d.ts +76 -0
- package/dist/commonjs/core/init/utils/get_initial_time.js +116 -0
- package/dist/commonjs/core/init/utils/get_loaded_reference.d.ts +28 -0
- package/dist/commonjs/core/init/utils/get_loaded_reference.js +61 -0
- package/dist/commonjs/core/init/utils/initial_seek_and_play.d.ts +61 -0
- package/dist/commonjs/core/init/utils/initial_seek_and_play.js +210 -0
- package/dist/commonjs/core/init/utils/initialize_content_decryption.d.ts +86 -0
- package/dist/commonjs/core/init/utils/initialize_content_decryption.js +113 -0
- package/dist/commonjs/core/init/utils/main_thread_text_displayer_interface.d.ts +35 -0
- package/dist/commonjs/core/init/utils/media_source_duration_updater.js +270 -0
- package/dist/commonjs/core/init/utils/rebuffering_controller.d.ts +114 -0
- package/dist/commonjs/core/init/utils/rebuffering_controller.js +445 -0
- package/dist/commonjs/core/init/utils/stream_events_emitter/are_same_stream_events.js +37 -0
- package/dist/commonjs/core/init/utils/stream_events_emitter/index.d.ts +18 -0
- package/dist/commonjs/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +25 -0
- package/dist/commonjs/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +91 -0
- package/dist/commonjs/core/init/utils/stream_events_emitter/stream_events_emitter.d.ts +53 -0
- package/dist/commonjs/core/init/utils/stream_events_emitter/stream_events_emitter.js +234 -0
- package/dist/commonjs/core/init/utils/stream_events_emitter/types.d.ts +41 -0
- package/dist/commonjs/core/init/utils/throw_on_media_error.d.ts +23 -0
- package/dist/commonjs/core/init/utils/throw_on_media_error.js +61 -0
- package/dist/commonjs/core/segment_buffers/garbage_collector.d.ts +43 -0
- package/dist/commonjs/core/segment_buffers/garbage_collector.js +220 -0
- package/dist/commonjs/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.d.ts +134 -0
- package/dist/commonjs/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.js +350 -0
- package/dist/commonjs/core/segment_buffers/implementations/audio_video/index.d.ts +17 -0
- package/dist/commonjs/core/segment_buffers/implementations/index.d.ts +19 -0
- package/dist/commonjs/core/segment_buffers/implementations/index.js +35 -0
- package/dist/commonjs/core/segment_buffers/implementations/text/index.d.ts +3 -0
- package/dist/commonjs/core/segment_buffers/implementations/text/text_segment_buffer.d.ts +89 -0
- package/dist/commonjs/core/segment_buffers/implementations/text/text_segment_buffer.js +253 -0
- package/dist/commonjs/core/segment_buffers/implementations/types.d.ts +309 -0
- package/dist/commonjs/core/segment_buffers/implementations/types.js +117 -0
- package/dist/commonjs/core/segment_buffers/index.d.ts +21 -0
- package/dist/commonjs/core/segment_buffers/index.js +28 -0
- package/dist/commonjs/core/segment_buffers/inventory/buffered_history.d.ts +89 -0
- package/dist/commonjs/core/segment_buffers/inventory/index.d.ts +21 -0
- package/dist/commonjs/core/segment_buffers/inventory/segment_inventory.d.ts +238 -0
- package/dist/commonjs/core/segment_buffers/inventory/segment_inventory.js +906 -0
- package/dist/commonjs/core/segment_buffers/inventory/types.d.ts +27 -0
- package/dist/commonjs/core/segment_buffers/inventory/utils.d.ts +33 -0
- package/dist/commonjs/core/segment_buffers/inventory/utils.js +54 -0
- package/dist/commonjs/core/segment_buffers/segment_buffers_store.d.ts +171 -0
- package/dist/commonjs/core/segment_buffers/segment_buffers_store.js +292 -0
- package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts +4 -4
- package/dist/commonjs/core/stream/adaptation/adaptation_stream.js +24 -52
- package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.d.ts +11 -11
- package/dist/commonjs/core/stream/adaptation/get_representations_switch_strategy.js +33 -32
- package/dist/commonjs/core/stream/adaptation/types.d.ts +18 -18
- package/dist/commonjs/core/stream/index.d.ts +1 -1
- package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.d.ts +5 -5
- package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.js +5 -5
- package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts +19 -20
- package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.js +52 -76
- package/dist/commonjs/core/stream/period/period_stream.d.ts +5 -5
- package/dist/commonjs/core/stream/period/period_stream.js +47 -85
- package/dist/commonjs/core/stream/period/types.d.ts +21 -23
- package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +13 -13
- package/dist/commonjs/core/stream/period/utils/get_adaptation_switch_strategy.js +38 -34
- package/dist/commonjs/core/stream/representation/representation_stream.d.ts +5 -5
- package/dist/commonjs/core/stream/representation/representation_stream.js +32 -58
- package/dist/commonjs/core/stream/representation/types.d.ts +24 -24
- package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.d.ts +9 -9
- package/dist/commonjs/core/stream/representation/utils/append_segment_to_buffer.js +13 -12
- package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.d.ts +7 -7
- package/dist/commonjs/core/stream/representation/utils/check_for_discontinuity.js +18 -16
- package/dist/commonjs/core/stream/representation/utils/downloading_queue.d.ts +10 -10
- package/dist/commonjs/core/stream/representation/utils/downloading_queue.js +11 -11
- package/dist/commonjs/core/stream/representation/utils/get_buffer_status.d.ts +11 -11
- package/dist/commonjs/core/stream/representation/utils/get_buffer_status.js +29 -50
- package/dist/commonjs/core/stream/representation/utils/get_needed_segments.d.ts +7 -6
- package/dist/commonjs/core/stream/representation/utils/get_needed_segments.js +30 -29
- package/dist/commonjs/core/stream/representation/utils/push_init_segment.d.ts +13 -13
- package/dist/commonjs/core/stream/representation/utils/push_init_segment.js +8 -10
- package/dist/commonjs/core/stream/representation/utils/push_media_segment.d.ts +14 -14
- package/dist/commonjs/core/stream/representation/utils/push_media_segment.js +13 -16
- package/dist/commonjs/default_config.js +18 -21
- package/dist/commonjs/errors/encrypted_media_error.d.ts +2 -2
- package/dist/commonjs/errors/encrypted_media_error.js +2 -4
- package/dist/commonjs/errors/error_codes.d.ts +2 -2
- package/dist/commonjs/errors/format_error.d.ts +2 -2
- package/dist/commonjs/errors/format_error.js +2 -1
- package/dist/commonjs/errors/is_known_error.d.ts +1 -1
- package/dist/commonjs/errors/is_known_error.js +2 -2
- package/dist/commonjs/errors/media_error.d.ts +2 -2
- package/dist/commonjs/errors/media_error.js +2 -4
- package/dist/commonjs/errors/network_error.d.ts +2 -2
- package/dist/commonjs/errors/network_error.js +4 -6
- package/dist/commonjs/errors/other_error.d.ts +1 -1
- package/dist/commonjs/errors/other_error.js +3 -1
- package/dist/commonjs/errors/source_buffer_error.js +2 -4
- package/dist/commonjs/experimental/features/local.d.ts +1 -1
- package/dist/commonjs/experimental/features/local.js +2 -1
- package/dist/commonjs/experimental/features/metaplaylist.d.ts +1 -1
- package/dist/commonjs/experimental/features/metaplaylist.js +2 -1
- package/dist/commonjs/experimental/features/multi_thread.d.ts +1 -1
- package/dist/commonjs/experimental/features/multi_thread.js +2 -1
- package/dist/commonjs/experimental/index.d.ts +1 -1
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +1 -1
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +1 -1
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/index.d.ts +1 -1
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +3 -3
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +2 -2
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +5 -5
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +1 -1
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +2 -2
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/types.d.ts +6 -6
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +3 -3
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +18 -11
- package/dist/commonjs/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +23 -13
- package/dist/commonjs/experimental/tools/createMetaplaylist/index.d.ts +1 -1
- package/dist/commonjs/experimental/tools/createMetaplaylist/index.js +7 -8
- package/dist/commonjs/experimental/tools/index.d.ts +1 -1
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/index.d.ts +1 -1
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/index.js +15 -9
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts +3 -4
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.js +3 -6
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts +1 -1
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/capabilities.js +46 -9
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts +1 -2
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.js +5 -8
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts +1 -2
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +13 -21
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +1 -2
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +17 -21
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +12 -12
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts +1 -1
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +1 -2
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +8 -7
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts +1 -1
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.js +11 -6
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts +1 -2
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +2 -1
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +1 -2
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +3 -3
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/types.d.ts +2 -2
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.d.ts +1 -1
- package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/utils.js +7 -8
- package/dist/commonjs/features/add_features.d.ts +1 -1
- package/dist/commonjs/features/features_object.d.ts +1 -1
- package/dist/commonjs/features/features_object.js +3 -4
- package/dist/commonjs/features/index.d.ts +1 -1
- package/dist/commonjs/features/list/dash.d.ts +1 -1
- package/dist/commonjs/features/list/dash.js +4 -3
- package/dist/commonjs/features/list/dash_wasm.d.ts +2 -2
- package/dist/commonjs/features/list/dash_wasm.js +2 -1
- package/dist/commonjs/features/list/debug_element.d.ts +1 -1
- package/dist/commonjs/features/list/debug_element.js +1 -1
- package/dist/commonjs/features/list/directfile.d.ts +1 -1
- package/dist/commonjs/features/list/directfile.js +3 -2
- package/dist/commonjs/features/list/eme.d.ts +1 -1
- package/dist/commonjs/features/list/eme.js +1 -1
- package/dist/commonjs/features/list/html_sami_parser.d.ts +1 -1
- package/dist/commonjs/features/list/html_sami_parser.js +4 -4
- package/dist/commonjs/features/list/html_srt_parser.d.ts +1 -1
- package/dist/commonjs/features/list/html_srt_parser.js +4 -4
- package/dist/commonjs/features/list/html_text_buffer.d.ts +1 -1
- package/dist/commonjs/features/list/html_text_buffer.js +1 -1
- package/dist/commonjs/features/list/html_ttml_parser.d.ts +1 -1
- package/dist/commonjs/features/list/html_ttml_parser.js +4 -4
- package/dist/commonjs/features/list/html_vtt_parser.d.ts +1 -1
- package/dist/commonjs/features/list/html_vtt_parser.js +4 -4
- package/dist/commonjs/features/list/media_source_main.d.ts +1 -1
- package/dist/commonjs/features/list/media_source_main.js +2 -1
- package/dist/commonjs/features/list/native_sami_parser.d.ts +1 -1
- package/dist/commonjs/features/list/native_sami_parser.js +4 -4
- package/dist/commonjs/features/list/native_srt_parser.d.ts +1 -1
- package/dist/commonjs/features/list/native_srt_parser.js +4 -4
- package/dist/commonjs/features/list/native_text_buffer.d.ts +1 -1
- package/dist/commonjs/features/list/native_text_buffer.js +1 -1
- package/dist/commonjs/features/list/native_ttml_parser.d.ts +1 -1
- package/dist/commonjs/features/list/native_ttml_parser.js +4 -4
- package/dist/commonjs/features/list/native_vtt_parser.d.ts +1 -1
- package/dist/commonjs/features/list/native_vtt_parser.js +4 -4
- package/dist/commonjs/features/list/smooth.d.ts +1 -1
- package/dist/commonjs/features/list/smooth.js +2 -1
- package/dist/commonjs/features/types.d.ts +23 -28
- package/dist/commonjs/index.d.ts +1 -1
- package/dist/commonjs/index.js +1 -3
- package/dist/commonjs/manifest/adaptation.d.ts +135 -0
- package/dist/commonjs/manifest/adaptation.js +242 -0
- package/dist/commonjs/manifest/index.d.ts +25 -15
- package/dist/commonjs/manifest/index.js +46 -5
- package/dist/commonjs/manifest/manifest.d.ts +388 -0
- package/dist/commonjs/manifest/manifest.js +496 -0
- package/dist/commonjs/manifest/period.d.ts +106 -0
- package/dist/commonjs/manifest/period.js +236 -0
- package/dist/commonjs/manifest/representation.d.ts +238 -0
- package/dist/commonjs/manifest/representation.js +376 -0
- package/dist/commonjs/manifest/representation_index/index.d.ts +18 -0
- package/dist/commonjs/manifest/representation_index/static.d.ts +101 -0
- package/dist/commonjs/manifest/representation_index/static.js +143 -0
- package/dist/commonjs/manifest/representation_index/types.d.ts +420 -0
- package/dist/commonjs/manifest/types.d.ts +31 -2
- package/dist/commonjs/manifest/types.js +16 -0
- package/dist/commonjs/manifest/update_period_in_place.d.ts +52 -0
- package/dist/commonjs/manifest/update_period_in_place.js +172 -0
- package/dist/commonjs/manifest/update_periods.d.ts +50 -0
- package/dist/commonjs/manifest/update_periods.js +228 -0
- package/dist/commonjs/manifest/utils.d.ts +49 -11
- package/dist/commonjs/manifest/utils.js +79 -55
- package/dist/commonjs/minimal.d.ts +1 -1
- package/dist/commonjs/minimal.js +1 -6
- package/dist/commonjs/mse/main_codec_support_prober.d.ts +1 -1
- package/dist/commonjs/mse/main_media_source_interface.d.ts +2 -2
- package/dist/commonjs/mse/main_media_source_interface.js +34 -59
- package/dist/commonjs/mse/types.d.ts +3 -3
- package/dist/commonjs/mse/worker_codec_support_prober.d.ts +1 -1
- package/dist/commonjs/mse/worker_media_source_interface.d.ts +4 -4
- package/dist/commonjs/mse/worker_media_source_interface.js +17 -19
- package/dist/commonjs/multithread_types.d.ts +18 -15
- package/dist/commonjs/parsers/containers/isobmff/create_box.d.ts +1 -1
- package/dist/commonjs/parsers/containers/isobmff/create_box.js +3 -4
- package/dist/commonjs/parsers/containers/isobmff/drm/playready.js +2 -1
- package/dist/commonjs/parsers/containers/isobmff/get_box.js +4 -2
- package/dist/commonjs/parsers/containers/isobmff/index.d.ts +3 -3
- package/dist/commonjs/parsers/containers/isobmff/read.d.ts +1 -1
- package/dist/commonjs/parsers/containers/isobmff/read.js +7 -7
- package/dist/commonjs/parsers/containers/isobmff/take_pssh_out.js +4 -3
- package/dist/commonjs/parsers/containers/isobmff/utils.js +40 -64
- package/dist/commonjs/parsers/containers/matroska/index.d.ts +1 -1
- package/dist/commonjs/parsers/containers/matroska/utils.js +29 -42
- package/dist/commonjs/parsers/images/bif.js +4 -17
- package/dist/commonjs/parsers/manifest/dash/common/attach_trickmode_track.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/convert_supplemental_codecs.js +3 -1
- package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/flatten_overlapping_periods.js +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/get_hdr_information.js +12 -4
- package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/get_http_utc-timing_url.js +5 -4
- package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +2 -5
- package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/get_periods_time_infos.js +10 -14
- package/dist/commonjs/parsers/manifest/dash/common/index.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/indexes/base.d.ts +5 -5
- package/dist/commonjs/parsers/manifest/dash/common/indexes/base.js +29 -39
- package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/dash/common/indexes/get_init_segment.js +4 -8
- package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +4 -4
- package/dist/commonjs/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +10 -14
- package/dist/commonjs/parsers/manifest/dash/common/indexes/list.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/dash/common/indexes/list.js +20 -33
- package/dist/commonjs/parsers/manifest/dash/common/indexes/template.d.ts +3 -3
- package/dist/commonjs/parsers/manifest/dash/common/indexes/template.js +57 -58
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +4 -5
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +10 -13
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +18 -23
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +9 -16
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +3 -4
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +26 -47
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +2 -11
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +3 -74
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +8 -9
- package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +66 -85
- package/dist/commonjs/parsers/manifest/dash/common/indexes/tokens.js +4 -2
- package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/infer_adaptation_type.js +2 -2
- package/dist/commonjs/parsers/manifest/dash/common/manifest_bounds_calculator.js +10 -9
- package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +5 -5
- package/dist/commonjs/parsers/manifest/dash/common/parse_adaptation_sets.js +56 -63
- package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/common/parse_availability_start_time.js +3 -5
- package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.d.ts +6 -6
- package/dist/commonjs/parsers/manifest/dash/common/parse_mpd.js +41 -67
- package/dist/commonjs/parsers/manifest/dash/common/parse_periods.d.ts +5 -5
- package/dist/commonjs/parsers/manifest/dash/common/parse_periods.js +29 -46
- package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.d.ts +5 -5
- package/dist/commonjs/parsers/manifest/dash/common/parse_representation_index.js +6 -4
- package/dist/commonjs/parsers/manifest/dash/common/parse_representations.d.ts +5 -5
- package/dist/commonjs/parsers/manifest/dash/common/parse_representations.js +64 -66
- package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/common/resolve_base_urls.js +2 -4
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts +23 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +331 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts +23 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +33 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts +22 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts +21 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts +23 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +113 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts +21 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +42 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts +21 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/MPD.js +164 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts +21 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Period.js +132 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts +21 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/Representation.js +209 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts +22 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +108 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts +21 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts +23 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +92 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts +21 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts +23 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +52 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +187 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/node_parsers/utils.js +354 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/parse_from_document.d.ts +24 -0
- package/dist/commonjs/parsers/manifest/dash/js-parser/parse_from_document.js +131 -0
- package/dist/commonjs/parsers/manifest/dash/node_parser_types.d.ts +3 -5
- package/dist/commonjs/parsers/manifest/dash/parsers_types.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +17 -31
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +25 -21
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +3 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +1 -1
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +3 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +2 -4
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +4 -2
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +4 -4
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +6 -9
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +15 -13
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +3 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +1 -1
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +10 -5
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +18 -11
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +4 -2
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +4 -4
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.js +3 -7
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +2 -5
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/utils.js +3 -7
- package/dist/commonjs/parsers/manifest/local/parse_local_manifest.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/local/parse_local_manifest.js +16 -25
- package/dist/commonjs/parsers/manifest/local/representation_index.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/local/representation_index.js +10 -8
- package/dist/commonjs/parsers/manifest/metaplaylist/index.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +4 -4
- package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.js +43 -48
- package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.d.ts +3 -3
- package/dist/commonjs/parsers/manifest/metaplaylist/representation_index.js +7 -10
- package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/smooth/create_parser.js +108 -130
- package/dist/commonjs/parsers/manifest/smooth/get_codecs.js +3 -3
- package/dist/commonjs/parsers/manifest/smooth/index.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/smooth/parse_C_nodes.js +9 -9
- package/dist/commonjs/parsers/manifest/smooth/parse_protection_node.js +8 -12
- package/dist/commonjs/parsers/manifest/smooth/representation_index.d.ts +3 -3
- package/dist/commonjs/parsers/manifest/smooth/representation_index.js +37 -37
- package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.js +9 -8
- package/dist/commonjs/parsers/manifest/smooth/utils/add_segment_infos.js +7 -10
- package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/smooth/utils/parseBoolean.js +1 -1
- package/dist/commonjs/parsers/manifest/smooth/utils/tokens.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/smooth/utils/tokens.js +2 -1
- package/dist/commonjs/parsers/manifest/types.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/utils/check_manifest_ids.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.d.ts +2 -3
- package/dist/commonjs/parsers/manifest/utils/clear_timeline_from_position.js +7 -11
- package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.js +4 -5
- package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.js +4 -5
- package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/utils/get_maximum_positions.js +17 -11
- package/dist/commonjs/parsers/manifest/utils/get_minimum_position.d.ts +2 -2
- package/dist/commonjs/parsers/manifest/utils/get_minimum_position.js +11 -5
- package/dist/commonjs/parsers/manifest/utils/index_helpers.js +5 -4
- package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.d.ts +1 -1
- package/dist/commonjs/parsers/manifest/utils/update_segment_timeline.js +17 -17
- package/dist/commonjs/parsers/texttracks/index.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/sami/html.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/sami/html.js +16 -17
- package/dist/commonjs/parsers/texttracks/sami/native.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/sami/native.js +18 -12
- package/dist/commonjs/parsers/texttracks/srt/html.js +10 -12
- package/dist/commonjs/parsers/texttracks/srt/native.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/srt/native.js +8 -2
- package/dist/commonjs/parsers/texttracks/srt/parse_cue.js +8 -4
- package/dist/commonjs/parsers/texttracks/ttml/get_parameters.js +8 -7
- package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/ttml/get_time_delimiters.js +10 -9
- package/dist/commonjs/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +2 -2
- package/dist/commonjs/parsers/texttracks/ttml/html/apply_extent.js +9 -5
- package/dist/commonjs/parsers/texttracks/ttml/html/apply_font_size.js +7 -6
- package/dist/commonjs/parsers/texttracks/ttml/html/apply_line_height.js +2 -2
- package/dist/commonjs/parsers/texttracks/ttml/html/apply_origin.js +9 -5
- package/dist/commonjs/parsers/texttracks/ttml/html/apply_padding.js +11 -7
- package/dist/commonjs/parsers/texttracks/ttml/html/create_element.d.ts +2 -2
- package/dist/commonjs/parsers/texttracks/ttml/html/create_element.js +22 -29
- package/dist/commonjs/parsers/texttracks/ttml/html/generate_css_test_outline.js +2 -2
- package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/ttml/html/parse_cue.js +3 -5
- package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +23 -39
- package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.d.ts +2 -2
- package/dist/commonjs/parsers/texttracks/ttml/native/parse_cue.js +13 -14
- package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.d.ts +3 -3
- package/dist/commonjs/parsers/texttracks/ttml/parse_ttml.js +15 -27
- package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/ttml/time_parsing.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/ttml/time_parsing.js +2 -2
- package/dist/commonjs/parsers/texttracks/ttml/xml_utils.js +1 -2
- package/dist/commonjs/parsers/texttracks/types.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/get_style_blocks.js +1 -2
- package/dist/commonjs/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/html/create_style_attribute.js +12 -6
- package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/html/create_styled_element.js +8 -7
- package/dist/commonjs/parsers/texttracks/webvtt/html/parse_style_block.js +4 -4
- package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/html/parse_webvtt_to_div.js +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.js +10 -4
- package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +9 -5
- package/dist/commonjs/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +1 -1
- package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.d.ts +2 -2
- package/dist/commonjs/parsers/texttracks/webvtt/native/to_native_cue.js +3 -3
- package/dist/commonjs/parsers/texttracks/webvtt/parse_cue_block.js +5 -9
- package/dist/commonjs/parsers/texttracks/webvtt/parse_timestamp.js +2 -1
- package/dist/commonjs/parsers/texttracks/webvtt/utils.js +6 -6
- package/dist/commonjs/public_types.d.ts +16 -13
- package/dist/commonjs/public_types.js +1 -0
- package/dist/commonjs/text_displayer/html/html_parsers.js +25 -0
- package/dist/commonjs/text_displayer/html/html_text_displayer.d.ts +100 -0
- package/dist/commonjs/text_displayer/html/html_text_displayer.js +317 -0
- package/dist/commonjs/text_displayer/html/text_track_cues_store.d.ts +65 -0
- package/dist/commonjs/text_displayer/html/text_track_cues_store.js +378 -0
- package/dist/commonjs/text_displayer/html/update_proportional_elements.js +65 -0
- package/dist/commonjs/text_displayer/html/utils.js +115 -0
- package/dist/commonjs/text_displayer/index.d.ts +2 -0
- package/dist/commonjs/text_displayer/manual_time_ranges.js +52 -0
- package/dist/commonjs/text_displayer/native/native_parsers.d.ts +11 -0
- package/dist/commonjs/text_displayer/native/native_parsers.js +25 -0
- package/dist/commonjs/text_displayer/native/native_text_displayer.d.ts +56 -0
- package/dist/commonjs/text_displayer/native/native_text_displayer.js +207 -0
- package/dist/commonjs/text_displayer/types.d.ts +74 -0
- package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.d.ts +2 -2
- package/dist/commonjs/tools/TextTrackRenderer/text_track_renderer.js +7 -10
- package/dist/commonjs/tools/index.d.ts +1 -1
- package/dist/commonjs/tools/parseBIFThumbnails/index.js +4 -5
- package/dist/commonjs/transports/dash/add_segment_integrity_checks_to_loader.d.ts +1 -1
- package/dist/commonjs/transports/dash/add_segment_integrity_checks_to_loader.js +3 -2
- package/dist/commonjs/transports/dash/construct_segment_url.d.ts +2 -2
- package/dist/commonjs/transports/dash/construct_segment_url.js +3 -7
- package/dist/commonjs/transports/dash/extract_complete_chunks.js +2 -2
- package/dist/commonjs/transports/dash/get_events_out_of_emsgs.d.ts +2 -2
- package/dist/commonjs/transports/dash/get_events_out_of_emsgs.js +10 -12
- package/dist/commonjs/transports/dash/init_segment_loader.d.ts +3 -3
- package/dist/commonjs/transports/dash/init_segment_loader.js +22 -46
- package/dist/commonjs/transports/dash/low_latency_segment_loader.d.ts +2 -2
- package/dist/commonjs/transports/dash/low_latency_segment_loader.js +9 -16
- package/dist/commonjs/transports/dash/manifest_parser.d.ts +2 -2
- package/dist/commonjs/transports/dash/manifest_parser.js +28 -69
- package/dist/commonjs/transports/dash/pipelines.d.ts +1 -1
- package/dist/commonjs/transports/dash/pipelines.js +12 -15
- package/dist/commonjs/transports/dash/segment_loader.d.ts +4 -4
- package/dist/commonjs/transports/dash/segment_loader.js +21 -35
- package/dist/commonjs/transports/dash/segment_parser.d.ts +2 -2
- package/dist/commonjs/transports/dash/segment_parser.js +22 -54
- package/dist/commonjs/transports/dash/text_loader.d.ts +2 -2
- package/dist/commonjs/transports/dash/text_loader.js +18 -21
- package/dist/commonjs/transports/dash/text_parser.d.ts +2 -2
- package/dist/commonjs/transports/dash/text_parser.js +23 -49
- package/dist/commonjs/transports/index.d.ts +1 -1
- package/dist/commonjs/transports/index.js +15 -0
- package/dist/commonjs/transports/local/pipelines.d.ts +1 -1
- package/dist/commonjs/transports/local/pipelines.js +10 -15
- package/dist/commonjs/transports/local/segment_loader.d.ts +3 -3
- package/dist/commonjs/transports/local/segment_loader.js +6 -14
- package/dist/commonjs/transports/local/segment_parser.d.ts +1 -1
- package/dist/commonjs/transports/local/segment_parser.js +12 -30
- package/dist/commonjs/transports/local/text_parser.d.ts +1 -1
- package/dist/commonjs/transports/local/text_parser.js +18 -48
- package/dist/commonjs/transports/metaplaylist/manifest_loader.d.ts +4 -4
- package/dist/commonjs/transports/metaplaylist/manifest_loader.js +5 -9
- package/dist/commonjs/transports/metaplaylist/pipelines.d.ts +1 -1
- package/dist/commonjs/transports/metaplaylist/pipelines.js +22 -38
- package/dist/commonjs/transports/smooth/extract_timings_infos.d.ts +2 -2
- package/dist/commonjs/transports/smooth/extract_timings_infos.js +13 -14
- package/dist/commonjs/transports/smooth/is_mp4_embedded_track.d.ts +1 -1
- package/dist/commonjs/transports/smooth/is_mp4_embedded_track.js +1 -1
- package/dist/commonjs/transports/smooth/isobmff/create_audio_init_segment.d.ts +1 -0
- package/dist/commonjs/transports/smooth/isobmff/create_audio_init_segment.js +4 -3
- package/dist/commonjs/transports/smooth/isobmff/create_boxes.js +31 -22
- package/dist/commonjs/transports/smooth/isobmff/create_init_segment.js +1 -1
- package/dist/commonjs/transports/smooth/isobmff/get_aaces_header.js +16 -4
- package/dist/commonjs/transports/smooth/isobmff/parse_tfrf.js +1 -1
- package/dist/commonjs/transports/smooth/isobmff/parse_tfxd.js +1 -1
- package/dist/commonjs/transports/smooth/isobmff/patch_segment.js +11 -12
- package/dist/commonjs/transports/smooth/pipelines.d.ts +1 -1
- package/dist/commonjs/transports/smooth/pipelines.js +60 -101
- package/dist/commonjs/transports/smooth/segment_loader.d.ts +3 -3
- package/dist/commonjs/transports/smooth/segment_loader.js +27 -50
- package/dist/commonjs/transports/smooth/utils.d.ts +4 -4
- package/dist/commonjs/transports/smooth/utils.js +5 -9
- package/dist/commonjs/transports/types.d.ts +27 -22
- package/dist/commonjs/transports/utils/byte_range.js +2 -1
- package/dist/commonjs/transports/utils/call_custom_manifest_loader.d.ts +3 -3
- package/dist/commonjs/transports/utils/call_custom_manifest_loader.js +6 -10
- package/dist/commonjs/transports/utils/check_isobmff_integrity.js +3 -3
- package/dist/commonjs/transports/utils/find_complete_box.js +1 -2
- package/dist/commonjs/transports/utils/generate_manifest_loader.d.ts +3 -3
- package/dist/commonjs/transports/utils/generate_manifest_loader.js +6 -18
- package/dist/commonjs/transports/utils/get_isobmff_timing_infos.d.ts +2 -2
- package/dist/commonjs/transports/utils/get_isobmff_timing_infos.js +11 -12
- package/dist/commonjs/transports/utils/infer_segment_container.d.ts +1 -1
- package/dist/commonjs/transports/utils/infer_segment_container.js +3 -1
- package/dist/commonjs/transports/utils/parse_text_track.d.ts +4 -4
- package/dist/commonjs/transports/utils/parse_text_track.js +7 -4
- package/dist/commonjs/utils/array_includes.js +6 -2
- package/dist/commonjs/utils/assert.js +6 -3
- package/dist/commonjs/utils/base64.js +29 -87
- package/dist/commonjs/utils/byte_parsing.js +56 -64
- package/dist/commonjs/utils/cancellable_sleep.d.ts +1 -1
- package/dist/commonjs/utils/create_cancellable_promise.d.ts +1 -1
- package/dist/commonjs/utils/deep_merge.js +4 -4
- package/dist/commonjs/utils/event_emitter.d.ts +1 -1
- package/dist/commonjs/utils/event_emitter.js +2 -1
- package/dist/commonjs/utils/get_fuzzed_delay.js +1 -1
- package/dist/commonjs/utils/global_scope.d.ts +1 -1
- package/dist/commonjs/utils/global_scope.js +3 -10
- package/dist/commonjs/utils/hash_buffer.js +1 -1
- package/dist/commonjs/utils/languages/normalize.js +2 -4
- package/dist/commonjs/utils/logger.js +31 -21
- package/dist/commonjs/utils/object_assign.d.ts +3 -6
- package/dist/commonjs/utils/object_assign.js +7 -5
- package/dist/commonjs/utils/object_values.d.ts +1 -1
- package/dist/commonjs/utils/object_values.js +3 -2
- package/dist/commonjs/utils/queue_microtask.js +3 -3
- package/dist/commonjs/utils/ranges.js +29 -22
- package/dist/commonjs/utils/reference.d.ts +1 -1
- package/dist/commonjs/utils/reference.js +3 -1
- package/dist/commonjs/utils/request/fetch.d.ts +1 -1
- package/dist/commonjs/utils/request/fetch.js +22 -33
- package/dist/commonjs/utils/request/request_error.js +2 -2
- package/dist/commonjs/utils/request/xhr.d.ts +1 -1
- package/dist/commonjs/utils/request/xhr.js +17 -28
- package/dist/commonjs/utils/retry_promise_with_backoff.d.ts +1 -10
- package/dist/commonjs/utils/retry_promise_with_backoff.js +4 -18
- package/dist/commonjs/utils/slice_uint8array.js +3 -3
- package/dist/commonjs/utils/starts_with.js +3 -3
- package/dist/commonjs/utils/string_parsing.js +18 -16
- package/dist/commonjs/utils/sync_or_async.js +2 -6
- package/dist/commonjs/utils/task_canceller.js +2 -1
- package/dist/commonjs/utils/wrapInPromise.d.ts +1 -1
- package/dist/commonjs/worker_entry_point.js +1 -1
- package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
- package/dist/es2017/compat/add_class_name.js +3 -4
- package/dist/es2017/compat/add_text_track.d.ts +1 -1
- package/dist/es2017/compat/add_text_track.js +2 -3
- package/dist/es2017/compat/browser_compatibility_types.js +7 -13
- package/dist/es2017/compat/browser_detection.js +10 -8
- package/dist/es2017/compat/can_reuse_media_keys.js +1 -1
- package/dist/es2017/compat/change_source_buffer_type.d.ts +1 -1
- package/dist/es2017/compat/eme/close_session.d.ts +1 -1
- package/dist/es2017/compat/eme/close_session.js +13 -17
- package/dist/es2017/compat/eme/custom_key_system_access.d.ts +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.d.ts +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/ie11_media_keys.js +7 -14
- package/dist/es2017/compat/eme/custom_media_keys/index.js +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.js +10 -10
- package/dist/es2017/compat/eme/custom_media_keys/types.d.ts +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.js +9 -5
- package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts +1 -1
- package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +3 -3
- package/dist/es2017/compat/eme/eme-api-implementation.d.ts +3 -3
- package/dist/es2017/compat/eme/eme-api-implementation.js +12 -13
- package/dist/es2017/compat/eme/generate_key_request.d.ts +1 -1
- package/dist/es2017/compat/eme/generate_key_request.js +20 -17
- package/dist/es2017/compat/eme/get_init_data.js +7 -5
- package/dist/es2017/compat/eme/get_uuid_kid_from_keystatus_kid.js +3 -2
- package/dist/es2017/compat/eme/get_webkit_fairplay_initdata.js +13 -12
- package/dist/es2017/compat/eme/load_session.d.ts +1 -1
- package/dist/es2017/compat/enable_audio_track.d.ts +1 -1
- package/dist/es2017/compat/event_listeners.d.ts +4 -4
- package/dist/es2017/compat/event_listeners.js +36 -39
- package/dist/es2017/compat/has_webassembly.js +2 -1
- package/dist/es2017/compat/index.d.ts +36 -0
- package/dist/es2017/compat/index.js +42 -0
- package/dist/es2017/compat/is_codec_supported.js +1 -2
- package/dist/es2017/compat/is_vtt_cue.d.ts +1 -1
- package/dist/es2017/compat/make_vtt_cue.d.ts +1 -1
- package/dist/es2017/compat/on_height_width_change.d.ts +2 -2
- package/dist/es2017/compat/on_height_width_change.js +1 -1
- package/dist/es2017/compat/patch_webkit_source_buffer.js +28 -28
- package/dist/es2017/compat/should_favour_custom_safari_EME.js +2 -2
- package/dist/es2017/compat/should_reload_media_source_on_decipherability_update.js +2 -1
- package/dist/es2017/config.d.ts +1 -1
- package/dist/es2017/core/adaptive/adaptive_representation_selector.d.ts +22 -25
- package/dist/es2017/core/adaptive/adaptive_representation_selector.js +28 -40
- package/dist/es2017/core/adaptive/buffer_based_chooser.d.ts +1 -1
- package/dist/es2017/core/adaptive/buffer_based_chooser.js +12 -14
- package/dist/es2017/core/adaptive/guess_based_chooser.d.ts +6 -6
- package/dist/es2017/core/adaptive/guess_based_chooser.js +7 -8
- package/dist/es2017/core/adaptive/index.d.ts +2 -2
- package/dist/es2017/core/adaptive/network_analyzer.d.ts +6 -6
- package/dist/es2017/core/adaptive/network_analyzer.js +41 -45
- package/dist/es2017/core/adaptive/utils/bandwidth_estimator.js +1 -1
- package/dist/es2017/core/adaptive/utils/ewma.js +2 -1
- package/dist/es2017/core/adaptive/utils/filter_by_bitrate.d.ts +2 -2
- package/dist/es2017/core/adaptive/utils/filter_by_resolution.d.ts +2 -2
- package/dist/es2017/core/adaptive/utils/filter_by_resolution.js +4 -2
- package/dist/es2017/core/adaptive/utils/get_buffer_levels.js +5 -8
- package/dist/es2017/core/adaptive/utils/last_estimate_storage.d.ts +3 -3
- package/dist/es2017/core/adaptive/utils/pending_requests_store.d.ts +5 -5
- package/dist/es2017/core/adaptive/utils/pending_requests_store.js +6 -5
- package/dist/es2017/core/adaptive/utils/representation_score_calculator.d.ts +7 -7
- package/dist/es2017/core/adaptive/utils/representation_score_calculator.js +8 -10
- package/dist/es2017/core/adaptive/utils/select_optimal_representation.d.ts +4 -4
- package/dist/es2017/core/adaptive/utils/select_optimal_representation.js +2 -2
- package/dist/es2017/core/api/debug/buffer_graph.d.ts +28 -0
- package/dist/es2017/core/api/debug/buffer_graph.js +169 -0
- package/dist/es2017/core/api/debug/buffer_size_graph.js +103 -0
- package/dist/es2017/core/api/debug/modules/general_info.d.ts +3 -0
- package/dist/es2017/core/api/debug/modules/general_info.js +188 -0
- package/dist/es2017/core/api/debug/modules/segment_buffer_content.d.ts +4 -0
- package/dist/es2017/core/api/debug/modules/segment_buffer_content.js +122 -0
- package/dist/es2017/core/api/debug/modules/segment_buffer_size.d.ts +3 -0
- package/dist/es2017/core/api/debug/modules/segment_buffer_size.js +35 -0
- package/dist/es2017/core/api/debug/render.d.ts +3 -0
- package/dist/es2017/core/api/debug/render.js +32 -0
- package/dist/es2017/core/api/debug/utils.js +54 -0
- package/dist/es2017/core/api/index.d.ts +20 -0
- package/dist/es2017/core/api/index.js +19 -0
- package/dist/es2017/core/api/option_utils.d.ts +124 -0
- package/dist/es2017/core/api/option_utils.js +315 -0
- package/dist/es2017/core/api/playback_observer.d.ts +521 -0
- package/dist/es2017/core/api/playback_observer.js +770 -0
- package/dist/es2017/core/api/public_api.d.ts +751 -0
- package/dist/es2017/core/api/public_api.js +2346 -0
- package/dist/es2017/core/api/track_management/index.d.ts +18 -0
- package/dist/es2017/core/api/track_management/index.js +18 -0
- package/dist/es2017/core/api/track_management/media_element_tracks_store.d.ts +197 -0
- package/dist/es2017/core/api/track_management/media_element_tracks_store.js +669 -0
- package/dist/es2017/core/api/track_management/track_dispatcher.d.ts +100 -0
- package/dist/es2017/core/api/track_management/track_dispatcher.js +166 -0
- package/dist/es2017/core/api/track_management/tracks_store.d.ts +441 -0
- package/dist/es2017/core/api/track_management/tracks_store.js +981 -0
- package/dist/es2017/core/api/utils.d.ts +66 -0
- package/dist/es2017/core/api/utils.js +167 -0
- package/dist/es2017/core/decrypt/__tests__/__global__/utils.d.ts +178 -0
- package/dist/es2017/core/decrypt/__tests__/__global__/utils.js +363 -0
- package/dist/es2017/core/decrypt/attach_media_keys.d.ts +53 -0
- package/dist/es2017/core/decrypt/attach_media_keys.js +72 -0
- package/dist/es2017/core/decrypt/clear_on_stop.js +40 -0
- package/dist/es2017/core/decrypt/content_decryptor.d.ts +184 -0
- package/dist/es2017/core/decrypt/content_decryptor.js +792 -0
- package/dist/es2017/core/decrypt/create_or_load_session.d.ts +63 -0
- package/dist/es2017/core/decrypt/create_or_load_session.js +75 -0
- package/dist/es2017/core/decrypt/create_session.d.ts +53 -0
- package/dist/es2017/core/decrypt/create_session.js +150 -0
- package/dist/es2017/core/decrypt/dispose_decryption_resources.js +42 -0
- package/dist/es2017/core/decrypt/find_key_system.d.ts +48 -0
- package/dist/es2017/core/decrypt/find_key_system.js +281 -0
- package/dist/es2017/core/decrypt/get_media_keys.d.ts +44 -0
- package/dist/es2017/core/decrypt/get_media_keys.js +100 -0
- package/dist/es2017/core/decrypt/index.d.ts +26 -0
- package/dist/es2017/core/decrypt/index.js +26 -0
- package/dist/es2017/core/decrypt/init_media_keys.d.ts +26 -0
- package/dist/es2017/core/decrypt/session_events_listener.d.ts +75 -0
- package/dist/es2017/core/decrypt/session_events_listener.js +249 -0
- package/dist/es2017/core/decrypt/set_server_certificate.d.ts +51 -0
- package/dist/es2017/core/decrypt/set_server_certificate.js +83 -0
- package/dist/es2017/core/decrypt/types.d.ts +374 -0
- package/dist/es2017/core/decrypt/utils/are_init_values_compatible.js +113 -0
- package/dist/es2017/core/decrypt/utils/check_key_statuses.d.ts +52 -0
- package/dist/es2017/core/decrypt/utils/check_key_statuses.js +165 -0
- package/dist/es2017/core/decrypt/utils/clean_old_loaded_sessions.d.ts +26 -0
- package/dist/es2017/core/decrypt/utils/clean_old_stored_persistent_info.d.ts +32 -0
- package/dist/es2017/core/decrypt/utils/init_data_values_container.d.ts +69 -0
- package/dist/es2017/core/decrypt/utils/init_data_values_container.js +96 -0
- package/dist/es2017/core/decrypt/utils/is_session_usable.d.ts +24 -0
- package/dist/es2017/core/decrypt/utils/is_session_usable.js +49 -0
- package/dist/es2017/core/decrypt/utils/key_id_comparison.js +48 -0
- package/dist/es2017/core/decrypt/utils/key_session_record.d.ts +104 -0
- package/dist/es2017/core/decrypt/utils/key_session_record.js +153 -0
- package/dist/es2017/core/decrypt/utils/loaded_sessions_store.d.ts +215 -0
- package/dist/es2017/core/decrypt/utils/loaded_sessions_store.js +365 -0
- package/dist/es2017/core/decrypt/utils/media_keys_infos_store.d.ts +56 -0
- package/dist/es2017/core/decrypt/utils/media_keys_infos_store.js +44 -0
- package/dist/es2017/core/decrypt/utils/persistent_sessions_store.d.ts +94 -0
- package/dist/es2017/core/decrypt/utils/persistent_sessions_store.js +321 -0
- package/dist/es2017/core/decrypt/utils/serializable_bytes.d.ts +44 -0
- package/dist/es2017/core/decrypt/utils/serializable_bytes.js +46 -0
- package/dist/es2017/core/decrypt/utils/server_certificate_store.d.ts +64 -0
- package/dist/es2017/core/decrypt/utils/server_certificate_store.js +112 -0
- package/dist/es2017/core/fetchers/cdn_prioritizer.d.ts +2 -2
- package/dist/es2017/core/fetchers/cdn_prioritizer.js +6 -5
- package/dist/es2017/core/fetchers/manifest/index.d.ts +1 -1
- package/dist/es2017/core/fetchers/manifest/manifest_fetcher.d.ts +3 -3
- package/dist/es2017/core/fetchers/manifest/manifest_fetcher.js +76 -76
- package/dist/es2017/core/fetchers/segment/index.d.ts +1 -1
- package/dist/es2017/core/fetchers/segment/initialization_segment_cache.d.ts +4 -4
- package/dist/es2017/core/fetchers/segment/initialization_segment_cache.js +1 -1
- package/dist/es2017/core/fetchers/segment/prioritized_segment_fetcher.d.ts +3 -4
- package/dist/es2017/core/fetchers/segment/segment_fetcher.d.ts +12 -12
- package/dist/es2017/core/fetchers/segment/segment_fetcher.js +37 -52
- package/dist/es2017/core/fetchers/segment/segment_fetcher_creator.d.ts +5 -5
- package/dist/es2017/core/fetchers/segment/segment_fetcher_creator.js +3 -5
- package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts +1 -1
- package/dist/es2017/core/fetchers/segment/task_prioritizer.js +21 -22
- package/dist/es2017/core/fetchers/utils/error_selector.d.ts +2 -1
- package/dist/es2017/core/fetchers/utils/error_selector.js +2 -1
- package/dist/es2017/core/fetchers/utils/schedule_request.d.ts +3 -3
- package/dist/es2017/core/fetchers/utils/schedule_request.js +23 -22
- package/dist/es2017/core/init/directfile_content_initializer.d.ts +97 -0
- package/dist/es2017/core/init/directfile_content_initializer.js +238 -0
- package/dist/es2017/core/init/media_source_content_initializer.d.ts +165 -0
- package/dist/es2017/core/init/media_source_content_initializer.js +685 -0
- package/dist/es2017/core/init/multithread/main_thread/multi_thread_content_initializer.d.ts +167 -0
- package/dist/es2017/core/init/multithread/main_thread/multi_thread_content_initializer.js +1317 -0
- package/dist/es2017/core/init/multithread/main_thread/send_message.d.ts +2 -0
- package/dist/es2017/core/init/multithread/main_thread/send_message.js +10 -0
- package/dist/es2017/core/init/multithread/worker/content_preparer.d.ts +92 -0
- package/dist/es2017/core/init/multithread/worker/content_preparer.js +236 -0
- package/dist/es2017/core/init/multithread/worker/globals.d.ts +13 -0
- package/dist/es2017/core/init/multithread/worker/globals.js +18 -0
- package/dist/es2017/core/init/multithread/worker/index.d.ts +2 -0
- package/dist/es2017/core/init/multithread/worker/index.js +2 -0
- package/dist/es2017/core/init/multithread/worker/send_message.d.ts +3 -0
- package/dist/es2017/core/init/multithread/worker/send_message.js +20 -0
- package/dist/es2017/core/init/multithread/worker/track_choice_setter.d.ts +19 -0
- package/dist/es2017/core/init/multithread/worker/track_choice_setter.js +114 -0
- package/dist/es2017/core/init/multithread/worker/worker_playback_observer.d.ts +21 -0
- package/dist/es2017/core/init/multithread/worker/worker_playback_observer.js +43 -0
- package/dist/es2017/core/init/multithread/worker/worker_portal.d.ts +1 -0
- package/dist/es2017/core/init/multithread/worker/worker_portal.js +671 -0
- package/dist/es2017/core/init/multithread/worker/worker_text_displayer_interface.d.ts +64 -0
- package/dist/es2017/core/init/multithread/worker/worker_text_displayer_interface.js +121 -0
- package/dist/es2017/core/init/types.d.ts +226 -0
- package/dist/es2017/core/init/utils/DecipherabilityFreezeDetector.d.ts +54 -0
- package/dist/es2017/core/init/utils/DecipherabilityFreezeDetector.js +93 -0
- package/dist/es2017/core/init/utils/content_time_boundaries_observer.d.ts +192 -0
- package/dist/es2017/core/init/utils/content_time_boundaries_observer.js +468 -0
- package/dist/es2017/core/init/utils/create_content_time_boundaries_observer.d.ts +28 -0
- package/dist/es2017/core/init/utils/create_content_time_boundaries_observer.js +41 -0
- package/dist/es2017/core/init/utils/create_core_playback_observer.d.ts +61 -0
- package/dist/es2017/core/init/utils/create_core_playback_observer.js +122 -0
- package/dist/es2017/core/init/utils/create_media_source.d.ts +37 -0
- package/dist/es2017/core/init/utils/create_media_source.js +103 -0
- package/dist/es2017/core/init/utils/end_of_stream.d.ts +33 -0
- package/dist/es2017/core/init/utils/end_of_stream.js +88 -0
- package/dist/es2017/core/init/utils/get_initial_time.d.ts +76 -0
- package/dist/es2017/core/init/utils/get_initial_time.js +113 -0
- package/dist/es2017/core/init/utils/get_loaded_reference.d.ts +28 -0
- package/dist/es2017/core/init/utils/get_loaded_reference.js +58 -0
- package/dist/es2017/core/init/utils/initial_seek_and_play.d.ts +61 -0
- package/dist/es2017/core/init/utils/initial_seek_and_play.js +206 -0
- package/dist/es2017/core/init/utils/initialize_content_decryption.d.ts +86 -0
- package/dist/es2017/core/init/utils/initialize_content_decryption.js +110 -0
- package/dist/es2017/core/init/utils/main_thread_text_displayer_interface.d.ts +35 -0
- package/dist/es2017/core/init/utils/media_source_duration_updater.js +263 -0
- package/dist/es2017/core/init/utils/rebuffering_controller.d.ts +114 -0
- package/dist/es2017/core/init/utils/rebuffering_controller.js +421 -0
- package/dist/es2017/core/init/utils/stream_events_emitter/are_same_stream_events.js +35 -0
- package/dist/es2017/core/init/utils/stream_events_emitter/index.d.ts +18 -0
- package/dist/es2017/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +25 -0
- package/dist/es2017/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +85 -0
- package/dist/es2017/core/init/utils/stream_events_emitter/stream_events_emitter.d.ts +53 -0
- package/dist/es2017/core/init/utils/stream_events_emitter/stream_events_emitter.js +180 -0
- package/dist/es2017/core/init/utils/stream_events_emitter/types.d.ts +41 -0
- package/dist/es2017/core/init/utils/throw_on_media_error.d.ts +23 -0
- package/dist/es2017/core/init/utils/throw_on_media_error.js +58 -0
- package/dist/es2017/core/segment_buffers/garbage_collector.d.ts +43 -0
- package/dist/es2017/core/segment_buffers/garbage_collector.js +137 -0
- package/dist/es2017/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.d.ts +134 -0
- package/dist/es2017/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.js +259 -0
- package/dist/es2017/core/segment_buffers/implementations/audio_video/index.d.ts +17 -0
- package/dist/es2017/core/segment_buffers/implementations/audio_video/index.js +17 -0
- package/dist/es2017/core/segment_buffers/implementations/index.d.ts +19 -0
- package/dist/es2017/core/segment_buffers/implementations/index.js +18 -0
- package/dist/es2017/core/segment_buffers/implementations/text/index.d.ts +3 -0
- package/dist/es2017/core/segment_buffers/implementations/text/index.js +2 -0
- package/dist/es2017/core/segment_buffers/implementations/text/text_segment_buffer.d.ts +89 -0
- package/dist/es2017/core/segment_buffers/implementations/text/text_segment_buffer.js +152 -0
- package/dist/es2017/core/segment_buffers/implementations/types.d.ts +309 -0
- package/dist/es2017/core/segment_buffers/implementations/types.js +112 -0
- package/dist/es2017/core/segment_buffers/implementations/utils/manual_time_ranges.js +63 -0
- package/dist/es2017/core/segment_buffers/index.d.ts +21 -0
- package/dist/es2017/core/segment_buffers/index.js +21 -0
- package/dist/es2017/core/segment_buffers/inventory/buffered_history.d.ts +89 -0
- package/dist/es2017/core/segment_buffers/inventory/buffered_history.js +90 -0
- package/dist/es2017/core/segment_buffers/inventory/index.d.ts +21 -0
- package/dist/es2017/core/segment_buffers/inventory/index.js +18 -0
- package/dist/es2017/core/segment_buffers/inventory/segment_inventory.d.ts +238 -0
- package/dist/es2017/core/segment_buffers/inventory/segment_inventory.js +863 -0
- package/dist/es2017/core/segment_buffers/inventory/types.d.ts +27 -0
- package/dist/es2017/core/segment_buffers/inventory/utils.d.ts +33 -0
- package/dist/es2017/core/segment_buffers/inventory/utils.js +49 -0
- package/dist/es2017/core/segment_buffers/segment_buffers_store.d.ts +171 -0
- package/dist/es2017/core/segment_buffers/segment_buffers_store.js +281 -0
- package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts +4 -4
- package/dist/es2017/core/stream/adaptation/adaptation_stream.js +32 -43
- package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.d.ts +11 -11
- package/dist/es2017/core/stream/adaptation/get_representations_switch_strategy.js +32 -31
- package/dist/es2017/core/stream/adaptation/types.d.ts +18 -18
- package/dist/es2017/core/stream/index.d.ts +1 -1
- package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.d.ts +5 -5
- package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.js +6 -6
- package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts +19 -20
- package/dist/es2017/core/stream/orchestrator/stream_orchestrator.js +57 -68
- package/dist/es2017/core/stream/period/period_stream.d.ts +5 -5
- package/dist/es2017/core/stream/period/period_stream.js +58 -78
- package/dist/es2017/core/stream/period/types.d.ts +21 -23
- package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.d.ts +13 -13
- package/dist/es2017/core/stream/period/utils/get_adaptation_switch_strategy.js +38 -34
- package/dist/es2017/core/stream/representation/representation_stream.d.ts +5 -5
- package/dist/es2017/core/stream/representation/representation_stream.js +35 -48
- package/dist/es2017/core/stream/representation/types.d.ts +24 -24
- package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.d.ts +9 -9
- package/dist/es2017/core/stream/representation/utils/append_segment_to_buffer.js +14 -13
- package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.d.ts +7 -7
- package/dist/es2017/core/stream/representation/utils/check_for_discontinuity.js +18 -16
- package/dist/es2017/core/stream/representation/utils/downloading_queue.d.ts +10 -10
- package/dist/es2017/core/stream/representation/utils/downloading_queue.js +11 -11
- package/dist/es2017/core/stream/representation/utils/get_buffer_status.d.ts +11 -11
- package/dist/es2017/core/stream/representation/utils/get_buffer_status.js +31 -40
- package/dist/es2017/core/stream/representation/utils/get_needed_segments.d.ts +7 -6
- package/dist/es2017/core/stream/representation/utils/get_needed_segments.js +31 -26
- package/dist/es2017/core/stream/representation/utils/push_init_segment.d.ts +13 -13
- package/dist/es2017/core/stream/representation/utils/push_init_segment.js +9 -8
- package/dist/es2017/core/stream/representation/utils/push_media_segment.d.ts +14 -14
- package/dist/es2017/core/stream/representation/utils/push_media_segment.js +15 -14
- package/dist/es2017/default_config.js +18 -21
- package/dist/es2017/errors/encrypted_media_error.d.ts +2 -2
- package/dist/es2017/errors/encrypted_media_error.js +3 -5
- package/dist/es2017/errors/error_codes.d.ts +2 -2
- package/dist/es2017/errors/error_codes.js +1 -1
- package/dist/es2017/errors/format_error.d.ts +2 -2
- package/dist/es2017/errors/format_error.js +3 -2
- package/dist/es2017/errors/is_known_error.d.ts +1 -1
- package/dist/es2017/errors/is_known_error.js +2 -2
- package/dist/es2017/errors/media_error.d.ts +2 -2
- package/dist/es2017/errors/media_error.js +3 -5
- package/dist/es2017/errors/network_error.d.ts +2 -2
- package/dist/es2017/errors/network_error.js +5 -7
- package/dist/es2017/errors/other_error.d.ts +1 -1
- package/dist/es2017/errors/other_error.js +4 -2
- package/dist/es2017/errors/source_buffer_error.js +2 -4
- package/dist/es2017/experimental/features/local.d.ts +1 -1
- package/dist/es2017/experimental/features/local.js +2 -1
- package/dist/es2017/experimental/features/metaplaylist.d.ts +1 -1
- package/dist/es2017/experimental/features/metaplaylist.js +2 -1
- package/dist/es2017/experimental/features/multi_thread.d.ts +1 -1
- package/dist/es2017/experimental/features/multi_thread.js +2 -1
- package/dist/es2017/experimental/index.d.ts +1 -1
- package/dist/es2017/experimental/index.js +1 -1
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/dash.d.ts +1 -1
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/features/metaplaylist.d.ts +1 -1
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.d.ts +1 -1
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/index.js +2 -2
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/load_and_push_segment.d.ts +3 -3
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.d.ts +2 -2
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +5 -5
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.d.ts +1 -1
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +2 -2
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/types.d.ts +6 -6
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.d.ts +3 -3
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +22 -14
- package/dist/es2017/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +23 -13
- package/dist/es2017/experimental/tools/createMetaplaylist/index.d.ts +1 -1
- package/dist/es2017/experimental/tools/createMetaplaylist/index.js +14 -8
- package/dist/es2017/experimental/tools/index.d.ts +1 -1
- package/dist/es2017/experimental/tools/index.js +1 -1
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/index.d.ts +1 -1
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/index.js +13 -9
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.d.ts +3 -4
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.js +4 -7
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/capabilities.d.ts +1 -1
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/capabilities.js +47 -10
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.d.ts +1 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.js +6 -9
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.d.ts +1 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +14 -22
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts +1 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +18 -22
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +10 -10
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/index.d.ts +1 -1
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts +1 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +7 -6
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.d.ts +1 -1
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.js +11 -6
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts +1 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +3 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts +1 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +4 -4
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/types.d.ts +2 -2
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.d.ts +1 -1
- package/dist/es2017/experimental/tools/mediaCapabilitiesProber/utils.js +7 -8
- package/dist/es2017/features/add_features.d.ts +1 -1
- package/dist/es2017/features/features_object.d.ts +1 -1
- package/dist/es2017/features/features_object.js +3 -4
- package/dist/es2017/features/index.d.ts +1 -1
- package/dist/es2017/features/index.js +1 -1
- package/dist/es2017/features/list/dash.d.ts +1 -1
- package/dist/es2017/features/list/dash.js +4 -3
- package/dist/es2017/features/list/dash_wasm.d.ts +2 -2
- package/dist/es2017/features/list/dash_wasm.js +2 -1
- package/dist/es2017/features/list/debug_element.d.ts +1 -1
- package/dist/es2017/features/list/debug_element.js +1 -1
- package/dist/es2017/features/list/directfile.d.ts +1 -1
- package/dist/es2017/features/list/directfile.js +5 -3
- package/dist/es2017/features/list/eme.d.ts +1 -1
- package/dist/es2017/features/list/eme.js +1 -1
- package/dist/es2017/features/list/html_sami_parser.d.ts +1 -1
- package/dist/es2017/features/list/html_sami_parser.js +1 -1
- package/dist/es2017/features/list/html_srt_parser.d.ts +1 -1
- package/dist/es2017/features/list/html_srt_parser.js +1 -1
- package/dist/es2017/features/list/html_text_buffer.d.ts +1 -1
- package/dist/es2017/features/list/html_text_buffer.js +1 -1
- package/dist/es2017/features/list/html_ttml_parser.d.ts +1 -1
- package/dist/es2017/features/list/html_ttml_parser.js +1 -1
- package/dist/es2017/features/list/html_vtt_parser.d.ts +1 -1
- package/dist/es2017/features/list/html_vtt_parser.js +1 -1
- package/dist/es2017/features/list/media_source_main.d.ts +1 -1
- package/dist/es2017/features/list/media_source_main.js +2 -1
- package/dist/es2017/features/list/native_sami_parser.d.ts +1 -1
- package/dist/es2017/features/list/native_sami_parser.js +1 -1
- package/dist/es2017/features/list/native_srt_parser.d.ts +1 -1
- package/dist/es2017/features/list/native_srt_parser.js +1 -1
- package/dist/es2017/features/list/native_text_buffer.d.ts +1 -1
- package/dist/es2017/features/list/native_text_buffer.js +1 -1
- package/dist/es2017/features/list/native_ttml_parser.d.ts +1 -1
- package/dist/es2017/features/list/native_ttml_parser.js +1 -1
- package/dist/es2017/features/list/native_vtt_parser.d.ts +1 -1
- package/dist/es2017/features/list/native_vtt_parser.js +1 -1
- package/dist/es2017/features/list/smooth.d.ts +1 -1
- package/dist/es2017/features/list/smooth.js +2 -1
- package/dist/es2017/features/types.d.ts +23 -28
- package/dist/es2017/index.d.ts +1 -1
- package/dist/es2017/index.js +1 -3
- package/dist/es2017/manifest/adaptation.d.ts +135 -0
- package/dist/es2017/manifest/adaptation.js +195 -0
- package/dist/es2017/manifest/index.d.ts +25 -15
- package/dist/es2017/manifest/index.js +28 -3
- package/dist/es2017/manifest/manifest.d.ts +388 -0
- package/dist/es2017/manifest/manifest.js +383 -0
- package/dist/es2017/manifest/period.d.ts +106 -0
- package/dist/es2017/manifest/period.js +194 -0
- package/dist/es2017/manifest/representation.d.ts +238 -0
- package/dist/es2017/manifest/representation.js +344 -0
- package/dist/es2017/manifest/representation_index/index.d.ts +18 -0
- package/dist/es2017/manifest/representation_index/static.d.ts +101 -0
- package/dist/es2017/manifest/representation_index/static.js +139 -0
- package/dist/es2017/manifest/representation_index/types.d.ts +420 -0
- package/dist/es2017/manifest/types.d.ts +31 -2
- package/dist/es2017/manifest/types.js +15 -1
- package/dist/es2017/manifest/update_period_in_place.d.ts +52 -0
- package/dist/es2017/manifest/update_period_in_place.js +110 -0
- package/dist/es2017/manifest/update_periods.d.ts +50 -0
- package/dist/es2017/manifest/update_periods.js +192 -0
- package/dist/es2017/manifest/utils.d.ts +49 -11
- package/dist/es2017/manifest/utils.js +88 -46
- package/dist/es2017/minimal.d.ts +1 -1
- package/dist/es2017/minimal.js +1 -6
- package/dist/es2017/mse/main_codec_support_prober.d.ts +1 -1
- package/dist/es2017/mse/main_media_source_interface.d.ts +2 -2
- package/dist/es2017/mse/main_media_source_interface.js +36 -61
- package/dist/es2017/mse/types.d.ts +3 -3
- package/dist/es2017/mse/worker_codec_support_prober.d.ts +1 -1
- package/dist/es2017/mse/worker_media_source_interface.d.ts +4 -4
- package/dist/es2017/mse/worker_media_source_interface.js +19 -21
- package/dist/es2017/multithread_types.d.ts +18 -15
- package/dist/es2017/parsers/containers/isobmff/create_box.d.ts +1 -1
- package/dist/es2017/parsers/containers/isobmff/create_box.js +5 -6
- package/dist/es2017/parsers/containers/isobmff/drm/playready.js +3 -2
- package/dist/es2017/parsers/containers/isobmff/get_box.js +5 -3
- package/dist/es2017/parsers/containers/isobmff/index.d.ts +3 -3
- package/dist/es2017/parsers/containers/isobmff/index.js +4 -4
- package/dist/es2017/parsers/containers/isobmff/read.d.ts +1 -1
- package/dist/es2017/parsers/containers/isobmff/read.js +9 -9
- package/dist/es2017/parsers/containers/isobmff/take_pssh_out.js +5 -4
- package/dist/es2017/parsers/containers/isobmff/utils.js +45 -60
- package/dist/es2017/parsers/containers/matroska/index.d.ts +1 -1
- package/dist/es2017/parsers/containers/matroska/index.js +1 -1
- package/dist/es2017/parsers/containers/matroska/utils.js +29 -42
- package/dist/es2017/parsers/images/bif.js +6 -10
- package/dist/es2017/parsers/manifest/dash/common/attach_trickmode_track.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/convert_supplemental_codecs.js +3 -1
- package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/flatten_overlapping_periods.js +1 -1
- package/dist/es2017/parsers/manifest/dash/common/get_hdr_information.js +12 -4
- package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/get_http_utc-timing_url.js +5 -4
- package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +2 -4
- package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/get_periods_time_infos.js +13 -15
- package/dist/es2017/parsers/manifest/dash/common/index.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/indexes/base.d.ts +5 -5
- package/dist/es2017/parsers/manifest/dash/common/indexes/base.js +31 -36
- package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.d.ts +2 -2
- package/dist/es2017/parsers/manifest/dash/common/indexes/get_init_segment.js +4 -6
- package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.d.ts +4 -4
- package/dist/es2017/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +10 -10
- package/dist/es2017/parsers/manifest/dash/common/indexes/list.d.ts +2 -2
- package/dist/es2017/parsers/manifest/dash/common/indexes/list.js +20 -23
- package/dist/es2017/parsers/manifest/dash/common/indexes/template.d.ts +3 -3
- package/dist/es2017/parsers/manifest/dash/common/indexes/template.js +59 -54
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.d.ts +4 -5
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +11 -14
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +20 -25
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +10 -15
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.d.ts +3 -4
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +27 -43
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts +2 -11
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +2 -49
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.d.ts +8 -9
- package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +69 -77
- package/dist/es2017/parsers/manifest/dash/common/indexes/tokens.js +4 -2
- package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/infer_adaptation_type.js +2 -2
- package/dist/es2017/parsers/manifest/dash/common/manifest_bounds_calculator.js +10 -9
- package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.d.ts +5 -5
- package/dist/es2017/parsers/manifest/dash/common/parse_adaptation_sets.js +66 -61
- package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/common/parse_availability_start_time.js +3 -5
- package/dist/es2017/parsers/manifest/dash/common/parse_mpd.d.ts +6 -6
- package/dist/es2017/parsers/manifest/dash/common/parse_mpd.js +42 -54
- package/dist/es2017/parsers/manifest/dash/common/parse_periods.d.ts +5 -5
- package/dist/es2017/parsers/manifest/dash/common/parse_periods.js +34 -33
- package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.d.ts +5 -5
- package/dist/es2017/parsers/manifest/dash/common/parse_representation_index.js +7 -5
- package/dist/es2017/parsers/manifest/dash/common/parse_representations.d.ts +5 -5
- package/dist/es2017/parsers/manifest/dash/common/parse_representations.js +68 -63
- package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/common/resolve_base_urls.js +3 -5
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.d.ts +23 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +311 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/BaseURL.d.ts +23 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +30 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.d.ts +22 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.d.ts +21 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/EventStream.d.ts +23 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +94 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Initialization.d.ts +21 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +39 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/MPD.d.ts +21 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/MPD.js +144 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Period.d.ts +21 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Period.js +112 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Representation.d.ts +21 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/Representation.js +189 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.d.ts +22 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +89 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentList.d.ts +21 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.d.ts +23 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +73 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.d.ts +21 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.d.ts +23 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +49 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/utils.d.ts +187 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/node_parsers/utils.js +306 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/parse_from_document.d.ts +24 -0
- package/dist/es2017/parsers/manifest/dash/js-parser/parse_from_document.js +106 -0
- package/dist/es2017/parsers/manifest/dash/node_parser_types.d.ts +3 -5
- package/dist/es2017/parsers/manifest/dash/parsers_types.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +18 -29
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +26 -22
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.d.ts +2 -2
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.d.ts +3 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +1 -1
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts +3 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +2 -4
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +4 -2
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +5 -5
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +6 -9
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +15 -13
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.d.ts +3 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +1 -1
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.d.ts +2 -2
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +10 -5
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.d.ts +2 -2
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +18 -11
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.d.ts +2 -2
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +4 -2
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.d.ts +2 -3
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +5 -5
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts +2 -2
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.js +4 -8
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +2 -4
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.d.ts +1 -1
- package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/utils.js +4 -8
- package/dist/es2017/parsers/manifest/local/parse_local_manifest.d.ts +2 -2
- package/dist/es2017/parsers/manifest/local/parse_local_manifest.js +16 -21
- package/dist/es2017/parsers/manifest/local/representation_index.d.ts +2 -2
- package/dist/es2017/parsers/manifest/local/representation_index.js +7 -7
- package/dist/es2017/parsers/manifest/metaplaylist/index.d.ts +1 -1
- package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts +4 -4
- package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.js +43 -41
- package/dist/es2017/parsers/manifest/metaplaylist/representation_index.d.ts +3 -3
- package/dist/es2017/parsers/manifest/metaplaylist/representation_index.js +7 -10
- package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts +2 -2
- package/dist/es2017/parsers/manifest/smooth/create_parser.js +121 -120
- package/dist/es2017/parsers/manifest/smooth/get_codecs.js +3 -3
- package/dist/es2017/parsers/manifest/smooth/index.d.ts +1 -1
- package/dist/es2017/parsers/manifest/smooth/index.js +1 -1
- package/dist/es2017/parsers/manifest/smooth/parse_C_nodes.js +9 -9
- package/dist/es2017/parsers/manifest/smooth/parse_protection_node.js +8 -12
- package/dist/es2017/parsers/manifest/smooth/representation_index.d.ts +3 -3
- package/dist/es2017/parsers/manifest/smooth/representation_index.js +38 -35
- package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.d.ts +1 -1
- package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.js +9 -8
- package/dist/es2017/parsers/manifest/smooth/utils/add_segment_infos.js +7 -10
- package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.d.ts +1 -1
- package/dist/es2017/parsers/manifest/smooth/utils/parseBoolean.js +1 -1
- package/dist/es2017/parsers/manifest/smooth/utils/tokens.d.ts +1 -1
- package/dist/es2017/parsers/manifest/smooth/utils/tokens.js +3 -2
- package/dist/es2017/parsers/manifest/types.d.ts +2 -2
- package/dist/es2017/parsers/manifest/utils/check_manifest_ids.d.ts +1 -1
- package/dist/es2017/parsers/manifest/utils/check_manifest_ids.js +2 -2
- package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.d.ts +2 -3
- package/dist/es2017/parsers/manifest/utils/clear_timeline_from_position.js +7 -11
- package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.d.ts +1 -1
- package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.js +4 -5
- package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.d.ts +1 -1
- package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.js +4 -5
- package/dist/es2017/parsers/manifest/utils/get_maximum_positions.d.ts +2 -2
- package/dist/es2017/parsers/manifest/utils/get_maximum_positions.js +17 -11
- package/dist/es2017/parsers/manifest/utils/get_minimum_position.d.ts +2 -2
- package/dist/es2017/parsers/manifest/utils/get_minimum_position.js +11 -5
- package/dist/es2017/parsers/manifest/utils/index_helpers.js +5 -4
- package/dist/es2017/parsers/manifest/utils/update_segment_timeline.d.ts +1 -1
- package/dist/es2017/parsers/manifest/utils/update_segment_timeline.js +16 -17
- package/dist/es2017/parsers/texttracks/index.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/sami/html.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/sami/html.js +16 -17
- package/dist/es2017/parsers/texttracks/sami/native.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/sami/native.js +17 -11
- package/dist/es2017/parsers/texttracks/srt/html.js +10 -12
- package/dist/es2017/parsers/texttracks/srt/native.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/srt/native.js +7 -1
- package/dist/es2017/parsers/texttracks/srt/parse_cue.js +9 -4
- package/dist/es2017/parsers/texttracks/ttml/get_parameters.js +13 -8
- package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/ttml/get_time_delimiters.js +10 -9
- package/dist/es2017/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +2 -2
- package/dist/es2017/parsers/texttracks/ttml/html/apply_extent.js +7 -3
- package/dist/es2017/parsers/texttracks/ttml/html/apply_font_size.js +5 -4
- package/dist/es2017/parsers/texttracks/ttml/html/apply_line_height.js +1 -1
- package/dist/es2017/parsers/texttracks/ttml/html/apply_origin.js +7 -3
- package/dist/es2017/parsers/texttracks/ttml/html/apply_padding.js +7 -3
- package/dist/es2017/parsers/texttracks/ttml/html/create_element.d.ts +2 -2
- package/dist/es2017/parsers/texttracks/ttml/html/create_element.js +23 -30
- package/dist/es2017/parsers/texttracks/ttml/html/generate_css_test_outline.js +2 -2
- package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/ttml/html/parse_cue.js +4 -5
- package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +23 -39
- package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.d.ts +2 -2
- package/dist/es2017/parsers/texttracks/ttml/native/parse_cue.js +13 -14
- package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/ttml/parse_ttml.d.ts +3 -3
- package/dist/es2017/parsers/texttracks/ttml/parse_ttml.js +19 -22
- package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/ttml/time_parsing.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/ttml/time_parsing.js +2 -2
- package/dist/es2017/parsers/texttracks/ttml/xml_utils.js +1 -2
- package/dist/es2017/parsers/texttracks/types.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/get_cue_blocks.js +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/get_style_blocks.js +1 -2
- package/dist/es2017/parsers/texttracks/webvtt/html/convert_payload_to_html.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/html/create_default_style_elements.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/html/create_style_attribute.js +12 -6
- package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/html/create_styled_element.js +9 -8
- package/dist/es2017/parsers/texttracks/webvtt/html/parse_style_block.js +4 -4
- package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_to_div.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/html/parse_webvtt_to_div.js +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/html/to_html.js +13 -5
- package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_to_cues.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +8 -4
- package/dist/es2017/parsers/texttracks/webvtt/native/set_settings_on_cue.d.ts +1 -1
- package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.d.ts +2 -2
- package/dist/es2017/parsers/texttracks/webvtt/native/to_native_cue.js +2 -2
- package/dist/es2017/parsers/texttracks/webvtt/parse_cue_block.js +8 -7
- package/dist/es2017/parsers/texttracks/webvtt/parse_timestamp.js +2 -1
- package/dist/es2017/parsers/texttracks/webvtt/utils.js +6 -6
- package/dist/es2017/public_types.d.ts +16 -13
- package/dist/es2017/public_types.js +1 -0
- package/dist/es2017/text_displayer/html/html_parsers.js +22 -0
- package/dist/es2017/text_displayer/html/html_text_displayer.d.ts +100 -0
- package/dist/es2017/text_displayer/html/html_text_displayer.js +311 -0
- package/dist/es2017/text_displayer/html/text_track_cues_store.d.ts +65 -0
- package/dist/es2017/text_displayer/html/text_track_cues_store.js +358 -0
- package/dist/es2017/text_displayer/html/update_proportional_elements.js +62 -0
- package/dist/es2017/text_displayer/html/utils.js +107 -0
- package/dist/es2017/text_displayer/index.d.ts +2 -0
- package/dist/es2017/text_displayer/manual_time_ranges.js +48 -0
- package/dist/es2017/text_displayer/native/native_parsers.d.ts +11 -0
- package/dist/es2017/text_displayer/native/native_parsers.js +22 -0
- package/dist/es2017/text_displayer/native/native_text_displayer.d.ts +56 -0
- package/dist/es2017/text_displayer/native/native_text_displayer.js +203 -0
- package/dist/es2017/text_displayer/types.d.ts +74 -0
- package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.d.ts +2 -2
- package/dist/es2017/tools/TextTrackRenderer/text_track_renderer.js +9 -11
- package/dist/es2017/tools/index.d.ts +1 -1
- package/dist/es2017/tools/index.js +1 -1
- package/dist/es2017/tools/parseBIFThumbnails/index.js +5 -6
- package/dist/es2017/transports/dash/add_segment_integrity_checks_to_loader.d.ts +1 -1
- package/dist/es2017/transports/dash/add_segment_integrity_checks_to_loader.js +3 -2
- package/dist/es2017/transports/dash/construct_segment_url.d.ts +2 -2
- package/dist/es2017/transports/dash/construct_segment_url.js +3 -7
- package/dist/es2017/transports/dash/extract_complete_chunks.js +2 -2
- package/dist/es2017/transports/dash/get_events_out_of_emsgs.d.ts +2 -2
- package/dist/es2017/transports/dash/get_events_out_of_emsgs.js +10 -12
- package/dist/es2017/transports/dash/init_segment_loader.d.ts +3 -3
- package/dist/es2017/transports/dash/init_segment_loader.js +23 -29
- package/dist/es2017/transports/dash/low_latency_segment_loader.d.ts +2 -2
- package/dist/es2017/transports/dash/low_latency_segment_loader.js +10 -13
- package/dist/es2017/transports/dash/manifest_parser.d.ts +2 -2
- package/dist/es2017/transports/dash/manifest_parser.js +32 -68
- package/dist/es2017/transports/dash/pipelines.d.ts +1 -1
- package/dist/es2017/transports/dash/pipelines.js +12 -15
- package/dist/es2017/transports/dash/segment_loader.d.ts +4 -4
- package/dist/es2017/transports/dash/segment_loader.js +23 -31
- package/dist/es2017/transports/dash/segment_parser.d.ts +2 -2
- package/dist/es2017/transports/dash/segment_parser.js +25 -40
- package/dist/es2017/transports/dash/text_loader.d.ts +2 -2
- package/dist/es2017/transports/dash/text_loader.js +20 -19
- package/dist/es2017/transports/dash/text_parser.d.ts +2 -2
- package/dist/es2017/transports/dash/text_parser.js +26 -44
- package/dist/es2017/transports/index.d.ts +1 -1
- package/dist/es2017/transports/index.js +1 -1
- package/dist/es2017/transports/local/pipelines.d.ts +1 -1
- package/dist/es2017/transports/local/pipelines.js +9 -14
- package/dist/es2017/transports/local/segment_loader.d.ts +3 -3
- package/dist/es2017/transports/local/segment_loader.js +6 -14
- package/dist/es2017/transports/local/segment_parser.d.ts +1 -1
- package/dist/es2017/transports/local/segment_parser.js +14 -24
- package/dist/es2017/transports/local/text_parser.d.ts +1 -1
- package/dist/es2017/transports/local/text_parser.js +18 -36
- package/dist/es2017/transports/metaplaylist/manifest_loader.d.ts +4 -4
- package/dist/es2017/transports/metaplaylist/manifest_loader.js +6 -8
- package/dist/es2017/transports/metaplaylist/pipelines.d.ts +1 -1
- package/dist/es2017/transports/metaplaylist/pipelines.js +24 -35
- package/dist/es2017/transports/smooth/extract_timings_infos.d.ts +2 -2
- package/dist/es2017/transports/smooth/extract_timings_infos.js +19 -17
- package/dist/es2017/transports/smooth/is_mp4_embedded_track.d.ts +1 -1
- package/dist/es2017/transports/smooth/is_mp4_embedded_track.js +1 -1
- package/dist/es2017/transports/smooth/isobmff/create_audio_init_segment.d.ts +1 -0
- package/dist/es2017/transports/smooth/isobmff/create_audio_init_segment.js +4 -3
- package/dist/es2017/transports/smooth/isobmff/create_boxes.js +32 -23
- package/dist/es2017/transports/smooth/isobmff/create_init_segment.js +2 -2
- package/dist/es2017/transports/smooth/isobmff/create_traf_box.js +2 -2
- package/dist/es2017/transports/smooth/isobmff/get_aaces_header.js +16 -4
- package/dist/es2017/transports/smooth/isobmff/parse_tfrf.js +2 -2
- package/dist/es2017/transports/smooth/isobmff/parse_tfxd.js +1 -1
- package/dist/es2017/transports/smooth/isobmff/patch_segment.js +11 -12
- package/dist/es2017/transports/smooth/pipelines.d.ts +1 -1
- package/dist/es2017/transports/smooth/pipelines.js +61 -84
- package/dist/es2017/transports/smooth/segment_loader.d.ts +3 -3
- package/dist/es2017/transports/smooth/segment_loader.js +29 -44
- package/dist/es2017/transports/smooth/utils.d.ts +4 -4
- package/dist/es2017/transports/smooth/utils.js +6 -10
- package/dist/es2017/transports/types.d.ts +27 -22
- package/dist/es2017/transports/utils/byte_range.js +2 -1
- package/dist/es2017/transports/utils/call_custom_manifest_loader.d.ts +3 -3
- package/dist/es2017/transports/utils/call_custom_manifest_loader.js +8 -10
- package/dist/es2017/transports/utils/check_isobmff_integrity.js +3 -3
- package/dist/es2017/transports/utils/find_complete_box.js +2 -3
- package/dist/es2017/transports/utils/generate_manifest_loader.d.ts +3 -3
- package/dist/es2017/transports/utils/generate_manifest_loader.js +6 -12
- package/dist/es2017/transports/utils/get_isobmff_timing_infos.d.ts +2 -2
- package/dist/es2017/transports/utils/get_isobmff_timing_infos.js +11 -12
- package/dist/es2017/transports/utils/infer_segment_container.d.ts +1 -1
- package/dist/es2017/transports/utils/infer_segment_container.js +3 -1
- package/dist/es2017/transports/utils/parse_text_track.d.ts +4 -4
- package/dist/es2017/transports/utils/parse_text_track.js +16 -6
- package/dist/es2017/utils/array_includes.js +6 -2
- package/dist/es2017/utils/assert.js +6 -3
- package/dist/es2017/utils/base64.js +29 -87
- package/dist/es2017/utils/byte_parsing.js +56 -64
- package/dist/es2017/utils/cancellable_sleep.d.ts +1 -1
- package/dist/es2017/utils/create_cancellable_promise.d.ts +1 -1
- package/dist/es2017/utils/deep_merge.js +4 -4
- package/dist/es2017/utils/event_emitter.d.ts +1 -1
- package/dist/es2017/utils/event_emitter.js +2 -1
- package/dist/es2017/utils/get_fuzzed_delay.js +1 -1
- package/dist/es2017/utils/global_scope.d.ts +1 -1
- package/dist/es2017/utils/global_scope.js +3 -10
- package/dist/es2017/utils/hash_buffer.js +1 -1
- package/dist/es2017/utils/languages/normalize.js +5 -5
- package/dist/es2017/utils/logger.js +22 -12
- package/dist/es2017/utils/object_assign.d.ts +3 -6
- package/dist/es2017/utils/object_assign.js +7 -5
- package/dist/es2017/utils/object_values.d.ts +1 -1
- package/dist/es2017/utils/object_values.js +4 -4
- package/dist/es2017/utils/queue_microtask.js +3 -3
- package/dist/es2017/utils/ranges.js +29 -22
- package/dist/es2017/utils/reference.d.ts +1 -1
- package/dist/es2017/utils/reference.js +3 -1
- package/dist/es2017/utils/request/fetch.d.ts +1 -1
- package/dist/es2017/utils/request/fetch.js +23 -24
- package/dist/es2017/utils/request/request_error.js +2 -2
- package/dist/es2017/utils/request/xhr.d.ts +1 -1
- package/dist/es2017/utils/request/xhr.js +17 -19
- package/dist/es2017/utils/retry_promise_with_backoff.d.ts +1 -10
- package/dist/es2017/utils/retry_promise_with_backoff.js +3 -15
- package/dist/es2017/utils/slice_uint8array.js +3 -3
- package/dist/es2017/utils/starts_with.js +3 -3
- package/dist/es2017/utils/string_parsing.js +18 -16
- package/dist/es2017/utils/sync_or_async.js +2 -6
- package/dist/es2017/utils/task_canceller.js +2 -1
- package/dist/es2017/utils/wrapInPromise.d.ts +1 -1
- package/dist/es2017/worker_entry_point.js +2 -2
- package/dist/rx-player.js +45081 -45466
- package/dist/rx-player.min.js +1 -1
- package/dist/worker.js +3 -8
- package/package.json +9 -32
- package/.editorconfig +0 -22
- package/.eslintrc.js +0 -335
- package/.github/workflows/checks.yml +0 -97
- package/.github/workflows/perfs.yml +0 -24
- package/.github/workflows/sonarcloud_analysis.yml +0 -20
- package/.prettierrc +0 -4
- package/CONTRIBUTING.md +0 -264
- package/FILES.md +0 -192
- package/dist/commonjs/core/main/common/DecipherabilityFreezeDetector.d.ts +0 -79
- package/dist/commonjs/core/main/common/DecipherabilityFreezeDetector.js +0 -127
- package/dist/commonjs/core/main/common/content_time_boundaries_observer.d.ts +0 -191
- package/dist/commonjs/core/main/common/content_time_boundaries_observer.js +0 -519
- package/dist/commonjs/core/main/common/create_content_time_boundaries_observer.d.ts +0 -27
- package/dist/commonjs/core/main/common/create_content_time_boundaries_observer.js +0 -48
- package/dist/commonjs/core/main/common/get_buffered_data_per_media_buffer.d.ts +0 -14
- package/dist/commonjs/core/main/common/get_buffered_data_per_media_buffer.js +0 -37
- package/dist/commonjs/core/main/worker/content_preparer.d.ts +0 -93
- package/dist/commonjs/core/main/worker/content_preparer.js +0 -273
- package/dist/commonjs/core/main/worker/globals.d.ts +0 -13
- package/dist/commonjs/core/main/worker/globals.js +0 -26
- package/dist/commonjs/core/main/worker/index.d.ts +0 -2
- package/dist/commonjs/core/main/worker/index.js +0 -4
- package/dist/commonjs/core/main/worker/send_message.d.ts +0 -3
- package/dist/commonjs/core/main/worker/send_message.js +0 -25
- package/dist/commonjs/core/main/worker/track_choice_setter.d.ts +0 -19
- package/dist/commonjs/core/main/worker/track_choice_setter.js +0 -140
- package/dist/commonjs/core/main/worker/worker_main.d.ts +0 -1
- package/dist/commonjs/core/main/worker/worker_main.js +0 -795
- package/dist/commonjs/core/main/worker/worker_text_displayer_interface.d.ts +0 -64
- package/dist/commonjs/core/main/worker/worker_text_displayer_interface.js +0 -126
- package/dist/commonjs/core/segment_sinks/garbage_collector.d.ts +0 -43
- package/dist/commonjs/core/segment_sinks/garbage_collector.js +0 -226
- package/dist/commonjs/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.d.ts +0 -135
- package/dist/commonjs/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.js +0 -358
- package/dist/commonjs/core/segment_sinks/implementations/audio_video/index.d.ts +0 -17
- package/dist/commonjs/core/segment_sinks/implementations/index.d.ts +0 -19
- package/dist/commonjs/core/segment_sinks/implementations/index.js +0 -35
- package/dist/commonjs/core/segment_sinks/implementations/text/index.d.ts +0 -3
- package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_buffer.d.ts +0 -90
- package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_buffer.js +0 -257
- package/dist/commonjs/core/segment_sinks/implementations/types.d.ts +0 -307
- package/dist/commonjs/core/segment_sinks/implementations/types.js +0 -117
- package/dist/commonjs/core/segment_sinks/index.d.ts +0 -21
- package/dist/commonjs/core/segment_sinks/index.js +0 -28
- package/dist/commonjs/core/segment_sinks/inventory/buffered_history.d.ts +0 -89
- package/dist/commonjs/core/segment_sinks/inventory/index.d.ts +0 -21
- package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.d.ts +0 -238
- package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.js +0 -917
- package/dist/commonjs/core/segment_sinks/inventory/types.d.ts +0 -27
- package/dist/commonjs/core/segment_sinks/inventory/utils.d.ts +0 -33
- package/dist/commonjs/core/segment_sinks/inventory/utils.js +0 -53
- package/dist/commonjs/core/segment_sinks/segment_buffers_store.d.ts +0 -171
- package/dist/commonjs/core/segment_sinks/segment_buffers_store.js +0 -288
- package/dist/commonjs/core/types.d.ts +0 -8
- package/dist/commonjs/main_thread/api/debug/buffer_graph.d.ts +0 -28
- package/dist/commonjs/main_thread/api/debug/buffer_graph.js +0 -168
- package/dist/commonjs/main_thread/api/debug/buffer_size_graph.js +0 -131
- package/dist/commonjs/main_thread/api/debug/modules/general_info.d.ts +0 -3
- package/dist/commonjs/main_thread/api/debug/modules/general_info.js +0 -236
- package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.d.ts +0 -4
- package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.js +0 -127
- package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_size.d.ts +0 -3
- package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_size.js +0 -38
- package/dist/commonjs/main_thread/api/debug/render.d.ts +0 -3
- package/dist/commonjs/main_thread/api/index.d.ts +0 -17
- package/dist/commonjs/main_thread/api/index.js +0 -19
- package/dist/commonjs/main_thread/api/option_utils.d.ts +0 -124
- package/dist/commonjs/main_thread/api/option_utils.js +0 -335
- package/dist/commonjs/main_thread/api/public_api.d.ts +0 -751
- package/dist/commonjs/main_thread/api/public_api.js +0 -2518
- package/dist/commonjs/main_thread/api/utils.d.ts +0 -66
- package/dist/commonjs/main_thread/api/utils.js +0 -178
- package/dist/commonjs/main_thread/decrypt/__tests__/__global__/utils.d.ts +0 -184
- package/dist/commonjs/main_thread/decrypt/__tests__/__global__/utils.js +0 -439
- package/dist/commonjs/main_thread/decrypt/attach_media_keys.d.ts +0 -53
- package/dist/commonjs/main_thread/decrypt/attach_media_keys.js +0 -128
- package/dist/commonjs/main_thread/decrypt/clear_on_stop.js +0 -43
- package/dist/commonjs/main_thread/decrypt/content_decryptor.d.ts +0 -185
- package/dist/commonjs/main_thread/decrypt/content_decryptor.js +0 -1053
- package/dist/commonjs/main_thread/decrypt/create_or_load_session.d.ts +0 -64
- package/dist/commonjs/main_thread/decrypt/create_or_load_session.js +0 -135
- package/dist/commonjs/main_thread/decrypt/create_session.d.ts +0 -54
- package/dist/commonjs/main_thread/decrypt/create_session.js +0 -215
- package/dist/commonjs/main_thread/decrypt/dispose_decryption_resources.js +0 -90
- package/dist/commonjs/main_thread/decrypt/find_key_system.d.ts +0 -48
- package/dist/commonjs/main_thread/decrypt/find_key_system.js +0 -375
- package/dist/commonjs/main_thread/decrypt/get_media_keys.d.ts +0 -44
- package/dist/commonjs/main_thread/decrypt/get_media_keys.js +0 -165
- package/dist/commonjs/main_thread/decrypt/index.d.ts +0 -26
- package/dist/commonjs/main_thread/decrypt/init_media_keys.d.ts +0 -26
- package/dist/commonjs/main_thread/decrypt/session_events_listener.d.ts +0 -75
- package/dist/commonjs/main_thread/decrypt/session_events_listener.js +0 -325
- package/dist/commonjs/main_thread/decrypt/set_server_certificate.d.ts +0 -51
- package/dist/commonjs/main_thread/decrypt/set_server_certificate.js +0 -145
- package/dist/commonjs/main_thread/decrypt/types.d.ts +0 -374
- package/dist/commonjs/main_thread/decrypt/utils/are_init_values_compatible.js +0 -144
- package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.d.ts +0 -52
- package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.js +0 -211
- package/dist/commonjs/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts +0 -26
- package/dist/commonjs/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts +0 -32
- package/dist/commonjs/main_thread/decrypt/utils/init_data_values_container.d.ts +0 -69
- package/dist/commonjs/main_thread/decrypt/utils/init_data_values_container.js +0 -137
- package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.d.ts +0 -24
- package/dist/commonjs/main_thread/decrypt/utils/is_session_usable.js +0 -51
- package/dist/commonjs/main_thread/decrypt/utils/key_session_record.d.ts +0 -104
- package/dist/commonjs/main_thread/decrypt/utils/key_session_record.js +0 -189
- package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.d.ts +0 -213
- package/dist/commonjs/main_thread/decrypt/utils/loaded_sessions_store.js +0 -518
- package/dist/commonjs/main_thread/decrypt/utils/media_keys_infos_store.d.ts +0 -56
- package/dist/commonjs/main_thread/decrypt/utils/media_keys_infos_store.js +0 -45
- package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts +0 -94
- package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.js +0 -356
- package/dist/commonjs/main_thread/decrypt/utils/serializable_bytes.d.ts +0 -44
- package/dist/commonjs/main_thread/decrypt/utils/serializable_bytes.js +0 -50
- package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.d.ts +0 -64
- package/dist/commonjs/main_thread/decrypt/utils/server_certificate_store.js +0 -123
- package/dist/commonjs/main_thread/init/directfile_content_initializer.d.ts +0 -97
- package/dist/commonjs/main_thread/init/directfile_content_initializer.js +0 -264
- package/dist/commonjs/main_thread/init/media_source_content_initializer.d.ts +0 -166
- package/dist/commonjs/main_thread/init/media_source_content_initializer.js +0 -897
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts +0 -167
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +0 -1452
- package/dist/commonjs/main_thread/init/send_message.d.ts +0 -2
- package/dist/commonjs/main_thread/init/send_message.js +0 -13
- package/dist/commonjs/main_thread/init/types.d.ts +0 -221
- package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.d.ts +0 -83
- package/dist/commonjs/main_thread/init/utils/create_core_playback_observer.js +0 -105
- package/dist/commonjs/main_thread/init/utils/create_media_source.d.ts +0 -37
- package/dist/commonjs/main_thread/init/utils/create_media_source.js +0 -106
- package/dist/commonjs/main_thread/init/utils/get_initial_time.d.ts +0 -76
- package/dist/commonjs/main_thread/init/utils/get_initial_time.js +0 -109
- package/dist/commonjs/main_thread/init/utils/get_loaded_reference.d.ts +0 -28
- package/dist/commonjs/main_thread/init/utils/get_loaded_reference.js +0 -62
- package/dist/commonjs/main_thread/init/utils/initial_seek_and_play.d.ts +0 -61
- package/dist/commonjs/main_thread/init/utils/initial_seek_and_play.js +0 -207
- package/dist/commonjs/main_thread/init/utils/initialize_content_decryption.d.ts +0 -87
- package/dist/commonjs/main_thread/init/utils/initialize_content_decryption.js +0 -119
- package/dist/commonjs/main_thread/init/utils/main_thread_text_displayer_interface.d.ts +0 -35
- package/dist/commonjs/main_thread/init/utils/rebuffering_controller.d.ts +0 -114
- package/dist/commonjs/main_thread/init/utils/rebuffering_controller.js +0 -450
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/are_same_stream_events.js +0 -35
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/index.d.ts +0 -18
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +0 -25
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +0 -98
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +0 -53
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/stream_events_emitter.js +0 -230
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/types.d.ts +0 -41
- package/dist/commonjs/main_thread/init/utils/throw_on_media_error.d.ts +0 -23
- package/dist/commonjs/main_thread/init/utils/throw_on_media_error.js +0 -66
- package/dist/commonjs/main_thread/text_displayer/html/html_parsers.js +0 -25
- package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.d.ts +0 -100
- package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.js +0 -318
- package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.d.ts +0 -65
- package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.js +0 -378
- package/dist/commonjs/main_thread/text_displayer/html/update_proportional_elements.js +0 -64
- package/dist/commonjs/main_thread/text_displayer/html/utils.js +0 -119
- package/dist/commonjs/main_thread/text_displayer/index.d.ts +0 -2
- package/dist/commonjs/main_thread/text_displayer/manual_time_ranges.js +0 -52
- package/dist/commonjs/main_thread/text_displayer/native/native_parsers.d.ts +0 -11
- package/dist/commonjs/main_thread/text_displayer/native/native_parsers.js +0 -25
- package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.d.ts +0 -56
- package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.js +0 -207
- package/dist/commonjs/main_thread/text_displayer/types.d.ts +0 -71
- package/dist/commonjs/main_thread/text_displayer/types.js +0 -2
- package/dist/commonjs/main_thread/tracks_store/index.d.ts +0 -20
- package/dist/commonjs/main_thread/tracks_store/media_element_tracks_store.d.ts +0 -197
- package/dist/commonjs/main_thread/tracks_store/media_element_tracks_store.js +0 -691
- package/dist/commonjs/main_thread/tracks_store/track_dispatcher.d.ts +0 -101
- package/dist/commonjs/main_thread/tracks_store/track_dispatcher.js +0 -198
- package/dist/commonjs/main_thread/tracks_store/tracks_store.d.ts +0 -448
- package/dist/commonjs/main_thread/tracks_store/tracks_store.js +0 -1096
- package/dist/commonjs/main_thread/types.d.ts +0 -5
- package/dist/commonjs/main_thread/types.js +0 -2
- package/dist/commonjs/manifest/classes/adaptation.d.ts +0 -134
- package/dist/commonjs/manifest/classes/adaptation.js +0 -237
- package/dist/commonjs/manifest/classes/index.d.ts +0 -25
- package/dist/commonjs/manifest/classes/index.js +0 -46
- package/dist/commonjs/manifest/classes/manifest.d.ts +0 -391
- package/dist/commonjs/manifest/classes/manifest.js +0 -494
- package/dist/commonjs/manifest/classes/period.d.ts +0 -106
- package/dist/commonjs/manifest/classes/period.js +0 -235
- package/dist/commonjs/manifest/classes/representation.d.ts +0 -238
- package/dist/commonjs/manifest/classes/representation.js +0 -382
- package/dist/commonjs/manifest/classes/representation_index/index.d.ts +0 -18
- package/dist/commonjs/manifest/classes/representation_index/static.d.ts +0 -101
- package/dist/commonjs/manifest/classes/representation_index/static.js +0 -147
- package/dist/commonjs/manifest/classes/representation_index/types.d.ts +0 -420
- package/dist/commonjs/manifest/classes/types.d.ts +0 -29
- package/dist/commonjs/manifest/classes/types.js +0 -33
- package/dist/commonjs/manifest/classes/update_period_in_place.d.ts +0 -53
- package/dist/commonjs/manifest/classes/update_period_in_place.js +0 -172
- package/dist/commonjs/manifest/classes/update_periods.d.ts +0 -50
- package/dist/commonjs/manifest/classes/update_periods.js +0 -229
- package/dist/commonjs/manifest/classes/utils.d.ts +0 -39
- package/dist/commonjs/manifest/classes/utils.js +0 -54
- package/dist/commonjs/mse/utils/end_of_stream.d.ts +0 -33
- package/dist/commonjs/mse/utils/end_of_stream.js +0 -114
- package/dist/commonjs/mse/utils/media_source_duration_updater.js +0 -272
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/index.d.ts +0 -17
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/index.js +0 -19
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts +0 -24
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.js +0 -400
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.d.ts +0 -24
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.js +0 -33
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.js +0 -70
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.d.ts +0 -22
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.js +0 -118
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.js +0 -154
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.d.ts +0 -22
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.js +0 -70
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.js +0 -221
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Period.js +0 -179
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts +0 -22
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.js +0 -256
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.js +0 -152
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.d.ts +0 -22
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.js +0 -60
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.d.ts +0 -24
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.js +0 -125
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.d.ts +0 -22
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.js +0 -36
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.d.ts +0 -24
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.js +0 -82
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +0 -176
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +0 -382
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.d.ts +0 -24
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.js +0 -142
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.js +0 -374
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/BaseURL.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/BaseURL.js +0 -32
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.d.ts +0 -22
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.d.ts +0 -21
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/EventStream.js +0 -119
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Initialization.d.ts +0 -21
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Initialization.js +0 -44
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts +0 -21
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/MPD.js +0 -181
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts +0 -21
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Period.js +0 -138
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts +0 -21
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Representation.js +0 -230
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.d.ts +0 -22
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.js +0 -126
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentList.d.ts +0 -21
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.js +0 -102
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.d.ts +0 -21
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.d.ts +0 -23
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.js +0 -56
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +0 -169
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.js +0 -346
- package/dist/commonjs/parsers/manifest/dash/native-parser/parse_from_document.d.ts +0 -24
- package/dist/commonjs/parsers/manifest/dash/native-parser/parse_from_document.js +0 -136
- package/dist/commonjs/playback_observer/index.d.ts +0 -6
- package/dist/commonjs/playback_observer/index.js +0 -5
- package/dist/commonjs/playback_observer/media_element_playback_observer.d.ts +0 -203
- package/dist/commonjs/playback_observer/media_element_playback_observer.js +0 -685
- package/dist/commonjs/playback_observer/types.d.ts +0 -223
- package/dist/commonjs/playback_observer/types.js +0 -2
- package/dist/commonjs/playback_observer/utils/generate_read_only_observer.d.ts +0 -11
- package/dist/commonjs/playback_observer/utils/generate_read_only_observer.js +0 -44
- package/dist/commonjs/playback_observer/utils/observation_position.d.ts +0 -87
- package/dist/commonjs/playback_observer/utils/observation_position.js +0 -88
- package/dist/commonjs/playback_observer/worker_playback_observer.d.ts +0 -72
- package/dist/commonjs/playback_observer/worker_playback_observer.js +0 -49
- package/dist/commonjs/utils/xml-parser.d.ts +0 -70
- package/dist/commonjs/utils/xml-parser.js +0 -357
- package/dist/es2017/core/main/common/DecipherabilityFreezeDetector.d.ts +0 -79
- package/dist/es2017/core/main/common/DecipherabilityFreezeDetector.js +0 -91
- package/dist/es2017/core/main/common/content_time_boundaries_observer.d.ts +0 -191
- package/dist/es2017/core/main/common/content_time_boundaries_observer.js +0 -467
- package/dist/es2017/core/main/common/create_content_time_boundaries_observer.d.ts +0 -27
- package/dist/es2017/core/main/common/create_content_time_boundaries_observer.js +0 -41
- package/dist/es2017/core/main/common/get_buffered_data_per_media_buffer.d.ts +0 -14
- package/dist/es2017/core/main/common/get_buffered_data_per_media_buffer.js +0 -34
- package/dist/es2017/core/main/worker/content_preparer.d.ts +0 -93
- package/dist/es2017/core/main/worker/content_preparer.js +0 -239
- package/dist/es2017/core/main/worker/globals.d.ts +0 -13
- package/dist/es2017/core/main/worker/globals.js +0 -18
- package/dist/es2017/core/main/worker/index.d.ts +0 -2
- package/dist/es2017/core/main/worker/index.js +0 -2
- package/dist/es2017/core/main/worker/send_message.d.ts +0 -3
- package/dist/es2017/core/main/worker/send_message.js +0 -20
- package/dist/es2017/core/main/worker/track_choice_setter.d.ts +0 -19
- package/dist/es2017/core/main/worker/track_choice_setter.js +0 -114
- package/dist/es2017/core/main/worker/worker_main.d.ts +0 -1
- package/dist/es2017/core/main/worker/worker_main.js +0 -710
- package/dist/es2017/core/main/worker/worker_text_displayer_interface.d.ts +0 -64
- package/dist/es2017/core/main/worker/worker_text_displayer_interface.js +0 -120
- package/dist/es2017/core/segment_sinks/garbage_collector.d.ts +0 -43
- package/dist/es2017/core/segment_sinks/garbage_collector.js +0 -143
- package/dist/es2017/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.d.ts +0 -135
- package/dist/es2017/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.js +0 -265
- package/dist/es2017/core/segment_sinks/implementations/audio_video/index.d.ts +0 -17
- package/dist/es2017/core/segment_sinks/implementations/audio_video/index.js +0 -17
- package/dist/es2017/core/segment_sinks/implementations/index.d.ts +0 -19
- package/dist/es2017/core/segment_sinks/implementations/index.js +0 -18
- package/dist/es2017/core/segment_sinks/implementations/text/index.d.ts +0 -3
- package/dist/es2017/core/segment_sinks/implementations/text/index.js +0 -2
- package/dist/es2017/core/segment_sinks/implementations/text/text_segment_buffer.d.ts +0 -90
- package/dist/es2017/core/segment_sinks/implementations/text/text_segment_buffer.js +0 -156
- package/dist/es2017/core/segment_sinks/implementations/types.d.ts +0 -307
- package/dist/es2017/core/segment_sinks/implementations/types.js +0 -112
- package/dist/es2017/core/segment_sinks/implementations/utils/manual_time_ranges.js +0 -63
- package/dist/es2017/core/segment_sinks/index.d.ts +0 -21
- package/dist/es2017/core/segment_sinks/index.js +0 -21
- package/dist/es2017/core/segment_sinks/inventory/buffered_history.d.ts +0 -89
- package/dist/es2017/core/segment_sinks/inventory/buffered_history.js +0 -88
- package/dist/es2017/core/segment_sinks/inventory/index.d.ts +0 -21
- package/dist/es2017/core/segment_sinks/inventory/index.js +0 -18
- package/dist/es2017/core/segment_sinks/inventory/segment_inventory.d.ts +0 -238
- package/dist/es2017/core/segment_sinks/inventory/segment_inventory.js +0 -868
- package/dist/es2017/core/segment_sinks/inventory/types.d.ts +0 -27
- package/dist/es2017/core/segment_sinks/inventory/utils.d.ts +0 -33
- package/dist/es2017/core/segment_sinks/inventory/utils.js +0 -48
- package/dist/es2017/core/segment_sinks/segment_buffers_store.d.ts +0 -171
- package/dist/es2017/core/segment_sinks/segment_buffers_store.js +0 -281
- package/dist/es2017/core/types.d.ts +0 -8
- package/dist/es2017/main_thread/api/debug/buffer_graph.d.ts +0 -28
- package/dist/es2017/main_thread/api/debug/buffer_graph.js +0 -164
- package/dist/es2017/main_thread/api/debug/buffer_size_graph.js +0 -102
- package/dist/es2017/main_thread/api/debug/modules/general_info.d.ts +0 -3
- package/dist/es2017/main_thread/api/debug/modules/general_info.js +0 -192
- package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.d.ts +0 -4
- package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.js +0 -124
- package/dist/es2017/main_thread/api/debug/modules/segment_buffer_size.d.ts +0 -3
- package/dist/es2017/main_thread/api/debug/modules/segment_buffer_size.js +0 -35
- package/dist/es2017/main_thread/api/debug/render.d.ts +0 -3
- package/dist/es2017/main_thread/api/debug/render.js +0 -32
- package/dist/es2017/main_thread/api/debug/utils.js +0 -54
- package/dist/es2017/main_thread/api/index.d.ts +0 -17
- package/dist/es2017/main_thread/api/index.js +0 -17
- package/dist/es2017/main_thread/api/option_utils.d.ts +0 -124
- package/dist/es2017/main_thread/api/option_utils.js +0 -308
- package/dist/es2017/main_thread/api/public_api.d.ts +0 -751
- package/dist/es2017/main_thread/api/public_api.js +0 -2347
- package/dist/es2017/main_thread/api/utils.d.ts +0 -66
- package/dist/es2017/main_thread/api/utils.js +0 -170
- package/dist/es2017/main_thread/decrypt/__tests__/__global__/utils.d.ts +0 -184
- package/dist/es2017/main_thread/decrypt/__tests__/__global__/utils.js +0 -378
- package/dist/es2017/main_thread/decrypt/attach_media_keys.d.ts +0 -53
- package/dist/es2017/main_thread/decrypt/attach_media_keys.js +0 -75
- package/dist/es2017/main_thread/decrypt/clear_on_stop.js +0 -40
- package/dist/es2017/main_thread/decrypt/content_decryptor.d.ts +0 -185
- package/dist/es2017/main_thread/decrypt/content_decryptor.js +0 -799
- package/dist/es2017/main_thread/decrypt/create_or_load_session.d.ts +0 -64
- package/dist/es2017/main_thread/decrypt/create_or_load_session.js +0 -83
- package/dist/es2017/main_thread/decrypt/create_session.d.ts +0 -54
- package/dist/es2017/main_thread/decrypt/create_session.js +0 -150
- package/dist/es2017/main_thread/decrypt/dispose_decryption_resources.js +0 -41
- package/dist/es2017/main_thread/decrypt/find_key_system.d.ts +0 -48
- package/dist/es2017/main_thread/decrypt/find_key_system.js +0 -287
- package/dist/es2017/main_thread/decrypt/get_media_keys.d.ts +0 -44
- package/dist/es2017/main_thread/decrypt/get_media_keys.js +0 -103
- package/dist/es2017/main_thread/decrypt/index.d.ts +0 -26
- package/dist/es2017/main_thread/decrypt/index.js +0 -26
- package/dist/es2017/main_thread/decrypt/init_media_keys.d.ts +0 -26
- package/dist/es2017/main_thread/decrypt/session_events_listener.d.ts +0 -75
- package/dist/es2017/main_thread/decrypt/session_events_listener.js +0 -246
- package/dist/es2017/main_thread/decrypt/set_server_certificate.d.ts +0 -51
- package/dist/es2017/main_thread/decrypt/set_server_certificate.js +0 -82
- package/dist/es2017/main_thread/decrypt/types.d.ts +0 -374
- package/dist/es2017/main_thread/decrypt/utils/are_init_values_compatible.js +0 -141
- package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.d.ts +0 -52
- package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.js +0 -163
- package/dist/es2017/main_thread/decrypt/utils/clean_old_loaded_sessions.d.ts +0 -26
- package/dist/es2017/main_thread/decrypt/utils/clean_old_stored_persistent_info.d.ts +0 -32
- package/dist/es2017/main_thread/decrypt/utils/init_data_values_container.d.ts +0 -69
- package/dist/es2017/main_thread/decrypt/utils/init_data_values_container.js +0 -105
- package/dist/es2017/main_thread/decrypt/utils/is_session_usable.d.ts +0 -24
- package/dist/es2017/main_thread/decrypt/utils/is_session_usable.js +0 -48
- package/dist/es2017/main_thread/decrypt/utils/key_id_comparison.js +0 -48
- package/dist/es2017/main_thread/decrypt/utils/key_session_record.d.ts +0 -104
- package/dist/es2017/main_thread/decrypt/utils/key_session_record.js +0 -152
- package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.d.ts +0 -213
- package/dist/es2017/main_thread/decrypt/utils/loaded_sessions_store.js +0 -365
- package/dist/es2017/main_thread/decrypt/utils/media_keys_infos_store.d.ts +0 -56
- package/dist/es2017/main_thread/decrypt/utils/media_keys_infos_store.js +0 -43
- package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts +0 -94
- package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.js +0 -325
- package/dist/es2017/main_thread/decrypt/utils/serializable_bytes.d.ts +0 -44
- package/dist/es2017/main_thread/decrypt/utils/serializable_bytes.js +0 -46
- package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.d.ts +0 -64
- package/dist/es2017/main_thread/decrypt/utils/server_certificate_store.js +0 -121
- package/dist/es2017/main_thread/init/directfile_content_initializer.d.ts +0 -97
- package/dist/es2017/main_thread/init/directfile_content_initializer.js +0 -233
- package/dist/es2017/main_thread/init/media_source_content_initializer.d.ts +0 -166
- package/dist/es2017/main_thread/init/media_source_content_initializer.js +0 -691
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts +0 -167
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +0 -1369
- package/dist/es2017/main_thread/init/send_message.d.ts +0 -2
- package/dist/es2017/main_thread/init/send_message.js +0 -10
- package/dist/es2017/main_thread/init/types.d.ts +0 -221
- package/dist/es2017/main_thread/init/utils/create_core_playback_observer.d.ts +0 -83
- package/dist/es2017/main_thread/init/utils/create_core_playback_observer.js +0 -98
- package/dist/es2017/main_thread/init/utils/create_media_source.d.ts +0 -37
- package/dist/es2017/main_thread/init/utils/create_media_source.js +0 -101
- package/dist/es2017/main_thread/init/utils/get_initial_time.d.ts +0 -76
- package/dist/es2017/main_thread/init/utils/get_initial_time.js +0 -106
- package/dist/es2017/main_thread/init/utils/get_loaded_reference.d.ts +0 -28
- package/dist/es2017/main_thread/init/utils/get_loaded_reference.js +0 -59
- package/dist/es2017/main_thread/init/utils/initial_seek_and_play.d.ts +0 -61
- package/dist/es2017/main_thread/init/utils/initial_seek_and_play.js +0 -203
- package/dist/es2017/main_thread/init/utils/initialize_content_decryption.d.ts +0 -87
- package/dist/es2017/main_thread/init/utils/initialize_content_decryption.js +0 -116
- package/dist/es2017/main_thread/init/utils/main_thread_text_displayer_interface.d.ts +0 -35
- package/dist/es2017/main_thread/init/utils/rebuffering_controller.d.ts +0 -114
- package/dist/es2017/main_thread/init/utils/rebuffering_controller.js +0 -426
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/are_same_stream_events.js +0 -33
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/index.d.ts +0 -18
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts +0 -25
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +0 -84
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.d.ts +0 -53
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/stream_events_emitter.js +0 -175
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/types.d.ts +0 -41
- package/dist/es2017/main_thread/init/utils/throw_on_media_error.d.ts +0 -23
- package/dist/es2017/main_thread/init/utils/throw_on_media_error.js +0 -63
- package/dist/es2017/main_thread/text_displayer/html/html_parsers.js +0 -22
- package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.d.ts +0 -100
- package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.js +0 -312
- package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.d.ts +0 -65
- package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.js +0 -358
- package/dist/es2017/main_thread/text_displayer/html/update_proportional_elements.js +0 -61
- package/dist/es2017/main_thread/text_displayer/html/utils.js +0 -111
- package/dist/es2017/main_thread/text_displayer/index.d.ts +0 -2
- package/dist/es2017/main_thread/text_displayer/manual_time_ranges.js +0 -48
- package/dist/es2017/main_thread/text_displayer/native/native_parsers.d.ts +0 -11
- package/dist/es2017/main_thread/text_displayer/native/native_parsers.js +0 -22
- package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.d.ts +0 -56
- package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.js +0 -203
- package/dist/es2017/main_thread/text_displayer/types.d.ts +0 -71
- package/dist/es2017/main_thread/text_displayer/types.js +0 -1
- package/dist/es2017/main_thread/tracks_store/index.d.ts +0 -20
- package/dist/es2017/main_thread/tracks_store/media_element_tracks_store.d.ts +0 -197
- package/dist/es2017/main_thread/tracks_store/media_element_tracks_store.js +0 -663
- package/dist/es2017/main_thread/tracks_store/track_dispatcher.d.ts +0 -101
- package/dist/es2017/main_thread/tracks_store/track_dispatcher.js +0 -175
- package/dist/es2017/main_thread/tracks_store/tracks_store.d.ts +0 -448
- package/dist/es2017/main_thread/tracks_store/tracks_store.js +0 -998
- package/dist/es2017/main_thread/types.d.ts +0 -5
- package/dist/es2017/main_thread/types.js +0 -1
- package/dist/es2017/manifest/classes/adaptation.d.ts +0 -134
- package/dist/es2017/manifest/classes/adaptation.js +0 -193
- package/dist/es2017/manifest/classes/index.d.ts +0 -25
- package/dist/es2017/manifest/classes/index.js +0 -28
- package/dist/es2017/manifest/classes/manifest.d.ts +0 -391
- package/dist/es2017/manifest/classes/manifest.js +0 -381
- package/dist/es2017/manifest/classes/period.d.ts +0 -106
- package/dist/es2017/manifest/classes/period.js +0 -194
- package/dist/es2017/manifest/classes/representation.d.ts +0 -238
- package/dist/es2017/manifest/classes/representation.js +0 -346
- package/dist/es2017/manifest/classes/representation_index/index.d.ts +0 -18
- package/dist/es2017/manifest/classes/representation_index/static.d.ts +0 -101
- package/dist/es2017/manifest/classes/representation_index/static.js +0 -143
- package/dist/es2017/manifest/classes/representation_index/types.d.ts +0 -420
- package/dist/es2017/manifest/classes/types.d.ts +0 -29
- package/dist/es2017/manifest/classes/types.js +0 -30
- package/dist/es2017/manifest/classes/update_period_in_place.d.ts +0 -53
- package/dist/es2017/manifest/classes/update_period_in_place.js +0 -109
- package/dist/es2017/manifest/classes/update_periods.d.ts +0 -50
- package/dist/es2017/manifest/classes/update_periods.js +0 -193
- package/dist/es2017/manifest/classes/utils.d.ts +0 -39
- package/dist/es2017/manifest/classes/utils.js +0 -49
- package/dist/es2017/mse/utils/end_of_stream.d.ts +0 -33
- package/dist/es2017/mse/utils/end_of_stream.js +0 -87
- package/dist/es2017/mse/utils/media_source_duration_updater.js +0 -265
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/index.d.ts +0 -17
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/index.js +0 -17
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts +0 -24
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.js +0 -358
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.d.ts +0 -24
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.js +0 -30
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.js +0 -45
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.d.ts +0 -22
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.js +0 -77
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.js +0 -101
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.d.ts +0 -22
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.js +0 -45
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.js +0 -179
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Period.js +0 -137
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts +0 -22
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.js +0 -214
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.js +0 -111
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.d.ts +0 -22
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.js +0 -41
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.d.ts +0 -24
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.js +0 -84
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.d.ts +0 -22
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.js +0 -33
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.d.ts +0 -24
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.js +0 -57
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +0 -176
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +0 -310
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.d.ts +0 -24
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.js +0 -114
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.js +0 -354
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/BaseURL.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/BaseURL.js +0 -29
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.d.ts +0 -22
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.d.ts +0 -21
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/EventStream.js +0 -100
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Initialization.d.ts +0 -21
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Initialization.js +0 -41
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts +0 -21
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/MPD.js +0 -161
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts +0 -21
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Period.js +0 -118
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts +0 -21
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Representation.js +0 -210
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.d.ts +0 -22
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.js +0 -107
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentList.d.ts +0 -21
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.js +0 -83
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.d.ts +0 -21
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.d.ts +0 -23
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.js +0 -53
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +0 -169
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.js +0 -297
- package/dist/es2017/parsers/manifest/dash/native-parser/parse_from_document.d.ts +0 -24
- package/dist/es2017/parsers/manifest/dash/native-parser/parse_from_document.js +0 -108
- package/dist/es2017/playback_observer/index.d.ts +0 -6
- package/dist/es2017/playback_observer/index.js +0 -2
- package/dist/es2017/playback_observer/media_element_playback_observer.d.ts +0 -203
- package/dist/es2017/playback_observer/media_element_playback_observer.js +0 -678
- package/dist/es2017/playback_observer/types.d.ts +0 -223
- package/dist/es2017/playback_observer/types.js +0 -1
- package/dist/es2017/playback_observer/utils/generate_read_only_observer.d.ts +0 -11
- package/dist/es2017/playback_observer/utils/generate_read_only_observer.js +0 -41
- package/dist/es2017/playback_observer/utils/observation_position.d.ts +0 -87
- package/dist/es2017/playback_observer/utils/observation_position.js +0 -84
- package/dist/es2017/playback_observer/worker_playback_observer.d.ts +0 -72
- package/dist/es2017/playback_observer/worker_playback_observer.js +0 -45
- package/dist/es2017/utils/xml-parser.d.ts +0 -70
- package/dist/es2017/utils/xml-parser.js +0 -322
- package/dist/rx-player.d.ts +0 -3
- package/dist/rx-player.min.d.ts +0 -3
- package/jest.config.js +0 -29
- package/manifest.mpd +0 -149
- package/scripts/README.md +0 -12
- package/scripts/build_demo.mjs +0 -164
- package/scripts/build_wasm_release.sh +0 -65
- package/scripts/bundle_worker.mjs +0 -140
- package/scripts/canal-release.patch +0 -78
- package/scripts/check_nodejs_import_compatibility.js +0 -62
- package/scripts/deploy_new_demo +0 -123
- package/scripts/generate_build.mjs +0 -182
- package/scripts/generate_certificate +0 -19
- package/scripts/generate_demo_list.mjs +0 -127
- package/scripts/generate_documentation_list.mjs +0 -112
- package/scripts/generate_embeds.mjs +0 -143
- package/scripts/generate_standalone_demo.mjs +0 -114
- package/scripts/install_rust_toolchain.sh +0 -147
- package/scripts/launch_static_server.mjs +0 -187
- package/scripts/list-npm-scripts.mjs +0 -204
- package/scripts/make-dev-releases +0 -90
- package/scripts/run_standalone_demo.mjs +0 -33
- package/scripts/start_demo_web_server.mjs +0 -57
- package/scripts/update-version +0 -45
- package/scripts/update_gh-pages_demo +0 -142
- package/scripts/update_gh-pages_doc +0 -106
- package/scripts/utils/display_webpack_errors.mjs +0 -33
- package/scripts/utils/get_human_readable_hours.mjs +0 -17
- package/scripts/utils/project_root_directory.mjs +0 -4
- package/scripts/wasm-strip.mjs +0 -376
- package/sonar-project.properties +0 -7
- package/src/README.md +0 -364
- package/src/__GENERATED_CODE/embedded_dash_wasm.ts +0 -3
- package/src/__GENERATED_CODE/embedded_worker.ts +0 -3
- package/src/__GENERATED_CODE/index.ts +0 -2
- package/src/compat/README.md +0 -35
- package/src/compat/__tests__/add_text_track.test.ts +0 -132
- package/src/compat/__tests__/browser_compatibility_types.test.ts +0 -139
- package/src/compat/__tests__/browser_version.test.ts +0 -86
- package/src/compat/__tests__/can_patch_isobmff.test.ts +0 -50
- package/src/compat/__tests__/can_rely_on_video_visibility_and_size.test.ts +0 -75
- package/src/compat/__tests__/can_reuse_media_keys.test.ts +0 -26
- package/src/compat/__tests__/change_source_buffer_type.test.ts +0 -54
- package/src/compat/__tests__/clear_element_src.test.ts +0 -254
- package/src/compat/__tests__/enable_audio_track.test.ts +0 -340
- package/src/compat/__tests__/is_codec_supported.test.ts +0 -84
- package/src/compat/__tests__/is_seeking_approximate.test.ts +0 -48
- package/src/compat/__tests__/is_vtt_cue.test.ts +0 -73
- package/src/compat/__tests__/make_vtt_cue.test.ts +0 -99
- package/src/compat/__tests__/patch_webkit_source_buffer.test.ts +0 -141
- package/src/compat/__tests__/remove_cue.test.ts +0 -239
- package/src/compat/__tests__/should_favour_custom_safari_EME.test.ts +0 -133
- package/src/compat/__tests__/should_reload_media_source_on_decipherability_update.test.ts +0 -53
- package/src/compat/__tests__/should_renew_media_key_system_access.test.ts +0 -57
- package/src/compat/__tests__/should_unset_media_keys.test.ts +0 -53
- package/src/compat/__tests__/should_validate_metadata.test.ts +0 -53
- package/src/compat/__tests__/should_wait_for_data_before_loaded.test.ts +0 -122
- package/src/compat/__tests__/should_wait_for_have_enough_data.test.ts +0 -38
- package/src/compat/add_class_name.ts +0 -42
- package/src/compat/add_text_track.ts +0 -56
- package/src/compat/browser_compatibility_types.ts +0 -216
- package/src/compat/browser_detection.ts +0 -175
- package/src/compat/browser_version.ts +0 -44
- package/src/compat/can_patch_isobmff.ts +0 -30
- package/src/compat/can_rely_on_video_visibility_and_size.ts +0 -52
- package/src/compat/can_reuse_media_keys.ts +0 -17
- package/src/compat/change_source_buffer_type.ts +0 -69
- package/src/compat/clear_element_src.ts +0 -55
- package/src/compat/eme/close_session.ts +0 -113
- package/src/compat/eme/constants.ts +0 -21
- package/src/compat/eme/custom_key_system_access.ts +0 -67
- package/src/compat/eme/custom_media_keys/ie11_media_keys.ts +0 -200
- package/src/compat/eme/custom_media_keys/index.ts +0 -23
- package/src/compat/eme/custom_media_keys/moz_media_keys_constructor.ts +0 -86
- package/src/compat/eme/custom_media_keys/ms_media_keys_constructor.ts +0 -67
- package/src/compat/eme/custom_media_keys/old_webkit_media_keys.ts +0 -242
- package/src/compat/eme/custom_media_keys/types.ts +0 -61
- package/src/compat/eme/custom_media_keys/webkit_media_keys.ts +0 -306
- package/src/compat/eme/custom_media_keys/webkit_media_keys_constructor.ts +0 -47
- package/src/compat/eme/eme-api-implementation.ts +0 -321
- package/src/compat/eme/generate_key_request.ts +0 -161
- package/src/compat/eme/get_init_data.ts +0 -159
- package/src/compat/eme/get_uuid_kid_from_keystatus_kid.ts +0 -35
- package/src/compat/eme/get_webkit_fairplay_initdata.ts +0 -72
- package/src/compat/eme/index.ts +0 -40
- package/src/compat/eme/load_session.ts +0 -73
- package/src/compat/enable_audio_track.ts +0 -33
- package/src/compat/event_listeners.ts +0 -633
- package/src/compat/get_start_date.ts +0 -46
- package/src/compat/has_issues_with_high_media_source_duration.ts +0 -27
- package/src/compat/has_mse_in_worker.ts +0 -6
- package/src/compat/has_webassembly.ts +0 -7
- package/src/compat/is_codec_supported.ts +0 -67
- package/src/compat/is_debug_mode_enabled.ts +0 -12
- package/src/compat/is_seeking_approximate.ts +0 -32
- package/src/compat/is_vtt_cue.ts +0 -31
- package/src/compat/make_vtt_cue.ts +0 -51
- package/src/compat/on_height_width_change.ts +0 -126
- package/src/compat/patch_webkit_source_buffer.ts +0 -93
- package/src/compat/remove_cue.ts +0 -64
- package/src/compat/should_favour_custom_safari_EME.ts +0 -29
- package/src/compat/should_reload_media_source_on_decipherability_update.ts +0 -31
- package/src/compat/should_renew_media_key_system_access.ts +0 -26
- package/src/compat/should_unset_media_keys.ts +0 -27
- package/src/compat/should_validate_metadata.ts +0 -27
- package/src/compat/should_wait_for_data_before_loaded.ts +0 -35
- package/src/compat/should_wait_for_have_enough_data.ts +0 -17
- package/src/config.ts +0 -26
- package/src/core/README.md +0 -53
- package/src/core/adaptive/README.md +0 -154
- package/src/core/adaptive/__tests__/buffer_based_chooser.test.ts +0 -555
- package/src/core/adaptive/adaptive_representation_selector.ts +0 -849
- package/src/core/adaptive/buffer_based_chooser.ts +0 -266
- package/src/core/adaptive/guess_based_chooser.ts +0 -324
- package/src/core/adaptive/index.ts +0 -46
- package/src/core/adaptive/network_analyzer.ts +0 -437
- package/src/core/adaptive/utils/__tests__/bandwith_estimator.test.ts +0 -132
- package/src/core/adaptive/utils/__tests__/ewma.test.ts +0 -79
- package/src/core/adaptive/utils/__tests__/filter_by_bitrate.test.ts +0 -56
- package/src/core/adaptive/utils/__tests__/filter_by_resolution.test.ts +0 -98
- package/src/core/adaptive/utils/__tests__/get_buffer_levels.test.ts +0 -50
- package/src/core/adaptive/utils/__tests__/select_optimal_representation.test.ts +0 -63
- package/src/core/adaptive/utils/bandwidth_estimator.ts +0 -86
- package/src/core/adaptive/utils/ewma.ts +0 -58
- package/src/core/adaptive/utils/filter_by_bitrate.ts +0 -46
- package/src/core/adaptive/utils/filter_by_resolution.ts +0 -65
- package/src/core/adaptive/utils/get_buffer_levels.ts +0 -55
- package/src/core/adaptive/utils/last_estimate_storage.ts +0 -79
- package/src/core/adaptive/utils/pending_requests_store.ts +0 -157
- package/src/core/adaptive/utils/representation_score_calculator.ts +0 -174
- package/src/core/adaptive/utils/select_optimal_representation.ts +0 -44
- package/src/core/fetchers/README.md +0 -83
- package/src/core/fetchers/cdn_prioritizer.ts +0 -209
- package/src/core/fetchers/index.ts +0 -35
- package/src/core/fetchers/manifest/index.ts +0 -24
- package/src/core/fetchers/manifest/manifest_fetcher.ts +0 -836
- package/src/core/fetchers/segment/__tests__/initialization_segment_cache.test.ts +0 -316
- package/src/core/fetchers/segment/__tests__/task_prioritizer.test.ts +0 -941
- package/src/core/fetchers/segment/index.ts +0 -23
- package/src/core/fetchers/segment/initialization_segment_cache.ts +0 -65
- package/src/core/fetchers/segment/prioritized_segment_fetcher.ts +0 -105
- package/src/core/fetchers/segment/segment_fetcher.ts +0 -528
- package/src/core/fetchers/segment/segment_fetcher_creator.ts +0 -122
- package/src/core/fetchers/segment/task_prioritizer.ts +0 -461
- package/src/core/fetchers/utils/error_selector.ts +0 -34
- package/src/core/fetchers/utils/schedule_request.ts +0 -445
- package/src/core/main/README.md +0 -18
- package/src/core/main/common/DecipherabilityFreezeDetector.ts +0 -147
- package/src/core/main/common/content_time_boundaries_observer.ts +0 -656
- package/src/core/main/common/create_content_time_boundaries_observer.ts +0 -71
- package/src/core/main/common/get_buffered_data_per_media_buffer.ts +0 -49
- package/src/core/main/worker/content_preparer.ts +0 -422
- package/src/core/main/worker/globals.ts +0 -38
- package/src/core/main/worker/index.ts +0 -2
- package/src/core/main/worker/send_message.ts +0 -26
- package/src/core/main/worker/track_choice_setter.ts +0 -170
- package/src/core/main/worker/worker_main.ts +0 -915
- package/src/core/main/worker/worker_text_displayer_interface.ts +0 -162
- package/src/core/segment_sinks/README.md +0 -203
- package/src/core/segment_sinks/garbage_collector.ts +0 -199
- package/src/core/segment_sinks/implementations/audio_video/audio_video_segment_buffer.ts +0 -372
- package/src/core/segment_sinks/implementations/audio_video/index.ts +0 -18
- package/src/core/segment_sinks/implementations/index.ts +0 -21
- package/src/core/segment_sinks/implementations/text/index.ts +0 -4
- package/src/core/segment_sinks/implementations/text/text_segment_buffer.ts +0 -242
- package/src/core/segment_sinks/implementations/types.ts +0 -347
- package/src/core/segment_sinks/implementations/utils/manual_time_ranges.ts +0 -76
- package/src/core/segment_sinks/index.ts +0 -63
- package/src/core/segment_sinks/inventory/buffered_history.ts +0 -126
- package/src/core/segment_sinks/inventory/index.ts +0 -27
- package/src/core/segment_sinks/inventory/segment_inventory.ts +0 -1347
- package/src/core/segment_sinks/inventory/types.ts +0 -29
- package/src/core/segment_sinks/inventory/utils.ts +0 -59
- package/src/core/segment_sinks/segment_buffers_store.ts +0 -363
- package/src/core/stream/README.md +0 -56
- package/src/core/stream/adaptation/adaptation_stream.ts +0 -495
- package/src/core/stream/adaptation/get_representations_switch_strategy.ts +0 -171
- package/src/core/stream/adaptation/index.ts +0 -20
- package/src/core/stream/adaptation/types.ts +0 -210
- package/src/core/stream/index.ts +0 -43
- package/src/core/stream/orchestrator/README.md +0 -337
- package/src/core/stream/orchestrator/get_time_ranges_for_content.ts +0 -75
- package/src/core/stream/orchestrator/index.ts +0 -30
- package/src/core/stream/orchestrator/stream_orchestrator.ts +0 -787
- package/src/core/stream/period/index.ts +0 -20
- package/src/core/stream/period/period_stream.ts +0 -579
- package/src/core/stream/period/types.ts +0 -124
- package/src/core/stream/period/utils/get_adaptation_switch_strategy.ts +0 -196
- package/src/core/stream/representation/README.md +0 -22
- package/src/core/stream/representation/index.ts +0 -20
- package/src/core/stream/representation/representation_stream.ts +0 -511
- package/src/core/stream/representation/types.ts +0 -339
- package/src/core/stream/representation/utils/append_segment_to_buffer.ts +0 -94
- package/src/core/stream/representation/utils/check_for_discontinuity.ts +0 -325
- package/src/core/stream/representation/utils/downloading_queue.ts +0 -644
- package/src/core/stream/representation/utils/get_buffer_status.ts +0 -358
- package/src/core/stream/representation/utils/get_needed_segments.ts +0 -643
- package/src/core/stream/representation/utils/get_segment_priority.ts +0 -43
- package/src/core/stream/representation/utils/push_init_segment.ts +0 -88
- package/src/core/stream/representation/utils/push_media_segment.ts +0 -119
- package/src/core/types.ts +0 -53
- package/src/default_config.ts +0 -1196
- package/src/errors/README.md +0 -17
- package/src/errors/__tests__/encrypted_media_error.test.ts +0 -45
- package/src/errors/__tests__/error_message.test.ts +0 -23
- package/src/errors/__tests__/format_error.test.ts +0 -71
- package/src/errors/__tests__/is_known_error.test.ts +0 -54
- package/src/errors/__tests__/media_error.test.ts +0 -54
- package/src/errors/__tests__/network_error.test.ts +0 -68
- package/src/errors/__tests__/other_error.test.ts +0 -53
- package/src/errors/custom_loader_error.ts +0 -48
- package/src/errors/encrypted_media_error.ts +0 -100
- package/src/errors/error_codes.ts +0 -144
- package/src/errors/error_message.ts +0 -25
- package/src/errors/format_error.ts +0 -41
- package/src/errors/index.ts +0 -55
- package/src/errors/is_known_error.ts +0 -37
- package/src/errors/media_error.ts +0 -111
- package/src/errors/network_error.ts +0 -93
- package/src/errors/other_error.ts +0 -67
- package/src/errors/source_buffer_error.ts +0 -61
- package/src/errors/worker_initialization_error.ts +0 -34
- package/src/experimental/README.md +0 -19
- package/src/experimental/features/__tests__/index.test.ts +0 -10
- package/src/experimental/features/__tests__/local.test.ts +0 -36
- package/src/experimental/features/__tests__/metaplaylist.test.ts +0 -36
- package/src/experimental/features/__tests__/multi_thread.test.ts +0 -17
- package/src/experimental/features/index.ts +0 -19
- package/src/experimental/features/local.ts +0 -29
- package/src/experimental/features/metaplaylist.ts +0 -29
- package/src/experimental/features/multi_thread.ts +0 -13
- package/src/experimental/index.ts +0 -3
- package/src/experimental/tools/VideoThumbnailLoader/features/dash.ts +0 -23
- package/src/experimental/tools/VideoThumbnailLoader/features/metaplaylist.ts +0 -23
- package/src/experimental/tools/VideoThumbnailLoader/index.ts +0 -19
- package/src/experimental/tools/VideoThumbnailLoader/load_and_push_segment.ts +0 -75
- package/src/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.ts +0 -83
- package/src/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.ts +0 -50
- package/src/experimental/tools/VideoThumbnailLoader/types.ts +0 -32
- package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.ts +0 -438
- package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.ts +0 -34
- package/src/experimental/tools/createMetaplaylist/get_duration_from_manifest.ts +0 -136
- package/src/experimental/tools/createMetaplaylist/index.ts +0 -75
- package/src/experimental/tools/index.ts +0 -21
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/capabilities.test.ts +0 -38
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/DRMInfos.test.ts +0 -132
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/HDCPPolicy.test.ts +0 -152
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/decodingInfos.test.ts +0 -413
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/defaultCodecFinder.test.ts +0 -151
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaContentType.test.ts +0 -302
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaDisplayInfos.test.ts +0 -201
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/utils.test.ts +0 -257
- package/src/experimental/tools/mediaCapabilitiesProber/api/index.ts +0 -192
- package/src/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.ts +0 -143
- package/src/experimental/tools/mediaCapabilitiesProber/capabilities.ts +0 -129
- package/src/experimental/tools/mediaCapabilitiesProber/index.ts +0 -20
- package/src/experimental/tools/mediaCapabilitiesProber/log.ts +0 -21
- package/src/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.ts +0 -71
- package/src/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.ts +0 -103
- package/src/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.ts +0 -106
- package/src/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.ts +0 -70
- package/src/experimental/tools/mediaCapabilitiesProber/probers/index.ts +0 -40
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.ts +0 -71
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.ts +0 -102
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.ts +0 -111
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.ts +0 -61
- package/src/experimental/tools/mediaCapabilitiesProber/types.ts +0 -75
- package/src/experimental/tools/mediaCapabilitiesProber/utils.ts +0 -112
- package/src/features/README.md +0 -10
- package/src/features/__tests__/add_features.test.ts +0 -75
- package/src/features/add_features.ts +0 -38
- package/src/features/features_object.ts +0 -38
- package/src/features/index.ts +0 -37
- package/src/features/list/__tests__/dash.test.ts +0 -42
- package/src/features/list/__tests__/dash_wasm.test.ts +0 -47
- package/src/features/list/__tests__/debug_element.test.ts +0 -12
- package/src/features/list/__tests__/directfile.test.ts +0 -34
- package/src/features/list/__tests__/eme.test.ts +0 -28
- package/src/features/list/__tests__/html_sami_parser.test.ts +0 -35
- package/src/features/list/__tests__/html_srt_parser.test.ts +0 -34
- package/src/features/list/__tests__/html_text_buffer.test.ts +0 -28
- package/src/features/list/__tests__/html_ttml_parser.test.ts +0 -34
- package/src/features/list/__tests__/html_vtt_parser.test.ts +0 -34
- package/src/features/list/__tests__/index.test.ts +0 -55
- package/src/features/list/__tests__/native_sami_parser.test.ts +0 -35
- package/src/features/list/__tests__/native_srt_parser.test.ts +0 -34
- package/src/features/list/__tests__/native_text_buffer.test.ts +0 -28
- package/src/features/list/__tests__/native_ttml_parser.test.ts +0 -34
- package/src/features/list/__tests__/native_vtt_parser.test.ts +0 -34
- package/src/features/list/__tests__/smooth.test.ts +0 -36
- package/src/features/list/dash.ts +0 -37
- package/src/features/list/dash_wasm.ts +0 -41
- package/src/features/list/debug_element.ts +0 -13
- package/src/features/list/directfile.ts +0 -31
- package/src/features/list/eme.ts +0 -29
- package/src/features/list/html_sami_parser.ts +0 -31
- package/src/features/list/html_srt_parser.ts +0 -31
- package/src/features/list/html_text_buffer.ts +0 -29
- package/src/features/list/html_ttml_parser.ts +0 -31
- package/src/features/list/html_vtt_parser.ts +0 -31
- package/src/features/list/index.ts +0 -33
- package/src/features/list/media_source_main.ts +0 -13
- package/src/features/list/native_sami_parser.ts +0 -31
- package/src/features/list/native_srt_parser.ts +0 -31
- package/src/features/list/native_text_buffer.ts +0 -29
- package/src/features/list/native_ttml_parser.ts +0 -31
- package/src/features/list/native_vtt_parser.ts +0 -31
- package/src/features/list/smooth.ts +0 -35
- package/src/features/types.ts +0 -187
- package/src/globals.dev.d.ts +0 -15
- package/src/globals.prod.d.ts +0 -15
- package/src/index.ts +0 -62
- package/src/log.ts +0 -22
- package/src/main_thread/README.md +0 -42
- package/src/main_thread/api/README.md +0 -32
- package/src/main_thread/api/__tests__/option_utils.test.ts +0 -1086
- package/src/main_thread/api/__tests__/public_api.test.ts +0 -444
- package/src/main_thread/api/__tests__/utils.test.ts +0 -191
- package/src/main_thread/api/debug/buffer_graph.ts +0 -231
- package/src/main_thread/api/debug/buffer_size_graph.ts +0 -127
- package/src/main_thread/api/debug/constants.ts +0 -2
- package/src/main_thread/api/debug/index.ts +0 -3
- package/src/main_thread/api/debug/modules/general_info.ts +0 -214
- package/src/main_thread/api/debug/modules/segment_buffer_content.ts +0 -163
- package/src/main_thread/api/debug/modules/segment_buffer_size.ts +0 -43
- package/src/main_thread/api/debug/render.ts +0 -40
- package/src/main_thread/api/debug/utils.ts +0 -100
- package/src/main_thread/api/index.ts +0 -18
- package/src/main_thread/api/option_utils.ts +0 -462
- package/src/main_thread/api/public_api.ts +0 -3255
- package/src/main_thread/api/utils.ts +0 -255
- package/src/main_thread/decrypt/README.md +0 -28
- package/src/main_thread/decrypt/__tests__/__global__/get_license.test.ts +0 -497
- package/src/main_thread/decrypt/__tests__/__global__/init_data.test.ts +0 -724
- package/src/main_thread/decrypt/__tests__/__global__/media_key_system_access.test.ts +0 -799
- package/src/main_thread/decrypt/__tests__/__global__/media_keys.test.ts +0 -371
- package/src/main_thread/decrypt/__tests__/__global__/server_certificate.test.ts +0 -260
- package/src/main_thread/decrypt/__tests__/__global__/utils.ts +0 -517
- package/src/main_thread/decrypt/attach_media_keys.ts +0 -124
- package/src/main_thread/decrypt/clear_on_stop.ts +0 -48
- package/src/main_thread/decrypt/content_decryptor.ts +0 -1209
- package/src/main_thread/decrypt/create_or_load_session.ts +0 -138
- package/src/main_thread/decrypt/create_session.ts +0 -213
- package/src/main_thread/decrypt/dispose_decryption_resources.ts +0 -51
- package/src/main_thread/decrypt/find_key_system.ts +0 -399
- package/src/main_thread/decrypt/get_key_system_configuration.ts +0 -36
- package/src/main_thread/decrypt/get_media_keys.ts +0 -144
- package/src/main_thread/decrypt/index.ts +0 -29
- package/src/main_thread/decrypt/init_media_keys.ts +0 -62
- package/src/main_thread/decrypt/session_events_listener.ts +0 -360
- package/src/main_thread/decrypt/set_server_certificate.ts +0 -107
- package/src/main_thread/decrypt/types.ts +0 -411
- package/src/main_thread/decrypt/utils/__tests__/are_init_values_compatible.test.ts +0 -177
- package/src/main_thread/decrypt/utils/__tests__/clean_old_loaded_sessions.test.ts +0 -168
- package/src/main_thread/decrypt/utils/__tests__/clean_old_stored_persistent_info.test.ts +0 -145
- package/src/main_thread/decrypt/utils/are_init_values_compatible.ts +0 -162
- package/src/main_thread/decrypt/utils/check_key_statuses.ts +0 -230
- package/src/main_thread/decrypt/utils/clean_old_loaded_sessions.ts +0 -45
- package/src/main_thread/decrypt/utils/clean_old_stored_persistent_info.ts +0 -50
- package/src/main_thread/decrypt/utils/get_drm_system_id.ts +0 -41
- package/src/main_thread/decrypt/utils/init_data_values_container.ts +0 -129
- package/src/main_thread/decrypt/utils/is_session_usable.ts +0 -67
- package/src/main_thread/decrypt/utils/key_id_comparison.ts +0 -57
- package/src/main_thread/decrypt/utils/key_session_record.ts +0 -172
- package/src/main_thread/decrypt/utils/loaded_sessions_store.ts +0 -511
- package/src/main_thread/decrypt/utils/media_keys_infos_store.ts +0 -84
- package/src/main_thread/decrypt/utils/persistent_sessions_store.ts +0 -373
- package/src/main_thread/decrypt/utils/serializable_bytes.ts +0 -56
- package/src/main_thread/decrypt/utils/server_certificate_store.ts +0 -146
- package/src/main_thread/init/README.md +0 -90
- package/src/main_thread/init/directfile_content_initializer.ts +0 -329
- package/src/main_thread/init/index.ts +0 -22
- package/src/main_thread/init/media_source_content_initializer.ts +0 -1105
- package/src/main_thread/init/multi_thread_content_initializer.ts +0 -1983
- package/src/main_thread/init/send_message.ts +0 -15
- package/src/main_thread/init/types.ts +0 -252
- package/src/main_thread/init/utils/__tests__/are_same_stream_events.test.ts +0 -69
- package/src/main_thread/init/utils/__tests__/refresh_scheduled_events_list.test.ts +0 -85
- package/src/main_thread/init/utils/create_core_playback_observer.ts +0 -196
- package/src/main_thread/init/utils/create_media_source.ts +0 -123
- package/src/main_thread/init/utils/get_initial_time.ts +0 -169
- package/src/main_thread/init/utils/get_loaded_reference.ts +0 -85
- package/src/main_thread/init/utils/initial_seek_and_play.ts +0 -285
- package/src/main_thread/init/utils/initialize_content_decryption.ts +0 -201
- package/src/main_thread/init/utils/main_thread_text_displayer_interface.ts +0 -59
- package/src/main_thread/init/utils/rebuffering_controller.ts +0 -637
- package/src/main_thread/init/utils/stream_events_emitter/are_same_stream_events.ts +0 -38
- package/src/main_thread/init/utils/stream_events_emitter/index.ts +0 -19
- package/src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts +0 -95
- package/src/main_thread/init/utils/stream_events_emitter/stream_events_emitter.ts +0 -259
- package/src/main_thread/init/utils/stream_events_emitter/types.ts +0 -46
- package/src/main_thread/init/utils/throw_on_media_error.ts +0 -76
- package/src/main_thread/text_displayer/html/__tests__/utils.test.ts +0 -335
- package/src/main_thread/text_displayer/html/html_parsers.ts +0 -35
- package/src/main_thread/text_displayer/html/html_text_displayer.ts +0 -437
- package/src/main_thread/text_displayer/html/index.ts +0 -2
- package/src/main_thread/text_displayer/html/text_track_cues_store.ts +0 -379
- package/src/main_thread/text_displayer/html/update_proportional_elements.ts +0 -76
- package/src/main_thread/text_displayer/html/utils.ts +0 -136
- package/src/main_thread/text_displayer/index.ts +0 -3
- package/src/main_thread/text_displayer/manual_time_ranges.ts +0 -60
- package/src/main_thread/text_displayer/native/index.ts +0 -2
- package/src/main_thread/text_displayer/native/native_parsers.ts +0 -31
- package/src/main_thread/text_displayer/native/native_text_displayer.ts +0 -254
- package/src/main_thread/text_displayer/types.ts +0 -74
- package/src/main_thread/tracks_store/README.md +0 -21
- package/src/main_thread/tracks_store/__tests__/media_element_tracks_store.test.ts +0 -180
- package/src/main_thread/tracks_store/index.ts +0 -22
- package/src/main_thread/tracks_store/media_element_tracks_store.ts +0 -811
- package/src/main_thread/tracks_store/track_dispatcher.ts +0 -296
- package/src/main_thread/tracks_store/tracks_store.ts +0 -1493
- package/src/main_thread/types.ts +0 -15
- package/src/manifest/README.md +0 -11
- package/src/manifest/classes/README.md +0 -55
- package/src/manifest/classes/__tests__/adaptation.test.ts +0 -422
- package/src/manifest/classes/__tests__/manifest.test.ts +0 -549
- package/src/manifest/classes/__tests__/period.test.ts +0 -1002
- package/src/manifest/classes/__tests__/representation.test.ts +0 -497
- package/src/manifest/classes/__tests__/update_period_in_place.test.ts +0 -1338
- package/src/manifest/classes/__tests__/update_periods.test.ts +0 -975
- package/src/manifest/classes/adaptation.ts +0 -286
- package/src/manifest/classes/index.ts +0 -56
- package/src/manifest/classes/manifest.ts +0 -707
- package/src/manifest/classes/period.ts +0 -267
- package/src/manifest/classes/representation.ts +0 -487
- package/src/manifest/classes/representation_index/__tests__/static.test.ts +0 -78
- package/src/manifest/classes/representation_index/index.ts +0 -31
- package/src/manifest/classes/representation_index/static.ts +0 -169
- package/src/manifest/classes/representation_index/types.ts +0 -458
- package/src/manifest/classes/types.ts +0 -30
- package/src/manifest/classes/update_period_in_place.ts +0 -163
- package/src/manifest/classes/update_periods.ts +0 -279
- package/src/manifest/classes/utils.ts +0 -71
- package/src/manifest/index.ts +0 -45
- package/src/manifest/types.ts +0 -407
- package/src/manifest/utils.ts +0 -672
- package/src/minimal.ts +0 -47
- package/src/mse/README.md +0 -30
- package/src/mse/index.ts +0 -7
- package/src/mse/main_codec_support_prober.ts +0 -52
- package/src/mse/main_media_source_interface.ts +0 -595
- package/src/mse/types.ts +0 -314
- package/src/mse/utils/end_of_stream.ts +0 -119
- package/src/mse/utils/media_source_duration_updater.ts +0 -366
- package/src/mse/worker_codec_support_prober.ts +0 -75
- package/src/mse/worker_media_source_interface.ts +0 -471
- package/src/multithread_types.ts +0 -980
- package/src/parsers/README.md +0 -20
- package/src/parsers/containers/isobmff/constants.ts +0 -24
- package/src/parsers/containers/isobmff/create_box.ts +0 -72
- package/src/parsers/containers/isobmff/drm/index.ts +0 -17
- package/src/parsers/containers/isobmff/drm/playready.ts +0 -38
- package/src/parsers/containers/isobmff/get_box.ts +0 -276
- package/src/parsers/containers/isobmff/index.ts +0 -39
- package/src/parsers/containers/isobmff/read.ts +0 -96
- package/src/parsers/containers/isobmff/take_pssh_out.ts +0 -97
- package/src/parsers/containers/isobmff/utils.ts +0 -574
- package/src/parsers/containers/matroska/index.ts +0 -17
- package/src/parsers/containers/matroska/utils.ts +0 -325
- package/src/parsers/images/bif.ts +0 -145
- package/src/parsers/manifest/dash/common/__tests__/attach_trickmode_track.test.ts +0 -63
- package/src/parsers/manifest/dash/common/__tests__/convert_supplemental_codecs.test.ts +0 -33
- package/src/parsers/manifest/dash/common/__tests__/flatten_overlapping_period.test.ts +0 -158
- package/src/parsers/manifest/dash/common/__tests__/get_clock_offset.test.ts +0 -67
- package/src/parsers/manifest/dash/common/__tests__/get_http_utc-timing_url.test.ts +0 -153
- package/src/parsers/manifest/dash/common/__tests__/get_periods_time_infos.test.ts +0 -106
- package/src/parsers/manifest/dash/common/__tests__/manifest_bounds_calculator.test.ts +0 -280
- package/src/parsers/manifest/dash/common/__tests__/parse_availability_start_time.test.ts +0 -80
- package/src/parsers/manifest/dash/common/attach_trickmode_track.ts +0 -54
- package/src/parsers/manifest/dash/common/convert_supplemental_codecs.ts +0 -25
- package/src/parsers/manifest/dash/common/flatten_overlapping_periods.ts +0 -89
- package/src/parsers/manifest/dash/common/get_clock_offset.ts +0 -40
- package/src/parsers/manifest/dash/common/get_hdr_information.ts +0 -86
- package/src/parsers/manifest/dash/common/get_http_utc-timing_url.ts +0 -44
- package/src/parsers/manifest/dash/common/get_minimum_and_maximum_positions.ts +0 -41
- package/src/parsers/manifest/dash/common/get_periods_time_infos.ts +0 -93
- package/src/parsers/manifest/dash/common/index.ts +0 -36
- package/src/parsers/manifest/dash/common/indexes/__tests__/tokens.test.ts +0 -63
- package/src/parsers/manifest/dash/common/indexes/base.ts +0 -451
- package/src/parsers/manifest/dash/common/indexes/get_init_segment.ts +0 -58
- package/src/parsers/manifest/dash/common/indexes/get_segments_from_timeline.ts +0 -149
- package/src/parsers/manifest/dash/common/indexes/index.ts +0 -31
- package/src/parsers/manifest/dash/common/indexes/list.ts +0 -361
- package/src/parsers/manifest/dash/common/indexes/template.ts +0 -675
- package/src/parsers/manifest/dash/common/indexes/timeline/__tests__/parse_s_element.test.ts +0 -195
- package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.ts +0 -57
- package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.ts +0 -115
- package/src/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.ts +0 -73
- package/src/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.ts +0 -171
- package/src/parsers/manifest/dash/common/indexes/timeline/index.ts +0 -21
- package/src/parsers/manifest/dash/common/indexes/timeline/parse_s_element.ts +0 -118
- package/src/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.ts +0 -1112
- package/src/parsers/manifest/dash/common/indexes/tokens.ts +0 -127
- package/src/parsers/manifest/dash/common/indexes/utils.ts +0 -30
- package/src/parsers/manifest/dash/common/infer_adaptation_type.ts +0 -140
- package/src/parsers/manifest/dash/common/manifest_bounds_calculator.ts +0 -174
- package/src/parsers/manifest/dash/common/parse_adaptation_sets.ts +0 -569
- package/src/parsers/manifest/dash/common/parse_availability_start_time.ts +0 -37
- package/src/parsers/manifest/dash/common/parse_mpd.ts +0 -423
- package/src/parsers/manifest/dash/common/parse_periods.ts +0 -383
- package/src/parsers/manifest/dash/common/parse_representation_index.ts +0 -207
- package/src/parsers/manifest/dash/common/parse_representations.ts +0 -348
- package/src/parsers/manifest/dash/common/resolve_base_urls.ts +0 -58
- package/src/parsers/manifest/dash/fast-js-parser/__tests__/parse_from_xml_string.test.ts +0 -39
- package/src/parsers/manifest/dash/fast-js-parser/index.ts +0 -18
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.ts +0 -427
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/BaseURL.ts +0 -36
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/ContentComponent.ts +0 -50
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/ContentProtection.ts +0 -94
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/EventStream.ts +0 -123
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Initialization.ts +0 -52
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.ts +0 -214
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Period.ts +0 -174
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.ts +0 -262
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentBase.ts +0 -134
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentList.ts +0 -52
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTemplate.ts +0 -104
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentTimeline.ts +0 -37
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/SegmentURL.ts +0 -66
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/AdaptationSet.test.ts +0 -534
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/ContentComponent.test.ts +0 -63
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/ContentProtection.test.ts +0 -182
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/Initialization.test.ts +0 -116
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/SegmentURL.test.ts +0 -162
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/utils.test.ts +0 -203
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/utils.ts +0 -401
- package/src/parsers/manifest/dash/fast-js-parser/parse_from_xml_string.ts +0 -135
- package/src/parsers/manifest/dash/index.ts +0 -22
- package/src/parsers/manifest/dash/native-parser/__tests__/parse_from_document.test.ts +0 -43
- package/src/parsers/manifest/dash/native-parser/index.ts +0 -18
- package/src/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.ts +0 -425
- package/src/parsers/manifest/dash/native-parser/node_parsers/BaseURL.ts +0 -34
- package/src/parsers/manifest/dash/native-parser/node_parsers/ContentComponent.ts +0 -49
- package/src/parsers/manifest/dash/native-parser/node_parsers/ContentProtection.ts +0 -92
- package/src/parsers/manifest/dash/native-parser/node_parsers/EventStream.ts +0 -118
- package/src/parsers/manifest/dash/native-parser/node_parsers/Initialization.ts +0 -47
- package/src/parsers/manifest/dash/native-parser/node_parsers/MPD.ts +0 -184
- package/src/parsers/manifest/dash/native-parser/node_parsers/Period.ts +0 -146
- package/src/parsers/manifest/dash/native-parser/node_parsers/Representation.ts +0 -257
- package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentBase.ts +0 -129
- package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentList.ts +0 -50
- package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentTemplate.ts +0 -102
- package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentTimeline.ts +0 -33
- package/src/parsers/manifest/dash/native-parser/node_parsers/SegmentURL.ts +0 -61
- package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/AdaptationSet.test.ts +0 -632
- package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/ContentComponent.test.ts +0 -67
- package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/ContentProtection.test.ts +0 -247
- package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/Initialization.test.ts +0 -126
- package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/SegmentTimeline.test.ts +0 -115
- package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/SegmentURL.test.ts +0 -181
- package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/utils.test.ts +0 -216
- package/src/parsers/manifest/dash/native-parser/node_parsers/utils.ts +0 -388
- package/src/parsers/manifest/dash/native-parser/parse_from_document.ts +0 -125
- package/src/parsers/manifest/dash/node_parser_types.ts +0 -432
- package/src/parsers/manifest/dash/parsers_types.ts +0 -90
- package/src/parsers/manifest/dash/wasm-parser/Cargo.lock +0 -25
- package/src/parsers/manifest/dash/wasm-parser/Cargo.toml +0 -16
- package/src/parsers/manifest/dash/wasm-parser/README.md +0 -243
- package/src/parsers/manifest/dash/wasm-parser/index.ts +0 -19
- package/src/parsers/manifest/dash/wasm-parser/rs/errors.rs +0 -28
- package/src/parsers/manifest/dash/wasm-parser/rs/events.rs +0 -380
- package/src/parsers/manifest/dash/wasm-parser/rs/lib.rs +0 -85
- package/src/parsers/manifest/dash/wasm-parser/rs/processor/attributes.rs +0 -414
- package/src/parsers/manifest/dash/wasm-parser/rs/processor/mod.rs +0 -472
- package/src/parsers/manifest/dash/wasm-parser/rs/processor/s_element.rs +0 -72
- package/src/parsers/manifest/dash/wasm-parser/rs/reader.rs +0 -17
- package/src/parsers/manifest/dash/wasm-parser/rs/reportable.rs +0 -147
- package/src/parsers/manifest/dash/wasm-parser/rs/utils.rs +0 -266
- package/src/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.ts +0 -495
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.ts +0 -376
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.ts +0 -38
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.ts +0 -52
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.ts +0 -58
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.ts +0 -137
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/MPD.ts +0 -173
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/Period.ts +0 -190
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/Representation.ts +0 -252
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.ts +0 -44
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.ts +0 -111
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.ts +0 -56
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.ts +0 -132
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.ts +0 -63
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/XLink.ts +0 -64
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/index.ts +0 -17
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/root.ts +0 -69
- package/src/parsers/manifest/dash/wasm-parser/ts/parsers_stack.ts +0 -82
- package/src/parsers/manifest/dash/wasm-parser/ts/types.ts +0 -297
- package/src/parsers/manifest/dash/wasm-parser/ts/utils.ts +0 -48
- package/src/parsers/manifest/index.ts +0 -17
- package/src/parsers/manifest/local/index.ts +0 -25
- package/src/parsers/manifest/local/parse_local_manifest.ts +0 -180
- package/src/parsers/manifest/local/representation_index.ts +0 -254
- package/src/parsers/manifest/local/types.ts +0 -293
- package/src/parsers/manifest/metaplaylist/index.ts +0 -24
- package/src/parsers/manifest/metaplaylist/metaplaylist_parser.ts +0 -366
- package/src/parsers/manifest/metaplaylist/representation_index.ts +0 -274
- package/src/parsers/manifest/smooth/create_parser.ts +0 -723
- package/src/parsers/manifest/smooth/get_codecs.ts +0 -52
- package/src/parsers/manifest/smooth/index.ts +0 -21
- package/src/parsers/manifest/smooth/parse_C_nodes.ts +0 -68
- package/src/parsers/manifest/smooth/parse_protection_node.ts +0 -83
- package/src/parsers/manifest/smooth/representation_index.ts +0 -547
- package/src/parsers/manifest/smooth/shared_smooth_segment_timeline.ts +0 -246
- package/src/parsers/manifest/smooth/utils/add_segment_infos.ts +0 -78
- package/src/parsers/manifest/smooth/utils/parseBoolean.ts +0 -29
- package/src/parsers/manifest/smooth/utils/reduceChildren.ts +0 -36
- package/src/parsers/manifest/smooth/utils/tokens.ts +0 -44
- package/src/parsers/manifest/types.ts +0 -403
- package/src/parsers/manifest/utils/__tests__/get_first_time_from_adaptations.test.ts +0 -239
- package/src/parsers/manifest/utils/__tests__/get_last_time_from_adaptation.test.ts +0 -239
- package/src/parsers/manifest/utils/__tests__/index_helpers.test.ts +0 -40
- package/src/parsers/manifest/utils/__tests__/update_segment_timeline.test.ts +0 -621
- package/src/parsers/manifest/utils/check_manifest_ids.ts +0 -79
- package/src/parsers/manifest/utils/clear_timeline_from_position.ts +0 -77
- package/src/parsers/manifest/utils/get_first_time_from_adaptation.ts +0 -49
- package/src/parsers/manifest/utils/get_last_time_from_adaptation.ts +0 -51
- package/src/parsers/manifest/utils/get_maximum_positions.ts +0 -88
- package/src/parsers/manifest/utils/get_minimum_position.ts +0 -81
- package/src/parsers/manifest/utils/index_helpers.ts +0 -203
- package/src/parsers/manifest/utils/update_segment_timeline.ts +0 -145
- package/src/parsers/texttracks/index.ts +0 -17
- package/src/parsers/texttracks/sami/html.ts +0 -220
- package/src/parsers/texttracks/sami/native.ts +0 -190
- package/src/parsers/texttracks/srt/__tests__/find_end_of_cue_block.test.ts +0 -99
- package/src/parsers/texttracks/srt/__tests__/get_cue_blocks.test.ts +0 -103
- package/src/parsers/texttracks/srt/__tests__/parse_cue.test.ts +0 -102
- package/src/parsers/texttracks/srt/__tests__/parse_timestamp.test.ts +0 -36
- package/src/parsers/texttracks/srt/find_end_of_cue_block.ts +0 -46
- package/src/parsers/texttracks/srt/get_cue_blocks.ts +0 -50
- package/src/parsers/texttracks/srt/html.ts +0 -183
- package/src/parsers/texttracks/srt/native.ts +0 -72
- package/src/parsers/texttracks/srt/parse_cue.ts +0 -72
- package/src/parsers/texttracks/srt/parse_timestamp.ts +0 -35
- package/src/parsers/texttracks/ttml/__tests__/resolve_styles_inheritance.test.ts +0 -267
- package/src/parsers/texttracks/ttml/get_parameters.ts +0 -101
- package/src/parsers/texttracks/ttml/get_styling.ts +0 -145
- package/src/parsers/texttracks/ttml/get_time_delimiters.ts +0 -50
- package/src/parsers/texttracks/ttml/html/__tests__/__global__/html_ttml_parser.test.test.ts +0 -190
- package/src/parsers/texttracks/ttml/html/__tests__/generate_css_test_outline.test.ts +0 -34
- package/src/parsers/texttracks/ttml/html/__tests__/ttml_color_to_css_color.test.ts +0 -53
- package/src/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.ts +0 -69
- package/src/parsers/texttracks/ttml/html/apply_extent.ts +0 -56
- package/src/parsers/texttracks/ttml/html/apply_font_size.ts +0 -59
- package/src/parsers/texttracks/ttml/html/apply_line_height.ts +0 -48
- package/src/parsers/texttracks/ttml/html/apply_origin.ts +0 -55
- package/src/parsers/texttracks/ttml/html/apply_padding.ts +0 -134
- package/src/parsers/texttracks/ttml/html/create_element.ts +0 -552
- package/src/parsers/texttracks/ttml/html/generate_css_test_outline.ts +0 -48
- package/src/parsers/texttracks/ttml/html/index.ts +0 -23
- package/src/parsers/texttracks/ttml/html/parse_cue.ts +0 -62
- package/src/parsers/texttracks/ttml/html/parse_ttml_to_div.ts +0 -56
- package/src/parsers/texttracks/ttml/html/ttml_color_to_css_color.ts +0 -92
- package/src/parsers/texttracks/ttml/native/index.ts +0 -23
- package/src/parsers/texttracks/ttml/native/parse_cue.ts +0 -231
- package/src/parsers/texttracks/ttml/native/parse_ttml_to_vtt.ts +0 -39
- package/src/parsers/texttracks/ttml/parse_ttml.ts +0 -216
- package/src/parsers/texttracks/ttml/regexps.ts +0 -61
- package/src/parsers/texttracks/ttml/resolve_styles_inheritance.ts +0 -81
- package/src/parsers/texttracks/ttml/time_parsing.ts +0 -145
- package/src/parsers/texttracks/ttml/xml_utils.ts +0 -169
- package/src/parsers/texttracks/types.ts +0 -38
- package/src/parsers/texttracks/webvtt/__tests__/get_cue_blocks.test.ts +0 -180
- package/src/parsers/texttracks/webvtt/__tests__/get_style_blocks.test.ts +0 -60
- package/src/parsers/texttracks/webvtt/__tests__/parse_cue_block.test.ts +0 -204
- package/src/parsers/texttracks/webvtt/__tests__/parse_timestamp.test.ts +0 -39
- package/src/parsers/texttracks/webvtt/__tests__/utils.test.ts +0 -389
- package/src/parsers/texttracks/webvtt/get_cue_blocks.ts +0 -48
- package/src/parsers/texttracks/webvtt/get_style_blocks.ts +0 -57
- package/src/parsers/texttracks/webvtt/html/__tests__/convert_payload_to_html.test.ts +0 -108
- package/src/parsers/texttracks/webvtt/html/__tests__/create_default_style_elements.test.ts +0 -42
- package/src/parsers/texttracks/webvtt/html/__tests__/create_style_attribute.test.ts +0 -155
- package/src/parsers/texttracks/webvtt/html/__tests__/create_styled_element.test.ts +0 -119
- package/src/parsers/texttracks/webvtt/html/__tests__/parse_style_block.test.ts +0 -295
- package/src/parsers/texttracks/webvtt/html/__tests__/parse_webvtt_to_div.test.ts +0 -179
- package/src/parsers/texttracks/webvtt/html/__tests__/to_html.test.ts +0 -227
- package/src/parsers/texttracks/webvtt/html/convert_payload_to_html.ts +0 -43
- package/src/parsers/texttracks/webvtt/html/create_default_style_elements.ts +0 -26
- package/src/parsers/texttracks/webvtt/html/create_style_attribute.ts +0 -219
- package/src/parsers/texttracks/webvtt/html/create_styled_element.ts +0 -88
- package/src/parsers/texttracks/webvtt/html/index.ts +0 -25
- package/src/parsers/texttracks/webvtt/html/parse_style_block.ts +0 -80
- package/src/parsers/texttracks/webvtt/html/parse_webvtt_to_div.ts +0 -63
- package/src/parsers/texttracks/webvtt/html/to_html.ts +0 -91
- package/src/parsers/texttracks/webvtt/native/index.ts +0 -23
- package/src/parsers/texttracks/webvtt/native/parse_vtt_to_cues.ts +0 -68
- package/src/parsers/texttracks/webvtt/native/set_settings_on_cue.ts +0 -96
- package/src/parsers/texttracks/webvtt/native/to_native_cue.ts +0 -32
- package/src/parsers/texttracks/webvtt/parse_cue_block.ts +0 -128
- package/src/parsers/texttracks/webvtt/parse_timestamp.ts +0 -37
- package/src/parsers/texttracks/webvtt/utils.ts +0 -139
- package/src/playback_observer/index.ts +0 -12
- package/src/playback_observer/media_element_playback_observer.ts +0 -947
- package/src/playback_observer/types.ts +0 -238
- package/src/playback_observer/utils/generate_read_only_observer.ts +0 -64
- package/src/playback_observer/utils/observation_position.ts +0 -105
- package/src/playback_observer/worker_playback_observer.ts +0 -140
- package/src/public_types.ts +0 -1077
- package/src/tools/README.md +0 -7
- package/src/tools/TextTrackRenderer/index.ts +0 -26
- package/src/tools/TextTrackRenderer/text_track_renderer.ts +0 -105
- package/src/tools/index.ts +0 -21
- package/src/tools/parseBIFThumbnails/index.ts +0 -42
- package/src/tools/string_utils/index.ts +0 -24
- package/src/transports/README.md +0 -251
- package/src/transports/dash/add_segment_integrity_checks_to_loader.ts +0 -97
- package/src/transports/dash/construct_segment_url.ts +0 -32
- package/src/transports/dash/extract_complete_chunks.ts +0 -70
- package/src/transports/dash/get_events_out_of_emsgs.ts +0 -113
- package/src/transports/dash/index.ts +0 -23
- package/src/transports/dash/init_segment_loader.ts +0 -125
- package/src/transports/dash/low_latency_segment_loader.ts +0 -90
- package/src/transports/dash/manifest_parser.ts +0 -376
- package/src/transports/dash/pipelines.ts +0 -69
- package/src/transports/dash/segment_loader.ts +0 -273
- package/src/transports/dash/segment_parser.ts +0 -204
- package/src/transports/dash/text_loader.ts +0 -123
- package/src/transports/dash/text_parser.ts +0 -250
- package/src/transports/index.ts +0 -17
- package/src/transports/local/index.ts +0 -18
- package/src/transports/local/pipelines.ts +0 -96
- package/src/transports/local/segment_loader.ts +0 -213
- package/src/transports/local/segment_parser.ts +0 -106
- package/src/transports/local/text_parser.ts +0 -197
- package/src/transports/metaplaylist/README.md +0 -89
- package/src/transports/metaplaylist/index.ts +0 -23
- package/src/transports/metaplaylist/manifest_loader.ts +0 -63
- package/src/transports/metaplaylist/pipelines.ts +0 -400
- package/src/transports/smooth/extract_timings_infos.ts +0 -134
- package/src/transports/smooth/index.ts +0 -23
- package/src/transports/smooth/is_mp4_embedded_track.ts +0 -25
- package/src/transports/smooth/isobmff/__tests__/create_boxes.test.ts +0 -325
- package/src/transports/smooth/isobmff/create_audio_init_segment.ts +0 -88
- package/src/transports/smooth/isobmff/create_boxes.ts +0 -526
- package/src/transports/smooth/isobmff/create_init_segment.ts +0 -92
- package/src/transports/smooth/isobmff/create_traf_box.ts +0 -36
- package/src/transports/smooth/isobmff/create_video_init_segment.ts +0 -78
- package/src/transports/smooth/isobmff/get_aaces_header.ts +0 -50
- package/src/transports/smooth/isobmff/index.ts +0 -30
- package/src/transports/smooth/isobmff/parse_tfrf.ts +0 -54
- package/src/transports/smooth/isobmff/parse_tfxd.ts +0 -38
- package/src/transports/smooth/isobmff/patch_segment.ts +0 -174
- package/src/transports/smooth/pipelines.ts +0 -416
- package/src/transports/smooth/segment_loader.ts +0 -326
- package/src/transports/smooth/utils.ts +0 -47
- package/src/transports/types.ts +0 -802
- package/src/transports/utils/__tests__/byte_range.test.ts +0 -35
- package/src/transports/utils/__tests__/check_isobmff_integrity.test.ts +0 -164
- package/src/transports/utils/__tests__/find_complete_box.test.ts +0 -57
- package/src/transports/utils/__tests__/infer_segment_container.test.ts +0 -65
- package/src/transports/utils/byte_range.ts +0 -24
- package/src/transports/utils/call_custom_manifest_loader.ts +0 -145
- package/src/transports/utils/check_isobmff_integrity.ts +0 -50
- package/src/transports/utils/find_complete_box.ts +0 -58
- package/src/transports/utils/generate_manifest_loader.ts +0 -97
- package/src/transports/utils/get_isobmff_timing_infos.ts +0 -90
- package/src/transports/utils/infer_segment_container.ts +0 -47
- package/src/transports/utils/parse_text_track.ts +0 -160
- package/src/utils/README.md +0 -12
- package/src/utils/__tests__/are_arrays_of_numbers_equal.test.ts +0 -84
- package/src/utils/__tests__/are_codecs_compatible.test.ts +0 -74
- package/src/utils/__tests__/array_find.test.ts +0 -127
- package/src/utils/__tests__/array_find_index.test.ts +0 -126
- package/src/utils/__tests__/array_includes.test.ts +0 -130
- package/src/utils/__tests__/assert.test.ts +0 -259
- package/src/utils/__tests__/base64.test.ts +0 -220
- package/src/utils/__tests__/byte_parsing.test.ts +0 -220
- package/src/utils/__tests__/deep_merge.test.ts +0 -47
- package/src/utils/__tests__/event_emitter.test.ts +0 -552
- package/src/utils/__tests__/flat_map.test.ts +0 -75
- package/src/utils/__tests__/get_fuzzed_delay.test.ts +0 -32
- package/src/utils/__tests__/hash_buffer.test.ts +0 -43
- package/src/utils/__tests__/id_generator.test.ts +0 -83
- package/src/utils/__tests__/is_non_empty_string.test.ts +0 -43
- package/src/utils/__tests__/is_null_or_undefined.test.ts +0 -33
- package/src/utils/__tests__/logger.test.ts +0 -212
- package/src/utils/__tests__/noop.test.ts +0 -23
- package/src/utils/__tests__/object_assign.test.ts +0 -74
- package/src/utils/__tests__/object_values.test.ts +0 -26
- package/src/utils/__tests__/ranges.test.ts +0 -1165
- package/src/utils/__tests__/resolve_url.test.ts +0 -91
- package/src/utils/__tests__/retry_promise_with_backoff.test.ts +0 -39
- package/src/utils/__tests__/sorted_list.test.ts +0 -317
- package/src/utils/__tests__/starts_with.test.ts +0 -65
- package/src/utils/__tests__/string_parsing.test.ts +0 -272
- package/src/utils/__tests__/warn_once.test.ts +0 -38
- package/src/utils/__tests__/weak_map_memory.test.ts +0 -184
- package/src/utils/__tests__/xml-parser.test.ts +0 -440
- package/src/utils/are_arrays_of_numbers_equal.ts +0 -39
- package/src/utils/are_codecs_compatible.ts +0 -51
- package/src/utils/array_find.ts +0 -52
- package/src/utils/array_find_index.ts +0 -54
- package/src/utils/array_includes.ts +0 -89
- package/src/utils/assert.ts +0 -114
- package/src/utils/base64.ts +0 -211
- package/src/utils/byte_parsing.ts +0 -274
- package/src/utils/cancellable_sleep.ts +0 -41
- package/src/utils/create_cancellable_promise.ts +0 -63
- package/src/utils/deep_merge.ts +0 -52
- package/src/utils/event_emitter.ts +0 -155
- package/src/utils/flat_map.ts +0 -47
- package/src/utils/get_fuzzed_delay.ts +0 -27
- package/src/utils/global_scope.ts +0 -22
- package/src/utils/hash_buffer.ts +0 -42
- package/src/utils/id_generator.ts +0 -35
- package/src/utils/is_node.ts +0 -21
- package/src/utils/is_non_empty_string.ts +0 -23
- package/src/utils/is_null_or_undefined.ts +0 -27
- package/src/utils/is_worker.ts +0 -8
- package/src/utils/languages/ISO_639-1_to_ISO_639-3.ts +0 -207
- package/src/utils/languages/ISO_639-2_to_ISO_639-3.ts +0 -43
- package/src/utils/languages/__tests__/normalize.test.ts +0 -325
- package/src/utils/languages/index.ts +0 -29
- package/src/utils/languages/normalize.ts +0 -156
- package/src/utils/logger.ts +0 -116
- package/src/utils/monotonic_timestamp.ts +0 -31
- package/src/utils/noop.ts +0 -26
- package/src/utils/object_assign.ts +0 -90
- package/src/utils/object_values.ts +0 -29
- package/src/utils/queue_microtask.ts +0 -5
- package/src/utils/ranges.ts +0 -571
- package/src/utils/reference.ts +0 -395
- package/src/utils/request/__tests__/request_error.test.ts +0 -29
- package/src/utils/request/fetch.ts +0 -278
- package/src/utils/request/index.ts +0 -43
- package/src/utils/request/request_error.ts +0 -90
- package/src/utils/request/xhr.ts +0 -308
- package/src/utils/resolve_url.ts +0 -125
- package/src/utils/retry_promise_with_backoff.ts +0 -100
- package/src/utils/sleep.ts +0 -14
- package/src/utils/slice_uint8array.ts +0 -45
- package/src/utils/sorted_list.ts +0 -240
- package/src/utils/starts_with.ts +0 -43
- package/src/utils/string_parsing.ts +0 -432
- package/src/utils/sync_or_async.ts +0 -94
- package/src/utils/task_canceller.ts +0 -368
- package/src/utils/warn_once.ts +0 -34
- package/src/utils/weak_map_memory.ts +0 -89
- package/src/utils/wrapInPromise.ts +0 -22
- package/src/utils/xml-parser.ts +0 -396
- package/src/worker_entry_point.ts +0 -7
- package/tsconfig.commonjs.json +0 -9
- package/tsconfig.dev.commonjs.json +0 -4
- package/tsconfig.dev.json +0 -5
- package/tsconfig.eslint.json +0 -5
- package/tsconfig.jest.json +0 -9
- package/tsconfig.json +0 -23
- package/webpack.config.mjs +0 -95
- /package/dist/commonjs/{main_thread → core}/api/debug/buffer_size_graph.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/api/debug/constants.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/api/debug/constants.js +0 -0
- /package/dist/commonjs/{main_thread → core}/api/debug/index.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/api/debug/index.js +0 -0
- /package/dist/commonjs/{main_thread → core}/api/debug/render.js +0 -0
- /package/dist/commonjs/{main_thread → core}/api/debug/utils.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/api/debug/utils.js +0 -0
- /package/dist/{es2017/main_thread/tracks_store/index.js → commonjs/core/api/track_management/index.d.ts} +0 -0
- /package/dist/commonjs/{main_thread/tracks_store → core/api/track_management}/index.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/clear_on_stop.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/dispose_decryption_resources.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/get_key_system_configuration.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/get_key_system_configuration.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/index.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/init_media_keys.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/types.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/utils/are_init_values_compatible.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/utils/clean_old_loaded_sessions.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/utils/clean_old_stored_persistent_info.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/utils/get_drm_system_id.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/utils/get_drm_system_id.js +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/utils/key_id_comparison.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/decrypt/utils/key_id_comparison.js +0 -0
- /package/dist/commonjs/{main_thread → core}/init/index.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/init/index.js +0 -0
- /package/dist/commonjs/{main_thread → core}/init/types.js +0 -0
- /package/dist/commonjs/{main_thread → core}/init/utils/main_thread_text_displayer_interface.js +0 -0
- /package/dist/commonjs/{mse → core/init}/utils/media_source_duration_updater.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/init/utils/stream_events_emitter/are_same_stream_events.d.ts +0 -0
- /package/dist/commonjs/{main_thread → core}/init/utils/stream_events_emitter/index.js +0 -0
- /package/dist/commonjs/core/{segment_sinks/inventory → init/utils/stream_events_emitter}/types.js +0 -0
- /package/dist/commonjs/core/{segment_sinks → segment_buffers}/implementations/audio_video/index.js +0 -0
- /package/dist/commonjs/core/{segment_sinks → segment_buffers}/implementations/text/index.js +0 -0
- /package/dist/commonjs/core/{segment_sinks → segment_buffers}/implementations/utils/manual_time_ranges.d.ts +0 -0
- /package/dist/commonjs/core/{segment_sinks → segment_buffers}/implementations/utils/manual_time_ranges.js +0 -0
- /package/dist/commonjs/core/{segment_sinks → segment_buffers}/inventory/buffered_history.js +0 -0
- /package/dist/commonjs/core/{segment_sinks → segment_buffers}/inventory/index.js +0 -0
- /package/dist/commonjs/{main_thread/init/utils/stream_events_emitter → core/segment_buffers/inventory}/types.js +0 -0
- /package/dist/commonjs/manifest/{classes/representation_index → representation_index}/index.js +0 -0
- /package/dist/commonjs/manifest/{classes/representation_index → representation_index}/types.js +0 -0
- /package/dist/commonjs/parsers/manifest/dash/{native-parser → js-parser}/index.d.ts +0 -0
- /package/dist/commonjs/parsers/manifest/dash/{native-parser → js-parser}/index.js +0 -0
- /package/dist/commonjs/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/ContentComponent.js +0 -0
- /package/dist/commonjs/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/ContentProtection.js +0 -0
- /package/dist/commonjs/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/SegmentList.js +0 -0
- /package/dist/commonjs/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/SegmentTimeline.js +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/html/html_parsers.d.ts +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/html/index.d.ts +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/html/index.js +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/html/update_proportional_elements.d.ts +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/html/utils.d.ts +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/index.js +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/manual_time_ranges.d.ts +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/native/index.d.ts +0 -0
- /package/dist/commonjs/{main_thread/text_displayer → text_displayer}/native/index.js +0 -0
- /package/dist/commonjs/{core → text_displayer}/types.js +0 -0
- /package/dist/es2017/{main_thread → core}/api/debug/buffer_size_graph.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/api/debug/constants.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/api/debug/constants.js +0 -0
- /package/dist/es2017/{main_thread → core}/api/debug/index.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/api/debug/index.js +0 -0
- /package/dist/es2017/{main_thread → core}/api/debug/utils.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/clear_on_stop.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/dispose_decryption_resources.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/get_key_system_configuration.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/get_key_system_configuration.js +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/init_media_keys.js +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/types.js +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/utils/are_init_values_compatible.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/utils/clean_old_loaded_sessions.js +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/utils/clean_old_stored_persistent_info.js +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/utils/get_drm_system_id.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/utils/get_drm_system_id.js +0 -0
- /package/dist/es2017/{main_thread → core}/decrypt/utils/key_id_comparison.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/init/index.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/init/index.js +0 -0
- /package/dist/es2017/{main_thread → core}/init/types.js +0 -0
- /package/dist/es2017/{main_thread → core}/init/utils/main_thread_text_displayer_interface.js +0 -0
- /package/dist/es2017/{mse → core/init}/utils/media_source_duration_updater.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/init/utils/stream_events_emitter/are_same_stream_events.d.ts +0 -0
- /package/dist/es2017/{main_thread → core}/init/utils/stream_events_emitter/index.js +0 -0
- /package/dist/es2017/core/{segment_sinks/inventory → init/utils/stream_events_emitter}/types.js +0 -0
- /package/dist/es2017/core/{segment_sinks → segment_buffers}/implementations/utils/manual_time_ranges.d.ts +0 -0
- /package/dist/es2017/{main_thread/init/utils/stream_events_emitter → core/segment_buffers/inventory}/types.js +0 -0
- /package/dist/es2017/manifest/{classes/representation_index → representation_index}/index.js +0 -0
- /package/dist/es2017/manifest/{classes/representation_index → representation_index}/types.js +0 -0
- /package/dist/es2017/parsers/manifest/dash/{native-parser → js-parser}/index.d.ts +0 -0
- /package/dist/es2017/parsers/manifest/dash/{native-parser → js-parser}/index.js +0 -0
- /package/dist/es2017/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/ContentComponent.js +0 -0
- /package/dist/es2017/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/ContentProtection.js +0 -0
- /package/dist/es2017/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/SegmentList.js +0 -0
- /package/dist/es2017/parsers/manifest/dash/{native-parser → js-parser}/node_parsers/SegmentTimeline.js +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/html/html_parsers.d.ts +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/html/index.d.ts +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/html/index.js +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/html/update_proportional_elements.d.ts +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/html/utils.d.ts +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/index.js +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/manual_time_ranges.d.ts +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/native/index.d.ts +0 -0
- /package/dist/es2017/{main_thread/text_displayer → text_displayer}/native/index.js +0 -0
- /package/dist/es2017/{core → text_displayer}/types.js +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,1846 +1,1281 @@
|
|
|
1
|
-
## v4.0.0
|
|
1
|
+
## v4.0.0 (2024-02-21)
|
|
2
2
|
|
|
3
3
|
### Changes
|
|
4
4
|
|
|
5
|
-
- Create `"FREEZING"` player state for cases where the playback position is currently not
|
|
6
|
-
|
|
7
|
-
-
|
|
8
|
-
`
|
|
9
|
-
- Remove bitrate API: `
|
|
10
|
-
`
|
|
11
|
-
the Representations lock APIs
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
- Remove
|
|
16
|
-
and `
|
|
17
|
-
options
|
|
18
|
-
- Remove
|
|
19
|
-
`
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
- Remove `
|
|
23
|
-
|
|
24
|
-
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
- Rename `
|
|
28
|
-
|
|
29
|
-
-
|
|
30
|
-
`
|
|
31
|
-
`
|
|
32
|
-
-
|
|
33
|
-
`
|
|
34
|
-
- Remove `
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
-
|
|
41
|
-
`
|
|
42
|
-
-
|
|
43
|
-
|
|
44
|
-
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
- Remove `
|
|
48
|
-
|
|
49
|
-
- Remove `
|
|
50
|
-
-
|
|
51
|
-
|
|
52
|
-
`
|
|
53
|
-
- Remove
|
|
54
|
-
|
|
55
|
-
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
- Remove
|
|
59
|
-
`
|
|
60
|
-
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
-
|
|
66
|
-
|
|
67
|
-
-
|
|
68
|
-
|
|
69
|
-
-
|
|
70
|
-
`
|
|
71
|
-
application. The `parseBifThumbnails` tool is still available.
|
|
72
|
-
- Replace `keySystems[].licenseStorage` `keySystems` option (for a `loadVideo` call) by
|
|
73
|
-
the better-named `persistentLicenseConfig`. The `persistentLicense` boolean (also a
|
|
74
|
-
`keySystems` option) has also been removed because it was redundant with it) [#1147]
|
|
75
|
-
- Remove `persistentStateRequired` API, in profit of the more powerful `persistentState`
|
|
76
|
-
API [#1148]
|
|
77
|
-
- Remove `distinctiveIdentifierRequired` API, in profit of the more powerful
|
|
78
|
-
`distinctiveIdentifier` API [#1148]
|
|
79
|
-
- Remove `keySystems[].fallbackOn` `loadVideo` property as it's now replaced by the more
|
|
80
|
-
powerful `keySystems[].onKeyOutputRestricted` and `keySystems[].onKeyInternalError`
|
|
81
|
-
properties.
|
|
82
|
-
- Remove `keySystems[].onKeyStatusesChange` API as it seems to never be used [#1148]
|
|
83
|
-
- Remove `keySystems[].throwOnLicenseExpiration` API as it can now be fully replaced by
|
|
84
|
-
the `keySystems[].onKeyExpiration` option
|
|
85
|
-
- Remove `aggressiveMode` from the `transportOptions` `loadVideo` option
|
|
86
|
-
- Remove deprecated `throttleWhenHidden` player option in profit of
|
|
87
|
-
`throttleVideoBitrateWhenHidden`
|
|
88
|
-
- Change payload of `periodChange` events, so they emit only core properties related to a
|
|
89
|
-
`Period`.
|
|
90
|
-
- Change arguments given to a `transportOptions.segmentLoader` function (the `loadVideo`
|
|
91
|
-
option): it now doesn't give the full `Manifest`, `Period`, `Adaptation`,
|
|
92
|
-
`Representation` and `ISegment` structures in arguments but only core properties from it
|
|
93
|
-
[#995]
|
|
94
|
-
- Custom `manifestLoader` function added to what was previously the `loadVideo`'s
|
|
95
|
-
`transportOptions` option now set an object as argument (with an `url`property), to let
|
|
96
|
-
us bring improvements on it in the future [#995]
|
|
97
|
-
- A Representation's `frameRate` is now always a number - in terms of frame per seconds -
|
|
98
|
-
instead of a string.
|
|
99
|
-
- Update the arguments of the `representationFilter` API
|
|
100
|
-
- `Representations` (in methods: `getAvailableVideoTracks`, `getVideoTrack`,
|
|
101
|
-
`representationFilter`, `getAvailableAudioTracks`, `getAudioTrack` and events:
|
|
102
|
-
`audioTrackChange` and `videoTrackChange`) can have an `undefined` bitrate
|
|
103
|
-
- Remove deprecated fullscreen related APIs (methods: `isFullscreen`, `setFullscreen`,
|
|
104
|
-
`exitFullscreen`, event: `fullscreenChange`) as a a UI is much more adapted to that task
|
|
105
|
-
and can also bring with it things like a progress bar or HTML text tracks
|
|
106
|
-
- Remove deprecated `getNativeTextTrack` method. If advanced features are wanted, it's
|
|
107
|
-
better to just use the HTML text track API
|
|
108
|
-
- Remove deprecated `nativeTextTracksChange` event. Same reason than for
|
|
109
|
-
`getNativeTextTrack`
|
|
110
|
-
- Remove deprecated `hideNativeSubtitles` from `loadVideo` options. Same reason than for
|
|
111
|
-
`getNativeTextTrack`
|
|
112
|
-
- Remove `xhr` property from a `NetworkError`. Doing so stop us from using the fetch API
|
|
113
|
-
- Remove deprecated `defaultAudioTrack` and `defaultTextTrack`in profit of new track APIs
|
|
114
|
-
- Remove `bitrateEstimationChange` event as it is poorly understood (it's not always close
|
|
115
|
-
to the expected bandwidth) and has a very complex relationship with the chosen quality.
|
|
116
|
-
- Remove the notion of environment variables linked to personalized builds (e.g. RXP_DASH)
|
|
117
|
-
in profit of the minimal RxPlayer.
|
|
118
|
-
- Rename `IPersistentSessionStorage` type to `IPersistentLicenseConfig` [#1147]
|
|
119
|
-
- Remove undocumented `audioRobustnesses` and `videoRobustnesses` properties of the
|
|
120
|
-
`keySystems` option of `loadVideo` calls, as more powerful solutions now exist:
|
|
121
|
-
respectively `audioCapabilitiesConfig` and `videoCapabilitiesConfig` [#1148]
|
|
122
|
-
- Remove public types `ISupplementaryTextTrackOption` and
|
|
123
|
-
`ISupplementaryImageTrackOption`. Those are the types respectively for
|
|
124
|
-
`supplementaryTextTracks` and `supplementaryImageTracks` which have been removed
|
|
125
|
-
- Remove public types `IBitrateEstimate` as no API depend on it anymore.
|
|
126
|
-
- Remove public types `IManifest`, `IPeriod`, `IAdaptation`, `IRepresentation`,
|
|
127
|
-
`IRepresentationInfos`, `IBifThumbnail`, `IBifObject` and `IExposedSegment` as no API
|
|
128
|
-
depend on them anymore.
|
|
129
|
-
- Remove public types `IDefaultAudioTrackOption` and `IDefaultTextTrackOption`. Those are
|
|
130
|
-
the types respectively for `defaultAudioTrack` and `defaultTextTrack` `loadVideo`
|
|
131
|
-
options which have been removed
|
|
132
|
-
- Remove public types `IAudioTrackPreference`, `ITextTrackPreference` and
|
|
133
|
-
`IVideoTrackPreference` as the corresponding API do not exist anymore.
|
|
134
|
-
- Stop officially supporting the Internet Explorer 11 browser
|
|
135
|
-
- The `MediaError`'s `trackInfo` property is now an array renamed as `tracksInfo` and
|
|
136
|
-
similar `MediaError` are grouped in one [#1264]
|
|
137
|
-
- The `manifestUpdateUrl` `loadVideo` option has been removed as it was unused [#1276]
|
|
138
|
-
- `volumeChange` events are now sending both the audio volume and the muted status [#1348]
|
|
139
|
-
- `mute`/`unMute`/`isMute` now rely on the `HTMLMediaElement`'s `muted` property and not
|
|
140
|
-
the audio volume [#1348]
|
|
141
|
-
- A `representationFilter`'s advertised `codec` has now been renamed to `codecs` and is an
|
|
142
|
-
Array when defined [#1332]
|
|
143
|
-
- `DASH_WASM` and `DEBUG_ELEMENT` are not experimental features anymore [#1339]
|
|
144
|
-
- The `parseBifThumbnails` function is not an experimental tool anymore [#1339]
|
|
145
|
-
- If all Representations from the current track become undecipherable, automatically
|
|
146
|
-
switch to another track (also send a `trackUpdate` event) instead of stopping on error
|
|
147
|
-
[#1234]
|
|
148
|
-
- Only send `MediaError` errors with the `NO_PLAYABLE_REPRESENTATION` error code when no
|
|
149
|
-
Representation from all tracks of a given type can be played [#1234]
|
|
5
|
+
- Create `"FREEZING"` player state for cases where the playback position is currently not advancing due to an unknown reason, to separate it from regular `"BUFFERING"`. [#1146]
|
|
6
|
+
- The `RELOADING` player state (gettable through the `getPlayerState` and `playerStateChange` API) can now happen at any time to unlock playback.
|
|
7
|
+
- Remove bitrate API: `getAvailableVideoBitrates`, `getAvailableAudioBitrates`, `setAudioBitrate`, `setVideoBitrate`, `getAudioBitrate`, `getVideoBitrate` in profit of the Representations lock APIs [#1144]
|
|
8
|
+
- Remove max bitrate API: `setMaxVideoBitrate`, `setMaxAudioBitrate`, `getMaxVideoBitrate` and `getMaxAudioBitrate` methods as well as the `maxVideoBitrate` and `maxAudioBitrate` options in profit of the Representations lock APIs
|
|
9
|
+
- Remove min bitrate API: `setMinVideoBitrate`, `setMinAudioBitrate`, `getMinVideoBitrate` and `getMinAudioBitrate` methods as well as the `minVideoBitrate` and `minAudioBitrate` options in profit of the Representations lock APIs
|
|
10
|
+
- Remove track preferences API (methods: `getPreferredAudioTracks`, `getPreferredVideoTracks`, `setPreferredAudioTracks` and `setPreferredVideoTracks`, types: `IAudioTrackPreference`, `ITextTrackPreference` and `IVideoTrackPreference`) in profit of the new tracks API
|
|
11
|
+
- Remove `getManualVideoBitrate` and `getManualAudioBitrate` in profit of the new Representations lock APIs
|
|
12
|
+
- Replace `initialAudioBitrate` and `initialVideoBitrate` constructor options with a single `baseBandwidth` option, which better translates what this option is actually doing and allows for future optimizations on our side. [#1155]
|
|
13
|
+
- Rename `audioTrackSwitchingMode` loadVideo option into `defaultAudioTrackSwitchingMode` [#1030]
|
|
14
|
+
- Remove `manualBitrateSwitchingMode` loadVideo option to instead rely on the `switchingMode` property of each `lockVideoRepresentations` and `lockAudioRepresentations` calls. [#1030]
|
|
15
|
+
- Remove `audioBitrateChange` and `videoBitrateChange` events in profit of the new `audioRepresentationChange` and `videoRepresentationChange` events
|
|
16
|
+
- Remove `availableAudioBitratesChange` and `availableVideoBitratesChange` events. Those are less needed with the new Representations lock API and can be mostly replicated through the `audioTrackChange` and `videoTrackChange` events
|
|
17
|
+
- "Flatten" the `transportOptions` loadVideo options by putting all its inner properties directly at the top level of loadVideo options, to simplify its documentation and discoverability [#1149]
|
|
18
|
+
- Remove `limitVideoWidth` constructor option in profit of the more configurable `videoResolutionLimit` constructor option
|
|
19
|
+
- Rename `networkConfig` into `requestConfig` and re-organize its inner properties to pave the way for future request-related APIs.
|
|
20
|
+
- Remove `stopAtEnd` `loadVideo` option and don't automatically stop when reaching the end by default. This behavior can be counter-intuitive and can be very easily implemented by the application.
|
|
21
|
+
- Remove `decipherabilityUpdate` event as it appeared to be not easily exploitable and exposed internal logic too much [#1168]
|
|
22
|
+
- Remove `getUrl` method in profit of the more powerful `getContentUrls`
|
|
23
|
+
- Impossibility to play the content due to unsupported audio and/or video tracks now triggers an error with the `MANIFEST_INCOMPATIBLE_CODECS_ERROR` instead of `MANIFEST_PARSE_ERROR`
|
|
24
|
+
- Remove methods: `getManifest`, `getCurrentAdaptations` and `getCurrentRepresentations`, as they reveal the RxPlayer's internals too much
|
|
25
|
+
- The `"smooth"` transport now needs to be communicated the URL of the Manifest directly (previously, it was possible to redirect it to a XML or JSON file first due to Canal+ legacy reasons).
|
|
26
|
+
- Remove the `supplementaryTextTracks` loadVideo option. You can use the `TextTrackRenderer` tool if you wish to diplay external subtitles on top of your content.
|
|
27
|
+
- Rename `maximumBufferTime` in `positionUpdate` events to `maximumPosition`
|
|
28
|
+
- Remove `getVideoPlayedTime` and `getVideoLoadedTime` methods. Their names was very confusing and can be re-implemented relatively easily using the media element's buffered property.
|
|
29
|
+
- Rename `getVideoDuration` to `getMediaDuration`, to avoid confusion with the video track's duration.
|
|
30
|
+
- Rename `getVideoBufferGap` to `getCurrentBufferGap`, to avoid confusion with the "buffer gap" specific to the video track.
|
|
31
|
+
- Remove image-related API: `supplementaryImageTracks` `loadVideo` option, `imageTrackUpdate` event, `getImageTrackData` method. Those are better handled by an application. The `parseBifThumbnails` tool is still available.
|
|
32
|
+
- Replace `keySystems[].licenseStorage` `keySystems` option (for a `loadVideo` call) by the better-named `persistentLicenseConfig`. The `persistentLicense` boolean (also a `keySystems` option) has also been removed because it was redundant with it) [#1147]
|
|
33
|
+
- Remove `persistentStateRequired` API, in profit of the more powerful `persistentState` API [#1148]
|
|
34
|
+
- Remove `distinctiveIdentifierRequired` API, in profit of the more powerful `distinctiveIdentifier` API [#1148]
|
|
35
|
+
- Remove `keySystems[].fallbackOn` `loadVideo` property as it's now replaced by the more powerful `keySystems[].onKeyOutputRestricted` and `keySystems[].onKeyInternalError` properties.
|
|
36
|
+
- Remove `keySystems[].onKeyStatusesChange` API as it seems to never be used [#1148]
|
|
37
|
+
- Remove `keySystems[].throwOnLicenseExpiration` API as it can now be fully replaced by the `keySystems[].onKeyExpiration` option
|
|
38
|
+
- Remove `aggressiveMode` from the `transportOptions` `loadVideo` option
|
|
39
|
+
- Remove deprecated `throttleWhenHidden` player option in profit of `throttleVideoBitrateWhenHidden`
|
|
40
|
+
- Change payload of `periodChange` events, so they emit only core properties related to a `Period`.
|
|
41
|
+
- Change arguments given to a `transportOptions.segmentLoader` function (the `loadVideo` option): it now doesn't give the full `Manifest`, `Period`, `Adaptation`, `Representation` and `ISegment` structures in arguments but only core properties from it [#995]
|
|
42
|
+
- Custom `manifestLoader` function added to what was previously the `loadVideo`'s `transportOptions` option now set an object as argument (with an `url`property), to let us bring improvements on it in the future [#995]
|
|
43
|
+
- A Representation's `frameRate` is now always a number - in terms of frame per seconds - instead of a string.
|
|
44
|
+
- Update the arguments of the `representationFilter` API
|
|
45
|
+
- `Representations` (in methods: `getAvailableVideoTracks`, `getVideoTrack`, `representationFilter`, `getAvailableAudioTracks`, `getAudioTrack` and events: `audioTrackChange` and `videoTrackChange`) can have an `undefined` bitrate
|
|
46
|
+
- Remove deprecated fullscreen related APIs (methods: `isFullscreen`, `setFullscreen`, `exitFullscreen`, event: `fullscreenChange`) as a a UI is much more adapted to that task and can also bring with it things like a progress bar or HTML text tracks
|
|
47
|
+
- Remove deprecated `getNativeTextTrack` method. If advanced features are wanted, it's better to just use the HTML text track API
|
|
48
|
+
- Remove deprecated `nativeTextTracksChange` event. Same reason than for `getNativeTextTrack`
|
|
49
|
+
- Remove deprecated `hideNativeSubtitles` from `loadVideo` options. Same reason than for `getNativeTextTrack`
|
|
50
|
+
- Remove `xhr` property from a `NetworkError`. Doing so stop us from using the fetch API
|
|
51
|
+
- Remove deprecated `defaultAudioTrack` and `defaultTextTrack`in profit of new track APIs
|
|
52
|
+
- Remove `bitrateEstimationChange` event as it is poorly understood (it's not always close to the expected bandwidth) and has a very complex relationship with the chosen quality.
|
|
53
|
+
- Remove the notion of environment variables linked to personalized builds (e.g. RXP_DASH) in profit of the minimal RxPlayer.
|
|
54
|
+
- Rename `IPersistentSessionStorage` type to `IPersistentLicenseConfig` [#1147]
|
|
55
|
+
- Remove undocumented `audioRobustnesses` and `videoRobustnesses` properties of the `keySystems` option of `loadVideo` calls, as more powerful solutions now exist: respectively `audioCapabilitiesConfig` and `videoCapabilitiesConfig` [#1148]
|
|
56
|
+
- Remove public types `ISupplementaryTextTrackOption` and `ISupplementaryImageTrackOption`. Those are the types respectively for `supplementaryTextTracks` and `supplementaryImageTracks` which have been removed
|
|
57
|
+
- Remove public types `IBitrateEstimate` as no API depend on it anymore.
|
|
58
|
+
- Remove public types `IManifest`, `IPeriod`, `IAdaptation`, `IRepresentation`, `IRepresentationInfos`, `IBifThumbnail`, `IBifObject` and `IExposedSegment` as no API depend on them anymore.
|
|
59
|
+
- Remove public types `IDefaultAudioTrackOption` and `IDefaultTextTrackOption`. Those are the types respectively for `defaultAudioTrack` and `defaultTextTrack` `loadVideo` options which have been removed
|
|
60
|
+
- Remove public types `IAudioTrackPreference`, `ITextTrackPreference` and `IVideoTrackPreference` as the corresponding API do not exist anymore.
|
|
61
|
+
- Stop officially supporting the Internet Explorer 11 browser
|
|
62
|
+
- The `MediaError`'s `trackInfo` property is now an array renamed as `tracksInfo` and similar `MediaError` are grouped in one [#1264]
|
|
63
|
+
- The `manifestUpdateUrl` `loadVideo` option has been removed as it was unused [#1276]
|
|
64
|
+
- `volumeChange` events are now sending both the audio volume and the muted status [#1348]
|
|
65
|
+
- `mute`/`unMute`/`isMute` now rely on the `HTMLMediaElement`'s `muted` property and not the audio volume [#1348]
|
|
66
|
+
- A `representationFilter`'s advertised `codec` has now been renamed to `codecs` and is an Array when defined [#1332]
|
|
67
|
+
- `DASH_WASM` and `DEBUG_ELEMENT` are not experimental features anymore [#1339]
|
|
68
|
+
- The `parseBifThumbnails` function is not an experimental tool anymore [#1339]
|
|
69
|
+
- If all Representations from the current track become undecipherable, automatically switch to another track (also send a `trackUpdate` event) instead of stopping on error [#1234]
|
|
70
|
+
- Only send `MediaError` errors with the `NO_PLAYABLE_REPRESENTATION` error code when no Representation from all tracks of a given type can be played [#1234]
|
|
150
71
|
|
|
151
72
|
### Features
|
|
152
73
|
|
|
153
|
-
- Add `MULTI_THREAD` experimental feature to enable multithreading capabilities through a
|
|
154
|
-
WebWorker
|
|
155
|
-
- `setAudioTrack`, `setVideoTrack` and `setTextTrack` now may take an object in argument,
|
|
156
|
-
|
|
157
|
-
- Add `
|
|
158
|
-
|
|
159
|
-
-
|
|
160
|
-
to
|
|
161
|
-
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
- `
|
|
166
|
-
to
|
|
167
|
-
- Add
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
- Add `
|
|
171
|
-
- Add `
|
|
172
|
-
|
|
173
|
-
- Add `
|
|
174
|
-
`
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
- Add `
|
|
178
|
-
|
|
179
|
-
- Add `
|
|
180
|
-
|
|
181
|
-
- Add `
|
|
182
|
-
the
|
|
183
|
-
- Add `
|
|
184
|
-
|
|
185
|
-
- Add `
|
|
186
|
-
|
|
187
|
-
- Add `
|
|
188
|
-
|
|
189
|
-
- Add `
|
|
190
|
-
- Add `
|
|
191
|
-
`
|
|
192
|
-
|
|
193
|
-
- Add `
|
|
194
|
-
|
|
195
|
-
the chosen key system [#1148]
|
|
196
|
-
- Add `keySystems[].onKeyOutputRestricted` and `keySystems[].onKeyInternalError`
|
|
197
|
-
properties to configure the RxPlayer's behavior when a key switches to the status
|
|
198
|
-
respectively `"output-restricted"` and `"internal-error"`
|
|
199
|
-
- Add `audioCapabilitiesConfig` and `videoCapabilitiesConfig` properties in the
|
|
200
|
-
`keySystems` option (given to the `loadVideo` method) to allow advanced configuration of
|
|
201
|
-
respectively the "audioCapabilities" and "videoCapabilities" in the asked
|
|
202
|
-
MediaKeySystemConfiguration [#1148]
|
|
203
|
-
- Add `representationListUpdate` event for when the list of available Representation for a
|
|
204
|
-
current track changes [#1240]
|
|
205
|
-
- add `connectionTimeout` property to the `requestConfig` `loadVideo` option for both the
|
|
206
|
-
manifest and segment requests to set a timeout just linked to HTTP connection
|
|
207
|
-
establishment [#1319]
|
|
208
|
-
- Add `relativeResumingPosition` property to the `setVideoTrack`and `setAudioTrack`
|
|
209
|
-
options [#1331]
|
|
210
|
-
- types: export type `ICompatibleKeySystem` to the public API [#1340]
|
|
211
|
-
- types: Add `ISegmentLoaderContext` public type for the first argument of the
|
|
212
|
-
`segmentLoader` API
|
|
213
|
-
- types: Add `IRepresentationFilterRepresentation` public type for the first argument of
|
|
214
|
-
the `representationFilter` API
|
|
215
|
-
- types: Add `IRepresentationContext` public type for the second argument of the
|
|
216
|
-
`representationFilter` API
|
|
217
|
-
- types: Add `IManifestLoaderInfo` public type for the first argument of the
|
|
218
|
-
`manifestLoader` API
|
|
219
|
-
- types: Add `IPeriodChangeEvent` public type to define the properties send through a
|
|
220
|
-
`periodChange` event
|
|
221
|
-
- types: Add `IPeriod` public type to define a Period object returned by methods like
|
|
222
|
-
`getAvailablePeriods` or `getCurrentPeriod`
|
|
223
|
-
- types: Add `IVideoTrackSwitchingMode` public type to define the type of the
|
|
224
|
-
`switchingMode` property optionally given to `setAudioTrack`
|
|
225
|
-
- types: Add `IAudioRepresentationsSwitchingMode` public type to define the type of the
|
|
226
|
-
`switchingMode` property optionally given to `lockAudioRepresentations`
|
|
227
|
-
- types: Add `IVideoRepresentationsSwitchingMode` public type to define the type of the
|
|
228
|
-
`switchingMode` property optionally given to `lockAudioRepresentations`
|
|
229
|
-
- types: Add `IBrokenRepresentationsLockContext` public type to define the type sent as a
|
|
230
|
-
payload of the `brokenRepresentationsLock` event
|
|
231
|
-
- types: Add `ITrackUpdateEventPayload` public type to define the type sent as a payload
|
|
232
|
-
of the `trackUpdate` event
|
|
233
|
-
- types: Add `ILockedVideoRepresentationsSettings` public type to define the object that
|
|
234
|
-
should be given to the new `lockVideoRepresentation` method
|
|
235
|
-
- types: Add `ILockedAudioRepresentationsSettings` public type to define the object that
|
|
236
|
-
should be given to the new `lockAudioRepresentation` method
|
|
237
|
-
- types: Add `IAudioTrackSetting` public type to define the object that may be given to
|
|
238
|
-
the `setAudioTrack` method
|
|
239
|
-
- types: Add `IVideoTrackSetting` public type to define the object that may be given to
|
|
240
|
-
the `setVideoTrack` method
|
|
241
|
-
- types: Add `ITextTrackSetting` public type to define the object that may be given to the
|
|
242
|
-
`setTextTrack` method
|
|
74
|
+
- Add `MULTI_THREAD` experimental feature to enable multithreading capabilities through a WebWorker
|
|
75
|
+
- Add `attachWorker` method to attach a WebWorker to an RxPlayer instance.
|
|
76
|
+
- `setAudioTrack`, `setVideoTrack` and `setTextTrack` now may take an object in argument, with the track's id set as a `trackId` property, to allow new features
|
|
77
|
+
- Add `switchingMode` optional property to `setVideoTrack` and `setAudioTrack`, to configure the way in which the RxPlayer switches between the previous and new track
|
|
78
|
+
- Add optional `periodId` property to `setAudioTrack`, `setVideoTrack` and `setTextTrack`, to allow setting the track of another, future or past, Period.
|
|
79
|
+
- `getAvailableAudioTracks`, `getAvailableTextTracks`, `getAvailableVideoTracks`, `getAudioTrack`, `getTextTrack` and `getVideoTrack` can now optionally take a `periodId` argument to retrieve track information on a specific Period, different than the current one.
|
|
80
|
+
- `disableTextTrack`, and`disableVideoTrack` can now optionally take a `periodId` argument to disable a track for a specific Period
|
|
81
|
+
- Add optional `lockedRepresentations` property to `setAudioTrack` and `setVideoTrack`, to only filter some allowed Representations (i.e. qualities) after switching to the wanted track.
|
|
82
|
+
- Add `getCurrentPeriod` method to retrieve information on the Period currently played
|
|
83
|
+
- Add `getAvailablePeriods` method to retrieve information on all Periods on which a track or Representation choice can be made
|
|
84
|
+
- Add `lockVideoRepresentations`, `lockAudioRepresentations`, `getLockedVideoRepresentations`, `getLockedAudioRepresentations`, `unlockVideoRepresentations` and `unlockAudioRepresentations` methods to allow a complex selection of Representations that are currently allowed to play.
|
|
85
|
+
- Add `getVideoRepresentation` and `getAudioRepresentation` method to retrieve information on the currently loaded representations [#1144]
|
|
86
|
+
- Add `audioRepresentationChange` and `videoRepresentationChange` events to be notified when the currently-loaded Representation for the current Period changes.
|
|
87
|
+
- Add `getContentUrls` allowing to retrieve the one or several known URLs through which the current Manifest or content is reachable.
|
|
88
|
+
- Add `videoResolutionLimit` constructor option allowing to automatically limit a video Representation's resolution.
|
|
89
|
+
- Add `newAvailablePeriods` event to signal new Period on which a track and/or Representation choice can be made
|
|
90
|
+
- Add `brokenRepresentationsLock` event for when a Representations lock could not be respected anymore
|
|
91
|
+
- Add `trackUpdate` event for when a track has been updated for any type and Period
|
|
92
|
+
- Add `distinctiveIdentifier` property in the `keySystems` option (given to the `loadVideo` method) to have full control over the MediaKeySystemConfiguration of the same name in the chosen key system [#1148]
|
|
93
|
+
- Add `persistentState` property in the `keySystems` option (given to the `loadVideo` method) to have full control over the MediaKeySystemConfiguration of the same name in the chosen key system [#1148]
|
|
94
|
+
- Add `keySystems[].onKeyOutputRestricted` and `keySystems[].onKeyInternalError` properties to configure the RxPlayer's behavior when a key switches to the status respectively `"output-restricted"` and `"internal-error"`
|
|
95
|
+
- Add `audioCapabilitiesConfig` and `videoCapabilitiesConfig` properties in the `keySystems` option (given to the `loadVideo` method) to allow advanced configuration of respectively the "audioCapabilities" and "videoCapabilities" in the asked MediaKeySystemConfiguration [#1148]
|
|
96
|
+
- Add `representationListUpdate` event for when the list of available Representation for a current track changes [#1240]
|
|
97
|
+
- add `connectionTimeout` property to the `requestConfig` `loadVideo` option for both the manifest and segment requests to set a timeout just linked to HTTP connection establishment [#1319]
|
|
98
|
+
- Add `relativeResumingPosition` property to the `setVideoTrack`and `setAudioTrack` options [#1331]
|
|
99
|
+
- types: export type `ICompatibleKeySystem` to the public API [#1340]
|
|
100
|
+
- types: Add `ISegmentLoaderContext` public type for the first argument of the `segmentLoader` API
|
|
101
|
+
- types: Add `IRepresentationFilterRepresentation` public type for the first argument of the `representationFilter` API
|
|
102
|
+
- types: Add `IRepresentationContext` public type for the second argument of the `representationFilter` API
|
|
103
|
+
- types: Add `IManifestLoaderInfo` public type for the first argument of the `manifestLoader` API
|
|
104
|
+
- types: Add `IPeriodChangeEvent` public type to define the properties send through a `periodChange` event
|
|
105
|
+
- types: Add `IPeriod` public type to define a Period object returned by methods like `getAvailablePeriods` or `getCurrentPeriod`
|
|
106
|
+
- types: Add `IVideoTrackSwitchingMode` public type to define the type of the `switchingMode` property optionally given to `setAudioTrack`
|
|
107
|
+
- types: Add `IAudioRepresentationsSwitchingMode` public type to define the type of the `switchingMode` property optionally given to `lockAudioRepresentations`
|
|
108
|
+
- types: Add `IVideoRepresentationsSwitchingMode` public type to define the type of the `switchingMode` property optionally given to `lockAudioRepresentations`
|
|
109
|
+
- types: Add `IBrokenRepresentationsLockContext` public type to define the type sent as a payload of the `brokenRepresentationsLock` event
|
|
110
|
+
- types: Add `ITrackUpdateEventPayload` public type to define the type sent as a payload of the `trackUpdate` event
|
|
111
|
+
- types: Add `ILockedVideoRepresentationsSettings` public type to define the object that should be given to the new `lockVideoRepresentation` method
|
|
112
|
+
- types: Add `ILockedAudioRepresentationsSettings` public type to define the object that should be given to the new `lockAudioRepresentation` method
|
|
113
|
+
- types: Add `IAudioTrackSetting` public type to define the object that may be given to the `setAudioTrack` method
|
|
114
|
+
- types: Add `IVideoTrackSetting` public type to define the object that may be given to the `setVideoTrack` method
|
|
115
|
+
- types: Add `ITextTrackSetting` public type to define the object that may be given to the `setTextTrack` method
|
|
243
116
|
|
|
244
117
|
### Bug fixes
|
|
245
118
|
|
|
246
|
-
- Tizen (Samsung TVs): Try again to work around all potential issues that could arise due
|
|
247
|
-
|
|
119
|
+
- Tizen (Samsung TVs): Try again to work around all potential issues that could arise due to tizen seeking back by itself [#1327, #1355]
|
|
120
|
+
- dash: Don't unnecessarily reload external `<UTCTiming>` resources at each refresh if it failed for the first request of the Manifest [#1370]
|
|
121
|
+
- dash: The `DASH_WASM` feature do not rely on WebAssembly's sign-extension operators anymore as that is poorly supported on older Samsung and LG TVs [#1372]
|
|
248
122
|
|
|
249
123
|
### Other improvements
|
|
250
124
|
|
|
251
|
-
- Provide both commonJS and ES6-style exports to improve compatibilities with applications
|
|
252
|
-
- Implement better error messages by not repeating the Error Type in it [#1290]
|
|
253
|
-
- DRM: Reload when playback is unexpectedly frozen with encrypted but only decipherable
|
|
254
|
-
|
|
255
|
-
- Add
|
|
256
|
-
|
|
257
|
-
- Demo: Add possibility to see the debug element in the demo page
|
|
125
|
+
- Provide both commonJS and ES6-style exports to improve compatibilities with applications
|
|
126
|
+
- Implement better error messages by not repeating the Error Type in it [#1290]
|
|
127
|
+
- DRM: Reload when playback is unexpectedly frozen with encrypted but only decipherable data in the buffer to work-around rare encryption-related issues [#1236]
|
|
128
|
+
- Add cache when checking for codec support, improving performance on some devices and potentially working around some xbox bugs on long-lived pages [#1324]
|
|
129
|
+
- Demo: Add possibility to see the debug element in the demo page
|
|
130
|
+
|
|
258
131
|
|
|
259
132
|
## v3.33.0 (2024-01-24)
|
|
260
133
|
|
|
261
134
|
### Features
|
|
262
135
|
|
|
263
|
-
- Add `getLivePosition` RxPlayer method [#1300]
|
|
264
|
-
- Add `startAt.fromLivePosition` `loadVideo` option [#1300]
|
|
265
|
-
- Add the possibility to set a new `keySystems` option on the `reload` API [#1308]
|
|
136
|
+
- Add `getLivePosition` RxPlayer method [#1300]
|
|
137
|
+
- Add `startAt.fromLivePosition` `loadVideo` option [#1300]
|
|
138
|
+
- Add the possibility to set a new `keySystems` option on the `reload` API [#1308]
|
|
266
139
|
|
|
267
140
|
### Bug fixes
|
|
268
141
|
|
|
269
|
-
- Fix subtitles "blinking" in some specific conditions, especially with some DASH
|
|
270
|
-
|
|
271
|
-
-
|
|
272
|
-
-
|
|
273
|
-
-
|
|
274
|
-
-
|
|
275
|
-
|
|
276
|
-
-
|
|
277
|
-
with no consecutive Period [#1337]
|
|
278
|
-
- Starting at the end (through a `startAt` `loadVideo` option) or reloading at the end led
|
|
279
|
-
to the restart of the content [#1338]
|
|
280
|
-
- DRM/Safari: also perform Safari DRM work-arounds when the page is launched from the dock
|
|
281
|
-
[#1351, #1356]
|
|
142
|
+
- Fix subtitles "blinking" in some specific conditions, especially with some DASH low-latency contents [#1314]
|
|
143
|
+
- DASH: Fix Period overlap resolution logic for when the first Period is removed [#1311]
|
|
144
|
+
- TTML: Fix handling of the `tts:lineHeight` attribute [#1320]
|
|
145
|
+
- Fix import of the `LOCAL_MANIFEST` experimental feature
|
|
146
|
+
- Avoid very rarely skipping segments which initially were too big to be pushed due to memory limitations [#1323]
|
|
147
|
+
- Fix issue arising when using track APIs at the exact last possible position of a Period with no consecutive Period [#1337]
|
|
148
|
+
- Starting at the end (through a `startAt` `loadVideo` option) or reloading at the end led to the restart of the content [#1338]
|
|
149
|
+
- DRM/Safari: also perform Safari DRM work-arounds when the page is launched from the dock [#1351, #1356]
|
|
282
150
|
|
|
283
151
|
### Other improvements
|
|
284
152
|
|
|
285
|
-
- DASH: rely on SCTE214 `supplementalCodecs` instead of `codecs` if it's supported to
|
|
286
|
-
better support
|
|
287
|
-
-
|
|
288
|
-
- DEBUG_ELEMENT:
|
|
289
|
-
- DEBUG_ELEMENT:
|
|
290
|
-
|
|
291
|
-
-
|
|
292
|
-
-
|
|
293
|
-
|
|
294
|
-
-
|
|
295
|
-
|
|
296
|
-
-
|
|
297
|
-
|
|
298
|
-
- Demo: Fix reporting of live position in demo page [#1313]
|
|
153
|
+
- DASH: rely on SCTE214 `supplementalCodecs` instead of `codecs` if it's supported to better support backward compatible Dolby Vision contents [#1307]
|
|
154
|
+
- DASH: Provide better support of the `availabilityTimeOffset` attribute [#1300]
|
|
155
|
+
- DEBUG_ELEMENT: Add unsupported and undecipherable bitrates to the debug element [#1321]
|
|
156
|
+
- DEBUG_ELEMENT: update buffer graph maximum size so it becomes more readable for lengthy contents [#1316]
|
|
157
|
+
- DEBUG_ELEMENT: always synchronize inventory of segments before rendering it [#1317]
|
|
158
|
+
- Remove remaining RxPlayer dependency removing possibility of some application-side bundling errors [#1312]
|
|
159
|
+
- Add exception to text Garbage collection logic to avoid unnecessarily reload text segments frequently [#1325]
|
|
160
|
+
- Avoid logging too much the buffer's content when our debugging UI or the demo is used [#1341]
|
|
161
|
+
- Demo: Fix reporting of live position in demo page [#1313]
|
|
162
|
+
- build: automatically install Rust and WASM toolchain locally if unavailable when building the RxPlayer [#1373]
|
|
163
|
+
- doc: Update our documentation generator and fix all invalid anchors in it
|
|
164
|
+
- npm: prevent the publishing of unnecessary files on the npm registry [#1377, #1378]
|
|
165
|
+
|
|
299
166
|
|
|
300
167
|
## v3.32.1 (2023-10-19)
|
|
301
168
|
|
|
302
169
|
### Features
|
|
303
170
|
|
|
304
|
-
- DASH: add optional `isSpatialAudio` boolean property to Representation returned by
|
|
305
|
-
`
|
|
306
|
-
|
|
307
|
-
- `
|
|
308
|
-
transport (used for offline playback) [#1275]
|
|
309
|
-
- `addFeatures` static method is now available on all RxPlayer builds. It was previously
|
|
310
|
-
only in the minimal (`rx-player/minimal` import path) [#1287]
|
|
311
|
-
- The `NATIVE_TEXT_BUFFER`, `HTML_TEXT_BUFFER` and `IMAGE_BUFFER` features are now totally
|
|
312
|
-
optional [#1287, #1293]
|
|
171
|
+
- DASH: add optional `isSpatialAudio` boolean property to Representation returned by `getAvailableAudioTracks`, `getAudioTrack`, corresponding events, and `trackInfo` optional property of `MediaError` objects to signal Dolby Atmos techology [#1275]
|
|
172
|
+
- `LOCAL`: add `isSpatialAudio` property to Representation of the experiment `"local"` transport (used for offline playback) [#1275]
|
|
173
|
+
- `addFeatures` static method is now available on all RxPlayer builds. It was previously only in the minimal (`rx-player/minimal` import path) [#1287]
|
|
174
|
+
- The `NATIVE_TEXT_BUFFER`, `HTML_TEXT_BUFFER` and `IMAGE_BUFFER` features are now totally optional [#1287, #1293]
|
|
313
175
|
|
|
314
176
|
### Bug fixes
|
|
315
177
|
|
|
316
|
-
- Fix `setVideoBitrate` and `setAudioBitrate` API which may have led to a higher quality
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
-
|
|
320
|
-
`readyState` of `4` has been reached, as it seems to switch to `3` too soon there
|
|
321
|
-
[#1257]
|
|
322
|
-
- DASH: Fix potential track duplication if more than two `AdaptationSet` have an
|
|
323
|
-
`adaptation-set-switching` `<SupplementalProperty>` between one another [#1279]
|
|
324
|
-
- DASH-WASM: availabilityTimeOffset is actually a floating number [#1278]
|
|
178
|
+
- Fix `setVideoBitrate` and `setAudioBitrate` API which may have led to a higher quality than wanted in the default `"seamless"` `manualBitrateSwitchingMode` if our buffer-based adaptive logic decided to [#1267, #1271]
|
|
179
|
+
- On the PlayStation 5, only switch to the `"LOADED"` state once the HTMLMediaElement's `readyState` of `4` has been reached, as it seems to switch to `3` too soon there [#1257]
|
|
180
|
+
- DASH: Fix potential track duplication if more than two `AdaptationSet` have an `adaptation-set-switching` `<SupplementalProperty>` between one another [#1279]
|
|
181
|
+
- DASH-WASM: availabilityTimeOffset is actually a floating number [#1278]
|
|
325
182
|
|
|
326
183
|
### Other improvements
|
|
327
184
|
|
|
328
|
-
- Do not load the last text segment if the current position goes after it as it is
|
|
329
|
-
|
|
330
|
-
-
|
|
331
|
-
-
|
|
332
|
-
|
|
333
|
-
-
|
|
334
|
-
-
|
|
335
|
-
-
|
|
336
|
-
can't make out where content was in the buffer [#1283]
|
|
337
|
-
- Improve segment start detection in buffer when there's unknown data buffered before it
|
|
338
|
-
[#1284]
|
|
339
|
-
- DRM: Selection of alternative EME API like those used on IE11 or Safari has been
|
|
340
|
-
refactored to facilitate future developments [#1261]
|
|
185
|
+
- Do not load the last text segment if the current position goes after it as it is unnecessary [#1256]
|
|
186
|
+
- Implement better `NetworkError` messages [#1274]
|
|
187
|
+
- Set a better error message for when no `keySystems` option is set when playing an encrypted content
|
|
188
|
+
- Fix very small memory leak when reloading a content [#1286]
|
|
189
|
+
- Re-check for segments to load immediately after the manifest has been refreshed [#1282]
|
|
190
|
+
- When "fallbacking" an undecipherable Representation, now empty the whole buffer if we can't make out where content was in the buffer [#1283]
|
|
191
|
+
- Improve segment start detection in buffer when there's unknown data buffered before it [#1284]
|
|
192
|
+
- DRM: Selection of alternative EME API like those used on IE11 or Safari has been refactored to facilitate future developments [#1261]
|
|
341
193
|
|
|
342
194
|
### Deprecated
|
|
343
195
|
|
|
344
|
-
- Deprecate the `manifestUpdateUrl` `loadVideo` option as it doesn't seem used anymore
|
|
345
|
-
[#
|
|
346
|
-
|
|
347
|
-
they are now unneeded [#1287, #1293]
|
|
196
|
+
- Deprecate the `manifestUpdateUrl` `loadVideo` option as it doesn't seem used anymore [#1288]
|
|
197
|
+
- Deprecate the `NATIVE_TEXT_BUFFER`, `HTML_TEXT_BUFFER` and `IMAGE_BUFFER` features as they are now unneeded [#1287, #1293]
|
|
198
|
+
|
|
348
199
|
|
|
349
200
|
## v3.31.0 (2023-06-14)
|
|
350
201
|
|
|
351
202
|
### Features
|
|
352
203
|
|
|
353
|
-
- Add `isContentLoaded`, `isBuffering`, `isPaused`, and `getLastStoredContentPosition`
|
|
354
|
-
|
|
355
|
-
- Add `
|
|
356
|
-
- Add `trackInfo` property to some `MediaError` to expose information on the track that
|
|
357
|
-
caused the error [#1241]
|
|
204
|
+
- Add `isContentLoaded`, `isBuffering`, `isPaused`, and `getLastStoredContentPosition` methods [#1248]
|
|
205
|
+
- Add `play` and `paused` events [#1253]
|
|
206
|
+
- Add `trackInfo` property to some `MediaError` to expose information on the track that caused the error [#1241]
|
|
358
207
|
|
|
359
208
|
### Bug fixes
|
|
360
209
|
|
|
361
|
-
- DASH: Fix issue which could lead to infinite rebuffering when switching between multiple
|
|
362
|
-
|
|
363
|
-
-
|
|
364
|
-
|
|
365
|
-
- DASH/WASM: actually reject the `DASH_WASM.initialize`'s Promise if it fails [#1238]
|
|
366
|
-
- On the PlayStation 5, set `Infinity` MediaSource duration for live contents to prevent
|
|
367
|
-
playback issues [#1250]
|
|
210
|
+
- DASH: Fix issue which could lead to infinite rebuffering when switching between multiple Periods [#1232]
|
|
211
|
+
- Return actual ending duration through the `getVideoDuration` method when playing dynamic contents whose future end is already known [#1235]
|
|
212
|
+
- DASH/WASM: actually reject the `DASH_WASM.initialize`'s Promise if it fails [#1238]
|
|
213
|
+
- On the PlayStation 5, set `Infinity` MediaSource duration for live contents to prevent playback issues [#1250]
|
|
368
214
|
|
|
369
215
|
### Other improvements
|
|
370
216
|
|
|
371
|
-
- adaptive: Perform various adaptive tweaks to avoid switching too much between qualities
|
|
372
|
-
|
|
373
|
-
-
|
|
374
|
-
as
|
|
375
|
-
-
|
|
376
|
-
|
|
377
|
-
better rendering on apple devices
|
|
378
|
-
- doc: externalize documentation-generator code
|
|
217
|
+
- adaptive: Perform various adaptive tweaks to avoid switching too much between qualities in some conditions [#1237]
|
|
218
|
+
- Directfile: Detect "forced" subtitles on Safari when playing directfile contents (such as HLS) [#1239]
|
|
219
|
+
- Improve `"direct"` `audioTrackSwitchingMode` compatibility by re-seeking [#1246]
|
|
220
|
+
- The `DEBUG_ELEMENT` feature now uses the `monospace` fallback font as a default for a better rendering on apple devices
|
|
221
|
+
- doc: externalize documentation-generator code
|
|
222
|
+
|
|
379
223
|
|
|
380
224
|
## v3.30.0 (2023-03-07)
|
|
381
225
|
|
|
382
226
|
### Features
|
|
383
227
|
|
|
384
|
-
- Add `updateContentUrls` API, allowing to update the Manifest's URL during playback
|
|
385
|
-
[#
|
|
386
|
-
-
|
|
387
|
-
|
|
388
|
-
present [#1187]
|
|
389
|
-
- DRM: add the `getKeySystemConfiguration` method to the RxPlayer [#1202]
|
|
390
|
-
- add experimental `DEBUG_ELEMENT` feature and `createDebugElement` method to render a
|
|
391
|
-
default debugging HTML element [#1200]
|
|
228
|
+
- Add `updateContentUrls` API, allowing to update the Manifest's URL during playback [#1182]
|
|
229
|
+
- DASH: implement forced-subtitles, adding the `forced` property to the audio tracks API and selecting by default a forced text track linked to the audio track's language if present [#1187]
|
|
230
|
+
- DRM: add the `getKeySystemConfiguration` method to the RxPlayer [#1202]
|
|
231
|
+
- add experimental `DEBUG_ELEMENT` feature and `createDebugElement` method to render a default debugging HTML element [#1200]
|
|
392
232
|
|
|
393
233
|
### Deprecated
|
|
394
234
|
|
|
395
|
-
- Deprecate the `getVideoLoadedTime` method which can be easily replaced (see Deprecated
|
|
396
|
-
method documentation)
|
|
397
|
-
- Deprecate the `
|
|
398
|
-
|
|
399
|
-
- Deprecate the `transportOptions.aggressiveMode` option
|
|
400
|
-
- DRM: Deprecate the `keySystems[].onKeyStatusesChange` callback as no good use case was
|
|
401
|
-
found for it.
|
|
235
|
+
- Deprecate the `getVideoLoadedTime` method which can be easily replaced (see Deprecated method documentation)
|
|
236
|
+
- Deprecate the `getVideoPlayedTime` method which can be easily replaced (see Deprecated method documentation)
|
|
237
|
+
- Deprecate the `transportOptions.aggressiveMode` option
|
|
238
|
+
- DRM: Deprecate the `keySystems[].onKeyStatusesChange` callback as no good use case was found for it.
|
|
402
239
|
|
|
403
240
|
### Bug fixes
|
|
404
241
|
|
|
405
|
-
- Fix segment requesting error when playing a DASH content without an url and without
|
|
406
|
-
|
|
407
|
-
-
|
|
408
|
-
|
|
409
|
-
-
|
|
410
|
-
[#1191]
|
|
411
|
-
- DRM: Fix race condition leading to a JS error instead of a `NO_PLAYABLE_REPRESENTATION`
|
|
412
|
-
[#1201]
|
|
413
|
-
- DRM/Compat: Renew MediaKeys at each `loadVideo` on all WebOS (LG TV) platforms to work
|
|
414
|
-
around issues [#1188]
|
|
242
|
+
- Fix segment requesting error when playing a DASH content without an url and without BaseURL elements [#1192]
|
|
243
|
+
- API: Stop sending events if the content is stopped due to a side-effect of one of the event handler [#1197]
|
|
244
|
+
- text-tracks/ttml: fix inconsistent line spacing when resizing the `textTrackElement` [#1191]
|
|
245
|
+
- DRM: Fix race condition leading to a JS error instead of a `NO_PLAYABLE_REPRESENTATION` [#1201]
|
|
246
|
+
- DRM/Compat: Renew MediaKeys at each `loadVideo` on all WebOS (LG TV) platforms to work around issues [#1188]
|
|
415
247
|
|
|
416
248
|
### Other improvements
|
|
417
249
|
|
|
418
|
-
- DASH: better detect closed captions [#1187]
|
|
419
|
-
- DASH: handle `endNumber` DASH attribute [#1186]
|
|
420
|
-
- DASH: Do not merge AdaptationSet with role "main" anymore [#1214]
|
|
421
|
-
- DASH: parse `transferCharacteristics` property in the MPD to better detect hdr [#1212]
|
|
422
|
-
- Support encrypted contents on Panasonic 2019 TVs [#1226]
|
|
423
|
-
- Better handle SourceBuffer's QuotaExceededError, responsible for `MediaError` with the
|
|
424
|
-
|
|
425
|
-
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
- DRM: Request PR recommendation when PlayReady is asked and try default recommendation
|
|
429
|
-
robustnesses [#1189]
|
|
250
|
+
- DASH: better detect closed captions [#1187]
|
|
251
|
+
- DASH: handle `endNumber` DASH attribute [#1186]
|
|
252
|
+
- DASH: Do not merge AdaptationSet with role "main" anymore [#1214]
|
|
253
|
+
- DASH: parse `transferCharacteristics` property in the MPD to better detect hdr [#1212]
|
|
254
|
+
- Support encrypted contents on Panasonic 2019 TVs [#1226]
|
|
255
|
+
- Better handle SourceBuffer's QuotaExceededError, responsible for `MediaError` with the `BUFFER_FULL_ERROR` code [#1221]
|
|
256
|
+
- API: send available...TracksChange events in the very unlikely scenario where tracks are added after a manifest update [#1197]
|
|
257
|
+
- Completely remove RxJS dependency from the RxPlayer's source code [#1193]
|
|
258
|
+
- DRM: Request PR recommendation when PlayReady is asked and try default recommendation robustnesses [#1189]
|
|
259
|
+
|
|
430
260
|
|
|
431
261
|
## v3.29.0 (2022-11-16)
|
|
432
262
|
|
|
433
263
|
### Features
|
|
434
264
|
|
|
435
|
-
- add `networkConfig.segmentRequestTimeout` and `networkConfig.manifestRequestTimeout`
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
- add `
|
|
439
|
-
`
|
|
440
|
-
- add `timeout` property to a new third argument communicated to a `manifestLoader` (from
|
|
441
|
-
`loadVideo`'s `transportOptions`) [#1156]
|
|
442
|
-
- DRM: add `keySystems[].onKeyExpiration` to `loadVideo` options to configure the behavior
|
|
443
|
-
the RxPlayer should have on key expiration [#1157]
|
|
444
|
-
- DRM: add `keyStatuses` property to an `EncryptedMediaError` with the
|
|
445
|
-
`KEY_STATUS_CHANGE_ERROR` code to communicate which key id and key statuses caused
|
|
446
|
-
issues. [#1157]
|
|
265
|
+
- add `networkConfig.segmentRequestTimeout` and `networkConfig.manifestRequestTimeout` options to loadVideo to configure the timeout of respectively segment and manifest requests [#1156]
|
|
266
|
+
- add `timeout` property to the first argument communicated to a `segmentLoader` (from `loadVideo`'s `transportOptions`) [#1156]
|
|
267
|
+
- add `timeout` property to a new third argument communicated to a `manifestLoader` (from `loadVideo`'s `transportOptions`) [#1156]
|
|
268
|
+
- DRM: add `keySystems[].onKeyExpiration` to `loadVideo` options to configure the behavior the RxPlayer should have on key expiration [#1157]
|
|
269
|
+
- DRM: add `keyStatuses` property to an `EncryptedMediaError` with the `KEY_STATUS_CHANGE_ERROR` code to communicate which key id and key statuses caused issues. [#1157]
|
|
447
270
|
|
|
448
271
|
### Deprecated
|
|
449
272
|
|
|
450
|
-
- DRM: Deprecate `keySystems[].throwOnLicenseExpiration` `loadVideo` option as this
|
|
451
|
-
boolean can be replaced with more customizability by the new
|
|
452
|
-
`keySystems[].onKeyExpiration` `loadVideo` option [#1157]
|
|
273
|
+
- DRM: Deprecate `keySystems[].throwOnLicenseExpiration` `loadVideo` option as this boolean can be replaced with more customizability by the new `keySystems[].onKeyExpiration` `loadVideo` option [#1157]
|
|
453
274
|
|
|
454
275
|
### Bug fixes
|
|
455
276
|
|
|
456
|
-
- Directfile: Fix long-running issues with rare "directfile" contents and some
|
|
457
|
-
|
|
458
|
-
`
|
|
459
|
-
- DRM: Fix
|
|
460
|
-
`
|
|
461
|
-
- Compat/Directfile: Fix an issue
|
|
462
|
-
|
|
463
|
-
- Compat/
|
|
464
|
-
|
|
465
|
-
-
|
|
466
|
-
manually through a `setTimeout` call when XMLHttpRequests are created for Manifest and
|
|
467
|
-
segment requests [#1152]
|
|
468
|
-
- Compat/Directfile: Fix an issue on Tizen (Samsung TVs) where playing directfile contents
|
|
469
|
-
could randomly lead to not having audio [#1170]
|
|
470
|
-
- Compat: Fix issue with Tizen (Samsung TVs) where starting playback on a discontinuity
|
|
471
|
-
could lead to infinite rebuffering [#1140, #1176]
|
|
472
|
-
- Compat/Directfile: For `"directfile"` contents, also consider `AudioTrack` with a
|
|
473
|
-
`description` (without an "s") as audio-description audio tracks to work-around what
|
|
474
|
-
seems to be a Safari typo [#1160]
|
|
475
|
-
- DRM: When using persistent licenses, create new MediaKeySession when `load` resolves
|
|
476
|
-
with `false`, instead of relying the same, to fix issues with such persistent sessions
|
|
477
|
-
if the browser cleaned it up [#1139]
|
|
478
|
-
- Only call "MediaSource.endOfStream" once, the most visible side-effect should have been
|
|
479
|
-
repeated logs [#1163]
|
|
277
|
+
- Directfile: Fix long-running issues with rare "directfile" contents and some browsers/platforms (seen on Chrome PC and PlayStation 5) where playback would stay in `LOADING` state indefinitely despite playing [#1174]
|
|
278
|
+
- DRM: Fix undocumented `keySystems[].videoRobustnesses` `loadVideo` option. `audioRobustnesses` was previously used even for video capabilities [#1171]
|
|
279
|
+
- Compat/Directfile: Fix an issue with WebOS (LG TVs) when playing multiple directfile contents with the `stopAtEnd` player option set to `true` [#1154]
|
|
280
|
+
- Compat/DRM: Fix infinite loading on WebOS (LG TVs) 2021 and 2022 when loading more than once an encrypted content by resetting decryption capabilities each time [#1175]
|
|
281
|
+
- Compat: To work around an issue on WebOS (LG TVs), also specify a request timeout manually through a `setTimeout` call when XMLHttpRequests are created for Manifest and segment requests [#1152]
|
|
282
|
+
- Compat/Directfile: Fix an issue on Tizen (Samsung TVs) where playing directfile contents could randomly lead to not having audio [#1170]
|
|
283
|
+
- Compat: Fix issue with Tizen (Samsung TVs) where starting playback on a discontinuity could lead to infinite rebuffering [#1140, #1176]
|
|
284
|
+
- Compat/Directfile: For `"directfile"` contents, also consider `AudioTrack` with a `description` (without an "s") as audio-description audio tracks to work-around what seems to be a Safari typo [#1160]
|
|
285
|
+
- DRM: When using persistent licenses, create new MediaKeySession when `load` resolves with `false`, instead of relying the same, to fix issues with such persistent sessions if the browser cleaned it up [#1139]
|
|
286
|
+
- Only call "MediaSource.endOfStream" once, the most visible side-effect should have been repeated logs [#1163]
|
|
480
287
|
|
|
481
288
|
### Other improvements
|
|
482
289
|
|
|
483
|
-
- DASH: Improve multi-CDN configurations, by smartly selecting the right CDN depending on
|
|
484
|
-
|
|
485
|
-
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
ranges of remaining data, allowing better discontinuity handling and duration estimates
|
|
489
|
-
for sill-loading dowloaded contents [#1151]
|
|
490
|
-
- Only send, through `"warning"` events, one `EncryptedMediaError` with a
|
|
491
|
-
`KEY_STATUS_CHANGE_ERROR` code when multiple ones arises at the same time [#1157]
|
|
290
|
+
- DASH: Improve multi-CDN configurations, by smartly selecting the right CDN depending on past status [#1165]
|
|
291
|
+
- Allow reverse playback use cases by not skipping gaps and most discontinuities when the playback rate has been set to `0` or a negative value [#1138]
|
|
292
|
+
- In the experimental "local" transport, add `incomingRanges` property to signal the time ranges of remaining data, allowing better discontinuity handling and duration estimates for sill-loading dowloaded contents [#1151]
|
|
293
|
+
- Only send, through `"warning"` events, one `EncryptedMediaError` with a `KEY_STATUS_CHANGE_ERROR` code when multiple ones arises at the same time [#1157]
|
|
294
|
+
|
|
492
295
|
|
|
493
296
|
## v3.28.0 (2022-07-12)
|
|
494
297
|
|
|
495
298
|
### Features
|
|
496
299
|
|
|
497
|
-
- Add `label` to audio, video and text track APIs (such as `getAvailableAudioTracks`)
|
|
498
|
-
|
|
499
|
-
Manifest [#1105, #1109]
|
|
500
|
-
- Automatically set the LogLevel to `"DEBUG"` if a global `__RX_PLAYER_DEBUG_MODE__`
|
|
501
|
-
constant is set to `true`, to simplify debugging [#1115]
|
|
300
|
+
- Add `label` to audio, video and text track APIs (such as `getAvailableAudioTracks`) which gives a human-readable description of the corresponding track, if available in the Manifest [#1105, #1109]
|
|
301
|
+
- Automatically set the LogLevel to `"DEBUG"` if a global `__RX_PLAYER_DEBUG_MODE__` constant is set to `true`, to simplify debugging [#1115]
|
|
502
302
|
|
|
503
303
|
### Bug fixes
|
|
504
304
|
|
|
505
|
-
- Use the first **compatible** codec of the current AdaptationSet when creating a
|
|
506
|
-
|
|
507
|
-
-
|
|
508
|
-
[#
|
|
509
|
-
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
- DASH:
|
|
513
|
-
[#
|
|
514
|
-
-
|
|
515
|
-
|
|
516
|
-
the
|
|
517
|
-
- Fix issue with `maxVideoBufferSize` setting which could lead to too much data being
|
|
518
|
-
buffered [#1125]
|
|
519
|
-
- Prevent possibility of requests loops and infinite rebuffering when a pushed segment is
|
|
520
|
-
always completely and immediately garbage collected by the browser [#1123]
|
|
521
|
-
- DASH: Fix potential rare memory leak when stopping the content after it has reloaded at
|
|
522
|
-
least once [#1135]
|
|
523
|
-
- Directfile: Properly announce the audio track's `audioDescription` accessibility
|
|
524
|
-
attribute in directfile mode on Safari [#1136]
|
|
525
|
-
- DASH: Fix issues that could arise if a segment is calculated to start at a negative
|
|
526
|
-
position [#1122]
|
|
527
|
-
- DASH: Fix possibility of wrong segments being requested when a SegmentTimeline in a
|
|
528
|
-
given Period (whose Period@end is set) had an S@r set to `-1` at its end [#1098]
|
|
529
|
-
- DASH: If the first `<S>` has its S@t attribute not set, make as if it is set to `0`
|
|
530
|
-
[#1118]
|
|
305
|
+
- Use the first **compatible** codec of the current AdaptationSet when creating a SourceBuffer [#1094]
|
|
306
|
+
- DASH/DRM: Fix potential infinite rebuffering when a KID is not announced in the MPD [#1113]
|
|
307
|
+
- DRM: Fix quality fallback when loading a content whose license has been cached under an extended `singleLicensePer` setting and when starting (and staying) with a quality whose key id is not in it [#1133]
|
|
308
|
+
- DASH: Avoid infinite loop due to rounding errors while parsing multi-Periods MPDs [#1111, #1110]
|
|
309
|
+
- After a `RELOADING` state, stay in `PAUSED` if the media element was paused synchronously before the side-effect which triggered the reloading (usually coming from the API) was perform [#1132]
|
|
310
|
+
- Fix issue with `maxVideoBufferSize` setting which could lead to too much data being buffered [#1125]
|
|
311
|
+
- Prevent possibility of requests loops and infinite rebuffering when a pushed segment is always completely and immediately garbage collected by the browser [#1123]
|
|
312
|
+
- DASH: Fix potential rare memory leak when stopping the content after it has reloaded at least once [#1135]
|
|
313
|
+
- Directfile: Properly announce the audio track's `audioDescription` accessibility attribute in directfile mode on Safari [#1136]
|
|
314
|
+
- DASH: Fix issues that could arise if a segment is calculated to start at a negative position [#1122]
|
|
315
|
+
- DASH: Fix possibility of wrong segments being requested when a SegmentTimeline in a given Period (whose Period@end is set) had an S@r set to `-1` at its end [#1098]
|
|
316
|
+
- DASH: If the first `<S>` has its S@t attribute not set, make as if it is set to `0` [#1118]
|
|
531
317
|
|
|
532
318
|
### Other improvements
|
|
533
319
|
|
|
534
|
-
- TTML: Add support for percent based thickness for textOutline in TTML Subtitles [#1108]
|
|
535
|
-
- Improve TypeScript's language servers auto import feature with the RxPlayer by better
|
|
536
|
-
|
|
537
|
-
-
|
|
538
|
-
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
-
|
|
542
|
-
|
|
543
|
-
- TTML: Better handle EBU-TT subtitles by handling the `tt` XML namespace in our TTML
|
|
544
|
-
parser [#1131]
|
|
545
|
-
- DRM: Information on persisted DRM sessions are now automatically updated to their last
|
|
546
|
-
version when possible [#1096]
|
|
547
|
-
- Only log values which are relatively inexpensive to stringify to reduce the difference
|
|
548
|
-
between debugging sessions and what is usually seen in production [#1116]
|
|
320
|
+
- TTML: Add support for percent based thickness for textOutline in TTML Subtitles [#1108]
|
|
321
|
+
- Improve TypeScript's language servers auto import feature with the RxPlayer by better redirecting to the exported type [#1126]
|
|
322
|
+
- If seeking after the last potential position, load last segments before ending [#1097]
|
|
323
|
+
- The duration set on the media element is now only relative to the current chosen tracks (it was previously relative to all potential track). This allows to seek later when switching e.g. to a longer video track [#1102]
|
|
324
|
+
- Errors coming from an HTMLMediaElement now have the browser's error message if it exists [#1112]
|
|
325
|
+
- TTML: Better handle EBU-TT subtitles by handling the `tt` XML namespace in our TTML parser [#1131]
|
|
326
|
+
- DRM: Information on persisted DRM sessions are now automatically updated to their last version when possible [#1096]
|
|
327
|
+
- Only log values which are relatively inexpensive to stringify to reduce the difference between debugging sessions and what is usually seen in production [#1116]
|
|
328
|
+
|
|
549
329
|
|
|
550
330
|
## v3.27.0 (2022-03-31)
|
|
551
331
|
|
|
552
332
|
### Features
|
|
553
333
|
|
|
554
|
-
- Add a `maxVideoBufferSize` constructor option and `{get,set}MaxVideoBufferSize` methods
|
|
555
|
-
to
|
|
556
|
-
-
|
|
557
|
-
allowing to obtain decryption license for groups of Periods allowing a compromise
|
|
558
|
-
between optimization, features and compatibility [#1028, #1061]
|
|
559
|
-
- Add a `"reload"` `audioTrackSwitchingMode` to work-around rare compatibility issues when
|
|
560
|
-
switching audio tracks [#1089]
|
|
334
|
+
- Add a `maxVideoBufferSize` constructor option and `{get,set}MaxVideoBufferSize` methods to limit the size of loaded video data buffered at the same time [#1041, #1054]
|
|
335
|
+
- DRM: Add a `"periods"` mode to the `keySystems[].singleLicensePer` `loadVideo` option, allowing to obtain decryption license for groups of Periods allowing a compromise between optimization, features and compatibility [#1028, #1061]
|
|
336
|
+
- Add a `"reload"` `audioTrackSwitchingMode` to work-around rare compatibility issues when switching audio tracks [#1089]
|
|
561
337
|
|
|
562
338
|
### Bug fixes
|
|
563
339
|
|
|
564
|
-
- subtitles: Fix rare issue where subtitles could be skipped due to a rounding error
|
|
565
|
-
[#
|
|
566
|
-
-
|
|
567
|
-
|
|
568
|
-
-
|
|
569
|
-
|
|
570
|
-
-
|
|
571
|
-
-
|
|
572
|
-
-
|
|
573
|
-
`
|
|
574
|
-
-
|
|
575
|
-
`transportOptions.checkMediaSegmentIntegrity` was set to `true`
|
|
576
|
-
- avoid unnecessary warning logs when loading some initialization segments [#1049]
|
|
577
|
-
- TypeScript: Add forgotten TypeScript types in the exposed segment and manifest loader
|
|
578
|
-
APIs [#1057]
|
|
579
|
-
- DRM: Avoid decryption issues when a license is persisted in a `singleLicensePer`
|
|
580
|
-
`"init-data"` mode but loaded in a `"content"` mode [#1031, #1042]
|
|
581
|
-
- DRM: Totally avoid the theoretical possibility of leaking MediaKeySessions when a
|
|
582
|
-
`generateRequest` or `load` call takes multiple seconds [#1093]
|
|
340
|
+
- subtitles: Fix rare issue where subtitles could be skipped due to a rounding error [#1064]
|
|
341
|
+
- DASH: fix issue where the wrong segments would be requested on $Number$-based MPD with a SegmentTimeline older than the `timeShiftBufferDepth` [#1052, #1060]
|
|
342
|
+
- directfile: disable all audio tracks before enabling one to work-around Safari issue on MacOS Monterey [#1067]
|
|
343
|
+
- avoid performing a small seek when changing the audio track [#1080]
|
|
344
|
+
- api: allow switching to RELOADING state synchronously after LOADED [#1083]
|
|
345
|
+
- Safari Mobile: Improve decryption support on Safari mobile by relying on the vendored `WebKitMediaKeys` API [#1072]
|
|
346
|
+
- DASH: Fix issue which prevented the integrity check of most MP4 DASH segments when `transportOptions.checkMediaSegmentIntegrity` was set to `true`
|
|
347
|
+
- avoid unnecessary warning logs when loading some initialization segments [#1049]
|
|
348
|
+
- TypeScript: Add forgotten TypeScript types in the exposed segment and manifest loader APIs [#1057]
|
|
349
|
+
- DRM: Avoid decryption issues when a license is persisted in a `singleLicensePer` `"init-data"` mode but loaded in a `"content"` mode [#1031, #1042]
|
|
350
|
+
- DRM: Totally avoid the theoretical possibility of leaking MediaKeySessions when a `generateRequest` or `load` call takes multiple seconds [#1093]
|
|
583
351
|
|
|
584
352
|
### Other improvements
|
|
585
353
|
|
|
586
|
-
- DASH: always consider that the non-last Period is finished when it contains
|
|
587
|
-
|
|
588
|
-
-
|
|
589
|
-
|
|
590
|
-
-
|
|
591
|
-
|
|
592
|
-
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
- DRM:
|
|
596
|
-
|
|
597
|
-
- DRM: Stop retrying closing MediaKeySessions multiple times when it fails, instead doing
|
|
598
|
-
it only once when it should work [#1093]
|
|
599
|
-
- TypeScript: Add IBitrateEstimate, IPositionUpdate and IPlayerState types to the exported
|
|
600
|
-
types [#1084]
|
|
601
|
-
- Remove dependency on pinkie's promise ponyfill [#1058, #1090]
|
|
602
|
-
- tests: add performance tests, to better catch and avoid performance regressions [#1053,
|
|
603
|
-
#1062]
|
|
604
|
-
- DRM: Refactor DRM logic for better maintainability. DRM-linked logs are now prefixed by
|
|
605
|
-
`DRM:` instead of `EME:` like previously [#1042]
|
|
354
|
+
- DASH: always consider that the non-last Period is finished when it contains SegmentTimeline elements [#1047]
|
|
355
|
+
- add better buffer cleaning logic on a browser's `QuotaExceededError` to better handle memory limitations [#1065]
|
|
356
|
+
- DASH: Prioritize selectionPriority attribute over a "main" Role when ordering AdaptationSets [#1082]
|
|
357
|
+
- directfile/Safari: use the `getStartDate` method in `getWallClockTime`, `seekTo` and the `positionUpdate` event when available to obtain true offseted "wall-clock" times when playing HLS contents on Safari [#1055]
|
|
358
|
+
- DRM: Improve DRM Session caches performance when `singleLicensePer` is set to `"content"`
|
|
359
|
+
- DRM: Stop retrying closing MediaKeySessions multiple times when it fails, instead doing it only once when it should work [#1093]
|
|
360
|
+
- TypeScript: Add IBitrateEstimate, IPositionUpdate and IPlayerState types to the exported types [#1084]
|
|
361
|
+
- Remove dependency on pinkie's promise ponyfill [#1058, #1090]
|
|
362
|
+
- tests: add performance tests, to better catch and avoid performance regressions [#1053, #1062]
|
|
363
|
+
- DRM: Refactor DRM logic for better maintainability. DRM-linked logs are now prefixed by `DRM:` instead of `EME:` like previously [#1042]
|
|
364
|
+
|
|
606
365
|
|
|
607
366
|
## v3.26.2 (2022-01-11)
|
|
608
367
|
|
|
609
368
|
### Bug fixes
|
|
610
369
|
|
|
611
|
-
- API: re-switch to SEEKING state instead of BUFFERING when seeking to already-buffered
|
|
612
|
-
|
|
613
|
-
-
|
|
614
|
-
|
|
615
|
-
-
|
|
616
|
-
|
|
617
|
-
- subtitles: Work-around recent Chrome issue where the content of a native `<track>`
|
|
618
|
-
element would still be visible despite being removed from the DOM (issue only
|
|
619
|
-
reproducible in the `"native"` `textTrackMode`) [#1039]
|
|
620
|
-
- API: Fix rare issue happening when switching rapidly between Representations, which led
|
|
621
|
-
to multiple APIs such as `getAvailableVideoBitrate` or `getAvailableAudioTracks`
|
|
622
|
-
returning either incorrect or empty results [#1018]
|
|
623
|
-
- Improve prevention of rare segment-loading loops by fixing an issue with the clean-up of
|
|
624
|
-
the short-term buffer history we maintain [#1045]
|
|
370
|
+
- API: re-switch to SEEKING state instead of BUFFERING when seeking to already-buffered data [#1015]
|
|
371
|
+
- DASH: provide default startNumber attribute for number-based SegmentTemplate indexes with a SegmentTimeline [#1009]
|
|
372
|
+
- TTML (subtitles): interpret percentages as relative to the computed cell size and not as the percentage of the inherited font size in the page [#1013]
|
|
373
|
+
- subtitles: Work-around recent Chrome issue where the content of a native `<track>` element would still be visible despite being removed from the DOM (issue only reproducible in the `"native"` `textTrackMode`) [#1039]
|
|
374
|
+
- API: Fix rare issue happening when switching rapidly between Representations, which led to multiple APIs such as `getAvailableVideoBitrate` or `getAvailableAudioTracks` returning either incorrect or empty results [#1018]
|
|
375
|
+
- Improve prevention of rare segment-loading loops by fixing an issue with the clean-up of the short-term buffer history we maintain [#1045]
|
|
625
376
|
|
|
626
377
|
### Other improvements
|
|
627
378
|
|
|
628
|
-
- DASH-LL: Improve adaptive bitrate logic on low-latency contents by implementing a
|
|
629
|
-
|
|
630
|
-
- DASH
|
|
631
|
-
-
|
|
632
|
-
[#
|
|
633
|
-
-
|
|
634
|
-
|
|
635
|
-
-
|
|
636
|
-
|
|
637
|
-
[#
|
|
638
|
-
-
|
|
639
|
-
|
|
640
|
-
[#
|
|
641
|
-
|
|
642
|
-
- EME: Add hex-encoded key id to the `KEY_STATUS_CHANGE_ERROR` error message so we can
|
|
643
|
-
know which key we're talking about when debugging [#1033]
|
|
644
|
-
- dev/scripts: for the "modular" (a.k.a. minimal) RxPlayer build now rely on TypeScript's
|
|
645
|
-
const enums, instead of uglily using sed, to replace compile-time constants. [#1014]
|
|
646
|
-
- dev/scripts: remove reliance on environment variables when running the RxPlayer build
|
|
647
|
-
scripts [#1004]
|
|
648
|
-
- dev/scripts: add esbuild devdependency and add "s" script to allow faster checks for
|
|
649
|
-
RxPlayer developpers [#1003]
|
|
650
|
-
- CI: Rely on Github actions instead of Travis for most CI-related matters [#1046]
|
|
651
|
-
- code/refacto: replace central `Clock` concept (Observable bringing media-related updates
|
|
652
|
-
to the RxPlayer at a regular pace) by a more flexible `PlaybackObserver` class [#1002]
|
|
379
|
+
- DASH-LL: Improve adaptive bitrate logic on low-latency contents by implementing a specific algorithm for those [#1025, #1036]
|
|
380
|
+
- DASH-LL: Improve handling of $Time$-based DASH-LL contents [#1020]
|
|
381
|
+
- DASH: Support UTCTiming element with the `urn:mpeg:dash:utc:http-xsdate:2014` scheme [#1021]
|
|
382
|
+
- DOC: Important refactoring of the RxPlayer API documentation to improve readability, discoverability and to add search capability to it [#1016]
|
|
383
|
+
- DASH: handle ContentProtection elements that have been defined at the Representation-level (and not at the AdaptationSet-level, as defined by the DASH-IF IOP) [#1027]
|
|
384
|
+
- DASH: Be resilient when the resource behind an UTCTiming element leads to an error (usually due to an HTTP-related issue) - instead of failing with an error like now [#1026]
|
|
385
|
+
- Better estimate the duration of ISOBMFF segments with multiple moof boxes [#1037]
|
|
386
|
+
- EME: Add hex-encoded key id to the `KEY_STATUS_CHANGE_ERROR` error message so we can know which key we're talking about when debugging [#1033]
|
|
387
|
+
- dev/scripts: for the "modular" (a.k.a. minimal) RxPlayer build now rely on TypeScript's const enums, instead of uglily using sed, to replace compile-time constants. [#1014]
|
|
388
|
+
- dev/scripts: remove reliance on environment variables when running the RxPlayer build scripts [#1004]
|
|
389
|
+
- dev/scripts: add esbuild devdependency and add "s" script to allow faster checks for RxPlayer developpers [#1003]
|
|
390
|
+
- CI: Rely on Github actions instead of Travis for most CI-related matters [#1046]
|
|
391
|
+
- code/refacto: replace central `Clock` concept (Observable bringing media-related updates to the RxPlayer at a regular pace) by a more flexible `PlaybackObserver` class [#1002]
|
|
392
|
+
|
|
653
393
|
|
|
654
394
|
## v3.26.1 (2021-09-14)
|
|
655
395
|
|
|
656
396
|
### Bug fixes
|
|
657
397
|
|
|
658
|
-
- ttml: Do not throw if a TTML subtitles file doesn't contain any `<body>` tag, just
|
|
659
|
-
|
|
660
|
-
-
|
|
661
|
-
|
|
662
|
-
-
|
|
663
|
-
[#
|
|
664
|
-
-
|
|
665
|
-
|
|
666
|
-
-
|
|
667
|
-
garbage collected by the browser immediately after being pushed [#987, #990]
|
|
668
|
-
- compat/DRM: In some Safari versions, communicating a license as a JS `ArrayBuffer` could
|
|
669
|
-
throw, this is now fixed [#974]
|
|
670
|
-
- DASH_WASM: Don't stop with a fatal error if an expected ISO8601 duration value is empty
|
|
671
|
-
in the MPD
|
|
672
|
-
- DASH_WASM: Parse `<Event>` elements which contain an XML namespace defined outside that
|
|
673
|
-
element [#981]
|
|
674
|
-
- DASH_WASM: Drastically reduce wasm compilation time and file size [#980]
|
|
398
|
+
- ttml: Do not throw if a TTML subtitles file doesn't contain any `<body>` tag, just ignore it [#993]
|
|
399
|
+
- Auto-detect when playback is unexplicably frozen and try to unlock it through a small seek [#982]
|
|
400
|
+
- Properly send `available{Audio,Video}BitratesChange` event for multi-Period contents [#983]
|
|
401
|
+
- DASH/MetaPlaylist/Local: fix rare infinite rebuffering issue which could happen when changing or disabling the track of a future Period [#1000]
|
|
402
|
+
- compat: Prevent rare segment-loading loops by automatically detecting when segments are garbage collected by the browser immediately after being pushed [#987, #990]
|
|
403
|
+
- compat/DRM: In some Safari versions, communicating a license as a JS `ArrayBuffer` could throw, this is now fixed [#974]
|
|
404
|
+
- DASH_WASM: Don't stop with a fatal error if an expected ISO8601 duration value is empty in the MPD
|
|
405
|
+
- DASH_WASM: Parse `<Event>` elements which contain an XML namespace defined outside that element [#981]
|
|
406
|
+
- DASH_WASM: Drastically reduce wasm compilation time and file size [#980]
|
|
675
407
|
|
|
676
408
|
### Other improvements
|
|
677
409
|
|
|
678
|
-
- Request initialization segment and the first media segments at the same time when
|
|
679
|
-
|
|
680
|
-
-
|
|
681
|
-
|
|
682
|
-
-
|
|
683
|
-
-
|
|
684
|
-
- dev:
|
|
685
|
-
- dev:
|
|
686
|
-
|
|
687
|
-
performing runtime type-checking in some cases (in DEV mode only) [#994]
|
|
688
|
-
- dev/code: Remove RxJS from the transports code [#962]
|
|
410
|
+
- Request initialization segment and the first media segments at the same time when possible, potentially reducing loading times [#973]
|
|
411
|
+
- Remove cached segment request detection in the adaptive logic, as it is sensible to false positives, leading to a poor bitrate in some short contents [#977]
|
|
412
|
+
- Export more needed types through the `rx-player/types` path [#972, #976]
|
|
413
|
+
- demo: Expose some player options in the demo page [#999]
|
|
414
|
+
- dev: Rewrite build logic from bash to node.js to improve its maintainability
|
|
415
|
+
- dev: Replace internal `info` script by more helpful and interactive `list` script [#991]
|
|
416
|
+
- dev/code: Forbid the usage of TypeScript's type `any` in most of the RxPlayer's code - performing runtime type-checking in some cases (in DEV mode only) [#994]
|
|
417
|
+
- dev/code: Remove RxJS from the transports code [#962]
|
|
418
|
+
|
|
689
419
|
|
|
690
420
|
## v3.26.0 (2021-06-10)
|
|
691
421
|
|
|
692
422
|
### Features
|
|
693
423
|
|
|
694
|
-
- Add HDR information through the `hdrInfo` property on video Representation/tracks as
|
|
695
|
-
|
|
696
|
-
`
|
|
697
|
-
`
|
|
698
|
-
- Add
|
|
699
|
-
[#
|
|
700
|
-
- Add
|
|
701
|
-
|
|
702
|
-
-
|
|
703
|
-
|
|
704
|
-
- Add `areTrickModeTracksEnabled` method to indicate whether the RxPlayer is using
|
|
705
|
-
trickmode tracks in priority [#940]
|
|
706
|
-
- Add `trickModeTracks` and `isTrickModeTrack` properties to video tracks as returned by
|
|
707
|
-
the `getVideoTrack` and `getAvailableVideoTracks` method and by the `videoTrackChange`
|
|
708
|
-
event [#940]
|
|
709
|
-
- Add `maxSessionCacheSize` `keySystems` option, to configure the maximum number of
|
|
710
|
-
decryption sessions that can be kept alive at the same time in a cache [#938]
|
|
711
|
-
- The `manifestLoader` callback defined in `transportOptions` can now ask for a request to
|
|
712
|
-
be retried [#964]
|
|
713
|
-
- `initialManifest` now accepts the Manifest as an `ArrayBuffer` [#937]
|
|
714
|
-
- The `manifestLoader` callback defined in `transportOptions` can now send the Manifest as
|
|
715
|
-
an `ArrayBuffer` [#937]
|
|
424
|
+
- Add HDR information through the `hdrInfo` property on video Representation/tracks as returned by APIs such as `getVideoTrack`, `getAvailableVideoTracks`, the `videoTrackChange` event, `getManifest`, `getCurrentAdaptations` and `getCurrentRepresentations` [#946]
|
|
425
|
+
- Add the `DASH_WASM` experimental feature, allowing faster MPD parsing using WebAssembly [#937]
|
|
426
|
+
- Add the experimental `VideoThumbnailLoader` tool, which uses "trickmodes" DASH AdaptationSet to generate thumbnails [#647]
|
|
427
|
+
- Add `preferTrickModeTracks` option to `setPlaybackRate`, to switch on or off trickmode tracks when available on the Manifest [#940]
|
|
428
|
+
- Add `areTrickModeTracksEnabled` method to indicate whether the RxPlayer is using trickmode tracks in priority [#940]
|
|
429
|
+
- Add `trickModeTracks` and `isTrickModeTrack` properties to video tracks as returned by the `getVideoTrack` and `getAvailableVideoTracks` method and by the `videoTrackChange` event [#940]
|
|
430
|
+
- Add `maxSessionCacheSize` `keySystems` option, to configure the maximum number of decryption sessions that can be kept alive at the same time in a cache [#938]
|
|
431
|
+
- The `manifestLoader` callback defined in `transportOptions` can now ask for a request to be retried [#964]
|
|
432
|
+
- `initialManifest` now accepts the Manifest as an `ArrayBuffer` [#937]
|
|
433
|
+
- The `manifestLoader` callback defined in `transportOptions` can now send the Manifest as an `ArrayBuffer` [#937]
|
|
716
434
|
|
|
717
435
|
### Bug fixes
|
|
718
436
|
|
|
719
|
-
- DASH: don't ignore new EventStream elements that weren't in the previous MPD update for
|
|
720
|
-
a
|
|
721
|
-
- DASH:
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
- DASH:
|
|
725
|
-
starts or after the last cue ends [#945, #948]
|
|
726
|
-
- DASH: Avoid loading plain-text subtitles in a loop when the
|
|
727
|
-
`transportOptions.checkMediaSegmentIntegrity` is set to `true` [#947]
|
|
728
|
-
- DASH: avoid ending a dynamic stream if new Periods may be added later to the MPD [#959]
|
|
729
|
-
- DASH: avoid unnecessarily refresh a MPD based on SegmentList elements when they don't
|
|
730
|
-
perfectly align with the pushed data [#963]
|
|
437
|
+
- DASH: don't ignore new EventStream elements that weren't in the previous MPD update for a given Period [#956]
|
|
438
|
+
- DASH: fix fatal error linked to the `duration` of the `MediaSource` happening when playing a multi-Period live DASH content whose previous (before updating) last Period's segments had been fully generated and fully pushed. [#952]
|
|
439
|
+
- DASH: Avoid loading plain-text subtitles in a loop when playing before the first cue starts or after the last cue ends [#945, #948]
|
|
440
|
+
- DASH: Avoid loading plain-text subtitles in a loop when the `transportOptions.checkMediaSegmentIntegrity` is set to `true` [#947]
|
|
441
|
+
- DASH: avoid ending a dynamic stream if new Periods may be added later to the MPD [#959]
|
|
442
|
+
- DASH: avoid unnecessarily refresh a MPD based on SegmentList elements when they don't perfectly align with the pushed data [#963]
|
|
731
443
|
|
|
732
444
|
### Other improvements
|
|
733
445
|
|
|
734
|
-
- Improve `audioTrackSwitchingMode` `"direct"` mode by avoiding unnecessary reloading
|
|
735
|
-
|
|
736
|
-
-
|
|
737
|
-
|
|
738
|
-
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
- DASH: Avoid loading two times a segment instead of once when that segment is not
|
|
742
|
-
anounced in the MPD through a SegmentBase, SegmentList nor SegmentTemplate element but
|
|
743
|
-
just through the Representation's BaseURL. [#949]
|
|
744
|
-
- Update used RxJS version to 7.0.0, which might bring with it a smaller size and better
|
|
745
|
-
performances [#954]
|
|
746
|
-
- demo: remove Chart.js dependency (we found that its new API documentation and errors
|
|
747
|
-
were too impenetrable) and replace the "Buffer Size" chart by a homemade one. [#955,
|
|
748
|
-
#957]
|
|
446
|
+
- Improve `audioTrackSwitchingMode` `"direct"` mode by avoiding unnecessary reloading cases [#872, #887, #943]
|
|
447
|
+
- When seeking after the end of an ended content, actually seek just a little before to avoid subtle issues [#941]
|
|
448
|
+
- DASH: limit the postponment of a Manifest refresh due to poor MPD-parsing performance to 6-times the "regular" delay (not impacted by `tansportOptions.minimumManifestUpdateInterval`) [#958]
|
|
449
|
+
- DASH: Avoid loading two times a segment instead of once when that segment is not anounced in the MPD through a SegmentBase, SegmentList nor SegmentTemplate element but just through the Representation's BaseURL. [#949]
|
|
450
|
+
- Update used RxJS version to 7.0.0, which might bring with it a smaller size and better performances [#954]
|
|
451
|
+
- demo: remove Chart.js dependency (we found that its new API documentation and errors were too impenetrable) and replace the "Buffer Size" chart by a homemade one. [#955, #957]
|
|
452
|
+
|
|
749
453
|
|
|
750
454
|
## v3.24.0 (2021-04-01)
|
|
751
455
|
|
|
752
456
|
### Features
|
|
753
457
|
|
|
754
|
-
- Add `inbandEvent` event for when an event is encountered in a media segment [#892]
|
|
755
|
-
- DRM: Add `singleLicensePer` `keySystems` option to be able to signal in advance that the
|
|
756
|
-
|
|
757
|
-
#904]
|
|
758
|
-
- DRM: Add `keySystems[].licenseStorage.disableRetroCompatibility` boolean to unlock
|
|
759
|
-
optimizations when compatibility with EME sessions persisted in older RxPlayer versions
|
|
760
|
-
is not important [#919]
|
|
458
|
+
- Add `inbandEvent` event for when an event is encountered in a media segment [#892]
|
|
459
|
+
- DRM: Add `singleLicensePer` `keySystems` option to be able to signal in advance that the current content has a single license, even if it has multiple encryption keys [#863, #904]
|
|
460
|
+
- DRM: Add `keySystems[].licenseStorage.disableRetroCompatibility` boolean to unlock optimizations when compatibility with EME sessions persisted in older RxPlayer versions is not important [#919]
|
|
761
461
|
|
|
762
462
|
### Bug fixes
|
|
763
463
|
|
|
764
|
-
- DASH: Fix rounding error that could cause infinite buffering issues when going from a
|
|
765
|
-
|
|
766
|
-
- DRM:
|
|
767
|
-
|
|
768
|
-
[#
|
|
769
|
-
-
|
|
770
|
-
-
|
|
771
|
-
[#
|
|
772
|
-
-
|
|
773
|
-
|
|
774
|
-
- Avoid cases of infinite rebuffering on Tizen 4 by avoiding pushing segments "on top of
|
|
775
|
-
others" too close to the current position [#925]
|
|
776
|
-
- Avoid seeking issues on Tizen by not seeking over discontinuities that will be already
|
|
777
|
-
handled by the browser [#922]
|
|
778
|
-
- Fix initial seek on Tizen (Samsung TVs) on live contents by setting a much lower
|
|
779
|
-
duration (to work-around a Tizen overflow) [#914]
|
|
780
|
-
- DASH: Consider multiple defined `<Accessibility>` tags for a single AdaptationSet [#903]
|
|
781
|
-
- Fix error that could be thrown on Safari when calling the `getStatusForHDCP` method from
|
|
782
|
-
the experimental `MediaCapabilitiesProber` tool [#927]
|
|
464
|
+
- DASH: Fix rounding error that could cause infinite buffering issues when going from a DASH Period to the next [#897, #899]
|
|
465
|
+
- DRM: Always pass on server certificate before any challenge is generated. Contents with multiple licenses previously could lead to the latter being done before the former. [#895]
|
|
466
|
+
- DRM: Fix possible leaks of MediaKeySessions if closed at the wrong time [#920]
|
|
467
|
+
- Fix issue making sudden and acute fall in bandwidth not being considered soon enough [#906]
|
|
468
|
+
- On some devices when `maxBufferAhead` is set, avoid removing the initially loaded data if done before the initial seek could be performed [#907]
|
|
469
|
+
- Avoid cases of infinite rebuffering on Tizen 4 by avoiding pushing segments "on top of others" too close to the current position [#925]
|
|
470
|
+
- Avoid seeking issues on Tizen by not seeking over discontinuities that will be already handled by the browser [#922]
|
|
471
|
+
- Fix initial seek on Tizen (Samsung TVs) on live contents by setting a much lower duration (to work-around a Tizen overflow) [#914]
|
|
472
|
+
- DASH: Consider multiple defined `<Accessibility>` tags for a single AdaptationSet [#903]
|
|
473
|
+
- Fix error that could be thrown on Safari when calling the `getStatusForHDCP` method from the experimental `MediaCapabilitiesProber` tool [#927]
|
|
783
474
|
|
|
784
475
|
### Other improvements
|
|
785
476
|
|
|
786
|
-
- Avoid to push on top of the current position if there's already a segment there as it
|
|
787
|
-
|
|
788
|
-
-
|
|
789
|
-
-
|
|
790
|
-
|
|
791
|
-
-
|
|
792
|
-
|
|
793
|
-
-
|
|
794
|
-
|
|
795
|
-
-
|
|
796
|
-
|
|
797
|
-
-
|
|
798
|
-
|
|
799
|
-
-
|
|
800
|
-
|
|
801
|
-
-
|
|
802
|
-
|
|
803
|
-
- Avoid switching to a SEEKING state if the seek operation was performed inside the
|
|
804
|
-
RxPlayer's code [#872, #887]
|
|
805
|
-
- DRM: Wait up to 100 milliseconds after a persistent MediaKeySession has been loaded to
|
|
806
|
-
wait for possibly late `keyStatuses` updates [#928]
|
|
807
|
-
- DRM: Only store persistent MediaKeySession once at least one key is known [#926]
|
|
808
|
-
- DRM: Reconsider Representations that have been fallbacked from if they become
|
|
809
|
-
decipherable [#905]
|
|
810
|
-
- DRM: Lower the maximum size of the MediaKeySession cache from 50 to 15 to improve
|
|
811
|
-
compatibility, even more now that license with multiple keys are properly handled
|
|
812
|
-
- Doc: Move architecture documentation closer to the code it documents [#764, #900]
|
|
813
|
-
- Doc: add "Quick links" to the top of the API documentation [#909]
|
|
477
|
+
- Avoid to push on top of the current position if there's already a segment there as it can provoke minor decoding issues on some devices [#925]
|
|
478
|
+
- Update video element's duration if the content duration changes [#917]
|
|
479
|
+
- DASH: Improve loading time with encrypted contents by only using the encrypted initialization data found in the Manifest when found in it [#911, #919]
|
|
480
|
+
- Record redirections made on a `manifestUpdateUrl` to request directly the right URL on next update. [#929]
|
|
481
|
+
- Improve loading time when a `serverCertificate` is given by calling the `setServerCertificate` API earlier [#895]
|
|
482
|
+
- Improve loading time when switching contents by fetching the Manifest at the same time the previous content is cleaned-up [#894]
|
|
483
|
+
- Improve loading time on some CPU-constrained devices by not running unnecessary playback checks on the "progress" HTMLMediaElement event anymore [#893]
|
|
484
|
+
- DASH: Consider DASH audio AdaptationSet with a "urn:mpeg:dash:role:2011" schemeIdUri and a "description" role as `audioDescription` tracks [#903]
|
|
485
|
+
- Warn through the logger when the autoplay attribute is enabled on the media element but not on RxPlayer [#924]
|
|
486
|
+
- Avoid switching to a SEEKING state if the seek operation was performed inside the RxPlayer's code [#872, #887]
|
|
487
|
+
- DRM: Wait up to 100 milliseconds after a persistent MediaKeySession has been loaded to wait for possibly late `keyStatuses` updates [#928]
|
|
488
|
+
- DRM: Only store persistent MediaKeySession once at least one key is known [#926]
|
|
489
|
+
- DRM: Reconsider Representations that have been fallbacked from if they become decipherable [#905]
|
|
490
|
+
- DRM: Lower the maximum size of the MediaKeySession cache from 50 to 15 to improve compatibility, even more now that license with multiple keys are properly handled
|
|
491
|
+
- Doc: Move architecture documentation closer to the code it documents [#764, #900]
|
|
492
|
+
- Doc: add "Quick links" to the top of the API documentation [#909]
|
|
493
|
+
|
|
814
494
|
|
|
815
495
|
## v3.23.1 (2021-02-01)
|
|
816
496
|
|
|
817
497
|
### Bug fixes
|
|
818
498
|
|
|
819
|
-
- Fix support of encrypted contents on Safari (v3.23.0 regression)
|
|
499
|
+
- Fix support of encrypted contents on Safari (v3.23.0 regression)
|
|
500
|
+
|
|
820
501
|
|
|
821
502
|
## v3.23.0 (2021-02-01)
|
|
822
503
|
|
|
823
504
|
### Features
|
|
824
505
|
|
|
825
|
-
- Add the `reload` method to be able to re-load the last loaded content as fast as
|
|
826
|
-
|
|
827
|
-
-
|
|
828
|
-
|
|
829
|
-
- Emit `DISCONTINUITY_ENCOUNTERED` warnings when a discontinuity has been seeked over
|
|
830
|
-
[#862]
|
|
831
|
-
- Add minAudioBitrate and minVideoBitrate constructor options and the
|
|
832
|
-
{set,get}Minimum{Audio,Video}Bitrate methods to define the minimum quality reachable
|
|
833
|
-
through adaptive streaming [#876]
|
|
506
|
+
- Add the `reload` method to be able to re-load the last loaded content as fast as possible (e.g. after fatal errors) [#859, #867]
|
|
507
|
+
- Add `onCodecSwitch` loadVideo option, to select a strategy when a new incompatible codec is encountered [#856]
|
|
508
|
+
- Emit `DISCONTINUITY_ENCOUNTERED` warnings when a discontinuity has been seeked over [#862]
|
|
509
|
+
- Add minAudioBitrate and minVideoBitrate constructor options and the {set,get}Minimum{Audio,Video}Bitrate methods to define the minimum quality reachable through adaptive streaming [#876]
|
|
834
510
|
|
|
835
511
|
### Bug fixes
|
|
836
512
|
|
|
837
|
-
- Fix impossibility to fallback to another Representation (with the
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
-
|
|
841
|
-
-
|
|
842
|
-
|
|
843
|
-
-
|
|
844
|
-
- In "native" `textTrackMode`, avoid requesting text segments in a loop [#878]
|
|
845
|
-
- Disable effects of `throttleVideoBitrateWhenHidden`, `limitVideoWidth` and
|
|
846
|
-
`throttleVideoBitrate` player options on Firefox >= 67 due to how Picture in Picture
|
|
847
|
-
mode is currently handled in them [#874]
|
|
848
|
-
- Work-around race condition in old Chromium versions where loading a persistent
|
|
849
|
-
MediaKeySession led to no key statuses right away [#847]
|
|
513
|
+
- Fix impossibility to fallback to another Representation (with the `keySystems[].fallbackOn` `loadVideo` options) when a decryption key has been found to be non-usable [#889]
|
|
514
|
+
- Fix DRM-related events being sent twice in a row instead of just once [#850]
|
|
515
|
+
- Stop and throw `MANIFEST_PARSE_ERROR` error again when either audio or video has only unsupported codecs (instead of just playing the other type) [#864]
|
|
516
|
+
- Avoid re-downloading a segment that ends a lot before its expected end [#846]
|
|
517
|
+
- In "native" `textTrackMode`, avoid requesting text segments in a loop [#878]
|
|
518
|
+
- Disable effects of `throttleVideoBitrateWhenHidden`, `limitVideoWidth` and `throttleVideoBitrate` player options on Firefox >= 67 due to how Picture in Picture mode is currently handled in them [#874]
|
|
519
|
+
- Work-around race condition in old Chromium versions where loading a persistent MediaKeySession led to no key statuses right away [#847]
|
|
850
520
|
|
|
851
521
|
### Other improvements
|
|
852
522
|
|
|
853
|
-
- Skip over most audio or video discontinuities in the stream, even those not announced in
|
|
854
|
-
|
|
855
|
-
-
|
|
856
|
-
|
|
857
|
-
-
|
|
858
|
-
|
|
859
|
-
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
-
|
|
863
|
-
|
|
864
|
-
[#843, #875]
|
|
865
|
-
- Throw a better error when no EME API is found
|
|
866
|
-
- Reduce default bundles size by switching to webpack 5 to generate them
|
|
867
|
-
- tests: Add conformance tests on the initial seek to help debugging related issues on new
|
|
868
|
-
platforms [#873]
|
|
869
|
-
- lint/code: Use eslint code linter even for the TypeScript code [#842]
|
|
523
|
+
- Skip over most audio or video discontinuities in the stream, even those not announced in the Manifest [#862]
|
|
524
|
+
- When track or bitrate switching lead to a reload, seek back a consistent number of milliseconds to give back context [#848]
|
|
525
|
+
- Don't call `setServerCertificate` API when `keySystems[].serverCertificate` option is set to `null` [#849]
|
|
526
|
+
- On the rare platforms where an undefined initialization data type can be received on encrypted events, retry `generateRequest` with a default "cenc" value if the first one fails due to it being empty [#870]
|
|
527
|
+
- Re-add debug logs logging the principal media properties at each clock tick [#844]
|
|
528
|
+
- Use TextEncoder and TextDecoder interfaces when available to speed-up string conversions [#843, #875]
|
|
529
|
+
- Throw a better error when no EME API is found
|
|
530
|
+
- Reduce default bundles size by switching to webpack 5 to generate them
|
|
531
|
+
- tests: Add conformance tests on the initial seek to help debugging related issues on new platforms [#873]
|
|
532
|
+
- lint/code: Use eslint code linter even for the TypeScript code [#842]
|
|
533
|
+
|
|
870
534
|
|
|
871
535
|
## v3.22.0 (2020-11-17)
|
|
872
536
|
|
|
873
537
|
### Features
|
|
874
538
|
|
|
875
|
-
- Add `audioTrackSwitchingMode` `loadVideo` option to allow different strategies when
|
|
876
|
-
|
|
877
|
-
- Add `
|
|
878
|
-
|
|
879
|
-
-
|
|
880
|
-
|
|
881
|
-
- tools: Add `StringUtils` utilitary functions to tools to convert bytes to strings and
|
|
882
|
-
the other way around [#809]
|
|
883
|
-
- tools: The `TextTrackRenderer` tool is not experimental anymore: it now has a stable API
|
|
884
|
-
[#810]
|
|
885
|
-
- experimental/local-manifest: The RxPlayer now (only) plays the new `"0.2"` format
|
|
886
|
-
version of the "LocalManifest" (in the experimental `"local"` transport) [#810]
|
|
539
|
+
- Add `audioTrackSwitchingMode` `loadVideo` option to allow different strategies when switching between audio tracks [#801, #806]
|
|
540
|
+
- Add `enableFastSwitching` `loadVideo` option to enable or disable optimizations doing segment replacement in the browser's buffer [#779, #780]
|
|
541
|
+
- Add `initialManifest` `loadVideo` option to provide the Manifest to the RxPlayer when it has already been loaded [#807]
|
|
542
|
+
- tools: Add `StringUtils` utilitary functions to tools to convert bytes to strings and the other way around [#809]
|
|
543
|
+
- tools: The `TextTrackRenderer` tool is not experimental anymore: it now has a stable API [#810]
|
|
544
|
+
- experimental/local-manifest: The RxPlayer now (only) plays the new `"0.2"` format version of the "LocalManifest" (in the experimental `"local"` transport) [#810]
|
|
887
545
|
|
|
888
546
|
### Bug fixes
|
|
889
547
|
|
|
890
|
-
- directfile: Fix impossibility to play an encrypted content in directfile mode
|
|
891
|
-
|
|
892
|
-
-
|
|
893
|
-
-
|
|
894
|
-
|
|
895
|
-
-
|
|
896
|
-
|
|
897
|
-
-
|
|
898
|
-
|
|
899
|
-
-
|
|
900
|
-
playing now end properly [#818]
|
|
901
|
-
- local-manifest: Fix and clarify the duration and maximum position reported for a playing
|
|
902
|
-
LocalManifest [#818]
|
|
903
|
-
- compatibility/drm: On some webkit-based browsers, do not require the use of a server
|
|
904
|
-
certificate for DRM if the key system used is not FairPlay [#833]
|
|
905
|
-
- drm: Properly update to a different server certificate on the MediaKeys or remove it if
|
|
906
|
-
needed [#835]
|
|
907
|
-
- drm: throw MEDIA_IS_ENCRYPTED_ERROR again when playing an encrypted event without either
|
|
908
|
-
the `EME` feature, EME APIs or a `keySystems` option [#841]
|
|
548
|
+
- directfile: Fix impossibility to play an encrypted content in directfile mode (regression brought in v3.21.1) [#827, #830]
|
|
549
|
+
- subtitles: Display multiple cues with overlapping times [#829]
|
|
550
|
+
- smooth: Fix minimum position in a Smooth live content when fewer segments than the dvr window length are available [#826]
|
|
551
|
+
- dash/metaplaylist: Fix possible playback issues on multi-Period contents, where segments from multiple Periods overlap [#837]
|
|
552
|
+
- Fix very rare race condition which triggered a "setting priority of null" error after synchronous segment requests were done [#817]
|
|
553
|
+
- local-manifest: LocalManifest that transition from not finished to finished while playing now end properly [#818]
|
|
554
|
+
- local-manifest: Fix and clarify the duration and maximum position reported for a playing LocalManifest [#818]
|
|
555
|
+
- compatibility/drm: On some webkit-based browsers, do not require the use of a server certificate for DRM if the key system used is not FairPlay [#833]
|
|
556
|
+
- drm: Properly update to a different server certificate on the MediaKeys or remove it if needed [#835]
|
|
557
|
+
- drm: throw MEDIA_IS_ENCRYPTED_ERROR again when playing an encrypted event without either the `EME` feature, EME APIs or a `keySystems` option [#841]
|
|
909
558
|
|
|
910
559
|
### Other improvements
|
|
911
560
|
|
|
912
|
-
- subtitles/ttml: Apply default position to TTML subtitles in `"html"` `textTrackMode`
|
|
913
|
-
|
|
914
|
-
-
|
|
915
|
-
|
|
916
|
-
-
|
|
917
|
-
|
|
918
|
-
-
|
|
919
|
-
-
|
|
920
|
-
|
|
921
|
-
-
|
|
922
|
-
-
|
|
923
|
-
-
|
|
924
|
-
|
|
925
|
-
- code: avoid circular dependency in `src/features` in original typescript source files
|
|
926
|
-
[#805]
|
|
927
|
-
- demo: Fix default position for the video track select element in the demo to always be
|
|
928
|
-
at the currently selected video track [#813]
|
|
929
|
-
- demo/code: Better integrate the RxPlayer to the demo: through a simple import, instead
|
|
930
|
-
of adding a script tag for the bundled version [#811]
|
|
931
|
-
- dev: Remove all enforced git-hooks (on pre-commit and pre-push) [#808]
|
|
561
|
+
- subtitles/ttml: Apply default position to TTML subtitles in `"html"` `textTrackMode` when no style is found [#815]
|
|
562
|
+
- subtitles/ttml: Set default text color to white to TTML subtitles in `"html"` textTrackMode [#832]
|
|
563
|
+
- drm: Avoid re-setting a server certificate we know has already been pushed to improve loading performance [#824, #835]
|
|
564
|
+
- dash: Always prefer a "main" AdaptationSet when hesitating between multiple ones [#828]
|
|
565
|
+
- dash: Improve minimum position precision for dynamic DASH contents when less segments are available than what would be guessed from the timeShiftBufferDepth [#826]
|
|
566
|
+
- drm/logs: Better log why a MediaKeySession is not considered as "usable" [#822]
|
|
567
|
+
- drm/logs: Be more verbose with DRM-related logs, even at lower logger levels [#821]
|
|
568
|
+
- tests/conformance: Add "conformance tests", to quickly test the capabilities of new devices and targets [#814]
|
|
569
|
+
- code: avoid circular dependency in `src/features` in original typescript source files [#805]
|
|
570
|
+
- demo: Fix default position for the video track select element in the demo to always be at the currently selected video track [#813]
|
|
571
|
+
- demo/code: Better integrate the RxPlayer to the demo: through a simple import, instead of adding a script tag for the bundled version [#811]
|
|
572
|
+
- dev: Remove all enforced git-hooks (on pre-commit and pre-push) [#808]
|
|
573
|
+
|
|
932
574
|
|
|
933
575
|
## v3.21.1 (2020-09-21)
|
|
934
576
|
|
|
935
577
|
### Bug fixes
|
|
936
578
|
|
|
937
|
-
- compatibility/drm: make switching the current `MediaKeys` work on most platforms by
|
|
938
|
-
|
|
939
|
-
-
|
|
940
|
-
|
|
941
|
-
-
|
|
942
|
-
|
|
943
|
-
-
|
|
944
|
-
|
|
945
|
-
- api: fix `getUrl` and the minimum position calculation after playing for some time a
|
|
946
|
-
live content with a set `manifestUpdateUrl` [#775, #776]
|
|
947
|
-
- drm/subtitles: better handle UTF-8 and UTF-16 characters in an encrypted initialization
|
|
948
|
-
data or in subtitles [#791]
|
|
949
|
-
- requests: still retry all the other segment's URLs when a non-retryable error happen on
|
|
950
|
-
the request for one of them [#798]
|
|
951
|
-
- dash: fix infinite rebuffering when playing multi-Period DASH contents for some time
|
|
952
|
-
with a `manifestUpdateUrl` set [#797]
|
|
579
|
+
- compatibility/drm: make switching the current `MediaKeys` work on most platforms by re-ordering browser API calls [#766, #744]
|
|
580
|
+
- compatibility/drm: in Edge and IE11, fix behavior which could lead to not fallbacking from a non-decryptable quality due to a badly parsed key ID [#790]
|
|
581
|
+
- dash: when a Representation depends on multiple SegmentTemplate at the same time, merge all corresponding information instead of just relying on the last one [#767, #768]
|
|
582
|
+
- smooth: skip discontinuity when seeking in the middle of one when playing a smooth content [#792]
|
|
583
|
+
- api: fix `getUrl` and the minimum position calculation after playing for some time a live content with a set `manifestUpdateUrl` [#775, #776]
|
|
584
|
+
- drm/subtitles: better handle UTF-8 and UTF-16 characters in an encrypted initialization data or in subtitles [#791]
|
|
585
|
+
- requests: still retry all the other segment's URLs when a non-retryable error happen on the request for one of them [#798]
|
|
586
|
+
- dash: fix infinite rebuffering when playing multi-Period DASH contents for some time with a `manifestUpdateUrl` set [#797]
|
|
953
587
|
|
|
954
588
|
### Other improvements
|
|
955
589
|
|
|
956
|
-
- improve seek latency in some rare cases where we could profit from cancelling a request
|
|
957
|
-
for
|
|
958
|
-
- requests:
|
|
959
|
-
|
|
960
|
-
-
|
|
961
|
-
|
|
962
|
-
-
|
|
963
|
-
|
|
964
|
-
-
|
|
965
|
-
|
|
966
|
-
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
bytes [#784]
|
|
970
|
-
- logs: when logs are set to `"DEBUG"`, now regularly print visual representations of
|
|
971
|
-
which segments live currently in the buffer(s) [#795]
|
|
972
|
-
- demo: change separator in the demo's generated links from "\" to "!" to not change its
|
|
973
|
-
form when percent-encoded [#758, #759]
|
|
974
|
-
- project: better document changes in changelog and release notes, mostly by linking to
|
|
975
|
-
related issues and PRs
|
|
976
|
-
- code: rename "Buffer" module to "Stream" in the code, documentation and logs to better
|
|
977
|
-
reflect what that code does [#793]
|
|
978
|
-
- tests: add "global" unit tests for a more a module-oriented testing strategy (when
|
|
979
|
-
compared to our existing function-oriented unit tests) to our EME (DRM) related code
|
|
980
|
-
[#753]
|
|
590
|
+
- improve seek latency in some rare cases where we could profit from cancelling a request for a needed segment [#752, #769]
|
|
591
|
+
- requests: only download an initialization segment when media segments for that Representation are needed [#773]
|
|
592
|
+
- requests: avoid unnecessary segment requests when segments loaded don't exactly align with what is expected if contiguous segments exist [#772, #771]
|
|
593
|
+
- better time quality switches to avoid having to re-download segments in the new quality [#781, #782, #783]
|
|
594
|
+
- adaptive: limit bandwidth oscillations when the buffer level is low by choosing a lower bitrate by default and limiting fall in bandwidth when in "starvation mode" [#796]
|
|
595
|
+
- compatibility/drm: filter out badly-formed CENC PSSH when found, if some well-formed exist [#788]
|
|
596
|
+
- isobmff: support rare but possible occurence where an ISOBMFF box size is stored on 8 bytes [#784]
|
|
597
|
+
- logs: when logs are set to `"DEBUG"`, now regularly print visual representations of which segments live currently in the buffer(s) [#795]
|
|
598
|
+
- demo: change separator in the demo's generated links from "\" to "!" to not change its form when percent-encoded [#758, #759]
|
|
599
|
+
- project: better document changes in changelog and release notes, mostly by linking to related issues and PRs
|
|
600
|
+
- code: rename "Buffer" module to "Stream" in the code, documentation and logs to better reflect what that code does [#793]
|
|
601
|
+
- tests: add "global" unit tests for a more a module-oriented testing strategy (when compared to our existing function-oriented unit tests) to our EME (DRM) related code [#753]
|
|
602
|
+
|
|
981
603
|
|
|
982
604
|
## v3.21.0 (2020-06-17)
|
|
983
605
|
|
|
984
606
|
### Features
|
|
985
607
|
|
|
986
|
-
- api/events: add `"streamEvent"` event for when a DASH EventStream's event is reached
|
|
987
|
-
- api/events: add `"streamEventSkip"` event for when a DASH EventStream's event is
|
|
988
|
-
"
|
|
989
|
-
-
|
|
990
|
-
|
|
991
|
-
- api/tracks: add
|
|
992
|
-
and `setPreferredVideoTracks` to be able to also apply them to the currently loaded
|
|
993
|
-
Periods / content
|
|
994
|
-
- text/webvtt: parse settings attributes of WebVTT subtitles when in HTML mode
|
|
995
|
-
- api/tracks: add codec information to `getAvailableAudioTracks` and `getAudioTrack`
|
|
608
|
+
- api/events: add `"streamEvent"` event for when a DASH EventStream's event is reached
|
|
609
|
+
- api/events: add `"streamEventSkip"` event for when a DASH EventStream's event is "skipped"
|
|
610
|
+
- types/events: add `IStreamEvent` and `IStreamEventData` - which define the payload emitted by both a `"streamEvent"` and `"streamEventSkip"` events to the exported types
|
|
611
|
+
- api/tracks: add second argument to `setPreferredAudioTracks`, `setPreferredTextTracks` and `setPreferredVideoTracks` to be able to also apply them to the currently loaded Periods / content
|
|
612
|
+
- text/webvtt: parse settings attributes of WebVTT subtitles when in HTML mode
|
|
613
|
+
- api/tracks: add codec information to `getAvailableAudioTracks` and `getAudioTrack`
|
|
996
614
|
|
|
997
615
|
### Bug fixes
|
|
998
616
|
|
|
999
|
-
- dash: do not reduce the minimum position when using the `manifestUpdateUrl`
|
|
1000
|
-
`
|
|
1001
|
-
- local-manifest:
|
|
1002
|
-
- local-manifest:
|
|
1003
|
-
the
|
|
1004
|
-
-
|
|
1005
|
-
- compat/
|
|
1006
|
-
|
|
1007
|
-
- eme:
|
|
1008
|
-
presented in the DRM tutorial
|
|
1009
|
-
- compat/low-latency: fix compilation of async/await when playing low-latency contents
|
|
1010
|
-
with the default bundled builds
|
|
1011
|
-
- eme: ensure that the previous MediaKeySystemAccess used had `persistentState` to
|
|
1012
|
-
"required" when a new content needs it to be
|
|
1013
|
-
- eme: fix `closeSessionsOnStop` `keySystems` option actually not removing any
|
|
1014
|
-
MediaKeySession when stopping a content (v3.20.1 regression).
|
|
617
|
+
- dash: do not reduce the minimum position when using the `manifestUpdateUrl` `transportOptions` in `loadVideo`
|
|
618
|
+
- local-manifest: consider `language` property from a "local" Manifest
|
|
619
|
+
- local-manifest: refresh the Manifest even if we dont have a Manifest URL, as is often the case when playing locally-stored contents
|
|
620
|
+
- local-manifest: allow the "expired" property of a local-manifest to be updated
|
|
621
|
+
- compat/eme/fairplay: for fairplay contents, better format the initialization data given to the CDM. The previous behavior could lead to invalid license requests
|
|
622
|
+
- eme: re-allow serialization into a JSON string of the persisted session data, as presented in the DRM tutorial
|
|
623
|
+
- compat/low-latency: fix compilation of async/await when playing low-latency contents with the default bundled builds
|
|
624
|
+
- eme: ensure that the previous MediaKeySystemAccess used had `persistentState` to "required" when a new content needs it to be
|
|
625
|
+
- eme: fix `closeSessionsOnStop` `keySystems` option actually not removing any MediaKeySession when stopping a content (v3.20.1 regression).
|
|
1015
626
|
|
|
1016
627
|
### Other improvements
|
|
1017
628
|
|
|
1018
|
-
- dash: emit minor errors arising when parsing the DASH MPD through warning events (whose
|
|
1019
|
-
|
|
1020
|
-
-
|
|
1021
|
-
|
|
1022
|
-
-
|
|
1023
|
-
|
|
1024
|
-
of on the least recently created to improve cache effectiveness.
|
|
1025
|
-
- eme/persistent sessions: Limit the maximum of stored persistent MediaKeySessions to 1000
|
|
1026
|
-
to avoid the storage to grow indefinitely (higher than that, the least-recently used
|
|
1027
|
-
will be evicted)
|
|
629
|
+
- dash: emit minor errors arising when parsing the DASH MPD through warning events (whose payload will be an error with the `PIPELINE_PARSE_ERROR` code)
|
|
630
|
+
- dash: consider AdaptationSet@selectionPriority in our initial track choice if the user preferences lead to multiple compatible tracks
|
|
631
|
+
- misc: do not download video segments when playing on an "audio" element.
|
|
632
|
+
- eme: replace the MediaKeySession's cache entry based on the least recently used instead of on the least recently created to improve cache effectiveness.
|
|
633
|
+
- eme/persistent sessions: Limit the maximum of stored persistent MediaKeySessions to 1000 to avoid the storage to grow indefinitely (higher than that, the least-recently used will be evicted)
|
|
634
|
+
|
|
1028
635
|
|
|
1029
636
|
## v3.20.1 (2020-05-06)
|
|
1030
637
|
|
|
1031
638
|
### Bug fixes
|
|
1032
639
|
|
|
1033
|
-
- eme: fix `OTHER_ERROR` issue arising when loading a new encrypted media when a previous
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
-
|
|
1037
|
-
|
|
1038
|
-
- eme: fix
|
|
1039
|
-
|
|
1040
|
-
- directfile: for directfile contents, don't reset to the preferred audio, text or video
|
|
1041
|
-
track when the track list changes
|
|
1042
|
-
- eme: remove any possibility of collision in the storage of EME initialization data. The
|
|
1043
|
-
previous behavior could theorically lead some initialization data to be ignored.
|
|
1044
|
-
- eme: fix typo which conflated an EME "internal-error" key status and an
|
|
1045
|
-
"output-restricted" one.
|
|
640
|
+
- eme: fix `OTHER_ERROR` issue arising when loading a new encrypted media when a previous since-disposed instance of the RxPlayer played encrypted contents on the same media element
|
|
641
|
+
- eme: fix `OTHER_ERROR` issue arising on Internet Explorer 11 when playing more than one encrypted content
|
|
642
|
+
- eme: fix issue where more than 50 active MediaKeySessions at the same time could lead to infinite rebuffering when playing back a previous content with multiple encryption keys
|
|
643
|
+
- directfile: for directfile contents, don't reset to the preferred audio, text or video track when the track list changes
|
|
644
|
+
- eme: remove any possibility of collision in the storage of EME initialization data. The previous behavior could theorically lead some initialization data to be ignored.
|
|
645
|
+
- eme: fix typo which conflated an EME "internal-error" key status and an "output-restricted" one.
|
|
646
|
+
|
|
1046
647
|
|
|
1047
648
|
## v3.20.0 (2020-04-22)
|
|
1048
649
|
|
|
1049
650
|
### Features
|
|
1050
651
|
|
|
1051
|
-
- api: add `disableVideoTrack` method
|
|
1052
|
-
- api: add the `preferredVideoTrack` constructor option and `setPreferredVideoTracks` /
|
|
1053
|
-
`
|
|
1054
|
-
|
|
1055
|
-
- api: add
|
|
1056
|
-
to communicate a codec preference.
|
|
1057
|
-
- api: make the `language` and `audioDescription` properties in `preferredAudioTracks`'
|
|
1058
|
-
objects optional.
|
|
1059
|
-
- api: add `signInterpreted` to `getVideoTrack` and `getAvailableVideoTracks` return
|
|
1060
|
-
objects to know when a track contains sign language interpretation
|
|
652
|
+
- api: add `disableVideoTrack` method
|
|
653
|
+
- api: add the `preferredVideoTrack` constructor option and `setPreferredVideoTracks` / `getPreferredVideoTracks` methods to set a video track preference (or to start with the video track disabled).
|
|
654
|
+
- api: add optional `codec` property to preferred audio tracks APIs, allowing applications to communicate a codec preference.
|
|
655
|
+
- api: make the `language` and `audioDescription` properties in `preferredAudioTracks`' objects optional.
|
|
656
|
+
- api: add `signInterpreted` to `getVideoTrack` and `getAvailableVideoTracks` return objects to know when a track contains sign language interpretation
|
|
1061
657
|
|
|
1062
658
|
### Deprecated
|
|
1063
659
|
|
|
1064
|
-
- api: deprecate the `getManifest()` method
|
|
1065
|
-
- api: deprecate the `getCurrentAdaptations()` method
|
|
1066
|
-
- api: deprecate the `getCurrentRepresentations()` method
|
|
660
|
+
- api: deprecate the `getManifest()` method
|
|
661
|
+
- api: deprecate the `getCurrentAdaptations()` method
|
|
662
|
+
- api: deprecate the `getCurrentRepresentations()` method
|
|
1067
663
|
|
|
1068
664
|
### Bug fixes
|
|
1069
665
|
|
|
1070
|
-
- compat/eme: Set proper EME Safari implementation, to play contents with DRM on it
|
|
1071
|
-
|
|
1072
|
-
-
|
|
1073
|
-
is played with the `playsinline` attribute set.
|
|
1074
|
-
- directfile: In Directfile mode, always disable the current text track when a `null` is
|
|
1075
|
-
encountered in the preferredTextTracks array
|
|
666
|
+
- compat/eme: Set proper EME Safari implementation, to play contents with DRM on it without issues
|
|
667
|
+
- compat/directfile/iOS: On Safari iOS, fix auto-play warnings when a directfile content is played with the `playsinline` attribute set.
|
|
668
|
+
- directfile: In Directfile mode, always disable the current text track when a `null` is encountered in the preferredTextTracks array
|
|
1076
669
|
|
|
1077
670
|
### Other improvements
|
|
1078
671
|
|
|
1079
|
-
- abr: ignore requests that may have directly hit the cache in our adaptive logic
|
|
1080
|
-
- dash/perf: improve parsing efficiency for very large MPDs, at the expense of a very
|
|
1081
|
-
|
|
672
|
+
- abr: ignore requests that may have directly hit the cache in our adaptive logic
|
|
673
|
+
- dash/perf: improve parsing efficiency for very large MPDs, at the expense of a very small risk of de-synchronization. Mechanisms still allow for regular re-synchronization.
|
|
674
|
+
|
|
1082
675
|
|
|
1083
676
|
## v3.19.0 (2020-03-11)
|
|
1084
677
|
|
|
1085
678
|
### Features
|
|
1086
679
|
|
|
1087
|
-
- dash: handle multiple URL per segment announced through multiple BaseURL elements in the
|
|
1088
|
-
|
|
1089
|
-
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
-
|
|
1093
|
-
to generate Metaplaylist contents from given Manifests
|
|
1094
|
-
- tools/TextTrackRenderer: add the optional `language` property to the `setTextTrack`
|
|
1095
|
-
method of the experimental `TextTrackRenderer` tool as it could be needed when parsing
|
|
1096
|
-
SAMI subtitles
|
|
1097
|
-
- types: export IAvailableAudioTrack, IAvailableTextTrack and IAvailableVideoTrack types
|
|
1098
|
-
- types: export IAudioTrack, ITextTrack and IVideoTrack types
|
|
680
|
+
- dash: handle multiple URL per segment announced through multiple BaseURL elements in the MPD
|
|
681
|
+
- dash/smooth/metaplaylist: add `manifestUpdateUrl` to loadVideo's `transportOptions` to provide a shorter version of the Manifest, used for more resource-efficient Manifest updates
|
|
682
|
+
- tools/createMetaplaylist: add the experimental `createMetaplaylist` tool, which allows to generate Metaplaylist contents from given Manifests
|
|
683
|
+
- tools/TextTrackRenderer: add the optional `language` property to the `setTextTrack` method of the experimental `TextTrackRenderer` tool as it could be needed when parsing SAMI subtitles
|
|
684
|
+
- types: export IAvailableAudioTrack, IAvailableTextTrack and IAvailableVideoTrack types
|
|
685
|
+
- types: export IAudioTrack, ITextTrack and IVideoTrack types
|
|
1099
686
|
|
|
1100
687
|
### Bug fixes
|
|
1101
688
|
|
|
1102
|
-
- dash/smooth: fix segment url resolution when there is query parameters in the Manifest
|
|
1103
|
-
|
|
1104
|
-
-
|
|
1105
|
-
experimental `local` transport
|
|
1106
|
-
- tools/parseBifThumbnails: do not return an un-displayable ArrayBuffer of the whole thing
|
|
1107
|
-
in each `image` property in the experimental `parseBifThumbnails` function
|
|
689
|
+
- dash/smooth: fix segment url resolution when there is query parameters in the Manifest URL and/or segment path, themselves containing "/" characters
|
|
690
|
+
- local-manifest: fix videoElement's duration and `getVideoDuration` for contents in the experimental `local` transport
|
|
691
|
+
- tools/parseBifThumbnails: do not return an un-displayable ArrayBuffer of the whole thing in each `image` property in the experimental `parseBifThumbnails` function
|
|
1108
692
|
|
|
1109
693
|
### Other improvements
|
|
1110
694
|
|
|
1111
|
-
- compat: avoid pushing a segment on top of the current position in Safari, as it can
|
|
1112
|
-
|
|
1113
|
-
- dash:
|
|
1114
|
-
-
|
|
1115
|
-
|
|
1116
|
-
-
|
|
1117
|
-
|
|
1118
|
-
`npm run build:modular` script
|
|
1119
|
-
- build: remove Object.assign dependency
|
|
695
|
+
- compat: avoid pushing a segment on top of the current position in Safari, as it can sometime lead to green macro-blocks
|
|
696
|
+
- dash: add multiple performance improvements related to MPD parsing on embedded devices
|
|
697
|
+
- dash/smooth/metaplaylist/local: refresh less often the Manifest when parsing it takes too much time to improve performance
|
|
698
|
+
- smooth: filter unsupported video and audio QualityLevels when parsing a Smooth Manifest
|
|
699
|
+
- build: greatly reduce the time needed to produce a modular build through the `npm run build:modular` script
|
|
700
|
+
- build: remove Object.assign dependency
|
|
701
|
+
|
|
1120
702
|
|
|
1121
703
|
## v3.18.0 (2020-01-30)
|
|
1122
704
|
|
|
1123
705
|
### Features
|
|
1124
706
|
|
|
1125
|
-
- directfile: support most audio tracks API when playing a directfile content
|
|
1126
|
-
- directfile: support most text tracks API when playing a directfile content
|
|
1127
|
-
- directfile: support most video tracks API when playing a directfile content
|
|
1128
|
-
- api: add `seeking` and `seeked` events which announce the beginning and end of a seek,
|
|
1129
|
-
|
|
1130
|
-
-
|
|
1131
|
-
-
|
|
1132
|
-
|
|
1133
|
-
- tools: add the experimental `TextTrackRenderer` tool to be able to add a custom text
|
|
1134
|
-
track to any content
|
|
1135
|
-
- tools: add the experimental `parseBifThumbnails` tool to easily parse thumbnails in the
|
|
1136
|
-
BIF format
|
|
707
|
+
- directfile: support most audio tracks API when playing a directfile content
|
|
708
|
+
- directfile: support most text tracks API when playing a directfile content
|
|
709
|
+
- directfile: support most video tracks API when playing a directfile content
|
|
710
|
+
- api: add `seeking` and `seeked` events which announce the beginning and end of a seek, even when seeking to an already buffered part
|
|
711
|
+
- subtitles/ttml: handle styles inheriting other styles in TTML subtitles
|
|
712
|
+
- local-manifest: add experimental `local` transport to allow the playback of downloaded contents (even when offline)
|
|
713
|
+
- tools: add the experimental `TextTrackRenderer` tool to be able to add a custom text track to any content
|
|
714
|
+
- tools: add the experimental `parseBifThumbnails` tool to easily parse thumbnails in the BIF format
|
|
1137
715
|
|
|
1138
716
|
### Deprecated
|
|
1139
717
|
|
|
1140
|
-
- api: deprecate the `supplementaryTextTracks` loadVideo option in profit of the external
|
|
1141
|
-
|
|
1142
|
-
- api:
|
|
1143
|
-
parseBifThumbnails tool
|
|
1144
|
-
- api: deprecate
|
|
1145
|
-
`parseBifThumbnails` tool
|
|
1146
|
-
- api: deprecate the `imageTrackUpdate` event in profit of the external
|
|
1147
|
-
`parseBifThumbnails` tool
|
|
1148
|
-
- api: deprecate `hideNativeSubtitles` (officially)
|
|
718
|
+
- api: deprecate the `supplementaryTextTracks` loadVideo option in profit of the external TextTrackRenderer tool
|
|
719
|
+
- api: aeprecate the `supplementaryImageTracks` loadVideo option in profit of the external parseBifThumbnails tool
|
|
720
|
+
- api: deprecate the `getImageTrackData` method in profit of the external `parseBifThumbnails` tool
|
|
721
|
+
- api: deprecate the `imageTrackUpdate` event in profit of the external `parseBifThumbnails` tool
|
|
722
|
+
- api: deprecate `hideNativeSubtitles` (officially)
|
|
1149
723
|
|
|
1150
724
|
### Bug fixes
|
|
1151
725
|
|
|
1152
|
-
- subtitles/ttml: Correctly handle alpha information in the rgba values included in a TTML
|
|
1153
|
-
|
|
1154
|
-
- images/bif: fix sometimes incorrect "ts" value on thumbnails returned by the
|
|
1155
|
-
`getImageTrackData` method and the `imageTrackUpdate` event
|
|
726
|
+
- subtitles/ttml: Correctly handle alpha information in the rgba values included in a TTML file
|
|
727
|
+
- images/bif: fix sometimes incorrect "ts" value on thumbnails returned by the `getImageTrackData` method and the `imageTrackUpdate` event
|
|
1156
728
|
|
|
1157
729
|
### Other improvements
|
|
1158
730
|
|
|
1159
|
-
- node: allow the RxPlayer to be imported from Node.js for server-side-rendering
|
|
1160
|
-
- images/bif: throw a better error when an invalid BIF file is received
|
|
1161
|
-
- api: be more "generous" with player events by ditching the deep-equal npm module due to
|
|
1162
|
-
|
|
1163
|
-
|
|
731
|
+
- node: allow the RxPlayer to be imported from Node.js for server-side-rendering
|
|
732
|
+
- images/bif: throw a better error when an invalid BIF file is received
|
|
733
|
+
- api: be more "generous" with player events by ditching the deep-equal npm module due to package size and some edge-case behavior
|
|
734
|
+
- demo: avoid re-rendering multiple ui components when unnecessary
|
|
735
|
+
|
|
1164
736
|
|
|
1165
737
|
## v3.17.1 (2019-12-20)
|
|
1166
738
|
|
|
1167
739
|
### Bug fixes
|
|
1168
740
|
|
|
1169
|
-
- dash/metaplaylist: fix infinite rebuffering issue when refreshing multi-Period contents
|
|
1170
|
-
|
|
1171
|
-
-
|
|
1172
|
-
maxBufferAhead/maxBufferBehind options are set) to avoid useful subtitles being removed
|
|
1173
|
-
- directfile/compat: for directfile contents, trigger directly the LOADED state on
|
|
1174
|
-
iOS/iPad/iPod browsers as those are not preloaded there
|
|
741
|
+
- dash/metaplaylist: fix infinite rebuffering issue when refreshing multi-Period contents under specific conditions
|
|
742
|
+
- buffer: be less aggressive when garbage collecting subtitles (if the maxBufferAhead/maxBufferBehind options are set) to avoid useful subtitles being removed
|
|
743
|
+
- directfile/compat: for directfile contents, trigger directly the LOADED state on iOS/iPad/iPod browsers as those are not preloaded there
|
|
1175
744
|
|
|
1176
745
|
### Other improvements
|
|
1177
746
|
|
|
1178
|
-
- demo: display clickable "play" button on the video element when autoplay is blocked due
|
|
1179
|
-
|
|
1180
|
-
|
|
747
|
+
- demo: display clickable "play" button on the video element when autoplay is blocked due to browser policies - to help users unlock the situation
|
|
748
|
+
- demo: add "Other" key system to allow specifying a custom key system in the demo page
|
|
749
|
+
|
|
1181
750
|
|
|
1182
751
|
## v3.17.0 (2019-12-09)
|
|
1183
752
|
|
|
1184
753
|
### Features
|
|
1185
754
|
|
|
1186
|
-
- eme/api: add keySystems.fallbackOn property to `loadVideo` to allow fallbacking to other
|
|
1187
|
-
|
|
1188
|
-
- eme/api:
|
|
1189
|
-
|
|
1190
|
-
-
|
|
1191
|
-
|
|
1192
|
-
-
|
|
1193
|
-
- api: add `
|
|
1194
|
-
|
|
1195
|
-
-
|
|
1196
|
-
`getAvailableAudioTracks`) to tell if this is a dubbed track
|
|
1197
|
-
- languages/ttml: with TTML subtitles, support length relative to the Computed Cell Size
|
|
1198
|
-
for `tts:fontSize`, `tts:padding`, `tts:extent`, `tts:origin` and `tts:lineHeight`
|
|
1199
|
-
- transports/api: add `checkMediaSegmentIntegrity` `transportOptions` to automatically
|
|
1200
|
-
retry media segments which appear corrupted
|
|
1201
|
-
- transports/api: add `minimumManifestUpdateInterval` `transportOptions` to limit the
|
|
1202
|
-
Manifest update frequency
|
|
1203
|
-
- transports/api: add "progress" callback to a custom segmentLoader to improve adaptive
|
|
1204
|
-
streaming when an external segment loader is used
|
|
755
|
+
- eme/api: add keySystems.fallbackOn property to `loadVideo` to allow fallbacking to other qualities when encountering various key errors
|
|
756
|
+
- eme/api: allow to set `fallbackOnLastTry` on a `getLicense` Error to be able to fallback on other qualities when a license request is on error
|
|
757
|
+
- eme/api: add `NO_PLAYABLE_REPRESENTATION` `MediaError` for when every video or audio quality cannot be played
|
|
758
|
+
- manifest/api: add `decipherable` property to a Representation object
|
|
759
|
+
- api: add `decipherabilityUpdate` event triggered when a Representation's decipherability status is updated
|
|
760
|
+
- languages/api: add `dub` boolean to audio tracks (through `getAudioTrack` and `getAvailableAudioTracks`) to tell if this is a dubbed track
|
|
761
|
+
- languages/ttml: with TTML subtitles, support length relative to the Computed Cell Size for `tts:fontSize`, `tts:padding`, `tts:extent`, `tts:origin` and `tts:lineHeight`
|
|
762
|
+
- transports/api: add `checkMediaSegmentIntegrity` `transportOptions` to automatically retry media segments which appear corrupted
|
|
763
|
+
- transports/api: add `minimumManifestUpdateInterval` `transportOptions` to limit the Manifest update frequency
|
|
764
|
+
- transports/api: add "progress" callback to a custom segmentLoader to improve adaptive streaming when an external segment loader is used
|
|
1205
765
|
|
|
1206
766
|
### Bug fixes
|
|
1207
767
|
|
|
1208
|
-
- dash/metaplaylist: download the first segment of a new Period when the last downloaded
|
|
1209
|
-
|
|
1210
|
-
-
|
|
1211
|
-
|
|
1212
|
-
-
|
|
1213
|
-
|
|
1214
|
-
- dash:
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
- eme: do not wait for a previous invalid MediaKeySession to be closed before re-creating
|
|
1218
|
-
a valid one for the same content, to work around a widevine issue
|
|
1219
|
-
- eme: avoid race condition issue arising when multiple init data are received before the
|
|
1220
|
-
MediaKeys have been attached to the media element
|
|
1221
|
-
- dash: do not consider "trickmodes" AdaptationSet as directly playable video tracks
|
|
1222
|
-
- directfile: begin directly at the end (instead of the beginning) when setting a
|
|
1223
|
-
`startAt` loadVideo option with a `fromLastPosition` property set to `0` on directfile
|
|
1224
|
-
contents
|
|
1225
|
-
- metaplaylist: fix playback for non-live MetaPlaylist contents not starting at a `0` time
|
|
768
|
+
- dash/metaplaylist: download the first segment of a new Period when the last downloaded segment from the previous Period ends after that segment ends
|
|
769
|
+
- smooth/metaplaylist: consider `serverSyncInfos` `transportOptions` for Smooth and MetaPlaylist contents
|
|
770
|
+
- buffers: completely clean a previous audio/text track from the SourceBuffer when switching to a different audio/text track
|
|
771
|
+
- dash: avoid requesting an inexistent segment when downloading a multi-Period DASH content with a number-based SegmentTemplate with the `agressiveMode` option set to `true`
|
|
772
|
+
- eme: do not wait for a previous invalid MediaKeySession to be closed before re-creating a valid one for the same content, to work around a widevine issue
|
|
773
|
+
- eme: avoid race condition issue arising when multiple init data are received before the MediaKeys have been attached to the media element
|
|
774
|
+
- dash: do not consider "trickmodes" AdaptationSet as directly playable video tracks
|
|
775
|
+
- directfile: begin directly at the end (instead of the beginning) when setting a `startAt` loadVideo option with a `fromLastPosition` property set to `0` on directfile contents
|
|
776
|
+
- metaplaylist: fix playback for non-live MetaPlaylist contents not starting at a `0` time
|
|
1226
777
|
|
|
1227
778
|
### Other improvements
|
|
1228
779
|
|
|
1229
|
-
- abr: better estimate a lower bitrate after a sudden fall in bandwidth
|
|
1230
|
-
- dash/low-latency: properly use @availabilityTimeOffset when playing a low-latency DASH
|
|
1231
|
-
|
|
1232
|
-
-
|
|
1233
|
-
|
|
1234
|
-
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
- misc: replace uglifyJS by terser for minification purposes
|
|
780
|
+
- abr: better estimate a lower bitrate after a sudden fall in bandwidth
|
|
781
|
+
- dash/low-latency: properly use @availabilityTimeOffset when playing a low-latency DASH content
|
|
782
|
+
- code: use only strict boolean expressions in the code (do not rely on falsy or truthy values anymore).
|
|
783
|
+
- demo: add buffer content graphs to the demo page to vizualize exactly what have been buffered
|
|
784
|
+
- demo: improve accessibility of the demo page for the english-speaking visually impaired
|
|
785
|
+
- misc: replace uglifyJS by terser for minification purposes
|
|
786
|
+
|
|
787
|
+
|
|
1238
788
|
|
|
1239
789
|
## v3.16.1 (2019-10-03)
|
|
1240
790
|
|
|
1241
791
|
### Bug fixes
|
|
1242
792
|
|
|
1243
|
-
- dash: update timeshiftBufferDepth considered when refreshing the MPD
|
|
1244
|
-
- dash: fix infinite rebuffering issue when refreshing a Multi-Period MPD with the oldest
|
|
1245
|
-
|
|
1246
|
-
- api:
|
|
1247
|
-
|
|
1248
|
-
-
|
|
1249
|
-
|
|
1250
|
-
- api: When going back to a Period on which `disableTextTracks` was called, keep the text
|
|
1251
|
-
track disabled even if different `preferredTextTracks` are set
|
|
1252
|
-
- smooth: Replace `{CustomAttributes}` token in a segment URL
|
|
1253
|
-
- dash: load the last segment of a Period when it is declared in a SegmentTemplate (with
|
|
1254
|
-
no SegmentTimeline) and when its end is exactly equal to the end of the Period
|
|
793
|
+
- dash: update timeshiftBufferDepth considered when refreshing the MPD
|
|
794
|
+
- dash: fix infinite rebuffering issue when refreshing a Multi-Period MPD with the oldest Periods removed
|
|
795
|
+
- api: go to `"SEEKING"` state instead of `"BUFFERING"` when seeking while the player is in the "BUFFERING" state
|
|
796
|
+
- api: Avoid reinitializing the video, audio and text track choice after a `"RELOADING"` state
|
|
797
|
+
- api: When going back to a Period on which `disableTextTracks` was called, keep the text track disabled even if different `preferredTextTracks` are set
|
|
798
|
+
- smooth: Replace ``{CustomAttributes}`` token in a segment URL
|
|
799
|
+
- dash: load the last segment of a Period when it is declared in a SegmentTemplate (with no SegmentTimeline) and when its end is exactly equal to the end of the Period
|
|
1255
800
|
|
|
1256
801
|
### Other improvements
|
|
1257
802
|
|
|
1258
|
-
- dash/metaplaylist: be more tolerant with the appendWindows set as the previous behavior
|
|
1259
|
-
|
|
1260
|
-
- dash/metaplaylist
|
|
1261
|
-
- dash/
|
|
1262
|
-
|
|
1263
|
-
- dash
|
|
1264
|
-
the Manifest
|
|
1265
|
-
-
|
|
1266
|
-
- dash:
|
|
1267
|
-
-
|
|
1268
|
-
|
|
1269
|
-
-
|
|
1270
|
-
|
|
1271
|
-
-
|
|
1272
|
-
|
|
1273
|
-
value in the wrong format
|
|
1274
|
-
- demo: Allow to export and share demo links with custom contents
|
|
1275
|
-
- demo: Fix video track switching in the demo page
|
|
1276
|
-
- demo: Fix spinner not hiding when playing on very specific conditions
|
|
1277
|
-
- demo: reset playback rate before loading a content
|
|
803
|
+
- dash/metaplaylist: be more tolerant with the appendWindows set as the previous behavior could lead to infinite rebuffering and segments re-downloading
|
|
804
|
+
- dash/metaplaylist/smooth: Better handle discontinuities in a VoD content
|
|
805
|
+
- dash/metaplaylist: Handle discontinuities between DASH Periods and between MetaPlaylist contents
|
|
806
|
+
- dash/smooth: Avoid requesting multiple time the last segment when the duration given in the Manifest are inexact
|
|
807
|
+
- smooth: Skip without throwing Manifest's StreamIndex with an unrecognized type
|
|
808
|
+
- dash: Improve prediction of when to update a dynamic MPD with xlinks
|
|
809
|
+
- dash: Be more tolerant of differences between a segment's time announced by the Manifest and the reality to avoid multiple cases of segment re-downloading
|
|
810
|
+
- dash: Guess initialization range for segments defined in a SegmentBase without an Initialization element
|
|
811
|
+
- dash: Throw better error when a sidx with a reference_type `1` is encountered
|
|
812
|
+
- api: Throw a better error when setting a `preferredAudioTracks` or `preferredTextTracks` value in the wrong format
|
|
813
|
+
- demo: Allow to export and share demo links with custom contents
|
|
814
|
+
- demo: Fix video track switching in the demo page
|
|
815
|
+
- demo: Fix spinner not hiding when playing on very specific conditions
|
|
816
|
+
- demo: reset playback rate before loading a content
|
|
817
|
+
|
|
1278
818
|
|
|
1279
819
|
## v3.16.0 (2019-09-16)
|
|
1280
820
|
|
|
1281
821
|
### Features
|
|
1282
822
|
|
|
1283
|
-
- dash: add `lowLatencyMode` `loadVideo` option to play low-latency DASH contents with
|
|
1284
|
-
|
|
1285
|
-
-
|
|
1286
|
-
|
|
1287
|
-
- api: add `serverSyncInfos` to `transportOptions` (`loadVideo` option)
|
|
1288
|
-
- errors: add `code` property to a `NetworkError` indicating the corresponding HTTP status
|
|
823
|
+
- dash: add `lowLatencyMode` `loadVideo` option to play low-latency DASH contents with chunk-encoded CMAF and chunked transfer encoding close to the live edge efficiently
|
|
824
|
+
- metaplaylist: add the experimental `metaplaylist` transport, which allows to smoothly play a concatenation of multiple contents
|
|
825
|
+
- api: add `serverSyncInfos` to `transportOptions` (`loadVideo` option)
|
|
826
|
+
- errors: add `code` property to a `NetworkError` indicating the corresponding HTTP status
|
|
1289
827
|
|
|
1290
828
|
### Bug fixes
|
|
1291
829
|
|
|
1292
|
-
- dash: fix minimum time calculation for Multi-Period MPDs with SegmentTemplate segment
|
|
1293
|
-
|
|
1294
|
-
- dash:
|
|
1295
|
-
possible time by default
|
|
1296
|
-
- dash: fix maximum position calculation for live Multi-Period contents where the
|
|
1297
|
-
currently generated period is not the last one declared in the MPD
|
|
830
|
+
- dash: fix minimum time calculation for Multi-Period MPDs with SegmentTemplate segment indexes but no SegmentTimeline
|
|
831
|
+
- dash: play static MPD not declaring any segment for a time of 0 seconds at the minimum possible time by default
|
|
832
|
+
- dash: fix maximum position calculation for live Multi-Period contents where the currently generated period is not the last one declared in the MPD
|
|
1298
833
|
|
|
1299
834
|
### Other improvements
|
|
1300
835
|
|
|
1301
|
-
- api: authorize to set no `url` to `loadVideo` if the `manifestLoader` `transportOption`
|
|
1302
|
-
|
|
1303
|
-
-
|
|
1304
|
-
|
|
1305
|
-
- dash: the
|
|
1306
|
-
|
|
1307
|
-
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
not the last one declared in the MPD
|
|
1311
|
-
- dash: better infer the end of a Period if the start of the next one is defined
|
|
1312
|
-
- api: always start live contents at the live edge if one is defined and not just before
|
|
1313
|
-
the last available segments
|
|
1314
|
-
- ci: run integration tests with Travis and appveyor again
|
|
836
|
+
- api: authorize to set no `url` to `loadVideo` if the `manifestLoader` `transportOption` is set
|
|
837
|
+
- smooth: the `aggressiveMode` option now only allows requests for segments which had time to at least begin to be generated to avoid too much HTTP 412
|
|
838
|
+
- dash: the `aggressiveMode` now also have an effect for some SegmentTemplate DASH contents (download segments even if they're not finished)
|
|
839
|
+
- code: add pre-commit and pre-push git hooks to automate checking and facilitate bisecting
|
|
840
|
+
- dash: better handle live Multi-Period contents where the currently broadcasted period is not the last one declared in the MPD
|
|
841
|
+
- dash: better infer the end of a Period if the start of the next one is defined
|
|
842
|
+
- api: always start live contents at the live edge if one is defined and not just before the last available segments
|
|
843
|
+
- ci: run integration tests with Travis and appveyor again
|
|
844
|
+
|
|
1315
845
|
|
|
1316
846
|
## v3.15.1 (2019-08-07)
|
|
1317
847
|
|
|
1318
848
|
### Bug fixes
|
|
1319
849
|
|
|
1320
|
-
- api: fix `networkConfig.segmentRetry` `loadVideo` option. Due to a typo, it was forced
|
|
1321
|
-
|
|
1322
|
-
-
|
|
1323
|
-
seconds (as documented) after the page is hidden before switching to a lower bitrate
|
|
1324
|
-
- dash: fix segment indexing for SegmentList-based MPD with a period start different than
|
|
1325
|
-
0
|
|
850
|
+
- api: fix `networkConfig.segmentRetry` `loadVideo` option. Due to a typo, it was forced to the default value (4)
|
|
851
|
+
- api/abr: when the `throttleVideoBitrateWhenHidden` option is set to true, wait 60 seconds (as documented) after the page is hidden before switching to a lower bitrate
|
|
852
|
+
- dash: fix segment indexing for SegmentList-based MPD with a period start different than 0
|
|
1326
853
|
|
|
1327
854
|
### Other improvements
|
|
1328
855
|
|
|
1329
|
-
- dash/smooth: check if the segment should still be available before retrying it (avoid
|
|
1330
|
-
|
|
1331
|
-
- dash
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
within the concerned Period's bounds
|
|
1335
|
-
- demo: authorize to play stored contents with an HTTP Manifest in the HTTPS demo
|
|
856
|
+
- dash/smooth: check if the segment should still be available before retrying it (avoid unnecessary HTTP 404 errors)
|
|
857
|
+
- dash/smooth: the Manifest can now be refreshed due to unexpected 404 HTTP errors on a segment request (only on particular conditions)
|
|
858
|
+
- dash: better handle segments overlapping multiple periods by using the data that is only within the concerned Period's bounds
|
|
859
|
+
- demo: authorize to play stored contents with an HTTP Manifest in the HTTPS demo
|
|
860
|
+
|
|
1336
861
|
|
|
1337
862
|
## v3.15.0 (2019-07-24)
|
|
1338
863
|
|
|
1339
864
|
### Features
|
|
1340
865
|
|
|
1341
|
-
- eme: add `getLicenseConfig` property to the `keySystems` `loadVideo` option, to be able
|
|
1342
|
-
to
|
|
1343
|
-
- eme: add `
|
|
1344
|
-
|
|
1345
|
-
- eme: add `message` to `getLicense` and `onKeyStatusesChange` errors to allow custom
|
|
1346
|
-
errors when the license request fails
|
|
1347
|
-
- eme: add a new `ENCRYPTED_MEDIA_ERROR` with the code `CREATE_MEDIA_KEYS_ERROR` for when
|
|
1348
|
-
we cannot create a MediaKeys instance (seen on some Android devices).
|
|
866
|
+
- eme: add `getLicenseConfig` property to the `keySystems` `loadVideo` option, to be able to have much more control over getLicense's behavior
|
|
867
|
+
- eme: add `noRetry` to `getLicense` errors to abort retries when the licence request fails
|
|
868
|
+
- eme: add `message` to `getLicense` and `onKeyStatusesChange` errors to allow custom errors when the license request fails
|
|
869
|
+
- eme: add a new `ENCRYPTED_MEDIA_ERROR` with the code `CREATE_MEDIA_KEYS_ERROR` for when we cannot create a MediaKeys instance (seen on some Android devices).
|
|
1349
870
|
|
|
1350
871
|
### Bug fixes
|
|
1351
872
|
|
|
1352
|
-
- api: avoid sending {audio,video...}BitrateChange with a `-1` value when starting to play
|
|
1353
|
-
a content
|
|
1354
|
-
- api/abr: a call to `
|
|
1355
|
-
|
|
1356
|
-
-
|
|
1357
|
-
|
|
1358
|
-
-
|
|
1359
|
-
|
|
1360
|
-
-
|
|
1361
|
-
|
|
1362
|
-
- eme/compat: on Safari, depend on WebKitMediaKeys even if MediaKeys is defined because of
|
|
1363
|
-
differences of implementations
|
|
1364
|
-
- pipelines: always send `PIPELINE_LOAD_ERROR` warnings when a segment request or a
|
|
1365
|
-
Manifest request is retried
|
|
1366
|
-
- errors: replace undocumented `PIPELINE_RESOLVE_ERROR` code into the proper documented
|
|
1367
|
-
`PIPELINE_LOAD_ERROR` code
|
|
1368
|
-
- errors: replace undocumented `PIPELINE_PARSING_ERROR` code into the proper documented
|
|
1369
|
-
`PIPELINE_PARSE_ERROR` code
|
|
1370
|
-
- errors: add to the `ErrorCodes` static property the previously forgotten `NONE`,
|
|
1371
|
-
`INVALID_KEY_SYSTEM` and `INVALID_ENCRYPTED_EVENT` codes.
|
|
873
|
+
- api: avoid sending {audio,video...}BitrateChange with a `-1` value when starting to play a content
|
|
874
|
+
- api/abr: a call to `setAudioBitrate` or `setVideoBitrate` could be ignored for a content if it was still loading. This is now fixed.
|
|
875
|
+
- api/abr: a call to `setMaxAutoBitrate` or `setMaxVideoBitrate` could be ignored for a content if it was still loading. This is now fixed.
|
|
876
|
+
- dash: fix maximum position calculation when refreshing a live MPD with a UTCTiming element and no SegmentTimeline.
|
|
877
|
+
- dash/smooth: a MPD/Manifest request failing could still be retried when loading another content
|
|
878
|
+
- eme/compat: on Safari, depend on WebKitMediaKeys even if MediaKeys is defined because of differences of implementations
|
|
879
|
+
- pipelines: always send `PIPELINE_LOAD_ERROR` warnings when a segment request or a Manifest request is retried
|
|
880
|
+
- errors: replace undocumented `PIPELINE_RESOLVE_ERROR` code into the proper documented `PIPELINE_LOAD_ERROR` code
|
|
881
|
+
- errors: replace undocumented `PIPELINE_PARSING_ERROR` code into the proper documented `PIPELINE_PARSE_ERROR` code
|
|
882
|
+
- errors: add to the `ErrorCodes` static property the previously forgotten `NONE`, `INVALID_KEY_SYSTEM` and `INVALID_ENCRYPTED_EVENT` codes.
|
|
1372
883
|
|
|
1373
884
|
### Other improvements
|
|
1374
885
|
|
|
1375
|
-
- abr: make use of another adaptive algorithm, buffer-based, when enough buffer has been
|
|
1376
|
-
|
|
1377
|
-
-
|
|
1378
|
-
|
|
1379
|
-
-
|
|
1380
|
-
|
|
1381
|
-
- errors: refactore error management to better correlate the `fatal` boolean to a playback
|
|
1382
|
-
stop and to better ensure a documented error is always thrown
|
|
1383
|
-
- scripts: make our build script compatible with MacOS (handle BSD sed)
|
|
886
|
+
- abr: make use of another adaptive algorithm, buffer-based, when enough buffer has been built.
|
|
887
|
+
- demo: allow the user to save custom contents to local storage to be able to reuse them when the page is refreshed
|
|
888
|
+
- eme: throw a better error in `onKeyStatusesChange` if the Promise is rejected without an Error
|
|
889
|
+
- errors: refactore error management to better correlate the `fatal` boolean to a playback stop and to better ensure a documented error is always thrown
|
|
890
|
+
- scripts: make our build script compatible with MacOS (handle BSD sed)
|
|
891
|
+
|
|
1384
892
|
|
|
1385
893
|
## v3.14.0 (2019-06-26)
|
|
1386
894
|
|
|
1387
895
|
### Features
|
|
1388
896
|
|
|
1389
|
-
- api/abr: add `throttleVideoBitrateWhenHidden` which unlike `throttleWhenHidden` does not
|
|
1390
|
-
throttle the video bitrate if the media element is in picture-in-picture mode
|
|
897
|
+
- api/abr: add `throttleVideoBitrateWhenHidden` which unlike `throttleWhenHidden` does not throttle the video bitrate if the media element is in picture-in-picture mode
|
|
1391
898
|
|
|
1392
899
|
### Deprecated
|
|
1393
900
|
|
|
1394
|
-
- api/abr: deprecate `throttleWhenHidden` in profit of `throttleVideoBitrateWhenHidden`
|
|
1395
|
-
which has a better API definition for some edge cases
|
|
901
|
+
- api/abr: deprecate `throttleWhenHidden` in profit of `throttleVideoBitrateWhenHidden` which has a better API definition for some edge cases
|
|
1396
902
|
|
|
1397
903
|
### Bug fixes
|
|
1398
904
|
|
|
1399
|
-
- api/abr: `limitVideoWidth` now also considers if the video is in picture-in-picture mode
|
|
1400
|
-
- buffer: better prevent the `BUFFER_FULL_ERROR` `MediaError` on some memory-constrained
|
|
1401
|
-
|
|
1402
|
-
-
|
|
1403
|
-
|
|
1404
|
-
-
|
|
1405
|
-
|
|
1406
|
-
- init: start live contents that just began (less than 10 seconds ago) at the minimum
|
|
1407
|
-
position instead of throwing a STARTING_TIME_NOT_FOUND MEDIA_ERROR.
|
|
1408
|
-
- tests: use web server (local by default) instead of stubbed XHRs to serve tests contents
|
|
1409
|
-
to our integration and memory tests
|
|
905
|
+
- api/abr: `limitVideoWidth` now also considers if the video is in picture-in-picture mode
|
|
906
|
+
- buffer: better prevent the `BUFFER_FULL_ERROR` `MediaError` on some memory-constrained devices
|
|
907
|
+
- dash: consider the buffer depth as infinite (until `availabilityStartTime`) if the `timeShiftBufferDepth` is not set
|
|
908
|
+
- smooth: consider the buffer depth as infinite if the `DVRWindowLength` is not set or set to 0
|
|
909
|
+
- init: start live contents that just began (less than 10 seconds ago) at the minimum position instead of throwing a STARTING_TIME_NOT_FOUND MEDIA_ERROR.
|
|
910
|
+
- tests: use web server (local by default) instead of stubbed XHRs to serve tests contents to our integration and memory tests
|
|
911
|
+
|
|
1410
912
|
|
|
1411
913
|
## v3.13.0 (2019-05-15)
|
|
1412
914
|
|
|
1413
915
|
### Features
|
|
1414
916
|
|
|
1415
|
-
- eme: add `disableMediaKeysAttachmentLock` key system option to bypass a deadlock (with
|
|
1416
|
-
possible tradeoffs) when playing encrypted contents on some peculiar devices
|
|
917
|
+
- eme: add `disableMediaKeysAttachmentLock` key system option to bypass a deadlock (with possible tradeoffs) when playing encrypted contents on some peculiar devices
|
|
1417
918
|
|
|
1418
919
|
### Bug fixes
|
|
1419
920
|
|
|
1420
|
-
- dash/smooth: never rely on Date.now when calculating time differences to avoid issues
|
|
1421
|
-
|
|
1422
|
-
-
|
|
1423
|
-
`KEY_LOAD_ERROR` when the `getLicense` function provided fails without a proper error
|
|
1424
|
-
- api: fix rare situation with DASH multi-period contents where we reported no available
|
|
1425
|
-
bitrate, Adaptation nor Representation when switching to another Period.
|
|
921
|
+
- dash/smooth: never rely on Date.now when calculating time differences to avoid issues when the user adjusts the system clock while playing a live content
|
|
922
|
+
- eme: throw a better error (avoid `toString is not a function` messages) for a `KEY_LOAD_ERROR` when the `getLicense` function provided fails without a proper error
|
|
923
|
+
- api: fix rare situation with DASH multi-period contents where we reported no available bitrate, Adaptation nor Representation when switching to another Period.
|
|
1426
924
|
|
|
1427
925
|
### Other improvements
|
|
1428
926
|
|
|
1429
|
-
- eme: add other default contentTypes when calling requestMediaKeySystemAccess to improve
|
|
1430
|
-
|
|
1431
|
-
-
|
|
1432
|
-
|
|
927
|
+
- eme: add other default contentTypes when calling requestMediaKeySystemAccess to improve device support
|
|
928
|
+
- demo: update the demo UI
|
|
929
|
+
- code: change indentation style of a big chunk of the code to increase readability
|
|
930
|
+
|
|
1433
931
|
|
|
1434
932
|
## v3.12.0 (2019-04-10)
|
|
1435
933
|
|
|
1436
934
|
### Features
|
|
1437
935
|
|
|
1438
|
-
- dash: add UTCTiming support
|
|
1439
|
-
- smooth: add `aggressiveMode` transportOption to requests segments in advance
|
|
1440
|
-
- dash/smooth: add `referenceDateTime` transportOption to set a default reference time for
|
|
1441
|
-
live contents
|
|
936
|
+
- dash: add UTCTiming support
|
|
937
|
+
- smooth: add `aggressiveMode` transportOption to requests segments in advance
|
|
938
|
+
- dash/smooth: add `referenceDateTime` transportOption to set a default reference time for live contents
|
|
1442
939
|
|
|
1443
940
|
### Bug fixes
|
|
1444
941
|
|
|
1445
|
-
- buffer: work around firefox bug leading to infinite rebuffering when seeking many times
|
|
1446
|
-
in a content
|
|
942
|
+
- buffer: work around firefox bug leading to infinite rebuffering when seeking many times in a content
|
|
1447
943
|
|
|
1448
944
|
### Other improvements
|
|
1449
945
|
|
|
1450
|
-
- dash/smooth: add optional `url`, `sendingTime` and `receivingTime` properties in the
|
|
1451
|
-
|
|
1452
|
-
- misc:
|
|
1453
|
-
|
|
946
|
+
- dash/smooth: add optional `url`, `sendingTime` and `receivingTime` properties in the response given by manifestLoader transportOption
|
|
947
|
+
- misc: deploy documentation pages and demos from our previous versions
|
|
948
|
+
- misc: add new RxPlayer logo to README.md and the demo
|
|
949
|
+
|
|
1454
950
|
|
|
1455
951
|
## v3.11.1 (2019-03-11)
|
|
1456
952
|
|
|
1457
953
|
### Bug fixes
|
|
1458
954
|
|
|
1459
|
-
- npm: publish package again. An error in the previous release led to some files missing
|
|
1460
|
-
|
|
955
|
+
- npm: publish package again. An error in the previous release led to some files missing on npm
|
|
956
|
+
|
|
1461
957
|
|
|
1462
958
|
## v3.11.0 (2019-03-07)
|
|
1463
959
|
|
|
1464
960
|
### Features
|
|
1465
961
|
|
|
1466
|
-
- languages/api: add `preferredAudioTracks` and `preferredTextTracks` player options
|
|
1467
|
-
- languages/api: add `setPreferredAudioTracks`, `getPreferredAudioTracks`,
|
|
1468
|
-
`
|
|
1469
|
-
-
|
|
1470
|
-
|
|
1471
|
-
-
|
|
1472
|
-
- eme: allow playback of mixed encrypted and unencrypted contents on Chrome
|
|
1473
|
-
- types: export the new `IAudioTrackPreference` and `ITextTrackPreference` types
|
|
962
|
+
- languages/api: add `preferredAudioTracks` and `preferredTextTracks` player options
|
|
963
|
+
- languages/api: add `setPreferredAudioTracks`, `getPreferredAudioTracks`, `setPreferredTextTracks` and `getPreferredTextTracks` methods
|
|
964
|
+
- languages/api: add `availableAudioTracksChange`, `availableTextTracksChange` and `availableVideoTracksChange` events
|
|
965
|
+
- abr/api: add `availableAudioBitratesChange` and `availableVideoBitratesChange` events
|
|
966
|
+
- eme: allow playback of mixed encrypted and unencrypted contents on Chrome
|
|
967
|
+
- types: export the new `IAudioTrackPreference` and `ITextTrackPreference` types
|
|
1474
968
|
|
|
1475
969
|
### Deprecated
|
|
1476
970
|
|
|
1477
|
-
- languages/api: deprecate the `defaultAudioTrack` `loadVideo` option in favor of the
|
|
1478
|
-
`
|
|
1479
|
-
- languages/api: deprecate the `defaultTextTrack` `loadVideo` option in favor of the
|
|
1480
|
-
`preferredTextTracks` player option.
|
|
971
|
+
- languages/api: deprecate the `defaultAudioTrack` `loadVideo` option in favor of the `preferredAudioTracks` player option.
|
|
972
|
+
- languages/api: deprecate the `defaultTextTrack` `loadVideo` option in favor of the `preferredTextTracks` player option.
|
|
1481
973
|
|
|
1482
974
|
### Bug fixes
|
|
1483
975
|
|
|
1484
|
-
- dash: fix `minimumUpdatePeriod` management for DASH contents
|
|
1485
|
-
- smooth: better prevent 412 HTTP errors for smooth streaming contents
|
|
1486
|
-
- subtitles: ensure subtitles are not visible in Firefox when disabling them in the
|
|
1487
|
-
`
|
|
1488
|
-
-
|
|
1489
|
-
`MEDIA_TIME_AFTER_MANIFEST` warnings instead of just one
|
|
1490
|
-
- api: fix (deprecated) option `hideNativeSubtitles`
|
|
976
|
+
- dash: fix `minimumUpdatePeriod` management for DASH contents
|
|
977
|
+
- smooth: better prevent 412 HTTP errors for smooth streaming contents
|
|
978
|
+
- subtitles: ensure subtitles are not visible in Firefox when disabling them in the `"native"` textTrack mode.
|
|
979
|
+
- errors: avoid sending multiple `MEDIA_TIME_BEFORE_MANIFEST` or `MEDIA_TIME_AFTER_MANIFEST` warnings instead of just one
|
|
980
|
+
- api: fix (deprecated) option `hideNativeSubtitles`
|
|
1491
981
|
|
|
1492
982
|
### Other improvements
|
|
1493
983
|
|
|
1494
|
-
- errors: set a readable error message for every error and warnings thrown
|
|
1495
|
-
- tools/mediaCapabilitiesProber: set logs about unimportant missing APIs as debug-level
|
|
1496
|
-
|
|
1497
|
-
|
|
984
|
+
- errors: set a readable error message for every error and warnings thrown
|
|
985
|
+
- tools/mediaCapabilitiesProber: set logs about unimportant missing APIs as debug-level instead of warn-level
|
|
986
|
+
- types: provide type safety to `addEventListener` and `removeEventListener`
|
|
987
|
+
|
|
1498
988
|
|
|
1499
989
|
## v3.10.3 (2019-01-30)
|
|
1500
990
|
|
|
1501
991
|
### Bug fixes
|
|
1502
992
|
|
|
1503
|
-
- dash/api: fix
|
|
1504
|
-
|
|
1505
|
-
-
|
|
1506
|
-
- buffers
|
|
1507
|
-
-
|
|
1508
|
-
|
|
1509
|
-
- subtitles:
|
|
1510
|
-
|
|
1511
|
-
-
|
|
1512
|
-
|
|
1513
|
-
-
|
|
1514
|
-
track cues are removed when the content is stopped
|
|
1515
|
-
- subtitles/webvtt: support default classes in the WebVTT specification
|
|
1516
|
-
- subtitles/webvtt: multiple styles for the same element are now merged into one (instead
|
|
1517
|
-
of considering only the last one)
|
|
1518
|
-
- subtitles/webvtt: fix styling issues when both styles applied globally and styles
|
|
1519
|
-
applied on a selector are defined
|
|
1520
|
-
- subtitles/webvtt: do not remove whitespaces in styles to keep a sane formatting for some
|
|
1521
|
-
complex values
|
|
993
|
+
- dash/api: fix ``getMinimumPosition`` for MPDs with an availabilityStartTime superior to unix epoch
|
|
994
|
+
- smooth: be more tolerant on downloaded segments (accept ISOBMFF with boxes in any order)
|
|
995
|
+
- buffers/abr: fix issue infrequently leading to a delay in quality changes
|
|
996
|
+
- buffers: improve synchronisation to the SourceBuffer's buffer to avoid cases where the same segment could be downloaded multiple times
|
|
997
|
+
- subtitles: fix bug in the clean-up logic of subtitles in the `"html"` texttrack mode that would lead to removed subtitles still being displayed
|
|
998
|
+
- pipelines: retry a segment request with a backoff instead of stopping when receiving a HTTP 412
|
|
999
|
+
- compat/subtitles: work-around firefox issue in the `"native"` texttrack mode to ensure track cues are removed when the content is stopped
|
|
1000
|
+
- subtitles/webvtt: support default classes in the WebVTT specification
|
|
1001
|
+
- subtitles/webvtt: multiple styles for the same element are now merged into one (instead of considering only the last one)
|
|
1002
|
+
- subtitles/webvtt: fix styling issues when both styles applied globally and styles applied on a selector are defined
|
|
1003
|
+
- subtitles/webvtt: do not remove whitespaces in styles to keep a sane formatting for some complex values
|
|
1522
1004
|
|
|
1523
1005
|
### Other improvements
|
|
1524
1006
|
|
|
1525
|
-
- dash: warn through logs when fields are not in the expected format
|
|
1526
|
-
- drm: throw more explicative error messages when DRM are not supported in the current
|
|
1527
|
-
|
|
1528
|
-
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
- demo: fix initial text-track selection
|
|
1007
|
+
- dash: warn through logs when fields are not in the expected format
|
|
1008
|
+
- drm: throw more explicative error messages when DRM are not supported in the current target
|
|
1009
|
+
- dash/smooth: get more precize duration from ISOBMFF by better handling the default duration taken from the tfhd box
|
|
1010
|
+
- tests: continue unit test coverage improvements (from 22% in the ``v3.10.2`` to 33.6%)
|
|
1011
|
+
- demo: fix initial text-track selection
|
|
1012
|
+
|
|
1532
1013
|
|
|
1533
1014
|
## v3.10.2 (2019-01-08)
|
|
1534
1015
|
|
|
1535
1016
|
### Bug fixes
|
|
1536
1017
|
|
|
1537
|
-
- dash/smooth: fix manifest updates for some DASH contents (SegmentTimeline without
|
|
1538
|
-
|
|
1539
|
-
-
|
|
1540
|
-
|
|
1541
|
-
- dash/smooth: update deprecated Manifest.adaptations property when updating the manifest
|
|
1018
|
+
- dash/smooth: fix manifest updates for some DASH contents (SegmentTimeline without SegmentTemplate) and for some Smooth usages
|
|
1019
|
+
- compat/drm: adopt a new strategy for malfunctioning CENC PSSH on Edge by moving them at the end of the initialization data
|
|
1020
|
+
- dash/smooth: update deprecated Manifest.adaptations property when updating the manifest
|
|
1021
|
+
|
|
1542
1022
|
|
|
1543
1023
|
## Other improvements
|
|
1544
1024
|
|
|
1545
|
-
- dash: refresh the MPD less often
|
|
1546
|
-
- dash/smooth: improve precision of `getMaximumPosition` when the Manifest is updated
|
|
1547
|
-
- tests: use the Jest library for unit tests
|
|
1548
|
-
- tests: add a lot of unit tests to sensitive code (from a coverage of 13% in the v3.10.1
|
|
1549
|
-
|
|
1550
|
-
|
|
1025
|
+
- dash: refresh the MPD less often
|
|
1026
|
+
- dash/smooth: improve precision of `getMaximumPosition` when the Manifest is updated
|
|
1027
|
+
- tests: use the Jest library for unit tests
|
|
1028
|
+
- tests: add a lot of unit tests to sensitive code (from a coverage of 13% in the v3.10.1 to 22% in the v3.10.2)
|
|
1029
|
+
- npm: reduce size of the npm package
|
|
1030
|
+
|
|
1551
1031
|
|
|
1552
1032
|
## v3.10.1 (2019-01-03)
|
|
1553
1033
|
|
|
1554
1034
|
### Bug fixes
|
|
1555
1035
|
|
|
1556
|
-
- abr: always consider the last quality estimation
|
|
1557
|
-
- drm: work-arround Edge bug where the browser does not accept a valid CENC PSSH
|
|
1558
|
-
|
|
1559
|
-
- dash: handle `S`
|
|
1560
|
-
- dash:
|
|
1561
|
-
|
|
1562
|
-
- dash: Representation.index.getLastPosition() for SegmentBase-based DASH Representations
|
|
1563
|
-
now returns the end of the last segment (it returned the start of the last segment
|
|
1564
|
-
before)
|
|
1565
|
-
- dash/smooth: throw better error (`MANIFEST_PARSE_ERROR`) if none of the audio or video
|
|
1566
|
-
tracks of a content can be played (e.g. none have supported codecs)
|
|
1036
|
+
- abr: always consider the last quality estimation
|
|
1037
|
+
- drm: work-arround Edge bug where the browser does not accept a valid CENC PSSH (DRM-related information in an ISOBMFF)
|
|
1038
|
+
- dash: handle `S` nodes (segments) with an @r attribute at `-1` in an MPD
|
|
1039
|
+
- dash: handle `SegmentTimeline` which have as a first `S` node (segment) an undefined @t attribute in an MPD
|
|
1040
|
+
- dash: Representation.index.getLastPosition() for SegmentBase-based DASH Representations now returns the end of the last segment (it returned the start of the last segment before)
|
|
1041
|
+
- dash/smooth: throw better error (`MANIFEST_PARSE_ERROR`) if none of the audio or video tracks of a content can be played (e.g. none have supported codecs)
|
|
1567
1042
|
|
|
1568
1043
|
### Other improvements
|
|
1569
1044
|
|
|
1570
|
-
- manifest: better infer the minimum time of a Manifest
|
|
1571
|
-
- code: refresh code architecture (rename and move modules, remove some dependencies...)
|
|
1572
|
-
- tests: add coverage reports for both unit and "integration" tests, to check where tests
|
|
1573
|
-
|
|
1574
|
-
|
|
1045
|
+
- manifest: better infer the minimum time of a Manifest
|
|
1046
|
+
- code: refresh code architecture (rename and move modules, remove some dependencies...)
|
|
1047
|
+
- tests: add coverage reports for both unit and "integration" tests, to check where tests are lacking and better pin down our hot-spots
|
|
1048
|
+
- tests: add appveyor countinous integration service for unit tests
|
|
1049
|
+
|
|
1575
1050
|
|
|
1576
1051
|
## v3.10.0 (2018-12-11)
|
|
1577
1052
|
|
|
1578
1053
|
### Features
|
|
1579
1054
|
|
|
1580
|
-
- dash: Manage xlinks in "onLoad" resolution model
|
|
1581
|
-
- dash: Implement AdaptationSet switching by merging similar and switchable AdaptationSet
|
|
1582
|
-
|
|
1583
|
-
- compat: add
|
|
1584
|
-
|
|
1585
|
-
directfile mode)
|
|
1586
|
-
- compat: add `MEDIA_ERR_PLAY_NOT_ALLOWED` warning, triggered when the application tries
|
|
1587
|
-
to `play` but the current browser doesn't allow it (often due to autoplay policy)
|
|
1588
|
-
- api: the `play` API now returns a Promise, mirroring the original browser's `play` API
|
|
1055
|
+
- dash: Manage xlinks in "onLoad" resolution model
|
|
1056
|
+
- dash: Implement AdaptationSet switching by merging similar and switchable AdaptationSet into a single track
|
|
1057
|
+
- compat: add ``MEDIA_ERR_METADATA_NOT_LOADED`` warning, triggered when the browser has issues with loading the initial data (only seen on the Samsung mobile browser in directfile mode)
|
|
1058
|
+
- compat: add ``MEDIA_ERR_PLAY_NOT_ALLOWED`` warning, triggered when the application tries to ``play`` but the current browser doesn't allow it (often due to autoplay policy)
|
|
1059
|
+
- api: the ``play`` API now returns a Promise, mirroring the original browser's ``play`` API
|
|
1589
1060
|
|
|
1590
1061
|
### Deprecated
|
|
1591
1062
|
|
|
1592
|
-
- api: The
|
|
1063
|
+
- api: The ``xhr`` property from a `NetworkError` is now deprecated
|
|
1593
1064
|
|
|
1594
1065
|
### Bug fixes
|
|
1595
1066
|
|
|
1596
|
-
- compat/smooth: fix fatal error `BUFFER_APPEND_ERROR` happening on some HSS contents with
|
|
1597
|
-
|
|
1598
|
-
- dash/smooth:
|
|
1599
|
-
-
|
|
1600
|
-
|
|
1601
|
-
-
|
|
1602
|
-
|
|
1603
|
-
-
|
|
1604
|
-
|
|
1605
|
-
- compat: use Promise ponyfill to improve IE11 compatibility with the
|
|
1606
|
-
MediaCapabilitiesProber and some EME functionalities
|
|
1607
|
-
- api: translate most IETF language tags into corresponding ISO639-3 codes for the
|
|
1608
|
-
`normalizedLanguage` property - given from APIs such as `getAvailableAudioTracks`
|
|
1609
|
-
- tools: fix `mediaCapabilitiesProber.getCompatibleDRMConfigurations` experimental tool on
|
|
1610
|
-
Safari
|
|
1611
|
-
- api: filter out duplicates in `getAvailableVideoBitrates` and
|
|
1612
|
-
`getAvailableAudioBitrates`
|
|
1067
|
+
- compat/smooth: fix fatal error `BUFFER_APPEND_ERROR` happening on some HSS contents with Edge
|
|
1068
|
+
- dash/smooth: never refresh the manifest if its content is not dynamic
|
|
1069
|
+
- dash/smooth: use new URL if the initial manifest request is redirected (again :/ - thanks @fnatte)
|
|
1070
|
+
- api: do not go out of the ``LOADING`` state if the metadata could not be fetched (even if the browser tells us otherwise) - to work around Samsung Browser bug
|
|
1071
|
+
- api: avoid going out of the ``LOADED`` state until the initial seek is done and metadata is fetched
|
|
1072
|
+
- compat: use Promise ponyfill to improve IE11 compatibility with the MediaCapabilitiesProber and some EME functionalities
|
|
1073
|
+
- api: translate most IETF language tags into corresponding ISO639-3 codes for the `normalizedLanguage` property - given from APIs such as `getAvailableAudioTracks`
|
|
1074
|
+
- tools: fix ``mediaCapabilitiesProber.getCompatibleDRMConfigurations`` experimental tool on Safari
|
|
1075
|
+
- api: filter out duplicates in ``getAvailableVideoBitrates`` and ``getAvailableAudioBitrates``
|
|
1613
1076
|
|
|
1614
1077
|
### Other improvements
|
|
1615
1078
|
|
|
1616
|
-
- dash: better infer unknown Period durations
|
|
1617
|
-
- dash: better manage overlapping Periods by giving more importance to the last
|
|
1618
|
-
|
|
1619
|
-
-
|
|
1620
|
-
|
|
1621
|
-
-
|
|
1622
|
-
|
|
1623
|
-
- demo: fix time indication for non-live contents
|
|
1079
|
+
- dash: better infer unknown Period durations
|
|
1080
|
+
- dash: better manage overlapping Periods by giving more importance to the last chronological one
|
|
1081
|
+
- memory: clean-up ``Adaptation`` and ``Representation`` information on Periods which are not considered anymore
|
|
1082
|
+
- log: warn through our logs every time a warning event is sent by the API
|
|
1083
|
+
- demo: authorize DRMs in IE11 or Safari when in HTTP in the demo page
|
|
1084
|
+
- demo: fix time indication for non-live contents
|
|
1085
|
+
|
|
1624
1086
|
|
|
1625
1087
|
## v3.9.3 (2018-11-23)
|
|
1626
1088
|
|
|
1627
1089
|
### Bug fixes
|
|
1628
1090
|
|
|
1629
|
-
- compat: fix `undefined Object.values function` issue happening in some older browsers
|
|
1630
|
-
|
|
1631
|
-
-
|
|
1632
|
-
- tools: fix issue about an undefined Array.prototype.find method in some older browsers
|
|
1633
|
-
when calling mediaCapabilitiesProber.getCompatibleDRMConfigurations (mainly encountered
|
|
1634
|
-
in IE11)
|
|
1091
|
+
- compat: fix `undefined Object.values function` issue happening in some older browsers (mainly encountered in IE11 and old webkit versions)
|
|
1092
|
+
- compat: remove side-effects relative to DRM on Safari
|
|
1093
|
+
- tools: fix issue about an undefined Array.prototype.find method in some older browsers when calling mediaCapabilitiesProber.getCompatibleDRMConfigurations (mainly encountered in IE11)
|
|
1635
1094
|
|
|
1636
1095
|
### Other improvements
|
|
1637
1096
|
|
|
1638
|
-
- eme: activate MediaKeys caching on Edge
|
|
1639
|
-
- compat: add in our validation process a ban of methods and functions unavailable in
|
|
1640
|
-
|
|
1641
|
-
|
|
1097
|
+
- eme: activate MediaKeys caching on Edge
|
|
1098
|
+
- compat: add in our validation process a ban of methods and functions unavailable in older browsers
|
|
1099
|
+
- tests/smooth: reinforce our Smooth Streaming integration tests
|
|
1100
|
+
|
|
1642
1101
|
|
|
1643
1102
|
## v3.9.2 (2018-11-14)
|
|
1644
1103
|
|
|
1645
1104
|
### Bug fixes
|
|
1646
1105
|
|
|
1647
|
-
- smooth: authorize empty tracks ("StreamIndex") in Smooth manifests
|
|
1106
|
+
- smooth: authorize empty tracks ("StreamIndex") in Smooth manifests
|
|
1107
|
+
|
|
1648
1108
|
|
|
1649
1109
|
## v3.9.1 (2018-11-13)
|
|
1650
1110
|
|
|
1651
1111
|
### Bug fixes
|
|
1652
1112
|
|
|
1653
|
-
- smooth: fix issue preventing emergency manifest updates
|
|
1654
|
-
- dash: fix timeout for minimumUpdatePeriod in cases where the time at which the manifest
|
|
1655
|
-
was last requested is not known (like when setting a customManifestLoader argument)
|
|
1113
|
+
- smooth: fix issue preventing emergency manifest updates
|
|
1114
|
+
- dash: fix timeout for minimumUpdatePeriod in cases where the time at which the manifest was last requested is not known (like when setting a customManifestLoader argument)
|
|
1656
1115
|
|
|
1657
1116
|
### Other improvements
|
|
1658
1117
|
|
|
1659
|
-
- smooth: keep supplementary segment information when updating the manifest
|
|
1660
|
-
- smooth: when updating segment information, perform garbage-collection of those
|
|
1661
|
-
|
|
1118
|
+
- smooth: keep supplementary segment information when updating the manifest
|
|
1119
|
+
- smooth: when updating segment information, perform garbage-collection of those concerning unreachable segments
|
|
1120
|
+
|
|
1662
1121
|
|
|
1663
1122
|
## v3.9.0 (2018-11-08)
|
|
1664
1123
|
|
|
1665
1124
|
### Features
|
|
1666
1125
|
|
|
1667
|
-
- dash: consider
|
|
1668
|
-
- buffer: add codec-switching for browsers supporting the
|
|
1669
|
-
|
|
1670
|
-
- dash/smooth: accept and parse segments with a "stpp.ttml.im1t" codec (TTML IMSC1 in MP4)
|
|
1126
|
+
- dash: consider ``minimumUpdatePeriod`` attribute in MPDs
|
|
1127
|
+
- buffer: add codec-switching for browsers supporting the `SourceBuffer.prototype.changeType` API
|
|
1128
|
+
- dash/smooth: accept and parse segments with a "stpp.ttml.im1t" codec (TTML IMSC1 in MP4)
|
|
1671
1129
|
|
|
1672
1130
|
### Bug fixes
|
|
1673
1131
|
|
|
1674
|
-
- smooth: fix calculations of the initial time, duration and minimum position for HSS VOD
|
|
1675
|
-
|
|
1676
|
-
-
|
|
1677
|
-
- dash:
|
|
1678
|
-
-
|
|
1679
|
-
- typings: make `manualBitrateSwitchingMode` `loadVideo` option an optional TypeScript
|
|
1680
|
-
typing (thanks @fnatte again!)
|
|
1132
|
+
- smooth: fix calculations of the initial time, duration and minimum position for HSS VOD contents not starting at a '0' time
|
|
1133
|
+
- buffer: fix priority updates for segment requests
|
|
1134
|
+
- dash: calculate VOD duration from the last period if undefined in the MPD's root
|
|
1135
|
+
- dash: remove possibility of obtaining two periods with the same id
|
|
1136
|
+
- typings: make `manualBitrateSwitchingMode` ``loadVideo`` option an optional TypeScript typing (thanks @fnatte again!)
|
|
1681
1137
|
|
|
1682
1138
|
### Other improvements
|
|
1683
1139
|
|
|
1684
|
-
- abr: do not always cancel pending requests when switching to a new bitrate
|
|
1685
|
-
- abr: re-estimate the bandwidth immediately after each request
|
|
1686
|
-
- buffer: remove automatic garbage-collection of the "image" source-buffer (its rules
|
|
1687
|
-
|
|
1688
|
-
- tools/mediaCapabilitiesProber:
|
|
1689
|
-
|
|
1690
|
-
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
@necccc)
|
|
1694
|
-
- tests: add memory tests to detect memory leaks
|
|
1695
|
-
- demo: add 'favicon' to the demo page
|
|
1140
|
+
- abr: do not always cancel pending requests when switching to a new bitrate
|
|
1141
|
+
- abr: re-estimate the bandwidth immediately after each request
|
|
1142
|
+
- buffer: remove automatic garbage-collection of the "image" source-buffer (its rules should be more complex than those in place)
|
|
1143
|
+
- tools/mediaCapabilitiesProber: Make ``getCompatibleDRMConfigurations`` work under IE11 and old webkit versions
|
|
1144
|
+
- tools/mediaCapabilitiesProber: Add a multitude of bug fixes to the experimental mediaCapabilitiesProber
|
|
1145
|
+
- package: divide by more than 2 the size of our package published in `npm` (thanks @necccc)
|
|
1146
|
+
- tests: add memory tests to detect memory leaks
|
|
1147
|
+
- demo: add 'favicon' to the demo page
|
|
1148
|
+
|
|
1696
1149
|
|
|
1697
1150
|
## v3.8.1 (2018-10-17)
|
|
1698
1151
|
|
|
1699
1152
|
### Bug fixes
|
|
1700
1153
|
|
|
1701
|
-
- abr: fix memory leak in ABR Management
|
|
1702
|
-
- eme: avoid re-attaching a server certificate at each encrypted event
|
|
1154
|
+
- abr: fix memory leak in ABR Management
|
|
1155
|
+
- eme: avoid re-attaching a server certificate at each encrypted event
|
|
1703
1156
|
|
|
1704
1157
|
### Other improvements
|
|
1705
1158
|
|
|
1706
|
-
- buffer: lower the "paddings" applied to the video buffer when raising the quality
|
|
1707
|
-
- abr: when pratical, avoid relying on the "Content-Length" header to protect against
|
|
1708
|
-
|
|
1709
|
-
- abr:
|
|
1710
|
-
|
|
1711
|
-
-
|
|
1712
|
-
|
|
1713
|
-
- demo: fix standalone demo and add possibility to launch it via HTTPS
|
|
1159
|
+
- buffer: lower the "paddings" applied to the video buffer when raising the quality
|
|
1160
|
+
- abr: when pratical, avoid relying on the "Content-Length" header to protect against miscalculations when downloading from misconfigured servers
|
|
1161
|
+
- abr: lower the minimum number of bytes we wait to download before we evaluate the bandwidth
|
|
1162
|
+
- abr: use performance.now instead of Date.now for better precision
|
|
1163
|
+
- module: move express from the dependencies to the devDependencies
|
|
1164
|
+
- demo: fix standalone demo and add possibility to launch it via HTTPS
|
|
1165
|
+
|
|
1714
1166
|
|
|
1715
1167
|
## v3.8.0 (2018-10-11)
|
|
1716
1168
|
|
|
1717
1169
|
### Features
|
|
1718
1170
|
|
|
1719
|
-
- api/dash/smooth: add representationFilter API to prevent Representations (i.e. media
|
|
1720
|
-
|
|
1721
|
-
- api/buffer:
|
|
1722
|
-
|
|
1723
|
-
- api/buffer: emit a `MEDIA_TIME_BEFORE_MANIFEST` warning when the wanted time is before
|
|
1724
|
-
what is announced in the manifest
|
|
1725
|
-
- api/buffer: emit a `MEDIA_TIME_AFTER_MANIFEST` warning when the wanted time is after
|
|
1726
|
-
what is announced in the manifest
|
|
1171
|
+
- api/dash/smooth: add representationFilter API to prevent Representations (i.e. media qualities) from being played
|
|
1172
|
+
- api/buffer: add ``manualBitrateSwitchingMode`` option to allow a direct representation switch when calling ``setVideoBitrate`` and ``setAudioBitrate``
|
|
1173
|
+
- api/buffer: emit a ``MEDIA_TIME_BEFORE_MANIFEST`` warning when the wanted time is before what is announced in the manifest
|
|
1174
|
+
- api/buffer: emit a ``MEDIA_TIME_AFTER_MANIFEST`` warning when the wanted time is after what is announced in the manifest
|
|
1727
1175
|
|
|
1728
1176
|
### Bug fixes
|
|
1729
1177
|
|
|
1730
|
-
- remove export of undeclared
|
|
1178
|
+
- remove export of undeclared ``ICompatVTTCue`` from modular build
|
|
1731
1179
|
|
|
1732
1180
|
### Other improvements
|
|
1733
1181
|
|
|
1734
|
-
- buffer: to avoid taking too much memory, regularly clean-up text and image buffer 5
|
|
1735
|
-
|
|
1736
|
-
-
|
|
1737
|
-
-
|
|
1738
|
-
|
|
1182
|
+
- buffer: to avoid taking too much memory, regularly clean-up text and image buffer 5 hours ahead/behind the current position (customizable)
|
|
1183
|
+
- demo: add HTTPS capabilities on local full demo
|
|
1184
|
+
- rxjs: update rxjs to 6.3.3
|
|
1185
|
+
- typescript: update typescript to 3.1.2
|
|
1186
|
+
|
|
1739
1187
|
|
|
1740
1188
|
## v3.7.0 (2018-09-21)
|
|
1741
1189
|
|
|
1742
1190
|
### Features
|
|
1743
1191
|
|
|
1744
|
-
- eme: add
|
|
1745
|
-
|
|
1746
|
-
- eme: in the
|
|
1747
|
-
|
|
1748
|
-
- eme: in the `onKeyStatusesChange` property of `keySystems` (`loadVideo` option), it is
|
|
1749
|
-
now possible to resolve with `null` to avoid a license update.
|
|
1750
|
-
- tools: replace experimental tool `mediaCapabilitiesProber.isDRMSupported` by the more
|
|
1751
|
-
useful `mediaCapabilitiesProber.getCompatibleDRMConfigurations`
|
|
1192
|
+
- eme: add ``throwOnLicenseExpiration`` boolean to ``keySystems`` (``loadVideo`` option) to allow better expiration management
|
|
1193
|
+
- eme: in the ``getLicense`` property of ``keySystems`` (``loadVideo`` option), it is now possible to resolve with ``null`` to avoid a license update.
|
|
1194
|
+
- eme: in the ``onKeyStatusesChange`` property of ``keySystems`` (``loadVideo`` option), it is now possible to resolve with ``null`` to avoid a license update.
|
|
1195
|
+
- tools: replace experimental tool ``mediaCapabilitiesProber.isDRMSupported`` by the more useful ``mediaCapabilitiesProber.getCompatibleDRMConfigurations``
|
|
1752
1196
|
|
|
1753
1197
|
### Deprecated
|
|
1754
1198
|
|
|
1755
|
-
- smooth: giving a WSX URL instead of the Manifest URL for a smooth content is now
|
|
1756
|
-
deprecated.
|
|
1757
|
-
- smooth: giving a
|
|
1758
|
-
for a smooth content is now deprecated.
|
|
1759
|
-
- smooth: giving a _Smooth Streaming server manifest_ URL (.ism) instead of the Manifest
|
|
1760
|
-
URL for a smooth content is now deprecated.
|
|
1199
|
+
- smooth: giving a WSX URL instead of the Manifest URL for a smooth content is now deprecated.
|
|
1200
|
+
- smooth: giving a _publishing point definition_ URL (.isml) instead of the Manifest URL for a smooth content is now deprecated.
|
|
1201
|
+
- smooth: giving a _Smooth Streaming server manifest_ URL (.ism) instead of the Manifest URL for a smooth content is now deprecated.
|
|
1761
1202
|
|
|
1762
1203
|
### Bug fixes
|
|
1763
1204
|
|
|
1764
|
-
- api: switch state to "ENDED" if seeking to the end while the player is in the "LOADED"
|
|
1765
|
-
state.
|
|
1766
|
-
-
|
|
1767
|
-
|
|
1768
|
-
-
|
|
1769
|
-
-
|
|
1770
|
-
TypeScript option enabled.
|
|
1771
|
-
- smooth: fix Manifest URL generation when a ".ism" or a ".isml" URL is given.
|
|
1772
|
-
- doc: document deprecation of the `adaptations` property returned from a `Manifest`
|
|
1773
|
-
object (as returned from the `getManifest` method).
|
|
1205
|
+
- api: switch state to "ENDED" if seeking to the end while the player is in the "LOADED" state.
|
|
1206
|
+
- api: switch state to "SEEKING" if seeking in the content while the player is in the "LOADED" state.
|
|
1207
|
+
- dash: consider multiple `Role` nodes for an AdaptationSet.
|
|
1208
|
+
- typescript: fix typings error when an application build us without the ``skipLibCheck`` TypeScript option enabled.
|
|
1209
|
+
- smooth: fix Manifest URL generation when a ".ism" or a ".isml" URL is given.
|
|
1210
|
+
- doc: document deprecation of the ``adaptations`` property returned from a ``Manifest`` object (as returned from the ``getManifest`` method).
|
|
1774
1211
|
|
|
1775
1212
|
### Other improvements
|
|
1776
1213
|
|
|
1777
|
-
- doc: add quick start tutorial.
|
|
1778
|
-
- doc: add player states documentation.
|
|
1779
|
-
- demo: add possibility to play encrypted contents.
|
|
1780
|
-
- demo: update demo page.
|
|
1781
|
-
- tests: consolidate our integration tests.
|
|
1214
|
+
- doc: add quick start tutorial.
|
|
1215
|
+
- doc: add player states documentation.
|
|
1216
|
+
- demo: add possibility to play encrypted contents.
|
|
1217
|
+
- demo: update demo page.
|
|
1218
|
+
- tests: consolidate our integration tests.
|
|
1219
|
+
|
|
1782
1220
|
|
|
1783
1221
|
## v3.6.1 (2018-09-03)
|
|
1784
1222
|
|
|
1785
1223
|
### Bug fixes
|
|
1786
1224
|
|
|
1787
|
-
- directfile: send
|
|
1788
|
-
- dash: don't merge "main" AdaptationSet if they are not of a video type
|
|
1789
|
-
- eme: fix bug which prevented the
|
|
1790
|
-
- typescript: export types compatible with project references
|
|
1225
|
+
- directfile: send ``LOADED`` event again for directfile contents - thanks @Fnatte
|
|
1226
|
+
- dash: don't merge "main" AdaptationSet if they are not of a video type
|
|
1227
|
+
- eme: fix bug which prevented the ``closeSessionsOnStop`` keySystem option to work properly
|
|
1228
|
+
- typescript: export types compatible with project references
|
|
1229
|
+
|
|
1791
1230
|
|
|
1792
1231
|
### Other improvements
|
|
1793
1232
|
|
|
1794
|
-
- directfile/tests: add basic directfile integration tests
|
|
1795
|
-
- build: update to Babel 7
|
|
1796
|
-
- rxjs: update to RxJS 6.3.1
|
|
1233
|
+
- directfile/tests: add basic directfile integration tests
|
|
1234
|
+
- build: update to Babel 7
|
|
1235
|
+
- rxjs: update to RxJS 6.3.1
|
|
1236
|
+
|
|
1797
1237
|
|
|
1798
1238
|
## v3.6.0 (2018-08-24)
|
|
1799
1239
|
|
|
1800
1240
|
### Features
|
|
1801
|
-
|
|
1802
|
-
-
|
|
1803
|
-
-
|
|
1804
|
-
- api:
|
|
1805
|
-
- api: add
|
|
1806
|
-
- api: add
|
|
1807
|
-
- api: add
|
|
1808
|
-
- api: add
|
|
1809
|
-
- api: add `RELOADING` event for cases where the player needs to reload (such as during a
|
|
1810
|
-
video track switch)
|
|
1241
|
+
- api: add video track switching
|
|
1242
|
+
- dash: add webm support
|
|
1243
|
+
- api: Emit warning if autoPlay is blocked on the current browser
|
|
1244
|
+
- api: add ``getAvailableVideoTracks`` method to retrieve every video tracks
|
|
1245
|
+
- api: add ``getVideoTrack`` method to get the active video track
|
|
1246
|
+
- api: add ``setVideoTrack`` method to switch the video track
|
|
1247
|
+
- api: add ``videoTrackChange`` event to know when a video track has been switched
|
|
1248
|
+
- api: add ``RELOADING`` event for cases where the player needs to reload (such as during a video track switch)
|
|
1811
1249
|
|
|
1812
1250
|
### Deprecated
|
|
1813
1251
|
|
|
1814
|
-
- api: the method
|
|
1815
|
-
- api: the method
|
|
1816
|
-
- api: the method
|
|
1817
|
-
- api: the method
|
|
1818
|
-
- api: the event
|
|
1819
|
-
- api: the event
|
|
1252
|
+
- api: the method ``isFullscreen`` has been deprecated
|
|
1253
|
+
- api: the method ``setFullscreen`` has been deprecated
|
|
1254
|
+
- api: the method ``exitFullscreen`` has been deprecated
|
|
1255
|
+
- api: the method ``getNativeTextTrack`` has been deprecated
|
|
1256
|
+
- api: the event ``fullscreenChange`` has been deprecated
|
|
1257
|
+
- api: the event ``nativeTextTrackChange`` has been deprecated
|
|
1820
1258
|
|
|
1821
1259
|
### Bug Fixes
|
|
1822
1260
|
|
|
1823
|
-
- ttml: display forbidden characters (such as ">") in a
|
|
1824
|
-
- ttml: process
|
|
1825
|
-
- buffer: perform a better clean-up of previous media in a SourceBuffer when switching
|
|
1826
|
-
|
|
1827
|
-
- manifest/dash: throw a MANIFEST_PARSE_ERROR when no AdaptationSet of a given type in a
|
|
1828
|
-
Period is in a compatible codec
|
|
1261
|
+
- ttml: display forbidden characters (such as ">") in a ``"native"`` ``textTrackMode``
|
|
1262
|
+
- ttml: process ``xml:space`` even if it is not defined at the top level
|
|
1263
|
+
- buffer: perform a better clean-up of previous media in a SourceBuffer when switching audio or text track
|
|
1264
|
+
- manifest/dash: throw a MANIFEST_PARSE_ERROR when no AdaptationSet of a given type in a Period is in a compatible codec
|
|
1829
1265
|
|
|
1830
1266
|
### Other improvements
|
|
1831
1267
|
|
|
1832
|
-
- types: export and document main typings used internally such as ILoadVideoOptions (the
|
|
1833
|
-
|
|
1834
|
-
- misc:
|
|
1835
|
-
-
|
|
1836
|
-
|
|
1268
|
+
- types: export and document main typings used internally such as ILoadVideoOptions (the loadVideo argument)
|
|
1269
|
+
- misc: log every fatal errors
|
|
1270
|
+
- misc: remove dumb npm inclusion as a project dependency
|
|
1271
|
+
- doc: improve architecture documentation
|
|
1272
|
+
|
|
1837
1273
|
|
|
1838
1274
|
## v3.5.2 (2018-08-06)
|
|
1839
1275
|
|
|
1840
1276
|
### Bug fixes
|
|
1841
1277
|
|
|
1842
|
-
- dash: Manage presentationTimeOffset completely (allow advanced multi-period
|
|
1843
|
-
configurations)
|
|
1278
|
+
- dash: Manage presentationTimeOffset completely (allow advanced multi-period configurations)
|
|
1844
1279
|
- dash: Fix Adaptations bug when the first DASH adaptation was a "main" one
|
|
1845
1280
|
- smooth: Remove the limitation of a minimum bitrate in Smooth Streaming
|
|
1846
1281
|
- dash: Fix condition which prevented to play audio-only live DASH streams
|
|
@@ -1853,517 +1288,470 @@
|
|
|
1853
1288
|
- drm: Add keyId information to the internal Manifest structure
|
|
1854
1289
|
- typescript: update typescript to v3.0.1
|
|
1855
1290
|
|
|
1291
|
+
|
|
1856
1292
|
## v3.5.1 (2018-07-11)
|
|
1857
1293
|
|
|
1858
1294
|
### Bug fixes
|
|
1859
1295
|
|
|
1860
|
-
- parsers: fix wrong computation of segment time in template index
|
|
1861
|
-
- abr: get concerned request in starvation mode
|
|
1296
|
+
- parsers: fix wrong computation of segment time in template index
|
|
1297
|
+
- abr: get concerned request in starvation mode
|
|
1862
1298
|
|
|
1863
1299
|
## v3.5.0 (2018-07-03)
|
|
1864
1300
|
|
|
1865
1301
|
### Added
|
|
1866
1302
|
|
|
1867
|
-
- tools: add
|
|
1868
|
-
- builds: add minimal import with feature selection (allowing cleaner feature switching or
|
|
1869
|
-
|
|
1870
|
-
-
|
|
1871
|
-
- api: add static `version` property to the RxPlayer API
|
|
1303
|
+
- tools: add ``mediaCapabilitiesProber`` tool as an experimental tool
|
|
1304
|
+
- builds: add minimal import with feature selection (allowing cleaner feature switching or lazy-loading)
|
|
1305
|
+
- dash: allow multiple "main" adaptation
|
|
1306
|
+
- api: add static ``version`` property to the RxPlayer API
|
|
1872
1307
|
|
|
1873
1308
|
### Bug fixes
|
|
1874
1309
|
|
|
1875
|
-
- vtt: fix
|
|
1876
|
-
- dash: always play "main" adaptation first
|
|
1877
|
-
- misc: don't interfere with a client's RxJS implementation by switching to RxJS 6
|
|
1878
|
-
- dash: presentationTimeOffset doesn't have an influence on requested segment anymore
|
|
1879
|
-
- smooth/dash: throw a
|
|
1880
|
-
adaptations/StreamIndex are available in the current content
|
|
1310
|
+
- vtt: fix ``line`` setting for vtt tracks in ``"native"`` textTrackMode
|
|
1311
|
+
- dash: always play "main" adaptation first
|
|
1312
|
+
- misc: don't interfere with a client's RxJS implementation by switching to RxJS 6
|
|
1313
|
+
- dash: presentationTimeOffset doesn't have an influence on requested segment anymore
|
|
1314
|
+
- smooth/dash: throw a ``"MANIFEST_PARSE_ERROR"`` if no audio and video adaptations/StreamIndex are available in the current content
|
|
1881
1315
|
|
|
1882
1316
|
### Other improvements
|
|
1883
1317
|
|
|
1884
|
-
- builds: Reduce size of the builds
|
|
1885
|
-
- builds: use uglifyJS instead of Closure-compiler
|
|
1886
|
-
- builds: update to typescript 2.9
|
|
1887
|
-
- rxjs: update to RxJS version 6 (v6.2.1)
|
|
1888
|
-
- code: set complete URL in segment's media property
|
|
1889
|
-
- demo: add time indicator on the progress bar
|
|
1890
|
-
- demo: update fullscreen mode to also display the text track element
|
|
1891
|
-
- misc: moved demo server scripts to the respective demo directories
|
|
1892
|
-
- misc: moved manifest parsers to the
|
|
1893
|
-
- misc: moved scripts from
|
|
1894
|
-
- misc: moved webpack configs to the root of the project
|
|
1318
|
+
- builds: Reduce size of the builds
|
|
1319
|
+
- builds: use uglifyJS instead of Closure-compiler
|
|
1320
|
+
- builds: update to typescript 2.9
|
|
1321
|
+
- rxjs: update to RxJS version 6 (v6.2.1)
|
|
1322
|
+
- code: set complete URL in segment's media property
|
|
1323
|
+
- demo: add time indicator on the progress bar
|
|
1324
|
+
- demo: update fullscreen mode to also display the text track element
|
|
1325
|
+
- misc: moved demo server scripts to the respective demo directories
|
|
1326
|
+
- misc: moved manifest parsers to the ``src/parsers`` directory
|
|
1327
|
+
- misc: moved scripts from ``./tools`` to ``./scripts``
|
|
1328
|
+
- misc: moved webpack configs to the root of the project
|
|
1329
|
+
|
|
1895
1330
|
|
|
1896
1331
|
## v3.4.1 (2018-05-31)
|
|
1897
1332
|
|
|
1898
1333
|
### Bug fixes
|
|
1899
1334
|
|
|
1900
|
-
- buffer: fix several bugs happening when calling
|
|
1901
|
-
|
|
1902
|
-
-
|
|
1903
|
-
|
|
1904
|
-
-
|
|
1905
|
-
|
|
1906
|
-
-
|
|
1907
|
-
- api: `getAvailableTextTracks` and `getAvailableAudioTracks` now always return an array
|
|
1908
|
-
(and never null) as announced in the API documentation
|
|
1909
|
-
- api: set default log level to `"NONE"` instead of `"INFO"`
|
|
1910
|
-
- misc: remove development-only code from the non-minified code
|
|
1335
|
+
- buffer: fix several bugs happening when calling ``endOfStream`` to announce the end of the current content. Especially prevalent on Chrome.
|
|
1336
|
+
- net: use redirected URL as a base for further requests when the manifest request led to a HTTP redirect.
|
|
1337
|
+
- vtt/srt: ignore silently (do not throw) when an unknown block has been detected in a vtt or srt file
|
|
1338
|
+
- vtt/srt: support styling spans (like b, i and u XML tags) spanning multiple lines
|
|
1339
|
+
- api: ``getAvailableTextTracks`` and ``getAvailableAudioTracks`` now always return an array (and never null) as announced in the API documentation
|
|
1340
|
+
- api: set default log level to ``"NONE"`` instead of ``"INFO"``
|
|
1341
|
+
- misc: remove development-only code from the non-minified code
|
|
1911
1342
|
|
|
1912
1343
|
### Other improvements
|
|
1913
1344
|
|
|
1914
|
-
- misc: move some dev dependencies from
|
|
1915
|
-
|
|
1345
|
+
- misc: move some dev dependencies from ``dependencies`` to ``devDependencies`` in ``package.json``
|
|
1346
|
+
|
|
1916
1347
|
|
|
1917
1348
|
## v3.4.0 (2018-05-17)
|
|
1918
1349
|
|
|
1919
1350
|
### Added
|
|
1920
1351
|
|
|
1921
|
-
- eme: allow multiple licenses per content
|
|
1922
|
-
- eme: allow different MediaKeys to be attached on multiple media elements
|
|
1352
|
+
- eme: allow multiple licenses per content
|
|
1353
|
+
- eme: allow different MediaKeys to be attached on multiple media elements
|
|
1923
1354
|
|
|
1924
1355
|
### Bug fixes
|
|
1925
1356
|
|
|
1926
|
-
- eme: limit simultaneous loaded MediaKeySession to 50 by default (configurable)
|
|
1927
|
-
- source-buffer: clean properly the text SourceBuffer on deactivation
|
|
1928
|
-
- buffer: perform discontinuity seeks only for native source buffers
|
|
1357
|
+
- eme: limit simultaneous loaded MediaKeySession to 50 by default (configurable)
|
|
1358
|
+
- source-buffer: clean properly the text SourceBuffer on deactivation
|
|
1359
|
+
- buffer: perform discontinuity seeks only for native source buffers
|
|
1929
1360
|
|
|
1930
1361
|
### Other improvements
|
|
1931
1362
|
|
|
1932
|
-
- doc: generate documentation pages
|
|
1933
|
-
- misc: add sonarqube quality pass
|
|
1934
|
-
- code: set a clearer private state for the API
|
|
1935
|
-
- tools: update to webpack v4.8.3
|
|
1936
|
-
- tools: update to typescript v2.8.3
|
|
1363
|
+
- doc: generate documentation pages
|
|
1364
|
+
- misc: add sonarqube quality pass
|
|
1365
|
+
- code: set a clearer private state for the API
|
|
1366
|
+
- tools: update to webpack v4.8.3
|
|
1367
|
+
- tools: update to typescript v2.8.3
|
|
1368
|
+
|
|
1937
1369
|
|
|
1938
1370
|
## v3.3.2 (2018-04-17)
|
|
1939
1371
|
|
|
1940
1372
|
### Bug Fixes
|
|
1941
1373
|
|
|
1942
|
-
- api: emit SEEKING state instead of BUFFERING when the user seeks to an unbuffered part
|
|
1943
|
-
|
|
1944
|
-
- api:
|
|
1945
|
-
|
|
1946
|
-
-
|
|
1947
|
-
certain conditions in live contents
|
|
1948
|
-
- smooth: fix frequent manifest refreshing happening immediately when changing audio/text
|
|
1949
|
-
language
|
|
1950
|
-
- eme/error: fix reason string and error message for KEY_STATUS_CHANGE_ERROR
|
|
1374
|
+
- api: emit SEEKING state instead of BUFFERING when the user seeks to an unbuffered part just after resuming playback
|
|
1375
|
+
- api: work around bug found in old versions of Chrome where the ENDED state would never be triggered at the end of the stream
|
|
1376
|
+
- api/language: fix bug where an audio or text language would not be switched to on certain conditions in live contents
|
|
1377
|
+
- smooth: fix frequent manifest refreshing happening immediately when changing audio/text language
|
|
1378
|
+
- eme/error: fix reason string and error message for KEY_STATUS_CHANGE_ERROR
|
|
1951
1379
|
|
|
1952
1380
|
### Other improvements
|
|
1953
1381
|
|
|
1954
|
-
- buffer: update download queue immediately when seeking to an already-buffered part, to
|
|
1955
|
-
|
|
1956
|
-
-
|
|
1957
|
-
|
|
1958
|
-
- demo: fix "Big Buck Bunny WEBM"'s URL
|
|
1382
|
+
- buffer: update download queue immediately when seeking to an already-buffered part, to always prioritize needed segments
|
|
1383
|
+
- buffer: schedule segments per level of priority to lower some buffering/seeking/loading time
|
|
1384
|
+
- demo: fix "Big Buck Bunny WEBM"'s URL
|
|
1385
|
+
|
|
1959
1386
|
|
|
1960
1387
|
## v3.3.1 (2018-03-13)
|
|
1961
1388
|
|
|
1962
1389
|
### Bug Fixes
|
|
1963
1390
|
|
|
1964
|
-
- misc: fix missing browser API on IE11
|
|
1965
|
-
- buffer: end correctly streams which experienced a custom sourcebuffer (text/image) crash
|
|
1391
|
+
- misc: fix missing browser API on IE11
|
|
1392
|
+
- buffer: end correctly streams which experienced a custom sourcebuffer (text/image) crash
|
|
1966
1393
|
|
|
1967
1394
|
### Other improvements
|
|
1968
1395
|
|
|
1969
|
-
- tools: support development on windows
|
|
1396
|
+
- tools: support development on windows
|
|
1397
|
+
|
|
1970
1398
|
|
|
1971
1399
|
## v3.3.0 (2018-03-05)
|
|
1972
1400
|
|
|
1973
1401
|
### Added
|
|
1974
1402
|
|
|
1975
|
-
- api: add directfile API to allow the playback of files natively managed by the browser
|
|
1403
|
+
- api: add directfile API to allow the playback of files natively managed by the browser
|
|
1976
1404
|
|
|
1977
1405
|
### Bug Fixes
|
|
1978
1406
|
|
|
1979
|
-
- api: fix player state when seeking after the video ended
|
|
1980
|
-
- text/api: fix getTextTrack API which could return the current audio track instead
|
|
1981
|
-
- text: clean-up custom HTML text track SourceBuffer's buffered when the text track is
|
|
1982
|
-
|
|
1407
|
+
- api: fix player state when seeking after the video ended
|
|
1408
|
+
- text/api: fix getTextTrack API which could return the current audio track instead
|
|
1409
|
+
- text: clean-up custom HTML text track SourceBuffer's buffered when the text track is disabled
|
|
1410
|
+
|
|
1983
1411
|
|
|
1984
1412
|
## v3.2.0 (2018-02-23)
|
|
1985
1413
|
|
|
1986
1414
|
### Added
|
|
1987
1415
|
|
|
1988
|
-
- dash: Handle multi-periods DASH manifests
|
|
1989
|
-
- api: add
|
|
1990
|
-
- api: add
|
|
1991
|
-
|
|
1992
|
-
- api: add `manifestLoader` to the `transportOptions` of a `loadVideo` call
|
|
1416
|
+
- dash: Handle multi-periods DASH manifests
|
|
1417
|
+
- api: add ``periodChange`` event
|
|
1418
|
+
- api: add ``stopAtEnd`` option to the constructor, to deactivate automatic content un-loading when it ends
|
|
1419
|
+
- api: add ``manifestLoader`` to the ``transportOptions`` of a ``loadVideo`` call
|
|
1993
1420
|
|
|
1994
1421
|
### Bug Fixes
|
|
1995
1422
|
|
|
1996
|
-
- stream: call
|
|
1997
|
-
|
|
1998
|
-
-
|
|
1999
|
-
|
|
2000
|
-
-
|
|
2001
|
-
|
|
2002
|
-
- vtt: fix WebVTT parsing when the last line of a WebVTT file is not a new line
|
|
2003
|
-
- dash: ignore availabilityStartTime settings for a static MPD
|
|
2004
|
-
- buffer: ignore segments for a duration inferior to the MINIMUM_SEGMENT_SIZE (200ms by
|
|
2005
|
-
default) to avoid infinite re-downloading
|
|
1423
|
+
- stream: call ``endOfStream`` for better end detection and to allow the Chrome browser to display the last frames of a video
|
|
1424
|
+
- buffer: always play the last possible milliseconds of a content (removed END_OF_PLAY config attribute)
|
|
1425
|
+
- eme: workaround a bug found on Chrome where setting a ``keySystems`` option in ``loadVideo`` would always throw on HTTP (not HTTPS) pages.
|
|
1426
|
+
- vtt: fix WebVTT parsing when the last line of a WebVTT file is not a new line
|
|
1427
|
+
- dash: ignore availabilityStartTime settings for a static MPD
|
|
1428
|
+
- buffer: ignore segments for a duration inferior to the MINIMUM_SEGMENT_SIZE (200ms by default) to avoid infinite re-downloading
|
|
2006
1429
|
|
|
2007
1430
|
### Other improvements
|
|
2008
1431
|
|
|
2009
|
-
- update RxJS to v5.5.6
|
|
2010
|
-
- update TypeScript to v2.7.2
|
|
1432
|
+
- update RxJS to v5.5.6
|
|
1433
|
+
- update TypeScript to v2.7.2
|
|
1434
|
+
|
|
2011
1435
|
|
|
2012
1436
|
## v3.1.0 (2018-01-30)
|
|
2013
1437
|
|
|
2014
1438
|
### Added
|
|
2015
1439
|
|
|
2016
|
-
- api: add
|
|
2017
|
-
- eme: add
|
|
1440
|
+
- api: add ``networkConfig`` to ``loadVideo`` options
|
|
1441
|
+
- eme: add ``closeSessionsOnStop`` to the ``keySystems`` ``loadVideo`` option
|
|
2018
1442
|
|
|
2019
1443
|
### Bug Fixes
|
|
2020
1444
|
|
|
2021
|
-
- dash: fix Range request ranges for representations based on a SegmentList index
|
|
2022
|
-
- smooth: allows smooth Manifests for non-live contents to begin at a timestamp != 0
|
|
1445
|
+
- dash: fix Range request ranges for representations based on a SegmentList index
|
|
1446
|
+
- smooth: allows smooth Manifests for non-live contents to begin at a timestamp != 0
|
|
1447
|
+
|
|
2023
1448
|
|
|
2024
1449
|
## v3.0.7 (2018-01-19)
|
|
2025
1450
|
|
|
2026
1451
|
### Bug fixes
|
|
2027
1452
|
|
|
2028
|
-
- eme: fix bug which prevented to play encrypted contents on IE11
|
|
1453
|
+
- eme: fix bug which prevented to play encrypted contents on IE11
|
|
1454
|
+
|
|
2029
1455
|
|
|
2030
1456
|
## v3.0.6 (2018-01-11)
|
|
2031
1457
|
|
|
2032
1458
|
### Bug Fixes
|
|
2033
1459
|
|
|
2034
|
-
- buffer: fix issue which could led to multiple video or audio segments being downloaded
|
|
2035
|
-
|
|
2036
|
-
- dash/text:
|
|
2037
|
-
- dash
|
|
2038
|
-
subtitles
|
|
2039
|
-
- dash: fix issue which could led to segments being re-downloaded too much in a
|
|
2040
|
-
SegmentTemplate scheme
|
|
1460
|
+
- buffer: fix issue which could led to multiple video or audio segments being downloaded at the same time
|
|
1461
|
+
- dash/text: support MPD AdaptationSet with a "caption" Role as text Adaptations
|
|
1462
|
+
- dash/text: remove offset set for subtitles on live contents, which led to unsynchronized subtitles
|
|
1463
|
+
- dash: fix issue which could led to segments being re-downloaded too much in a SegmentTemplate scheme
|
|
2041
1464
|
|
|
2042
1465
|
### Other improvements
|
|
2043
1466
|
|
|
2044
|
-
- demo: set "html" textTrackMode by default to have a better stylization of closed
|
|
2045
|
-
|
|
1467
|
+
- demo: set "html" textTrackMode by default to have a better stylization of closed captions.
|
|
1468
|
+
|
|
2046
1469
|
|
|
2047
1470
|
## v3.0.5 (2017-12-11)
|
|
2048
1471
|
|
|
2049
1472
|
### Bug Fixes
|
|
2050
1473
|
|
|
2051
|
-
- eme: consider unknown errors (e.g. errors coming from the user of the library) as fatal
|
|
2052
|
-
|
|
1474
|
+
- eme: consider unknown errors (e.g. errors coming from the user of the library) as fatal eme errors
|
|
1475
|
+
|
|
2053
1476
|
|
|
2054
1477
|
## v3.0.4 (2017-12-05)
|
|
2055
1478
|
|
|
2056
1479
|
### Bug Fixes
|
|
2057
1480
|
|
|
2058
|
-
- text/webvtt: authorize header options without parsing them
|
|
2059
|
-
- text/webvtt: authorize timestamps without hours
|
|
1481
|
+
- text/webvtt: authorize header options without parsing them
|
|
1482
|
+
- text/webvtt: authorize timestamps without hours
|
|
2060
1483
|
|
|
2061
1484
|
### Other improvements
|
|
2062
1485
|
|
|
2063
|
-
- misc: remove multiple unneeded assertions in DEV mode
|
|
2064
|
-
- misc: update DEV mode default debug level from DEBUG to INFO
|
|
1486
|
+
- misc: remove multiple unneeded assertions in DEV mode
|
|
1487
|
+
- misc: update DEV mode default debug level from DEBUG to INFO
|
|
1488
|
+
|
|
2065
1489
|
|
|
2066
1490
|
## v3.0.3 (2017-11-24)
|
|
2067
1491
|
|
|
2068
1492
|
### Bug Fixes
|
|
2069
1493
|
|
|
2070
|
-
- text/ttml: apply correctly a style if directly set on an attribute
|
|
2071
|
-
- eme: load new video even if the last EME clean-up failed
|
|
1494
|
+
- text/ttml: apply correctly a style if directly set on an attribute
|
|
1495
|
+
- eme: load new video even if the last EME clean-up failed
|
|
2072
1496
|
|
|
2073
1497
|
### Other improvements
|
|
2074
1498
|
|
|
2075
|
-
- misc: set better work arround for typescript issue
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
- tools:
|
|
2079
|
-
|
|
2080
|
-
"development" environment
|
|
2081
|
-
- tools: add more logs in DEBUG mode
|
|
1499
|
+
- misc: set better work arround for typescript issue [20104](https://github.com/Microsoft/TypeScript/issues/20104) to make building npm scripts usable again
|
|
1500
|
+
- tools: update the update-version npm script
|
|
1501
|
+
- demo: ``npm run start`` and ``npm run standalone`` now build the rx-player in the "development" environment
|
|
1502
|
+
- tools: add more logs in DEBUG mode
|
|
1503
|
+
|
|
2082
1504
|
|
|
2083
1505
|
## v3.0.2 (2017-11-17)
|
|
2084
1506
|
|
|
2085
1507
|
### Bug Fixes
|
|
2086
1508
|
|
|
2087
|
-
- misc: work around typescript issue
|
|
2088
|
-
|
|
2089
|
-
Chrome in HTTP
|
|
1509
|
+
- misc: work around typescript issue [20104](https://github.com/Microsoft/TypeScript/issues/20104) temporarly to launch in Chrome in HTTP
|
|
1510
|
+
|
|
2090
1511
|
|
|
2091
1512
|
## v3.0.1 (2017-11-17)
|
|
2092
1513
|
|
|
2093
1514
|
### Bug Fixes
|
|
2094
1515
|
|
|
2095
|
-
- abr: adopt a less agressive strategy to avoid re-bufferings
|
|
2096
|
-
- smooth: avoid most of the manifest refresh requests
|
|
1516
|
+
- abr: adopt a less agressive strategy to avoid re-bufferings
|
|
1517
|
+
- smooth: avoid most of the manifest refresh requests
|
|
2097
1518
|
|
|
2098
1519
|
### Other improvements
|
|
2099
1520
|
|
|
2100
|
-
- Switch codebase to TypeScript
|
|
2101
|
-
- Add Travis CI
|
|
1521
|
+
- Switch codebase to TypeScript
|
|
1522
|
+
- Add Travis CI
|
|
1523
|
+
|
|
2102
1524
|
|
|
2103
1525
|
## v3.0.0 (2017-11-10)
|
|
2104
1526
|
|
|
2105
1527
|
### Added
|
|
2106
1528
|
|
|
2107
|
-
- misc: add possibility to do custom builds through environment variables, to remove
|
|
2108
|
-
|
|
2109
|
-
- languages: add support for
|
|
2110
|
-
- languages/
|
|
2111
|
-
|
|
2112
|
-
- languages
|
|
2113
|
-
-
|
|
2114
|
-
|
|
2115
|
-
-
|
|
2116
|
-
|
|
2117
|
-
- api: add
|
|
2118
|
-
-
|
|
2119
|
-
- api: add
|
|
2120
|
-
-
|
|
2121
|
-
in the
|
|
2122
|
-
-
|
|
2123
|
-
-
|
|
2124
|
-
- api: add
|
|
2125
|
-
- api:
|
|
2126
|
-
|
|
2127
|
-
-
|
|
2128
|
-
|
|
2129
|
-
-
|
|
2130
|
-
|
|
2131
|
-
-
|
|
2132
|
-
- api: add `wantedBufferAhead` constructor option
|
|
2133
|
-
- api: add `maxBufferAhead` constructor option
|
|
2134
|
-
- api: add `maxBufferBehind` constructor option
|
|
2135
|
-
- api: add `getVideoBufferGap` method
|
|
2136
|
-
- api: add `isMute` method
|
|
2137
|
-
- api: add `getManualAudioBitrate` method
|
|
2138
|
-
- api: add `getManualVideoBitrate` method
|
|
2139
|
-
- config: add a global config file (src/config.js) to easily tweak the player behavior
|
|
1529
|
+
- misc: add possibility to do custom builds through environment variables, to remove unwanted features from minified code.
|
|
1530
|
+
- languages: add support for segmented VTT subtitles
|
|
1531
|
+
- languages/dash: add support for plain text TTML, SAMI, SRT, VTT and MP4-embedded VTT subtitles in DASH manifests
|
|
1532
|
+
- languages/smooth: add support for MP4-embedded VTT subtitles in Smooth manifests
|
|
1533
|
+
- languages: add possibility to show fragmented or not TTML, SAMI, SRT and VTT text tracks in a <track> element, even for browser that do not support the VTTCue API
|
|
1534
|
+
- languages: add possibility to show TTML, SRT, VTT and SAMI text tracks in HTML tags for richer stylisation.
|
|
1535
|
+
- api: add ``textTrackElement`` option to ``loadVideo``
|
|
1536
|
+
- api: add ``textTrackMode`` option to ``loadVideo``
|
|
1537
|
+
- api: add ``nativeTextTracksChange`` event
|
|
1538
|
+
- eme: it is now possible to directly set the reverse domain name of the wanted key system in the ``type`` property of ``loadVideo``'s ``keySystems`` option.
|
|
1539
|
+
- api: add property ``percentage`` to the ``startAt`` argument of ``loadVideo``.
|
|
1540
|
+
- abr: add ``bitrateEstimationChange`` event
|
|
1541
|
+
- api: add ``LogLevel`` static property
|
|
1542
|
+
- api: a Date object can now be given to the ``loadVideo`` argument ``startAt.wallClockTime``. It will be automatically converted into seconds.
|
|
1543
|
+
- languages: add ``normalizedLanguage`` property in manifest-related-APIs to expose the ISO 639-3 language code of the audio and text tracks
|
|
1544
|
+
- languages: add ``normalized`` property in language-related-API to expose the ISO 639-3 language code of the audio and text tracks
|
|
1545
|
+
- loadVideo: add ``codecs`` property to supplementaryTextTracks
|
|
1546
|
+
- api: add ``wantedBufferAhead`` constructor option
|
|
1547
|
+
- api: add ``maxBufferAhead`` constructor option
|
|
1548
|
+
- api: add ``maxBufferBehind`` constructor option
|
|
1549
|
+
- api: add ``getVideoBufferGap`` method
|
|
1550
|
+
- api: add ``isMute`` method
|
|
1551
|
+
- api: add ``getManualAudioBitrate`` method
|
|
1552
|
+
- api: add ``getManualVideoBitrate`` method
|
|
1553
|
+
- config: add a global config file (src/config.js) to easily tweak the player behavior
|
|
2140
1554
|
|
|
2141
1555
|
### Changed
|
|
2142
1556
|
|
|
2143
|
-
- languages: switch from ISO 639-2 to ISO 639-3 language codes in various APIs
|
|
2144
|
-
- languages: the
|
|
2145
|
-
|
|
2146
|
-
- api:
|
|
2147
|
-
- api:
|
|
2148
|
-
- api:
|
|
2149
|
-
|
|
2150
|
-
- api:
|
|
2151
|
-
|
|
2152
|
-
- api:
|
|
2153
|
-
|
|
2154
|
-
- api:
|
|
2155
|
-
- api:
|
|
2156
|
-
- api: `loadVideo` does not return anything anymore
|
|
2157
|
-
- api: private (undocumented) variables have been isolated on a player instance to a
|
|
2158
|
-
`_priv` object.
|
|
2159
|
-
- api: the constructor option `throttleWhenHidden` is now set to false by default
|
|
2160
|
-
- api: the constructor option `limitVideoWidth` is now set to false by default
|
|
1557
|
+
- languages: switch from ISO 639-2 to ISO 639-3 language codes in various APIs
|
|
1558
|
+
- languages: the ``language`` property returned by language and manifest related APIs now reflect the exact language as set in the manifest
|
|
1559
|
+
- api: ``setVideoBitrate`` can now be called even when no content is playing
|
|
1560
|
+
- api: ``setAudioBitrate`` can now be called even when no content is playing
|
|
1561
|
+
- api: ``setVideoBitrate`` can now be called even when no video track has the exact same bitrate
|
|
1562
|
+
- api: ``setAudioBitrate`` can now be called even when no audio track has the exact same bitrate
|
|
1563
|
+
- api: giving a number to ``seekTo`` now has the same effect than setting a position option in argument (``seekTo({ position }) === seekTo(position)``)
|
|
1564
|
+
- api: ``getUrl`` now do not throw if no content is playing
|
|
1565
|
+
- api: ``isLive`` now do not throw if no content is playing
|
|
1566
|
+
- api: ``loadVideo`` does not return anything anymore
|
|
1567
|
+
- api: private (undocumented) variables have been isolated on a player instance to a ``_priv`` object.
|
|
1568
|
+
- api: the constructor option ``throttleWhenHidden`` is now set to false by default
|
|
1569
|
+
- api: the constructor option ``limitVideoWidth`` is now set to false by default
|
|
2161
1570
|
|
|
2162
1571
|
### Removed
|
|
2163
1572
|
|
|
2164
|
-
- api: remove
|
|
2165
|
-
- api: remove
|
|
2166
|
-
- api: remove
|
|
2167
|
-
- api: remove
|
|
2168
|
-
- api: remove
|
|
2169
|
-
|
|
2170
|
-
- api: remove
|
|
2171
|
-
- api: remove
|
|
2172
|
-
- api: remove
|
|
2173
|
-
- api: remove
|
|
2174
|
-
- api: remove
|
|
2175
|
-
- api: remove
|
|
2176
|
-
- api: remove
|
|
2177
|
-
- api: remove
|
|
2178
|
-
- api: remove
|
|
2179
|
-
- api: remove
|
|
2180
|
-
- api: remove
|
|
2181
|
-
- api: remove
|
|
2182
|
-
- api: remove
|
|
2183
|
-
- api: remove
|
|
2184
|
-
- api: remove
|
|
2185
|
-
- api: remove
|
|
2186
|
-
- api: remove
|
|
2187
|
-
- api: remove
|
|
2188
|
-
- api: remove constructor option
|
|
2189
|
-
option
|
|
2190
|
-
- api: remove constructor option
|
|
2191
|
-
|
|
2192
|
-
-
|
|
2193
|
-
-
|
|
2194
|
-
- position: remove
|
|
2195
|
-
-
|
|
2196
|
-
-
|
|
2197
|
-
-
|
|
2198
|
-
- adaptive: remove
|
|
2199
|
-
-
|
|
2200
|
-
-
|
|
2201
|
-
-
|
|
2202
|
-
-
|
|
2203
|
-
|
|
2204
|
-
-
|
|
2205
|
-
|
|
2206
|
-
- languages: remove
|
|
2207
|
-
- languages: remove
|
|
2208
|
-
- languages: remove
|
|
2209
|
-
- languages: remove
|
|
2210
|
-
- languages: remove `isSubtitleAvailable` method
|
|
2211
|
-
- languages: remove `getLanguage` method
|
|
2212
|
-
- languages: remove `getSubtitle` method
|
|
2213
|
-
- languages: remove `setLanguage` method
|
|
2214
|
-
- languages: remove `setSubtitle` method
|
|
1573
|
+
- api: remove ``defaultAudioTrack`` constructor option
|
|
1574
|
+
- api: remove ``defaultTextTrack`` constructor option
|
|
1575
|
+
- api: remove ``transportOptions`` constructor option
|
|
1576
|
+
- api: remove ``transport`` constructor option
|
|
1577
|
+
- api: remove ``nativeTextTrackChange`` event in favor of ``nativeTextTracksChange`` event (notice the "s")
|
|
1578
|
+
- api: remove ``goToStart`` method
|
|
1579
|
+
- api: remove ``getStartTime`` method
|
|
1580
|
+
- api: remove ``getEndTime`` method
|
|
1581
|
+
- api: remove ``toggleDebug`` method
|
|
1582
|
+
- api: remove ``hideDebug`` method
|
|
1583
|
+
- api: remove ``showDebug`` method
|
|
1584
|
+
- api: remove ``getDebug`` method
|
|
1585
|
+
- api: remove ``getImageTrack`` method
|
|
1586
|
+
- api: remove ``setVideoBufferSize`` method in favor of ``setWantedBufferAhead`` method
|
|
1587
|
+
- api: remove ``getVideoBufferSize`` method in favor of ``getWantedBufferAhead`` method
|
|
1588
|
+
- api: remove ``setAudioBufferSize`` method in favor of ``setWantedBufferAhead`` method
|
|
1589
|
+
- api: remove ``getAudioBufferSize`` method in favor of ``getWantedBufferAhead`` method
|
|
1590
|
+
- api: remove ``maximumBufferTime`` property from ``positionUpdate`` events
|
|
1591
|
+
- api: remove ``getCurrentTime`` method
|
|
1592
|
+
- api: remove ``asObservable`` method
|
|
1593
|
+
- api: remove ``loadVideo`` option ``manifests`` in favor of ``url`` and ``keySystems`` options
|
|
1594
|
+
- api: remove ``loadVideo`` option ``subtitles`` in favor of ``supplementaryTextTracks`` option
|
|
1595
|
+
- api: remove ``loadVideo`` option ``images`` in favor of ``supplementaryImageTracks`` option
|
|
1596
|
+
- api: remove constructor option ``initVideoBitrate`` in favor of ``initialVideoBitrate`` option
|
|
1597
|
+
- api: remove constructor option ``initAudioBitrate`` in favor of ``initialVideoBitrate`` option
|
|
1598
|
+
- api: remove constructor option ``defaultLanguage`` in favor of ``defaultAudioTrack`` option
|
|
1599
|
+
- api: remove constructor option ``defaultSubtitle`` in favor of ``defaultTextTrack`` option
|
|
1600
|
+
- position: remove ``subtitleChange`` event
|
|
1601
|
+
- position: remove ``languageChange`` event
|
|
1602
|
+
- position: remove ``progress`` event
|
|
1603
|
+
- position: remove ``currentTimeChange`` event in favor of ``positionUpdate`` event
|
|
1604
|
+
- adaptive: remove ``getMetrics`` method
|
|
1605
|
+
- adaptive: remove ``getAverageBitrates`` method
|
|
1606
|
+
- adaptive: remove ``getVideoMaxBitrate`` method in favor of ``getMaxVideoBitrate`` method
|
|
1607
|
+
- adaptive: remove ``getAudioMaxBitrate`` method in favor of ``getMaxAudioBitrate`` method
|
|
1608
|
+
- errors: remove static method ``getErrorTypes`` in favor of the static property ``errorTypes``
|
|
1609
|
+
- errors: remove static method ``getErrorCodes`` in favor of the static property ``errorCodes``
|
|
1610
|
+
- languages: remove ``normalizeLanguageCode`` method
|
|
1611
|
+
- languages: remove ``getAvailableLanguages`` method
|
|
1612
|
+
- languages: remove ``getAvailableSubtitles`` method
|
|
1613
|
+
- languages: remove ``isLanguageAvailable`` method
|
|
1614
|
+
- languages: remove ``isSubtitleAvailable`` method
|
|
1615
|
+
- languages: remove ``getLanguage`` method
|
|
1616
|
+
- languages: remove ``getSubtitle`` method
|
|
1617
|
+
- languages: remove ``setLanguage`` method
|
|
1618
|
+
- languages: remove ``setSubtitle`` method
|
|
2215
1619
|
|
|
2216
1620
|
### Bug Fixes:
|
|
2217
1621
|
|
|
2218
|
-
- dash: fix bug that prevented to play most dash contents with SegmentTemplate-based
|
|
2219
|
-
|
|
2220
|
-
- dash:
|
|
2221
|
-
-
|
|
2222
|
-
|
|
2223
|
-
-
|
|
2224
|
-
-
|
|
2225
|
-
|
|
2226
|
-
-
|
|
2227
|
-
|
|
2228
|
-
-
|
|
2229
|
-
- languages:
|
|
2230
|
-
|
|
2231
|
-
-
|
|
2232
|
-
-
|
|
2233
|
-
-
|
|
2234
|
-
|
|
2235
|
-
- languages:
|
|
2236
|
-
-
|
|
2237
|
-
- smooth: fix "fallback" callback in the segmentLoader API for smooth contents.
|
|
2238
|
-
- smooth: fix some minor risks of infinite rebuffering for live contents, when the
|
|
2239
|
-
isobmff's tfrf box is not well parsed.
|
|
2240
|
-
- buffer: avoid infinite player rebuffering when the manifest is not exactly aligned with
|
|
2241
|
-
the real duration of the content
|
|
2242
|
-
- buffer: avoid multiple causes of infinite player rebuffering by managing segment garbage
|
|
2243
|
-
collection
|
|
2244
|
-
- languages: getAudioTrack now always returns the currently set audio track
|
|
2245
|
-
- languages: getTextTrack now always returns the currently set text track
|
|
1622
|
+
- dash: fix bug that prevented to play most dash contents with SegmentTemplate-based manifests
|
|
1623
|
+
- dash: it's now possible to play SegmentTimeline-based contents with a numbering scheme
|
|
1624
|
+
- dash/text: calculate the text track time offset for dynamic DASH contents (prevented most text tracks from live DASH contents to be displayed)
|
|
1625
|
+
- eme: fix EME issues when loading multiple videos in IE/Edge
|
|
1626
|
+
- api: The state of the player when ready to play with autoPlay === false is now ``"LOADED"`` and not ``"PAUSED"``
|
|
1627
|
+
- api: fix infinite loading bug when a new content is synchronously launched as soon as the previous one is ended or fell on error
|
|
1628
|
+
- dash: allow absolute BaseURL in Periods
|
|
1629
|
+
- languages: avoid excessive re-downloads if a ``supplementaryTextTracks`` is provided and either a ``maxBufferBehind`` or a ``maxBufferAhead`` is set.
|
|
1630
|
+
- eme: the ``reason`` for the eme error ``KEY_STATUS_CHANGE_ERROR`` is now correctly filled in
|
|
1631
|
+
- eme: do not set widevine robustnesses for non-widevine key systems
|
|
1632
|
+
- languages: fix bug which led the text buffer to _crash_ when the ``wantedBufferBehind`` option is set
|
|
1633
|
+
- languages: fix bug which led to TextTracks chunks being re-downloaded multiple times
|
|
1634
|
+
- speed: fix playback rate bug when setting it while the player is stalled
|
|
1635
|
+
- smooth: fix "fallback" callback in the segmentLoader API for smooth contents.
|
|
1636
|
+
- smooth: fix some minor risks of infinite rebuffering for live contents, when the isobmff's tfrf box is not well parsed.
|
|
1637
|
+
- buffer: avoid infinite player rebuffering when the manifest is not exactly aligned with the real duration of the content
|
|
1638
|
+
- buffer: avoid multiple causes of infinite player rebuffering by managing segment garbage collection
|
|
1639
|
+
- languages: getAudioTrack now always returns the currently set audio track
|
|
1640
|
+
- languages: getTextTrack now always returns the currently set text track
|
|
2246
1641
|
|
|
2247
1642
|
### Other improvements
|
|
2248
1643
|
|
|
2249
|
-
- manifest: improve manifest refreshing logic, by not downloading it when unnecessary
|
|
2250
|
-
- smooth: begin to play arround 10s before the live edge instead of 20 seconds for smooth
|
|
2251
|
-
|
|
2252
|
-
-
|
|
2253
|
-
- adaptive:
|
|
2254
|
-
|
|
2255
|
-
-
|
|
2256
|
-
|
|
2257
|
-
-
|
|
2258
|
-
|
|
2259
|
-
- tests: fixed and added integration tests
|
|
2260
|
-
- demo: the demo now manages most languages defined by in the ISO 639-3 standard
|
|
1644
|
+
- manifest: improve manifest refreshing logic, by not downloading it when unnecessary
|
|
1645
|
+
- smooth: begin to play arround 10s before the live edge instead of 20 seconds for smooth contents
|
|
1646
|
+
- network: the backoff algorithm has been refactored for better network error resilience
|
|
1647
|
+
- adaptive: improved ABR management to provide a better, faster and more stable bandwidth estimation
|
|
1648
|
+
- adaptive: add strategies for abrupt changes of bandwidth to avoid excessive re-buffering on network fluctuations
|
|
1649
|
+
- adaptive: the adaptive algorithm now take into account the current playback rate
|
|
1650
|
+
- doc: added file architecture documentation
|
|
1651
|
+
- tests: fixed and added integration tests
|
|
1652
|
+
- demo: the demo now manages most languages defined by in the ISO 639-3 standard
|
|
1653
|
+
|
|
2261
1654
|
|
|
2262
1655
|
## v2.3.2 (2017-07-25)
|
|
2263
1656
|
|
|
2264
1657
|
### Bug Fixes
|
|
2265
1658
|
|
|
2266
|
-
- eme: update EME workflow to improve support (especially chromebooks)
|
|
1659
|
+
- eme: update EME workflow to improve support (especially chromebooks)
|
|
1660
|
+
|
|
2267
1661
|
|
|
2268
1662
|
## v2.3.1 (2017-07-10)
|
|
2269
1663
|
|
|
2270
1664
|
### Bug Fixes
|
|
2271
1665
|
|
|
2272
|
-
- buffer: improve buffer ranges "bookeeping" logic to avoid re-downloading the same
|
|
2273
|
-
|
|
1666
|
+
- buffer: improve buffer ranges "bookeeping" logic to avoid re-downloading the same segments
|
|
1667
|
+
|
|
2274
1668
|
|
|
2275
1669
|
## v2.3.0 (2017-07-07)
|
|
2276
1670
|
|
|
2277
1671
|
### Added
|
|
2278
1672
|
|
|
2279
|
-
- eme: add audioRobustnesses to loadVideo's keySystems argument (/!\ undocumented API -
|
|
2280
|
-
can break without official notice)
|
|
2281
|
-
- eme: add
|
|
2282
|
-
|
|
2283
|
-
-
|
|
2284
|
-
- buffer: add {set,get}
|
|
2285
|
-
- buffer: add {set,get}MaxBufferBehind methods
|
|
2286
|
-
- buffer: add {set,get}WantedBufferAhead methods replacing the deprecated buffer size
|
|
2287
|
-
methods
|
|
1673
|
+
- eme: add audioRobustnesses to loadVideo's keySystems argument (/!\ undocumented API - can break without official notice)
|
|
1674
|
+
- eme: add videoRobustnesses to loadVideo's keySystems argument (/!\ undocumented API - can break without official notice)
|
|
1675
|
+
- eme: add serverCertificate to loadVideo's keySystems argument
|
|
1676
|
+
- buffer: add {set,get}MaxBufferAhead methods
|
|
1677
|
+
- buffer: add {set,get}MaxBufferBehind methods
|
|
1678
|
+
- buffer: add {set,get}WantedBufferAhead methods replacing the deprecated buffer size methods
|
|
2288
1679
|
|
|
2289
1680
|
### Deprecated
|
|
2290
1681
|
|
|
2291
|
-
- setVideoBufferSize has been deprecated in favor of setWantedBufferAhead
|
|
2292
|
-
- getVideoBufferSize has been deprecated in favor of getWantedBufferAhead
|
|
2293
|
-
- setAudioBufferSize has been deprecated in favor of setWantedBufferAhead
|
|
2294
|
-
- getAudioBufferSize has been deprecated in favor of getWantedBufferAhead
|
|
1682
|
+
- setVideoBufferSize has been deprecated in favor of setWantedBufferAhead
|
|
1683
|
+
- getVideoBufferSize has been deprecated in favor of getWantedBufferAhead
|
|
1684
|
+
- setAudioBufferSize has been deprecated in favor of setWantedBufferAhead
|
|
1685
|
+
- getAudioBufferSize has been deprecated in favor of getWantedBufferAhead
|
|
2295
1686
|
|
|
2296
1687
|
### Bug Fixes
|
|
2297
1688
|
|
|
2298
|
-
- buffer: avoid some infinite re-buffering by re-calculating buffer ranges at every tick
|
|
2299
|
-
- eme: add eme support for some legacy browser without video or audio capabilities
|
|
2300
|
-
- general: add support for older browsers (which does not support
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
interferences with other codebases
|
|
1689
|
+
- buffer: avoid some infinite re-buffering by re-calculating buffer ranges at every tick
|
|
1690
|
+
- eme: add eme support for some legacy browser without video or audio capabilities
|
|
1691
|
+
- general: add support for older browsers (which does not support array.prototype.{find,findIndex,includes})
|
|
1692
|
+
- general: use Object.assign ponyfill instead of the previous polyfill to avoid malicious interferences with other codebases
|
|
1693
|
+
|
|
2304
1694
|
|
|
2305
1695
|
## v2.2.1 (2017-06-27)
|
|
2306
1696
|
|
|
2307
1697
|
### Bug fixes
|
|
2308
1698
|
|
|
2309
|
-
- adaptive: fix width limitation bug. Impacted limitVideoWidth + setMaxVideoBitrate APIs
|
|
1699
|
+
- adaptive: fix width limitation bug. Impacted limitVideoWidth + setMaxVideoBitrate APIs
|
|
1700
|
+
|
|
2310
1701
|
|
|
2311
1702
|
## v2.2.0 (2017-06-19)
|
|
2312
1703
|
|
|
2313
1704
|
### Added
|
|
2314
1705
|
|
|
2315
|
-
- position: add maximumBufferPosition to the positionUpdate event's payload to replace the
|
|
2316
|
-
previous "liveGap" from currentTimeChange event
|
|
1706
|
+
- position: add maximumBufferPosition to the positionUpdate event's payload to replace the previous "liveGap" from currentTimeChange event
|
|
2317
1707
|
|
|
2318
1708
|
### Bug fixes
|
|
2319
1709
|
|
|
2320
|
-
- upgrade to rxjs 5.4.1 to escape memory leak
|
|
2321
|
-
- position: "liveGap" from currentTimeChange event now means the difference to the maximum
|
|
2322
|
-
|
|
1710
|
+
- upgrade to rxjs 5.4.1 to escape memory leak
|
|
1711
|
+
- position: "liveGap" from currentTimeChange event now means the difference to the maximum "bufferisable" position to keep compatibility with the old API
|
|
1712
|
+
|
|
2323
1713
|
|
|
2324
1714
|
## v2.1.3 (2017-06-15)
|
|
2325
1715
|
|
|
2326
1716
|
### Bug fixes
|
|
2327
1717
|
|
|
2328
|
-
- api: fix timeFragment.start handling
|
|
1718
|
+
- api: fix timeFragment.start handling
|
|
1719
|
+
|
|
2329
1720
|
|
|
2330
1721
|
## v2.1.2 (2017-06-14)
|
|
2331
1722
|
|
|
2332
1723
|
### Bug fixes
|
|
2333
1724
|
|
|
2334
|
-
- stream: the BUFFER_APPEND_ERROR error, happening when a SourceBuffer.appendBuffer failed
|
|
2335
|
-
|
|
2336
|
-
-
|
|
2337
|
-
-
|
|
2338
|
-
|
|
2339
|
-
-
|
|
2340
|
-
|
|
2341
|
-
|
|
2342
|
-
- buffer: automatically seek if there is discontinuity in a live stream
|
|
2343
|
-
- adaptive: take the lowest bitrate (instead of the initial/default one) when the player
|
|
2344
|
-
is not displayed/too small
|
|
1725
|
+
- stream: the BUFFER_APPEND_ERROR error, happening when a SourceBuffer.appendBuffer failed for an unknown reason, is now a fatal error for audio/video segments
|
|
1726
|
+
- eme: fix rxjs timeout management which prevented from playing DRM-protected contents
|
|
1727
|
+
- api: add securities to avoid useless errors to be thrown when the player (already) encounter an error
|
|
1728
|
+
- position: fix bug which prevented to seek at the beginning of the content with the new api
|
|
1729
|
+
- position: fix typo which prevented to perform absolute seeks with the new api
|
|
1730
|
+
- buffer: automatically seek if there is discontinuity in a live stream
|
|
1731
|
+
- adaptive: take the lowest bitrate (instead of the initial/default one) when the player is not displayed/too small
|
|
1732
|
+
|
|
2345
1733
|
|
|
2346
1734
|
## v2.1.1 (2017-06-02)
|
|
2347
1735
|
|
|
2348
1736
|
### Bug fixes
|
|
2349
1737
|
|
|
2350
|
-
- hotfix: fixed rxjs imports
|
|
2351
|
-
- hotfix: the player can now be imported through a commonjs require
|
|
2352
|
-
- hotfix: the player could not play if the video element's width was too short
|
|
2353
|
-
- manifest: segment id were not always the same on a segmentLoader and on the API calls.
|
|
2354
|
-
- adaptive: setVideoBitrate now throw a more meaningful error if no content is playing
|
|
2355
|
-
- adaptive: setAudioBitrate now throw a more meaningful error if no content is playing
|
|
2356
|
-
- language: setSubtitle now throw a more meaningful error if no content is playing
|
|
2357
|
-
- language: setLanguage now throw a more meaningful error if no content is playing
|
|
2358
|
-
- language: isLanguageAvailable do not throw and return false if no content is playing
|
|
2359
|
-
- language: isSubtitleAvailable do not throw and return false if no content is playing
|
|
1738
|
+
- hotfix: fixed rxjs imports
|
|
1739
|
+
- hotfix: the player can now be imported through a commonjs require
|
|
1740
|
+
- hotfix: the player could not play if the video element's width was too short
|
|
1741
|
+
- manifest: segment id were not always the same on a segmentLoader and on the API calls.
|
|
1742
|
+
- adaptive: setVideoBitrate now throw a more meaningful error if no content is playing
|
|
1743
|
+
- adaptive: setAudioBitrate now throw a more meaningful error if no content is playing
|
|
1744
|
+
- language: setSubtitle now throw a more meaningful error if no content is playing
|
|
1745
|
+
- language: setLanguage now throw a more meaningful error if no content is playing
|
|
1746
|
+
- language: isLanguageAvailable do not throw and return false if no content is playing
|
|
1747
|
+
- language: isSubtitleAvailable do not throw and return false if no content is playing
|
|
2360
1748
|
|
|
2361
1749
|
### Other improvements
|
|
2362
1750
|
|
|
2363
|
-
- api: deprecated api now only warn once
|
|
2364
|
-
- tests: integration tests have been added
|
|
2365
|
-
- manifest: the manifest object and the management of its index has been refactored for
|
|
2366
|
-
|
|
1751
|
+
- api: deprecated api now only warn once
|
|
1752
|
+
- tests: integration tests have been added
|
|
1753
|
+
- manifest: the manifest object and the management of its index has been refactored for future improvements
|
|
1754
|
+
|
|
2367
1755
|
|
|
2368
1756
|
## v2.1.0 (2017-05-29)
|
|
2369
1757
|
|
|
@@ -2386,12 +1774,10 @@
|
|
|
2386
1774
|
- api: add getWallClockTime method
|
|
2387
1775
|
- manifest: add getCurrentRepresentations method
|
|
2388
1776
|
- manifest: add getCurrentAdaptations method
|
|
2389
|
-
- api: add throttleWhenHidden option to constructor (to disable throttling when the
|
|
2390
|
-
|
|
2391
|
-
- api: add limitVideoWidth option to constructor (to disable throttling to match the video
|
|
2392
|
-
element's width)
|
|
1777
|
+
- api: add throttleWhenHidden option to constructor (to disable throttling when the current page is hidden for an extended time)
|
|
1778
|
+
- api: add limitVideoWidth option to constructor (to disable throttling to match the video element's width)
|
|
2393
1779
|
- api: add initialAudioBitrate and initialVideoBitrate to constructor's options
|
|
2394
|
-
- api: add defaultTextTrack and defaultAudioTrack
|
|
1780
|
+
- api: add defaultTextTrack and defaultAudioTrack to loadVideo and constructor's options
|
|
2395
1781
|
- languages: add getAvailableAudioTracks method with audio description support
|
|
2396
1782
|
- languages: add getAvailableTextTracks method with closed caption support
|
|
2397
1783
|
- languages: add getAudioTrack method with audio description support
|
|
@@ -2404,8 +1790,7 @@
|
|
|
2404
1790
|
|
|
2405
1791
|
### Deprecated
|
|
2406
1792
|
|
|
2407
|
-
- position: the timeFragment API is deprecated (loadVideo's timeFragment argument,
|
|
2408
|
-
getStartTime, getEndTime and goToStart)
|
|
1793
|
+
- position: the timeFragment API is deprecated (loadVideo's timeFragment argument, getStartTime, getEndTime and goToStart)
|
|
2409
1794
|
- api: currentTimeChange event is replaced by the positionUpdate event
|
|
2410
1795
|
- api: progress event is deprecated and not replaced
|
|
2411
1796
|
- api: getImageTrack is replaced by the imageTrackUpdate event
|
|
@@ -2427,14 +1812,10 @@
|
|
|
2427
1812
|
- api: using setFullscreen(false) is replaced by exitFullscreen
|
|
2428
1813
|
- api: getErrorTypes method has been deprecated in favor of the ErrorTypes property
|
|
2429
1814
|
- api: getErrorCodes method has been deprecated in favor of the ErrorCodes property
|
|
2430
|
-
- languages: initAudioBitrate option in constructor is deprecated in favor of
|
|
2431
|
-
|
|
2432
|
-
- languages:
|
|
2433
|
-
|
|
2434
|
-
- languages: defaultSubtitle option in constructor and loadVideo is deprecated in favor of
|
|
2435
|
-
defaultTextTrack
|
|
2436
|
-
- languages: defaultLanguage option in constructor and loadVideo is deprecated in favor of
|
|
2437
|
-
defaultAudioTrack
|
|
1815
|
+
- languages: initAudioBitrate option in constructor is deprecated in favor of initialAudioBitrate
|
|
1816
|
+
- languages: initVideoBitrate option in constructor is deprecated in favor of initialVideoBitrate
|
|
1817
|
+
- languages: defaultSubtitle option in constructor and loadVideo is deprecated in favor of defaultTextTrack
|
|
1818
|
+
- languages: defaultLanguage option in constructor and loadVideo is deprecated in favor of defaultAudioTrack
|
|
2438
1819
|
- languages: getAvailableLanguages is deprecated in favor of getAvailableAudioTracks
|
|
2439
1820
|
- languages: getAvailableSubtitles is deprecated in favor of getAvailableTextTracks
|
|
2440
1821
|
- languages: getLanguage is deprecated in favor of getAudioTrack
|
|
@@ -2446,17 +1827,14 @@
|
|
|
2446
1827
|
|
|
2447
1828
|
### Bug fixes
|
|
2448
1829
|
|
|
2449
|
-
- adaptive: fix a bug where it was impossible to switch between multiple videos
|
|
2450
|
-
representations with the same width
|
|
1830
|
+
- adaptive: fix a bug where it was impossible to switch between multiple videos representations with the same width
|
|
2451
1831
|
- languages: fix bug where the user could switch to a closed caption track unknowngly
|
|
2452
1832
|
- languages: fix bug where the user could switch to an audio description track unknowngly
|
|
2453
1833
|
- manifest: improved and documented getManifest's return value
|
|
2454
|
-
- manifest: defined and documented a generic manifest object structure (slowly replacing
|
|
2455
|
-
the old object).
|
|
1834
|
+
- manifest: defined and documented a generic manifest object structure (slowly replacing the old object).
|
|
2456
1835
|
- images: image playlists are now not re-fetched if the request failed (no retry)
|
|
2457
1836
|
- dash: lowered security time raising the startup time for SegmentTemplate-based contents
|
|
2458
|
-
- api: getLanguage/getSubtitle returns now the language of the last chunk received, not
|
|
2459
|
-
the last set
|
|
1837
|
+
- api: getLanguage/getSubtitle returns now the language of the last chunk received, not the last set
|
|
2460
1838
|
- manifest: fixed manifest-refreshing logic (mainly for live contents)
|
|
2461
1839
|
- dash: fixed support for dash SegmentTimeline-based contents
|
|
2462
1840
|
- api: differentiate unset default languages from empty strings
|
|
@@ -2478,10 +1856,12 @@
|
|
|
2478
1856
|
- demo: The Demo has been completely rewritten
|
|
2479
1857
|
- demo: The bundle has been removed from the code committed.
|
|
2480
1858
|
|
|
1859
|
+
|
|
2481
1860
|
## v2.0.0-alpha1 (2016-02-09)
|
|
2482
1861
|
|
|
2483
1862
|
- RxJS: use RxJS5.beta1
|
|
2484
|
-
- Promise: remove es6-promise dependency and stop relying completely
|
|
1863
|
+
- Promise: remove es6-promise dependency and stop relying completely
|
|
1864
|
+
on promises
|
|
2485
1865
|
|
|
2486
1866
|
- eme: improve IE11 and Edge support on EME
|
|
2487
1867
|
- smooth: activate patch in place on non IE targets for less memory allocation
|
|
@@ -2495,6 +1875,7 @@
|
|
|
2495
1875
|
|
|
2496
1876
|
- lint: add new rules (no-var, prefer-const, enforce brackets)
|
|
2497
1877
|
|
|
1878
|
+
|
|
2498
1879
|
## v1.4.0 (2016-01-26)
|
|
2499
1880
|
|
|
2500
1881
|
### Added
|
|
@@ -2506,7 +1887,7 @@
|
|
|
2506
1887
|
|
|
2507
1888
|
### Bug fixes
|
|
2508
1889
|
|
|
2509
|
-
- player: fix getAvailable
|
|
1890
|
+
- player: fix getAvailable* for direct files
|
|
2510
1891
|
- player: fix subtle race on loadedmetadata after retry
|
|
2511
1892
|
- eme: remove compat code for old chrome versions with eme flags
|
|
2512
1893
|
- eme: always ask for temporary session type
|
|
@@ -2514,16 +1895,19 @@
|
|
|
2514
1895
|
- eme: improve persistent license support and compat
|
|
2515
1896
|
- smooth: fix index timeline if no duration
|
|
2516
1897
|
|
|
2517
|
-
|
|
1898
|
+
Demo
|
|
1899
|
+
----
|
|
2518
1900
|
|
|
2519
1901
|
- allow to pass query parameters
|
|
2520
1902
|
|
|
1903
|
+
|
|
2521
1904
|
## v1.3.1 (2015-10-14)
|
|
2522
1905
|
|
|
2523
1906
|
### Bug fixes
|
|
2524
1907
|
|
|
2525
1908
|
- smooth: fix parseBoolean causing isLive to be always true
|
|
2526
1909
|
|
|
1910
|
+
|
|
2527
1911
|
## v1.3.0 (2015-10-14)
|
|
2528
1912
|
|
|
2529
1913
|
### Added
|
|
@@ -2532,16 +1916,19 @@
|
|
|
2532
1916
|
- timings: add progress sampling
|
|
2533
1917
|
- compat: add firefox workaround for autoplay
|
|
2534
1918
|
|
|
1919
|
+
|
|
2535
1920
|
## v1.2.1 (2015-09-23)
|
|
2536
1921
|
|
|
2537
1922
|
### Bug fixes
|
|
2538
1923
|
|
|
2539
1924
|
- stream: do not stall on loadedmetadata event
|
|
2540
1925
|
|
|
1926
|
+
|
|
2541
1927
|
## v1.2.0 (2015-09-23)
|
|
2542
1928
|
|
|
2543
|
-
This release introduces the use of ES6 classes for all modules that
|
|
2544
|
-
class hierarchy. It comes with an upgrade of
|
|
1929
|
+
This release introduces the use of ES6 classes for all modules that
|
|
1930
|
+
depends on a sort of class hierarchy. It comes with an upgrade of
|
|
1931
|
+
RxJSv3.1.1.
|
|
2545
1932
|
|
|
2546
1933
|
We also started using eslint as our main linter instead of jshint.
|
|
2547
1934
|
|
|
@@ -2553,6 +1940,7 @@ We also started using eslint as our main linter instead of jshint.
|
|
|
2553
1940
|
- dash: incremental id from adaptations/representations (c24fecb)
|
|
2554
1941
|
- stream: discontinuity check on each stalled tick (3a5b796)
|
|
2555
1942
|
|
|
1943
|
+
|
|
2556
1944
|
### Bug fixes
|
|
2557
1945
|
|
|
2558
1946
|
- fix missing new on Promise (4679632)
|
|
@@ -2564,6 +1952,7 @@ We also started using eslint as our main linter instead of jshint.
|
|
|
2564
1952
|
- player: fix getUrl (577ce87)
|
|
2565
1953
|
- manifest: enforce id setting to parsers (927d275)
|
|
2566
1954
|
|
|
1955
|
+
|
|
2567
1956
|
## v1.1.0 (2015-08-14)
|
|
2568
1957
|
|
|
2569
1958
|
### Added
|
|
@@ -2580,6 +1969,7 @@ We also started using eslint as our main linter instead of jshint.
|
|
|
2580
1969
|
- fix no MediaKeySession reuse on Chrome
|
|
2581
1970
|
- fix quota error with MediaKeys attached to multiple video elements on Chrome
|
|
2582
1971
|
|
|
1972
|
+
|
|
2583
1973
|
## v1.0.0 (2015-06-16)
|
|
2584
1974
|
|
|
2585
1975
|
Initial public release.
|