shaka-player 3.2.9 → 3.2.12

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 (139) hide show
  1. package/.github/workflows/build-and-test.yaml +67 -15
  2. package/.github/workflows/compute-incremental-coverage.py +251 -0
  3. package/.github/workflows/report-incremental-coverage.yaml +39 -0
  4. package/.github/workflows/selenium-lab-tests.yaml +179 -31
  5. package/CHANGELOG.md +34 -0
  6. package/CONTRIBUTORS +2 -0
  7. package/README.md +20 -6
  8. package/demo/index.html +0 -2
  9. package/dist/controls.css +1 -1
  10. package/dist/controls.css.map +1 -1
  11. package/dist/deps.js +2 -2
  12. package/dist/locales.js +29 -29
  13. package/dist/shaka-player.compiled.d.ts +12 -1
  14. package/dist/shaka-player.compiled.debug.d.ts +12 -1
  15. package/dist/shaka-player.compiled.debug.externs.js +49 -38
  16. package/dist/shaka-player.compiled.debug.js +105 -96
  17. package/dist/shaka-player.compiled.debug.map +4 -4
  18. package/dist/shaka-player.compiled.externs.js +49 -38
  19. package/dist/shaka-player.compiled.js +759 -755
  20. package/dist/shaka-player.compiled.map +4 -4
  21. package/dist/shaka-player.ui.d.ts +12 -1
  22. package/dist/shaka-player.ui.debug.d.ts +12 -1
  23. package/dist/shaka-player.ui.debug.externs.js +49 -38
  24. package/dist/shaka-player.ui.debug.js +119 -110
  25. package/dist/shaka-player.ui.debug.map +4 -4
  26. package/dist/shaka-player.ui.externs.js +49 -38
  27. package/dist/shaka-player.ui.js +866 -863
  28. package/dist/shaka-player.ui.map +4 -4
  29. package/docs/tutorials/welcome.md +6 -3
  30. package/karma.conf.js +3 -11
  31. package/lib/dash/dash_parser.js +5 -0
  32. package/lib/hls/hls_parser.js +6 -2
  33. package/lib/media/drm_engine.js +1 -1
  34. package/lib/media/presentation_timeline.js +24 -1
  35. package/lib/media/streaming_engine.js +1 -0
  36. package/lib/player.js +7 -6
  37. package/lib/polyfill/media_capabilities.js +3 -0
  38. package/lib/polyfill/videoplaybackquality.js +3 -1
  39. package/lib/text/cue.js +0 -5
  40. package/lib/text/simple_text_displayer.js +21 -9
  41. package/lib/text/ui_text_displayer.js +91 -19
  42. package/lib/util/buffer_utils.js +3 -0
  43. package/lib/util/object_utils.js +1 -0
  44. package/lib/util/platform.js +41 -1
  45. package/lib/util/stream_utils.js +23 -3
  46. package/lib/util/string_utils.js +102 -13
  47. package/maintained-branches.md +15 -0
  48. package/package.json +3 -5
  49. package/test/player_src_equals_integration.js +2 -0
  50. package/test/test/assets/small.mp4 +0 -0
  51. package/test/text/simple_text_displayer_unit.js +27 -0
  52. package/test/text/ui_text_displayer_unit.js +65 -0
  53. package/test/util/string_utils_unit.js +46 -8
  54. package/ui/less/ad_controls.less +4 -0
  55. package/app-engine/README.md +0 -9
  56. package/app-engine/demo-version-index/README.md +0 -14
  57. package/app-engine/demo-version-index/app.yaml +0 -2
  58. package/app-engine/demo-version-index/main.py +0 -162
  59. package/app-engine/demo-version-index/requirements.txt +0 -6
  60. package/app-engine/demo-version-index/templates/index.html +0 -114
  61. package/app-engine/shaka-player-demo/README.md +0 -18
  62. package/app-engine/shaka-player-demo/app.yaml +0 -61
  63. package/app-engine/shaka-player-demo/main.py +0 -95
  64. package/app-engine/shaka-player-demo/posters/10yo.png +0 -0
  65. package/app-engine/shaka-player-demo/posters/10yo.xcf +0 -0
  66. package/app-engine/shaka-player-demo/posters/1yo.jpg +0 -0
  67. package/app-engine/shaka-player-demo/posters/2yo.png +0 -0
  68. package/app-engine/shaka-player-demo/posters/2yo.xcf +0 -0
  69. package/app-engine/shaka-player-demo/posters/3yo.png +0 -0
  70. package/app-engine/shaka-player-demo/posters/3yo.xcf +0 -0
  71. package/app-engine/shaka-player-demo/posters/4yo.png +0 -0
  72. package/app-engine/shaka-player-demo/posters/4yo.xcf +0 -0
  73. package/app-engine/shaka-player-demo/posters/5yo.png +0 -0
  74. package/app-engine/shaka-player-demo/posters/5yo.xcf +0 -0
  75. package/app-engine/shaka-player-demo/posters/6yo.png +0 -0
  76. package/app-engine/shaka-player-demo/posters/6yo.xcf +0 -0
  77. package/app-engine/shaka-player-demo/posters/7yo.png +0 -0
  78. package/app-engine/shaka-player-demo/posters/7yo.xcf +0 -0
  79. package/app-engine/shaka-player-demo/posters/8yo.png +0 -0
  80. package/app-engine/shaka-player-demo/posters/8yo.xcf +0 -0
  81. package/app-engine/shaka-player-demo/posters/9yo.png +0 -0
  82. package/app-engine/shaka-player-demo/posters/9yo.xcf +0 -0
  83. package/app-engine/shaka-player-demo/posters/audioOnly.gif +0 -0
  84. package/app-engine/shaka-player-demo/posters/audioRickRoll.gif +0 -0
  85. package/app-engine/shaka-player-demo/posters/colorbars.gif +0 -0
  86. package/app-engine/shaka-player-demo/posters/fireworks.jpg +0 -0
  87. package/app-engine/shaka-player-demo/posters/party-hat.png +0 -0
  88. package/app-engine/shaka-player-demo/posters/sources.txt +0 -46
  89. package/app-engine/shaka-player-demo/posters/standard.png +0 -0
  90. package/app-engine/shaka-player-demo/posters/trek.jpg +0 -0
  91. package/app-engine/shaka-player-demo/posters/valentines.png +0 -0
  92. package/app-engine/shaka-player-demo/posters/zombie.jpg +0 -0
  93. package/app-engine/shaka-player-demo/posters.py +0 -110
  94. package/app-engine/shaka-player-demo/requirements.txt +0 -5
  95. package/app-engine/shaka-player-demo/time.txt +0 -1
  96. package/build/README.md +0 -127
  97. package/build/__init__.py +0 -0
  98. package/build/all.py +0 -150
  99. package/build/apps.py +0 -186
  100. package/build/build.py +0 -392
  101. package/build/check.py +0 -354
  102. package/build/checkversion.py +0 -84
  103. package/build/compiler.py +0 -513
  104. package/build/conformance.textproto +0 -321
  105. package/build/docker/Dockerfile +0 -20
  106. package/build/docker/docker-compose.yml +0 -10
  107. package/build/docs.py +0 -54
  108. package/build/eslint-plugin-shaka-rules/arg-comment-spacing.js +0 -72
  109. package/build/eslint-plugin-shaka-rules/index.js +0 -24
  110. package/build/eslint-plugin-shaka-rules/package.json +0 -7
  111. package/build/eslint-plugin-shaka-rules/private.js +0 -109
  112. package/build/gendeps.py +0 -71
  113. package/build/generateExterns.js +0 -867
  114. package/build/generateLocalizations.py +0 -262
  115. package/build/generateTsDefs.py +0 -137
  116. package/build/install-linux-prereqs.sh +0 -136
  117. package/build/license-header +0 -5
  118. package/build/misspellings.txt +0 -38
  119. package/build/pixelsChanged.js +0 -35
  120. package/build/shaka-lab.yaml +0 -163
  121. package/build/shakaBuildHelpers.py +0 -356
  122. package/build/stats.py +0 -816
  123. package/build/subprocessWindowsPatch.py +0 -103
  124. package/build/test.py +0 -541
  125. package/build/types/ads +0 -8
  126. package/build/types/cast +0 -6
  127. package/build/types/cea +0 -13
  128. package/build/types/complete +0 -9
  129. package/build/types/core +0 -106
  130. package/build/types/dash +0 -8
  131. package/build/types/hls +0 -9
  132. package/build/types/manifests +0 -5
  133. package/build/types/networking +0 -6
  134. package/build/types/offline +0 -21
  135. package/build/types/polyfill +0 -19
  136. package/build/types/text +0 -11
  137. package/build/types/ui +0 -37
  138. package/build/updateScreenshots.py +0 -85
  139. package/build/wrapper.template.js +0 -52
package/CHANGELOG.md CHANGED
@@ -1,5 +1,39 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.2.12](https://github.com/shaka-project/shaka-player/compare/v3.2.11...v3.2.12) (2022-08-31)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * Fix bitmap-based cue size ([#4453](https://github.com/shaka-project/shaka-player/issues/4453)) ([598c0b4](https://github.com/shaka-project/shaka-player/commit/598c0b4c3ab2a3986f3d8d885b3fd36879eaf535))
9
+ * return width and height in the stats when we are using src= ([#4435](https://github.com/shaka-project/shaka-player/issues/4435)) ([e16e8df](https://github.com/shaka-project/shaka-player/commit/e16e8dfbb8fc65065efd5a8f8f3c2d4a18fbe2eb))
10
+ * **UI:** Ad position and ad counter are too close to each other ([#4416](https://github.com/shaka-project/shaka-player/issues/4416)) ([ff1aaa2](https://github.com/shaka-project/shaka-player/commit/ff1aaa2c8a892a41e404e68fc560c0f4556d54a0))
11
+
12
+ ## [3.2.11](https://github.com/shaka-project/shaka-player/compare/v3.2.10...v3.2.11) (2022-08-17)
13
+
14
+
15
+ ### Bug Fixes
16
+
17
+ * add strictMissingProperties suppressions to unblock strict missing properties on union types. ([#4371](https://github.com/shaka-project/shaka-player/issues/4371)) ([c5678fb](https://github.com/shaka-project/shaka-player/commit/c5678fbad3a63bb93eac1abbf70e9e23b79911f6))
18
+ * Fix key ID byteswapping for PlayReady on PS4 ([#4377](https://github.com/shaka-project/shaka-player/issues/4377)) ([bbb0640](https://github.com/shaka-project/shaka-player/commit/bbb0640e2c6230732f6d0789ea82a2721a2a975c))
19
+ * Fix MediaCapabilities polyfill on Tizen and WebOS ([#4396](https://github.com/shaka-project/shaka-player/issues/4396)) ([f5fb3e5](https://github.com/shaka-project/shaka-player/commit/f5fb3e5d4670b177db001b28d13cb25a6e947ffa)), closes [#4383](https://github.com/shaka-project/shaka-player/issues/4383) [#4357](https://github.com/shaka-project/shaka-player/issues/4357)
20
+ * Fix TextDecoder fallback and browser support check ([#4403](https://github.com/shaka-project/shaka-player/issues/4403)) ([e67b64a](https://github.com/shaka-project/shaka-player/commit/e67b64af4c0e357fb0f3fae67dba00d4bd7c6bf5))
21
+ * Fix VP9 codec checks on Mac Firefox ([#4391](https://github.com/shaka-project/shaka-player/issues/4391)) ([136348d](https://github.com/shaka-project/shaka-player/commit/136348d2215a951f8395a79d63f930fc95d9593f))
22
+ * **text:** Fix cue region rendering in UI ([#4412](https://github.com/shaka-project/shaka-player/issues/4412)) ([3f65d3b](https://github.com/shaka-project/shaka-player/commit/3f65d3b60fce1398e3a078b2cbbafec351e7e249)), closes [#4381](https://github.com/shaka-project/shaka-player/issues/4381)
23
+ * **text:** Fix TTML render timing and line break issues ([#4407](https://github.com/shaka-project/shaka-player/issues/4407)) ([0e626c0](https://github.com/shaka-project/shaka-player/commit/0e626c0836b4ea0070e29c0a51e49845a36f8ef3)), closes [#4381](https://github.com/shaka-project/shaka-player/issues/4381)
24
+
25
+ ## [3.2.10](https://github.com/shaka-project/shaka-player/compare/v3.2.9...v3.2.10) (2022-07-14)
26
+
27
+
28
+ ### Bug Fixes
29
+
30
+ * Add fallback to TextDecoder and TextEncoder ([#4324](https://github.com/shaka-project/shaka-player/issues/4324)) ([54095c2](https://github.com/shaka-project/shaka-player/commit/54095c2185b9b0137a2db448c2263cda463bb75b))
31
+ * Fix EOS set-top box being identified as Apple. ([#4310](https://github.com/shaka-project/shaka-player/issues/4310)) ([981fe9d](https://github.com/shaka-project/shaka-player/commit/981fe9dcf38a174911e915968f50f9d6fe62ad22))
32
+ * Fix getVideoPlaybackQuality in WebOS 3 ([#4316](https://github.com/shaka-project/shaka-player/issues/4316)) ([e88469d](https://github.com/shaka-project/shaka-player/commit/e88469dd921f9d9e0b62c7ded856c240882c691a))
33
+ * Fix MediaCapabilities polyfill on Playstation 4 ([#4320](https://github.com/shaka-project/shaka-player/issues/4320)) ([ae8255a](https://github.com/shaka-project/shaka-player/commit/ae8255a4a5520ad07489fcc196b20b6d49f382a1))
34
+ * Fix segment index assertions with DAI ([49e6e33](https://github.com/shaka-project/shaka-player/commit/49e6e33011a29508e3c30c43f41616d9d2a0fd98))
35
+ * VTT Cue Parsing On PlayStation 4 ([#4340](https://github.com/shaka-project/shaka-player/issues/4340)) ([88fd5f9](https://github.com/shaka-project/shaka-player/commit/88fd5f9ab5d3397b7051e8e39787dd961e54c849)), closes [#4321](https://github.com/shaka-project/shaka-player/issues/4321)
36
+
3
37
  ## [3.2.9](https://github.com/shaka-project/shaka-player/compare/v3.2.8...v3.2.9) (2022-06-14)
4
38
 
5
39
 
package/CONTRIBUTORS CHANGED
@@ -24,6 +24,7 @@
24
24
 
25
25
  Aaron Vaage <vaage@google.com>
26
26
  Adrián Gómez Llorente <adgllorente@gmail.com>
27
+ Agajan Jumakuliyev <agajan.tm@gmail.com>
27
28
  Aidan Ridley <aidan.ridley@charter.com>
28
29
  Alex Jones <alexedwardjones@gmail.com>
29
30
  Alvaro Velad Galvan <alvaro.velad@mirada.tv>
@@ -53,6 +54,7 @@ Giorgio Gamberoni <giorgio.gamberoni@gmail.com>
53
54
  Giuseppe Samela <giuseppe.samela@gmail.com>
54
55
  Hichem Taoufik <hichem@code-it.fr>
55
56
  Itay Kinnrot <itay.kinnrot@kaltura.com>
57
+ Isaac Ramirez <isaac.ramirez.herrera@gmail.com>
56
58
  Jacob Trimble <modmaker@google.com>
57
59
  Jason Palmer <jason@jason-palmer.com>
58
60
  Jeffrey Swan <jeffdswan@gmail.com>
package/README.md CHANGED
@@ -24,6 +24,12 @@ For details on what's coming next, see our [development roadmap](roadmap.md).
24
24
  [offline storage and playback]: https://shaka-player-demo.appspot.com/docs/api/tutorial-offline.html
25
25
 
26
26
 
27
+ ## Maintained branches
28
+
29
+ See [maintained-branches.md](https://github.com/shaka-project/shaka-player/blob/main/maintained-branches.md)
30
+ for the up-to-date list of maintained branches of Shaka Player.
31
+
32
+
27
33
  ## Platform and browser support matrix
28
34
 
29
35
  |Browser |Windows |Mac |Linux |Android |iOS >= 12 |ChromeOS|Other|
@@ -39,6 +45,8 @@ For details on what's coming next, see our [development roadmap](roadmap.md).
39
45
  |Tizen TV³ | - | - | - | - | - | - |**Y**|
40
46
  |WebOS⁶ | - | - | - | - | - | - |**Y**|
41
47
  |Xbox One | - | - | - | - | - | - |**Y**|
48
+ |Playstation 4⁷| - | - | - | - | - | - |**Y**|
49
+ |Playstation 5⁷| - | - | - | - | - | - |**Y**|
42
50
 
43
51
  NOTES:
44
52
  - ¹: On macOS, only Safari 12+ is supported. On iOS, only iOS 12+ is
@@ -53,6 +61,8 @@ NOTES:
53
61
  us.
54
62
  - Official support for LG WebOS TV:
55
63
  https://github.com/shaka-project/shaka-player/issues/1330
64
+ - ⁷: These are expected to work, but are community-supported and untested by
65
+ us.
56
66
 
57
67
  We support iOS 12+ through Apple's native HLS player. We provide the same
58
68
  top-level API, but we just set the video's `src` element to the manifest/media.
@@ -117,7 +127,7 @@ HLS features supported:
117
127
  - Low-latency streaming with partial segments, preload hints, and delta updates
118
128
  - Discontinuity
119
129
  - ISO-BMFF / MP4 / CMAF support
120
- - MPEG-2 TS support (transmuxing provided by [mux.js][] v6.1.0+, must be
130
+ - MPEG-2 TS support (transmuxing provided by [mux.js][] v6.2.0+, must be
121
131
  separately included)
122
132
  - WebVTT and TTML
123
133
  - CEA-608/708 captions
@@ -148,6 +158,8 @@ HLS features **not** supported:
148
158
  |Tizen TV |**Y** |**Y** | - |untested⁵ |
149
159
  |WebOS⁷ |untested⁷ |untested⁷| - |untested⁷ |
150
160
  |Xbox One | - |**Y** | - | - |
161
+ |Playstation 4⁷| - |untested⁷| - |untested⁷ |
162
+ |Playstation 5⁷| - |untested⁷| - |untested⁷ |
151
163
 
152
164
  Other DRM systems should work out of the box if they are interoperable and
153
165
  compliant to the EME spec.
@@ -188,7 +200,7 @@ Shaka Player supports:
188
200
  SegmentTemplate@index
189
201
  - Not supported in HLS
190
202
  - MPEG-2 TS
191
- - With help from [mux.js][] v6.1.0+, can be played on any browser which
203
+ - With help from [mux.js][] v6.2.0+, can be played on any browser which
192
204
  supports MP4
193
205
  - Can find and parse timestamps to find segment start time in HLS
194
206
  - WebVTT
@@ -197,10 +209,10 @@ Shaka Player supports:
197
209
  - Supported in both XML form and embedded in MP4
198
210
  - CEA-608
199
211
  - Supported embedded in MP4
200
- - With help from [mux.js][] v6.1.0+, supported embedded in TS
212
+ - With help from [mux.js][] v6.2.0+, supported embedded in TS
201
213
  - CEA-708
202
214
  - Supported embedded in MP4
203
- - With help from [mux.js][] v6.1.0+, supported embedded in TS
215
+ - With help from [mux.js][] v6.2.0+, supported embedded in TS
204
216
  - SubRip (SRT)
205
217
  - UTF-8 encoding only
206
218
  - LyRiCs (LRC)
@@ -228,8 +240,10 @@ attributes.
228
240
  * [Hosted builds on jsDelivr](https://www.jsdelivr.com/package/npm/shaka-player)
229
241
  * [Development roadmap](roadmap.md)
230
242
  * [Announcement list](https://groups.google.com/forum/#!forum/shaka-player-users)
231
- ([join](docs/announcement-list-join-group.png) for release and survey
232
- announcements)
243
+ ([join](docs/announcement-list-join-group.png) for infrequent
244
+ announcements and surveys)
245
+ * Subscribe to releases by following
246
+ [instructions from this blog](https://www.jessesquires.com/blog/2020/07/30/github-tip-watching-releases/)
233
247
 
234
248
 
235
249
  ## FAQ ##
package/demo/index.html CHANGED
@@ -50,8 +50,6 @@
50
50
  <script defer src="../node_modules/tippy.js/umd/index.min.js"></script>
51
51
  <!-- Improved PWA capability on mobile Safari is enabled by loading pwacompat: -->
52
52
  <script defer src="../node_modules/pwacompat/pwacompat.min.js"></script>
53
- <!-- TextDecoder polyfill, required for legacy Edge. -->
54
- <script defer src="../node_modules/fastestsmallesttextencoderdecoder/EncoderDecoderTogether.min.js"></script>
55
53
 
56
54
  <!-- Include IMA SDK to enable client-side ad insertion: -->
57
55
  <script type="text/javascript" src="https://imasdk.googleapis.com/js/sdkloader/ima3.js"></script>
package/dist/controls.css CHANGED
@@ -27,4 +27,4 @@
27
27
  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
28
28
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
29
29
  * SOFTWARE.
30
- */.shaka-spinner-svg{position:absolute;top:0;left:0;right:0;bottom:0;animation:rotate 2s linear infinite;transform-origin:center center;width:100%;height:100%;margin:0;padding:0}.shaka-spinner-path{stroke:#202124;stroke-dasharray:20,200;stroke-dashoffset:0;animation:dash 1s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}100%{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.shaka-spacer{cursor:default;flex-shrink:1;flex-grow:1;margin:0}.shaka-overflow-menu,.shaka-settings-menu{overflow-x:hidden;overflow-y:auto;white-space:nowrap;background:#fff;box-shadow:0 1px 9px 0 rgba(0 0 0 / 40%);border-radius:2px;max-height:250px;min-width:180px;opacity:0;transition:opacity cubic-bezier(.4, 0, .6, 1) .6s;display:flex;flex-direction:column;position:absolute;z-index:2;right:15px;bottom:30px}.shaka-controls-container[casting=true] .shaka-overflow-menu,.shaka-controls-container[casting=true] .shaka-settings-menu,.shaka-controls-container[shown=true] .shaka-overflow-menu,.shaka-controls-container[shown=true] .shaka-settings-menu{opacity:1}.shaka-overflow-menu button,.shaka-settings-menu button{font-size:14px;background:0 0;color:#000;border:none;min-height:30px;padding:3.5px 6px;display:flex;align-items:center;cursor:pointer}.shaka-overflow-menu button:hover,.shaka-settings-menu button:hover{background:#e0e0e0}.shaka-overflow-menu button label,.shaka-settings-menu button label{cursor:pointer}.shaka-keyboard-navigation .shaka-overflow-menu button:focus,.shaka-keyboard-navigation .shaka-settings-menu button:focus{background:#e0e0e0}.shaka-overflow-menu i,.shaka-settings-menu i{padding-left:10px;padding-right:10px}.shaka-overflow-menu.shaka-low-position,.shaka-settings-menu.shaka-low-position{bottom:15px}.shaka-overflow-menu span{text-align:left}.shaka-overflow-button-label{position:relative;display:flex;flex-direction:column}.shaka-current-selection-span{color:rgba(0 0 0 / 54%)}.shaka-settings-menu span{margin-left:54px}.shaka-back-to-overflow-button span{margin-left:0}.shaka-back-to-overflow-button i{padding-right:20px}.shaka-auto-span{left:17px}.shaka-captions-on{color:#000}.shaka-captions-off{color:grey}.shaka-controls-container[ad-active=true]{pointer-events:none}.shaka-controls-container[ad-active=true] .shaka-bottom-controls{pointer-events:auto}.shaka-client-side-ad-container,.shaka-server-side-ad-container{position:absolute;left:0;right:0;top:0;bottom:0}.shaka-video-container[shaka-controls=true] .shaka-client-side-ad-container iframe,.shaka-video-container[shaka-controls=true] .shaka-server-side-ad-container iframe{height:90%}.shaka-server-side-ad-container{width:100%;height:100%;flex-shrink:1}.shaka-server-side-ad-container:not([ad-active=true]){pointer-events:none}.shaka-ad-controls{display:flex;flex-direction:row;z-index:1;padding-bottom:1%}.shaka-video-container:not([shaka-controls=true]) .shaka-ad-controls{display:none}.shaka-ad-controls button,.shaka-ad-controls div{color:#fff;font-size:initial}.shaka-ad-controls div:not(.shaka-skip-ad-counter){margin:1px}.shaka-ad-counter,.shaka-ad-position{display:flex;justify-content:flex-end;flex-direction:column;text-shadow:1px 1px 4px #000}.shaka-skip-ad-container{position:relative;right:calc((100% - 96%)/ 2 * -1);display:flex;flex-direction:row;margin:0}.shaka-skip-ad-button{padding:5px 15px;background:rgba(0 0 0 / 70%);border:none;cursor:pointer}.shaka-skip-ad-button:disabled{background:rgba(0 0 0 / 30%)}.shaka-skip-ad-counter{padding:5px;background:rgba(0 0 0 / 70%);margin:0}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxP.ttf) format('truetype')}@font-face{font-family:'Material Icons Round';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/materialiconsround/v105/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmM.otf) format('opentype')}.material-icons-round{font-family:'Material Icons Round';font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr}/*# sourceMappingURL=controls.css.map */
30
+ */.shaka-spinner-svg{position:absolute;top:0;left:0;right:0;bottom:0;animation:rotate 2s linear infinite;transform-origin:center center;width:100%;height:100%;margin:0;padding:0}.shaka-spinner-path{stroke:#202124;stroke-dasharray:20,200;stroke-dashoffset:0;animation:dash 1s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}100%{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.shaka-spacer{cursor:default;flex-shrink:1;flex-grow:1;margin:0}.shaka-overflow-menu,.shaka-settings-menu{overflow-x:hidden;overflow-y:auto;white-space:nowrap;background:#fff;box-shadow:0 1px 9px 0 rgba(0 0 0 / 40%);border-radius:2px;max-height:250px;min-width:180px;opacity:0;transition:opacity cubic-bezier(.4, 0, .6, 1) .6s;display:flex;flex-direction:column;position:absolute;z-index:2;right:15px;bottom:30px}.shaka-controls-container[casting=true] .shaka-overflow-menu,.shaka-controls-container[casting=true] .shaka-settings-menu,.shaka-controls-container[shown=true] .shaka-overflow-menu,.shaka-controls-container[shown=true] .shaka-settings-menu{opacity:1}.shaka-overflow-menu button,.shaka-settings-menu button{font-size:14px;background:0 0;color:#000;border:none;min-height:30px;padding:3.5px 6px;display:flex;align-items:center;cursor:pointer}.shaka-overflow-menu button:hover,.shaka-settings-menu button:hover{background:#e0e0e0}.shaka-overflow-menu button label,.shaka-settings-menu button label{cursor:pointer}.shaka-keyboard-navigation .shaka-overflow-menu button:focus,.shaka-keyboard-navigation .shaka-settings-menu button:focus{background:#e0e0e0}.shaka-overflow-menu i,.shaka-settings-menu i{padding-left:10px;padding-right:10px}.shaka-overflow-menu.shaka-low-position,.shaka-settings-menu.shaka-low-position{bottom:15px}.shaka-overflow-menu span{text-align:left}.shaka-overflow-button-label{position:relative;display:flex;flex-direction:column}.shaka-current-selection-span{color:rgba(0 0 0 / 54%)}.shaka-settings-menu span{margin-left:54px}.shaka-back-to-overflow-button span{margin-left:0}.shaka-back-to-overflow-button i{padding-right:20px}.shaka-auto-span{left:17px}.shaka-captions-on{color:#000}.shaka-captions-off{color:grey}.shaka-controls-container[ad-active=true]{pointer-events:none}.shaka-controls-container[ad-active=true] .shaka-bottom-controls{pointer-events:auto}.shaka-client-side-ad-container,.shaka-server-side-ad-container{position:absolute;left:0;right:0;top:0;bottom:0}.shaka-video-container[shaka-controls=true] .shaka-client-side-ad-container iframe,.shaka-video-container[shaka-controls=true] .shaka-server-side-ad-container iframe{height:90%}.shaka-server-side-ad-container{width:100%;height:100%;flex-shrink:1}.shaka-server-side-ad-container:not([ad-active=true]){pointer-events:none}.shaka-ad-controls{display:flex;flex-direction:row;z-index:1;padding-bottom:1%}.shaka-video-container:not([shaka-controls=true]) .shaka-ad-controls{display:none}.shaka-ad-controls button,.shaka-ad-controls div{color:#fff;font-size:initial}.shaka-ad-controls div:not(.shaka-skip-ad-counter){margin:1px}.shaka-ad-counter,.shaka-ad-position{display:flex;justify-content:flex-end;flex-direction:column;text-shadow:1px 1px 4px #000}.shaka-ad-controls .shaka-ad-position:not(.shaka-hidden)+.shaka-ad-counter{margin-left:.75em}.shaka-skip-ad-container{position:relative;right:calc((100% - 96%)/ 2 * -1);display:flex;flex-direction:row;margin:0}.shaka-skip-ad-button{padding:5px 15px;background:rgba(0 0 0 / 70%);border:none;cursor:pointer}.shaka-skip-ad-button:disabled{background:rgba(0 0 0 / 30%)}.shaka-skip-ad-counter{padding:5px;background:rgba(0 0 0 / 70%);margin:0}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxP.ttf) format('truetype')}@font-face{font-family:'Material Icons Round';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/materialiconsround/v107/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmM.otf) format('opentype')}.material-icons-round{font-family:'Material Icons Round';font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr}/*# sourceMappingURL=controls.css.map */
@@ -1 +1 @@
1
- {"version":3,"sources":["$stdin"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["$stdin"],"names":[],"mappings":"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"}
package/dist/deps.js CHANGED
@@ -122,7 +122,7 @@ goog.addDependency('../../../../lib/polyfill/patchedmediakeys_webkit.js', ['shak
122
122
  goog.addDependency('../../../../lib/polyfill/pip_webkit.js', ['shaka.polyfill.PiPWebkit'], ['shaka.log', 'shaka.polyfill'], {'lang': 'es6'});
123
123
  goog.addDependency('../../../../lib/polyfill/storage_estimate.js', ['shaka.polyfill.StorageEstimate'], ['shaka.polyfill'], {'lang': 'es8'});
124
124
  goog.addDependency('../../../../lib/polyfill/video_play_promise.js', ['shaka.polyfill.VideoPlayPromise'], ['shaka.log', 'shaka.polyfill'], {'lang': 'es6'});
125
- goog.addDependency('../../../../lib/polyfill/videoplaybackquality.js', ['shaka.polyfill.VideoPlaybackQuality'], ['shaka.polyfill'], {'lang': 'es6'});
125
+ goog.addDependency('../../../../lib/polyfill/videoplaybackquality.js', ['shaka.polyfill.VideoPlaybackQuality'], ['shaka.polyfill', 'shaka.util.Platform'], {'lang': 'es6'});
126
126
  goog.addDependency('../../../../lib/polyfill/vttcue.js', ['shaka.polyfill.VTTCue'], ['shaka.log', 'shaka.polyfill'], {'lang': 'es6'});
127
127
  goog.addDependency('../../../../lib/routing/node.js', ['shaka.routing.Node'], []);
128
128
  goog.addDependency('../../../../lib/routing/payload.js', ['shaka.routing.Payload'], []);
@@ -178,7 +178,7 @@ goog.addDependency('../../../../lib/util/public_promise.js', ['shaka.util.Public
178
178
  goog.addDependency('../../../../lib/util/state_history.js', ['shaka.util.StateHistory'], ['goog.asserts', 'shaka.log'], {'lang': 'es6'});
179
179
  goog.addDependency('../../../../lib/util/stats.js', ['shaka.util.Stats'], ['shaka.util.StateHistory', 'shaka.util.SwitchHistory'], {'lang': 'es6'});
180
180
  goog.addDependency('../../../../lib/util/stream_utils.js', ['shaka.util.StreamUtils'], ['goog.asserts', 'shaka.log', 'shaka.text.TextEngine', 'shaka.util.Functional', 'shaka.util.LanguageUtils', 'shaka.util.ManifestParserUtils', 'shaka.util.MimeUtils', 'shaka.util.MultiMap', 'shaka.util.Platform'], {'lang': 'es8'});
181
- goog.addDependency('../../../../lib/util/string_utils.js', ['shaka.util.StringUtils'], ['goog.asserts', 'shaka.log', 'shaka.util.BufferUtils', 'shaka.util.Error', 'shaka.util.Lazy'], {'lang': 'es6'});
181
+ goog.addDependency('../../../../lib/util/string_utils.js', ['shaka.util.StringUtils'], ['goog.asserts', 'shaka.log', 'shaka.util.BufferUtils', 'shaka.util.Error', 'shaka.util.Lazy', 'shaka.util.Platform'], {'lang': 'es6'});
182
182
  goog.addDependency('../../../../lib/util/switch_history.js', ['shaka.util.SwitchHistory'], [], {'lang': 'es6'});
183
183
  goog.addDependency('../../../../lib/util/text_parser.js', ['shaka.util.TextParser'], ['goog.asserts'], {'lang': 'es6'});
184
184
  goog.addDependency('../../../../lib/util/timer.js', ['shaka.util.Timer'], ['shaka.util.DelayedTick'], {'lang': 'es6'});
package/dist/locales.js CHANGED
@@ -720,42 +720,42 @@ shaka.ui.Locales.addTo = function(localization) {
720
720
  */
721
721
  shaka.ui.Locales.Ids = {
722
722
  OFF: 'OFF',
723
- AUTO_QUALITY: 'AUTO_QUALITY',
724
- PLAYBACK_RATE: 'PLAYBACK_RATE',
725
- CAST: 'CAST',
726
- AD_PROGRESS: 'AD_PROGRESS',
727
- SEEK: 'SEEK',
728
- SKIP_TO_LIVE: 'SKIP_TO_LIVE',
729
- UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
730
- ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
731
- RESOLUTION: 'RESOLUTION',
732
- ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
733
- EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
734
- EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
735
723
  CAPTIONS: 'CAPTIONS',
724
+ SKIP_AD: 'SKIP_AD',
736
725
  UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
737
- AIRPLAY: 'AIRPLAY',
738
- LIVE: 'LIVE',
739
- VOLUME: 'VOLUME',
740
- FAST_FORWARD: 'FAST_FORWARD',
726
+ ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
727
+ LOOP: 'LOOP',
728
+ MUTE: 'MUTE',
729
+ PAUSE: 'PAUSE',
730
+ FULL_SCREEN: 'FULL_SCREEN',
741
731
  UNMUTE: 'UNMUTE',
742
- MORE_SETTINGS: 'MORE_SETTINGS',
743
- AD_DURATION: 'AD_DURATION',
744
- SKIP_AD: 'SKIP_AD',
745
- REWIND: 'REWIND',
746
- BACK: 'BACK',
747
732
  AD_TIME: 'AD_TIME',
733
+ REWIND: 'REWIND',
734
+ AD_DURATION: 'AD_DURATION',
748
735
  PLAY: 'PLAY',
749
- PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
750
- LANGUAGE: 'LANGUAGE',
736
+ MORE_SETTINGS: 'MORE_SETTINGS',
737
+ NOT_APPLICABLE: 'NOT_APPLICABLE',
738
+ FAST_FORWARD: 'FAST_FORWARD',
751
739
  MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
752
- MUTE: 'MUTE',
740
+ CAST: 'CAST',
741
+ EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
742
+ PLAYBACK_RATE: 'PLAYBACK_RATE',
743
+ AUTO_QUALITY: 'AUTO_QUALITY',
753
744
  REPLAY: 'REPLAY',
754
- NOT_APPLICABLE: 'NOT_APPLICABLE',
745
+ EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
746
+ ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
747
+ UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
748
+ LIVE: 'LIVE',
749
+ BACK: 'BACK',
750
+ SKIP_TO_LIVE: 'SKIP_TO_LIVE',
755
751
  ON: 'ON',
752
+ AIRPLAY: 'AIRPLAY',
753
+ LANGUAGE: 'LANGUAGE',
754
+ AD_PROGRESS: 'AD_PROGRESS',
756
755
  SUBTITLE_FORCED: 'SUBTITLE_FORCED',
757
- PAUSE: 'PAUSE',
758
- EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
759
- LOOP: 'LOOP',
760
- FULL_SCREEN: 'FULL_SCREEN',
756
+ SEEK: 'SEEK',
757
+ EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
758
+ VOLUME: 'VOLUME',
759
+ RESOLUTION: 'RESOLUTION',
760
+ PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
761
761
  };
@@ -921,6 +921,17 @@ declare namespace shaka.media {
921
921
  getSegmentAvailabilityStart ( ) : number ;
922
922
  isInProgress ( ) : boolean ;
923
923
  isLive ( ) : boolean ;
924
+ /**
925
+ * Lock the presentation timeline's start time. After this is called, no
926
+ * further adjustments to presentationStartTime_ will be permitted.
927
+ * This should be called after all Periods have been parsed, and all calls to
928
+ * notifySegments() from the initial manifest parse have been made.
929
+ * Without this, we can get assertion failures in SegmentIndex for certain
930
+ * DAI content. If DAI adds ad segments to the manifest faster than
931
+ * real-time, adjustments to presentationStartTime_ can cause availability
932
+ * windows to jump around on updates.
933
+ */
934
+ lockStartTime ( ) : any ;
924
935
  /**
925
936
  * Gives PresentationTimeline a Stream's maximum segment duration so it can
926
937
  * size and position the segment availability window. This function should be
@@ -1643,7 +1654,7 @@ declare namespace shaka.text {
1643
1654
  linePadding : any ;
1644
1655
  nestedCues : any ;
1645
1656
  opacity : any ;
1646
- payload : string ;
1657
+ payload : any ;
1647
1658
  position : any ;
1648
1659
  positionAlign : any ;
1649
1660
  region : any ;
@@ -921,6 +921,17 @@ declare namespace shaka.media {
921
921
  getSegmentAvailabilityStart ( ) : number ;
922
922
  isInProgress ( ) : boolean ;
923
923
  isLive ( ) : boolean ;
924
+ /**
925
+ * Lock the presentation timeline's start time. After this is called, no
926
+ * further adjustments to presentationStartTime_ will be permitted.
927
+ * This should be called after all Periods have been parsed, and all calls to
928
+ * notifySegments() from the initial manifest parse have been made.
929
+ * Without this, we can get assertion failures in SegmentIndex for certain
930
+ * DAI content. If DAI adds ad segments to the manifest faster than
931
+ * real-time, adjustments to presentationStartTime_ can cause availability
932
+ * windows to jump around on updates.
933
+ */
934
+ lockStartTime ( ) : any ;
924
935
  /**
925
936
  * Gives PresentationTimeline a Stream's maximum segment duration so it can
926
937
  * size and position the segment availability window. This function should be
@@ -1643,7 +1654,7 @@ declare namespace shaka.text {
1643
1654
  linePadding : any ;
1644
1655
  nestedCues : any ;
1645
1656
  opacity : any ;
1646
- payload : string ;
1657
+ payload : any ;
1647
1658
  position : any ;
1648
1659
  positionAlign : any ;
1649
1660
  region : any ;
@@ -59,7 +59,6 @@ shaka.text.Cue.prototype.direction;
59
59
  shaka.text.Cue.prototype.endTime;
60
60
  /**
61
61
  * @override
62
- * @type {string}
63
62
  */
64
63
  shaka.text.Cue.prototype.payload;
65
64
  /**
@@ -376,6 +375,7 @@ shaka.util.BufferUtils = class {
376
375
  * @param {?BufferSource} arr1
377
376
  * @param {?BufferSource} arr2
378
377
  * @return {boolean}
378
+ * @suppress {strictMissingProperties}
379
379
  */
380
380
  static equal(arr1, arr2) {}
381
381
  /**
@@ -642,6 +642,43 @@ shaka.util.Error.Code = {
642
642
  'SS_AD_MANAGER_NOT_INITIALIZED': 10003,
643
643
  'CURRENT_DAI_REQUEST_NOT_FINISHED': 10004
644
644
  };
645
+ /**
646
+ * A timer allows a single function to be executed at a later time or at
647
+ * regular intervals.
648
+ * @final
649
+ */
650
+ shaka.util.Timer = class {
651
+ /**
652
+ * Create a new timer. A timer is committed to a single callback function.
653
+ * While there is no technical reason to do this, it is far easier to
654
+ * understand and use timers when they are connected to one functional idea.
655
+ * @param {function()} onTick
656
+ */
657
+ constructor(onTick) {}
658
+ /**
659
+ * Have the timer call |onTick| now.
660
+ * @return {!shaka.util.Timer}
661
+ */
662
+ tickNow() {}
663
+ /**
664
+ * Have the timer call |onTick| after |seconds| has elapsed unless |stop| is
665
+ * called first.
666
+ * @param {number} seconds
667
+ * @return {!shaka.util.Timer}
668
+ */
669
+ tickAfter(seconds) {}
670
+ /**
671
+ * Have the timer call |onTick| every |seconds| until |stop| is called.
672
+ * @param {number} seconds
673
+ * @return {!shaka.util.Timer}
674
+ */
675
+ tickEvery(seconds) {}
676
+ /**
677
+ * Stop the timer and clear the previous behaviour. The timer is still usable
678
+ * after calling |stop|.
679
+ */
680
+ stop() {}
681
+ };
645
682
  /**
646
683
  * @namespace shaka.util.StringUtils
647
684
  * @summary A set of string utility functions.
@@ -769,43 +806,6 @@ shaka.text.TextEngine = class {
769
806
  */
770
807
  destroy() {}
771
808
  };
772
- /**
773
- * A timer allows a single function to be executed at a later time or at
774
- * regular intervals.
775
- * @final
776
- */
777
- shaka.util.Timer = class {
778
- /**
779
- * Create a new timer. A timer is committed to a single callback function.
780
- * While there is no technical reason to do this, it is far easier to
781
- * understand and use timers when they are connected to one functional idea.
782
- * @param {function()} onTick
783
- */
784
- constructor(onTick) {}
785
- /**
786
- * Have the timer call |onTick| now.
787
- * @return {!shaka.util.Timer}
788
- */
789
- tickNow() {}
790
- /**
791
- * Have the timer call |onTick| after |seconds| has elapsed unless |stop| is
792
- * called first.
793
- * @param {number} seconds
794
- * @return {!shaka.util.Timer}
795
- */
796
- tickAfter(seconds) {}
797
- /**
798
- * Have the timer call |onTick| every |seconds| until |stop| is called.
799
- * @param {number} seconds
800
- * @return {!shaka.util.Timer}
801
- */
802
- tickEvery(seconds) {}
803
- /**
804
- * Stop the timer and clear the previous behaviour. The timer is still usable
805
- * after calling |stop|.
806
- */
807
- stop() {}
808
- };
809
809
  /**
810
810
  * @summary
811
811
  * <p>
@@ -1652,6 +1652,17 @@ shaka.media.PresentationTimeline = class {
1652
1652
  * @param {!Array.<!shaka.media.SegmentReference>} references
1653
1653
  */
1654
1654
  notifySegments(references) {}
1655
+ /**
1656
+ * Lock the presentation timeline's start time. After this is called, no
1657
+ * further adjustments to presentationStartTime_ will be permitted.
1658
+ * This should be called after all Periods have been parsed, and all calls to
1659
+ * notifySegments() from the initial manifest parse have been made.
1660
+ * Without this, we can get assertion failures in SegmentIndex for certain
1661
+ * DAI content. If DAI adds ad segments to the manifest faster than
1662
+ * real-time, adjustments to presentationStartTime_ can cause availability
1663
+ * windows to jump around on updates.
1664
+ */
1665
+ lockStartTime() {}
1655
1666
  /**
1656
1667
  * Gives PresentationTimeline a Stream's minimum segment start time.
1657
1668
  * @param {number} startTime