shaka-player 3.2.0 → 3.2.4

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 (162) hide show
  1. package/.github/workflows/build_and_test.yaml +73 -0
  2. package/.github/workflows/release.yaml +53 -0
  3. package/AUTHORS +3 -0
  4. package/CHANGELOG.md +182 -1
  5. package/CONTRIBUTORS +3 -0
  6. package/README.md +4 -4
  7. package/build/checkversion.py +1 -1
  8. package/build/generateExterns.js +1 -1
  9. package/build/misspellings.txt +1 -0
  10. package/build/shakaBuildHelpers.py +6 -5
  11. package/build/subprocessWindowsPatch.py +103 -0
  12. package/build/test.py +6 -0
  13. package/demo/common/assets.js +1 -1
  14. package/demo/index.html +1 -1
  15. package/dist/controls.css +2 -2
  16. package/dist/controls.css.map +1 -1
  17. package/dist/demo.compiled.debug.js +1 -1
  18. package/dist/demo.compiled.js +1 -1
  19. package/dist/deps.js +8 -8
  20. package/dist/locales.js +37 -37
  21. package/dist/receiver.compiled.debug.js +1 -1
  22. package/dist/receiver.compiled.js +1 -1
  23. package/dist/shaka-player.compiled.d.ts +195 -5
  24. package/dist/shaka-player.compiled.debug.d.ts +195 -5
  25. package/dist/shaka-player.compiled.debug.externs.js +226 -14
  26. package/dist/shaka-player.compiled.debug.js +424 -399
  27. package/dist/shaka-player.compiled.debug.map +4 -4
  28. package/dist/shaka-player.compiled.externs.js +226 -14
  29. package/dist/shaka-player.compiled.js +826 -812
  30. package/dist/shaka-player.compiled.map +4 -4
  31. package/dist/shaka-player.ui.d.ts +197 -16
  32. package/dist/shaka-player.ui.debug.d.ts +197 -16
  33. package/dist/shaka-player.ui.debug.externs.js +230 -27
  34. package/dist/shaka-player.ui.debug.js +466 -442
  35. package/dist/shaka-player.ui.debug.map +4 -4
  36. package/dist/shaka-player.ui.externs.js +230 -27
  37. package/dist/shaka-player.ui.js +946 -932
  38. package/dist/shaka-player.ui.map +4 -4
  39. package/docs/tutorials/fairplay.md +1 -1
  40. package/docs/tutorials/faq.md +14 -0
  41. package/docs/tutorials/ui.md +5 -5
  42. package/externs/ima.js +4 -0
  43. package/externs/shaka/ads.js +25 -0
  44. package/externs/shaka/player.js +8 -0
  45. package/externs/shaka/text.js +10 -0
  46. package/karma.conf.js +20 -15
  47. package/lib/ads/ad_manager.js +46 -26
  48. package/lib/ads/client_side_ad_manager.js +82 -88
  49. package/lib/ads/server_side_ad_manager.js +45 -13
  50. package/lib/cast/cast_proxy.js +6 -2
  51. package/lib/cast/cast_receiver.js +5 -1
  52. package/lib/cast/cast_sender.js +2 -2
  53. package/lib/cea/sei_processor.js +24 -17
  54. package/lib/dash/dash_parser.js +131 -24
  55. package/lib/dash/segment_list.js +1 -1
  56. package/lib/dash/segment_template.js +1 -1
  57. package/lib/hls/hls_parser.js +74 -17
  58. package/lib/hls/manifest_text_parser.js +1 -0
  59. package/lib/media/closed_caption_parser.js +3 -1
  60. package/lib/media/content_workarounds.js +12 -0
  61. package/lib/media/drm_engine.js +20 -1
  62. package/lib/media/gap_jumping_controller.js +8 -4
  63. package/lib/media/media_source_engine.js +1 -2
  64. package/lib/media/playhead.js +1 -1
  65. package/lib/media/region_observer.js +39 -33
  66. package/lib/media/region_timeline.js +17 -19
  67. package/lib/media/segment_index.js +2 -1
  68. package/lib/media/segment_reference.js +19 -1
  69. package/lib/media/streaming_engine.js +8 -4
  70. package/lib/net/networking_engine.js +6 -1
  71. package/lib/offline/download_manager.js +1 -2
  72. package/lib/offline/storage.js +8 -9
  73. package/lib/player.js +129 -59
  74. package/lib/polyfill/aria.js +12 -2
  75. package/lib/polyfill/encryption_scheme.js +2 -0
  76. package/lib/polyfill/fullscreen.js +2 -0
  77. package/lib/polyfill/mathround.js +2 -0
  78. package/lib/polyfill/media_capabilities.js +73 -21
  79. package/lib/polyfill/mediasource.js +8 -0
  80. package/lib/polyfill/orientation.js +3 -1
  81. package/lib/polyfill/patchedmediakeys_apple.js +6 -4
  82. package/lib/polyfill/patchedmediakeys_ms.js +6 -4
  83. package/lib/polyfill/patchedmediakeys_nop.js +2 -0
  84. package/lib/polyfill/patchedmediakeys_webkit.js +6 -4
  85. package/lib/polyfill/pip_webkit.js +2 -0
  86. package/lib/polyfill/storage_estimate.js +2 -0
  87. package/lib/polyfill/video_play_promise.js +2 -0
  88. package/lib/polyfill/videoplaybackquality.js +2 -0
  89. package/lib/polyfill/vttcue.js +2 -0
  90. package/lib/text/cue.js +6 -0
  91. package/lib/text/mp4_ttml_parser.js +3 -0
  92. package/lib/text/text_engine.js +14 -2
  93. package/lib/text/ttml_text_parser.js +135 -87
  94. package/lib/text/ui_text_displayer.js +213 -80
  95. package/lib/text/vtt_text_parser.js +4 -2
  96. package/lib/text/web_vtt_generator.js +21 -12
  97. package/lib/util/fake_event.js +53 -7
  98. package/lib/util/fake_event_target.js +21 -1
  99. package/lib/util/mp4_box_parsers.js +1 -1
  100. package/lib/util/periods.js +4 -1
  101. package/lib/util/platform.js +13 -1
  102. package/lib/util/stream_utils.js +105 -13
  103. package/lib/util/xml_utils.js +50 -12
  104. package/package.json +3 -6
  105. package/roadmap.md +24 -22
  106. package/test/cast/cast_proxy_unit.js +12 -6
  107. package/test/cast/cast_receiver_integration.js +1 -1
  108. package/test/cast/cast_utils_unit.js +1 -1
  109. package/test/cea/mp4_cea_parser_unit.js +26 -0
  110. package/test/dash/dash_parser_live_unit.js +43 -0
  111. package/test/dash/dash_parser_manifest_unit.js +222 -3
  112. package/test/hls/hls_parser_unit.js +79 -1
  113. package/test/media/closed_caption_parser_unit.js +20 -0
  114. package/test/media/drm_engine_integration.js +86 -2
  115. package/test/media/drm_engine_unit.js +57 -0
  116. package/test/media/playhead_unit.js +27 -1
  117. package/test/media/region_observer_unit.js +40 -5
  118. package/test/media/region_timeline_unit.js +40 -22
  119. package/test/media/streaming_engine_integration.js +2 -1
  120. package/test/media/streaming_engine_unit.js +145 -0
  121. package/test/player_integration.js +79 -8
  122. package/test/player_src_equals_integration.js +41 -8
  123. package/test/player_unit.js +14 -4
  124. package/test/test/assets/3675/chunk-stream0-00001.m4s +0 -0
  125. package/test/test/assets/3675/chunk-stream0-00002.m4s +0 -0
  126. package/test/test/assets/3675/chunk-stream0-00003.m4s +0 -0
  127. package/test/test/assets/3675/chunk-stream0-00004.m4s +0 -0
  128. package/test/test/assets/3675/chunk-stream0-00005.m4s +0 -0
  129. package/test/test/assets/3675/chunk-stream0-00006.m4s +0 -0
  130. package/test/test/assets/3675/chunk-stream0-00007.m4s +0 -0
  131. package/test/test/assets/3675/dash_0.mpd +30 -0
  132. package/test/test/assets/3675/dash_1.mpd +30 -0
  133. package/test/test/assets/3675/dash_2.mpd +30 -0
  134. package/test/test/assets/3675/dash_3.mpd +30 -0
  135. package/test/test/assets/3675/dash_4.mpd +30 -0
  136. package/test/test/assets/3675/dash_5.mpd +26 -0
  137. package/test/test/assets/3675/init-stream0.m4s +0 -0
  138. package/test/test/assets/chapters.vtt +2 -2
  139. package/test/test/assets/chapters2.vtt +10 -0
  140. package/test/test/assets/empty_caption_video_init.mp4 +0 -0
  141. package/test/test/assets/empty_caption_video_segment.mp4 +0 -0
  142. package/test/test/util/fake_ad_manager.js +11 -1
  143. package/test/test/util/ttml_utils.js +81 -0
  144. package/test/test/util/util.js +10 -7
  145. package/test/text/mp4_ttml_parser_unit.js +11 -18
  146. package/test/text/ttml_text_parser_unit.js +542 -220
  147. package/test/text/ui_text_displayer_unit.js +93 -20
  148. package/test/text/vtt_text_parser_unit.js +17 -1
  149. package/test/text/web_vtt_generator_unit.js +58 -3
  150. package/test/ui/localization_unit.js +15 -14
  151. package/test/ui/text_displayer_layout_unit.js +21 -8
  152. package/test/util/mp4_box_parsers_unit.js +28 -0
  153. package/test/util/stream_utils_unit.js +60 -3
  154. package/ui/cast_button.js +2 -3
  155. package/ui/controls.js +11 -6
  156. package/ui/less/buttons.less +0 -4
  157. package/ui/less/containers.less +6 -7
  158. package/ui/locales/ru.json +6 -6
  159. package/ui/localization.js +40 -87
  160. package/ui/pip_button.js +2 -3
  161. package/ui/seek_bar.js +1 -2
  162. package/ui/text_selection.js +1 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../ui/less/general.less","$stdin","../ui/less/containers.less","../ui/less/buttons.less","../ui/less/range_elements.less","../ui/less/spinner.less","../ui/less/other_elements.less","../ui/less/overflow_menu.less","../ui/less/ad_controls.less","../ui/https:/fonts.googleapis.com/css?family=Roboto","../ui/https:/fonts.googleapis.com/icon?family=Material+Icons+Round"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../ui/less/general.less","$stdin","../ui/less/containers.less","../ui/less/buttons.less","../ui/less/range_elements.less","../ui/less/spinner.less","../ui/less/other_elements.less","../ui/less/overflow_menu.less","../ui/less/ad_controls.less","../ui/https:/fonts.googleapis.com/css?family=Roboto","../ui/https:/fonts.googleapis.com/icon?family=Material+Icons+Round"],"names":[],"mappings":"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"}
@@ -204,7 +204,7 @@ shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shaka
204
204
  (new ShakaDemoAssetInfo('"Dig the Uke" by Stefan Kartenberg (audio only, multicodec, Widevine)',"https://storage.googleapis.com/shaka-asset-icons/audio_only.png","https://storage.googleapis.com/shaka-demo-assets/dig-the-uke/dash.mpd",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.AUDIO_ONLY).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
205
205
  "https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, TTML)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),
206
206
  (new ShakaDemoAssetInfo("Tears of Steel (HLS, Server Side ads)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos/hls.m3u8",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).setIMAContentSourceId("2528370").setIMAVideoId("tears-of-steel"),(new ShakaDemoAssetInfo("Tears of Steel (live, DASH, Server Side ads)",
207
- "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("_lDu24IaSYaYAMEfixipNQ"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
207
+ "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("PSzZMzAkSXCmlJOWDmRj8Q"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
208
208
  "https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo, single skippable ad)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",
209
209
  shakaAssets.Source.SHAKA)).setAdTagUri(shakaAssets.AdTag.SINGLE_SKIPPABLE_AD).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Shaka Player History (multicodec, live, DASH)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.WEBM),
210
210
  (new ShakaDemoAssetInfo("Shaka Player History (live, HLS)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.m3u8",shakaAssets.Source.SHAKA)).addDescription("A self-indulgent HLS livestream.").markAsFeatured("Shaka Player History").addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Multi-DRM","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
@@ -204,7 +204,7 @@ shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shaka
204
204
  (new ShakaDemoAssetInfo('"Dig the Uke" by Stefan Kartenberg (audio only, multicodec, Widevine)',"https://storage.googleapis.com/shaka-asset-icons/audio_only.png","https://storage.googleapis.com/shaka-demo-assets/dig-the-uke/dash.mpd",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.AUDIO_ONLY).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
205
205
  "https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, TTML)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),
206
206
  (new ShakaDemoAssetInfo("Tears of Steel (HLS, Server Side ads)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos/hls.m3u8",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).setIMAContentSourceId("2528370").setIMAVideoId("tears-of-steel"),(new ShakaDemoAssetInfo("Tears of Steel (live, DASH, Server Side ads)",
207
- "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("_lDu24IaSYaYAMEfixipNQ"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
207
+ "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("PSzZMzAkSXCmlJOWDmRj8Q"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
208
208
  "https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo, single skippable ad)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",
209
209
  shakaAssets.Source.SHAKA)).setAdTagUri(shakaAssets.AdTag.SINGLE_SKIPPABLE_AD).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Shaka Player History (multicodec, live, DASH)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.WEBM),
210
210
  (new ShakaDemoAssetInfo("Shaka Player History (live, HLS)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.m3u8",shakaAssets.Source.SHAKA)).addDescription("A self-indulgent HLS livestream.").markAsFeatured("Shaka Player History").addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Multi-DRM","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
package/dist/deps.js CHANGED
@@ -17,12 +17,12 @@ goog.addDependency('../../../../dist/locales.js', ['shaka.ui.Locales'], ['shaka.
17
17
  goog.addDependency('../../../../lib/abr/ewma.js', ['shaka.abr.Ewma'], ['goog.asserts'], {});
18
18
  goog.addDependency('../../../../lib/abr/ewma_bandwidth_estimator.js', ['shaka.abr.EwmaBandwidthEstimator'], ['shaka.abr.Ewma'], {});
19
19
  goog.addDependency('../../../../lib/abr/simple_abr_manager.js', ['shaka.abr.SimpleAbrManager'], ['goog.asserts', 'shaka.abr.EwmaBandwidthEstimator', 'shaka.log', 'shaka.util.Iterables', 'shaka.util.StreamUtils'], {});
20
- goog.addDependency('../../../../lib/ads/ad_manager.js', ['shaka.ads.AdManager', 'shaka.ads.CuePoint'], ['shaka.Player', 'shaka.ads.AdsStats', 'shaka.ads.ClientSideAdManager', 'shaka.ads.ServerSideAdManager', 'shaka.log', 'shaka.util.Error', 'shaka.util.FakeEvent', 'shaka.util.FakeEventTarget'], {});
20
+ goog.addDependency('../../../../lib/ads/ad_manager.js', ['shaka.ads.AdManager'], ['shaka.Player', 'shaka.ads.AdsStats', 'shaka.ads.ClientSideAdManager', 'shaka.ads.ServerSideAdManager', 'shaka.log', 'shaka.util.Error', 'shaka.util.FakeEvent', 'shaka.util.FakeEventTarget', 'shaka.util.IReleasable'], {});
21
21
  goog.addDependency('../../../../lib/ads/ads_stats.js', ['shaka.ads.AdsStats'], [], {});
22
22
  goog.addDependency('../../../../lib/ads/client_side_ad.js', ['shaka.ads.ClientSideAd'], ['shaka.util.EventManager'], {});
23
- goog.addDependency('../../../../lib/ads/client_side_ad_manager.js', ['shaka.ads.ClientSideAdManager'], ['goog.asserts', 'shaka.ads.ClientSideAd'], {});
23
+ goog.addDependency('../../../../lib/ads/client_side_ad_manager.js', ['shaka.ads.ClientSideAdManager'], ['goog.asserts', 'shaka.ads.ClientSideAd', 'shaka.util.IReleasable'], {});
24
24
  goog.addDependency('../../../../lib/ads/server_side_ad.js', ['shaka.ads.ServerSideAd'], [], {});
25
- goog.addDependency('../../../../lib/ads/server_side_ad_manager.js', ['shaka.ads.ServerSideAdManager'], ['goog.asserts', 'shaka.ads.ServerSideAd', 'shaka.log'], {});
25
+ goog.addDependency('../../../../lib/ads/server_side_ad_manager.js', ['shaka.ads.ServerSideAdManager'], ['goog.asserts', 'shaka.ads.ServerSideAd', 'shaka.log', 'shaka.util.IReleasable'], {});
26
26
  goog.addDependency('../../../../lib/cast/cast_proxy.js', ['shaka.cast.CastProxy'], ['goog.asserts', 'shaka.Player', 'shaka.cast.CastSender', 'shaka.cast.CastUtils', 'shaka.log', 'shaka.util.Error', 'shaka.util.EventManager', 'shaka.util.FakeEvent', 'shaka.util.FakeEventTarget', 'shaka.util.IDestroyable'], {});
27
27
  goog.addDependency('../../../../lib/cast/cast_receiver.js', ['shaka.cast.CastReceiver'], ['goog.asserts', 'shaka.Player', 'shaka.cast.CastUtils', 'shaka.log', 'shaka.util.Error', 'shaka.util.EventManager', 'shaka.util.FakeEvent', 'shaka.util.FakeEventTarget', 'shaka.util.IDestroyable', 'shaka.util.Platform', 'shaka.util.Timer'], {});
28
28
  goog.addDependency('../../../../lib/cast/cast_sender.js', ['shaka.cast.CastSender'], ['goog.asserts', 'shaka.cast.CastUtils', 'shaka.log', 'shaka.util.Error', 'shaka.util.FakeEvent', 'shaka.util.IDestroyable', 'shaka.util.PublicPromise', 'shaka.util.Timer'], {});
@@ -68,8 +68,8 @@ goog.addDependency('../../../../lib/media/play_rate_controller.js', ['shaka.medi
68
68
  goog.addDependency('../../../../lib/media/playhead.js', ['shaka.media.MediaSourcePlayhead', 'shaka.media.Playhead', 'shaka.media.SrcEqualsPlayhead'], ['goog.asserts', 'shaka.log', 'shaka.media.GapJumpingController', 'shaka.media.StallDetector', 'shaka.media.StallDetector.MediaElementImplementation', 'shaka.media.TimeRangesUtils', 'shaka.media.VideoWrapper', 'shaka.util.EventManager', 'shaka.util.IReleasable', 'shaka.util.MediaReadyState', 'shaka.util.Timer'], {});
69
69
  goog.addDependency('../../../../lib/media/playhead_observer.js', ['shaka.media.IPlayheadObserver', 'shaka.media.PlayheadObserverManager'], ['shaka.util.IReleasable', 'shaka.util.Timer'], {});
70
70
  goog.addDependency('../../../../lib/media/presentation_timeline.js', ['shaka.media.PresentationTimeline'], ['goog.asserts', 'shaka.log', 'shaka.media.SegmentReference'], {});
71
- goog.addDependency('../../../../lib/media/region_observer.js', ['shaka.media.RegionObserver'], ['shaka.media.IPlayheadObserver', 'shaka.media.RegionTimeline'], {});
72
- goog.addDependency('../../../../lib/media/region_timeline.js', ['shaka.media.RegionTimeline'], ['shaka.util.IReleasable', 'shaka.util.Timer'], {});
71
+ goog.addDependency('../../../../lib/media/region_observer.js', ['shaka.media.RegionObserver'], ['shaka.media.IPlayheadObserver', 'shaka.media.RegionTimeline', 'shaka.util.EventManager', 'shaka.util.FakeEvent', 'shaka.util.FakeEventTarget'], {});
72
+ goog.addDependency('../../../../lib/media/region_timeline.js', ['shaka.media.RegionTimeline'], ['shaka.util.FakeEvent', 'shaka.util.FakeEventTarget', 'shaka.util.IReleasable', 'shaka.util.Timer'], {});
73
73
  goog.addDependency('../../../../lib/media/segment_index.js', ['shaka.media.MetaSegmentIndex', 'shaka.media.SegmentIndex', 'shaka.media.SegmentIterator'], ['goog.asserts', 'shaka.Deprecate', 'shaka.media.SegmentReference', 'shaka.util.IReleasable', 'shaka.util.Timer'], {});
74
74
  goog.addDependency('../../../../lib/media/segment_reference.js', ['shaka.media.InitSegmentReference', 'shaka.media.SegmentReference'], ['goog.asserts', 'shaka.util.ArrayUtils'], {});
75
75
  goog.addDependency('../../../../lib/media/stall_detector.js', ['shaka.media.StallDetector', 'shaka.media.StallDetector.Implementation', 'shaka.media.StallDetector.MediaElementImplementation'], ['shaka.media.TimeRangesUtils', 'shaka.util.IReleasable'], {});
@@ -149,8 +149,8 @@ goog.addDependency('../../../../lib/util/ebml_parser.js', ['shaka.util.EbmlEleme
149
149
  goog.addDependency('../../../../lib/util/error.js', ['shaka.util.Error'], [], {});
150
150
  goog.addDependency('../../../../lib/util/event_manager.js', ['shaka.util.EventManager'], ['goog.asserts', 'shaka.util.IReleasable', 'shaka.util.MultiMap'], {});
151
151
  goog.addDependency('../../../../lib/util/fairplay_utils.js', ['shaka.util.FairPlayUtils'], ['goog.Uri', 'goog.asserts', 'shaka.util.BufferUtils', 'shaka.util.Error', 'shaka.util.StringUtils'], {});
152
- goog.addDependency('../../../../lib/util/fake_event.js', ['shaka.util.FakeEvent'], [], {});
153
- goog.addDependency('../../../../lib/util/fake_event_target.js', ['shaka.util.FakeEventTarget'], ['goog.asserts', 'shaka.log', 'shaka.util.FakeEvent', 'shaka.util.MultiMap'], {});
152
+ goog.addDependency('../../../../lib/util/fake_event.js', ['shaka.util.FakeEvent'], ['goog.asserts'], {});
153
+ goog.addDependency('../../../../lib/util/fake_event_target.js', ['shaka.util.FakeEventTarget'], ['goog.asserts', 'shaka.log', 'shaka.util.FakeEvent', 'shaka.util.IReleasable', 'shaka.util.MultiMap'], {});
154
154
  goog.addDependency('../../../../lib/util/functional.js', ['shaka.util.Functional'], ['shaka.Deprecate'], {});
155
155
  goog.addDependency('../../../../lib/util/i_destroyable.js', ['shaka.util.IDestroyable'], [], {});
156
156
  goog.addDependency('../../../../lib/util/i_releasable.js', ['shaka.util.IReleasable'], [], {});
@@ -180,7 +180,7 @@ goog.addDependency('../../../../lib/util/switch_history.js', ['shaka.util.Switch
180
180
  goog.addDependency('../../../../lib/util/text_parser.js', ['shaka.util.TextParser'], ['goog.asserts'], {});
181
181
  goog.addDependency('../../../../lib/util/timer.js', ['shaka.util.Timer'], ['shaka.util.DelayedTick'], {});
182
182
  goog.addDependency('../../../../lib/util/uint8array_utils.js', ['shaka.util.Uint8ArrayUtils'], ['shaka.Deprecate', 'shaka.util.BufferUtils', 'shaka.util.Iterables', 'shaka.util.StringUtils'], {});
183
- goog.addDependency('../../../../lib/util/xml_utils.js', ['shaka.util.XmlUtils'], ['shaka.log', 'shaka.util.StringUtils'], {});
183
+ goog.addDependency('../../../../lib/util/xml_utils.js', ['shaka.util.XmlUtils'], ['goog.asserts', 'shaka.log', 'shaka.util.StringUtils'], {});
184
184
  goog.addDependency('../../../../third_party/closure-uri/uri.js', ['goog.Uri', 'goog.Uri.QueryData'], ['goog.asserts', 'goog.uri.utils', 'goog.uri.utils.ComponentIndex'], {});
185
185
  goog.addDependency('../../../../third_party/closure-uri/utils.js', ['goog.uri.utils', 'goog.uri.utils.ComponentIndex'], [], {});
186
186
  goog.addDependency('../../../../third_party/language-mapping-list/language-mapping-list.js', ['mozilla.LanguageMapping'], [], {});
package/dist/locales.js CHANGED
@@ -523,12 +523,12 @@ shaka.ui.Locales.addTo = function(localization) {
523
523
  ['VOLUME', 'Volume'],
524
524
  ]));
525
525
  localization.insert('ru', new Map([
526
- ['AD_DURATION', 'Продолжительность объявления'],
527
- ['AD_PROGRESS', 'Объявление [AD_ON] из [NUM_ADS]'],
528
- ['AD_TIME', 'Объявление: [AD_TIME]'],
526
+ ['AD_DURATION', 'Продолжительность рекламы'],
527
+ ['AD_PROGRESS', 'Реклама [AD_ON] из [NUM_ADS]'],
528
+ ['AD_TIME', 'Реклама: [AD_TIME]'],
529
529
  ['AUTO_QUALITY', 'Авто'],
530
530
  ['BACK', 'Назад'],
531
- ['CAPTIONS', 'Титры'],
531
+ ['CAPTIONS', 'Субтитры'],
532
532
  ['CAST', 'Транслировать...'],
533
533
  ['ENTER_LOOP_MODE', 'Зациклить текущее видео'],
534
534
  ['ENTER_PICTURE_IN_PICTURE', 'Перейти в режим "Картинка в картинке"'],
@@ -544,8 +544,8 @@ shaka.ui.Locales.addTo = function(localization) {
544
544
  ['MULTIPLE_LANGUAGES', 'Несколько языков'],
545
545
  ['MUTE', 'Отключить звук'],
546
546
  ['NOT_APPLICABLE', 'Неприменимо'],
547
- ['OFF', 'Включить'],
548
- ['ON', 'Отключить'],
547
+ ['OFF', 'Выкл.'],
548
+ ['ON', 'Вкл.'],
549
549
  ['PAUSE', 'Пауза'],
550
550
  ['PICTURE_IN_PICTURE', 'Картинка в картинке'],
551
551
  ['PLAY', 'Воспроизвести'],
@@ -719,43 +719,43 @@ shaka.ui.Locales.addTo = function(localization) {
719
719
  * @const
720
720
  */
721
721
  shaka.ui.Locales.Ids = {
722
- SKIP_AD: 'SKIP_AD',
723
- REPLAY: 'REPLAY',
724
- UNMUTE: 'UNMUTE',
725
- LIVE: 'LIVE',
726
- BACK: 'BACK',
727
- EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
728
- FAST_FORWARD: 'FAST_FORWARD',
729
- SEEK: 'SEEK',
730
- AIRPLAY: 'AIRPLAY',
731
- MORE_SETTINGS: 'MORE_SETTINGS',
732
- UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
733
- AD_PROGRESS: 'AD_PROGRESS',
722
+ SUBTITLE_FORCED: 'SUBTITLE_FORCED',
723
+ UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
734
724
  LANGUAGE: 'LANGUAGE',
725
+ EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
735
726
  PAUSE: 'PAUSE',
736
- MUTE: 'MUTE',
737
- AD_TIME: 'AD_TIME',
738
- OFF: 'OFF',
739
- REWIND: 'REWIND',
740
727
  PLAYBACK_RATE: 'PLAYBACK_RATE',
741
- FULL_SCREEN: 'FULL_SCREEN',
742
- RESOLUTION: 'RESOLUTION',
743
- CAST: 'CAST',
744
- SKIP_TO_LIVE: 'SKIP_TO_LIVE',
745
- ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
728
+ VOLUME: 'VOLUME',
729
+ EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
730
+ AD_TIME: 'AD_TIME',
731
+ UNMUTE: 'UNMUTE',
746
732
  CAPTIONS: 'CAPTIONS',
733
+ EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
734
+ BACK: 'BACK',
747
735
  MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
748
- ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
749
- SUBTITLE_FORCED: 'SUBTITLE_FORCED',
750
- PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
751
- NOT_APPLICABLE: 'NOT_APPLICABLE',
752
- UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
753
- ON: 'ON',
754
736
  AD_DURATION: 'AD_DURATION',
755
- AUTO_QUALITY: 'AUTO_QUALITY',
756
- EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
757
- VOLUME: 'VOLUME',
737
+ FULL_SCREEN: 'FULL_SCREEN',
738
+ AD_PROGRESS: 'AD_PROGRESS',
739
+ ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
740
+ MORE_SETTINGS: 'MORE_SETTINGS',
741
+ SKIP_TO_LIVE: 'SKIP_TO_LIVE',
742
+ LIVE: 'LIVE',
758
743
  LOOP: 'LOOP',
759
- EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
744
+ OFF: 'OFF',
745
+ REPLAY: 'REPLAY',
746
+ SEEK: 'SEEK',
747
+ ON: 'ON',
748
+ AIRPLAY: 'AIRPLAY',
749
+ ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
750
+ AUTO_QUALITY: 'AUTO_QUALITY',
751
+ UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
752
+ SKIP_AD: 'SKIP_AD',
753
+ FAST_FORWARD: 'FAST_FORWARD',
760
754
  PLAY: 'PLAY',
755
+ RESOLUTION: 'RESOLUTION',
756
+ CAST: 'CAST',
757
+ REWIND: 'REWIND',
758
+ NOT_APPLICABLE: 'NOT_APPLICABLE',
759
+ MUTE: 'MUTE',
760
+ PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
761
761
  };
@@ -157,7 +157,7 @@ shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shaka
157
157
  (new ShakaDemoAssetInfo('"Dig the Uke" by Stefan Kartenberg (audio only, multicodec, Widevine)',"https://storage.googleapis.com/shaka-asset-icons/audio_only.png","https://storage.googleapis.com/shaka-demo-assets/dig-the-uke/dash.mpd",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.AUDIO_ONLY).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
158
158
  "https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, TTML)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),
159
159
  (new ShakaDemoAssetInfo("Tears of Steel (HLS, Server Side ads)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos/hls.m3u8",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).setIMAContentSourceId("2528370").setIMAVideoId("tears-of-steel"),(new ShakaDemoAssetInfo("Tears of Steel (live, DASH, Server Side ads)",
160
- "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("_lDu24IaSYaYAMEfixipNQ"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
160
+ "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("PSzZMzAkSXCmlJOWDmRj8Q"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
161
161
  "https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo, single skippable ad)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",
162
162
  shakaAssets.Source.SHAKA)).setAdTagUri(shakaAssets.AdTag.SINGLE_SKIPPABLE_AD).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Shaka Player History (multicodec, live, DASH)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.WEBM),
163
163
  (new ShakaDemoAssetInfo("Shaka Player History (live, HLS)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.m3u8",shakaAssets.Source.SHAKA)).addDescription("A self-indulgent HLS livestream.").markAsFeatured("Shaka Player History").addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Multi-DRM","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
@@ -157,7 +157,7 @@ shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shaka
157
157
  (new ShakaDemoAssetInfo('"Dig the Uke" by Stefan Kartenberg (audio only, multicodec, Widevine)',"https://storage.googleapis.com/shaka-asset-icons/audio_only.png","https://storage.googleapis.com/shaka-demo-assets/dig-the-uke/dash.mpd",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.AUDIO_ONLY).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
158
158
  "https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, TTML)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),
159
159
  (new ShakaDemoAssetInfo("Tears of Steel (HLS, Server Side ads)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos/hls.m3u8",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).setIMAContentSourceId("2528370").setIMAVideoId("tears-of-steel"),(new ShakaDemoAssetInfo("Tears of Steel (live, DASH, Server Side ads)",
160
- "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("_lDu24IaSYaYAMEfixipNQ"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
160
+ "https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-ttml/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.LIVE).setIMAAssetKey("PSzZMzAkSXCmlJOWDmRj8Q"),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
161
161
  "https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Tears of Steel (multicodec, surround + stereo, single skippable ad)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://storage.googleapis.com/shaka-demo-assets/tos-surround/dash.mpd",
162
162
  shakaAssets.Source.SHAKA)).setAdTagUri(shakaAssets.AdTag.SINGLE_SKIPPABLE_AD).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Shaka Player History (multicodec, live, DASH)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.WEBM),
163
163
  (new ShakaDemoAssetInfo("Shaka Player History (live, HLS)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://storage.googleapis.com/shaka-live-assets/player-source.m3u8",shakaAssets.Source.SHAKA)).addDescription("A self-indulgent HLS livestream.").markAsFeatured("Shaka Player History").addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Multi-DRM","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png",
@@ -473,8 +473,9 @@ declare namespace shaka.ads {
473
473
  /**
474
474
  * A class responsible for ad-related interactions.
475
475
  */
476
- class AdManager extends shaka.util.FakeEventTarget implements shaka.extern.IAdManager {
476
+ class AdManager extends shaka.util.FakeEventTarget implements shaka.extern.IAdManager , shaka.util.IReleasable {
477
477
  private noStructuralTyping_shaka_ads_AdManager : any;
478
+ getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ;
478
479
  getStats ( ) : shaka.extern.AdsStats ;
479
480
  initClientSide (adContainer : any , video : any ) : any ;
480
481
  initServerSide (adContainer : any , video : any ) : any ;
@@ -482,6 +483,7 @@ declare namespace shaka.ads {
482
483
  onCueMetadataChange (value : any ) : any ;
483
484
  onDashTimedMetadata (region : any ) : any ;
484
485
  onHlsTimedMetadata (metadata : any , timestamp : any ) : any ;
486
+ release ( ) : any ;
485
487
  replaceServerSideAdTagParameters (adTagParameters : any ) : any ;
486
488
  requestClientSideAds (imaRequest : any ) : any ;
487
489
  requestServerSideStream (imaRequest : google.ima.dai.api.StreamRequest , backupUrl ? : string ) : Promise < string > ;
@@ -1117,7 +1119,7 @@ declare namespace shaka.media {
1117
1119
  */
1118
1120
  class SegmentReference {
1119
1121
  private noStructuralTyping_shaka_media_SegmentReference : any;
1120
- constructor (startTime : number , endTime : number , uris : ( ) => string [] , startByte : number , endByte : number | null , initSegmentReference : shaka.media.InitSegmentReference | null , timestampOffset : number , appendWindowStart : number , appendWindowEnd : number , partialReferences ? : shaka.media.SegmentReference [] , tilesLayout ? : string | null ) ;
1122
+ constructor (startTime : number , endTime : number , uris : ( ) => string [] , startByte : number , endByte : number | null , initSegmentReference : shaka.media.InitSegmentReference | null , timestampOffset : number , appendWindowStart : number , appendWindowEnd : number , partialReferences ? : shaka.media.SegmentReference [] , tilesLayout ? : string | null , tileDuration ? : number | null ) ;
1121
1123
  /**
1122
1124
  * Returns the offset from the start of the resource to the end of the
1123
1125
  * segment, inclusive. A value of null indicates that the segment extends to
@@ -1137,6 +1139,11 @@ declare namespace shaka.media {
1137
1139
  * Returns the segment's start time in seconds.
1138
1140
  */
1139
1141
  getStartTime ( ) : number ;
1142
+ /**
1143
+ * Returns the segment's explicit tile duration.
1144
+ * Only defined in image segments.
1145
+ */
1146
+ getTileDuration ( ) : number | null ;
1140
1147
  /**
1141
1148
  * Returns the segment's tiles layout. Only defined in image segments.
1142
1149
  */
@@ -1437,6 +1444,172 @@ declare namespace shaka {
1437
1444
  }
1438
1445
  }
1439
1446
  // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1447
+ declare namespace shaka.polyfill {
1448
+ class Aria {
1449
+ private noStructuralTyping_shaka_polyfill_Aria : any;
1450
+ /**
1451
+ * Install the polyfill if needed.
1452
+ */
1453
+ static install ( ) : any ;
1454
+ }
1455
+ }
1456
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1457
+ declare namespace shaka.polyfill {
1458
+ class EncryptionScheme {
1459
+ private noStructuralTyping_shaka_polyfill_EncryptionScheme : any;
1460
+ /**
1461
+ * Install the polyfill if needed.
1462
+ */
1463
+ static install ( ) : any ;
1464
+ }
1465
+ }
1466
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1467
+ declare namespace shaka.polyfill {
1468
+ class Fullscreen {
1469
+ private noStructuralTyping_shaka_polyfill_Fullscreen : any;
1470
+ /**
1471
+ * Install the polyfill if needed.
1472
+ */
1473
+ static install ( ) : any ;
1474
+ }
1475
+ }
1476
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1477
+ declare namespace shaka.polyfill {
1478
+ class MathRound {
1479
+ private noStructuralTyping_shaka_polyfill_MathRound : any;
1480
+ /**
1481
+ * Install the polyfill if needed.
1482
+ */
1483
+ static install ( ) : any ;
1484
+ }
1485
+ }
1486
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1487
+ declare namespace shaka.polyfill {
1488
+ class MediaCapabilities {
1489
+ private noStructuralTyping_shaka_polyfill_MediaCapabilities : any;
1490
+ /**
1491
+ * Install the polyfill if needed.
1492
+ */
1493
+ static install ( ) : any ;
1494
+ /**
1495
+ * A copy of the MediaCapabilities instance, to prevent Safari from
1496
+ * garbage-collecting the polyfilled method on it. We make it public and export
1497
+ * it to ensure that it is not stripped out by the compiler.
1498
+ */
1499
+ static originalMcap : any | null ;
1500
+ }
1501
+ }
1502
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1503
+ declare namespace shaka.polyfill {
1504
+ class MediaSource {
1505
+ private noStructuralTyping_shaka_polyfill_MediaSource : any;
1506
+ /**
1507
+ * Install the polyfill if needed.
1508
+ */
1509
+ static install ( ) : any ;
1510
+ }
1511
+ }
1512
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1513
+ declare namespace shaka.polyfill {
1514
+ class Orientation {
1515
+ private noStructuralTyping_shaka_polyfill_Orientation : any;
1516
+ /**
1517
+ * Install the polyfill if needed.
1518
+ */
1519
+ static install ( ) : any ;
1520
+ }
1521
+ }
1522
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1523
+ declare namespace shaka.polyfill {
1524
+ class PatchedMediaKeysApple {
1525
+ private noStructuralTyping_shaka_polyfill_PatchedMediaKeysApple : any;
1526
+ /**
1527
+ * Installs the polyfill if needed.
1528
+ */
1529
+ static install ( ) : any ;
1530
+ }
1531
+ }
1532
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1533
+ declare namespace shaka.polyfill {
1534
+ class PatchedMediaKeysMs {
1535
+ private noStructuralTyping_shaka_polyfill_PatchedMediaKeysMs : any;
1536
+ /**
1537
+ * Installs the polyfill if needed.
1538
+ */
1539
+ static install ( ) : any ;
1540
+ }
1541
+ }
1542
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1543
+ declare namespace shaka.polyfill {
1544
+ class PatchedMediaKeysNop {
1545
+ private noStructuralTyping_shaka_polyfill_PatchedMediaKeysNop : any;
1546
+ /**
1547
+ * Installs the polyfill if needed.
1548
+ */
1549
+ static install ( ) : any ;
1550
+ }
1551
+ }
1552
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1553
+ declare namespace shaka.polyfill {
1554
+ class PatchedMediaKeysWebkit {
1555
+ private noStructuralTyping_shaka_polyfill_PatchedMediaKeysWebkit : any;
1556
+ /**
1557
+ * Installs the polyfill if needed.
1558
+ */
1559
+ static install ( ) : any ;
1560
+ }
1561
+ }
1562
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1563
+ declare namespace shaka.polyfill {
1564
+ class PiPWebkit {
1565
+ private noStructuralTyping_shaka_polyfill_PiPWebkit : any;
1566
+ /**
1567
+ * Install the polyfill if needed.
1568
+ */
1569
+ static install ( ) : any ;
1570
+ }
1571
+ }
1572
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1573
+ declare namespace shaka.polyfill {
1574
+ class StorageEstimate {
1575
+ private noStructuralTyping_shaka_polyfill_StorageEstimate : any;
1576
+ /**
1577
+ * Install the polyfill if needed.
1578
+ */
1579
+ static install ( ) : any ;
1580
+ }
1581
+ }
1582
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1583
+ declare namespace shaka.polyfill {
1584
+ class VTTCue {
1585
+ private noStructuralTyping_shaka_polyfill_VTTCue : any;
1586
+ /**
1587
+ * Install the polyfill if needed.
1588
+ */
1589
+ static install ( ) : any ;
1590
+ }
1591
+ }
1592
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1593
+ declare namespace shaka.polyfill {
1594
+ class VideoPlayPromise {
1595
+ private noStructuralTyping_shaka_polyfill_VideoPlayPromise : any;
1596
+ /**
1597
+ * Install the polyfill if needed.
1598
+ */
1599
+ static install ( ) : any ;
1600
+ }
1601
+ }
1602
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1603
+ declare namespace shaka.polyfill {
1604
+ class VideoPlaybackQuality {
1605
+ private noStructuralTyping_shaka_polyfill_VideoPlaybackQuality : any;
1606
+ /**
1607
+ * Install the polyfill if needed.
1608
+ */
1609
+ static install ( ) : any ;
1610
+ }
1611
+ }
1612
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
1440
1613
  declare namespace shaka.text {
1441
1614
  class Cue implements shaka.extern.Cue {
1442
1615
  private noStructuralTyping_shaka_text_Cue : any;
@@ -1457,6 +1630,7 @@ declare namespace shaka.text {
1457
1630
  fontStyle : any ;
1458
1631
  fontWeight : any ;
1459
1632
  id : any ;
1633
+ isContainer : any ;
1460
1634
  letterSpacing : any ;
1461
1635
  line : any ;
1462
1636
  /**
@@ -2169,12 +2343,12 @@ declare namespace shaka.util {
2169
2343
  declare namespace shaka.util {
2170
2344
  class FakeEvent extends Event {
2171
2345
  private noStructuralTyping_shaka_util_FakeEvent : any;
2172
- constructor (type : string , dict ? : object | null ) ;
2346
+ constructor (type : string , dict ? : Map < string , object | null > | null ) ;
2173
2347
  }
2174
2348
  }
2175
2349
  // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/dist/shaka-player.compiled.externs.js
2176
2350
  declare namespace shaka.util {
2177
- class FakeEventTarget implements EventTarget {
2351
+ class FakeEventTarget implements EventTarget , shaka.util.IReleasable {
2178
2352
  private noStructuralTyping_shaka_util_FakeEventTarget : any;
2179
2353
  /**
2180
2354
  * Add an event listener to this object.
@@ -2194,6 +2368,7 @@ declare namespace shaka.util {
2194
2368
  * @param listener The callback or listener object to invoke.
2195
2369
  */
2196
2370
  listenToAllEvents (listener : EventListener | null | ( (a : Event ) => any ) ) : any ;
2371
+ release ( ) : any ;
2197
2372
  /**
2198
2373
  * Remove an event listener from this object.
2199
2374
  * @param type The event type for which you wish to remove a listener.
@@ -2596,6 +2771,7 @@ declare namespace google.ima {
2596
2771
  constructor (container : google.ima.AdDisplayContainer ) ;
2597
2772
  addEventListener ( ) : any ;
2598
2773
  contentComplete ( ) : any ;
2774
+ destroy ( ) : any ;
2599
2775
  dispatchEvent ( ) : any ;
2600
2776
  getSettings ( ) : google.ima.ImaSdkSettings | null ;
2601
2777
  removeEventListener ( ) : any ;
@@ -2607,6 +2783,7 @@ declare namespace google.ima {
2607
2783
  class AdsManager implements EventTarget {
2608
2784
  private noStructuralTyping_google_ima_AdsManager : any;
2609
2785
  addEventListener ( ) : any ;
2786
+ destroy ( ) : any ;
2610
2787
  dispatchEvent ( ) : any ;
2611
2788
  getAdSkippableState ( ) : boolean ;
2612
2789
  getCuePoints ( ) : number [] ;
@@ -2976,6 +3153,10 @@ declare namespace shaka.extern.AbrManager {
2976
3153
  type SwitchCallback = (a : shaka.extern.Variant , b ? : boolean , c ? : number ) => any ;
2977
3154
  }
2978
3155
  // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/externs/shaka/ads.js
3156
+ declare namespace shaka.extern {
3157
+ type AdCuePoint = { end : number | null , start : number } ;
3158
+ }
3159
+ // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/externs/shaka/ads.js
2979
3160
  declare namespace shaka.extern {
2980
3161
  type AdsStats = { loadTimes : number [] , playedCompletely : number , skipped : number , started : number } ;
2981
3162
  }
@@ -3015,6 +3196,7 @@ declare namespace shaka.extern {
3015
3196
  * in the player.
3016
3197
  */
3017
3198
  interface IAdManager extends EventTarget {
3199
+ getServerSideCuePoints ( ) : shaka.extern.AdCuePoint [] ;
3018
3200
  /**
3019
3201
  * Get statistics for the current playback session. If the player is not
3020
3202
  * playing content, this will return an empty stats object.
@@ -3026,6 +3208,7 @@ declare namespace shaka.extern {
3026
3208
  onCueMetadataChange (value : shaka.extern.ID3Metadata ) : any ;
3027
3209
  onDashTimedMetadata (region : shaka.extern.TimelineRegionInfo ) : any ;
3028
3210
  onHlsTimedMetadata (metadata : shaka.extern.ID3Metadata , timestampOffset : number ) : any ;
3211
+ release ( ) : any ;
3029
3212
  replaceServerSideAdTagParameters (adTagParameters : object | null ) : any ;
3030
3213
  requestClientSideAds (imaRequest : google.ima.AdsRequest ) : any ;
3031
3214
  requestServerSideStream (imaRequest : google.ima.dai.api.StreamRequest , backupUrl ? : string ) : Promise < string > ;
@@ -3491,7 +3674,7 @@ declare namespace shaka.extern {
3491
3674
  }
3492
3675
  // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/externs/shaka/player.js
3493
3676
  declare namespace shaka.extern {
3494
- type Thumbnail = { duration : number , height : number , positionX : number , positionY : number , startTime : number , uris : string [] , width : number } ;
3677
+ type Thumbnail = { duration : number , height : number , imageHeight : number , imageWidth : number , positionX : number , positionY : number , startTime : number , uris : string [] , width : number } ;
3495
3678
  }
3496
3679
  // Generated from /usr/local/google/home/joeyparrish/hacking/shaka/clean/externs/shaka/player.js
3497
3680
  declare namespace shaka.extern {
@@ -3568,6 +3751,13 @@ declare namespace shaka.extern {
3568
3751
  * Id of the cue.
3569
3752
  */
3570
3753
  id : string ;
3754
+ /**
3755
+ * If true, this represents a container element that is "above" the main
3756
+ * cues. For example, the <body> and <div> tags that contain the <p> tags
3757
+ * in a TTML file. This controls the flow of the final cues; any nested cues
3758
+ * within an "isContainer" cue will be laid out as separate lines.
3759
+ */
3760
+ isContainer : boolean ;
3571
3761
  /**
3572
3762
  * Text letter spacing as a CSS letter-spacing value.
3573
3763
  */