shaka-player 3.2.13 → 3.2.15

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 (57) hide show
  1. package/.github/workflows/build-and-test.yaml +11 -6
  2. package/.github/workflows/compute-incremental-coverage.py +14 -3
  3. package/.github/workflows/demo-version-index.yaml +9 -1
  4. package/.github/workflows/nightly-demo.yaml +1 -1
  5. package/.github/workflows/release-please.yaml +4 -4
  6. package/.github/workflows/report-incremental-coverage.yaml +1 -1
  7. package/.github/workflows/selenium-lab-tests.yaml +8 -6
  8. package/CHANGELOG.md +24 -0
  9. package/dist/deps.js +4 -4
  10. package/dist/locales.js +31 -31
  11. package/dist/shaka-player.compiled.d.ts +2 -1
  12. package/dist/shaka-player.compiled.debug.d.ts +2 -1
  13. package/dist/shaka-player.compiled.debug.externs.js +3 -1
  14. package/dist/shaka-player.compiled.debug.js +102 -100
  15. package/dist/shaka-player.compiled.debug.map +4 -4
  16. package/dist/shaka-player.compiled.externs.js +3 -1
  17. package/dist/shaka-player.compiled.js +703 -701
  18. package/dist/shaka-player.compiled.map +4 -4
  19. package/dist/shaka-player.ui.d.ts +2 -1
  20. package/dist/shaka-player.ui.debug.d.ts +2 -1
  21. package/dist/shaka-player.ui.debug.externs.js +3 -1
  22. package/dist/shaka-player.ui.debug.js +220 -218
  23. package/dist/shaka-player.ui.debug.map +4 -4
  24. package/dist/shaka-player.ui.externs.js +3 -1
  25. package/dist/shaka-player.ui.js +816 -814
  26. package/dist/shaka-player.ui.map +4 -4
  27. package/docs/tutorials/welcome.md +2 -2
  28. package/lib/ads/client_side_ad_manager.js +5 -2
  29. package/lib/cast/cast_proxy.js +2 -1
  30. package/lib/cast/cast_receiver.js +19 -5
  31. package/lib/cast/cast_sender.js +2 -1
  32. package/lib/cast/cast_utils.js +16 -6
  33. package/lib/hls/hls_parser.js +1 -0
  34. package/lib/media/drm_engine.js +4 -2
  35. package/lib/media/playhead.js +23 -1
  36. package/lib/media/streaming_engine.js +3 -12
  37. package/lib/offline/indexeddb/storage_mechanism.js +24 -0
  38. package/lib/player.js +24 -11
  39. package/lib/polyfill/media_capabilities.js +1 -0
  40. package/lib/text/ttml_text_parser.js +69 -93
  41. package/lib/util/error.js +7 -0
  42. package/lib/util/manifest_parser_utils.js +4 -0
  43. package/lib/util/periods.js +9 -9
  44. package/lib/util/xml_utils.js +45 -6
  45. package/package.json +1 -1
  46. package/test/cast/cast_receiver_integration.js +97 -16
  47. package/test/cast/cast_receiver_unit.js +17 -12
  48. package/test/cast/cast_utils_unit.js +1 -0
  49. package/test/media/playhead_unit.js +41 -0
  50. package/test/media/streaming_engine_integration.js +13 -0
  51. package/test/media/streaming_engine_unit.js +23 -8
  52. package/test/offline/storage_integration.js +30 -0
  53. package/test/player_unit.js +87 -0
  54. package/test/test/util/simple_fakes.js +3 -0
  55. package/test/util/periods_unit.js +149 -11
  56. package/test/util/xml_utils_unit.js +64 -0
  57. package/ui/controls.js +4 -1
@@ -2,7 +2,7 @@ name: Build and Test PR
2
2
 
3
3
  on:
4
4
  pull_request: # Trigger for pull requests.
5
- types: [opened, synchronize, reopened]
5
+ types: [opened, synchronize, reopened, ready_for_review]
6
6
  branches:
7
7
  - main
8
8
  - v[0-9]*
@@ -25,7 +25,7 @@ jobs:
25
25
  runs-on: ubuntu-latest
26
26
  steps:
27
27
  - name: Checkout code
28
- uses: actions/checkout@v2
28
+ uses: actions/checkout@v3
29
29
  with:
30
30
  ref: ${{ github.event.inputs.ref || github.ref }}
31
31
 
@@ -49,6 +49,9 @@ jobs:
49
49
  - os: ubuntu-latest
50
50
  browser: Firefox
51
51
  extra_flags: "--use-xvfb"
52
+ - os: ubuntu-latest
53
+ browser: Edge
54
+ extra_flags: "--use-xvfb"
52
55
 
53
56
  - os: macos-latest
54
57
  browser: Chrome
@@ -85,7 +88,7 @@ jobs:
85
88
  run: sudo apt -y update && sudo apt -y install ffmpeg
86
89
 
87
90
  - name: Checkout code
88
- uses: actions/checkout@v2
91
+ uses: actions/checkout@v3
89
92
  with:
90
93
  ref: ${{ github.event.inputs.ref || github.ref }}
91
94
 
@@ -147,7 +150,7 @@ jobs:
147
150
  cp "$coverage_folder"/coverage-details.json coverage/staging/
148
151
  echo "${{ github.event.number }}" > coverage/staging/pr-number.json
149
152
 
150
- echo "::set-output name=coverage_found::true"
153
+ echo "coverage_found=true" >> $GITHUB_OUTPUT
151
154
  echo "Coverage report staged."
152
155
  else
153
156
  echo "No coverage report generated."
@@ -188,9 +191,11 @@ jobs:
188
191
  runs-on: ubuntu-latest
189
192
  steps:
190
193
  - name: Checkout code
191
- uses: actions/checkout@v2
194
+ uses: actions/checkout@v3
192
195
  with:
193
196
  ref: ${{ github.event.inputs.ref || github.ref }}
194
197
 
195
198
  - name: Docker
196
- run: docker-compose -f build/docker/docker-compose.yml up
199
+ run: |
200
+ docker build -t shaka-player-build build/docker
201
+ docker run -v $(pwd):/usr/src --user $(id -u):$(id -g) shaka-player-build
@@ -17,6 +17,7 @@
17
17
  import argparse
18
18
  import io
19
19
  import json
20
+ import os
20
21
  import re
21
22
  import subprocess
22
23
  import zipfile
@@ -221,6 +222,16 @@ def IncrementalCoverage(pr, coverage_details):
221
222
  return None
222
223
  return num_covered / num_changed
223
224
 
225
+ def set_output(name, value):
226
+ path = os.environ.get("GITHUB_OUTPUT")
227
+ if path:
228
+ # Inside GitHub Actions, output the data to a special file GitHub provides.
229
+ with open(path, "a") as f:
230
+ f.write("{}={}\n".format(name, value))
231
+ else:
232
+ # Outside of GitHub Actions, just print the data.
233
+ print("OUTPUT {}={}".format(name, value))
234
+
224
235
  def main():
225
236
  parser = argparse.ArgumentParser(
226
237
  description="Compute incremental code coverage for a PR",
@@ -241,11 +252,11 @@ def main():
241
252
  pr = PullRequest(args.repo, pr_number)
242
253
  coverage = IncrementalCoverage(pr, coverage_details)
243
254
 
244
- print("::set-output name=pr_number::%d" % pr_number)
255
+ set_output("pr_number", str(pr_number))
245
256
  if coverage is None:
246
- print("::set-output name=coverage::No instrumented code was changed.")
257
+ set_output("coverage", "No instrumented code was changed.")
247
258
  else:
248
- print("::set-output name=coverage::%.2f%%" % (coverage * 100.0))
259
+ set_output("coverage", "%.2f%%" % (coverage * 100.0))
249
260
 
250
261
  if __name__ == "__main__":
251
262
  main()
@@ -9,12 +9,20 @@ on:
9
9
  paths:
10
10
  - .github/workflows/demo-version-index.yaml
11
11
  - app-engine/demo-version-index/**
12
+ release:
13
+ types: [published]
12
14
 
13
15
  jobs:
14
16
  appspot:
15
17
  runs-on: ubuntu-latest
16
18
  steps:
17
- - uses: actions/checkout@v2
19
+ - uses: actions/checkout@v3
20
+ with:
21
+ # We need a list of all tags for this, so fetch the entire history.
22
+ fetch-depth: 0
23
+
24
+ - name: Generate static content
25
+ run: python3 app-engine/demo-version-index/generate.py
18
26
 
19
27
  - uses: google-github-actions/auth@v0
20
28
  with:
@@ -11,7 +11,7 @@ jobs:
11
11
  appspot:
12
12
  runs-on: ubuntu-latest
13
13
  steps:
14
- - uses: actions/checkout@v2
14
+ - uses: actions/checkout@v3
15
15
  with:
16
16
  fetch-depth: 0
17
17
  persist-credentials: false
@@ -23,7 +23,7 @@ jobs:
23
23
  default-branch: ${{ github.ref_name }}
24
24
 
25
25
  # If we didn't create a release, we may have created or updated a PR.
26
- - uses: actions/checkout@v2
26
+ - uses: actions/checkout@v3
27
27
  if: steps.release.outputs.release_created == false
28
28
  - name: Custom update Player version
29
29
  if: steps.release.outputs.release_created == false
@@ -53,7 +53,7 @@ jobs:
53
53
  needs: release
54
54
  if: needs.release.outputs.release_created && endsWith(needs.release.outputs.tag_name, '.0') == false
55
55
  steps:
56
- - uses: actions/checkout@v2
56
+ - uses: actions/checkout@v3
57
57
  with:
58
58
  ref: main
59
59
  - name: Tag the main branch
@@ -70,7 +70,7 @@ jobs:
70
70
  needs: release
71
71
  if: needs.release.outputs.release_created
72
72
  steps:
73
- - uses: actions/checkout@v2
73
+ - uses: actions/checkout@v3
74
74
  with:
75
75
  fetch-depth: 0
76
76
  persist-credentials: false
@@ -99,7 +99,7 @@ jobs:
99
99
  needs: release
100
100
  if: needs.release.outputs.release_created
101
101
  steps:
102
- - uses: actions/checkout@v2
102
+ - uses: actions/checkout@v3
103
103
  with:
104
104
  fetch-depth: 0
105
105
  persist-credentials: false
@@ -15,7 +15,7 @@ jobs:
15
15
 
16
16
  steps:
17
17
  - name: Checkout code
18
- uses: actions/checkout@v2
18
+ uses: actions/checkout@v3
19
19
 
20
20
  - name: Compute incremental code coverage
21
21
  id: compute
@@ -32,7 +32,7 @@ jobs:
32
32
  else
33
33
  LAB_TEST_REF="main"
34
34
  fi
35
- echo "::set-output name=REF::$LAB_TEST_REF"
35
+ echo "REF=$LAB_TEST_REF" >> $GITHUB_OUTPUT
36
36
 
37
37
  # Configure the build matrix based on our grid's YAML config.
38
38
  # The matrix contents will be computed by this first job and deserialized
@@ -45,7 +45,7 @@ jobs:
45
45
  INCLUDE: ${{ steps.configure.outputs.INCLUDE }}
46
46
 
47
47
  steps:
48
- - uses: actions/checkout@v2
48
+ - uses: actions/checkout@v3
49
49
  with:
50
50
  ref: ${{ needs.compute-ref.outputs.REF }}
51
51
 
@@ -77,7 +77,9 @@ jobs:
77
77
  }
78
78
 
79
79
  // Output JSON object consumed by the build matrix below.
80
- console.log(`::set-output name=INCLUDE::${ JSON.stringify(include) }`);
80
+ fs.appendFileSync(
81
+ process.env['GITHUB_OUTPUT'],
82
+ `INCLUDE=${ JSON.stringify(include) }\n`);
81
83
 
82
84
  // Log the output, for the sake of debugging this script.
83
85
  console.log({include});
@@ -90,7 +92,7 @@ jobs:
90
92
  needs: compute-ref
91
93
  runs-on: ubuntu-latest
92
94
  steps:
93
- - uses: actions/checkout@v2
95
+ - uses: actions/checkout@v3
94
96
  with:
95
97
  ref: ${{ needs.compute-ref.outputs.REF }}
96
98
 
@@ -132,7 +134,7 @@ jobs:
132
134
  name: ${{ matrix.browser }}
133
135
 
134
136
  steps:
135
- - uses: actions/checkout@v2
137
+ - uses: actions/checkout@v3
136
138
  with:
137
139
  ref: ${{ needs.compute-ref.outputs.REF }}
138
140
 
@@ -218,7 +220,7 @@ jobs:
218
220
 
219
221
  if [ -f "$coverage_report" ]; then
220
222
  echo "Found coverage report: $coverage_report"
221
- echo "::set-output name=coverage_report::$coverage_report"
223
+ echo "coverage_report=$coverage_report" >> $GITHUB_OUTPUT
222
224
  else
223
225
  echo "Could not locate coverage report!"
224
226
  exit 1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.2.15](https://github.com/shaka-project/shaka-player/compare/v3.2.14...v3.2.15) (2022-11-09)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * Allow overriding special handling of 404s ([#4635](https://github.com/shaka-project/shaka-player/issues/4635)) ([43598b4](https://github.com/shaka-project/shaka-player/commit/43598b4670fdc95c7a25d3212f3533e3543e1371)), closes [#4548](https://github.com/shaka-project/shaka-player/issues/4548)
9
+ * **cast:** Reduce size of Cast update messages ([#4644](https://github.com/shaka-project/shaka-player/issues/4644)) ([b36b95d](https://github.com/shaka-project/shaka-player/commit/b36b95db0ebfd718286be1281d51304a62d72159))
10
+ * Content reload starttime with HLS on iOS ([#4575](https://github.com/shaka-project/shaka-player/issues/4575)) ([f51f283](https://github.com/shaka-project/shaka-player/commit/f51f283f43d1f2123ca9962b66f16d553a61eddb)), closes [#4244](https://github.com/shaka-project/shaka-player/issues/4244)
11
+ * Fix detection of ac4, dts, and dolby h265 ([#4657](https://github.com/shaka-project/shaka-player/issues/4657)) ([1adc00a](https://github.com/shaka-project/shaka-player/commit/1adc00aec51b0a37926a9f6fdfcd28f0304f049b))
12
+ * **HLS:** Fix detection of WebVTT subtitles in HLS by extension ([#4663](https://github.com/shaka-project/shaka-player/issues/4663)) ([8440e01](https://github.com/shaka-project/shaka-player/commit/8440e01f756226e8c3c0e5967ef504efefce4b72))
13
+ * **ui:** Fix exception on screen rotation if fullscreen is not supported ([#4669](https://github.com/shaka-project/shaka-player/issues/4669)) ([cbefdb8](https://github.com/shaka-project/shaka-player/commit/cbefdb89078d524b54fbcc298923fbdc9e89ce21))
14
+
15
+ ## [3.2.14](https://github.com/shaka-project/shaka-player/compare/v3.2.13...v3.2.14) (2022-10-29)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * **ads:** Fix IMA crash when autoplay is rejected ([#4518](https://github.com/shaka-project/shaka-player/issues/4518)) ([f619ee9](https://github.com/shaka-project/shaka-player/commit/f619ee981fdbed918835ceb5d703ee6461a5a8fe)), closes [#4179](https://github.com/shaka-project/shaka-player/issues/4179)
21
+ * Fix multi-period DASH with descriptive audio ([#4629](https://github.com/shaka-project/shaka-player/issues/4629)) ([a92493c](https://github.com/shaka-project/shaka-player/commit/a92493c009a4cf3a8a3d95c7fbd2c13b46c4d024)), closes [#4500](https://github.com/shaka-project/shaka-player/issues/4500)
22
+ * Force using mcap polyfill on EOS browsers ([#4630](https://github.com/shaka-project/shaka-player/issues/4630)) ([a8ea1ad](https://github.com/shaka-project/shaka-player/commit/a8ea1adb8c2559e49d668a69448c837ef4670c04))
23
+ * Limit key ids to 32 characters ([#4614](https://github.com/shaka-project/shaka-player/issues/4614)) ([976e932](https://github.com/shaka-project/shaka-player/commit/976e932c2af6ce7b6f7db9c253eb25b4c28e39c5))
24
+ * Make XML parsing secure ([#4598](https://github.com/shaka-project/shaka-player/issues/4598)) ([09aed18](https://github.com/shaka-project/shaka-player/commit/09aed189431b13d46050501d9a8ad98a7bdf1950))
25
+ * **offline:** Add storage muxer init timeout ([#4566](https://github.com/shaka-project/shaka-player/issues/4566)) ([251533c](https://github.com/shaka-project/shaka-player/commit/251533c7feda9d474d779e3d8f70489d0413f917))
26
+
3
27
  ## [3.2.13](https://github.com/shaka-project/shaka-player/compare/v3.2.12...v3.2.13) (2022-10-07)
4
28
 
5
29
 
package/dist/deps.js CHANGED
@@ -62,13 +62,13 @@ goog.addDependency('../../../../lib/media/adaptation_set_criteria.js', ['shaka.m
62
62
  goog.addDependency('../../../../lib/media/buffering_observer.js', ['shaka.media.BufferingObserver'], [], {'lang': 'es6'});
63
63
  goog.addDependency('../../../../lib/media/closed_caption_parser.js', ['shaka.media.ClosedCaptionParser', 'shaka.media.IClosedCaptionParser'], ['shaka.cea.CeaDecoder', 'shaka.cea.Mp4CeaParser', 'shaka.util.BufferUtils'], {'lang': 'es6'});
64
64
  goog.addDependency('../../../../lib/media/content_workarounds.js', ['shaka.media.ContentWorkarounds'], ['goog.asserts', 'shaka.log', 'shaka.util.BufferUtils', 'shaka.util.Error', 'shaka.util.Lazy', 'shaka.util.Mp4Parser', 'shaka.util.Platform', 'shaka.util.Uint8ArrayUtils'], {'lang': 'es6'});
65
- goog.addDependency('../../../../lib/media/drm_engine.js', ['shaka.media.DrmEngine'], ['goog.asserts', 'shaka.log', 'shaka.media.Transmuxer', 'shaka.net.NetworkingEngine', 'shaka.util.BufferUtils', 'shaka.util.Destroyer', 'shaka.util.Error', 'shaka.util.EventManager', 'shaka.util.FairPlayUtils', 'shaka.util.FakeEvent', 'shaka.util.IDestroyable', 'shaka.util.Iterables', 'shaka.util.Lazy', 'shaka.util.MapUtils', 'shaka.util.MimeUtils', 'shaka.util.Platform', 'shaka.util.PublicPromise', 'shaka.util.StreamUtils', 'shaka.util.StringUtils', 'shaka.util.Timer', 'shaka.util.Uint8ArrayUtils'], {'lang': 'es8'});
65
+ goog.addDependency('../../../../lib/media/drm_engine.js', ['shaka.media.DrmEngine'], ['goog.asserts', 'shaka.log', 'shaka.media.Transmuxer', 'shaka.net.NetworkingEngine', 'shaka.util.BufferUtils', 'shaka.util.Destroyer', 'shaka.util.Error', 'shaka.util.EventManager', 'shaka.util.FairPlayUtils', 'shaka.util.FakeEvent', 'shaka.util.IDestroyable', 'shaka.util.Iterables', 'shaka.util.Lazy', 'shaka.util.MapUtils', 'shaka.util.MimeUtils', 'shaka.util.Platform', 'shaka.util.PublicPromise', 'shaka.util.StreamUtils', 'shaka.util.StringUtils', 'shaka.util.Timer', 'shaka.util.Uint8ArrayUtils', 'shaka.util.XmlUtils'], {'lang': 'es8'});
66
66
  goog.addDependency('../../../../lib/media/gap_jumping_controller.js', ['shaka.media.GapJumpingController'], ['shaka.log', 'shaka.media.PresentationTimeline', 'shaka.media.StallDetector', 'shaka.media.TimeRangesUtils', 'shaka.util.EventManager', 'shaka.util.FakeEvent', 'shaka.util.IReleasable', 'shaka.util.Timer'], {'lang': 'es6'});
67
67
  goog.addDependency('../../../../lib/media/manifest_parser.js', ['shaka.media.ManifestParser'], ['goog.Uri', 'shaka.log', 'shaka.net.NetworkingEngine', 'shaka.util.Error', 'shaka.util.Platform'], {'lang': 'es8'});
68
68
  goog.addDependency('../../../../lib/media/media_source_engine.js', ['shaka.media.MediaSourceEngine'], ['goog.asserts', 'shaka.log', 'shaka.media.ContentWorkarounds', 'shaka.media.IClosedCaptionParser', 'shaka.media.TimeRangesUtils', 'shaka.media.Transmuxer', 'shaka.text.TextEngine', 'shaka.util.Destroyer', 'shaka.util.Error', 'shaka.util.EventManager', 'shaka.util.Functional', 'shaka.util.IDestroyable', 'shaka.util.ManifestParserUtils', 'shaka.util.MimeUtils', 'shaka.util.Platform', 'shaka.util.PublicPromise'], {'lang': 'es8'});
69
69
  goog.addDependency('../../../../lib/media/mp4_segment_index_parser.js', ['shaka.media.Mp4SegmentIndexParser'], ['goog.asserts', 'shaka.log', 'shaka.media.InitSegmentReference', 'shaka.media.SegmentReference', 'shaka.util.Error', 'shaka.util.Mp4Parser'], {'lang': 'es6'});
70
70
  goog.addDependency('../../../../lib/media/play_rate_controller.js', ['shaka.media.PlayRateController'], ['goog.asserts', 'shaka.log', 'shaka.util.IReleasable', 'shaka.util.Timer'], {'lang': 'es6'});
71
- 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'], {'lang': 'es6'});
71
+ 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'], {'lang': 'es8'});
72
72
  goog.addDependency('../../../../lib/media/playhead_observer.js', ['shaka.media.IPlayheadObserver', 'shaka.media.PlayheadObserverManager'], ['shaka.util.IReleasable', 'shaka.util.Timer'], {'lang': 'es6'});
73
73
  goog.addDependency('../../../../lib/media/presentation_timeline.js', ['shaka.media.PresentationTimeline'], ['goog.asserts', 'shaka.log', 'shaka.media.SegmentReference'], {'lang': 'es6'});
74
74
  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'], {'lang': 'es6'});
@@ -93,7 +93,7 @@ goog.addDependency('../../../../lib/offline/indexeddb/base_storage_cell.js', ['s
93
93
  goog.addDependency('../../../../lib/offline/indexeddb/db_connection.js', ['shaka.offline.indexeddb.DBConnection'], ['shaka.offline.indexeddb.DBOperation', 'shaka.util.ArrayUtils'], {'lang': 'es6'});
94
94
  goog.addDependency('../../../../lib/offline/indexeddb/db_operation.js', ['shaka.offline.indexeddb.DBOperation'], ['shaka.util.PublicPromise'], {'lang': 'es8'});
95
95
  goog.addDependency('../../../../lib/offline/indexeddb/eme_session_storage_cell.js', ['shaka.offline.indexeddb.EmeSessionStorageCell'], ['shaka.offline.indexeddb.DBConnection'], {'lang': 'es8'});
96
- goog.addDependency('../../../../lib/offline/indexeddb/storage_mechanism.js', ['shaka.offline.indexeddb.StorageMechanism'], ['goog.asserts', 'shaka.log', 'shaka.offline.StorageMuxer', 'shaka.offline.indexeddb.EmeSessionStorageCell', 'shaka.offline.indexeddb.V1StorageCell', 'shaka.offline.indexeddb.V2StorageCell', 'shaka.offline.indexeddb.V5StorageCell', 'shaka.util.Error', 'shaka.util.Platform', 'shaka.util.PublicPromise'], {'lang': 'es8'});
96
+ goog.addDependency('../../../../lib/offline/indexeddb/storage_mechanism.js', ['shaka.offline.indexeddb.StorageMechanism'], ['goog.asserts', 'shaka.log', 'shaka.offline.StorageMuxer', 'shaka.offline.indexeddb.EmeSessionStorageCell', 'shaka.offline.indexeddb.V1StorageCell', 'shaka.offline.indexeddb.V2StorageCell', 'shaka.offline.indexeddb.V5StorageCell', 'shaka.util.Error', 'shaka.util.Platform', 'shaka.util.PublicPromise', 'shaka.util.Timer'], {'lang': 'es8'});
97
97
  goog.addDependency('../../../../lib/offline/indexeddb/v1_storage_cell.js', ['shaka.offline.indexeddb.V1StorageCell'], ['goog.asserts', 'shaka.log', 'shaka.offline.indexeddb.BaseStorageCell', 'shaka.util.Error', 'shaka.util.ManifestParserUtils', 'shaka.util.PeriodCombiner', 'shaka.util.PublicPromise'], {'lang': 'es8'});
98
98
  goog.addDependency('../../../../lib/offline/indexeddb/v2_storage_cell.js', ['shaka.offline.indexeddb.V2StorageCell'], ['shaka.offline.indexeddb.BaseStorageCell', 'shaka.util.PeriodCombiner'], {'lang': 'es8'});
99
99
  goog.addDependency('../../../../lib/offline/indexeddb/v5_storage_cell.js', ['shaka.offline.indexeddb.V5StorageCell'], ['shaka.offline.indexeddb.BaseStorageCell'], {'lang': 'es6'});
@@ -183,7 +183,7 @@ goog.addDependency('../../../../lib/util/switch_history.js', ['shaka.util.Switch
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'});
185
185
  goog.addDependency('../../../../lib/util/uint8array_utils.js', ['shaka.util.Uint8ArrayUtils'], ['shaka.Deprecate', 'shaka.util.BufferUtils', 'shaka.util.StringUtils'], {'lang': 'es6'});
186
- goog.addDependency('../../../../lib/util/xml_utils.js', ['shaka.util.XmlUtils'], ['goog.asserts', 'shaka.log', 'shaka.util.StringUtils'], {'lang': 'es6'});
186
+ goog.addDependency('../../../../lib/util/xml_utils.js', ['shaka.util.XmlUtils'], ['goog.asserts', 'shaka.log', 'shaka.util.Lazy', 'shaka.util.StringUtils'], {'lang': 'es8'});
187
187
  goog.addDependency('../../../../third_party/closure-uri/uri.js', ['goog.Uri', 'goog.Uri.QueryData'], ['goog.asserts', 'goog.uri.utils', 'goog.uri.utils.ComponentIndex']);
188
188
  goog.addDependency('../../../../third_party/closure-uri/utils.js', ['goog.uri.utils', 'goog.uri.utils.ComponentIndex'], []);
189
189
  goog.addDependency('../../../../third_party/language-mapping-list/language-mapping-list.js', ['mozilla.LanguageMapping'], [], {'lang': 'es6'});
package/dist/locales.js CHANGED
@@ -719,43 +719,43 @@ shaka.ui.Locales.addTo = function(localization) {
719
719
  * @const
720
720
  */
721
721
  shaka.ui.Locales.Ids = {
722
- ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
723
- UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
724
- PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
725
- AIRPLAY: 'AIRPLAY',
726
- MUTE: 'MUTE',
727
- ON: 'ON',
728
722
  PLAYBACK_RATE: 'PLAYBACK_RATE',
729
- UNMUTE: 'UNMUTE',
730
- SUBTITLE_FORCED: 'SUBTITLE_FORCED',
731
- REPLAY: 'REPLAY',
732
- MORE_SETTINGS: 'MORE_SETTINGS',
733
- PLAY: 'PLAY',
734
- REWIND: 'REWIND',
735
- RESOLUTION: 'RESOLUTION',
736
- VOLUME: 'VOLUME',
723
+ LANGUAGE: 'LANGUAGE',
737
724
  ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
725
+ LIVE: 'LIVE',
726
+ LOOP: 'LOOP',
738
727
  AD_TIME: 'AD_TIME',
728
+ MORE_SETTINGS: 'MORE_SETTINGS',
729
+ AIRPLAY: 'AIRPLAY',
730
+ EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
731
+ REWIND: 'REWIND',
732
+ SUBTITLE_FORCED: 'SUBTITLE_FORCED',
733
+ AD_DURATION: 'AD_DURATION',
739
734
  EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
740
- FULL_SCREEN: 'FULL_SCREEN',
741
- CAPTIONS: 'CAPTIONS',
742
- MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
743
- FAST_FORWARD: 'FAST_FORWARD',
744
- UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
745
- EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
746
- LOOP: 'LOOP',
747
- SKIP_AD: 'SKIP_AD',
735
+ ON: 'ON',
736
+ VOLUME: 'VOLUME',
737
+ UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
748
738
  SKIP_TO_LIVE: 'SKIP_TO_LIVE',
749
- OFF: 'OFF',
750
- EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
751
- AD_PROGRESS: 'AD_PROGRESS',
752
- BACK: 'BACK',
753
- LANGUAGE: 'LANGUAGE',
754
- PAUSE: 'PAUSE',
755
739
  SEEK: 'SEEK',
756
- LIVE: 'LIVE',
757
- NOT_APPLICABLE: 'NOT_APPLICABLE',
758
- AD_DURATION: 'AD_DURATION',
759
740
  CAST: 'CAST',
741
+ EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
742
+ PAUSE: 'PAUSE',
743
+ ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
744
+ BACK: 'BACK',
745
+ OFF: 'OFF',
760
746
  AUTO_QUALITY: 'AUTO_QUALITY',
747
+ SKIP_AD: 'SKIP_AD',
748
+ FAST_FORWARD: 'FAST_FORWARD',
749
+ FULL_SCREEN: 'FULL_SCREEN',
750
+ REPLAY: 'REPLAY',
751
+ MUTE: 'MUTE',
752
+ NOT_APPLICABLE: 'NOT_APPLICABLE',
753
+ PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
754
+ PLAY: 'PLAY',
755
+ UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
756
+ MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
757
+ AD_PROGRESS: 'AD_PROGRESS',
758
+ RESOLUTION: 'RESOLUTION',
759
+ CAPTIONS: 'CAPTIONS',
760
+ UNMUTE: 'UNMUTE',
761
761
  };
@@ -301,7 +301,7 @@ declare namespace shaka {
301
301
  * If the player has loaded content, and streaming seen an error, but the
302
302
  * could not resume streaming, this will return <code>false</code>.
303
303
  */
304
- retryStreaming ( ) : boolean ;
304
+ retryStreaming (retryDelaySeconds ? : number ) : boolean ;
305
305
  /**
306
306
  * Get the range of time (in seconds) that seeking is allowed. If the player
307
307
  * has not loaded content, this will return a range from 0 to 0.
@@ -2209,6 +2209,7 @@ declare namespace shaka.util.Error {
2209
2209
  HTTP_ERROR = 1002.0 ,
2210
2210
  INCONSISTENT_DRM_ACROSS_PERIODS = 4038.0 ,
2211
2211
  INDEXED_DB_ERROR = 9001.0 ,
2212
+ INDEXED_DB_INIT_TIMED_OUT = 9017.0 ,
2212
2213
  INIT_DATA_TRANSFORM_ERROR = 6016.0 ,
2213
2214
  INVALID_HLS_TAG = 4016.0 ,
2214
2215
  INVALID_MP4_CEA = 2010.0 ,
@@ -301,7 +301,7 @@ declare namespace shaka {
301
301
  * If the player has loaded content, and streaming seen an error, but the
302
302
  * could not resume streaming, this will return <code>false</code>.
303
303
  */
304
- retryStreaming ( ) : boolean ;
304
+ retryStreaming (retryDelaySeconds ? : number ) : boolean ;
305
305
  /**
306
306
  * Get the range of time (in seconds) that seeking is allowed. If the player
307
307
  * has not loaded content, this will return a range from 0 to 0.
@@ -2209,6 +2209,7 @@ declare namespace shaka.util.Error {
2209
2209
  HTTP_ERROR = 1002.0 ,
2210
2210
  INCONSISTENT_DRM_ACROSS_PERIODS = 4038.0 ,
2211
2211
  INDEXED_DB_ERROR = 9001.0 ,
2212
+ INDEXED_DB_INIT_TIMED_OUT = 9017.0 ,
2212
2213
  INIT_DATA_TRANSFORM_ERROR = 6016.0 ,
2213
2214
  INVALID_HLS_TAG = 4016.0 ,
2214
2215
  INVALID_MP4_CEA = 2010.0 ,
@@ -636,6 +636,7 @@ shaka.util.Error.Code = {
636
636
  'MISSING_STORAGE_CELL': 9013,
637
637
  'STORAGE_LIMIT_REACHED': 9014,
638
638
  'DOWNLOAD_SIZE_CALLBACK_ERROR': 9015,
639
+ 'INDEXED_DB_INIT_TIMED_OUT': 9017,
639
640
  'CS_IMA_SDK_MISSING': 10000,
640
641
  'CS_AD_MANAGER_NOT_INITIALIZED': 10001,
641
642
  'SS_IMA_SDK_MISSING': 10002,
@@ -2566,9 +2567,10 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
2566
2567
  * <p>
2567
2568
  * If the player has loaded content, and streaming seen an error, but the
2568
2569
  * could not resume streaming, this will return <code>false</code>.
2570
+ * @param {number=} retryDelaySeconds
2569
2571
  * @return {boolean}
2570
2572
  */
2571
- retryStreaming() {}
2573
+ retryStreaming(retryDelaySeconds) {}
2572
2574
  /**
2573
2575
  * Get the manifest that the player has loaded. If the player has not loaded
2574
2576
  * any content, this will return <code>null</code>.