shaka-player 3.2.4 → 3.2.5
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/.csslintrc +11 -1
- package/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
- package/.github/workflows/build-and-test.yaml +130 -0
- package/.github/workflows/custom-actions/prep-for-appspot/action.yaml +56 -0
- package/.github/workflows/custom-actions/set-commit-status/action.yaml +41 -0
- package/.github/workflows/demo-version-index.yaml +29 -0
- package/.github/workflows/nightly-demo.yaml +42 -0
- package/.github/workflows/release-please.yaml +145 -0
- package/.github/workflows/safari-homedir-launcher.sh +18 -0
- package/.github/workflows/selenium-lab-tests.yaml +93 -0
- package/AUTHORS +2 -0
- package/CHANGELOG.md +1571 -1556
- package/CONTRIBUTING.md +2 -2
- package/CONTRIBUTORS +2 -0
- package/README.md +7 -7
- package/app-engine/README.md +9 -0
- package/app-engine/demo-version-index/README.md +14 -0
- package/app-engine/demo-version-index/app.yaml +2 -0
- package/app-engine/demo-version-index/main.py +162 -0
- package/app-engine/demo-version-index/requirements.txt +6 -0
- package/app-engine/demo-version-index/templates/index.html +114 -0
- package/app-engine/shaka-player-demo/README.md +18 -0
- package/app-engine/shaka-player-demo/app.yaml +61 -0
- package/app-engine/shaka-player-demo/main.py +95 -0
- package/app-engine/shaka-player-demo/posters/10yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/10yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/1yo.jpg +0 -0
- package/app-engine/shaka-player-demo/posters/2yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/2yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/3yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/3yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/4yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/4yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/5yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/5yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/6yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/6yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/7yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/7yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/8yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/8yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/9yo.png +0 -0
- package/app-engine/shaka-player-demo/posters/9yo.xcf +0 -0
- package/app-engine/shaka-player-demo/posters/audioOnly.gif +0 -0
- package/app-engine/shaka-player-demo/posters/audioRickRoll.gif +0 -0
- package/app-engine/shaka-player-demo/posters/colorbars.gif +0 -0
- package/app-engine/shaka-player-demo/posters/fireworks.jpg +0 -0
- package/app-engine/shaka-player-demo/posters/party-hat.png +0 -0
- package/app-engine/shaka-player-demo/posters/sources.txt +46 -0
- package/app-engine/shaka-player-demo/posters/standard.png +0 -0
- package/app-engine/shaka-player-demo/posters/trek.jpg +0 -0
- package/app-engine/shaka-player-demo/posters/valentines.png +0 -0
- package/app-engine/shaka-player-demo/posters/zombie.jpg +0 -0
- package/app-engine/shaka-player-demo/posters.py +110 -0
- package/app-engine/shaka-player-demo/requirements.txt +5 -0
- package/app-engine/shaka-player-demo/time.txt +1 -0
- package/build/README.md +1 -1
- package/build/conformance.textproto +13 -0
- package/build/docker/Dockerfile +20 -0
- package/build/docker/docker-compose.yml +10 -0
- package/build/gendeps.py +18 -15
- package/build/shaka-lab.yaml +163 -0
- package/build/shakaBuildHelpers.py +4 -29
- package/build/test.py +87 -28
- package/build/wrapper.template.js +2 -2
- package/demo/TengwarTelcontar.woff2 +0 -0
- package/demo/asset_card.js +1 -2
- package/demo/cast_receiver/index.html +1 -1
- package/demo/cast_receiver/receiver_app.css +14 -14
- package/demo/common/assets.js +2 -0
- package/demo/config.js +0 -1
- package/demo/custom.js +0 -1
- package/demo/customWarning.txt +2 -2
- package/demo/demo.less +29 -18
- package/demo/demo_uncompiled.js +1 -13
- package/demo/index.html +1 -1
- package/demo/main.js +3 -3
- package/dist/controls.css +2 -2
- package/dist/controls.css.map +1 -1
- package/dist/demo.compiled.debug.js +191 -194
- package/dist/demo.compiled.debug.map +4 -4
- package/dist/demo.compiled.js +191 -194
- package/dist/demo.compiled.map +4 -4
- package/dist/demo.css +1 -1
- package/dist/demo.css.map +1 -1
- package/dist/deps.js +225 -219
- package/dist/locales.js +28 -28
- package/dist/receiver.compiled.debug.js +43 -45
- package/dist/receiver.compiled.debug.map +4 -4
- package/dist/receiver.compiled.js +43 -45
- package/dist/receiver.compiled.map +4 -4
- package/dist/shaka-player.compiled.d.ts +224 -224
- package/dist/shaka-player.compiled.debug.d.ts +224 -224
- package/dist/shaka-player.compiled.debug.externs.js +4 -3
- package/dist/shaka-player.compiled.debug.js +294 -303
- package/dist/shaka-player.compiled.debug.map +4 -4
- package/dist/shaka-player.compiled.externs.js +4 -3
- package/dist/shaka-player.compiled.js +817 -822
- package/dist/shaka-player.compiled.map +4 -4
- package/dist/shaka-player.ui.d.ts +266 -266
- package/dist/shaka-player.ui.debug.d.ts +266 -266
- package/dist/shaka-player.ui.debug.externs.js +4 -3
- package/dist/shaka-player.ui.debug.js +220 -229
- package/dist/shaka-player.ui.debug.map +4 -4
- package/dist/shaka-player.ui.externs.js +4 -3
- package/dist/shaka-player.ui.js +964 -970
- package/dist/shaka-player.ui.map +4 -4
- package/docs/design/REDESIGN.md +33 -33
- package/docs/design/codec_preferences.md +1 -1
- package/docs/design/dash-audio-channels.md +3 -3
- package/docs/design/dash-manifests.md +1 -1
- package/docs/design/gap-jumping.md +3 -3
- package/docs/design/preload.md +2 -2
- package/docs/tutorials/faq.md +8 -8
- package/docs/tutorials/index.json +1 -0
- package/docs/tutorials/plugins.md +3 -3
- package/docs/tutorials/selenium-grid-config.md +122 -0
- package/docs/tutorials/welcome.md +10 -2
- package/karma.conf.js +137 -30
- package/lib/abr/simple_abr_manager.js +12 -6
- package/lib/cast/cast_proxy.js +3 -4
- package/lib/cea/cea608_data_channel.js +2 -2
- package/lib/cea/cea708_service.js +5 -4
- package/lib/cea/mp4_cea_parser.js +11 -5
- package/lib/cea/sei_processor.js +6 -3
- package/lib/dash/dash_parser.js +9 -11
- package/lib/dash/mpd_utils.js +4 -5
- package/lib/dash/segment_list.js +1 -2
- package/lib/dash/segment_template.js +3 -3
- package/lib/hls/hls_parser.js +11 -9
- package/lib/hls/manifest_text_parser.js +3 -3
- package/lib/media/adaptation_set.js +1 -2
- package/lib/media/content_workarounds.js +2 -2
- package/lib/media/drm_engine.js +3 -2
- package/lib/media/media_source_engine.js +3 -2
- package/lib/media/mp4_segment_index_parser.js +1 -4
- package/lib/media/playhead.js +2 -2
- package/lib/media/presentation_timeline.js +18 -8
- package/lib/media/streaming_engine.js +6 -6
- package/lib/media/time_ranges_utils.js +1 -3
- package/lib/media/video_wrapper.js +1 -1
- package/lib/net/networking_engine.js +1 -1
- package/lib/offline/storage.js +4 -4
- package/lib/player.js +34 -16
- package/lib/polyfill/all.js +2 -3
- package/lib/polyfill/encryption_scheme.js +1 -1
- package/lib/polyfill/media_capabilities.js +3 -3
- package/lib/polyfill/mediasource.js +1 -1
- package/lib/text/cue.js +1 -1
- package/lib/text/simple_text_displayer.js +2 -1
- package/lib/text/ttml_text_parser.js +8 -5
- package/lib/text/ui_text_displayer.js +1 -1
- package/lib/util/buffer_utils.js +1 -3
- package/lib/util/ebml_parser.js +3 -3
- package/lib/util/error.js +1 -1
- package/lib/util/iterables.js +0 -46
- package/lib/util/mp4_box_parsers.js +1 -4
- package/lib/util/mp4_parser.js +5 -7
- package/lib/util/periods.js +8 -9
- package/lib/util/platform.js +3 -3
- package/lib/util/pssh.js +1 -4
- package/lib/util/stream_utils.js +4 -3
- package/lib/util/string_utils.js +3 -5
- package/lib/util/uint8array_utils.js +3 -5
- package/lib/util/xml_utils.js +15 -7
- package/package.json +61 -36
- package/roadmap.md +17 -17
- package/test/abr/simple_abr_manager_unit.js +3 -8
- package/test/ads/ad_manager_unit.js +0 -6
- package/test/cast/cast_proxy_unit.js +0 -8
- package/test/cast/cast_receiver_integration.js +1 -18
- package/test/cast/cast_receiver_unit.js +1 -9
- package/test/cast/cast_sender_unit.js +0 -6
- package/test/cast/cast_utils_unit.js +0 -13
- package/test/cea/cea608_memory_unit.js +0 -5
- package/test/cea/cea708_service_unit.js +0 -7
- package/test/cea/cea708_window_unit.js +0 -5
- package/test/cea/cea_decoder_unit.js +0 -6
- package/test/cea/dtvcc_packet_builder_unit.js +0 -3
- package/test/cea/dtvcc_packet_unit.js +0 -5
- package/test/cea/mp4_cea_parser_unit.js +0 -4
- package/test/dash/dash_parser_content_protection_unit.js +1 -10
- package/test/dash/dash_parser_live_unit.js +2 -15
- package/test/dash/dash_parser_manifest_unit.js +2 -16
- package/test/dash/dash_parser_segment_base_unit.js +1 -8
- package/test/dash/dash_parser_segment_list_unit.js +1 -7
- package/test/dash/dash_parser_segment_template_unit.js +0 -9
- package/test/dash/mpd_utils_unit.js +3 -11
- package/test/demo/demo_unit.js +0 -5
- package/test/deprecate/enforcer_unit.js +0 -4
- package/test/deprecate/version_unit.js +0 -2
- package/test/hls/hls_live_unit.js +2 -14
- package/test/hls/hls_parser_unit.js +2 -15
- package/test/hls/manifest_text_parser_unit.js +0 -10
- package/test/media/adaptation_set_criteria_unit.js +3 -7
- package/test/media/adaptation_set_unit.js +0 -2
- package/test/media/buffering_observer_unit.js +1 -4
- package/test/media/closed_caption_parser_unit.js +0 -3
- package/test/media/drm_engine_integration.js +2 -15
- package/test/media/drm_engine_unit.js +4 -24
- package/test/media/manifest_parser_unit.js +0 -4
- package/test/media/media_source_engine_integration.js +0 -7
- package/test/media/media_source_engine_unit.js +1 -14
- package/test/media/mp4_segment_index_parser_unit.js +0 -4
- package/test/media/play_rate_controller_unit.js +0 -4
- package/test/media/playhead_unit.js +8 -16
- package/test/media/presentation_timeline_unit.js +4 -7
- package/test/media/region_observer_unit.js +1 -6
- package/test/media/region_timeline_unit.js +0 -3
- package/test/media/segment_index_unit.js +0 -6
- package/test/media/segment_reference_unit.js +0 -3
- package/test/media/stall_detector_unit.js +0 -5
- package/test/media/streaming_engine_integration.js +9 -36
- package/test/media/streaming_engine_unit.js +11 -35
- package/test/media/time_ranges_utils_unit.js +0 -2
- package/test/media/transmuxer_integration.js +0 -6
- package/test/media/webm_segment_index_parser_unit.js +0 -4
- package/test/net/data_uri_plugin_unit.js +0 -7
- package/test/net/http_plugin_unit.js +0 -9
- package/test/net/networking_engine_unit.js +0 -11
- package/test/offline/download_progress_estimator_unit.js +0 -2
- package/test/offline/indexeddb_storage_unit.js +0 -6
- package/test/offline/manifest_convert_unit.js +0 -8
- package/test/offline/offline_integration.js +1 -10
- package/test/offline/offline_manifest_parser_unit.js +0 -6
- package/test/offline/offline_scheme_unit.js +0 -8
- package/test/offline/offline_uri_unit.js +0 -2
- package/test/offline/storage_compatibility_unit.js +1 -14
- package/test/offline/storage_integration.js +1 -25
- package/test/player_external.js +2 -10
- package/test/player_integration.js +21 -28
- package/test/player_load_graph_integration.js +1 -6
- package/test/player_src_equals_external.js +3 -9
- package/test/player_src_equals_integration.js +0 -7
- package/test/player_unit.js +52 -37
- package/test/routing/walker_unit.js +0 -8
- package/test/test/assets/large_file.mpd +1 -1
- package/test/test/boot.js +75 -22
- package/test/test/externs/jasmine.js +2 -2
- package/test/test/externs/karma.js +4 -0
- package/test/test/namespace.js +10 -0
- package/test/test/util/canned_idb.js +0 -8
- package/test/test/util/cea_utils.js +0 -6
- package/test/test/util/dash_parser_util.js +0 -13
- package/test/test/util/fake_ad.js +0 -3
- package/test/test/util/fake_ad_manager.js +0 -9
- package/test/test/util/fake_demo_main.js +0 -5
- package/test/test/util/fake_drm_engine.js +0 -6
- package/test/test/util/fake_media_source_engine.js +0 -7
- package/test/test/util/fake_networking_engine.js +0 -5
- package/test/test/util/fake_text_displayer.js +0 -5
- package/test/test/util/indexeddb_utils.js +1 -10
- package/test/test/util/jasmine_fetch.js +0 -1
- package/test/test/util/loader.js +0 -18
- package/test/test/util/manifest_generator.js +9 -14
- package/test/test/util/manifest_parser_util.js +0 -6
- package/test/test/util/offline_utils.js +0 -5
- package/test/test/util/simple_fakes.js +9 -26
- package/test/test/util/stream_generator.js +0 -14
- package/test/test/util/streaming_engine_util.js +0 -15
- package/test/test/util/test_scheme.js +1 -19
- package/test/test/util/ttml_utils.js +0 -2
- package/test/test/util/ui_utils.js +0 -9
- package/test/test/util/util.js +5 -19
- package/test/test/util/waiter.js +84 -43
- package/test/text/cue_integration.js +0 -4
- package/test/text/lrc_text_parser_unit.js +0 -4
- package/test/text/mp4_ttml_parser_unit.js +0 -6
- package/test/text/mp4_vtt_parser_unit.js +1 -7
- package/test/text/sbv_text_parser_unit.js +0 -4
- package/test/text/simple_text_displayer_unit.js +1 -8
- package/test/text/srt_text_parser_unit.js +0 -4
- package/test/text/ssa_text_parser_unit.js +0 -5
- package/test/text/text_engine_unit.js +2 -7
- package/test/text/text_track_integration.js +0 -2
- package/test/text/ttml_text_parser_unit.js +2 -11
- package/test/text/ui_text_displayer_unit.js +44 -41
- package/test/text/vtt_text_parser_unit.js +0 -9
- package/test/text/web_vtt_generator_unit.js +0 -3
- package/test/ui/ad_ui_unit.js +0 -11
- package/test/ui/localization_unit.js +0 -3
- package/test/ui/text_displayer_layout_unit.js +1 -12
- package/test/ui/ui_customization_unit.js +0 -6
- package/test/ui/ui_integration.js +0 -16
- package/test/ui/ui_unit.js +1 -17
- package/test/util/abortable_operation_unit.js +4 -9
- package/test/util/array_utils_unit.js +0 -2
- package/test/util/buffer_utils_unit.js +0 -2
- package/test/util/data_view_reader_unit.js +0 -4
- package/test/util/ebml_parser_unit.js +0 -4
- package/test/util/event_manager_unit.js +0 -3
- package/test/util/fake_event_target_unit.js +0 -5
- package/test/util/functional_unit.js +1 -1
- package/test/util/iterables_unit.js +0 -64
- package/test/util/language_utils_unit.js +0 -3
- package/test/util/manifest_parser_utils_unit.js +0 -2
- package/test/util/mp4_box_parsers_unit.js +0 -5
- package/test/util/mp4_parser_unit.js +0 -4
- package/test/util/multi_map_unit.js +0 -3
- package/test/util/object_utils_unit.js +0 -2
- package/test/util/periods_unit.js +14 -7
- package/test/util/pssh_unit.js +0 -5
- package/test/util/state_history_unit.js +0 -2
- package/test/util/stream_utils_unit.js +3 -8
- package/test/util/string_utils_unit.js +0 -6
- package/test/util/text_parser_unit.js +0 -2
- package/test/util/xml_utils_unit.js +0 -4
- package/ui/less/ad_controls.less +4 -4
- package/ui/less/buttons.less +5 -5
- package/ui/less/containers.less +5 -7
- package/ui/less/overflow_menu.less +4 -4
- package/ui/less/range_elements.less +5 -0
- package/ui/locales/sjn-translations.yaml +257 -0
- package/ui/locales/sjn.json +42 -0
- package/.github/workflows/build_and_test.yaml +0 -73
- package/.github/workflows/release.yaml +0 -53
- package/externs/svgelement.js +0 -18
|
@@ -4,14 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cast.CastReceiver');
|
|
8
|
-
goog.require('shaka.cast.CastUtils');
|
|
9
|
-
goog.require('shaka.test.FakeVideo');
|
|
10
|
-
goog.require('shaka.test.Util');
|
|
11
|
-
goog.require('shaka.util.Error');
|
|
12
|
-
goog.require('shaka.util.Platform');
|
|
13
|
-
goog.require('shaka.util.PublicPromise');
|
|
14
|
-
|
|
15
7
|
// The receiver is only meant to run on the Chromecast, so we have the
|
|
16
8
|
// ability to use modern APIs there that may not be available on all of the
|
|
17
9
|
// browsers our library supports. Because of this, CastReceiver tests will
|
|
@@ -756,7 +748,7 @@ filterDescribe('CastReceiver', castReceiverSupport, () => {
|
|
|
756
748
|
expect(mockGenericMessageBus.broadcast).toHaveBeenCalledTimes(1);
|
|
757
749
|
|
|
758
750
|
// This covers the lack of scrubber in the Google Home app, as described
|
|
759
|
-
// in https://github.com/
|
|
751
|
+
// in https://github.com/shaka-project/shaka-player/issues/2606
|
|
760
752
|
expectMediaInfo('URI A', 1);
|
|
761
753
|
});
|
|
762
754
|
|
|
@@ -4,12 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cast.CastSender');
|
|
8
|
-
goog.require('shaka.cast.CastUtils');
|
|
9
|
-
goog.require('shaka.test.StatusPromise');
|
|
10
|
-
goog.require('shaka.test.Util');
|
|
11
|
-
goog.require('shaka.util.Error');
|
|
12
|
-
|
|
13
7
|
describe('CastSender', () => {
|
|
14
8
|
const CastSender = shaka.cast.CastSender;
|
|
15
9
|
const CastUtils = shaka.cast.CastUtils;
|
|
@@ -4,19 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.Player');
|
|
8
|
-
goog.require('shaka.cast.CastUtils');
|
|
9
|
-
goog.require('shaka.media.MediaSourceEngine');
|
|
10
|
-
goog.require('shaka.media.TimeRangesUtils');
|
|
11
|
-
goog.require('shaka.test.FakeClosedCaptionParser');
|
|
12
|
-
goog.require('shaka.test.FakeTextDisplayer');
|
|
13
|
-
goog.require('shaka.test.UiUtils');
|
|
14
|
-
goog.require('shaka.test.Util');
|
|
15
|
-
goog.require('shaka.util.EventManager');
|
|
16
|
-
goog.require('shaka.util.FakeEvent');
|
|
17
|
-
goog.require('shaka.util.FakeEventTarget');
|
|
18
|
-
goog.require('shaka.util.ManifestParserUtils');
|
|
19
|
-
|
|
20
7
|
describe('CastUtils', () => {
|
|
21
8
|
const CastUtils = shaka.cast.CastUtils;
|
|
22
9
|
const FakeEvent = shaka.util.FakeEvent;
|
|
@@ -4,11 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cea.Cea608Memory');
|
|
8
|
-
goog.require('shaka.cea.CeaUtils');
|
|
9
|
-
goog.require('shaka.test.CeaUtils');
|
|
10
|
-
goog.require('shaka.text.Cue');
|
|
11
|
-
|
|
12
7
|
describe('Cea608Memory', () => {
|
|
13
8
|
const CeaUtils = shaka.test.CeaUtils;
|
|
14
9
|
|
|
@@ -4,13 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cea.Cea708Service');
|
|
8
|
-
goog.require('shaka.cea.CeaUtils');
|
|
9
|
-
goog.require('shaka.cea.DtvccPacket');
|
|
10
|
-
goog.require('shaka.cea.DtvccPacketBuilder');
|
|
11
|
-
goog.require('shaka.test.CeaUtils');
|
|
12
|
-
goog.require('shaka.text.Cue');
|
|
13
|
-
|
|
14
7
|
describe('Cea708Service', () => {
|
|
15
8
|
const CeaUtils = shaka.test.CeaUtils;
|
|
16
9
|
|
|
@@ -4,11 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cea.Cea708Window');
|
|
8
|
-
goog.require('shaka.cea.CeaUtils');
|
|
9
|
-
goog.require('shaka.test.CeaUtils');
|
|
10
|
-
goog.require('shaka.text.Cue');
|
|
11
|
-
|
|
12
7
|
describe('Cea708Window', () => {
|
|
13
8
|
const CeaUtils = shaka.test.CeaUtils;
|
|
14
9
|
|
|
@@ -4,12 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cea.CeaDecoder');
|
|
8
|
-
goog.require('shaka.cea.CeaUtils');
|
|
9
|
-
goog.require('shaka.log');
|
|
10
|
-
goog.require('shaka.test.CeaUtils');
|
|
11
|
-
goog.require('shaka.text.Cue');
|
|
12
|
-
|
|
13
7
|
describe('CeaDecoder', () => {
|
|
14
8
|
const CeaUtils = shaka.test.CeaUtils;
|
|
15
9
|
|
|
@@ -4,11 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cea.DtvccPacket');
|
|
8
|
-
goog.require('shaka.cea.DtvccPacketBuilder');
|
|
9
|
-
goog.require('shaka.test.Util');
|
|
10
|
-
goog.require('shaka.util.Error');
|
|
11
|
-
|
|
12
7
|
describe('DtvccPacket', () => {
|
|
13
8
|
/** @type {!shaka.cea.DtvccPacket} */
|
|
14
9
|
let dtvccPacket;
|
|
@@ -4,10 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.cea.Mp4CeaParser');
|
|
8
|
-
goog.require('shaka.test.Util');
|
|
9
|
-
goog.require('shaka.util.Error');
|
|
10
|
-
|
|
11
7
|
describe('Mp4CeaParser', () => {
|
|
12
8
|
const ceaInitSegmentUri = '/base/test/test/assets/cea-init.mp4';
|
|
13
9
|
const ceaSegmentUri = '/base/test/test/assets/cea-segment.mp4';
|
|
@@ -4,15 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.dash.ContentProtection');
|
|
8
|
-
goog.require('shaka.dash.DashParser');
|
|
9
|
-
goog.require('shaka.test.Dash');
|
|
10
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
11
|
-
goog.require('shaka.util.Error');
|
|
12
|
-
goog.require('shaka.util.Iterables');
|
|
13
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
14
|
-
goog.require('shaka.util.Uint8ArrayUtils');
|
|
15
|
-
|
|
16
7
|
// Test DRM-related parsing.
|
|
17
8
|
describe('DashParser ContentProtection', () => {
|
|
18
9
|
const Dash = shaka.test.Dash;
|
|
@@ -140,7 +131,7 @@ describe('DashParser ContentProtection', () => {
|
|
|
140
131
|
|
|
141
132
|
const variants = [];
|
|
142
133
|
const numVariants = 2;
|
|
143
|
-
for (
|
|
134
|
+
for (let i = 0; i < numVariants; i++) {
|
|
144
135
|
const variant = jasmine.objectContaining({
|
|
145
136
|
video: jasmine.objectContaining({
|
|
146
137
|
keyIds: new Set(keyIds[i] ? [keyIds[i]] : []),
|
|
@@ -4,19 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('goog.asserts');
|
|
8
|
-
goog.require('shaka.dash.DashParser');
|
|
9
|
-
goog.require('shaka.media.SegmentReference');
|
|
10
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
11
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
12
|
-
goog.require('shaka.test.ManifestParser');
|
|
13
|
-
goog.require('shaka.test.Util');
|
|
14
|
-
goog.require('shaka.util.AbortableOperation');
|
|
15
|
-
goog.require('shaka.util.Error');
|
|
16
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
17
|
-
goog.require('shaka.util.StringUtils');
|
|
18
|
-
goog.requireType('shaka.util.PublicPromise');
|
|
19
|
-
|
|
20
7
|
describe('DashParser Live', () => {
|
|
21
8
|
const Util = shaka.test.Util;
|
|
22
9
|
const ManifestParser = shaka.test.ManifestParser;
|
|
@@ -1128,8 +1115,8 @@ describe('DashParser Live', () => {
|
|
|
1128
1115
|
const liveEdge =
|
|
1129
1116
|
manifest.presentationTimeline.getSegmentAvailabilityEnd();
|
|
1130
1117
|
|
|
1131
|
-
// In https://github.com/
|
|
1132
|
-
// final segment failed an assertion and returned endTime == 0.
|
|
1118
|
+
// In https://github.com/shaka-project/shaka-player/issues/1204, a get on
|
|
1119
|
+
// the final segment failed an assertion and returned endTime == 0.
|
|
1133
1120
|
// Find the last segment by looking just before the live edge. Looking
|
|
1134
1121
|
// right on the live edge creates test flake, and the segments are 2
|
|
1135
1122
|
// seconds in duration.
|
|
@@ -4,21 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('goog.asserts');
|
|
8
|
-
goog.require('shaka.media.SegmentReference');
|
|
9
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
10
|
-
goog.require('shaka.test.Dash');
|
|
11
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
12
|
-
goog.require('shaka.test.ManifestGenerator');
|
|
13
|
-
goog.require('shaka.test.Util');
|
|
14
|
-
goog.require('shaka.util.AbortableOperation');
|
|
15
|
-
goog.require('shaka.util.Error');
|
|
16
|
-
goog.require('shaka.util.LanguageUtils');
|
|
17
|
-
goog.require('shaka.util.ManifestParserUtils');
|
|
18
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
19
|
-
goog.require('shaka.util.StringUtils');
|
|
20
|
-
goog.requireType('shaka.dash.DashParser');
|
|
21
|
-
|
|
22
7
|
// Test basic manifest parsing functionality.
|
|
23
8
|
describe('DashParser Manifest', () => {
|
|
24
9
|
const ContentType = shaka.util.ManifestParserUtils.ContentType;
|
|
@@ -1275,7 +1260,8 @@ describe('DashParser Manifest', () => {
|
|
|
1275
1260
|
});
|
|
1276
1261
|
|
|
1277
1262
|
it('handles bandwidth of 0 or missing', async () => {
|
|
1278
|
-
// Regression test for
|
|
1263
|
+
// Regression test for
|
|
1264
|
+
// https://github.com/shaka-project/shaka-player/issues/938
|
|
1279
1265
|
const source = [
|
|
1280
1266
|
'<MPD minBufferTime="PT75S">',
|
|
1281
1267
|
' <Period id="1" duration="PT30S">',
|
|
@@ -4,13 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('goog.asserts');
|
|
8
|
-
goog.require('shaka.test.Dash');
|
|
9
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
10
|
-
goog.require('shaka.test.Util');
|
|
11
|
-
goog.require('shaka.util.Error');
|
|
12
|
-
goog.requireType('shaka.dash.DashParser');
|
|
13
|
-
|
|
14
7
|
describe('DashParser SegmentBase', () => {
|
|
15
8
|
const Dash = shaka.test.Dash;
|
|
16
9
|
|
|
@@ -306,7 +299,7 @@ describe('DashParser SegmentBase', () => {
|
|
|
306
299
|
expect(reference.endTime).toBe(10); // would be 12 without PTO
|
|
307
300
|
});
|
|
308
301
|
|
|
309
|
-
// https://github.com/
|
|
302
|
+
// https://github.com/shaka-project/shaka-player/issues/3230
|
|
310
303
|
it('works with multi-Period with eviction', async () => {
|
|
311
304
|
const source = [
|
|
312
305
|
'<MPD mediaPresentationDuration="PT75S">',
|
|
@@ -4,12 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('goog.asserts');
|
|
8
|
-
goog.require('shaka.test.Dash');
|
|
9
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
10
|
-
goog.require('shaka.test.ManifestParser');
|
|
11
|
-
goog.require('shaka.util.Error');
|
|
12
|
-
|
|
13
7
|
describe('DashParser SegmentList', () => {
|
|
14
8
|
const Dash = shaka.test.Dash;
|
|
15
9
|
const ManifestParser = shaka.test.ManifestParser;
|
|
@@ -308,7 +302,7 @@ describe('DashParser SegmentList', () => {
|
|
|
308
302
|
});
|
|
309
303
|
});
|
|
310
304
|
|
|
311
|
-
// https://github.com/
|
|
305
|
+
// https://github.com/shaka-project/shaka-player/issues/3230
|
|
312
306
|
it('works with multi-Period with eviction', async () => {
|
|
313
307
|
const setFormat = [
|
|
314
308
|
' <AdaptationSet mimeType="video/mp4">',
|
|
@@ -4,15 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('goog.asserts');
|
|
8
|
-
goog.require('shaka.test.Dash');
|
|
9
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
10
|
-
goog.require('shaka.test.ManifestParser');
|
|
11
|
-
goog.require('shaka.test.Util');
|
|
12
|
-
goog.require('shaka.util.Error');
|
|
13
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
14
|
-
goog.requireType('shaka.dash.DashParser');
|
|
15
|
-
|
|
16
7
|
describe('DashParser SegmentTemplate', () => {
|
|
17
8
|
const Dash = shaka.test.Dash;
|
|
18
9
|
const ManifestParser = shaka.test.ManifestParser;
|
|
@@ -4,14 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.dash.MpdUtils');
|
|
8
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
9
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
10
|
-
goog.require('shaka.test.Util');
|
|
11
|
-
goog.require('shaka.util.Error');
|
|
12
|
-
goog.require('shaka.util.Iterables');
|
|
13
|
-
goog.requireType('shaka.util.PublicPromise');
|
|
14
|
-
|
|
15
7
|
describe('MpdUtils', () => {
|
|
16
8
|
const MpdUtils = shaka.dash.MpdUtils;
|
|
17
9
|
|
|
@@ -384,7 +376,7 @@ describe('MpdUtils', () => {
|
|
|
384
376
|
|
|
385
377
|
it('adjust start time w/ t missing', () => {
|
|
386
378
|
// No S@t is equivalent to t=0, which should use PTO to make negative.
|
|
387
|
-
// See https://github.com/
|
|
379
|
+
// See https://github.com/shaka-project/shaka-player/issues/2590
|
|
388
380
|
const timePoints = [
|
|
389
381
|
createTimePoint(null, 10, 0),
|
|
390
382
|
createTimePoint(10, 10, 0),
|
|
@@ -536,7 +528,7 @@ describe('MpdUtils', () => {
|
|
|
536
528
|
'<ToReplace xlink:href="https://xlink0" xlink:actuate="onLoad" />');
|
|
537
529
|
// Create a large but finite number of links, so this won't
|
|
538
530
|
// infinitely recurse if there isn't a depth limit.
|
|
539
|
-
for (
|
|
531
|
+
for (let i = 0; i < 20; i++) {
|
|
540
532
|
const key = 'https://xlink' + i;
|
|
541
533
|
const value = makeRecursiveXMLString(0, 'https://xlink' + (i + 1));
|
|
542
534
|
|
|
@@ -659,7 +651,7 @@ describe('MpdUtils', () => {
|
|
|
659
651
|
'<ToReplace xlink:href="https://xlink0" xlink:actuate="onLoad" />');
|
|
660
652
|
// Create a few links. This is few enough that it would succeed if we
|
|
661
653
|
// didn't abort it.
|
|
662
|
-
for (
|
|
654
|
+
for (let i = 0; i < 4; i++) {
|
|
663
655
|
const key = 'https://xlink' + i;
|
|
664
656
|
const value = makeRecursiveXMLString(0, 'https://xlink' + (i + 1));
|
|
665
657
|
|
package/test/demo/demo_unit.js
CHANGED
|
@@ -4,11 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.test.FakeDemoMain');
|
|
8
|
-
goog.require('shaka.test.Util');
|
|
9
|
-
goog.require('shaka.util.StringUtils');
|
|
10
|
-
goog.require('shakaDemo.MessageIds');
|
|
11
|
-
|
|
12
7
|
describe('Demo', () => {
|
|
13
8
|
beforeEach(() => {
|
|
14
9
|
// Make mock versions of misc third-party libraries.
|
|
@@ -4,10 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.deprecate.Enforcer');
|
|
8
|
-
goog.require('shaka.deprecate.Version');
|
|
9
|
-
goog.require('shaka.test.Util');
|
|
10
|
-
|
|
11
7
|
describe('Enforcer', () => {
|
|
12
8
|
const Enforcer = shaka.deprecate.Enforcer;
|
|
13
9
|
const Version = shaka.deprecate.Version;
|
|
@@ -4,18 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('goog.asserts');
|
|
8
|
-
goog.require('shaka.hls.HlsParser');
|
|
9
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
10
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
11
|
-
goog.require('shaka.test.ManifestParser');
|
|
12
|
-
goog.require('shaka.test.Util');
|
|
13
|
-
goog.require('shaka.util.Functional');
|
|
14
|
-
goog.require('shaka.util.Iterables');
|
|
15
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
16
|
-
goog.require('shaka.util.Uint8ArrayUtils');
|
|
17
|
-
goog.requireType('shaka.util.PublicPromise');
|
|
18
|
-
|
|
19
7
|
describe('HlsParser live', () => {
|
|
20
8
|
const ManifestParser = shaka.test.ManifestParser;
|
|
21
9
|
|
|
@@ -435,8 +423,8 @@ describe('HlsParser live', () => {
|
|
|
435
423
|
'#EXT-X-MAP:URI="init.mp4",BYTERANGE="616@0"\n',
|
|
436
424
|
'#EXT-X-MEDIA-SEQUENCE:0\n',
|
|
437
425
|
].join('');
|
|
438
|
-
|
|
439
|
-
|
|
426
|
+
|
|
427
|
+
for (let i = 0; i < 1000; i++) {
|
|
440
428
|
mediaWithManySegments += '#EXTINF:2,\n';
|
|
441
429
|
mediaWithManySegments += 'main.mp4\n';
|
|
442
430
|
}
|
|
@@ -4,19 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('goog.asserts');
|
|
8
|
-
goog.require('shaka.hls.HlsParser');
|
|
9
|
-
goog.require('shaka.log');
|
|
10
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
11
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
12
|
-
goog.require('shaka.test.ManifestGenerator');
|
|
13
|
-
goog.require('shaka.test.ManifestParser');
|
|
14
|
-
goog.require('shaka.test.Util');
|
|
15
|
-
goog.require('shaka.util.Error');
|
|
16
|
-
goog.require('shaka.util.ManifestParserUtils');
|
|
17
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
18
|
-
goog.require('shaka.util.Uint8ArrayUtils');
|
|
19
|
-
|
|
20
7
|
describe('HlsParser', () => {
|
|
21
8
|
const ContentType = shaka.util.ManifestParserUtils.ContentType;
|
|
22
9
|
const ManifestParser = shaka.test.ManifestParser;
|
|
@@ -2942,7 +2929,7 @@ describe('HlsParser', () => {
|
|
|
2942
2929
|
expect(audio0).toBe(audio1);
|
|
2943
2930
|
});
|
|
2944
2931
|
|
|
2945
|
-
// https://github.com/
|
|
2932
|
+
// https://github.com/shaka-project/shaka-player/issues/1664
|
|
2946
2933
|
it('correctly resolves relative playlist URIs', async () => {
|
|
2947
2934
|
const master = [
|
|
2948
2935
|
'#EXTM3U\n',
|
|
@@ -2985,7 +2972,7 @@ describe('HlsParser', () => {
|
|
|
2985
2972
|
expect(manifest.variants.length).toBe(1);
|
|
2986
2973
|
});
|
|
2987
2974
|
|
|
2988
|
-
// https://github.com/
|
|
2975
|
+
// https://github.com/shaka-project/shaka-player/issues/1908
|
|
2989
2976
|
it('correctly pairs variants with multiple video and audio', async () => {
|
|
2990
2977
|
const master = [
|
|
2991
2978
|
'#EXTM3U\n',
|
|
@@ -4,16 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
goog.require('shaka.hls.Attribute');
|
|
9
|
-
goog.require('shaka.hls.ManifestTextParser');
|
|
10
|
-
goog.require('shaka.hls.PlaylistType');
|
|
11
|
-
goog.require('shaka.hls.Segment');
|
|
12
|
-
goog.require('shaka.hls.Tag');
|
|
13
|
-
goog.require('shaka.test.Util');
|
|
14
|
-
goog.require('shaka.util.Error');
|
|
15
|
-
goog.require('shaka.util.StringUtils');
|
|
16
|
-
|
|
17
7
|
describe('ManifestTextParser', () => {
|
|
18
8
|
/** @type {!shaka.hls.ManifestTextParser} */
|
|
19
9
|
let parser;
|
|
@@ -4,10 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.media.PreferenceBasedCriteria');
|
|
8
|
-
goog.require('shaka.test.ManifestGenerator');
|
|
9
|
-
goog.requireType('shaka.media.AdaptationSet');
|
|
10
|
-
|
|
11
7
|
describe('AdaptationSetCriteria', () => {
|
|
12
8
|
describe('preference based selection', () => {
|
|
13
9
|
it('chooses variants in user\'s preferred language', () => {
|
|
@@ -84,7 +80,7 @@ describe('AdaptationSetCriteria', () => {
|
|
|
84
80
|
});
|
|
85
81
|
|
|
86
82
|
it('chooses only one role, even if none is preferred', () => {
|
|
87
|
-
// Regression test for https://github.com/
|
|
83
|
+
// Regression test for https://github.com/shaka-project/shaka-player/issues/949
|
|
88
84
|
const manifest = shaka.test.ManifestGenerator.generate((manifest) => {
|
|
89
85
|
manifest.addVariant(1, (variant) => {
|
|
90
86
|
variant.language = 'en';
|
|
@@ -136,7 +132,7 @@ describe('AdaptationSetCriteria', () => {
|
|
|
136
132
|
});
|
|
137
133
|
|
|
138
134
|
it('chooses only one role, even if all are primary', () => {
|
|
139
|
-
// Regression test for https://github.com/
|
|
135
|
+
// Regression test for https://github.com/shaka-project/shaka-player/issues/949
|
|
140
136
|
const manifest = shaka.test.ManifestGenerator.generate((manifest) => {
|
|
141
137
|
manifest.addVariant(1, (variant) => {
|
|
142
138
|
variant.language = 'en';
|
|
@@ -194,7 +190,7 @@ describe('AdaptationSetCriteria', () => {
|
|
|
194
190
|
});
|
|
195
191
|
|
|
196
192
|
it('chooses only one language, even if all are primary', () => {
|
|
197
|
-
// Regression test for https://github.com/
|
|
193
|
+
// Regression test for https://github.com/shaka-project/shaka-player/issues/918
|
|
198
194
|
const manifest = shaka.test.ManifestGenerator.generate((manifest) => {
|
|
199
195
|
manifest.addVariant(1, (variant) => {
|
|
200
196
|
variant.language = 'en';
|
|
@@ -4,9 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.media.BufferingObserver');
|
|
8
|
-
goog.require('shaka.util.Iterables');
|
|
9
|
-
|
|
10
7
|
describe('BufferingObserver', () => {
|
|
11
8
|
const BufferingObserver = shaka.media.BufferingObserver;
|
|
12
9
|
const State = shaka.media.BufferingObserver.State;
|
|
@@ -115,7 +112,7 @@ describe('BufferingObserver', () => {
|
|
|
115
112
|
/** @type {boolean} */
|
|
116
113
|
let changed;
|
|
117
114
|
|
|
118
|
-
for (
|
|
115
|
+
for (let lead = 0; lead < 5; lead++) {
|
|
119
116
|
changed = controller.update(lead, /* toEnd= */ false);
|
|
120
117
|
expect(changed).toBeFalsy();
|
|
121
118
|
}
|
|
@@ -4,9 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.media.ClosedCaptionParser');
|
|
8
|
-
goog.require('shaka.test.Util');
|
|
9
|
-
|
|
10
7
|
describe('ClosedCaptionParser', () => {
|
|
11
8
|
it('can handle empty caption packets', async () => {
|
|
12
9
|
const initSegment = await shaka.test.Util.fetch(
|
|
@@ -4,21 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.media.DrmEngine');
|
|
8
|
-
goog.require('shaka.media.MediaSourceEngine');
|
|
9
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
10
|
-
goog.require('shaka.test.FakeClosedCaptionParser');
|
|
11
|
-
goog.require('shaka.test.FakeTextDisplayer');
|
|
12
|
-
goog.require('shaka.test.ManifestGenerator');
|
|
13
|
-
goog.require('shaka.test.UiUtils');
|
|
14
|
-
goog.require('shaka.test.Util');
|
|
15
|
-
goog.require('shaka.test.Waiter');
|
|
16
|
-
goog.require('shaka.util.EventManager');
|
|
17
|
-
goog.require('shaka.util.ManifestParserUtils');
|
|
18
|
-
goog.require('shaka.util.Platform');
|
|
19
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
20
|
-
goog.require('shaka.util.PublicPromise');
|
|
21
|
-
|
|
22
7
|
describe('DrmEngine', () => {
|
|
23
8
|
const ContentType = shaka.util.ManifestParserUtils.ContentType;
|
|
24
9
|
|
|
@@ -271,6 +256,7 @@ describe('DrmEngine', () => {
|
|
|
271
256
|
video.play();
|
|
272
257
|
|
|
273
258
|
const waiter = new shaka.test.Waiter(eventManager).timeoutAfter(15);
|
|
259
|
+
waiter.setMediaSourceEngine(mediaSourceEngine);
|
|
274
260
|
await waiter.waitForMovement(video);
|
|
275
261
|
|
|
276
262
|
// Something should have played by now.
|
|
@@ -351,6 +337,7 @@ describe('DrmEngine', () => {
|
|
|
351
337
|
video.play();
|
|
352
338
|
|
|
353
339
|
const waiter = new shaka.test.Waiter(eventManager).timeoutAfter(15);
|
|
340
|
+
waiter.setMediaSourceEngine(mediaSourceEngine);
|
|
354
341
|
await waiter.waitForMovement(video);
|
|
355
342
|
|
|
356
343
|
// Something should have played by now.
|
|
@@ -4,26 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.log');
|
|
8
|
-
goog.require('shaka.media.DrmEngine');
|
|
9
|
-
goog.require('shaka.media.Transmuxer');
|
|
10
|
-
goog.require('shaka.net.DataUriPlugin');
|
|
11
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
12
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
13
|
-
goog.require('shaka.test.FakeVideo');
|
|
14
|
-
goog.require('shaka.test.ManifestGenerator');
|
|
15
|
-
goog.require('shaka.test.Util');
|
|
16
|
-
goog.require('shaka.util.AbortableOperation');
|
|
17
|
-
goog.require('shaka.util.BufferUtils');
|
|
18
|
-
goog.require('shaka.util.Error');
|
|
19
|
-
goog.require('shaka.util.Platform');
|
|
20
|
-
goog.require('shaka.util.PlayerConfiguration');
|
|
21
|
-
goog.require('shaka.util.Platform');
|
|
22
|
-
goog.require('shaka.util.PublicPromise');
|
|
23
|
-
goog.require('shaka.util.StringUtils');
|
|
24
|
-
goog.require('shaka.util.Uint8ArrayUtils');
|
|
25
|
-
|
|
26
|
-
|
|
27
7
|
describe('DrmEngine', () => {
|
|
28
8
|
const Util = shaka.test.Util;
|
|
29
9
|
|
|
@@ -925,7 +905,7 @@ describe('DrmEngine', () => {
|
|
|
925
905
|
.toHaveBeenCalledWith('cenc', initData1);
|
|
926
906
|
});
|
|
927
907
|
|
|
928
|
-
// https://github.com/
|
|
908
|
+
// https://github.com/shaka-project/shaka-player/issues/2754
|
|
929
909
|
it('ignores duplicate init data from newInitData', async () => {
|
|
930
910
|
/** @type {!Uint8Array} */
|
|
931
911
|
const initData = new Uint8Array(1);
|
|
@@ -1311,7 +1291,7 @@ describe('DrmEngine', () => {
|
|
|
1311
1291
|
expect(onKeyStatusSpy).toHaveBeenCalled();
|
|
1312
1292
|
});
|
|
1313
1293
|
|
|
1314
|
-
// See https://github.com/
|
|
1294
|
+
// See https://github.com/shaka-project/shaka-player/issues/1541
|
|
1315
1295
|
it('does not update public key statuses before callback', async () => {
|
|
1316
1296
|
await initAndAttach();
|
|
1317
1297
|
|
|
@@ -1349,7 +1329,7 @@ describe('DrmEngine', () => {
|
|
|
1349
1329
|
expect(keyIds.length).toBe(2);
|
|
1350
1330
|
});
|
|
1351
1331
|
|
|
1352
|
-
// See https://github.com/
|
|
1332
|
+
// See https://github.com/shaka-project/shaka-player/issues/1541
|
|
1353
1333
|
it('does not invoke callback until all sessions are loaded', async () => {
|
|
1354
1334
|
// Set up init data overrides in the manifest so that we get multiple
|
|
1355
1335
|
// sessions.
|
|
@@ -1962,7 +1942,7 @@ describe('DrmEngine', () => {
|
|
|
1962
1942
|
// this doesn't work if the session is not callable (no license request
|
|
1963
1943
|
// sent). So |session.closed| should never resolve and |session.close()|
|
|
1964
1944
|
// should be rejected and destroy() should still succeed.
|
|
1965
|
-
// https://github.com/
|
|
1945
|
+
// https://github.com/shaka-project/shaka-player/issues/664
|
|
1966
1946
|
await initAndAttach();
|
|
1967
1947
|
session1.closed = new shaka.util.PublicPromise();
|
|
1968
1948
|
session2.closed = new shaka.util.PublicPromise();
|
|
@@ -4,10 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
goog.require('shaka.media.ManifestParser');
|
|
8
|
-
goog.require('shaka.net.NetworkingEngine');
|
|
9
|
-
goog.require('shaka.test.FakeNetworkingEngine');
|
|
10
|
-
|
|
11
7
|
const testGetMimeType = async (expertedMimeType, contentType) => {
|
|
12
8
|
const netEngine = new shaka.test.FakeNetworkingEngine()
|
|
13
9
|
.setHeaders('dummy://foo', {'content-type': contentType});
|