shaka-player 4.4.3 → 4.5.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.
Files changed (198) hide show
  1. package/.github/workflows/release-please.yaml +2 -27
  2. package/CHANGELOG.md +64 -45
  3. package/README.md +16 -10
  4. package/demo/asset_card.js +18 -21
  5. package/demo/cast_receiver/index.html +0 -1
  6. package/demo/close_button.js +0 -3
  7. package/demo/common/asset.js +22 -5
  8. package/demo/common/assets.js +132 -49
  9. package/demo/config.js +192 -253
  10. package/demo/custom.js +39 -98
  11. package/demo/front.js +7 -10
  12. package/demo/index.html +19 -22
  13. package/demo/input.js +6 -11
  14. package/demo/input_container.js +8 -9
  15. package/demo/main.js +51 -123
  16. package/demo/search.js +22 -34
  17. package/demo/service_worker.js +0 -3
  18. package/demo/tooltip.js +3 -5
  19. package/demo/visualizer.js +3 -5
  20. package/demo/visualizer_button.js +1 -20
  21. package/dist/demo.compiled.debug.js +152 -178
  22. package/dist/demo.compiled.debug.map +4 -4
  23. package/dist/demo.compiled.js +152 -178
  24. package/dist/demo.compiled.map +4 -4
  25. package/dist/deps.js +27 -24
  26. package/dist/locales.js +31 -31
  27. package/dist/receiver.compiled.debug.js +22 -43
  28. package/dist/receiver.compiled.debug.map +4 -4
  29. package/dist/receiver.compiled.js +22 -43
  30. package/dist/receiver.compiled.map +4 -4
  31. package/dist/shaka-player.compiled.d.ts +507 -365
  32. package/dist/shaka-player.compiled.debug.d.ts +507 -365
  33. package/dist/shaka-player.compiled.debug.externs.js +205 -51
  34. package/dist/shaka-player.compiled.debug.js +541 -450
  35. package/dist/shaka-player.compiled.debug.map +4 -4
  36. package/dist/shaka-player.compiled.externs.js +205 -51
  37. package/dist/shaka-player.compiled.js +1120 -1066
  38. package/dist/shaka-player.compiled.map +4 -4
  39. package/dist/shaka-player.ui.d.ts +562 -410
  40. package/dist/shaka-player.ui.debug.d.ts +562 -410
  41. package/dist/shaka-player.ui.debug.externs.js +226 -51
  42. package/dist/shaka-player.ui.debug.js +606 -506
  43. package/dist/shaka-player.ui.debug.map +4 -4
  44. package/dist/shaka-player.ui.externs.js +226 -51
  45. package/dist/shaka-player.ui.js +1266 -1207
  46. package/dist/shaka-player.ui.map +4 -4
  47. package/docs/design/lcevc-integration.md +14 -14
  48. package/docs/tutorials/faq.md +27 -55
  49. package/docs/tutorials/index.json +2 -1
  50. package/docs/tutorials/lcevc.md +118 -0
  51. package/docs/tutorials/ui-customization.md +4 -0
  52. package/externs/css_style_declaration.js +19 -0
  53. package/externs/lcevc.js +37 -13
  54. package/externs/media_remote.js +68 -0
  55. package/externs/mediatailor.js +193 -0
  56. package/externs/pictureinpicture.js +11 -0
  57. package/externs/shaka/ads.js +27 -0
  58. package/externs/shaka/manifest.js +10 -5
  59. package/externs/shaka/manifest_parser.js +7 -1
  60. package/externs/shaka/offline.js +4 -0
  61. package/externs/shaka/player.js +12 -1
  62. package/karma.conf.js +7 -3
  63. package/lib/abr/simple_abr_manager.js +43 -3
  64. package/lib/ads/ad_manager.js +104 -50
  65. package/lib/ads/media_tailor_ad.js +297 -0
  66. package/lib/ads/media_tailor_ad_manager.js +828 -0
  67. package/lib/cea/ts_cea_parser.js +15 -2
  68. package/lib/config/codec_switching_strategy.js +24 -0
  69. package/lib/dash/content_protection.js +120 -2
  70. package/lib/dash/dash_parser.js +75 -12
  71. package/lib/dash/mpd_utils.js +10 -6
  72. package/lib/dash/segment_base.js +13 -5
  73. package/lib/dash/segment_list.js +13 -5
  74. package/lib/dash/segment_template.js +43 -85
  75. package/lib/dependencies/all.js +8 -7
  76. package/lib/hls/hls_parser.js +44 -16
  77. package/lib/lcevc/lcevc_dec.js +220 -0
  78. package/lib/media/adaptation_set.js +22 -11
  79. package/lib/media/adaptation_set_criteria.js +25 -7
  80. package/lib/media/media_source_engine.js +215 -27
  81. package/lib/media/segment_index.js +1 -1
  82. package/lib/media/segment_reference.js +7 -7
  83. package/lib/media/streaming_engine.js +33 -18
  84. package/lib/mss/mss_parser.js +1 -0
  85. package/lib/net/networking_engine.js +1 -0
  86. package/lib/offline/indexeddb/v1_storage_cell.js +1 -0
  87. package/lib/offline/indexeddb/v2_storage_cell.js +1 -0
  88. package/lib/offline/manifest_converter.js +1 -0
  89. package/lib/offline/storage.js +3 -0
  90. package/lib/player.js +142 -72
  91. package/lib/routing/payload.js +5 -1
  92. package/lib/text/cue.js +15 -0
  93. package/lib/text/ttml_text_parser.js +17 -0
  94. package/lib/text/ui_text_displayer.js +4 -0
  95. package/lib/text/vtt_text_parser.js +33 -20
  96. package/lib/transmuxer/h265.js +862 -0
  97. package/lib/transmuxer/mpeg_ts_transmuxer.js +3 -2
  98. package/lib/transmuxer/ts_transmuxer.js +160 -15
  99. package/lib/util/error.js +28 -9
  100. package/lib/util/exp_golomb.js +30 -2
  101. package/lib/util/fake_event.js +3 -0
  102. package/lib/util/mp4_generator.js +4 -4
  103. package/lib/util/periods.js +2 -0
  104. package/lib/util/platform.js +40 -0
  105. package/lib/util/player_configuration.js +8 -0
  106. package/lib/util/state_history.js +6 -2
  107. package/lib/util/stream_utils.js +133 -217
  108. package/lib/util/ts_parser.js +226 -40
  109. package/maintained-branches.md +3 -2
  110. package/package.json +4 -6
  111. package/roadmap.md +15 -5
  112. package/shaka-player.uncompiled.js +2 -1
  113. package/support.html +0 -1
  114. package/test/cast/cast_receiver_integration.js +47 -0
  115. package/test/codec_switching/codec_switching_integration.js +181 -0
  116. package/test/dash/dash_parser_content_protection_unit.js +2 -0
  117. package/test/dash/dash_parser_integration.js +73 -0
  118. package/test/dash/dash_parser_live_unit.js +2 -0
  119. package/test/dash/dash_parser_manifest_unit.js +42 -0
  120. package/test/dash/dash_parser_segment_base_unit.js +2 -0
  121. package/test/dash/dash_parser_segment_list_unit.js +2 -0
  122. package/test/dash/dash_parser_segment_template_unit.js +2 -0
  123. package/test/demo/demo_unit.js +0 -16
  124. package/test/hls/hls_live_unit.js +2 -0
  125. package/test/hls/hls_parser_unit.js +8 -6
  126. package/test/media/adaptation_set_criteria_unit.js +118 -0
  127. package/test/media/adaptation_set_unit.js +1 -0
  128. package/test/media/media_source_engine_unit.js +165 -1
  129. package/test/media/segment_index_unit.js +4 -4
  130. package/test/media/segment_prefetch_unit.js +1 -1
  131. package/test/media/streaming_engine_unit.js +17 -17
  132. package/test/mss/mss_parser_unit.js +2 -0
  133. package/test/offline/manifest_convert_unit.js +5 -0
  134. package/test/offline/storage_integration.js +1 -4
  135. package/test/player_unit.js +102 -131
  136. package/test/routing/walker_unit.js +1 -0
  137. package/test/test/assets/dash-aes-128/Fragments(video=0,format=mpd-time-csf) +0 -0
  138. package/test/test/assets/dash-aes-128/Fragments(video=20000000,format=mpd-time-csf) +0 -0
  139. package/test/test/assets/dash-aes-128/Fragments(video=40000000,format=mpd-time-csf) +0 -0
  140. package/test/test/assets/dash-aes-128/Fragments(video=60000000,format=mpd-time-csf) +0 -0
  141. package/test/test/assets/dash-aes-128/Fragments(video=i,format=mpd-time-csf) +0 -0
  142. package/test/test/assets/dash-aes-128/dash.mpd +18 -0
  143. package/test/test/assets/dash-aes-128/license +1 -0
  144. package/test/test/assets/dash-multi-codec/audio_en_2c_128k_aac.mp4 +0 -0
  145. package/test/test/assets/dash-multi-codec/audio_es_2c_64k_opus.webm +0 -0
  146. package/test/test/assets/dash-multi-codec/dash.mpd +32 -0
  147. package/test/test/assets/dash-multi-codec/video_144p_108k_h264.mp4 +0 -0
  148. package/test/test/assets/hls-ts-h265/0.ts +0 -0
  149. package/test/test/assets/hls-ts-h265/hevc.m3u8 +6 -0
  150. package/test/test/assets/hls-ts-h265/index.m3u8 +7 -0
  151. package/test/test/assets/hls-ts-muxed-aac-h265/0.ts +0 -0
  152. package/test/test/assets/hls-ts-muxed-aac-h265/1.ts +0 -0
  153. package/test/test/assets/hls-ts-muxed-aac-h265/media.m3u8 +9 -0
  154. package/test/test/assets/hls-ts-muxed-ac3-h264/media.m3u8 +24 -0
  155. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00000.ts +0 -0
  156. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00001.ts +0 -0
  157. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00002.ts +0 -0
  158. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00003.ts +0 -0
  159. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00004.ts +0 -0
  160. package/test/test/assets/hls-ts-muxed-ac3-h264/s_00005.ts +0 -0
  161. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0000.ts +0 -0
  162. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0001.ts +0 -0
  163. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0002.ts +0 -0
  164. package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0003.ts +0 -0
  165. package/test/test/assets/hls-ts-muxed-ec3-h264/prog_index.m3u8 +14 -0
  166. package/test/test/assets/hls-ts-muxed-mp3-h264/index.m3u8 +23 -0
  167. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-1-v1-a1.ts +0 -0
  168. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-2-v1-a1.ts +0 -0
  169. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-3-v1-a1.ts +0 -0
  170. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-4-v1-a1.ts +0 -0
  171. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-5-v1-a1.ts +0 -0
  172. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-6-v1-a1.ts +0 -0
  173. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-7-v1-a1.ts +0 -0
  174. package/test/test/assets/hls-ts-muxed-mp3-h264/seg-8-v1-a1.ts +0 -0
  175. package/test/test/util/dash_parser_util.js +4 -0
  176. package/test/test/util/fake_ad_manager.js +20 -0
  177. package/test/test/util/fake_media_source_engine.js +8 -2
  178. package/test/test/util/manifest_generator.js +7 -3
  179. package/test/test/util/mss_parser_util.js +4 -0
  180. package/test/test/util/offline_utils.js +1 -0
  181. package/test/test/util/streaming_engine_util.js +7 -4
  182. package/test/text/ttml_text_parser_unit.js +52 -0
  183. package/test/text/vtt_text_parser_unit.js +103 -31
  184. package/test/transmuxer/transmuxer_integration.js +117 -0
  185. package/test/ui/ui_unit.js +3 -10
  186. package/test/util/stream_utils_unit.js +208 -74
  187. package/ui/controls.js +125 -0
  188. package/ui/externs/ui.js +8 -1
  189. package/ui/pip_button.js +22 -120
  190. package/ui/remote_button.js +201 -0
  191. package/ui/ui.js +5 -2
  192. package/demo/common/message_ids.js +0 -309
  193. package/demo/locales/en.json +0 -288
  194. package/demo/locales/source.json +0 -1146
  195. package/externs/mux.js +0 -69
  196. package/lib/lcevc/lcevc_dil.js +0 -152
  197. package/lib/transmuxer/muxjs_transmuxer.js +0 -242
  198. package/test/transmuxer/muxjs_transmuxer_integration.js +0 -177
@@ -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,35 @@ goog.provide('shakaAssets');
24
23
  const shakaAssets = {};
25
24
 
26
25
 
27
- /** @enum {shakaDemo.MessageIds} */
26
+ /** @enum {string} */
28
27
  shakaAssets.Source = {
29
- CUSTOM: shakaDemo.MessageIds.CUSTOM,
30
- SHAKA: shakaDemo.MessageIds.SHAKA,
31
- AXINOM: shakaDemo.MessageIds.AXINOM,
32
- UNIFIED_STREAMING: shakaDemo.MessageIds.UNIFIED_STREAMING,
33
- DASH_IF: shakaDemo.MessageIds.DASH_IF,
34
- BITCODIN: shakaDemo.MessageIds.BITCODIN,
35
- METACDN: shakaDemo.MessageIds.METACDN,
36
- NIMBLE_STREAMER: shakaDemo.MessageIds.NIMBLE_STREAMER,
37
- AZURE_MEDIA_SERVICES: shakaDemo.MessageIds.AZURE_MEDIA_SERVICES,
38
- GPAC: shakaDemo.MessageIds.GPAC,
39
- UPLYNK: shakaDemo.MessageIds.UPLYNK,
40
- APPLE: shakaDemo.MessageIds.APPLE,
41
- IRT: shakaDemo.MessageIds.IRT,
42
- MICROSOFT: shakaDemo.MessageIds.MICROSOFT,
43
- VNOVA: shakaDemo.MessageIds.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
44
  };
45
45
 
46
46
 
47
- /** @enum {shakaDemo.MessageIds} */
47
+ /** @enum {string} */
48
48
  shakaAssets.KeySystem = {
49
- CLEAR_KEY: shakaDemo.MessageIds.CLEAR_KEY,
50
- FAIRPLAY: shakaDemo.MessageIds.FAIRPLAY,
51
- PLAYREADY: shakaDemo.MessageIds.PLAYREADY,
52
- WIDEVINE: shakaDemo.MessageIds.WIDEVINE,
53
- AES128: shakaDemo.MessageIds.AES128,
54
- CLEAR: shakaDemo.MessageIds.CLEAR,
49
+ CLEAR_KEY: 'Clear Key DRM',
50
+ FAIRPLAY: 'Fairplay DRM',
51
+ PLAYREADY: 'PlayReady DRM',
52
+ WIDEVINE: 'Widevine DRM',
53
+ AES128: 'AES-128 protection',
54
+ CLEAR: 'No DRM protection',
55
55
  };
56
56
 
57
57
 
@@ -95,65 +95,65 @@ shakaAssets.identifierForKeySystem = (keySystem) => {
95
95
  };
96
96
 
97
97
 
98
- /** @enum {shakaDemo.MessageIds} */
98
+ /** @enum {string} */
99
99
  shakaAssets.Feature = {
100
100
  // Set if the asset has a special trick mode track, for rewinding effects.
101
- TRICK_MODE: shakaDemo.MessageIds.TRICK_MODE,
102
- XLINK: shakaDemo.MessageIds.XLINK,
101
+ TRICK_MODE: 'Special trick mode track',
102
+ XLINK: 'XLink',
103
103
 
104
104
  // Set if the asset has any subtitle tracks.
105
- SUBTITLES: shakaDemo.MessageIds.SUBTITLES,
105
+ SUBTITLES: 'Subtitles',
106
106
  // Set if the asset has any closed caption tracks.
107
- CAPTIONS: shakaDemo.MessageIds.CAPTIONS,
107
+ CAPTIONS: 'Captions',
108
108
  // Set if the asset has multiple audio languages.
109
- MULTIPLE_LANGUAGES: shakaDemo.MessageIds.MULTIPLE_LANGUAGES,
109
+ MULTIPLE_LANGUAGES: 'Multiple languages',
110
110
  // Set if the asset is audio-only.
111
- AUDIO_ONLY: shakaDemo.MessageIds.AUDIO_ONLY,
111
+ AUDIO_ONLY: 'Audio only',
112
112
  // Set if the asset can be stored offline.
113
- OFFLINE: shakaDemo.MessageIds.OFFLINE,
113
+ OFFLINE: 'Downloadable',
114
114
  // A synthetic property used in the "all content" tab. Should not be given to
115
115
  // assets.
116
- STORED: shakaDemo.MessageIds.STORED,
116
+ STORED: 'Downloaded',
117
117
  // Set if the asset has ads. Autoset by calling setAdTagUri() on an asset.
118
118
  // Does not need to be set manually.
119
- ADS: shakaDemo.MessageIds.ADS,
119
+ ADS: 'Ads',
120
120
 
121
121
  // Set if the asset is a livestream.
122
- LIVE: shakaDemo.MessageIds.LIVE,
122
+ LIVE: 'Live',
123
123
  // A synthetic property used if the asset is VOD (not-livestream).
124
- VOD: shakaDemo.MessageIds.VOD,
124
+ VOD: 'VOD',
125
125
  // Set if the asset has at least one WebM stream.
126
- WEBM: shakaDemo.MessageIds.WEBM,
126
+ WEBM: 'WebM',
127
127
  // Set if the asset has at least one mp4 stream.
128
- MP4: shakaDemo.MessageIds.MP4,
128
+ MP4: 'MP4',
129
129
  // Set if the asset has at least one MPEG-2 TS stream.
130
- MP2TS: shakaDemo.MessageIds.MP2TS,
130
+ MP2TS: 'MPEG-2 TS',
131
131
  // Set if the asset has at least one containerless stream (AAC, etc).
132
- CONTAINERLESS: shakaDemo.MessageIds.CONTAINERLESS,
132
+ CONTAINERLESS: 'Containerless',
133
133
 
134
134
  // Set if the asset has at least one stream that is at least 720p.
135
- HIGH_DEFINITION: shakaDemo.MessageIds.HIGH_DEFINITION,
135
+ HIGH_DEFINITION: 'High definition',
136
136
  // Set if the asset has at least one stream that is at least 4k.
137
- ULTRA_HIGH_DEFINITION: shakaDemo.MessageIds.ULTRA_HIGH_DEFINITION,
137
+ ULTRA_HIGH_DEFINITION: 'Ultra-high definition',
138
138
 
139
139
  // Set if the asset has at least one stream that is surround sound.
140
- SURROUND: shakaDemo.MessageIds.SURROUND,
140
+ SURROUND: 'Surround sound',
141
141
 
142
142
  // Set if the asset is a MPEG-DASH manifest.
143
- DASH: shakaDemo.MessageIds.DASH,
143
+ DASH: 'DASH',
144
144
  // Set if the asset is an HLS manifest.
145
- HLS: shakaDemo.MessageIds.HLS,
145
+ HLS: 'HLS',
146
146
  // Set if the asset is an MSS manifest.
147
- MSS: shakaDemo.MessageIds.MSS,
147
+ MSS: 'MSS',
148
148
 
149
149
  // Set if the asset has at least one image stream.
150
- THUMBNAILS: shakaDemo.MessageIds.THUMBNAILS,
150
+ THUMBNAILS: 'Thumbnails',
151
151
 
152
152
  // Set if the asset has LCEVC.
153
- LCEVC: shakaDemo.MessageIds.LCEVC,
153
+ LCEVC: 'LCEVC',
154
154
 
155
155
  // Set if the asset has Low Latency mode.
156
- LOW_LATENCY: shakaDemo.MessageIds.LOW_LATENCY,
156
+ LOW_LATENCY: 'Low Latency',
157
157
  };
158
158
 
159
159
 
@@ -1364,6 +1364,31 @@ shakaAssets.testAssets = [
1364
1364
  /* source= */ shakaAssets.Source.VNOVA)
1365
1365
  .addFeature(shakaAssets.Feature.DASH)
1366
1366
  .addFeature(shakaAssets.Feature.HIGH_DEFINITION)
1367
+ .addFeature(shakaAssets.Feature.MP2TS)
1368
+ .addFeature(shakaAssets.Feature.OFFLINE)
1369
+ .addFeature(shakaAssets.Feature.LCEVC)
1370
+ .addDescription('LCEVC Enhanced eSports content selection.')
1371
+ .setExtraConfig({
1372
+ streaming: {
1373
+ useNativeHlsOnSafari: false,
1374
+ },
1375
+ mediaSource: {
1376
+ forceTransmux: true,
1377
+ },
1378
+ lcevc: {
1379
+ enabled: true,
1380
+ dynamicPerformanceScaling: true,
1381
+ logLevel: 0,
1382
+ drawLogo: false,
1383
+ },
1384
+ }),
1385
+ new ShakaDemoAssetInfo(
1386
+ /* name= */ 'Tears of Steel LCEVC H264 (HLS, MP4)',
1387
+ /* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png',
1388
+ /* manifestUri= */ 'https://d3mfda3gpj3dw1.cloudfront.net/vn2LvEps745ShGtQ/master.m3u8',
1389
+ /* source= */ shakaAssets.Source.VNOVA)
1390
+ .addFeature(shakaAssets.Feature.HLS)
1391
+ .addFeature(shakaAssets.Feature.HIGH_DEFINITION)
1367
1392
  .addFeature(shakaAssets.Feature.MP4)
1368
1393
  .addFeature(shakaAssets.Feature.OFFLINE)
1369
1394
  .addFeature(shakaAssets.Feature.LCEVC)
@@ -1442,5 +1467,63 @@ shakaAssets.testAssets = [
1442
1467
  },
1443
1468
  }),
1444
1469
  // }}}
1470
+
1471
+ // AWS assets {{{
1472
+ /* MediaTailor Contents */
1473
+ new ShakaDemoAssetInfo(
1474
+ /* name= */ 'Media Tailor HLS',
1475
+ /* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/sing.png',
1476
+ /* manifestUri= */ 'https://ad391cc0d55b44c6a86d232548adc225.mediatailor.us-east-1.amazonaws.com/v1/session/d02fedbbc5a68596164208dd24e9b48aa60dadc7/singssai/master.m3u8',
1477
+ /* source= */ shakaAssets.Source.AWS)
1478
+ .addFeature(shakaAssets.Feature.HLS)
1479
+ .addFeature(shakaAssets.Feature.HIGH_DEFINITION)
1480
+ .addFeature(shakaAssets.Feature.MP2TS)
1481
+ .setMediaTailor('https://ad391cc0d55b44c6a86d232548adc225.mediatailor.us-east-1.amazonaws.com/v1/session/d02fedbbc5a68596164208dd24e9b48aa60dadc7/singssai/master.m3u8'),
1482
+ new ShakaDemoAssetInfo(
1483
+ /* name= */ 'Media Tailor Live HLS',
1484
+ /* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
1485
+ /* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/hls.m3u8',
1486
+ /* source= */ shakaAssets.Source.AWS)
1487
+ .addFeature(shakaAssets.Feature.HLS)
1488
+ .addFeature(shakaAssets.Feature.HIGH_DEFINITION)
1489
+ .addFeature(shakaAssets.Feature.MP2TS)
1490
+ .addFeature(shakaAssets.Feature.LIVE)
1491
+ .setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/hls.m3u8'),
1492
+ new ShakaDemoAssetInfo(
1493
+ /* name= */ 'Media Tailor DASH',
1494
+ /* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
1495
+ /* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-VOD-HLS-DASH/out/v1/b94f3611978f419985a18335bac9d9cb/ddb73bf548a44551a0059c346226445a/eaa5485198bf497284559efb8172425e/index.mpd',
1496
+ /* source= */ shakaAssets.Source.AWS)
1497
+ .addFeature(shakaAssets.Feature.DASH)
1498
+ .addFeature(shakaAssets.Feature.HIGH_DEFINITION)
1499
+ .addFeature(shakaAssets.Feature.MP4)
1500
+ .setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-VOD-HLS-DASH/out/v1/b94f3611978f419985a18335bac9d9cb/ddb73bf548a44551a0059c346226445a/eaa5485198bf497284559efb8172425e/index.mpd',
1501
+ {
1502
+ adsParams: {
1503
+ assetid: 'test2',
1504
+ podduration: '15',
1505
+ },
1506
+ }),
1507
+ new ShakaDemoAssetInfo(
1508
+ /* name= */ 'Media Tailor Live DASH',
1509
+ /* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png',
1510
+ /* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/dash.mpd',
1511
+ /* source= */ shakaAssets.Source.AWS)
1512
+ .addFeature(shakaAssets.Feature.DASH)
1513
+ .addFeature(shakaAssets.Feature.HIGH_DEFINITION)
1514
+ .addFeature(shakaAssets.Feature.MP4)
1515
+ .addFeature(shakaAssets.Feature.LIVE)
1516
+ .setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-DASH/channel/sfp-channel1/dash.mpd'),
1517
+ new ShakaDemoAssetInfo(
1518
+ /* name= */ 'Media Tailor Live HLS with overlays',
1519
+ /* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/re_mars.png',
1520
+ /* manifestUri= */ 'https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-Overlays/channel/sfp-channel2/hls.m3u8',
1521
+ /* source= */ shakaAssets.Source.AWS)
1522
+ .addFeature(shakaAssets.Feature.HLS)
1523
+ .addFeature(shakaAssets.Feature.HIGH_DEFINITION)
1524
+ .addFeature(shakaAssets.Feature.MP2TS)
1525
+ .addFeature(shakaAssets.Feature.LIVE)
1526
+ .setMediaTailor('https://d305rncpy6ne2q.cloudfront.net/v1/session/94063eadf7d8c56e9e2edd84fdf897826a70d0df/SFP-MediaTailor-Live-HLS-Overlays/channel/sfp-channel2/hls.m3u8'),
1527
+ // }}}
1445
1528
  ];
1446
1529
  /* eslint-enable max-len */