shaka-player 3.3.11 → 3.3.13

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 (58) 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 +26 -0
  9. package/dist/deps.js +5 -5
  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 +104 -101
  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 +725 -722
  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 +122 -119
  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 +843 -840
  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 +9 -2
  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
  58. package/ui/settings_menu.js +11 -2
@@ -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,31 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.3.13](https://github.com/shaka-project/shaka-player/compare/v3.3.12...v3.3.13) (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)) ([d927cec](https://github.com/shaka-project/shaka-player/commit/d927cec58921928da9a82be8234ac091e3f18322)), 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)) ([5e0e942](https://github.com/shaka-project/shaka-player/commit/5e0e9427caba7204e887d3187564b57bc14e6d3e))
10
+ * Content reload starttime with HLS on iOS ([#4575](https://github.com/shaka-project/shaka-player/issues/4575)) ([7fea5c2](https://github.com/shaka-project/shaka-player/commit/7fea5c26ebf1705114953d6379d1de6e946832b2)), 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)) ([44e4fd7](https://github.com/shaka-project/shaka-player/commit/44e4fd74fd59c3b11ad265bd1eea26678857a26f))
12
+ * focus on first element when back to the settings menu ([#4653](https://github.com/shaka-project/shaka-player/issues/4653)) ([9ab242e](https://github.com/shaka-project/shaka-player/commit/9ab242e39eea87e39c7864ff8aadf5d68ab1236d)), closes [#4652](https://github.com/shaka-project/shaka-player/issues/4652)
13
+ * **HLS:** Fix detection of WebVTT subtitles in HLS by extension ([#4663](https://github.com/shaka-project/shaka-player/issues/4663)) ([6804c6a](https://github.com/shaka-project/shaka-player/commit/6804c6aad240a454e17a3dae1a26f865f79c391d))
14
+ * **HLS:** Infer missing codecs from config ([#4656](https://github.com/shaka-project/shaka-player/issues/4656)) ([b98ae71](https://github.com/shaka-project/shaka-player/commit/b98ae71a46da96a9e30c595a3fed0ddb9718d335))
15
+ * **ui:** Fix exception on screen rotation if fullscreen is not supported ([#4669](https://github.com/shaka-project/shaka-player/issues/4669)) ([b7a841d](https://github.com/shaka-project/shaka-player/commit/b7a841da65c501680947c54f047bc070035e8b4c))
16
+
17
+ ## [3.3.12](https://github.com/shaka-project/shaka-player/compare/v3.3.11...v3.3.12) (2022-10-29)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **ads:** Fix IMA crash when autoplay is rejected ([#4518](https://github.com/shaka-project/shaka-player/issues/4518)) ([f77c9f3](https://github.com/shaka-project/shaka-player/commit/f77c9f3bbdf2b7e00c44b4f997528bedc65b4f1a)), closes [#4179](https://github.com/shaka-project/shaka-player/issues/4179)
23
+ * Fix multi-period DASH with descriptive audio ([#4629](https://github.com/shaka-project/shaka-player/issues/4629)) ([3a3cb24](https://github.com/shaka-project/shaka-player/commit/3a3cb24e4e519af24542d3edabd3fab130da08a2)), closes [#4500](https://github.com/shaka-project/shaka-player/issues/4500)
24
+ * Force using mcap polyfill on EOS browsers ([#4630](https://github.com/shaka-project/shaka-player/issues/4630)) ([659a8cf](https://github.com/shaka-project/shaka-player/commit/659a8cf89b42f0470001c30728378d9f762c767d))
25
+ * Limit key ids to 32 characters ([#4614](https://github.com/shaka-project/shaka-player/issues/4614)) ([8e6f20e](https://github.com/shaka-project/shaka-player/commit/8e6f20e26b70c8a40b30a6693f2f6c8d976c1fba))
26
+ * Make XML parsing secure ([#4598](https://github.com/shaka-project/shaka-player/issues/4598)) ([a76c58f](https://github.com/shaka-project/shaka-player/commit/a76c58f6958562c5c6932bbe2042a414fa292315))
27
+ * **offline:** Add storage muxer init timeout ([#4566](https://github.com/shaka-project/shaka-player/issues/4566)) ([71180ce](https://github.com/shaka-project/shaka-player/commit/71180ce5beda2439393026ae8f05db0ccc3d3d25))
28
+
3
29
  ## [3.3.11](https://github.com/shaka-project/shaka-player/compare/v3.3.10...v3.3.11) (2022-10-07)
4
30
 
5
31
 
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/quality_observer.js', ['shaka.media.QualityObserver'], ['shaka.log', 'shaka.media.IPlayheadObserver', 'shaka.util.FakeEvent', 'shaka.util.FakeEventTarget'], {'lang': 'es6'});
@@ -95,7 +95,7 @@ goog.addDependency('../../../../lib/offline/indexeddb/base_storage_cell.js', ['s
95
95
  goog.addDependency('../../../../lib/offline/indexeddb/db_connection.js', ['shaka.offline.indexeddb.DBConnection'], ['shaka.offline.indexeddb.DBOperation', 'shaka.util.ArrayUtils'], {'lang': 'es6'});
96
96
  goog.addDependency('../../../../lib/offline/indexeddb/db_operation.js', ['shaka.offline.indexeddb.DBOperation'], ['shaka.util.PublicPromise'], {'lang': 'es8'});
97
97
  goog.addDependency('../../../../lib/offline/indexeddb/eme_session_storage_cell.js', ['shaka.offline.indexeddb.EmeSessionStorageCell'], ['shaka.offline.indexeddb.DBConnection'], {'lang': 'es8'});
98
- 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'});
98
+ 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'});
99
99
  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'});
100
100
  goog.addDependency('../../../../lib/offline/indexeddb/v2_storage_cell.js', ['shaka.offline.indexeddb.V2StorageCell'], ['shaka.offline.indexeddb.BaseStorageCell', 'shaka.util.PeriodCombiner'], {'lang': 'es8'});
101
101
  goog.addDependency('../../../../lib/offline/indexeddb/v5_storage_cell.js', ['shaka.offline.indexeddb.V5StorageCell'], ['shaka.offline.indexeddb.BaseStorageCell'], {'lang': 'es6'});
@@ -188,7 +188,7 @@ goog.addDependency('../../../../lib/util/switch_history.js', ['shaka.util.Switch
188
188
  goog.addDependency('../../../../lib/util/text_parser.js', ['shaka.util.TextParser'], ['goog.asserts'], {'lang': 'es6'});
189
189
  goog.addDependency('../../../../lib/util/timer.js', ['shaka.util.Timer'], ['shaka.util.DelayedTick'], {'lang': 'es6'});
190
190
  goog.addDependency('../../../../lib/util/uint8array_utils.js', ['shaka.util.Uint8ArrayUtils'], ['shaka.Deprecate', 'shaka.util.BufferUtils', 'shaka.util.StringUtils'], {'lang': 'es6'});
191
- goog.addDependency('../../../../lib/util/xml_utils.js', ['shaka.util.XmlUtils'], ['goog.asserts', 'shaka.log', 'shaka.util.StringUtils'], {'lang': 'es6'});
191
+ goog.addDependency('../../../../lib/util/xml_utils.js', ['shaka.util.XmlUtils'], ['goog.asserts', 'shaka.log', 'shaka.util.Lazy', 'shaka.util.StringUtils'], {'lang': 'es8'});
192
192
  goog.addDependency('../../../../third_party/closure-uri/uri.js', ['goog.Uri', 'goog.Uri.QueryData'], ['goog.asserts', 'goog.uri.utils', 'goog.uri.utils.ComponentIndex']);
193
193
  goog.addDependency('../../../../third_party/closure-uri/utils.js', ['goog.uri.utils', 'goog.uri.utils.ComponentIndex'], []);
194
194
  goog.addDependency('../../../../third_party/language-mapping-list/language-mapping-list.js', ['mozilla.LanguageMapping'], [], {'lang': 'es6'});
@@ -219,7 +219,7 @@ goog.addDependency('../../../../ui/range_element.js', ['shaka.ui.RangeElement'],
219
219
  goog.addDependency('../../../../ui/resolution_selection.js', ['shaka.ui.ResolutionSelection'], ['goog.asserts', 'shaka.ui.Controls', 'shaka.ui.Enums', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.ui.OverflowMenu', 'shaka.ui.SettingsMenu', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.FakeEvent'], {'lang': 'es6'});
220
220
  goog.addDependency('../../../../ui/rewind_button.js', ['shaka.ui.RewindButton'], ['shaka.ui.Controls', 'shaka.ui.Element', 'shaka.ui.Enums', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.util.Dom'], {'lang': 'es6'});
221
221
  goog.addDependency('../../../../ui/seek_bar.js', ['shaka.ui.SeekBar'], ['shaka.ads.AdManager', 'shaka.ui.Constants', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.ui.RangeElement', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.Timer'], {'lang': 'es6'});
222
- goog.addDependency('../../../../ui/settings_menu.js', ['shaka.ui.SettingsMenu'], ['shaka.ui.Element', 'shaka.ui.Enums', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.FakeEvent'], {'lang': 'es6'});
222
+ goog.addDependency('../../../../ui/settings_menu.js', ['shaka.ui.SettingsMenu'], ['shaka.ui.Element', 'shaka.ui.Enums', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.FakeEvent', 'shaka.util.Iterables'], {'lang': 'es6'});
223
223
  goog.addDependency('../../../../ui/skip_ad_button.js', ['shaka.ui.SkipAdButton'], ['goog.asserts', 'shaka.ads.AdManager', 'shaka.ui.Element', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.Timer'], {'lang': 'es6'});
224
224
  goog.addDependency('../../../../ui/small_play_button.js', ['shaka.ui.SmallPlayButton'], ['shaka.ui.Controls', 'shaka.ui.Enums', 'shaka.ui.Locales', 'shaka.ui.PlayButton'], {'lang': 'es6'});
225
225
  goog.addDependency('../../../../ui/spacer.js', ['shaka.ui.Spacer'], ['shaka.ui.Controls', 'shaka.ui.Element', 'shaka.util.Dom'], {'lang': 'es6'});
package/dist/locales.js CHANGED
@@ -720,44 +720,44 @@ shaka.ui.Locales.addTo = function(localization) {
720
720
  * @const
721
721
  */
722
722
  shaka.ui.Locales.Ids = {
723
- LANGUAGE: 'LANGUAGE',
724
- MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
725
- PLAYBACK_RATE: 'PLAYBACK_RATE',
726
- FAST_FORWARD: 'FAST_FORWARD',
727
- AUTO_QUALITY: 'AUTO_QUALITY',
728
- UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
723
+ AD_PROGRESS: 'AD_PROGRESS',
724
+ UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
729
725
  STATISTICS: 'STATISTICS',
730
- LIVE: 'LIVE',
731
- PLAY: 'PLAY',
732
- LOOP: 'LOOP',
726
+ BACK: 'BACK',
733
727
  ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
734
- OFF: 'OFF',
728
+ ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
729
+ MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
730
+ PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
731
+ LOOP: 'LOOP',
732
+ PLAYBACK_RATE: 'PLAYBACK_RATE',
733
+ REPLAY: 'REPLAY',
734
+ EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
735
735
  REWIND: 'REWIND',
736
- AD_PROGRESS: 'AD_PROGRESS',
737
- UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
736
+ UNMUTE: 'UNMUTE',
737
+ SKIP_AD: 'SKIP_AD',
738
+ LIVE: 'LIVE',
739
+ FAST_FORWARD: 'FAST_FORWARD',
740
+ NOT_APPLICABLE: 'NOT_APPLICABLE',
741
+ EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
738
742
  MORE_SETTINGS: 'MORE_SETTINGS',
739
- PAUSE: 'PAUSE',
740
- SKIP_TO_LIVE: 'SKIP_TO_LIVE',
743
+ PLAY: 'PLAY',
744
+ EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
741
745
  RESOLUTION: 'RESOLUTION',
742
- FULL_SCREEN: 'FULL_SCREEN',
743
- VOLUME: 'VOLUME',
744
- NOT_APPLICABLE: 'NOT_APPLICABLE',
745
- ON: 'ON',
746
- SEEK: 'SEEK',
747
746
  AIRPLAY: 'AIRPLAY',
748
- ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
749
747
  MUTE: 'MUTE',
750
- EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
751
- CAPTIONS: 'CAPTIONS',
752
- PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
753
- EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
748
+ UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
749
+ AD_TIME: 'AD_TIME',
750
+ SUBTITLE_FORCED: 'SUBTITLE_FORCED',
751
+ VOLUME: 'VOLUME',
752
+ FULL_SCREEN: 'FULL_SCREEN',
753
+ AUTO_QUALITY: 'AUTO_QUALITY',
754
+ SEEK: 'SEEK',
755
+ LANGUAGE: 'LANGUAGE',
754
756
  CAST: 'CAST',
755
- UNMUTE: 'UNMUTE',
756
- SKIP_AD: 'SKIP_AD',
757
757
  AD_DURATION: 'AD_DURATION',
758
- SUBTITLE_FORCED: 'SUBTITLE_FORCED',
759
- REPLAY: 'REPLAY',
760
- EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
761
- AD_TIME: 'AD_TIME',
762
- BACK: 'BACK',
758
+ ON: 'ON',
759
+ OFF: 'OFF',
760
+ SKIP_TO_LIVE: 'SKIP_TO_LIVE',
761
+ CAPTIONS: 'CAPTIONS',
762
+ PAUSE: 'PAUSE',
763
763
  };
@@ -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.
@@ -2265,6 +2265,7 @@ declare namespace shaka.util.Error {
2265
2265
  HTTP_ERROR = 1002.0 ,
2266
2266
  INCONSISTENT_DRM_ACROSS_PERIODS = 4038.0 ,
2267
2267
  INDEXED_DB_ERROR = 9001.0 ,
2268
+ INDEXED_DB_INIT_TIMED_OUT = 9017.0 ,
2268
2269
  INIT_DATA_TRANSFORM_ERROR = 6016.0 ,
2269
2270
  INVALID_HLS_TAG = 4016.0 ,
2270
2271
  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.
@@ -2265,6 +2265,7 @@ declare namespace shaka.util.Error {
2265
2265
  HTTP_ERROR = 1002.0 ,
2266
2266
  INCONSISTENT_DRM_ACROSS_PERIODS = 4038.0 ,
2267
2267
  INDEXED_DB_ERROR = 9001.0 ,
2268
+ INDEXED_DB_INIT_TIMED_OUT = 9017.0 ,
2268
2269
  INIT_DATA_TRANSFORM_ERROR = 6016.0 ,
2269
2270
  INVALID_HLS_TAG = 4016.0 ,
2270
2271
  INVALID_MP4_CEA = 2010.0 ,
@@ -647,6 +647,7 @@ shaka.util.Error.Code = {
647
647
  'STORAGE_LIMIT_REACHED': 9014,
648
648
  'DOWNLOAD_SIZE_CALLBACK_ERROR': 9015,
649
649
  'MODIFY_OPERATION_NOT_SUPPORTED': 9016,
650
+ 'INDEXED_DB_INIT_TIMED_OUT': 9017,
650
651
  'CS_IMA_SDK_MISSING': 10000,
651
652
  'CS_AD_MANAGER_NOT_INITIALIZED': 10001,
652
653
  'SS_IMA_SDK_MISSING': 10002,
@@ -2795,9 +2796,10 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
2795
2796
  * <p>
2796
2797
  * If the player has loaded content, and streaming seen an error, but the
2797
2798
  * could not resume streaming, this will return <code>false</code>.
2799
+ * @param {number=} retryDelaySeconds
2798
2800
  * @return {boolean}
2799
2801
  */
2800
- retryStreaming() {}
2802
+ retryStreaming(retryDelaySeconds) {}
2801
2803
  /**
2802
2804
  * Get the manifest that the player has loaded. If the player has not loaded
2803
2805
  * any content, this will return <code>null</code>.