shaka-player 4.4.3 → 4.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
- package/.github/workflows/release-please.yaml +2 -27
- package/AUTHORS +2 -0
- package/CHANGELOG.md +156 -39
- package/CODE_OF_CONDUCT.md +1 -1
- package/CONTRIBUTORS +2 -0
- package/README.md +54 -42
- package/demo/asset_card.js +18 -21
- package/demo/cast_receiver/index.html +0 -1
- package/demo/close_button.js +0 -3
- package/demo/common/asset.js +33 -22
- package/demo/common/assets.js +249 -60
- package/demo/config.js +219 -253
- package/demo/custom.js +88 -133
- package/demo/front.js +7 -10
- package/demo/index.html +19 -22
- package/demo/input.js +6 -11
- package/demo/input_container.js +8 -9
- package/demo/main.js +62 -126
- package/demo/search.js +29 -34
- package/demo/service_worker.js +0 -3
- package/demo/tooltip.js +3 -5
- package/demo/visualizer.js +3 -5
- package/demo/visualizer_button.js +1 -20
- package/dist/controls.css +1 -1
- package/dist/controls.css.map +1 -1
- package/dist/demo.compiled.debug.js +211 -228
- package/dist/demo.compiled.debug.map +4 -4
- package/dist/demo.compiled.js +211 -228
- package/dist/demo.compiled.map +4 -4
- package/dist/deps.js +42 -37
- package/dist/locales.js +34 -30
- package/dist/receiver.compiled.debug.js +64 -77
- package/dist/receiver.compiled.debug.map +4 -4
- package/dist/receiver.compiled.js +64 -77
- package/dist/receiver.compiled.map +4 -4
- package/dist/shaka-player.compiled.d.ts +343 -151
- package/dist/shaka-player.compiled.debug.d.ts +343 -151
- package/dist/shaka-player.compiled.debug.externs.js +356 -117
- package/dist/shaka-player.compiled.debug.js +952 -811
- package/dist/shaka-player.compiled.debug.map +4 -4
- package/dist/shaka-player.compiled.externs.js +356 -117
- package/dist/shaka-player.compiled.js +1165 -1078
- package/dist/shaka-player.compiled.map +4 -4
- package/dist/shaka-player.ui.d.ts +359 -153
- package/dist/shaka-player.ui.debug.d.ts +359 -153
- package/dist/shaka-player.ui.debug.externs.js +382 -117
- package/dist/shaka-player.ui.debug.js +1084 -918
- package/dist/shaka-player.ui.debug.map +4 -4
- package/dist/shaka-player.ui.externs.js +382 -117
- package/dist/shaka-player.ui.js +1377 -1274
- package/dist/shaka-player.ui.map +4 -4
- package/docs/design/lcevc-integration.md +14 -14
- package/docs/tutorials/ad_monetization.md +54 -0
- package/docs/tutorials/basic-usage.md +2 -1
- package/docs/tutorials/errors.md +2 -1
- package/docs/tutorials/faq.md +27 -55
- package/docs/tutorials/index.json +2 -1
- package/docs/tutorials/lcevc.md +118 -0
- package/docs/tutorials/offline.md +10 -8
- package/docs/tutorials/plugins.md +5 -0
- package/docs/tutorials/ui-customization.md +17 -0
- package/docs/tutorials/ui.md +2 -1
- package/docs/tutorials/upgrade.md +3 -0
- package/externs/css_style_declaration.js +19 -0
- package/externs/lcevc.js +37 -13
- package/externs/managedmediasource.js +24 -0
- package/externs/media_remote.js +68 -0
- package/externs/mediatailor.js +193 -0
- package/externs/pictureinpicture.js +11 -0
- package/externs/shaka/abr_manager.js +6 -2
- package/externs/shaka/ads.js +27 -0
- package/externs/shaka/cea.js +7 -0
- package/externs/shaka/codecs.js +5 -3
- package/externs/shaka/manifest.js +31 -10
- package/externs/shaka/manifest_parser.js +24 -1
- package/externs/shaka/net.js +2 -2
- package/externs/shaka/offline.js +13 -2
- package/externs/shaka/player.js +65 -8
- package/externs/shaka/text.js +3 -1
- package/externs/shaka/transmuxer.js +1 -1
- package/karma.conf.js +7 -3
- package/lib/abr/simple_abr_manager.js +66 -9
- package/lib/ads/ad_manager.js +104 -50
- package/lib/ads/media_tailor_ad.js +297 -0
- package/lib/ads/media_tailor_ad_manager.js +839 -0
- package/lib/cast/cast_receiver.js +1 -1
- package/lib/cea/cea_decoder.js +28 -0
- package/lib/cea/dummy_caption_decoder.js +5 -0
- package/lib/cea/ts_cea_parser.js +15 -2
- package/lib/config/codec_switching_strategy.js +24 -0
- package/lib/dash/content_protection.js +120 -2
- package/lib/dash/dash_parser.js +322 -93
- package/lib/dash/mpd_utils.js +62 -37
- package/lib/dash/segment_base.js +17 -10
- package/lib/dash/segment_list.js +18 -9
- package/lib/dash/segment_template.js +122 -107
- package/lib/dependencies/all.js +8 -7
- package/lib/hls/hls_classes.js +28 -43
- package/lib/hls/hls_parser.js +798 -658
- package/lib/hls/hls_utils.js +64 -5
- package/lib/hls/manifest_text_parser.js +7 -11
- package/lib/lcevc/lcevc_dec.js +220 -0
- package/lib/media/adaptation_set.js +32 -14
- package/lib/media/adaptation_set_criteria.js +86 -16
- package/lib/media/closed_caption_parser.js +13 -0
- package/lib/media/content_workarounds.js +6 -0
- package/lib/media/drm_engine.js +8 -13
- package/lib/media/manifest_parser.js +8 -113
- package/lib/media/media_source_capabilities.js +10 -3
- package/lib/media/media_source_engine.js +286 -44
- package/lib/media/play_rate_controller.js +8 -38
- package/lib/media/presentation_timeline.js +7 -1
- package/lib/media/quality_observer.js +1 -1
- package/lib/media/segment_index.js +6 -6
- package/lib/media/segment_prefetch.js +92 -24
- package/lib/media/segment_reference.js +73 -7
- package/lib/media/segment_utils.js +343 -0
- package/lib/media/stall_detector.js +0 -3
- package/lib/media/streaming_engine.js +73 -38
- package/lib/mss/mss_parser.js +19 -2
- package/lib/net/networking_engine.js +67 -12
- package/lib/net/networking_utils.js +95 -0
- package/lib/offline/indexeddb/v1_storage_cell.js +3 -0
- package/lib/offline/indexeddb/v2_storage_cell.js +3 -0
- package/lib/offline/manifest_converter.js +3 -0
- package/lib/offline/offline_manifest_parser.js +10 -0
- package/lib/offline/storage.js +14 -7
- package/lib/player.js +1098 -1537
- package/lib/polyfill/mediasource.js +22 -1
- package/lib/text/cue.js +15 -0
- package/lib/text/mp4_ttml_parser.js +2 -2
- package/lib/text/srt_text_parser.js +2 -2
- package/lib/text/stub_text_displayer.js +51 -0
- package/lib/text/text_engine.js +3 -2
- package/lib/text/ttml_text_parser.js +45 -5
- package/lib/text/ui_text_displayer.js +8 -0
- package/lib/text/vtt_text_parser.js +40 -22
- package/lib/transmuxer/aac_transmuxer.js +1 -1
- package/lib/transmuxer/ac3_transmuxer.js +1 -1
- package/lib/transmuxer/ec3_transmuxer.js +1 -1
- package/lib/transmuxer/h264.js +5 -4
- package/lib/transmuxer/h265.js +863 -0
- package/lib/transmuxer/mp3_transmuxer.js +1 -1
- package/lib/transmuxer/mpeg_ts_transmuxer.js +4 -3
- package/lib/transmuxer/mss_transmuxer.js +1 -1
- package/lib/transmuxer/ts_transmuxer.js +187 -22
- package/lib/util/buffer_utils.js +26 -4
- package/lib/util/content_steering_manager.js +358 -0
- package/lib/util/error.js +30 -15
- package/lib/util/exp_golomb.js +30 -2
- package/lib/util/fairplay_utils.js +1 -1
- package/lib/util/fake_event.js +8 -1
- package/lib/util/id3_utils.js +50 -1
- package/lib/util/manifest_parser_utils.js +12 -8
- package/lib/util/mp4_generator.js +6 -8
- package/lib/util/mutex.js +59 -0
- package/lib/util/object_utils.js +1 -1
- package/lib/util/periods.js +156 -179
- package/lib/util/platform.js +44 -3
- package/lib/util/player_configuration.js +43 -6
- package/lib/util/state_history.js +6 -2
- package/lib/util/stream_utils.js +206 -283
- package/lib/util/ts_parser.js +335 -98
- package/lib/util/uint8array_utils.js +5 -1
- package/lib/util/xml_utils.js +5 -0
- package/maintained-branches.md +3 -2
- package/package.json +4 -6
- package/roadmap.md +25 -5
- package/shaka-player.uncompiled.js +2 -2
- package/support.html +0 -1
- package/test/abr/simple_abr_manager_unit.js +33 -33
- package/test/ads/ad_manager_unit.js +3 -2
- package/test/cast/cast_receiver_integration.js +50 -4
- package/test/cast/cast_utils_unit.js +2 -0
- package/test/cea/cea_decoder_unit.js +7 -0
- package/test/codec_switching/codec_switching_integration.js +182 -0
- package/test/dash/dash_parser_content_protection_unit.js +2 -0
- package/test/dash/dash_parser_integration.js +74 -0
- package/test/dash/dash_parser_live_unit.js +2 -19
- package/test/dash/dash_parser_manifest_unit.js +536 -2
- package/test/dash/dash_parser_segment_base_unit.js +2 -0
- package/test/dash/dash_parser_segment_list_unit.js +2 -0
- package/test/dash/dash_parser_segment_template_unit.js +2 -0
- package/test/dash/mpd_utils_unit.js +61 -30
- package/test/demo/demo_unit.js +0 -16
- package/test/hls/hls_live_unit.js +14 -3
- package/test/hls/hls_parser_unit.js +385 -33
- package/test/hls/manifest_text_parser_unit.js +32 -99
- package/test/media/adaptation_set_criteria_unit.js +284 -15
- package/test/media/adaptation_set_unit.js +2 -0
- package/test/media/content_workarounds_unit.js +1 -1
- package/test/media/drm_engine_unit.js +3 -3
- package/test/media/media_source_engine_unit.js +166 -2
- package/test/media/play_rate_controller_unit.js +0 -48
- package/test/media/segment_index_unit.js +5 -4
- package/test/media/segment_prefetch_unit.js +1 -1
- package/test/media/streaming_engine_unit.js +17 -17
- package/test/mss/mss_parser_unit.js +2 -0
- package/test/mss/mss_player_integration.js +3 -2
- package/test/net/networking_engine_unit.js +3 -3
- package/test/{media/manifest_parser_unit.js → net/networking_utils_unit.js} +2 -2
- package/test/offline/manifest_convert_unit.js +14 -0
- package/test/offline/offline_integration.js +2 -1
- package/test/offline/storage_integration.js +22 -13
- package/test/player_external.js +4 -2
- package/test/player_integration.js +15 -4
- package/test/player_load_graph_integration.js +47 -151
- package/test/player_src_equals_external.js +1 -0
- package/test/player_src_equals_integration.js +71 -4
- package/test/player_unit.js +182 -158
- package/test/test/assets/dash-aes-128/Fragments(video=0,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=20000000,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=40000000,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=60000000,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=i,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/dash.mpd +18 -0
- package/test/test/assets/dash-aes-128/license +1 -0
- package/test/test/assets/dash-multi-codec/audio_en_2c_128k_aac.mp4 +0 -0
- package/test/test/assets/dash-multi-codec/audio_es_2c_64k_opus.webm +0 -0
- package/test/test/assets/dash-multi-codec/dash.mpd +32 -0
- package/test/test/assets/dash-multi-codec/video_144p_108k_h264.mp4 +0 -0
- package/test/test/assets/hls-ts-h265/0.ts +0 -0
- package/test/test/assets/hls-ts-h265/hevc.m3u8 +6 -0
- package/test/test/assets/hls-ts-h265/index.m3u8 +7 -0
- package/test/test/assets/hls-ts-muxed-aac-h265/0.ts +0 -0
- package/test/test/assets/hls-ts-muxed-aac-h265/1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-aac-h265/media.m3u8 +9 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/media.m3u8 +24 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00000.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00001.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00002.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00003.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00004.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00005.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0000.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0001.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0002.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0003.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/prog_index.m3u8 +14 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/index.m3u8 +23 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-1-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-2-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-3-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-4-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-5-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-6-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-7-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-8-v1-a1.ts +0 -0
- package/test/test/util/dash_parser_util.js +4 -0
- package/test/test/util/fake_ad_manager.js +20 -0
- package/test/test/util/fake_media_source_engine.js +13 -2
- package/test/test/util/fake_networking_engine.js +9 -1
- package/test/test/util/fake_segment_prefetch.js +3 -0
- package/test/test/util/manifest_generator.js +11 -3
- package/test/test/util/manifest_parser_util.js +14 -2
- package/test/test/util/mss_parser_util.js +4 -0
- package/test/test/util/offline_utils.js +2 -0
- package/test/test/util/simple_fakes.js +2 -2
- package/test/test/util/streaming_engine_util.js +10 -4
- package/test/test/util/test_scheme.js +6 -0
- package/test/test/util/ui_utils.js +4 -3
- package/test/text/mp4_ttml_parser_unit.js +4 -4
- package/test/text/srt_text_parser_unit.js +1 -1
- package/test/text/text_displayer_layout_unit.js +1 -1
- package/test/text/text_engine_unit.js +6 -0
- package/test/text/ttml_text_parser_unit.js +85 -2
- package/test/text/vtt_text_parser_unit.js +103 -31
- package/test/transmuxer/transmuxer_engine_integration.js +9 -0
- package/test/transmuxer/transmuxer_integration.js +150 -3
- package/test/ui/ad_ui_unit.js +2 -2
- package/test/ui/ui_customization_unit.js +17 -16
- package/test/ui/ui_integration.js +30 -20
- package/test/ui/ui_unit.js +28 -29
- package/test/util/buffer_utils_unit.js +1 -1
- package/test/util/content_steering_manager_unit.js +427 -0
- package/test/util/id3_utils_unit.js +52 -0
- package/test/util/stream_utils_unit.js +207 -169
- package/test/util/ts_parser_unit.js +3 -3
- package/third_party/closure-uri/uri.js +13 -1
- package/ui/audio_language_selection.js +9 -2
- package/ui/controls.js +125 -0
- package/ui/externs/ui.js +24 -2
- package/ui/language_utils.js +43 -8
- package/ui/less/range_elements.less +33 -0
- package/ui/locales/en.json +1 -0
- package/ui/locales/es-419.json +1 -0
- package/ui/locales/es.json +1 -0
- package/ui/locales/source.json +4 -0
- package/ui/localization.js +10 -0
- package/ui/pip_button.js +22 -120
- package/ui/remote_button.js +203 -0
- package/ui/resolution_selection.js +47 -10
- package/ui/seek_bar.js +296 -3
- package/ui/text_selection.js +2 -1
- package/ui/ui.js +11 -4
- package/demo/common/message_ids.js +0 -309
- package/demo/locales/en.json +0 -288
- package/demo/locales/source.json +0 -1146
- package/externs/mux.js +0 -69
- package/lib/lcevc/lcevc_dil.js +0 -152
- package/lib/routing/node.js +0 -23
- package/lib/routing/payload.js +0 -43
- package/lib/routing/walker.js +0 -587
- package/lib/transmuxer/muxjs_transmuxer.js +0 -242
- package/test/routing/walker_unit.js +0 -504
- package/test/transmuxer/muxjs_transmuxer_integration.js +0 -177
package/demo/common/assets.js
CHANGED
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
goog.require('ShakaDemoAssetInfo');
|
|
14
|
-
goog.require('shakaDemo.MessageIds');
|
|
15
14
|
|
|
16
15
|
goog.provide('shakaAssets');
|
|
17
16
|
|
|
@@ -24,34 +23,36 @@ goog.provide('shakaAssets');
|
|
|
24
23
|
const shakaAssets = {};
|
|
25
24
|
|
|
26
25
|
|
|
27
|
-
/** @enum {
|
|
26
|
+
/** @enum {string} */
|
|
28
27
|
shakaAssets.Source = {
|
|
29
|
-
CUSTOM:
|
|
30
|
-
SHAKA:
|
|
31
|
-
AXINOM:
|
|
32
|
-
UNIFIED_STREAMING:
|
|
33
|
-
DASH_IF:
|
|
34
|
-
BITCODIN:
|
|
35
|
-
METACDN:
|
|
36
|
-
NIMBLE_STREAMER:
|
|
37
|
-
AZURE_MEDIA_SERVICES:
|
|
38
|
-
GPAC:
|
|
39
|
-
UPLYNK:
|
|
40
|
-
APPLE:
|
|
41
|
-
IRT:
|
|
42
|
-
MICROSOFT:
|
|
43
|
-
VNOVA:
|
|
28
|
+
CUSTOM: 'Custom',
|
|
29
|
+
SHAKA: 'Shaka',
|
|
30
|
+
AXINOM: 'Axinom',
|
|
31
|
+
UNIFIED_STREAMING: 'Unified Streaming',
|
|
32
|
+
DASH_IF: 'DASH-IF',
|
|
33
|
+
BITCODIN: 'Bitcodin',
|
|
34
|
+
METACDN: 'MetaCDN',
|
|
35
|
+
NIMBLE_STREAMER: 'Nimble Streamer',
|
|
36
|
+
AZURE_MEDIA_SERVICES: 'Azure Media Services',
|
|
37
|
+
GPAC: 'GPAC',
|
|
38
|
+
UPLYNK: 'Verizon Digital Media Services',
|
|
39
|
+
APPLE: 'Apple',
|
|
40
|
+
IRT: 'IRT',
|
|
41
|
+
MICROSOFT: 'Microsoft',
|
|
42
|
+
VNOVA: 'V-Nova',
|
|
43
|
+
AWS: 'AWS',
|
|
44
|
+
BRIGHTCOVE: 'Brightcove',
|
|
44
45
|
};
|
|
45
46
|
|
|
46
47
|
|
|
47
|
-
/** @enum {
|
|
48
|
+
/** @enum {string} */
|
|
48
49
|
shakaAssets.KeySystem = {
|
|
49
|
-
CLEAR_KEY:
|
|
50
|
-
FAIRPLAY:
|
|
51
|
-
PLAYREADY:
|
|
52
|
-
WIDEVINE:
|
|
53
|
-
AES128:
|
|
54
|
-
CLEAR:
|
|
50
|
+
CLEAR_KEY: 'Clear Key DRM',
|
|
51
|
+
FAIRPLAY: 'Fairplay DRM',
|
|
52
|
+
PLAYREADY: 'PlayReady DRM',
|
|
53
|
+
WIDEVINE: 'Widevine DRM',
|
|
54
|
+
AES128: 'AES-128 protection',
|
|
55
|
+
CLEAR: 'No DRM protection',
|
|
55
56
|
};
|
|
56
57
|
|
|
57
58
|
|
|
@@ -95,65 +96,74 @@ shakaAssets.identifierForKeySystem = (keySystem) => {
|
|
|
95
96
|
};
|
|
96
97
|
|
|
97
98
|
|
|
98
|
-
/** @enum {
|
|
99
|
+
/** @enum {string} */
|
|
99
100
|
shakaAssets.Feature = {
|
|
100
101
|
// Set if the asset has a special trick mode track, for rewinding effects.
|
|
101
|
-
TRICK_MODE:
|
|
102
|
-
XLINK:
|
|
102
|
+
TRICK_MODE: 'Special trick mode track',
|
|
103
|
+
XLINK: 'XLink',
|
|
103
104
|
|
|
104
105
|
// Set if the asset has any subtitle tracks.
|
|
105
|
-
SUBTITLES:
|
|
106
|
+
SUBTITLES: 'Subtitles',
|
|
106
107
|
// Set if the asset has any closed caption tracks.
|
|
107
|
-
CAPTIONS:
|
|
108
|
+
CAPTIONS: 'Captions',
|
|
108
109
|
// Set if the asset has multiple audio languages.
|
|
109
|
-
MULTIPLE_LANGUAGES:
|
|
110
|
+
MULTIPLE_LANGUAGES: 'Multiple languages',
|
|
110
111
|
// Set if the asset is audio-only.
|
|
111
|
-
AUDIO_ONLY:
|
|
112
|
+
AUDIO_ONLY: 'Audio only',
|
|
112
113
|
// Set if the asset can be stored offline.
|
|
113
|
-
OFFLINE:
|
|
114
|
+
OFFLINE: 'Downloadable',
|
|
114
115
|
// A synthetic property used in the "all content" tab. Should not be given to
|
|
115
116
|
// assets.
|
|
116
|
-
STORED:
|
|
117
|
+
STORED: 'Downloaded',
|
|
117
118
|
// Set if the asset has ads. Autoset by calling setAdTagUri() on an asset.
|
|
118
119
|
// Does not need to be set manually.
|
|
119
|
-
ADS:
|
|
120
|
+
ADS: 'Ads',
|
|
120
121
|
|
|
121
122
|
// Set if the asset is a livestream.
|
|
122
|
-
LIVE:
|
|
123
|
+
LIVE: 'Live',
|
|
123
124
|
// A synthetic property used if the asset is VOD (not-livestream).
|
|
124
|
-
VOD:
|
|
125
|
+
VOD: 'VOD',
|
|
125
126
|
// Set if the asset has at least one WebM stream.
|
|
126
|
-
WEBM:
|
|
127
|
+
WEBM: 'WebM',
|
|
127
128
|
// Set if the asset has at least one mp4 stream.
|
|
128
|
-
MP4:
|
|
129
|
+
MP4: 'MP4',
|
|
129
130
|
// Set if the asset has at least one MPEG-2 TS stream.
|
|
130
|
-
MP2TS:
|
|
131
|
+
MP2TS: 'MPEG-2 TS',
|
|
131
132
|
// Set if the asset has at least one containerless stream (AAC, etc).
|
|
132
|
-
CONTAINERLESS:
|
|
133
|
+
CONTAINERLESS: 'Containerless',
|
|
134
|
+
|
|
135
|
+
// Set if the asset requires Dolby Vision with MV-HEVC (for 3D) support.
|
|
136
|
+
DOLBY_VISION_3D: 'Dolby Vision 3D',
|
|
133
137
|
|
|
134
138
|
// Set if the asset has at least one stream that is at least 720p.
|
|
135
|
-
HIGH_DEFINITION:
|
|
139
|
+
HIGH_DEFINITION: 'High definition',
|
|
136
140
|
// Set if the asset has at least one stream that is at least 4k.
|
|
137
|
-
ULTRA_HIGH_DEFINITION:
|
|
141
|
+
ULTRA_HIGH_DEFINITION: 'Ultra-high definition',
|
|
138
142
|
|
|
139
143
|
// Set if the asset has at least one stream that is surround sound.
|
|
140
|
-
SURROUND:
|
|
144
|
+
SURROUND: 'Surround sound',
|
|
141
145
|
|
|
142
146
|
// Set if the asset is a MPEG-DASH manifest.
|
|
143
|
-
DASH:
|
|
147
|
+
DASH: 'DASH',
|
|
144
148
|
// Set if the asset is an HLS manifest.
|
|
145
|
-
HLS:
|
|
149
|
+
HLS: 'HLS',
|
|
146
150
|
// Set if the asset is an MSS manifest.
|
|
147
|
-
MSS:
|
|
151
|
+
MSS: 'MSS',
|
|
148
152
|
|
|
149
153
|
// Set if the asset has at least one image stream.
|
|
150
|
-
THUMBNAILS:
|
|
154
|
+
THUMBNAILS: 'Thumbnails',
|
|
155
|
+
|
|
156
|
+
// Set if the asset has at least one chapter stream.
|
|
157
|
+
CHAPTERS: 'Chapters',
|
|
151
158
|
|
|
152
159
|
// Set if the asset has LCEVC.
|
|
153
|
-
LCEVC:
|
|
160
|
+
LCEVC: 'LCEVC',
|
|
154
161
|
|
|
155
162
|
// Set if the asset has Low Latency mode.
|
|
156
|
-
LOW_LATENCY:
|
|
163
|
+
LOW_LATENCY: 'Low Latency',
|
|
164
|
+
|
|
165
|
+
// Set if the asset has Content Steering.
|
|
166
|
+
CONTENT_STEERING: 'Content Steering',
|
|
157
167
|
};
|
|
158
168
|
|
|
159
169
|
|
|
@@ -178,6 +188,23 @@ shakaAssets.Feature = {
|
|
|
178
188
|
* (optional) The codecs string, if needed to refine the MIME type.
|
|
179
189
|
*/
|
|
180
190
|
shakaAssets.ExtraText;
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* @typedef {{
|
|
195
|
+
* uri: string,
|
|
196
|
+
* language: string,
|
|
197
|
+
* mime: string
|
|
198
|
+
* }}
|
|
199
|
+
*
|
|
200
|
+
* @property {string} uri
|
|
201
|
+
* The URI of the chapter.
|
|
202
|
+
* @property {string} language
|
|
203
|
+
* The language of the chapter (e.g. 'en').
|
|
204
|
+
* @property {string} mime
|
|
205
|
+
* The MIME type of the chapter (e.g. 'text/vtt')
|
|
206
|
+
*/
|
|
207
|
+
shakaAssets.ExtraChapter;
|
|
181
208
|
// End types and enums }}}
|
|
182
209
|
|
|
183
210
|
|
|
@@ -314,8 +341,7 @@ shakaAssets.testAssets = [
|
|
|
314
341
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
315
342
|
.addFeature(shakaAssets.Feature.HLS)
|
|
316
343
|
.addFeature(shakaAssets.Feature.MP4)
|
|
317
|
-
.addFeature(shakaAssets.Feature.OFFLINE)
|
|
318
|
-
.setMediaPlaylistFullMimeType('video/mp4; codecs="avc1.4d401f"'),
|
|
344
|
+
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
319
345
|
new ShakaDemoAssetInfo(
|
|
320
346
|
/* name= */ 'Angel One (HLS, MP4, multilingual, Widevine)',
|
|
321
347
|
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/angel_one.png',
|
|
@@ -381,11 +407,17 @@ shakaAssets.testAssets = [
|
|
|
381
407
|
/* manifestUri= */ 'https://storage.googleapis.com/shaka-demo-assets/sintel/dash.mpd',
|
|
382
408
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
383
409
|
.addFeature(shakaAssets.Feature.DASH)
|
|
384
|
-
.addFeature(shakaAssets.Feature.
|
|
410
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
385
411
|
.addFeature(shakaAssets.Feature.MP4)
|
|
386
412
|
.addFeature(shakaAssets.Feature.SUBTITLES)
|
|
387
413
|
.addFeature(shakaAssets.Feature.WEBM)
|
|
388
|
-
.addFeature(shakaAssets.Feature.OFFLINE)
|
|
414
|
+
.addFeature(shakaAssets.Feature.OFFLINE)
|
|
415
|
+
.addFeature(shakaAssets.Feature.CHAPTERS)
|
|
416
|
+
.addExtraChapter({
|
|
417
|
+
uri: 'https://storage.googleapis.com/shaka-demo-assets/sintel-chapters.vtt',
|
|
418
|
+
language: 'en',
|
|
419
|
+
mime: 'text/vtt',
|
|
420
|
+
}),
|
|
389
421
|
new ShakaDemoAssetInfo(
|
|
390
422
|
/* name= */ 'Sintel w/ trick mode (MP4 only, 720p)',
|
|
391
423
|
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/sintel.png',
|
|
@@ -404,7 +436,7 @@ shakaAssets.testAssets = [
|
|
|
404
436
|
/* manifestUri= */ 'https://storage.googleapis.com/shaka-demo-assets/sintel-webm-only/dash.mpd',
|
|
405
437
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
406
438
|
.addFeature(shakaAssets.Feature.DASH)
|
|
407
|
-
.addFeature(shakaAssets.Feature.
|
|
439
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
408
440
|
.addFeature(shakaAssets.Feature.SUBTITLES)
|
|
409
441
|
.addFeature(shakaAssets.Feature.WEBM)
|
|
410
442
|
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -414,7 +446,7 @@ shakaAssets.testAssets = [
|
|
|
414
446
|
/* manifestUri= */ 'https://storage.googleapis.com/shaka-demo-assets/sintel-mp4-only/dash.mpd',
|
|
415
447
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
416
448
|
.addFeature(shakaAssets.Feature.DASH)
|
|
417
|
-
.addFeature(shakaAssets.Feature.
|
|
449
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
418
450
|
.addFeature(shakaAssets.Feature.MP4)
|
|
419
451
|
.addFeature(shakaAssets.Feature.SUBTITLES)
|
|
420
452
|
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -425,7 +457,7 @@ shakaAssets.testAssets = [
|
|
|
425
457
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
426
458
|
.addKeySystem(shakaAssets.KeySystem.WIDEVINE)
|
|
427
459
|
.addFeature(shakaAssets.Feature.DASH)
|
|
428
|
-
.addFeature(shakaAssets.Feature.
|
|
460
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
429
461
|
.addFeature(shakaAssets.Feature.MP4)
|
|
430
462
|
.addFeature(shakaAssets.Feature.SUBTITLES)
|
|
431
463
|
.addFeature(shakaAssets.Feature.WEBM)
|
|
@@ -451,7 +483,7 @@ shakaAssets.testAssets = [
|
|
|
451
483
|
.setAdTagUri(shakaAssets.AdTag.AD_POD_PREROLL_MIDROLL_POSTROLL)
|
|
452
484
|
.addKeySystem(shakaAssets.KeySystem.WIDEVINE)
|
|
453
485
|
.addFeature(shakaAssets.Feature.DASH)
|
|
454
|
-
.addFeature(shakaAssets.Feature.
|
|
486
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
455
487
|
.addFeature(shakaAssets.Feature.MP4)
|
|
456
488
|
.addFeature(shakaAssets.Feature.SUBTITLES)
|
|
457
489
|
.addFeature(shakaAssets.Feature.WEBM)
|
|
@@ -463,7 +495,7 @@ shakaAssets.testAssets = [
|
|
|
463
495
|
/* manifestUri= */ 'https://storage.googleapis.com/shaka-demo-assets/sintel-mp4-wvtt/dash.mpd',
|
|
464
496
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
465
497
|
.addFeature(shakaAssets.Feature.DASH)
|
|
466
|
-
.addFeature(shakaAssets.Feature.
|
|
498
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
467
499
|
.addFeature(shakaAssets.Feature.MP4)
|
|
468
500
|
.addFeature(shakaAssets.Feature.SUBTITLES)
|
|
469
501
|
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -696,6 +728,21 @@ shakaAssets.testAssets = [
|
|
|
696
728
|
.addFeature(shakaAssets.Feature.HLS)
|
|
697
729
|
.addFeature(shakaAssets.Feature.LIVE)
|
|
698
730
|
.addFeature(shakaAssets.Feature.MP4),
|
|
731
|
+
new ShakaDemoAssetInfo(
|
|
732
|
+
/* name= */ 'Multi-DRM (CBCS), multi-key',
|
|
733
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png',
|
|
734
|
+
/* manifestUri= */ 'https://media.axprod.net/TestVectors/MultiKey/Cmaf_h264_1080p_cbcs/manifest.mpd',
|
|
735
|
+
/* source= */ shakaAssets.Source.AXINOM)
|
|
736
|
+
.addKeySystem(shakaAssets.KeySystem.PLAYREADY)
|
|
737
|
+
.addKeySystem(shakaAssets.KeySystem.WIDEVINE)
|
|
738
|
+
.addFeature(shakaAssets.Feature.DASH)
|
|
739
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
740
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
741
|
+
.addFeature(shakaAssets.Feature.MULTIPLE_LANGUAGES)
|
|
742
|
+
.addFeature(shakaAssets.Feature.SUBTITLES)
|
|
743
|
+
.addLicenseServer('com.widevine.alpha', 'https://drm-widevine-licensing.axprod.net/AcquireLicense')
|
|
744
|
+
.addLicenseServer('com.microsoft.playready', 'https://drm-playready-licensing.axtest.net/AcquireLicense')
|
|
745
|
+
.addLicenseRequestHeader('X-AxDRM-Message', 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ewogICJ2ZXJzaW9uIjogMSwKICAiY29tX2tleV9pZCI6ICI2OWU1NDA4OC1lOWUwLTQ1MzAtOGMxYS0xZWI2ZGNkMGQxNGUiLAogICJtZXNzYWdlIjogewogICAgInR5cGUiOiAiZW50aXRsZW1lbnRfbWVzc2FnZSIsCiAgICAidmVyc2lvbiI6IDIsCiAgICAibGljZW5zZSI6IHsKICAgICAgImFsbG93X3BlcnNpc3RlbmNlIjogdHJ1ZQogICAgfSwKICAgICJjb250ZW50X2tleXNfc291cmNlIjogewogICAgICAiaW5saW5lIjogWwogICAgICAgIHsKICAgICAgICAgICJpZCI6ICJiNTRlYzkxNC0xOTJkLTRlYTEtYWMxOS1mNDI5ZWI0OTgyNjgiLAogICAgICAgICAgImVuY3J5cHRlZF9rZXkiOiAiR1ZERnJZUU9Bb1kzZmpxVVVtamswQT09IiwKICAgICAgICAgICJ1c2FnZV9wb2xpY3kiOiAiUG9saWN5IEEiCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAiaWQiOiAiYzgzYzRlYTgtMGYyYS00NTIzLTg1MWMtZmJlY2NkYzBmMjAyIiwKICAgICAgICAgICJlbmNyeXB0ZWRfa2V5IjogIlRKZGZsWmJLYmZXQXl5K1dta21UUEE9PSIsCiAgICAgICAgICAidXNhZ2VfcG9saWN5IjogIlBvbGljeSBBIgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImlkIjogImM4NjhjNzAyLWM3MWItNDA2NC1hZTJiLWMyNGY3Y2MxMDc5MiIsCiAgICAgICAgICAiZW5jcnlwdGVkX2tleSI6ICJ4QXJpUkpOcUFTdXp6RExDRzNXSjdnPT0iLAogICAgICAgICAgInVzYWdlX3BvbGljeSI6ICJQb2xpY3kgQSIKICAgICAgICB9CiAgICAgIF0KICAgIH0sCiAgICAiY29udGVudF9rZXlfdXNhZ2VfcG9saWNpZXMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJQb2xpY3kgQSIsCiAgICAgICAgInBsYXlyZWFkeSI6IHsKICAgICAgICAgICJtaW5fZGV2aWNlX3NlY3VyaXR5X2xldmVsIjogMTUwLAogICAgICAgICAgInBsYXlfZW5hYmxlcnMiOiBbCiAgICAgICAgICAgICI3ODY2MjdEOC1DMkE2LTQ0QkUtOEY4OC0wOEFFMjU1QjAxQTciCiAgICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAgICBdCiAgfQp9.XC0YIbZpKGFc3IZROklP4LvISc6cZGpE9UL-XcpcqWg'),
|
|
699
746
|
// End Axinom assets }}}
|
|
700
747
|
|
|
701
748
|
// Unified Streaming assets {{{
|
|
@@ -920,7 +967,6 @@ shakaAssets.testAssets = [
|
|
|
920
967
|
/* manifestUri= */ 'https://livesim2.dashif.org/livesim2/testpic_2s/Manifest_thumbs.mpd',
|
|
921
968
|
/* source= */ shakaAssets.Source.DASH_IF)
|
|
922
969
|
.addFeature(shakaAssets.Feature.DASH)
|
|
923
|
-
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
924
970
|
.addFeature(shakaAssets.Feature.MP4)
|
|
925
971
|
.addFeature(shakaAssets.Feature.LIVE)
|
|
926
972
|
.addFeature(shakaAssets.Feature.THUMBNAILS),
|
|
@@ -964,7 +1010,7 @@ shakaAssets.testAssets = [
|
|
|
964
1010
|
/* source= */ shakaAssets.Source.BITCODIN)
|
|
965
1011
|
// Disabled because the audio playlist ends about 9 seconds early somehow.
|
|
966
1012
|
.markAsDisabled()
|
|
967
|
-
.addFeature(shakaAssets.Feature.
|
|
1013
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
968
1014
|
.addFeature(shakaAssets.Feature.HLS)
|
|
969
1015
|
.addFeature(shakaAssets.Feature.MP2TS)
|
|
970
1016
|
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -978,6 +1024,25 @@ shakaAssets.testAssets = [
|
|
|
978
1024
|
.addFeature(shakaAssets.Feature.MP4)
|
|
979
1025
|
.addFeature(shakaAssets.Feature.THUMBNAILS)
|
|
980
1026
|
.addExtraThumbnail('https://cdn.bitmovin.com/content/assets/art-of-motion-dash-hls-progressive/thumbnails/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.vtt'),
|
|
1027
|
+
new ShakaDemoAssetInfo(
|
|
1028
|
+
/* name= */ 'Art of Motion (HLS) (external thumbnails)',
|
|
1029
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png',
|
|
1030
|
+
/* manifestUri= */ 'https://cdn.bitmovin.com/content/assets/art-of-motion-dash-hls-progressive/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8',
|
|
1031
|
+
/* source= */ shakaAssets.Source.BITCODIN)
|
|
1032
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1033
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1034
|
+
.addFeature(shakaAssets.Feature.MP2TS)
|
|
1035
|
+
.addFeature(shakaAssets.Feature.THUMBNAILS)
|
|
1036
|
+
.addExtraThumbnail('https://cdn.bitmovin.com/content/assets/art-of-motion-dash-hls-progressive/thumbnails/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.vtt'),
|
|
1037
|
+
new ShakaDemoAssetInfo(
|
|
1038
|
+
/* name= */ 'Art of Motion (MP4) (external thumbnails)',
|
|
1039
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png',
|
|
1040
|
+
/* manifestUri= */ 'https://cdn.bitmovin.com/content/assets/art-of-motion-dash-hls-progressive/MI201109210084_mpeg-4_hd_high_1080p25_10mbits.mp4',
|
|
1041
|
+
/* source= */ shakaAssets.Source.BITCODIN)
|
|
1042
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1043
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
1044
|
+
.addFeature(shakaAssets.Feature.THUMBNAILS)
|
|
1045
|
+
.addExtraThumbnail('https://cdn.bitmovin.com/content/assets/art-of-motion-dash-hls-progressive/thumbnails/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.vtt'),
|
|
981
1046
|
// End bitcodin assets }}}
|
|
982
1047
|
|
|
983
1048
|
// MetaCDN assets {{{
|
|
@@ -1298,6 +1363,25 @@ shakaAssets.testAssets = [
|
|
|
1298
1363
|
.addFeature(shakaAssets.Feature.CONTAINERLESS)
|
|
1299
1364
|
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1300
1365
|
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
1366
|
+
new ShakaDemoAssetInfo(
|
|
1367
|
+
/* name= */ 'Advanced stream HLS Stream (UHD/4K/HDR/ATMOS)',
|
|
1368
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/becoming_you.png',
|
|
1369
|
+
/* manifestUri= */ 'https://devstreaming-cdn.apple.com/videos/streaming/examples/adv_dv_atmos/main.m3u8',
|
|
1370
|
+
/* source= */ shakaAssets.Source.APPLE)
|
|
1371
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1372
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
1373
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
1374
|
+
.addFeature(shakaAssets.Feature.OFFLINE)
|
|
1375
|
+
.addFeature(shakaAssets.Feature.THUMBNAILS),
|
|
1376
|
+
new ShakaDemoAssetInfo(
|
|
1377
|
+
/* name= */ '3D movie stream',
|
|
1378
|
+
/* iconUri= */ '',
|
|
1379
|
+
/* manifestUri= */ 'https://devstreaming-cdn.apple.com/videos/streaming/examples/historic_planet_content_2023-10-26-3d-video/main.m3u8',
|
|
1380
|
+
/* source= */ shakaAssets.Source.APPLE)
|
|
1381
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1382
|
+
.addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION)
|
|
1383
|
+
.addFeature(shakaAssets.Feature.DOLBY_VISION_3D)
|
|
1384
|
+
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
1301
1385
|
// }}}
|
|
1302
1386
|
|
|
1303
1387
|
// IRT assets {{{
|
|
@@ -1364,6 +1448,31 @@ shakaAssets.testAssets = [
|
|
|
1364
1448
|
/* source= */ shakaAssets.Source.VNOVA)
|
|
1365
1449
|
.addFeature(shakaAssets.Feature.DASH)
|
|
1366
1450
|
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1451
|
+
.addFeature(shakaAssets.Feature.MP2TS)
|
|
1452
|
+
.addFeature(shakaAssets.Feature.OFFLINE)
|
|
1453
|
+
.addFeature(shakaAssets.Feature.LCEVC)
|
|
1454
|
+
.addDescription('LCEVC Enhanced eSports content selection.')
|
|
1455
|
+
.setExtraConfig({
|
|
1456
|
+
streaming: {
|
|
1457
|
+
useNativeHlsOnSafari: false,
|
|
1458
|
+
},
|
|
1459
|
+
mediaSource: {
|
|
1460
|
+
forceTransmux: true,
|
|
1461
|
+
},
|
|
1462
|
+
lcevc: {
|
|
1463
|
+
enabled: true,
|
|
1464
|
+
dynamicPerformanceScaling: true,
|
|
1465
|
+
logLevel: 0,
|
|
1466
|
+
drawLogo: false,
|
|
1467
|
+
},
|
|
1468
|
+
}),
|
|
1469
|
+
new ShakaDemoAssetInfo(
|
|
1470
|
+
/* name= */ 'Tears of Steel LCEVC H264 (HLS, MP4)',
|
|
1471
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png',
|
|
1472
|
+
/* manifestUri= */ 'https://d3mfda3gpj3dw1.cloudfront.net/vn2LvEps745ShGtQ/master.m3u8',
|
|
1473
|
+
/* source= */ shakaAssets.Source.VNOVA)
|
|
1474
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1475
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1367
1476
|
.addFeature(shakaAssets.Feature.MP4)
|
|
1368
1477
|
.addFeature(shakaAssets.Feature.OFFLINE)
|
|
1369
1478
|
.addFeature(shakaAssets.Feature.LCEVC)
|
|
@@ -1442,5 +1551,85 @@ shakaAssets.testAssets = [
|
|
|
1442
1551
|
},
|
|
1443
1552
|
}),
|
|
1444
1553
|
// }}}
|
|
1554
|
+
|
|
1555
|
+
// AWS assets {{{
|
|
1556
|
+
/* MediaTailor Contents */
|
|
1557
|
+
new ShakaDemoAssetInfo(
|
|
1558
|
+
/* name= */ 'Media Tailor HLS',
|
|
1559
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/sing.png',
|
|
1560
|
+
/* manifestUri= */ 'https://ad391cc0d55b44c6a86d232548adc225.mediatailor.us-east-1.amazonaws.com/v1/session/d02fedbbc5a68596164208dd24e9b48aa60dadc7/singssai/master.m3u8',
|
|
1561
|
+
/* source= */ shakaAssets.Source.AWS)
|
|
1562
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1563
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1564
|
+
.addFeature(shakaAssets.Feature.MP2TS)
|
|
1565
|
+
.setMediaTailor('https://ad391cc0d55b44c6a86d232548adc225.mediatailor.us-east-1.amazonaws.com/v1/session/d02fedbbc5a68596164208dd24e9b48aa60dadc7/singssai/master.m3u8'),
|
|
1566
|
+
new ShakaDemoAssetInfo(
|
|
1567
|
+
/* name= */ 'Media Tailor Live HLS',
|
|
1568
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
|
|
1569
|
+
/* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/hls.m3u8',
|
|
1570
|
+
/* source= */ shakaAssets.Source.AWS)
|
|
1571
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1572
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1573
|
+
.addFeature(shakaAssets.Feature.MP2TS)
|
|
1574
|
+
.addFeature(shakaAssets.Feature.LIVE)
|
|
1575
|
+
.setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/hls.m3u8'),
|
|
1576
|
+
new ShakaDemoAssetInfo(
|
|
1577
|
+
/* name= */ 'Media Tailor DASH',
|
|
1578
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
|
|
1579
|
+
/* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-VOD-HLS-DASH/out/v1/b94f3611978f419985a18335bac9d9cb/ddb73bf548a44551a0059c346226445a/eaa5485198bf497284559efb8172425e/index.mpd',
|
|
1580
|
+
/* source= */ shakaAssets.Source.AWS)
|
|
1581
|
+
.addFeature(shakaAssets.Feature.DASH)
|
|
1582
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1583
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
1584
|
+
.setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-VOD-HLS-DASH/out/v1/b94f3611978f419985a18335bac9d9cb/ddb73bf548a44551a0059c346226445a/eaa5485198bf497284559efb8172425e/index.mpd',
|
|
1585
|
+
{
|
|
1586
|
+
adsParams: {
|
|
1587
|
+
assetid: 'test2',
|
|
1588
|
+
podduration: '15',
|
|
1589
|
+
},
|
|
1590
|
+
}),
|
|
1591
|
+
new ShakaDemoAssetInfo(
|
|
1592
|
+
/* name= */ 'Media Tailor Live DASH',
|
|
1593
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
|
|
1594
|
+
/* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/dash.mpd',
|
|
1595
|
+
/* source= */ shakaAssets.Source.AWS)
|
|
1596
|
+
.addFeature(shakaAssets.Feature.DASH)
|
|
1597
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1598
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
1599
|
+
.addFeature(shakaAssets.Feature.LIVE)
|
|
1600
|
+
.setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/dash.mpd'),
|
|
1601
|
+
new ShakaDemoAssetInfo(
|
|
1602
|
+
/* name= */ 'Media Tailor Live HLS with overlays',
|
|
1603
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/re_mars.png',
|
|
1604
|
+
/* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-Overlays/channel/sfp-channel2/hls.m3u8',
|
|
1605
|
+
/* source= */ shakaAssets.Source.AWS)
|
|
1606
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1607
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1608
|
+
.addFeature(shakaAssets.Feature.MP2TS)
|
|
1609
|
+
.addFeature(shakaAssets.Feature.LIVE)
|
|
1610
|
+
.setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-Overlays/channel/sfp-channel2/hls.m3u8'),
|
|
1611
|
+
// }}}
|
|
1612
|
+
|
|
1613
|
+
// Brightcove assets {{{
|
|
1614
|
+
/* Brightcove Contents */
|
|
1615
|
+
new ShakaDemoAssetInfo(
|
|
1616
|
+
/* name= */ 'Content Steering HLS',
|
|
1617
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
|
|
1618
|
+
/* manifestUri= */ 'https://fastly.content-steering.com/bbb_hls/master_steering_fastly_https.m3u8',
|
|
1619
|
+
/* source= */ shakaAssets.Source.BRIGHTCOVE)
|
|
1620
|
+
.addFeature(shakaAssets.Feature.HLS)
|
|
1621
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1622
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
1623
|
+
.addFeature(shakaAssets.Feature.CONTENT_STEERING),
|
|
1624
|
+
new ShakaDemoAssetInfo(
|
|
1625
|
+
/* name= */ 'Content Steering DASH',
|
|
1626
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
|
|
1627
|
+
/* manifestUri= */ 'https://fastly.content-steering.com/bbb/playlist_steering_fastly_https_cdn-a_cdn-c_cdn-b.mpd',
|
|
1628
|
+
/* source= */ shakaAssets.Source.BRIGHTCOVE)
|
|
1629
|
+
.addFeature(shakaAssets.Feature.DASH)
|
|
1630
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1631
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
1632
|
+
.addFeature(shakaAssets.Feature.CONTENT_STEERING),
|
|
1633
|
+
// }}}
|
|
1445
1634
|
];
|
|
1446
1635
|
/* eslint-enable max-len */
|