rx-player 3.33.0 → 3.33.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/VERSION +1 -1
- package/dist/_esm5.processed/core/api/public_api.js +2 -2
- package/dist/_esm5.processed/manifest/manifest.js +1 -0
- package/dist/_esm5.processed/utils/retry_promise_with_backoff.d.ts +11 -0
- package/dist/_esm5.processed/utils/retry_promise_with_backoff.js +18 -4
- package/dist/mpd-parser.wasm +0 -0
- package/dist/rx-player.d.ts +1 -1
- package/dist/rx-player.js +24 -9
- package/dist/rx-player.min.d.ts +1 -1
- package/dist/rx-player.min.js +1 -1
- package/package.json +6 -6
- package/.editorconfig +0 -22
- package/.eslintrc.js +0 -406
- package/.github/workflows/checks.yml +0 -101
- package/.github/workflows/perfs.yml +0 -22
- package/.github/workflows/sonarcloud_analysis.yml +0 -20
- package/CONTRIBUTING.md +0 -272
- package/FILES.md +0 -283
- package/jest.config.js +0 -73
- package/manifest.mpd +0 -149
- package/scripts/README.md +0 -11
- package/scripts/build/constants.d.ts +0 -53
- package/scripts/build/generate_build.js +0 -190
- package/scripts/build/templates/experimental/features/index.d.ts +0 -16
- package/scripts/build/templates/experimental/features/index.js +0 -16
- package/scripts/build/templates/experimental/index.d.ts +0 -16
- package/scripts/build/templates/experimental/index.js +0 -16
- package/scripts/build/templates/experimental/tools/VideoThumbnailLoader/index.d.ts +0 -18
- package/scripts/build/templates/experimental/tools/VideoThumbnailLoader/index.js +0 -18
- package/scripts/build/templates/experimental/tools/index.d.ts +0 -16
- package/scripts/build/templates/experimental/tools/index.js +0 -16
- package/scripts/build/templates/features/index.d.ts +0 -16
- package/scripts/build/templates/features/index.js +0 -16
- package/scripts/build/templates/logger/index.d.ts +0 -17
- package/scripts/build/templates/logger/index.js +0 -17
- package/scripts/build/templates/minimal/index.d.ts +0 -17
- package/scripts/build/templates/minimal/index.js +0 -17
- package/scripts/build/templates/tools/TextTrackRenderer.d.ts +0 -18
- package/scripts/build/templates/tools/TextTrackRenderer.js +0 -18
- package/scripts/build/templates/tools/index.d.ts +0 -16
- package/scripts/build/templates/tools/index.js +0 -16
- package/scripts/build/templates/tools/string-utils.d.ts +0 -18
- package/scripts/build/templates/tools/string-utils.js +0 -18
- package/scripts/build/templates/types/index.d.ts +0 -16
- package/scripts/build/templates/types/index.js +0 -15
- package/scripts/canal-release.patch +0 -316
- package/scripts/check_nodejs_import_compatibility.js +0 -60
- package/scripts/deploy_new_demo +0 -123
- package/scripts/fast_demo_build.js +0 -129
- package/scripts/generate_certificate +0 -19
- package/scripts/generate_demo_list.js +0 -105
- package/scripts/generate_documentation_list.js +0 -109
- package/scripts/generate_full_demo.js +0 -201
- package/scripts/generate_standalone_demo.js +0 -82
- package/scripts/launch_static_server.js +0 -163
- package/scripts/list-npm-scripts.js +0 -207
- package/scripts/make-dev-releases +0 -90
- package/scripts/report_build_sizes +0 -96
- package/scripts/run_standalone_demo.js +0 -27
- package/scripts/start_demo_web_server.js +0 -44
- package/scripts/update-version +0 -48
- package/scripts/update_gh-pages_demo +0 -132
- package/scripts/update_gh-pages_doc +0 -106
- package/scripts/utils/display_webpack_errors.js +0 -33
- package/scripts/utils/get_human_readable_hours.js +0 -14
- package/scripts/wasm-strip.js +0 -359
- package/sonar-project.properties +0 -7
- package/src/README.md +0 -136
- package/src/compat/README.md +0 -29
- package/src/compat/__tests__/add_text_track.test.ts +0 -176
- package/src/compat/__tests__/browser_compatibility_types.test.ts +0 -152
- package/src/compat/__tests__/browser_version.test.ts +0 -84
- 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 -78
- package/src/compat/__tests__/can_reuse_media_keys.test.ts +0 -31
- package/src/compat/__tests__/change_source_buffer_type.test.ts +0 -60
- package/src/compat/__tests__/clear_element_src.test.ts +0 -252
- package/src/compat/__tests__/enable_audio_track.test.ts +0 -341
- package/src/compat/__tests__/fullscreen.test.ts +0 -286
- package/src/compat/__tests__/is_codec_supported.test.ts +0 -78
- package/src/compat/__tests__/is_offline.test.ts +0 -65
- package/src/compat/__tests__/is_seeking_approximate.test.ts +0 -48
- package/src/compat/__tests__/is_vtt_cue.test.ts +0 -71
- package/src/compat/__tests__/make_vtt_cue.test.ts +0 -97
- package/src/compat/__tests__/patch_webkit_source_buffer.test.ts +0 -144
- package/src/compat/__tests__/remove_cue.test.ts +0 -229
- package/src/compat/__tests__/should_favour_custom_safari_EME.test.ts +0 -128
- package/src/compat/__tests__/should_reload_media_source_on_decipherability_update.test.ts +0 -50
- package/src/compat/__tests__/should_renew_media_key_system_access.test.ts +0 -55
- 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 -121
- package/src/compat/__tests__/should_wait_for_have_enough_data.test.ts +0 -36
- package/src/compat/add_class_name.ts +0 -41
- package/src/compat/add_text_track.ts +0 -58
- package/src/compat/browser_compatibility_types.ts +0 -222
- package/src/compat/browser_detection.ts +0 -172
- 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 -20
- package/src/compat/change_source_buffer_type.ts +0 -66
- package/src/compat/clear_element_src.ts +0 -55
- package/src/compat/eme/close_session.ts +0 -111
- 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 -186
- package/src/compat/eme/custom_media_keys/index.ts +0 -28
- package/src/compat/eme/custom_media_keys/moz_media_keys_constructor.ts +0 -88
- package/src/compat/eme/custom_media_keys/ms_media_keys_constructor.ts +0 -69
- package/src/compat/eme/custom_media_keys/old_webkit_media_keys.ts +0 -235
- package/src/compat/eme/custom_media_keys/types.ts +0 -67
- package/src/compat/eme/custom_media_keys/webkit_media_keys.ts +0 -308
- package/src/compat/eme/custom_media_keys/webkit_media_keys_constructor.ts +0 -50
- package/src/compat/eme/eme-api-implementation.ts +0 -318
- package/src/compat/eme/generate_key_request.ts +0 -162
- package/src/compat/eme/get_init_data.ts +0 -159
- package/src/compat/eme/get_uuid_kid_from_keystatus_kid.ts +0 -37
- package/src/compat/eme/get_webkit_fairplay_initdata.ts +0 -75
- package/src/compat/eme/index.ts +0 -47
- package/src/compat/eme/load_session.ts +0 -67
- package/src/compat/enable_audio_track.ts +0 -33
- package/src/compat/event_listeners.ts +0 -566
- package/src/compat/fullscreen.ts +0 -87
- package/src/compat/get_start_date.ts +0 -48
- package/src/compat/has_issues_with_high_media_source_duration.ts +0 -27
- package/src/compat/index.ts +0 -87
- package/src/compat/is_codec_supported.ts +0 -40
- package/src/compat/is_debug_mode_enabled.ts +0 -12
- package/src/compat/is_node.ts +0 -18
- package/src/compat/is_offline.ts +0 -44
- package/src/compat/is_seeking_approximate.ts +0 -32
- package/src/compat/is_vtt_cue.ts +0 -30
- package/src/compat/make_vtt_cue.ts +0 -51
- package/src/compat/on_height_width_change.ts +0 -119
- package/src/compat/patch_webkit_source_buffer.ts +0 -89
- package/src/compat/remove_cue.ts +0 -64
- package/src/compat/should_favour_custom_safari_EME.ts +0 -34
- package/src/compat/should_prevent_seeking_at_0_initially.ts +0 -19
- package/src/compat/should_reload_media_source_on_decipherability_update.ts +0 -32
- 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 -32
- package/src/core/README.md +0 -56
- package/src/core/adaptive/README.md +0 -147
- package/src/core/adaptive/__tests__/buffer_based_chooser.test.ts +0 -548
- package/src/core/adaptive/adaptive_representation_selector.ts +0 -916
- package/src/core/adaptive/buffer_based_chooser.ts +0 -264
- package/src/core/adaptive/guess_based_chooser.ts +0 -309
- package/src/core/adaptive/index.ts +0 -45
- package/src/core/adaptive/network_analyzer.ts +0 -419
- package/src/core/adaptive/utils/__tests__/bandwith_estimator.test.ts +0 -134
- 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_width.test.ts +0 -60
- package/src/core/adaptive/utils/__tests__/get_buffer_levels.test.ts +0 -48
- package/src/core/adaptive/utils/__tests__/select_optimal_representation.test.ts +0 -243
- package/src/core/adaptive/utils/bandwidth_estimator.ts +0 -88
- package/src/core/adaptive/utils/ewma.ts +0 -59
- package/src/core/adaptive/utils/filter_by_bitrate.ts +0 -46
- package/src/core/adaptive/utils/filter_by_width.ts +0 -49
- package/src/core/adaptive/utils/get_buffer_levels.ts +0 -50
- package/src/core/adaptive/utils/last_estimate_storage.ts +0 -79
- package/src/core/adaptive/utils/pending_requests_store.ts +0 -147
- package/src/core/adaptive/utils/representation_score_calculator.ts +0 -168
- package/src/core/adaptive/utils/select_optimal_representation.ts +0 -54
- package/src/core/api/README.md +0 -36
- package/src/core/api/__tests__/option_utils.test.ts +0 -1668
- package/src/core/api/__tests__/public_api.test.ts +0 -857
- package/src/core/api/__tests__/utils.test.ts +0 -195
- package/src/core/api/debug/buffer_graph.ts +0 -244
- package/src/core/api/debug/buffer_size_graph.ts +0 -130
- package/src/core/api/debug/constants.ts +0 -2
- package/src/core/api/debug/index.ts +0 -3
- package/src/core/api/debug/modules/general_info.ts +0 -213
- package/src/core/api/debug/modules/segment_buffer_content.ts +0 -155
- package/src/core/api/debug/modules/segment_buffer_size.ts +0 -48
- package/src/core/api/debug/render.ts +0 -40
- package/src/core/api/debug/utils.ts +0 -103
- package/src/core/api/index.ts +0 -27
- package/src/core/api/option_utils.ts +0 -700
- package/src/core/api/playback_observer.ts +0 -994
- package/src/core/api/public_api.ts +0 -3247
- package/src/core/api/tracks_management/__tests__/media_element_track_choice_manager.test.ts +0 -184
- package/src/core/api/tracks_management/media_element_track_choice_manager.ts +0 -975
- package/src/core/api/tracks_management/track_choice_manager.ts +0 -1280
- package/src/core/api/utils.ts +0 -216
- package/src/core/decrypt/README.md +0 -22
- package/src/core/decrypt/__tests__/__global__/get_license.test.ts +0 -422
- package/src/core/decrypt/__tests__/__global__/init_data.test.ts +0 -677
- package/src/core/decrypt/__tests__/__global__/media_key_system_access.test.ts +0 -528
- package/src/core/decrypt/__tests__/__global__/media_keys.test.ts +0 -343
- package/src/core/decrypt/__tests__/__global__/server_certificate.test.ts +0 -264
- package/src/core/decrypt/__tests__/__global__/utils.ts +0 -491
- package/src/core/decrypt/attach_media_keys.ts +0 -121
- package/src/core/decrypt/clear_on_stop.ts +0 -47
- package/src/core/decrypt/content_decryptor.ts +0 -1246
- package/src/core/decrypt/create_or_load_session.ts +0 -133
- package/src/core/decrypt/create_session.ts +0 -214
- package/src/core/decrypt/dispose_decryption_resources.ts +0 -54
- package/src/core/decrypt/find_key_system.ts +0 -376
- package/src/core/decrypt/get_key_system_configuration.ts +0 -51
- package/src/core/decrypt/get_media_keys.ts +0 -147
- package/src/core/decrypt/index.ts +0 -36
- package/src/core/decrypt/init_media_keys.ts +0 -60
- package/src/core/decrypt/session_events_listener.ts +0 -386
- package/src/core/decrypt/set_server_certificate.ts +0 -105
- package/src/core/decrypt/types.ts +0 -404
- package/src/core/decrypt/utils/__tests__/are_init_values_compatible.test.ts +0 -261
- package/src/core/decrypt/utils/__tests__/clean_old_loaded_sessions.test.ts +0 -158
- package/src/core/decrypt/utils/__tests__/clean_old_stored_persistent_info.test.ts +0 -133
- package/src/core/decrypt/utils/are_init_values_compatible.ts +0 -140
- package/src/core/decrypt/utils/check_key_statuses.ts +0 -193
- package/src/core/decrypt/utils/clean_old_loaded_sessions.ts +0 -45
- package/src/core/decrypt/utils/clean_old_stored_persistent_info.ts +0 -48
- package/src/core/decrypt/utils/get_drm_system_id.ts +0 -42
- package/src/core/decrypt/utils/init_data_values_container.ts +0 -119
- package/src/core/decrypt/utils/is_session_usable.ts +0 -62
- package/src/core/decrypt/utils/key_id_comparison.ts +0 -57
- package/src/core/decrypt/utils/key_session_record.ts +0 -174
- package/src/core/decrypt/utils/loaded_sessions_store.ts +0 -505
- package/src/core/decrypt/utils/media_keys_infos_store.ts +0 -85
- package/src/core/decrypt/utils/persistent_sessions_store.ts +0 -358
- package/src/core/decrypt/utils/serializable_bytes.ts +0 -59
- package/src/core/decrypt/utils/server_certificate_store.ts +0 -133
- package/src/core/fetchers/README.md +0 -84
- package/src/core/fetchers/cdn_prioritizer.ts +0 -207
- package/src/core/fetchers/index.ts +0 -38
- package/src/core/fetchers/manifest/index.ts +0 -28
- package/src/core/fetchers/manifest/manifest_fetcher.ts +0 -798
- package/src/core/fetchers/segment/__tests__/task_prioritizer.test.ts +0 -763
- package/src/core/fetchers/segment/index.ts +0 -28
- package/src/core/fetchers/segment/prioritized_segment_fetcher.ts +0 -113
- package/src/core/fetchers/segment/segment_fetcher.ts +0 -482
- package/src/core/fetchers/segment/segment_fetcher_creator.ts +0 -129
- package/src/core/fetchers/segment/task_prioritizer.ts +0 -455
- package/src/core/fetchers/utils/error_selector.ts +0 -38
- package/src/core/fetchers/utils/schedule_request.ts +0 -493
- package/src/core/init/README.md +0 -81
- package/src/core/init/directfile_content_initializer.ts +0 -310
- package/src/core/init/index.ts +0 -22
- package/src/core/init/media_source_content_initializer.ts +0 -878
- package/src/core/init/types.ts +0 -266
- package/src/core/init/utils/__tests__/are_same_stream_events.test.ts +0 -84
- package/src/core/init/utils/__tests__/refresh_scheduled_events_list.test.ts +0 -94
- package/src/core/init/utils/content_time_boundaries_observer.ts +0 -646
- package/src/core/init/utils/create_media_source.ts +0 -139
- package/src/core/init/utils/create_stream_playback_observer.ts +0 -132
- package/src/core/init/utils/end_of_stream.ts +0 -108
- package/src/core/init/utils/get_initial_time.ts +0 -165
- package/src/core/init/utils/get_loaded_reference.ts +0 -82
- package/src/core/init/utils/initial_seek_and_play.ts +0 -237
- package/src/core/init/utils/initialize_content_decryption.ts +0 -172
- package/src/core/init/utils/media_source_duration_updater.ts +0 -349
- package/src/core/init/utils/rebuffering_controller.ts +0 -642
- package/src/core/init/utils/stream_events_emitter/are_same_stream_events.ts +0 -42
- package/src/core/init/utils/stream_events_emitter/index.ts +0 -22
- package/src/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts +0 -74
- package/src/core/init/utils/stream_events_emitter/stream_events_emitter.ts +0 -252
- package/src/core/init/utils/stream_events_emitter/types.ts +0 -46
- package/src/core/init/utils/throw_on_media_error.ts +0 -74
- package/src/core/segment_buffers/README.md +0 -219
- package/src/core/segment_buffers/garbage_collector.ts +0 -177
- package/src/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.ts +0 -650
- package/src/core/segment_buffers/implementations/audio_video/index.ts +0 -18
- package/src/core/segment_buffers/implementations/image/image_segment_buffer.ts +0 -152
- package/src/core/segment_buffers/implementations/image/index.ts +0 -18
- package/src/core/segment_buffers/implementations/index.ts +0 -20
- package/src/core/segment_buffers/implementations/text/html/__tests__/utils.test.ts +0 -343
- package/src/core/segment_buffers/implementations/text/html/html_text_segment_buffer.ts +0 -527
- package/src/core/segment_buffers/implementations/text/html/index.ts +0 -24
- package/src/core/segment_buffers/implementations/text/html/parsers.ts +0 -49
- package/src/core/segment_buffers/implementations/text/html/text_track_cues_store.ts +0 -391
- package/src/core/segment_buffers/implementations/text/html/types.ts +0 -23
- package/src/core/segment_buffers/implementations/text/html/update_proportional_elements.ts +0 -93
- package/src/core/segment_buffers/implementations/text/html/utils.ts +0 -139
- package/src/core/segment_buffers/implementations/text/native/index.ts +0 -19
- package/src/core/segment_buffers/implementations/text/native/native_text_segment_buffer.ts +0 -340
- package/src/core/segment_buffers/implementations/text/native/parsers.ts +0 -47
- package/src/core/segment_buffers/implementations/types.ts +0 -386
- package/src/core/segment_buffers/implementations/utils/manual_time_ranges.ts +0 -80
- package/src/core/segment_buffers/index.ts +0 -67
- package/src/core/segment_buffers/inventory/buffered_history.ts +0 -131
- package/src/core/segment_buffers/inventory/index.ts +0 -30
- package/src/core/segment_buffers/inventory/segment_inventory.ts +0 -1111
- package/src/core/segment_buffers/inventory/types.ts +0 -35
- package/src/core/segment_buffers/segment_buffers_store.ts +0 -383
- package/src/core/stream/README.md +0 -59
- package/src/core/stream/adaptation/adaptation_stream.ts +0 -378
- package/src/core/stream/adaptation/index.ts +0 -20
- package/src/core/stream/adaptation/types.ts +0 -199
- package/src/core/stream/adaptation/utils/create_representation_estimator.ts +0 -114
- package/src/core/stream/index.ts +0 -38
- package/src/core/stream/orchestrator/README.md +0 -349
- package/src/core/stream/orchestrator/get_time_ranges_for_content.ts +0 -70
- package/src/core/stream/orchestrator/index.ts +0 -30
- package/src/core/stream/orchestrator/stream_orchestrator.ts +0 -664
- package/src/core/stream/period/index.ts +0 -20
- package/src/core/stream/period/period_stream.ts +0 -469
- package/src/core/stream/period/types.ts +0 -132
- package/src/core/stream/period/utils/get_adaptation_switch_strategy.ts +0 -287
- package/src/core/stream/representation/README.md +0 -16
- package/src/core/stream/representation/index.ts +0 -20
- package/src/core/stream/representation/representation_stream.ts +0 -474
- package/src/core/stream/representation/types.ts +0 -292
- package/src/core/stream/representation/utils/append_segment_to_buffer.ts +0 -77
- package/src/core/stream/representation/utils/check_for_discontinuity.ts +0 -305
- package/src/core/stream/representation/utils/downloading_queue.ts +0 -603
- package/src/core/stream/representation/utils/force_garbage_collection.ts +0 -113
- package/src/core/stream/representation/utils/get_buffer_status.ts +0 -322
- package/src/core/stream/representation/utils/get_needed_segments.ts +0 -617
- package/src/core/stream/representation/utils/get_segment_priority.ts +0 -43
- package/src/core/stream/representation/utils/push_init_segment.ts +0 -85
- package/src/core/stream/representation/utils/push_media_segment.ts +0 -113
- package/src/default_config.ts +0 -1293
- package/src/errors/README.md +0 -6
- package/src/errors/__tests__/assertion_error.test.ts +0 -26
- 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 -62
- package/src/errors/__tests__/is_known_error.test.ts +0 -65
- package/src/errors/__tests__/media_error.test.ts +0 -55
- package/src/errors/__tests__/network_error.test.ts +0 -84
- package/src/errors/__tests__/other_error.test.ts +0 -53
- package/src/errors/__tests__/request_error.test.ts +0 -45
- package/src/errors/assertion_error.ts +0 -40
- package/src/errors/custom_loader_error.ts +0 -57
- package/src/errors/encrypted_media_error.ts +0 -71
- package/src/errors/error_codes.ts +0 -149
- package/src/errors/error_message.ts +0 -30
- package/src/errors/format_error.ts +0 -39
- package/src/errors/index.ts +0 -52
- package/src/errors/is_known_error.ts +0 -35
- package/src/errors/media_error.ts +0 -118
- package/src/errors/network_error.ts +0 -74
- package/src/errors/other_error.ts +0 -50
- package/src/errors/request_error.ts +0 -76
- package/src/experimental/README.md +0 -16
- package/src/experimental/features/__tests__/dash_wasm.test.ts +0 -44
- package/src/experimental/features/__tests__/debug_element.test.ts +0 -12
- package/src/experimental/features/__tests__/index.test.ts +0 -19
- package/src/experimental/features/__tests__/local.test.ts +0 -35
- package/src/experimental/features/__tests__/metaplaylist.test.ts +0 -35
- package/src/experimental/features/dash_wasm.ts +0 -41
- package/src/experimental/features/debug_element.ts +0 -13
- package/src/experimental/features/index.ts +0 -20
- package/src/experimental/features/local.ts +0 -28
- package/src/experimental/features/metaplaylist.ts +0 -28
- package/src/experimental/index.ts +0 -5
- 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 -25
- package/src/experimental/tools/VideoThumbnailLoader/load_and_push_segment.ts +0 -77
- package/src/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.ts +0 -75
- package/src/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.ts +0 -54
- package/src/experimental/tools/VideoThumbnailLoader/types.ts +0 -39
- package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.ts +0 -423
- package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.ts +0 -34
- package/src/experimental/tools/createMetaplaylist/get_duration_from_manifest.ts +0 -141
- package/src/experimental/tools/createMetaplaylist/index.ts +0 -72
- package/src/experimental/tools/index.ts +0 -27
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/capabilities.test.ts +0 -37
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/DRMInfos.test.ts +0 -140
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/HDCPPolicy.test.ts +0 -153
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/decodingInfos.test.ts +0 -405
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/defaultCodecFinder.test.ts +0 -136
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaContentType.test.ts +0 -294
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaDisplayInfos.test.ts +0 -189
- package/src/experimental/tools/mediaCapabilitiesProber/__tests__/utils.test.ts +0 -361
- package/src/experimental/tools/mediaCapabilitiesProber/api/index.ts +0 -184
- package/src/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.ts +0 -136
- package/src/experimental/tools/mediaCapabilitiesProber/capabilities.ts +0 -169
- package/src/experimental/tools/mediaCapabilitiesProber/index.ts +0 -18
- package/src/experimental/tools/mediaCapabilitiesProber/log.ts +0 -21
- package/src/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.ts +0 -67
- package/src/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.ts +0 -89
- package/src/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.ts +0 -100
- package/src/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.ts +0 -66
- package/src/experimental/tools/mediaCapabilitiesProber/probers/index.ts +0 -44
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.ts +0 -66
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.ts +0 -100
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.ts +0 -105
- package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.ts +0 -54
- package/src/experimental/tools/mediaCapabilitiesProber/types.ts +0 -75
- package/src/experimental/tools/mediaCapabilitiesProber/utils.ts +0 -107
- package/src/experimental/tools/parseBIFThumbnails.ts +0 -39
- package/src/features/README.md +0 -11
- package/src/features/__tests__/add_features.test.ts +0 -69
- package/src/features/__tests__/initialize_features.test.ts +0 -674
- package/src/features/add_features.ts +0 -37
- package/src/features/features_object.ts +0 -37
- package/src/features/index.ts +0 -40
- package/src/features/initialize_features.ts +0 -136
- package/src/features/list/__tests__/bif_parser.test.ts +0 -30
- package/src/features/list/__tests__/dash.test.ts +0 -41
- package/src/features/list/__tests__/directfile.test.ts +0 -35
- package/src/features/list/__tests__/eme.test.ts +0 -28
- package/src/features/list/__tests__/html_sami_parser.test.ts +0 -33
- package/src/features/list/__tests__/html_srt_parser.test.ts +0 -33
- package/src/features/list/__tests__/html_text_buffer.test.ts +0 -29
- package/src/features/list/__tests__/html_ttml_parser.test.ts +0 -33
- package/src/features/list/__tests__/html_vtt_parser.test.ts +0 -33
- package/src/features/list/__tests__/image_buffer.test.ts +0 -28
- package/src/features/list/__tests__/index.test.ts +0 -55
- package/src/features/list/__tests__/native_sami_parser.test.ts +0 -33
- package/src/features/list/__tests__/native_srt_parser.test.ts +0 -33
- package/src/features/list/__tests__/native_text_buffer.test.ts +0 -29
- package/src/features/list/__tests__/native_ttml_parser.test.ts +0 -33
- package/src/features/list/__tests__/native_vtt_parser.test.ts +0 -33
- package/src/features/list/__tests__/smooth.test.ts +0 -36
- package/src/features/list/bif_parser.ts +0 -31
- package/src/features/list/dash.ts +0 -36
- package/src/features/list/directfile.ts +0 -35
- 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/image_buffer.ts +0 -29
- package/src/features/list/index.ts +0 -32
- package/src/features/list/native_sami_parser.ts +0 -32
- package/src/features/list/native_srt_parser.ts +0 -32
- package/src/features/list/native_text_buffer.ts +0 -30
- package/src/features/list/native_ttml_parser.ts +0 -32
- package/src/features/list/native_vtt_parser.ts +0 -32
- package/src/features/list/smooth.ts +0 -32
- package/src/features/types.ts +0 -183
- package/src/index.ts +0 -38
- package/src/log.ts +0 -22
- package/src/manifest/README.md +0 -55
- package/src/manifest/__tests__/adaptation.test.ts +0 -485
- package/src/manifest/__tests__/manifest.test.ts +0 -428
- package/src/manifest/__tests__/period.test.ts +0 -769
- package/src/manifest/__tests__/representation.test.ts +0 -297
- package/src/manifest/__tests__/update_period_in_place.test.ts +0 -1074
- package/src/manifest/__tests__/update_periods.test.ts +0 -845
- package/src/manifest/adaptation.ts +0 -294
- package/src/manifest/index.ts +0 -67
- package/src/manifest/manifest.ts +0 -811
- package/src/manifest/period.ts +0 -211
- package/src/manifest/representation.ts +0 -451
- package/src/manifest/representation_index/__tests__/static.test.ts +0 -74
- package/src/manifest/representation_index/index.ts +0 -31
- package/src/manifest/representation_index/static.ts +0 -158
- package/src/manifest/representation_index/types.ts +0 -433
- package/src/manifest/types.ts +0 -33
- package/src/manifest/update_period_in_place.ts +0 -142
- package/src/manifest/update_periods.ts +0 -201
- package/src/manifest/utils.ts +0 -60
- package/src/minimal.ts +0 -34
- package/src/parsers/README.md +0 -12
- package/src/parsers/containers/isobmff/constants.ts +0 -24
- package/src/parsers/containers/isobmff/create_box.ts +0 -81
- package/src/parsers/containers/isobmff/drm/index.ts +0 -17
- package/src/parsers/containers/isobmff/drm/playready.ts +0 -45
- package/src/parsers/containers/isobmff/get_box.ts +0 -278
- package/src/parsers/containers/isobmff/index.ts +0 -51
- package/src/parsers/containers/isobmff/read.ts +0 -105
- package/src/parsers/containers/isobmff/take_pssh_out.ts +0 -101
- package/src/parsers/containers/isobmff/utils.ts +0 -555
- package/src/parsers/containers/matroska/index.ts +0 -21
- package/src/parsers/containers/matroska/utils.ts +0 -313
- package/src/parsers/images/bif.ts +0 -128
- package/src/parsers/manifest/dash/common/__tests__/attach_trickmode_track.test.ts +0 -65
- package/src/parsers/manifest/dash/common/__tests__/convert_supplemental_codecs.test.ts +0 -37
- package/src/parsers/manifest/dash/common/__tests__/flatten_overlapping_period.test.ts +0 -162
- package/src/parsers/manifest/dash/common/__tests__/get_clock_offset.test.ts +0 -65
- package/src/parsers/manifest/dash/common/__tests__/get_http_utc-timing_url.test.ts +0 -165
- package/src/parsers/manifest/dash/common/__tests__/get_periods_time_infos.test.ts +0 -118
- package/src/parsers/manifest/dash/common/__tests__/manifest_bounds_calculator.test.ts +0 -290
- package/src/parsers/manifest/dash/common/__tests__/parse_availability_start_time.test.ts +0 -63
- package/src/parsers/manifest/dash/common/attach_trickmode_track.ts +0 -55
- package/src/parsers/manifest/dash/common/convert_supplemental_codecs.ts +0 -32
- package/src/parsers/manifest/dash/common/flatten_overlapping_periods.ts +0 -87
- package/src/parsers/manifest/dash/common/get_clock_offset.ts +0 -41
- package/src/parsers/manifest/dash/common/get_hdr_information.ts +0 -94
- package/src/parsers/manifest/dash/common/get_http_utc-timing_url.ts +0 -46
- package/src/parsers/manifest/dash/common/get_minimum_and_maximum_positions.ts +0 -39
- package/src/parsers/manifest/dash/common/get_periods_time_infos.ts +0 -91
- package/src/parsers/manifest/dash/common/index.ts +0 -40
- package/src/parsers/manifest/dash/common/indexes/__tests__/tokens.test.ts +0 -60
- package/src/parsers/manifest/dash/common/indexes/base.ts +0 -444
- package/src/parsers/manifest/dash/common/indexes/get_init_segment.ts +0 -55
- package/src/parsers/manifest/dash/common/indexes/get_segments_from_timeline.ts +0 -148
- package/src/parsers/manifest/dash/common/indexes/index.ts +0 -39
- package/src/parsers/manifest/dash/common/indexes/list.ts +0 -338
- package/src/parsers/manifest/dash/common/indexes/template.ts +0 -652
- package/src/parsers/manifest/dash/common/indexes/timeline/__tests__/parse_s_element.test.ts +0 -115
- package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.ts +0 -54
- package/src/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.ts +0 -102
- package/src/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.ts +0 -66
- package/src/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.ts +0 -153
- 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 -72
- package/src/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.ts +0 -1049
- package/src/parsers/manifest/dash/common/indexes/tokens.ts +0 -127
- package/src/parsers/manifest/dash/common/indexes/utils.ts +0 -32
- package/src/parsers/manifest/dash/common/infer_adaptation_type.ts +0 -142
- package/src/parsers/manifest/dash/common/manifest_bounds_calculator.ts +0 -165
- package/src/parsers/manifest/dash/common/parse_adaptation_sets.ts +0 -569
- package/src/parsers/manifest/dash/common/parse_availability_start_time.ts +0 -35
- package/src/parsers/manifest/dash/common/parse_mpd.ts +0 -399
- package/src/parsers/manifest/dash/common/parse_periods.ts +0 -363
- package/src/parsers/manifest/dash/common/parse_representation_index.ts +0 -199
- package/src/parsers/manifest/dash/common/parse_representations.ts +0 -352
- package/src/parsers/manifest/dash/common/resolve_base_urls.ts +0 -58
- package/src/parsers/manifest/dash/index.ts +0 -22
- package/src/parsers/manifest/dash/js-parser/__tests__/parse_from_document.test.ts +0 -45
- package/src/parsers/manifest/dash/js-parser/index.ts +0 -18
- package/src/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.ts +0 -381
- package/src/parsers/manifest/dash/js-parser/node_parsers/BaseURL.ts +0 -35
- package/src/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.ts +0 -49
- package/src/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.ts +0 -94
- package/src/parsers/manifest/dash/js-parser/node_parsers/EventStream.ts +0 -117
- package/src/parsers/manifest/dash/js-parser/node_parsers/Initialization.ts +0 -48
- package/src/parsers/manifest/dash/js-parser/node_parsers/MPD.ts +0 -180
- package/src/parsers/manifest/dash/js-parser/node_parsers/Period.ts +0 -152
- package/src/parsers/manifest/dash/js-parser/node_parsers/Representation.ts +0 -234
- package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.ts +0 -112
- package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentList.ts +0 -50
- package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.ts +0 -98
- package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.ts +0 -35
- package/src/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.ts +0 -63
- package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/AdaptationSet.test.ts +0 -407
- package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/ContentComponent.test.ts +0 -67
- package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/ContentProtection.test.ts +0 -223
- package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/Initialization.test.ts +0 -139
- package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/SegmentTimeline.test.ts +0 -119
- package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/SegmentURL.test.ts +0 -205
- package/src/parsers/manifest/dash/js-parser/node_parsers/__tests__/utils.test.ts +0 -218
- package/src/parsers/manifest/dash/js-parser/node_parsers/utils.ts +0 -384
- package/src/parsers/manifest/dash/js-parser/parse_from_document.ts +0 -129
- package/src/parsers/manifest/dash/node_parser_types.ts +0 -431
- package/src/parsers/manifest/dash/parsers_types.ts +0 -91
- 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 -267
- package/src/parsers/manifest/dash/wasm-parser/index.ts +0 -21
- package/src/parsers/manifest/dash/wasm-parser/rs/errors.rs +0 -28
- package/src/parsers/manifest/dash/wasm-parser/rs/events.rs +0 -373
- 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 -217
- package/src/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.ts +0 -477
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.ts +0 -343
- 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 -53
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.ts +0 -62
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.ts +0 -144
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/MPD.ts +0 -183
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/Period.ts +0 -180
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/Representation.ts +0 -215
- 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 -115
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.ts +0 -61
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.ts +0 -133
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.ts +0 -70
- package/src/parsers/manifest/dash/wasm-parser/ts/generators/XLink.ts +0 -66
- 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 -66
- package/src/parsers/manifest/dash/wasm-parser/ts/parsers_stack.ts +0 -80
- package/src/parsers/manifest/dash/wasm-parser/ts/types.ts +0 -298
- package/src/parsers/manifest/dash/wasm-parser/ts/utils.ts +0 -47
- 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 -164
- package/src/parsers/manifest/local/representation_index.ts +0 -246
- package/src/parsers/manifest/local/types.ts +0 -291
- package/src/parsers/manifest/metaplaylist/index.ts +0 -28
- package/src/parsers/manifest/metaplaylist/metaplaylist_parser.ts +0 -335
- package/src/parsers/manifest/metaplaylist/representation_index.ts +0 -251
- package/src/parsers/manifest/smooth/create_parser.ts +0 -699
- package/src/parsers/manifest/smooth/get_codecs.ts +0 -55
- package/src/parsers/manifest/smooth/index.ts +0 -26
- package/src/parsers/manifest/smooth/parse_C_nodes.ts +0 -69
- package/src/parsers/manifest/smooth/parse_protection_node.ts +0 -72
- package/src/parsers/manifest/smooth/representation_index.ts +0 -704
- package/src/parsers/manifest/smooth/utils/add_segment_infos.ts +0 -77
- package/src/parsers/manifest/smooth/utils/parseBoolean.ts +0 -31
- package/src/parsers/manifest/smooth/utils/reduceChildren.ts +0 -36
- package/src/parsers/manifest/smooth/utils/tokens.ts +0 -46
- package/src/parsers/manifest/types.ts +0 -395
- package/src/parsers/manifest/utils/__tests__/get_first_time_from_adaptations.test.ts +0 -161
- package/src/parsers/manifest/utils/__tests__/get_last_time_from_adaptation.test.ts +0 -161
- package/src/parsers/manifest/utils/__tests__/index_helpers.test.ts +0 -55
- package/src/parsers/manifest/utils/__tests__/update_segment_timeline.test.ts +0 -546
- package/src/parsers/manifest/utils/check_manifest_ids.ts +0 -83
- package/src/parsers/manifest/utils/clear_timeline_from_position.ts +0 -74
- package/src/parsers/manifest/utils/get_first_time_from_adaptation.ts +0 -48
- package/src/parsers/manifest/utils/get_last_time_from_adaptation.ts +0 -50
- package/src/parsers/manifest/utils/get_maximum_positions.ts +0 -87
- package/src/parsers/manifest/utils/get_minimum_position.ts +0 -80
- package/src/parsers/manifest/utils/index_helpers.ts +0 -204
- package/src/parsers/manifest/utils/update_segment_timeline.ts +0 -141
- package/src/parsers/texttracks/index.ts +0 -21
- package/src/parsers/texttracks/sami/html.ts +0 -219
- package/src/parsers/texttracks/sami/native.ts +0 -192
- 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 -119
- package/src/parsers/texttracks/srt/__tests__/parse_cue.test.ts +0 -123
- 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 -49
- package/src/parsers/texttracks/srt/html.ts +0 -182
- package/src/parsers/texttracks/srt/native.ts +0 -74
- package/src/parsers/texttracks/srt/parse_cue.ts +0 -76
- package/src/parsers/texttracks/srt/parse_timestamp.ts +0 -37
- package/src/parsers/texttracks/ttml/__tests__/resolve_styles_inheritance.test.ts +0 -248
- package/src/parsers/texttracks/ttml/get_parameters.ts +0 -106
- package/src/parsers/texttracks/ttml/get_styling.ts +0 -146
- package/src/parsers/texttracks/ttml/get_time_delimiters.ts +0 -49
- 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 -32
- package/src/parsers/texttracks/ttml/html/__tests__/ttml_color_to_css_color.test.ts +0 -62
- package/src/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.ts +0 -67
- package/src/parsers/texttracks/ttml/html/apply_extent.ts +0 -65
- package/src/parsers/texttracks/ttml/html/apply_font_size.ts +0 -62
- package/src/parsers/texttracks/ttml/html/apply_line_height.ts +0 -50
- package/src/parsers/texttracks/ttml/html/apply_origin.ts +0 -64
- package/src/parsers/texttracks/ttml/html/apply_padding.ts +0 -141
- package/src/parsers/texttracks/ttml/html/create_element.ts +0 -549
- package/src/parsers/texttracks/ttml/html/generate_css_test_outline.ts +0 -46
- package/src/parsers/texttracks/ttml/html/index.ts +0 -23
- package/src/parsers/texttracks/ttml/html/parse_cue.ts +0 -65
- package/src/parsers/texttracks/ttml/html/parse_ttml_to_div.ts +0 -58
- package/src/parsers/texttracks/ttml/html/ttml_color_to_css_color.ts +0 -68
- package/src/parsers/texttracks/ttml/native/index.ts +0 -23
- package/src/parsers/texttracks/ttml/native/parse_cue.ts +0 -245
- package/src/parsers/texttracks/ttml/native/parse_ttml_to_vtt.ts +0 -39
- package/src/parsers/texttracks/ttml/parse_ttml.ts +0 -206
- package/src/parsers/texttracks/ttml/regexps.ts +0 -65
- package/src/parsers/texttracks/ttml/resolve_styles_inheritance.ts +0 -84
- package/src/parsers/texttracks/ttml/time_parsing.ts +0 -156
- package/src/parsers/texttracks/ttml/xml_utils.ts +0 -166
- package/src/parsers/texttracks/types.ts +0 -34
- package/src/parsers/texttracks/webvtt/__tests__/get_cue_blocks.test.ts +0 -218
- package/src/parsers/texttracks/webvtt/__tests__/get_style_blocks.test.ts +0 -65
- package/src/parsers/texttracks/webvtt/__tests__/parse_cue_block.test.ts +0 -249
- package/src/parsers/texttracks/webvtt/__tests__/parse_timestamp.test.ts +0 -39
- package/src/parsers/texttracks/webvtt/__tests__/utils.test.ts +0 -401
- package/src/parsers/texttracks/webvtt/get_cue_blocks.ts +0 -51
- package/src/parsers/texttracks/webvtt/get_style_blocks.ts +0 -56
- package/src/parsers/texttracks/webvtt/html/__tests__/convert_payload_to_html.test.ts +0 -106
- package/src/parsers/texttracks/webvtt/html/__tests__/create_default_style_elements.test.ts +0 -44
- package/src/parsers/texttracks/webvtt/html/__tests__/create_style_attribute.test.ts +0 -139
- package/src/parsers/texttracks/webvtt/html/__tests__/create_styled_element.test.ts +0 -140
- package/src/parsers/texttracks/webvtt/html/__tests__/parse_style_block.test.ts +0 -345
- package/src/parsers/texttracks/webvtt/html/__tests__/parse_webvtt_to_div.test.ts +0 -181
- package/src/parsers/texttracks/webvtt/html/__tests__/to_html.test.ts +0 -234
- package/src/parsers/texttracks/webvtt/html/convert_payload_to_html.ts +0 -46
- package/src/parsers/texttracks/webvtt/html/create_default_style_elements.ts +0 -26
- package/src/parsers/texttracks/webvtt/html/create_style_attribute.ts +0 -222
- package/src/parsers/texttracks/webvtt/html/create_styled_element.ts +0 -95
- package/src/parsers/texttracks/webvtt/html/index.ts +0 -25
- package/src/parsers/texttracks/webvtt/html/parse_style_block.ts +0 -76
- package/src/parsers/texttracks/webvtt/html/parse_webvtt_to_div.ts +0 -67
- package/src/parsers/texttracks/webvtt/html/to_html.ts +0 -96
- package/src/parsers/texttracks/webvtt/native/index.ts +0 -23
- package/src/parsers/texttracks/webvtt/native/parse_vtt_to_cues.ts +0 -70
- package/src/parsers/texttracks/webvtt/native/set_settings_on_cue.ts +0 -95
- package/src/parsers/texttracks/webvtt/native/to_native_cue.ts +0 -34
- package/src/parsers/texttracks/webvtt/parse_cue_block.ts +0 -128
- package/src/parsers/texttracks/webvtt/parse_timestamp.ts +0 -40
- package/src/parsers/texttracks/webvtt/utils.ts +0 -135
- package/src/public_types.ts +0 -846
- package/src/tools/README.md +0 -4
- package/src/tools/TextTrackRenderer/index.ts +0 -28
- package/src/tools/TextTrackRenderer/text_track_renderer.ts +0 -107
- package/src/tools/index.ts +0 -20
- package/src/tools/string_utils.ts +0 -24
- package/src/transports/README.md +0 -276
- package/src/transports/dash/add_segment_integrity_checks_to_loader.ts +0 -98
- package/src/transports/dash/construct_segment_url.ts +0 -28
- package/src/transports/dash/extract_complete_chunks.ts +0 -66
- package/src/transports/dash/get_events_out_of_emsgs.ts +0 -105
- package/src/transports/dash/image_pipelines.ts +0 -122
- package/src/transports/dash/index.ts +0 -23
- package/src/transports/dash/init_segment_loader.ts +0 -114
- package/src/transports/dash/low_latency_segment_loader.ts +0 -87
- package/src/transports/dash/manifest_parser.ts +0 -325
- package/src/transports/dash/pipelines.ts +0 -72
- package/src/transports/dash/segment_loader.ts +0 -249
- package/src/transports/dash/segment_parser.ts +0 -194
- package/src/transports/dash/text_loader.ts +0 -120
- package/src/transports/dash/text_parser.ts +0 -234
- package/src/transports/index.ts +0 -17
- package/src/transports/local/index.ts +0 -18
- package/src/transports/local/pipelines.ts +0 -100
- package/src/transports/local/segment_loader.ts +0 -198
- package/src/transports/local/segment_parser.ts +0 -101
- package/src/transports/local/text_parser.ts +0 -185
- package/src/transports/metaplaylist/README.md +0 -94
- package/src/transports/metaplaylist/index.ts +0 -23
- package/src/transports/metaplaylist/manifest_loader.ts +0 -62
- package/src/transports/metaplaylist/pipelines.ts +0 -425
- package/src/transports/smooth/extract_timings_infos.ts +0 -142
- package/src/transports/smooth/index.ts +0 -23
- package/src/transports/smooth/isobmff/__tests__/create_boxes.test.ts +0 -231
- package/src/transports/smooth/isobmff/create_audio_init_segment.ts +0 -84
- package/src/transports/smooth/isobmff/create_boxes.ts +0 -481
- package/src/transports/smooth/isobmff/create_init_segment.ts +0 -100
- package/src/transports/smooth/isobmff/create_traf_box.ts +0 -40
- package/src/transports/smooth/isobmff/create_video_init_segment.ts +0 -78
- package/src/transports/smooth/isobmff/get_aaces_header.ts +0 -62
- package/src/transports/smooth/isobmff/index.ts +0 -32
- package/src/transports/smooth/isobmff/parse_tfrf.ts +0 -57
- package/src/transports/smooth/isobmff/parse_tfxd.ts +0 -38
- package/src/transports/smooth/isobmff/patch_segment.ts +0 -171
- package/src/transports/smooth/pipelines.ts +0 -533
- package/src/transports/smooth/segment_loader.ts +0 -288
- package/src/transports/smooth/utils.ts +0 -106
- package/src/transports/types.ts +0 -809
- package/src/transports/utils/__tests__/byte_range.test.ts +0 -35
- package/src/transports/utils/__tests__/check_isobmff_integrity.test.ts +0 -148
- package/src/transports/utils/__tests__/find_complete_box.test.ts +0 -138
- package/src/transports/utils/__tests__/infer_segment_container.test.ts +0 -227
- package/src/transports/utils/byte_range.ts +0 -25
- package/src/transports/utils/call_custom_manifest_loader.ts +0 -147
- package/src/transports/utils/check_isobmff_integrity.ts +0 -50
- package/src/transports/utils/find_complete_box.ts +0 -63
- package/src/transports/utils/generate_manifest_loader.ts +0 -97
- package/src/transports/utils/get_isobmff_timing_infos.ts +0 -86
- package/src/transports/utils/infer_segment_container.ts +0 -56
- package/src/transports/utils/parse_text_track.ts +0 -176
- package/src/typings/README.md +0 -7
- package/src/typings/globals.d.ts +0 -83
- package/src/typings/next-tick.d.ts +0 -23
- package/src/utils/README.md +0 -5
- package/src/utils/__tests__/are_arrays_of_numbers_equal.test.ts +0 -86
- package/src/utils/__tests__/are_codecs_compatible.test.ts +0 -88
- package/src/utils/__tests__/array_find.test.ts +0 -113
- package/src/utils/__tests__/array_find_index.test.ts +0 -113
- package/src/utils/__tests__/array_includes.test.ts +0 -151
- package/src/utils/__tests__/assert.test.ts +0 -237
- package/src/utils/__tests__/assert_unreachable.test.ts +0 -40
- package/src/utils/__tests__/base64.test.ts +0 -147
- package/src/utils/__tests__/byte_parsing.test.ts +0 -267
- package/src/utils/__tests__/deep_merge.test.ts +0 -48
- package/src/utils/__tests__/event_emitter.test.ts +0 -579
- package/src/utils/__tests__/flat_map.test.ts +0 -71
- package/src/utils/__tests__/get_fuzzed_delay.test.ts +0 -32
- package/src/utils/__tests__/hash_buffer.test.ts +0 -105
- package/src/utils/__tests__/id_generator.test.ts +0 -80
- package/src/utils/__tests__/initialization_segment_cache.test.ts +0 -245
- package/src/utils/__tests__/is_non_empty_string.test.ts +0 -41
- package/src/utils/__tests__/is_null_or_undefined.test.ts +0 -33
- package/src/utils/__tests__/list_to_map.test.ts +0 -46
- package/src/utils/__tests__/logger.test.ts +0 -214
- package/src/utils/__tests__/noop.test.ts +0 -23
- package/src/utils/__tests__/object_assign.test.ts +0 -56
- package/src/utils/__tests__/object_values.test.ts +0 -26
- package/src/utils/__tests__/ranges.test.ts +0 -907
- package/src/utils/__tests__/resolve_url.test.ts +0 -100
- package/src/utils/__tests__/simple_set.test.ts +0 -57
- package/src/utils/__tests__/sorted_list.test.ts +0 -335
- package/src/utils/__tests__/starts_with.test.ts +0 -65
- package/src/utils/__tests__/string_parsing.test.ts +0 -267
- package/src/utils/__tests__/uniq.test.ts +0 -134
- package/src/utils/__tests__/warn_once.test.ts +0 -38
- package/src/utils/__tests__/weak_map_memory.test.ts +0 -188
- 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 -55
- package/src/utils/array_find_index.ts +0 -54
- package/src/utils/array_includes.ts +0 -93
- package/src/utils/assert.ts +0 -65
- package/src/utils/assert_unreachable.ts +0 -45
- package/src/utils/base64.ts +0 -153
- package/src/utils/byte_parsing.ts +0 -256
- package/src/utils/cancellable_sleep.ts +0 -41
- package/src/utils/create_cancellable_promise.ts +0 -69
- package/src/utils/deep_merge.ts +0 -49
- package/src/utils/event_emitter.ts +0 -147
- package/src/utils/flat_map.ts +0 -50
- package/src/utils/get_fuzzed_delay.ts +0 -27
- package/src/utils/hash_buffer.ts +0 -42
- package/src/utils/id_generator.ts +0 -35
- package/src/utils/initialization_segment_cache.ts +0 -68
- package/src/utils/is_non_empty_string.ts +0 -23
- package/src/utils/is_null_or_undefined.ts +0 -27
- 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 -290
- package/src/utils/languages/index.ts +0 -29
- package/src/utils/languages/normalize.ts +0 -152
- package/src/utils/list_to_map.ts +0 -32
- package/src/utils/logger.ts +0 -100
- package/src/utils/noop.ts +0 -26
- package/src/utils/object_assign.ts +0 -60
- package/src/utils/object_values.ts +0 -31
- package/src/utils/ranges.ts +0 -499
- package/src/utils/reference.ts +0 -390
- package/src/utils/request/fetch.ts +0 -250
- package/src/utils/request/index.ts +0 -38
- package/src/utils/request/xhr.ts +0 -287
- package/src/utils/resolve_url.ts +0 -126
- package/src/utils/retry_promise_with_backoff.ts +0 -95
- package/src/utils/simple_set.ts +0 -67
- package/src/utils/sleep.ts +0 -14
- package/src/utils/slice_uint8array.ts +0 -53
- package/src/utils/sorted_list.ts +0 -240
- package/src/utils/starts_with.ts +0 -42
- package/src/utils/string_parsing.ts +0 -414
- package/src/utils/task_canceller.ts +0 -367
- package/src/utils/uniq.ts +0 -49
- package/src/utils/warn_once.ts +0 -34
- package/src/utils/weak_map_memory.ts +0 -89
- package/src/utils/wrapInPromise.ts +0 -24
- package/tsconfig.json +0 -28
- package/tsconfig.modules.json +0 -36
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright 2015 CANAL+ Group
|
|
3
|
-
*
|
|
4
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
-
* you may not use this file except in compliance with the License.
|
|
6
|
-
* You may obtain a copy of the License at
|
|
7
|
-
*
|
|
8
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
-
*
|
|
10
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
-
* See the License for the specific language governing permissions and
|
|
14
|
-
* limitations under the License.
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
import assertUnreachable from "../../../../utils/assert_unreachable";
|
|
18
|
-
import isNullOrUndefined from "../../../../utils/is_null_or_undefined";
|
|
19
|
-
import parseMpdIr, {
|
|
20
|
-
IIrParserResponse,
|
|
21
|
-
ILoadedXlinkData,
|
|
22
|
-
IMPDParserArguments,
|
|
23
|
-
} from "../common";
|
|
24
|
-
import { IPeriodIntermediateRepresentation } from "../node_parser_types";
|
|
25
|
-
import { IDashParserResponse, ILoadedResource } from "../parsers_types";
|
|
26
|
-
import {
|
|
27
|
-
createMPDIntermediateRepresentation,
|
|
28
|
-
} from "./node_parsers/MPD";
|
|
29
|
-
import {
|
|
30
|
-
createPeriodIntermediateRepresentation,
|
|
31
|
-
} from "./node_parsers/Period";
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Parse MPD through the JS parser, on a `Document` instance.
|
|
35
|
-
* @param {Document} document - Original manifest as returned by the server
|
|
36
|
-
* @param {Object} args - Various parsing options and information.
|
|
37
|
-
* @returns {Object} - Response returned by the DASH-JS parser.
|
|
38
|
-
*/
|
|
39
|
-
export default function parseFromDocument(
|
|
40
|
-
document: Document,
|
|
41
|
-
args : IMPDParserArguments
|
|
42
|
-
) : IDashParserResponse<string> {
|
|
43
|
-
const root = document.documentElement;
|
|
44
|
-
if (isNullOrUndefined(root) || root.nodeName !== "MPD") {
|
|
45
|
-
throw new Error("DASH Parser: document root should be MPD");
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
const [mpdIR,
|
|
49
|
-
warnings] = createMPDIntermediateRepresentation(root);
|
|
50
|
-
const ret = parseMpdIr(mpdIR, args, warnings);
|
|
51
|
-
return processReturn(ret);
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Handle `parseMpdIr` return values, asking for resources if they are needed
|
|
55
|
-
* and pre-processing them before continuing parsing.
|
|
56
|
-
*
|
|
57
|
-
* @param {Object} initialRes
|
|
58
|
-
* @returns {Object}
|
|
59
|
-
*/
|
|
60
|
-
function processReturn(initialRes : IIrParserResponse) : IDashParserResponse<string> {
|
|
61
|
-
if (initialRes.type === "done") {
|
|
62
|
-
return initialRes;
|
|
63
|
-
} else if (initialRes.type === "needs-clock") {
|
|
64
|
-
return {
|
|
65
|
-
type: "needs-resources",
|
|
66
|
-
value: {
|
|
67
|
-
urls: [initialRes.value.url],
|
|
68
|
-
format: "string",
|
|
69
|
-
continue(
|
|
70
|
-
loadedClock : Array<ILoadedResource<string>>
|
|
71
|
-
) : IDashParserResponse<string> {
|
|
72
|
-
if (loadedClock.length !== 1) {
|
|
73
|
-
throw new Error("DASH parser: wrong number of loaded ressources.");
|
|
74
|
-
}
|
|
75
|
-
const newRet = initialRes.value.continue(loadedClock[0].responseData);
|
|
76
|
-
return processReturn(newRet);
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
};
|
|
80
|
-
} else if (initialRes.type === "needs-xlinks") {
|
|
81
|
-
return {
|
|
82
|
-
type: "needs-resources",
|
|
83
|
-
value: {
|
|
84
|
-
urls: initialRes.value.xlinksUrls,
|
|
85
|
-
format: "string",
|
|
86
|
-
continue(
|
|
87
|
-
loadedXlinks : Array<ILoadedResource<string>>
|
|
88
|
-
) : IDashParserResponse<string> {
|
|
89
|
-
const resourceInfos : ILoadedXlinkData[] = [];
|
|
90
|
-
for (let i = 0; i < loadedXlinks.length; i++) {
|
|
91
|
-
const { responseData: xlinkResp,
|
|
92
|
-
receivedTime,
|
|
93
|
-
sendingTime,
|
|
94
|
-
url } = loadedXlinks[i];
|
|
95
|
-
if (!xlinkResp.success) {
|
|
96
|
-
throw xlinkResp.error;
|
|
97
|
-
}
|
|
98
|
-
const wrappedData = "<root>" + xlinkResp.data + "</root>";
|
|
99
|
-
const dataAsXML = new DOMParser().parseFromString(wrappedData, "text/xml");
|
|
100
|
-
if (dataAsXML == null || dataAsXML.children.length === 0) {
|
|
101
|
-
throw new Error("DASH parser: Invalid external ressources");
|
|
102
|
-
}
|
|
103
|
-
const periods = dataAsXML.children[0].children;
|
|
104
|
-
const periodsIR : IPeriodIntermediateRepresentation[] = [];
|
|
105
|
-
const periodsIRWarnings : Error[] = [];
|
|
106
|
-
for (let j = 0; j < periods.length; j++) {
|
|
107
|
-
if (periods[j].nodeType === Node.ELEMENT_NODE) {
|
|
108
|
-
const [periodIR, periodWarnings] =
|
|
109
|
-
createPeriodIntermediateRepresentation(periods[j]);
|
|
110
|
-
periodsIRWarnings.push(...periodWarnings);
|
|
111
|
-
periodsIR.push(periodIR);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
resourceInfos.push({ url,
|
|
115
|
-
receivedTime,
|
|
116
|
-
sendingTime,
|
|
117
|
-
parsed: periodsIR,
|
|
118
|
-
warnings: periodsIRWarnings });
|
|
119
|
-
}
|
|
120
|
-
const newRet = initialRes.value.continue(resourceInfos);
|
|
121
|
-
return processReturn(newRet);
|
|
122
|
-
},
|
|
123
|
-
},
|
|
124
|
-
};
|
|
125
|
-
} else {
|
|
126
|
-
assertUnreachable(initialRes);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
}
|
|
@@ -1,431 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright 2015 CANAL+ Group
|
|
3
|
-
*
|
|
4
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
-
* you may not use this file except in compliance with the License.
|
|
6
|
-
* You may obtain a copy of the License at
|
|
7
|
-
*
|
|
8
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
-
*
|
|
10
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
-
* See the License for the specific language governing permissions and
|
|
14
|
-
* limitations under the License.
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Those are types used when generating the MPD "Intermediate Representation"
|
|
19
|
-
* which is an intermediate step between parsing the MPD (in XML) and generating
|
|
20
|
-
* the RxPlayer's internal representation of a Manifest.
|
|
21
|
-
*
|
|
22
|
-
* This way, we can without much development cost only create a parser's
|
|
23
|
-
* "front-end" - which will just generate those object - to then depend on the
|
|
24
|
-
* already existing "back-end".
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
/** Intermediate Representation for the `<MPD>` element in an MPD. */
|
|
28
|
-
export interface IMPDIntermediateRepresentation {
|
|
29
|
-
/** Contains data about the element's children. */
|
|
30
|
-
children : IMPDChildren;
|
|
31
|
-
/** Contains data about the element's attributes. */
|
|
32
|
-
attributes : IMPDAttributes;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/** Intermediate representation for the root's children nodes. */
|
|
36
|
-
export interface IMPDChildren {
|
|
37
|
-
/**
|
|
38
|
-
* Root URL on which further relative URLs make reference.
|
|
39
|
-
*
|
|
40
|
-
* This is the content of all `BaseURL` elements encountered in this MPD node,
|
|
41
|
-
* from the first encountered to the last encountered.
|
|
42
|
-
*/
|
|
43
|
-
baseURLs : IBaseUrlIntermediateRepresentation[];
|
|
44
|
-
/**
|
|
45
|
-
* Location(s) at which the Manifest can be refreshed.
|
|
46
|
-
*
|
|
47
|
-
* This is the content of all `Location` elements encountered in this MPD
|
|
48
|
-
* node,
|
|
49
|
-
* from the first encountered to the last encountered.
|
|
50
|
-
*/
|
|
51
|
-
locations : string[];
|
|
52
|
-
/**
|
|
53
|
-
* Temporal subdivisions in that Manifest.
|
|
54
|
-
*
|
|
55
|
-
* This is the content of all `Period` elements encountered in this MPD node,
|
|
56
|
-
* from the first encountered to the last encountered.
|
|
57
|
-
*/
|
|
58
|
-
periods : IPeriodIntermediateRepresentation[];
|
|
59
|
-
/**
|
|
60
|
-
* Gives way to synchronize a clock to the server time.
|
|
61
|
-
*
|
|
62
|
-
* This is the content of all `UTCTiming` elements encountered in this MPD
|
|
63
|
-
* node, from the first encountered to the last encountered.
|
|
64
|
-
*/
|
|
65
|
-
utcTimings : IScheme[];
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/* Intermediate representation for the root's attributes. */
|
|
69
|
-
export interface IMPDAttributes {
|
|
70
|
-
/**
|
|
71
|
-
* value of the `id` attribute.
|
|
72
|
-
* `undefined` if no `id` attribute was found on this MPD node.
|
|
73
|
-
*/
|
|
74
|
-
id? : string;
|
|
75
|
-
/**
|
|
76
|
-
* value of the `profiles` attribute.
|
|
77
|
-
* `undefined` if no `profiles` attribute was found on this MPD node.
|
|
78
|
-
*/
|
|
79
|
-
profiles? : string;
|
|
80
|
-
/**
|
|
81
|
-
* value of the `type` attribute.
|
|
82
|
-
* `undefined` if no `id` attribute was found on this MPD node.
|
|
83
|
-
*/
|
|
84
|
-
type? : string;
|
|
85
|
-
availabilityStartTime? : number;
|
|
86
|
-
availabilityEndTime? : number;
|
|
87
|
-
publishTime? : number;
|
|
88
|
-
duration? : number; // mediaPresentationDuration
|
|
89
|
-
minimumUpdatePeriod? : number;
|
|
90
|
-
minBufferTime? : number;
|
|
91
|
-
timeShiftBufferDepth? : number;
|
|
92
|
-
suggestedPresentationDelay? : number;
|
|
93
|
-
maxSegmentDuration? : number;
|
|
94
|
-
maxSubsegmentDuration? : number;
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* XML namespaces linked to the `<MPD>` element.
|
|
98
|
-
*
|
|
99
|
-
* This property is only needed when the EventStream's `<Event>` elements are
|
|
100
|
-
* not parsed through the browser's DOMParser API, and thus might depend on
|
|
101
|
-
* parent namespaces to be parsed correctly.
|
|
102
|
-
*/
|
|
103
|
-
namespaces? : Array<{ key: string;
|
|
104
|
-
value: string; }>;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
/** Intermediate representation of an encountered Period node. */
|
|
108
|
-
export interface IPeriodIntermediateRepresentation {
|
|
109
|
-
/** Children nodes for that Representation node. */
|
|
110
|
-
children : IPeriodChildren;
|
|
111
|
-
/** Attributes on that Representation nodes. */
|
|
112
|
-
attributes : IPeriodAttributes;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
/** Intermediate representation for a Period node's children nodes. */
|
|
116
|
-
export interface IPeriodChildren {
|
|
117
|
-
/**
|
|
118
|
-
* Available "tracks" in that Period.
|
|
119
|
-
*
|
|
120
|
-
* This is the content of all `AdaptationSet` elements encountered in this
|
|
121
|
-
* node, from the first encountered to the last encountered.
|
|
122
|
-
*/
|
|
123
|
-
adaptations : IAdaptationSetIntermediateRepresentation[];
|
|
124
|
-
/**
|
|
125
|
-
* Root URL on which further relative URLs make reference.
|
|
126
|
-
*
|
|
127
|
-
* This is the content of all `BaseURL` elements encountered in this node,
|
|
128
|
-
* from the first encountered to the last encountered.
|
|
129
|
-
*/
|
|
130
|
-
baseURLs : IBaseUrlIntermediateRepresentation[];
|
|
131
|
-
/**
|
|
132
|
-
* Provide a template with which we will be able to request segments.
|
|
133
|
-
*/
|
|
134
|
-
segmentTemplate? : ISegmentTemplateIntermediateRepresentation | undefined;
|
|
135
|
-
/**
|
|
136
|
-
* Allows to signal events linked to this Period.
|
|
137
|
-
*
|
|
138
|
-
* This is the content of all `EventStream` elements encountered in this
|
|
139
|
-
* node, from the first encountered to the last encountered.
|
|
140
|
-
*/
|
|
141
|
-
eventStreams : IEventStreamIntermediateRepresentation[];
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
/* Intermediate representation for A Period node's attributes. */
|
|
145
|
-
export interface IPeriodAttributes {
|
|
146
|
-
/**
|
|
147
|
-
* value of the `id` attribute.
|
|
148
|
-
* `undefined` if no `id` attribute was found on this Period node.
|
|
149
|
-
*/
|
|
150
|
-
id? : string;
|
|
151
|
-
/**
|
|
152
|
-
* value of the `start` attribute, converted into an integer.
|
|
153
|
-
* `undefined` if no `id` attribute was found on this Period node or if we
|
|
154
|
-
* could not parse it.
|
|
155
|
-
*/
|
|
156
|
-
start? : number;
|
|
157
|
-
/**
|
|
158
|
-
* value of the `duration` attribute, converted into an integer.
|
|
159
|
-
* `undefined` if no `id` attribute was found on this Period node or if we
|
|
160
|
-
* could not parse it.
|
|
161
|
-
*/
|
|
162
|
-
duration? : number;
|
|
163
|
-
bitstreamSwitching? : boolean;
|
|
164
|
-
availabilityTimeComplete?: boolean;
|
|
165
|
-
availabilityTimeOffset?: number;
|
|
166
|
-
xlinkHref? : string;
|
|
167
|
-
xlinkActuate? : string;
|
|
168
|
-
|
|
169
|
-
/**
|
|
170
|
-
* XML namespaces linked to the `<Period>` element.
|
|
171
|
-
*
|
|
172
|
-
* This property is only needed when the EventStream's `<Event>` elements are
|
|
173
|
-
* not parsed through the browser's DOMParser API, and thus might depend on
|
|
174
|
-
* parent namespaces to be parsed correctly.
|
|
175
|
-
*/
|
|
176
|
-
namespaces? : Array<{ key: string;
|
|
177
|
-
value: string; }>;
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
/** AdaptationSet once parsed into its intermediate representation. */
|
|
181
|
-
export interface IAdaptationSetIntermediateRepresentation {
|
|
182
|
-
children : IAdaptationSetChildren;
|
|
183
|
-
attributes : IAdaptationSetAttributes;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
export interface IAdaptationSetChildren {
|
|
187
|
-
// required
|
|
188
|
-
baseURLs : IBaseUrlIntermediateRepresentation[];
|
|
189
|
-
representations : IRepresentationIntermediateRepresentation[];
|
|
190
|
-
|
|
191
|
-
// optional
|
|
192
|
-
accessibilities? : IScheme[] | undefined;
|
|
193
|
-
contentComponent? : IContentComponentAttributes | undefined;
|
|
194
|
-
contentProtections? : IContentProtectionIntermediateRepresentation[] | undefined;
|
|
195
|
-
essentialProperties? : IScheme[] | undefined;
|
|
196
|
-
inbandEventStreams? : IScheme[] | undefined;
|
|
197
|
-
roles? : IScheme[];
|
|
198
|
-
supplementalProperties? : IScheme[] | undefined;
|
|
199
|
-
|
|
200
|
-
segmentBase? : ISegmentBaseIntermediateRepresentation | undefined;
|
|
201
|
-
segmentList? : ISegmentListIntermediateRepresentation | undefined;
|
|
202
|
-
segmentTemplate? : ISegmentTemplateIntermediateRepresentation | undefined;
|
|
203
|
-
label? : string | undefined;
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
/* Intermediate representation for An AdaptationSet node's attributes. */
|
|
207
|
-
export interface IAdaptationSetAttributes {
|
|
208
|
-
audioSamplingRate? : string;
|
|
209
|
-
bitstreamSwitching? : boolean;
|
|
210
|
-
codecs? : string;
|
|
211
|
-
codingDependency? : boolean;
|
|
212
|
-
contentType? : string;
|
|
213
|
-
frameRate? : string;
|
|
214
|
-
group? : number;
|
|
215
|
-
height? : number;
|
|
216
|
-
id? : string;
|
|
217
|
-
language? : string;
|
|
218
|
-
maxBitrate? : number;
|
|
219
|
-
maxFrameRate? : string;
|
|
220
|
-
maxHeight? : number;
|
|
221
|
-
maxPlayoutRate? : number;
|
|
222
|
-
maxWidth? : number;
|
|
223
|
-
maximumSAPPeriod? : number;
|
|
224
|
-
mimeType? : string;
|
|
225
|
-
minBitrate? : number;
|
|
226
|
-
minFrameRate? : string;
|
|
227
|
-
minHeight? : number;
|
|
228
|
-
minWidth? : number;
|
|
229
|
-
par? : string;
|
|
230
|
-
profiles? : string;
|
|
231
|
-
selectionPriority? : number;
|
|
232
|
-
segmentAlignment? : number|boolean;
|
|
233
|
-
segmentProfiles? : string;
|
|
234
|
-
subsegmentAlignment? : number|boolean;
|
|
235
|
-
supplementalCodecs?: string;
|
|
236
|
-
width? : number;
|
|
237
|
-
availabilityTimeComplete?: boolean;
|
|
238
|
-
availabilityTimeOffset?: number;
|
|
239
|
-
label?: string;
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
export interface IRepresentationIntermediateRepresentation {
|
|
243
|
-
children : IRepresentationChildren;
|
|
244
|
-
attributes : IRepresentationAttributes;
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
export interface IRepresentationChildren {
|
|
248
|
-
// required
|
|
249
|
-
baseURLs : IBaseUrlIntermediateRepresentation[];
|
|
250
|
-
|
|
251
|
-
// optional
|
|
252
|
-
contentProtections? : IContentProtectionIntermediateRepresentation[];
|
|
253
|
-
inbandEventStreams? : IScheme[];
|
|
254
|
-
segmentBase? : ISegmentBaseIntermediateRepresentation;
|
|
255
|
-
segmentList? : ISegmentListIntermediateRepresentation;
|
|
256
|
-
segmentTemplate? : ISegmentTemplateIntermediateRepresentation;
|
|
257
|
-
supplementalProperties? : IScheme[] | undefined;
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
/* Intermediate representation for A Representation node's attributes. */
|
|
261
|
-
export interface IRepresentationAttributes {
|
|
262
|
-
audioSamplingRate? : string;
|
|
263
|
-
bitrate? : number;
|
|
264
|
-
codecs? : string;
|
|
265
|
-
codingDependency? : boolean;
|
|
266
|
-
frameRate? : string;
|
|
267
|
-
height? : number;
|
|
268
|
-
id? : string;
|
|
269
|
-
maxPlayoutRate? : number;
|
|
270
|
-
maximumSAPPeriod? : number;
|
|
271
|
-
mimeType? : string;
|
|
272
|
-
profiles? : string;
|
|
273
|
-
qualityRanking? : number;
|
|
274
|
-
segmentProfiles? : string;
|
|
275
|
-
supplementalCodecs?: string;
|
|
276
|
-
width? : number;
|
|
277
|
-
availabilityTimeComplete?: boolean;
|
|
278
|
-
availabilityTimeOffset?: number;
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
export interface ISegmentBaseIntermediateRepresentation {
|
|
282
|
-
availabilityTimeComplete?: boolean;
|
|
283
|
-
availabilityTimeOffset?: number;
|
|
284
|
-
duration? : number;
|
|
285
|
-
indexRange?: [number, number];
|
|
286
|
-
indexRangeExact?: boolean;
|
|
287
|
-
initialization?: IInitializationAttributes;
|
|
288
|
-
media?: string;
|
|
289
|
-
presentationTimeOffset?: number;
|
|
290
|
-
startNumber? : number;
|
|
291
|
-
endNumber? : number;
|
|
292
|
-
timescale?: number;
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
export interface ISegmentListIntermediateRepresentation {
|
|
296
|
-
list: ISegmentUrlIntermediateRepresentation[];
|
|
297
|
-
availabilityTimeComplete?: boolean;
|
|
298
|
-
availabilityTimeOffset?: number;
|
|
299
|
-
duration? : number;
|
|
300
|
-
indexRange?: [number, number];
|
|
301
|
-
indexRangeExact?: boolean;
|
|
302
|
-
initialization?: IInitializationAttributes;
|
|
303
|
-
media?: string;
|
|
304
|
-
presentationTimeOffset?: number;
|
|
305
|
-
startNumber? : number;
|
|
306
|
-
endNumber? : number;
|
|
307
|
-
timescale?: number;
|
|
308
|
-
}
|
|
309
|
-
|
|
310
|
-
export interface ISegmentUrlIntermediateRepresentation {
|
|
311
|
-
media?: string;
|
|
312
|
-
mediaRange?: [number, number];
|
|
313
|
-
index?: string;
|
|
314
|
-
indexRange?: [number, number];
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
export interface IInitializationAttributes {
|
|
318
|
-
range?: [number, number];
|
|
319
|
-
media?: string;
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
/** The ContentComponent once parsed. */
|
|
323
|
-
export interface IContentComponentAttributes {
|
|
324
|
-
id?: string;
|
|
325
|
-
language?: string;
|
|
326
|
-
contentType?: string;
|
|
327
|
-
par?: string;
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
export interface IContentProtectionIntermediateRepresentation {
|
|
331
|
-
children : IContentProtectionChildren;
|
|
332
|
-
attributes : IContentProtectionAttributes;
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
export interface IContentProtectionChildren {
|
|
336
|
-
cencPssh : Uint8Array[];
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
export interface IContentProtectionAttributes {
|
|
340
|
-
schemeIdUri? : string;
|
|
341
|
-
value? : string;
|
|
342
|
-
keyId? : Uint8Array;
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
export interface ISegmentTemplateIntermediateRepresentation {
|
|
346
|
-
availabilityTimeComplete? : boolean | undefined;
|
|
347
|
-
availabilityTimeOffset? : number | undefined;
|
|
348
|
-
bitstreamSwitching? : boolean | undefined;
|
|
349
|
-
duration? : number | undefined;
|
|
350
|
-
index? : string | undefined;
|
|
351
|
-
indexRange?: [number, number] | undefined;
|
|
352
|
-
indexRangeExact? : boolean | undefined;
|
|
353
|
-
media? : string | undefined;
|
|
354
|
-
presentationTimeOffset? : number | undefined;
|
|
355
|
-
startNumber? : number | undefined;
|
|
356
|
-
endNumber? : number | undefined;
|
|
357
|
-
timescale? : number | undefined;
|
|
358
|
-
initialization? : { media?: string } | undefined;
|
|
359
|
-
timeline? : ISegmentTimelineElement[] | undefined;
|
|
360
|
-
timelineParser? : ITimelineParser | undefined;
|
|
361
|
-
}
|
|
362
|
-
|
|
363
|
-
export interface ISegmentTimelineElement {
|
|
364
|
-
start : number;
|
|
365
|
-
duration : number;
|
|
366
|
-
repeatCount : number;
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
/** Intermediate representation for a BaseURL node. */
|
|
370
|
-
export interface IBaseUrlIntermediateRepresentation {
|
|
371
|
-
/**
|
|
372
|
-
* The URL itself.
|
|
373
|
-
*
|
|
374
|
-
* This is the inner content of a BaseURL node.
|
|
375
|
-
*/
|
|
376
|
-
value: string;
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
/** Intermediate representation for a Node following a "scheme" format. */
|
|
380
|
-
export interface IScheme {
|
|
381
|
-
/**
|
|
382
|
-
* Content of the `schemeIdUri` attribute for that scheme.
|
|
383
|
-
*
|
|
384
|
-
* `undefined` if no `schemeIdUri` attribute has been found.
|
|
385
|
-
*/
|
|
386
|
-
schemeIdUri? : string | undefined;
|
|
387
|
-
/** Inner content of that scheme. */
|
|
388
|
-
value? : string | undefined;
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
export interface IEventStreamIntermediateRepresentation {
|
|
392
|
-
/** Contains data about the element's children. */
|
|
393
|
-
children : IEventStreamChildren;
|
|
394
|
-
/** Contains data about the element's attributes. */
|
|
395
|
-
attributes : IEventStreamAttributes;
|
|
396
|
-
}
|
|
397
|
-
|
|
398
|
-
export interface IEventStreamAttributes {
|
|
399
|
-
schemeIdUri? : string | undefined;
|
|
400
|
-
timescale? : number | undefined;
|
|
401
|
-
value? : string | undefined;
|
|
402
|
-
|
|
403
|
-
/**
|
|
404
|
-
* XML namespaces linked to the `<EventStream>` element.
|
|
405
|
-
*
|
|
406
|
-
* This property is only needed when the EventStream's `<Event>` elements are
|
|
407
|
-
* not parsed through the browser's DOMParser API, and thus might depend on
|
|
408
|
-
* parent namespaces to be parsed correctly.
|
|
409
|
-
*/
|
|
410
|
-
namespaces? : Array<{ key: string; value: string }> | undefined;
|
|
411
|
-
}
|
|
412
|
-
|
|
413
|
-
export interface IEventStreamChildren {
|
|
414
|
-
events : IEventStreamEventIntermediateRepresentation[];
|
|
415
|
-
}
|
|
416
|
-
|
|
417
|
-
export interface IEventStreamEventIntermediateRepresentation {
|
|
418
|
-
id?: string;
|
|
419
|
-
presentationTime? : number;
|
|
420
|
-
duration? : number;
|
|
421
|
-
|
|
422
|
-
/**
|
|
423
|
-
* The `<Event>` element itself.
|
|
424
|
-
* Can be in two forms:
|
|
425
|
-
* - Either as an Element instance directly
|
|
426
|
-
* - Either as the Element's UTF-8 textual representation.
|
|
427
|
-
*/
|
|
428
|
-
eventStreamData? : Element | ArrayBuffer;
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
export type ITimelineParser = () => HTMLCollection;
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright 2015 CANAL+ Group
|
|
3
|
-
*
|
|
4
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
-
* you may not use this file except in compliance with the License.
|
|
6
|
-
* You may obtain a copy of the License at
|
|
7
|
-
*
|
|
8
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
-
*
|
|
10
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
-
* See the License for the specific language governing permissions and
|
|
14
|
-
* limitations under the License.
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
import { IParsedManifest } from "../types";
|
|
18
|
-
|
|
19
|
-
export { IMPDParserArguments } from "./common";
|
|
20
|
-
|
|
21
|
-
/** Response returned by a DASH MPD parser. */
|
|
22
|
-
export type IDashParserResponse<T extends string | ArrayBuffer> =
|
|
23
|
-
IDashParserNeedsResources<T> |
|
|
24
|
-
IDashParserResponseDone;
|
|
25
|
-
|
|
26
|
-
/** Response when the MPD parser has been able to parse the whole MPD. */
|
|
27
|
-
export interface IDashParserResponseDone {
|
|
28
|
-
/** Identify this type of response. */
|
|
29
|
-
type : "done";
|
|
30
|
-
value : {
|
|
31
|
-
/** The parsed MPD under a IParsedManifest format. */
|
|
32
|
-
parsed : IParsedManifest;
|
|
33
|
-
/** Non-fatal errors encountered when parsing the MPD. */
|
|
34
|
-
warnings : Error[];
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Response when the MPD parser needs to load some resources before continuing
|
|
40
|
-
* parsing the MPD.
|
|
41
|
-
*/
|
|
42
|
-
export interface IDashParserNeedsResources<T extends string | ArrayBuffer> {
|
|
43
|
-
/** Identify this type of response. */
|
|
44
|
-
type : "needs-resources";
|
|
45
|
-
value : {
|
|
46
|
-
/** The URLs of each needed resource. */
|
|
47
|
-
urls : string[];
|
|
48
|
-
/** The format under which all those resources should be loaded. */
|
|
49
|
-
format : T extends string ? "string" :
|
|
50
|
-
"arraybuffer";
|
|
51
|
-
/**
|
|
52
|
-
* Callback to call with the fetched resources data in argument to continue
|
|
53
|
-
* parsing the MPD.
|
|
54
|
-
*
|
|
55
|
-
* The element of the `loadedResources` array should be in the same order
|
|
56
|
-
* than the resources in the `urls` array.
|
|
57
|
-
*/
|
|
58
|
-
continue : (
|
|
59
|
-
loadedResources : Array<ILoadedResource<T>>
|
|
60
|
-
) => IDashParserResponse<string> | IDashParserResponse<ArrayBuffer>;
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
export type IResponseData<T> =
|
|
65
|
-
{ success: true; data: T } |
|
|
66
|
-
{ success: false; error: Error };
|
|
67
|
-
|
|
68
|
-
/** Format a loaded resource should take. */
|
|
69
|
-
export interface ILoadedResource<T extends string | ArrayBuffer> {
|
|
70
|
-
/**
|
|
71
|
-
* The URL of the loaded resource (post-redirection if one).
|
|
72
|
-
* `undefined` if unknown or inexistant.
|
|
73
|
-
*/
|
|
74
|
-
url? : string | undefined;
|
|
75
|
-
/**
|
|
76
|
-
* The time, in terms of `performance.now()`, at which the resource was
|
|
77
|
-
* starting to be fetched.
|
|
78
|
-
* `undefined` if unknown or not applicable.
|
|
79
|
-
*/
|
|
80
|
-
sendingTime? : number | undefined;
|
|
81
|
-
/**
|
|
82
|
-
* The time, in terms of `performance.now()`, at which the resource was
|
|
83
|
-
* fully-fetched.
|
|
84
|
-
* `undefined` if unknown or not applicable.
|
|
85
|
-
*/
|
|
86
|
-
receivedTime? : number | undefined;
|
|
87
|
-
/** The loaded resource itself, under the right format.
|
|
88
|
-
* Or an error, when fetching ressources.
|
|
89
|
-
*/
|
|
90
|
-
responseData : IResponseData<T>;
|
|
91
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# This file is automatically @generated by Cargo.
|
|
2
|
-
# It is not intended for manual editing.
|
|
3
|
-
version = 3
|
|
4
|
-
|
|
5
|
-
[[package]]
|
|
6
|
-
name = "memchr"
|
|
7
|
-
version = "2.3.4"
|
|
8
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
9
|
-
checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
|
|
10
|
-
|
|
11
|
-
[[package]]
|
|
12
|
-
name = "mpd-node-parser"
|
|
13
|
-
version = "0.1.0"
|
|
14
|
-
dependencies = [
|
|
15
|
-
"quick-xml",
|
|
16
|
-
]
|
|
17
|
-
|
|
18
|
-
[[package]]
|
|
19
|
-
name = "quick-xml"
|
|
20
|
-
version = "0.30.0"
|
|
21
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
22
|
-
checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956"
|
|
23
|
-
dependencies = [
|
|
24
|
-
"memchr",
|
|
25
|
-
]
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
[package]
|
|
2
|
-
name = "mpd-node-parser"
|
|
3
|
-
version = "0.1.0"
|
|
4
|
-
authors = ["Paul Berberian <pea.berberian@gmail.com>"]
|
|
5
|
-
edition = "2018"
|
|
6
|
-
|
|
7
|
-
[lib]
|
|
8
|
-
path = "rs/lib.rs"
|
|
9
|
-
crate-type = ["cdylib"]
|
|
10
|
-
|
|
11
|
-
[profile.release]
|
|
12
|
-
lto = true
|
|
13
|
-
opt-level = 3
|
|
14
|
-
|
|
15
|
-
[dependencies]
|
|
16
|
-
quick-xml = "0.30.0"
|